/* Revuteck integration scope: generated automatically. */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Lato:wght@300;400;700;900&family=Montserrat:wght@300;400;500;600;700;800&family=Nunito:wght@300;400;500;600;700;800&family=Open+Sans:wght@300;400;500;600;700;800&family=Phudu:wght@300;400;500;600;700;800&family=Poppins:wght@300;400;500;600;700;800&family=Roboto:wght@300;400;500;700;900&family=Source+Sans+Pro:wght@300;400;600;700;900&display=swap");

.rv-finoptiz-sections .luma-cta-banner-section,.rv-finoptiz-sections .luma-cta-banner-section *{ box-sizing: border-box; }

.rv-finoptiz-sections .luma-cta-banner-section{
    width: 100%;
    position: relative;
    background: var(--luma-cta-section-bg, #ffffff);
    padding: var(--luma-cta-padding-top, 46px) clamp(18px, 4vw, 76px) var(--luma-cta-padding-bottom, 46px);
    overflow: hidden;
    isolation: isolate;
}

.rv-finoptiz-sections .luma-cta-banner-box{
    width: min(100%, var(--luma-cta-container-width, 1620px));
    min-height: var(--luma-cta-min-height, 540px);
    margin: 0 auto;
    position: relative;
    overflow: visible;
    border-radius: var(--luma-cta-radius, 34px);
    background: var(--luma-cta-gradient-end, #020816);
    box-shadow: 0 28px 80px rgba(2, 8, 22, .12);
}

.rv-finoptiz-sections .luma-cta-banner-bg,.rv-finoptiz-sections .luma-cta-banner-overlay{
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    overflow: hidden;
}

.rv-finoptiz-sections .luma-cta-banner-bg{
    z-index: 0;
    background-image: var(--luma-cta-bg-image), radial-gradient(circle at 68% 45%, var(--luma-cta-gradient-mid, #064fc0), var(--luma-cta-gradient-end, #020816) 62%);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    transform: scale(1.001);
}

.rv-finoptiz-sections .luma-cta-banner-overlay{
    z-index: 1;
    background:
        linear-gradient(90deg,
            color-mix(in srgb, var(--luma-cta-gradient-start, #061327) 96%, transparent) 0%,
            color-mix(in srgb, var(--luma-cta-gradient-start, #061327) 88%, transparent) 30%,
            color-mix(in srgb, var(--luma-cta-gradient-mid, #064fc0) 58%, transparent) 58%,
            color-mix(in srgb, var(--luma-cta-gradient-end, #020816) 12%, transparent) 100%),
        linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.12)),
        var(--luma-cta-overlay-color, #061327);
    opacity: var(--luma-cta-overlay-opacity, .76);
}

.rv-finoptiz-sections .luma-cta-banner-grid{
    position: relative;
    z-index: 2;
    min-height: var(--luma-cta-min-height, 540px);
    display: grid;
    grid-template-columns: var(--luma-cta-content-width, 60%) 1fr;
    align-items: center;
}

.rv-finoptiz-sections .luma-cta-banner-content{
    position: relative;
    z-index: 3;
    padding: clamp(34px, 5vw, var(--luma-cta-content-pad-x, 64px));
    max-width: 760px;
}

.rv-finoptiz-sections .luma-cta-banner-content h2{
    margin: 0 0 28px !important;
    color: var(--luma-cta-heading-color, #fff) !important;
    font-family: var(--luma-cta-heading-font, "Poppins", sans-serif) !important;
    font-size: clamp(30px, 3vw, var(--luma-cta-heading-size, 44px)) !important;
    line-height: 1.18 !important;
    letter-spacing: -.04em !important;
    font-weight: var(--luma-cta-heading-weight, 400) !important;
}

.rv-finoptiz-sections .luma-cta-banner-content p{
    margin: 0 0 52px !important;
    color: color-mix(in srgb, var(--luma-cta-description-color, #fff) 94%, transparent) !important;
    font-family: var(--luma-cta-description-font, "Poppins", sans-serif) !important;
    font-size: clamp(16px, 1.45vw, var(--luma-cta-description-size, 22px)) !important;
    line-height: 1.55 !important;
    letter-spacing: -.02em !important;
    font-weight: var(--luma-cta-description-weight, 500) !important;
    max-width: 730px;
}

.rv-finoptiz-sections .luma-cta-banner-button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    min-height: 70px;
    padding: 18px 30px 18px 32px;
    border-radius: 12px;
    background: var(--luma-cta-button-bg, #326cff);
    color: var(--luma-cta-button-text, #fff) !important;
    text-decoration: none !important;
    font-family: var(--luma-cta-button-font, "Poppins", sans-serif) !important;
    font-size: clamp(15px, 1.45vw, var(--luma-cta-button-size, 24px)) !important;
    line-height: 1 !important;
    font-weight: var(--luma-cta-button-weight, 600) !important;
    box-shadow: 0 18px 44px rgba(50,108,255,.25);
    transition: transform .22s ease, background .22s ease, box-shadow .22s ease, filter .22s ease;
}

.rv-finoptiz-sections .luma-cta-banner-button:hover{
    background: var(--luma-cta-button-hover-bg, #1f57ea);
    transform: translateY(-2px);
    box-shadow: 0 22px 58px rgba(50,108,255,.34);
}

.rv-finoptiz-sections .luma-cta-banner-button:active{ transform: translateY(0) scale(.985); }
.rv-finoptiz-sections .luma-cta-banner-button-icon{ font-size: 1.35em; line-height: .75; transform: translateY(-1px); }

.rv-finoptiz-sections .luma-cta-banner-visual{
    position: absolute;
    z-index: 3;
    right: var(--luma-cta-image-offset-x, -18px);
    bottom: var(--luma-cta-image-offset-y, 0px);
    width: var(--luma-cta-image-width, 40%);
    height: calc(var(--luma-cta-min-height, 540px) + 70px);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    pointer-events: none;
}

.rv-finoptiz-sections .luma-cta-banner-visual img{
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: bottom center;
    filter: drop-shadow(0 30px 48px rgba(0,0,0,.16));
}

@media (max-width: 1180px) {
    .rv-finoptiz-sections .luma-cta-banner-section{ padding-inline: clamp(16px, 3vw, 38px); }
    .rv-finoptiz-sections .luma-cta-banner-grid{ grid-template-columns: 62% 38%; }
    .rv-finoptiz-sections .luma-cta-banner-content{ padding: clamp(30px, 4vw, 54px); }
    .rv-finoptiz-sections .luma-cta-banner-content p{ margin-bottom: 36px !important; }
    .rv-finoptiz-sections .luma-cta-banner-visual{ width: 42%; right: -26px; }
}

@media (max-width: 900px) {
    .rv-finoptiz-sections .luma-cta-banner-box{ min-height: auto; overflow: hidden; }
    .rv-finoptiz-sections .luma-cta-banner-grid{
        min-height: auto;
        grid-template-columns: 1fr;
        padding-bottom: 0;
    }
    .rv-finoptiz-sections .luma-cta-banner-content{
        max-width: 100%;
        padding: 42px 32px 260px;
    }
    .rv-finoptiz-sections .luma-cta-banner-content h2{ margin-bottom: 18px !important; }
    .rv-finoptiz-sections .luma-cta-banner-content p{ margin-bottom: 28px !important; }
    .rv-finoptiz-sections .luma-cta-banner-visual{
        right: -12px;
        bottom: -2px;
        width: min(68%, 420px);
        height: 295px;
        align-items: flex-end;
        justify-content: flex-end;
    }
    .rv-finoptiz-sections .luma-cta-banner-overlay{
        background:
            linear-gradient(180deg,
                color-mix(in srgb, var(--luma-cta-gradient-start, #061327) 96%, transparent) 0%,
                color-mix(in srgb, var(--luma-cta-gradient-start, #061327) 82%, transparent) 50%,
                color-mix(in srgb, var(--luma-cta-gradient-end, #020816) 46%, transparent) 100%),
            var(--luma-cta-overlay-color, #061327);
    }
}

@media (max-width: 560px) {
    .rv-finoptiz-sections .luma-cta-banner-section{ padding: 28px 14px; }
    .rv-finoptiz-sections .luma-cta-banner-box{ border-radius: min(var(--luma-cta-radius, 34px), 24px); }
    .rv-finoptiz-sections .luma-cta-banner-content{ padding: 32px 22px 225px; }
    .rv-finoptiz-sections .luma-cta-banner-content h2{ font-size: clamp(27px, 9vw, 38px) !important; }
    .rv-finoptiz-sections .luma-cta-banner-content p{ font-size: clamp(15px, 4.6vw, 18px) !important; }
    .rv-finoptiz-sections .luma-cta-banner-button{ min-height: 56px; width: 100%; gap: 18px; padding: 16px 20px; }
    .rv-finoptiz-sections .luma-cta-banner-visual{ width: min(86%, 360px); height: 245px; right: -32px; }
}
