/* Home page only. Shared styles are in /Public/Shared/assets/site.css. */

/* Hero */
.home-hero {
    position: relative;
    background: url('img/hero-mobile.webp') center center / cover no-repeat;
}

.home-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #000;
    opacity: .5;
}

.home-hero .container {
    position: relative;
}

.home-hero-text {
    min-height: 100vh;
    padding: 3rem 0;
}

.home-hero h1,
.home-hero h2 {
    font-size: 32px;
    font-weight: 700;
    color: #fff;
}

.home-hero p {
    font-size: 18px;
    line-height: 1.5;
    color: rgba(255, 255, 255, .7);
}

@media (max-width: 767.98px) {
    .home-hero h1,
    .home-hero h2 {
        font-size: 26px;
    }

    .home-hero-text {
        min-height: 0;
    }
}

@media (min-width: 768px) {
    .home-hero {
        background-image: url('img/hero.webp');
    }
}

@media (min-width: 992px) {
    .home-hero {
        background-position: top center;
    }

    /* Room for the navbar that sits over the hero */
    .home-hero-text {
        padding: 170px 0;
    }

    .home-hero-lead {
        margin-right: 20%;
    }
}

/* VIA card */
.home-via-img {
    width: 100%;
    height: 100%;
    min-height: 240px;
    object-fit: cover;
}

.home-via-tabs {
    --bs-nav-pills-link-active-bg: var(--bs-primary);
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-border-radius: 999px;
    gap: .35rem;
}

.home-via-tabs .nav-link {
    padding: .25rem .9rem;
    font-size: .875rem;
    line-height: 1.6;
    color: #000;
    background: #efefef;
    border: 1px solid #767676;
}

.home-via-tabs .nav-link.active {
    border-color: var(--bs-primary);
}

/* Background shared by the cards, events, letter and annual report */
.home-cards-bg {
    background: url('img/cards-bg.webp') center bottom / cover no-repeat;
    padding: 50px 0;
}

/* Service cards */
.home-card {
    width: 100%;
    max-width: 25rem;
    margin: 1rem;
}

.home-card .card-img-top {
    height: auto;
}

.home-card .card-title {
    font-size: 1.25rem;
}

/* Letter */
.home-letter {
    padding: 0;
    background: #fff;
    border: 1px solid #b19999;
    color: #000;
    font-weight: 500;
}

.home-letter p {
    margin-bottom: 1.8em;
}

/* Annual report */
.home-report {
    max-width: 350px;
    background: #fff;
}

/* Partners */
.home-partners img {
    max-width: 100%;
    height: auto;
}

/* Offices */
.home-offices {
    background: linear-gradient(rgba(255, 255, 255, .7), rgba(255, 255, 255, .45)), url('img/offices-bg.webp') center / cover no-repeat;
    color: rgba(0, 0, 0, .95);
}
