main {
    margin-top: 100px;
}

@media only screen and (max-width: 900px) {
    main {
        margin-top: 50px;
    }
}



/* Banner */

.banner-container {
    position: relative;
    width: 100%;
    height: 75vh;
}

.banner-container img {
    width: 100%;
    height: 100%;
    vertical-align: middle;
    object-fit: cover;
    filter: brightness(75%);
}

.banner-text {
    position: absolute;
    top: 50%;
    left: 15%;
    transform: translateY(-50%);
    margin: 0 15px;
    font-size: 50px;
    color: white;
}

.banner-note {
    position: absolute;
    bottom: 0;
    right: 0;
    margin: 15px;
    font-size: 16px;
    text-align: end;
    color: whitesmoke;
}

@media only screen and (max-width: 900px) {
    .banner-container {
        height: calc(80vh - 50px);
    }

    .banner-text {
        font-size: 30px;
    }
}

@media only screen and (max-width: 500px) {
    .banner-text {
        left: 0;
        width: calc(100% - 30px);
    }
}



/* Text */

.text-container {
    width: 80%;
    max-width: 1250px;
    margin: 50px auto 50px auto;
}



/* Infos */

.info-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 50px;
    width: 80%;
    max-width: 1250px;
    margin: 0 auto;
}

.info-container img {
    width: 50%;
    height: 400px;
    object-fit: cover;
    object-position: 20%;
    vertical-align: middle;
    border-radius: 10px;
    box-shadow: 0px 5px 25px 0px rgba(0, 0, 0, 0.25);
    margin-bottom: auto;
}

.info-text-container {
    width: 50%;
}

@media only screen and (max-width: 800px) {
    .info-container {
        flex-direction: column;
    }

    .info-container img, .info-text-container {
        width: 100%;
    }
}
