.custom-hero {
    padding: 25px;
    display: flex;
    flex-direction: column;
    text-align: left;
    align-items: flex-start;
    margin: 0 auto;
    justify-content: flex-end;
    position: relative
}
.custom-hero .heading,
.custom-hero, 
.custom-hero a.button {
    color: var(--theme-background-color);
}
.custom-hero a.button {
    border-color: var(--theme-background-color);
    margin: 10px;
}
.custom-hero-image {
    mask-image: linear-gradient(0deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 60%);
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
}
.custom-hero-image:after {
    content: "";
    position: absolute;
    top: 0;
    height: 40%;
    left: 0;
    width: 100%;
    background: linear-gradient(0deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 80%);
}
.header-invert-1 .custom-hero-image:after  {

    background: linear-gradient(0deg,rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 80%);
}
.custom-hero-image * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center center;
}
.custom-hero-content {
    position: relative;
}
.custom-hero-content > div > *:last-child {
    margin-bottom: 0;
}
@media screen and (min-width: 768px) { 
    .custom-hero-content {
        display: flex;
        flex-direction: row;
        align-items: flex-end;
        gap: 2%;
        width: 100%;
    }
    .custom-hero-content .heading {
        margin-bottom: 0;
    }
    .custom-hero-content * {
        flex-basis: 49%;
    }
    .custom-hero-content > div {
        text-align: right;
        max-width: 400px;
        margin-right: 0;
        margin-left: auto;
    }

}

.elementor-element[data-element_type="container"]:has(.elementor-widget-custom-hero),
.elementor-element[data-element_type="container"] > .e-con-inner:has(.elementor-widget-custom-hero){
    padding: 0;
    max-width: 100%;
    width: 100%;
}