*{
    box-sizing: border-box;
}

body{
    margin: 0;
    padding: 0; 
}

.offcanvas-body .nav-link {
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
    margin-bottom: 5px;
    display: block;
}



.offcanvas-body{
    background: #4F6F52;
}

.nav-item a{
    color: #FFFFFF !important;
}

.nav-item i{
    margin-right: 11px;
    font-size: 21px;
}

.container-fluid{
    padding: 0 40px !important;
}

.items-lan-nav{
    display: flex;
    align-items: center;
}

.items-english{
    display: none;
}

.container-languages{
    display: flex;  
}

.container-languages-mobile{
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    margin-top: 20px;
    padding: 5px;
}

.container-languages-mobile p{
    margin: 0;
}

.container-spanish-m,
.container-english-m{
    padding: 8px !important;
}

.font-mobile{
    color: #fff !important;
    font-size: 18px !important;
}

.border-language {
    border: 1px solid #ccc; 
    border-radius: 5px;
}

.font-mobile:hover{
    color: #000 !important;
    transition: 0.6ms;
}

.border-language:hover{
    background-color: #efefef;
    transition: 0.8s;
}

.font-mobile.selected {
    background-color: #efefef;
    color: #000 !important;
}

.vertical-line {
    width: 2px;
    height: 50px; 
    background-color: #efefef;
}

.flags__items p {
    cursor: pointer;
}

.spanish,
.english{
    padding: 2px 5px;
    margin-right: 30px;
    margin-bottom: 0;
}

.english{
    margin-right: 60px;
}

.language p{
    text-decoration: none;
    color: #000000;
    font-size: 1.5em;
    font-family: Didact Gothic;
    position: relative;
}

.language p::after {
    content: "";
    display: block;
    height: 2px;
    width: 0;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: width 0.3s;
  }
  
.language p:hover::after {
  width: 100%;
}

.language.selected p::after {
    width: 100%;
}

@media (max-width:900px) {
    .container-languages{
        display: none;
    }
}

@media (min-width:900px) {
    .container-languages-mobile{
        display: none;
    }
}

.navbar-toggler {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;

}

.navbar-toggler-icon{
    font-size: 1.5em;
}

.color{
    background-color: white;
}

.logo_size img{
    width: 15em;
}

.navbar.scrolled {
  box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.1);
}
  
.toggler-icon svg{
    width: 2.5em;
    transition: transform 0.3s ease;
}

.toggler-icon svg:hover{
    transform: scale(1.2);
}

@media (max-width: 500px) {
    .logo_size img{
        width: 10em;
    }
    .container-fluid{
        padding: 0 10px !important;
    }
    .toggler-icon svg{
        width: 2em;
    }
}

@media (min-width: 250px) and (max-width: 300px) {
    .logo_size img{
        width: 7em;
    }

    .toggler-icon svg{
        width: 1.8em;
    }
}

.custom-caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff; 
    text-align: center;
    z-index: 1;
}

.custom-caption h1{
    font-size: 4.5em;
    font-family: Montserrat;
    font-weight: bold;
}
  
.custom-caption h3 {
    font-size: 4.5em;
    font-family: Montserrat;
    font-weight: bold;
}
  
.custom-caption p {
    font-size: 2em;
    font-family: Didact Gothic; 
}

.title-biz, .desc-biz{
    text-align: end;
}

.carousel-item{
    transition: transform 1s !important; 
}

.background-image-container {
  height: 100vh;  
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
  
.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
    z-index: 1;
}

.btn-biz {
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    margin-top: 20px;
    display: none; 
    transition: all 0.3s ease; 
}

.btn-biz.visible {
    display: block; 
}

.button-meet {
    text-align: center;
    border-radius: 10px;
    width: 12em;
    height: 3.2em;
    border: none;
    font-size: 1.2em;
    font-family: Didact Gothic;
    color: #efefef;
    background-color: #4F6F52;
    transition: all 300ms ease;
    position: relative;
    
}

.language-en{
    display: none;
}

.button-meet i.fa-chevron-right {
    display: inline-block;
    transition: margin-left 300ms ease; 
}

.button-meet:hover i.fa-chevron-right {
    margin-left: 16px; 
}

.container-contacts{
    display: flex;
    justify-content: center;
    align-items: center;
}

.contacts{
    margin-top: 20px;
    margin: 0 10px;
}

.contacts span{
    width: 5rem;
    height: 5rem;
    text-align: center;
    font-size: 2.5rem;
    border-radius: 50%;
    position: relative;
    padding-top: 18px;
    color: #efefef;
    text-decoration: none;
    transition: 0.5s;
}

.whatsapp{
    background-color: #198754;
    border-radius: 50%;
}

.email{
    background-color: #DB4437;
    border-radius: 50%;
}

.whatsapp span:hover{
    background-color: #efefef;
    color: #198754;  
}

.email span:hover{
    background-color: #efefef;
    color: #DB4437;
}

.line-container {
    width: 200px; 
    position: absolute;
    bottom: -15%;
    left: 80%;
    transform: translate(-50%, -50%);
  }
  
.line {
    height: 1px;
    background-color: #efefef; 
    width: 100%;
}

.pos-red-social{
    position: absolute;
    bottom: -55%;
    left: 70%;
}

.container-RS{
    display: flex;
    justify-content: center;
    align-items: center;
}

.facebook, .x-twitter{
    margin: 0 10px;
}

.social span{
    display: flex;
    justify-content: center;
    font-size: 1.8rem;
    color: #efefef;
    text-decoration: none;
    transition: 0.5s;
    background-color: #4F6F52;
    width: 3rem;
    height: 3rem;
    padding-top: 9px;
    border-radius: 50%;
}

.social a {
    text-decoration: none;
}

.social span:hover{
    background-color: #efefef;
    color: #4F6F52;
}

@media (max-width: 700px) {
    .custom-caption h1{
        font-size: 2.8em;
    }
    
    .custom-caption h3{
        font-size: 2.6em;
    }
    
    .custom-caption p{
        font-size: 1.3em;
    }

    .button-meet{
        font-size: 1em;
    }

    .facebook, .x-twitter{
        margin: -20px 10px;
    }
}

@media (max-width: 1024px) {
    .container-contacts{
        flex-direction: column;
        margin-top: 10px;
    }
    .line-container{
        bottom: -5%;
        left: 50%;
    }
    .pos-red-social{
        left: 50%;
        bottom: -30%;
        transform: translate(-50%, -50%);
    }

    .whatsapp, .email{
        margin: 10px 0;
    }
}

.auto-text-container {
	margin: 0 auto;
	display: table;
    padding: 4em 0;
}

.show-text { 
	position: relative;
    display: inline-block; 
	/* float: left; */
	background: white;
	color: #000000;
    font-size: 2.5em;
    margin: 1em 0;
    font-family: Montserrat;
    font-weight: bold;
}

.show-text .animation-text{
    position:absolute;
    right:0;
    width:0;
    background: white;
    border-left: 2px solid #000;
    animation: auto-text 2s infinite alternate;
}

.container-english{
    display: none;
}

@keyframes auto-text {
    from { width: 100%
    }
    to { width:0 
    }
}

@media (max-width: 426px) {
    .show-text{
        font-size: 2em;
        text-align: center;
    }
}

@media (max-width: 300px) {
    .show-text{
        font-size: 1.6em;
    }
}

.container-gallery{
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 250px 450px 250px;
    gap: 20px;
    padding: 0 20px;
}

.blocks img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blocks:nth-child(2){
    grid-column-start: span 2;
}

.blocks:nth-child(3){
    grid-column-start: span 2;
}

.blocks:nth-child(6){
    grid-column-start: span 2;
}

.container-gallery .blocks .overlay-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.container-gallery .blocks .item-title {
    position: absolute;
    bottom: 0;
    left: 20px; 
    color: white;
    z-index: 2;
    font-size: 1.8em;
    font-family: Montserrat;
    font-weight: bold;
  }

.container-gallery .block-overlay {
    position: relative;
    overflow: hidden;
}
  
.container-gallery .block-overlay img {
    transition: transform 0.3s;
}
  
.container-gallery .block-overlay:hover img {
    transform: scale(1.1);
}
  
.container-gallery .block-overlay::after {
    content: "";
    background-color: rgba(0, 0, 0, 0.7);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.3s;
}
  
.container-gallery .block-overlay:hover::after {
    opacity: 1; 
}

@keyframes reveal {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@media (max-width: 768px){
    .container-gallery{
        grid-template-columns: repeat(1,1fr);
        grid-template-rows: 250px 250px;
    }

    .blocks:nth-child(1), .blocks:nth-child(2), .blocks:nth-child(3),
    .blocks:nth-child(4), .blocks:nth-child(5), .blocks:nth-child(6){
        grid-column-start: span 1;
    }

}

@media (min-width: 768px) and (max-width: 980px){
    .container-gallery{
        grid-template-columns: repeat(2, 1fr);
    }

    .blocks:nth-child(1){
        grid-column-start: span 2;
    }

    .blocks:nth-child(2), .blocks:nth-child(3){
        grid-column-start: span 1;
    }

    .blocks:nth-child(4){
        grid-column-start: span 2;
    }

    .blocks:nth-child(5), .blocks:nth-child(6){
        grid-column-start: span 1;
    }
}

.text-customers{
    margin: 0 auto;
    display: table;
    padding: 3em 0 1.5em 0;
}

.title-customers{
    margin: 1em 0;
    color: #000000;
    font-size: 2.5em;
    font-family: Montserrat;
    font-weight: bold;
}

@media (max-width: 590px) {
    .text-customers p{
        font-size: 2em;
        text-align: center;
    }
}

.logos-slide{
    animation: 50s slide infinite linear;
    display: inline-block;
}

.logos{
    overflow: hidden;
    padding: 30px 0 10px 0;
    margin: 0 0 50px 0;
    white-space: nowrap;
    position: relative;
}

.logos-slide img{
    height: 80px;
    margin: 0 45px;
}

.logos:hover .logos-slide{
    animation-play-state: paused;
}

.logos:before,.logos:after{
    position: absolute;
    top: 0;
    width: 300px;
    height: 100%;
    content: "";
    z-index: 2;
} 

.logos:before{
    left: 0;
    background: linear-gradient(to left, rgba(255, 255, 255, 0), #ffffff);
}

.logos:after{
    right: 0;
    background: linear-gradient(to right, rgba(255, 255, 255, 0), #ffffff);
}

@keyframes slide {
    from{
        transform: translateX(0);
    }
    to{
        transform: translateX(-100%);
    }
}

@media (max-width: 650px) {
    .logos:before,.logos:after{
        width: 50px;
    }
}

.closing-area{
    width: 100%;
    background: linear-gradient(90deg, #232526 0%, #414345 100%);
}
.closing-area .group-one-box{
    width: 100%;
    max-width: 1200px;
    margin: auto;
    display:grid;
    place-items: center;
    grid-template-columns: repeat(3, 1fr);
    grid-gap:50px;
    padding: 45px 0px;
}
.closing-area .group-one-box .box figure{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.closing-area .group-one-box .box figure img{
  width: 250px;
}

.closing-area .group-one-box .box p{
  color: #efefef;
  margin-bottom: 10px;
}
.closing-area .group-one-box .red-social a{
  display: inline-block;
  text-decoration: none;
  width: 45px;
  height: 45px;
  line-height: 45px;
  color: #fff;
  margin-right: 10px;
  background-color: #4F6F52;
  text-align: center;
  transition: all 360ms ease;
}

.closing-area .group-one-box .red-social a:hover{
  color:#4F6F52;
  background-color: #efefef;
}

.closing-area .group-down{
  background-color: #4F6F52;
  padding: 15px 10px;
  text-align: center;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.text-copyright p{
    margin: 0;
    margin-left: 5px;
    padding: 0;
}

.red-social a{
    font-size: 20px;
}

.closing-area .group-down small{
  font-size: 15px;
}

.click-information a{
    color: #fff;
    text-decoration: none;
}

.text-footer{
    margin: 0;
}

@media (max-width:800px){
  .closing-area .group-one-box{
      width: 90%;
      grid-template-columns: repeat(1, 1fr);
      grid-gap:30px;
      padding: 35px 0px;
  }
}

