.hero__gridWrapper{
    display: grid;
    width: 100%;
}
.hero__gridWrapper > *{
    grid-row: 1 / -1;
    grid-column: 1 / -1;
}
.hero__backgroundMask{
    width: 100%;
    background-image: url(../../img/home/hero/hero-background-white-mask.svg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: -1px;
}
.hero{
    position: relative;
    overflow: hidden;
    display: flex;
    gap:0;
}
.hero::before{
    /* background image, isolated on its own layer so the Ken Burns zoom (animations.css) can
       scale just the image without affecting the gradient overlay or the flex content below */
    content: '';
    position: absolute;
    inset: 0;
    z-index: -2;
    background: url(../../img/home/hero/hero-background.webp) no-repeat;
    background-size: cover;
    background-position: top;
}
.hero::after{
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(to right,rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
}
.hero__wrapper{
    width: 100%;
    padding: 10rem var(--gutter) 25rem;
    background: rgba(0,0,0,0.3);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.hero__info{
    display:flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
}

.hero__cloud-logo{
    width: 150px;
}
.hero__headline{
    color: var(--white);
    font-family: var(--ff-headline);
    font-size: var(--fs-xl-large);
    font-weight: 700;
    text-align: center;
    width: 100%;
}
.hero__sub-heading{
    color: var(--white);
    font-family: var(--ff-body);
    font-size: var(--fs-smaller);
    font-weight: 400;
    text-align: center;
    line-height: 26px; /* 162.5% */
}
.hero__cta-wrapper{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap:1rem;
    width: 100%;
}
.hero__cta-contact,.hero__cta-demo{
    display: flex;
    padding: 1.4rem 0;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    width: 100%;
    max-width: 200px;
    text-decoration: none;
    cursor: pointer;
}
.hero__cta-contact{
    background: var(--orange);
    color:var(--white);
}
.hero__cta-contact:hover{
    background: var(--white);
    color:var(--blue);
}
.hero__cta-demo{
    background: rgba(255, 255, 255, 0.40);
    color:var(--white);
}
.hero__cta-demo:hover{
    background: var(--light-blue);
    color:var(--white);
}
@media (min-width: 992px) { 
    .hero__wrapper{
        flex-direction: row;
    }
    .hero__info{
        width: 650px;
    }
    .hero__headline{
        text-align: left;
    }
    .hero__sub-heading{
        text-align: left;
        align-self: flex-start;
    }
    .hero__video{
        width: 40%;
        max-width: 850px;
    }
    .hero__cloud-logo{
        align-self: flex-start;
    }
    .hero__cta-wrapper{
        justify-content: flex-start;
    }
}
@media (min-width: 1400px) {
    .hero::before{
        background-size: 100% 100%;
    }
}
@media (max-width: 400px) {
    .hero__cta-wrapper{
        flex-direction: column;
    }
}
@media (max-width: 768px) {
    .hero::before{
        background-position: 76%;
    }
}