/****************************
 * Newsletter
****************************/
.vii-newsletter {
    padding:100px var(--vii-gap-side);
    min-height:var(--vii-100vh);
}
.vii-newsletter__image-bg::before,
.vii-newsletter:not(:has(.vii-newsletter__image-bg))::before {content:"";position:absolute;inset:0;z-index:0;}
.vii-newsletter__image-bg::before {background-color:rgba(0, 0, 0, 0.5);}
.vii-newsletter:not(:has(.vii-newsletter__image-bg))::before {background-color:var(--vii-color-dark-gray);}
.vii-newsletter__wrap {
    margin-left:calc(var(--vii-gap-vc-column) * -1);
    margin-right:calc(var(--vii-gap-vc-column) * -1);
}
body .vii-newsletter__wrap,
body.scroll-up .vii-newsletter__wrap {
    --offset:300px;--extra-offset:0px;
}
.vii-newsletter__small-heading,
.vii-newsletter__gforms {
    padding-left:var(--vii-gap-vc-column);
    padding-right:var(--vii-gap-vc-column);
}
.vii-newsletter__small-heading {width:calc(100% * 5 / 12);}
.vii-newsletter__gforms {width:calc(100% * 7 / 12);}
.vii-newsletter__gforms__inner {max-width:668px;}

/* if submit get error */
.vii-newsletter__gforms .gform_validation_errors {
    --form-color-error:var(--vii-color-white);
}

/* if no small heading */
.vii-newsletter__wrap:not(:has(.vii-newsletter__small-heading)) .vii-newsletter__gforms {
    margin-left:auto;
}

/****************************
 * Responsive Newsletter
****************************/
@media only screen and (min-width:1700px) {
    .vii-newsletter__gforms__inner {max-width:45vw;}
}
@media only screen and (max-width:768px) {
    .vii-newsletter {min-height:60vw;}
    .vii-newsletter__wrap {flex-direction:column;gap:var(--vii-gap-container); position:static !important;}
    .vii-newsletter__gforms,
    .vii-newsletter__small-heading {width:100%;}
    .vii-newsletter__form-heading {margin-bottom:var(--vii-gap-container);}
}

@media only screen and (max-width:480px) {
    .vii-newsletter__gforms form.newsletter .vii-form-field {--form-field-height:54px;}
}