@import "font.css";
a{
    cursor: pointer;
}
.lineContact{
	letter-spacing: -1px;
}
.red{
    color:rgb(255,70,68) !important;
}
.navbarHome{
    width: 93vw;
    position: absolute;
    top: 0;
    z-index: 99;
}
.white{
    color:white;
}
.home-body{
    overflow-x: hidden;
    position: relative;
}
.bg {
    /* The image used */
    background-image: url(../images/Imagen-banner.jpg);
    /* Full height */
    height: 850px; 
    /* Center and scale the image nicely */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
  }
.tb-menu-2{
    display: none !important;
}
.top-bar{
    /*margin: 0px 120px;*/
    color: white;
    font-size: 13px;
    text-align: center;
    font-family: "opensans-bold";
}
.bottom-left-black {
    width: 23vw;
    position: absolute;
    bottom: -4vw;
    left: 3vw;
	z-index: 1;
}
.bottom-left-red {
    width: 12vw;
    position: absolute;
    bottom: -8vw;
    left: 15vw;
	z-index: 1;
}
.middle-left-red{
    position: absolute;
    left: -5vw;
    top: 17vw;
	z-index: 1;
}
.bottom-right-red{
    position: absolute;
    right: -5px;
    bottom: -3vw;
    width: 15vw;      
    z-index: 1;
}
.logo{
    width: 45%;
}
.btn-class{
    border-radius: initial !important;
    height: 50px;
    width: 120px;
    font-size: 13px !important;
    font-family: "opensans-bold";
    background-color: rgb(255,70,68) !important;
    color: white !important;
}
.welcome-text{
    color: white;
    text-align: center;
    font-size: 90px;
    margin: 250px 0px;
    font-family: "jost-bold";
}
.home-message{
    margin: 180px 0px;
    text-align: center;
    position: relative;
}
.home-message .title{
    color: rgb(255,70,68);
    font-family: "opensans-bold";
    font-size: 30px;
}
.home-message p {
    color:black;
    font-family: "opensans-regular";
    font-size: 15px;
    margin: 0px;
}
.home-message p {
    color:black;
    font-family: "opensans-regular";
    font-size: 15px;
    margin: 0px;
}
.home-message .bottom-left{
    position: absolute;
    bottom: -8vw;
    left: 27vw;
}
.home-message .bottom-right{
    position: absolute;
    top: -8vw;
    right: 25vw;
}
.carousel .card .close {
    margin: 0px !important;
}
.carousel .card .show{
    display: none;
}
.carousel .close {
    float: none; 
    position: absolute;
    top: 0px;
    right: 0px;
    opacity: 1 !important;
}
.carousel .card:hover{
    position: relative;
    top: -30px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
.carousel .card:hover .show{
    display: block;
}
.carousel .card{
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    width: 75%;
}
.carousel .card-img, .card-img-bottom, .card-img-top {
        height: 400px !important;
        object-fit: contain !important;
}
.carousel .team-member{
    width: fit-content;
    position: relative;
    top: -5vw;
    left: 15vw;
}
.carousel .team-member p{
    font-family: 'opensans-extrabold';
    font-size: 20px;
    line-height: 0px;
}
.carousel .team-member span{
    font-size: 14px;
    font-family: 'opensans-bold';
    color: #ff4644;
}
.title{
    position: relative;
    left: -10px;
}
.title p{
    font-size: 110px;
    color: rgba(0,0,0,0.1);
    font-family: "opensans-extrabold";
}
.title p span{
    font-size: 30px;
    color: rgba(255,70,68);
    font-family: "opensans-bold";
    position: relative;
    top: -30px;
    left: -100px;
}
.controls-top a{
    color: rgba(255,70,68);
    text-decoration: none;
    background-color: transparent;
    border: 2px solid;
    padding: 10px;
    margin: 0px 10px;
}
.card-img, .card-img-bottom, .card-img-top {
    width: 100%;
    height: 500px;
    object-fit: cover;
}
.carousel .btn-class {
    border-radius: initial !important;
    height: 50px;
    width: auto;
    font-size: 15px !important;
    font-family: "opensans-bold";
    background-color: rgb(255,70,68) !important;
    color: white !important;
    padding: 1vw 2vw;
}
.title-black{
    font-size: 50px;
    margin: 0px 9vw;
    font-family: 'opensans-extrabold';
}
.home-news .card{
    max-width: 540px;
    height: 210px;
    border: 0px;
}
.home-news .news-main-img{
    padding-right: 45px;
    padding-left: 0px;
}
.home-news .news-main-img .card{
    position: relative;
    top: -9vw;
    float: right;
    width: 28vw;
}
.home-news .news-main-img .card .card-body{
    padding: 2vw 0vw 0vw 3vw;
}
.home-news .news-main-img .card .card-body .card-title{
    font-size: 25px;
}
.home-news .card .card-body{
    padding: 3vw 0vw 0vw 3vw;
}
.home-news .card .card-img{
    width: 100%;
    height: 210px;
    object-fit: cover;
}
.home-news .card .card-body .card-title{
    font-size: 20px;
    font-family: 'opensans-extrabold';
}
.line:before{
    content: "------------";
    position: absolute;
    top: 0px;
    left: -70px;
}
.home-news .card .card-body .card-text{
    color: red;
    font-family: 'opensans-bold';
    font-size: 14px;
    position: relative;
}
.home-news .btn-class {
    border-radius: initial !important;
    height: 50px;
    width: auto;
    font-size: 16px !important;
    font-family: "opensans-bold";
    background-color: rgb(255,70,68) !important;
    color: white !important;
    padding: 0px 25px;
    margin-right: 12vw;
}
.services{
    margin-bottom: 70px;
    position: relative;
}
.services p{
    margin: auto;
    font-family: "opensans-bold";
    font-size: 13px;
}
.services span{
    margin: auto;
    font-family: "opensans-bold";
    font-size: 13px;
}
.services .bottom-left-red{
    position: absolute;
    top: 0vw;
    left: -10vw;
}
.services .bottom-right-red{
    position: absolute;
    top: 0vw;
    right: -8vw;
}
.services .contact-us{
    text-align: center;
    font-family: "opensans-bold";
    font-size: 13px;
    color: rgb(255,70,68);
    line-height: 100px;
}
.team-card{
    margin: 2vw 9vw;
    border: 0px !important;
}
.team-card .team-card-text{
        background: #ff4644;
        color: white;
        font-family: "opensans-bold";
}
.team-card .card-body {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    height: 100%;
    padding: 1.25rem;
    display: grid;
    grid-template-columns: 15fr 70fr 15fr;
    align-items: center;
}
.team-card .meet-team{
    text-align: right;
}
.team-card .card-body .team-text {
    grid-column: 2;
}
.team-card .card-body .team-text .card-title {
    font-size: 45px;
    font-family: "opensans-extrabold";
}
.team-card .card-body .team-text .card-text {
    font-size: 14px;
    line-height: 2vw;
}
.team-card .btn-class {
    border-radius: initial !important;
    height: 50px;
    width: auto;
    font-size: 16px !important;
    font-family: "opensans-bold";
    background-color: rgb(255,70,68) !important;
    color: white !important;
    padding: 0px 25px;
    margin-right: 6vw;
}
.offices {
    color: white;
    margin-top: 10px;
    margin-bottom: 180px;
    position: relative;
}
.offices .top-right {
    width: 80px;
    position: absolute;
    top: -4vw;
    right: 5vw;
}
.offices .bottom-left {
    width: 80px;
    position: absolute;
    bottom: -2vw;
    left: 4vw;
}
.offices .centered {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.offices .city{
    font-family: "jost-bold";
    font-size: 20px;
}
.offices img{
    width: 100%;
}
@media screen and (max-width: 992px) {
    .services .bottom-left-red {
        position: absolute;
        top: 0vw;
        left: -10vw;
        display: none;
    }
    .logo{
        width: 40%;
    }
    .welcome-text {
        margin: 250px 0px 120px;
    }
    .title p span {
        font-size: 25px;
        position: relative;
        top: -25px;
        left: -100px;
    }
    .title p {
        font-size: 90px;
    }
    .team-card .card-body {
        grid-template-columns: 10fr 80fr 10fr;
    }
    .team-card .card-body .team-text .card-text {
        font-size: 20px;
        line-height: inherit;
    }
    .team-card .card-img{
        object-fit: cover;
        object-position: 80% 100%;
    }
    .services .bottom-right-red {
        position: absolute;
        top: 1700px;
        left: -160px;
    }
    .offices {
        margin-bottom: 0px;
    }
    .offices .top-right {
        width: 80px;
        position: relative;
        top: -20vw;
        right: -72vw;
    }
    .offices .bottom-left {
        width: 80px;
        position: relative;
        top: -10vw;
        left: -8vw;
    }
}
@media screen and (max-width: 767px) {
	.middle-left-red {
		left: -23vw;
	}
	.bottom-right-red {
		display: none;
	}
    .tb-menu-1{
        display: none !important;
    }
    .tb-menu-2{
        display: block !important;
    }
    .bg {
        height: 630px;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .bg .bottom-left-black {
        position: relative;
        width: 50%;
        bottom: 60vw;
        left: -15vw;
    }
    .bg .bottom-left-red {
        width: 100px;
        position: relative;
        bottom: 30vw;
        left: -45vw;
    }
    .bg .middle-left-red {
        width: 100px;
        position: relative;
        top: -90vw;
        right: -68vw;
        left: unset;
    }
    .top-bar-responsive{
        color: black;
        font-size: 13px;
        text-align: center;
        font-family: "opensans-bold";
        margin: 20% 0px;
    }
    .logo{
        width: 50%;
    }
    .welcome-text {
        font-size: 15vw;
        line-height: 70px;
        margin: 160px 20px 55px;
        padding: 20px;
    }
    .home-message {
        margin: 70px 0px 160px 0px;
        padding: 20px;
        text-align: center;
    }
    .home-message p {
        font-size: 12px;
        margin: 0px;
        line-height: 25px;
    }
    .home-message .bottom-right {
        position: relative;
        top: unset;
        left: 48vw;
    }
    .home-message .bottom-left {
        position: relative;
        top: 75vw;
        left: -52vw;
    }
    .home-message .title {
        font-size: 25px;
    }
    .title {
        text-align: center;
        position: initial;
        left: 0px;
    }
    .title p {
        font-size: 20vw;
        line-height: 45px;
    }
    .title p span {
        display: block;
        font-size: 27px;
        position: unset;
        padding: 10px 60px;
    }
    .home-news {
        margin-right: 0px !important;
        margin-left: 0px  !important;
        padding: 0px !important;
        margin-bottom: 100px;
    }
    .home-news .card {
        max-width: 540px;
        height: auto;
        border: 0px;
    }
    .home-news .news-main-img{
        margin: 0px;
        padding-right: 0px;
        padding-left: 0px;
    }
    .home-news .news-main-img .card{
        position: relative;
        top: -25vw;
        float: right;
        width: 78vw;
    }
    .home-news .news-main-img .card .card-body{
        padding: 5vw 0vw 0vw 5vw;
    }
    .controls-top {
        text-align: right;
        margin-bottom: 60px;
    }
    .services {
        margin: 10px 20px 70px 30px;
    }
    .team-card{
        margin-bottom: 100px;
    }
    .team-card .card-body {
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        height: 100%;
        padding: 1.25rem;
        display: grid;
        grid-template-columns: 10fr 80fr 10fr;
        align-items: center;
    }
    .team-card .card-body .team-text {
        grid-column: 2;
    }
    .team-card .card-body .team-text .card-text {
        font-size: 20px;
        line-height: inherit;
    }
    .team-card .card-img{
        width: 100%;
        height: auto; 
        object-fit: cover;
    }
    .team-card .meet-team{
        text-align: center;
    }
    .offices {
        color: white;
        margin-top: 10px;
        margin-bottom: 0px;
    }
    .offices .city {
        font-family: "jost-bold";
        font-size: 32px;
    }
    .offices img{
        width: 80%;
    }
    .offices .top-right {
        width: 60px;
        position: relative;
        top: -190vw;
        right: -75vw;
    }
    .offices .bottom-left {
        width: 60px;
        position: relative;
        top: -20vw;
        right: 0vw;
        left: -22vw;
    }
    .services .bottom-right-red {
        position: absolute;
        top: 1600px;
        left: -160px;
        display: none;
    }
    .services .contact-us{
        text-align: left;
    }
    .modal-header {
        border-bottom: none !important; 
    }

}

@media only screen and (min-width: 1440px) {
  .home-message {
    margin: 300px 0px 180px 0px;
  }
}