.home-launch main #lead-capture.quote-funnel {
    display: grid;
    box-sizing: border-box;
    min-height: calc(100svh - 7rem);
    place-items: center;
    padding: clamp(.8rem, 2vh, 1.4rem) clamp(.8rem, 2vw, 1.5rem) !important;
    background: #f3efe9;
}

.quote-funnel-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(25rem, .98fr);
    max-width: 82.5rem;
    min-height: min(41rem, calc(100svh - 9rem));
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(33, 31, 28, .1);
    border-radius: 2rem;
    background: #171715;
    box-shadow: 0 2rem 5rem rgba(42, 36, 30, .14);
}

.quote-offer {
    display: grid;
    align-content: center;
    gap: clamp(.7rem, 1.6vh, 1rem);
    padding: clamp(1.6rem, 3vw, 2.8rem);
    color: #fff;
}

.quote-kicker,
.quote-lead-form .lead-form-heading > span {
    color: #ef5663;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.quote-offer h2 {
    max-width: 13ch;
    margin: 0;
    color: #fff;
    font-size: clamp(2.25rem, 3.5vw, 3.65rem);
    line-height: 1;
    letter-spacing: -.055em;
}

.quote-offer h2 em {
    display: block;
    margin-top: .22em;
    color: #ef5663;
    font-style: normal;
}

.quote-offer > p {
    max-width: 36rem;
    margin: 0;
    color: rgba(255, 255, 255, .72);
    font-size: clamp(.9rem, 1.1vw, 1.05rem);
    line-height: 1.5;
}

.quote-visual {
    position: relative;
    height: clamp(9rem, 20vh, 12rem);
    margin: .1rem 0 0;
    overflow: hidden;
    border-radius: 1.25rem;
    background: #2a2825;
}

.quote-visual::after {
    position: absolute;
    inset: 0;
    content: "";
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12);
    border-radius: inherit;
    pointer-events: none;
}

.quote-visual img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.quote-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.quote-benefits li {
    display: grid;
    align-content: start;
    gap: .35rem;
    min-width: 0;
    padding: .68rem .75rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: .9rem;
    color: rgba(255, 255, 255, .8);
    font-size: .7rem;
    line-height: 1.35;
}

.quote-benefits li span {
    color: #ef7882;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.quote-trust {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem 1rem;
    color: rgba(255, 255, 255, .8);
    font-size: .74rem;
    font-weight: 700;
}

.quote-trust span::before {
    margin-right: .45rem;
    color: #ef5663;
    content: "\2713";
}

.quote-funnel .quote-lead-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: center;
    gap: .72rem .8rem;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: clamp(1.6rem, 3vw, 2.8rem) !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff;
    box-shadow: none !important;
}

.quote-lead-form .lead-form-heading,
.quote-lead-form .full,
.quote-lead-form > button,
.quote-lead-form .form-privacy-note,
.quote-lead-form .consult-status {
    grid-column: 1 / -1;
}

.quote-lead-form .lead-form-heading {
    margin-bottom: .1rem;
}

.quote-lead-form .lead-form-heading h3 {
    margin: .32rem 0 .42rem;
    color: #1d1c1a;
    font-size: clamp(1.7rem, 2.4vw, 2.45rem);
    line-height: 1.02;
    letter-spacing: -.045em;
}

.quote-lead-form .lead-form-heading p {
    max-width: 35rem;
    margin: 0;
    color: #706b65;
    font-size: .9rem;
    line-height: 1.42;
}

.quote-lead-form .lead-field {
    display: grid;
    gap: .3rem;
    min-width: 0;
}

.quote-lead-form .lead-field label {
    color: #302d29;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .03em;
}

.quote-lead-form .lead-field label small {
    color: #8c867e;
    font-size: .7rem;
    font-weight: 600;
}

.quote-lead-form input,
.quote-lead-form select,
.quote-lead-form textarea {
    width: 100%;
    min-height: 2.9rem;
    padding: .72rem .85rem;
    border: 1px solid #dcd5cd;
    border-radius: .85rem;
    outline: 0;
    background: #faf8f5;
    color: #1d1c1a;
    font: inherit;
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.quote-lead-form textarea {
    min-height: 3.9rem;
    resize: vertical;
}

.quote-lead-form input:focus,
.quote-lead-form select:focus,
.quote-lead-form textarea:focus {
    border-color: #ef5663;
    background: #fff;
    box-shadow: 0 0 0 .22rem rgba(239, 86, 99, .12);
}

.quote-lead-form > .btn {
    min-height: 3rem;
    border-radius: .9rem;
    font-weight: 800;
}

.quote-lead-form > .btn:disabled {
    cursor: wait;
    opacity: .7;
}

.quote-lead-form .form-privacy-note {
    margin: 0;
    color: #8a847d;
    font-size: .64rem;
    line-height: 1.35;
}

.quote-lead-form .consult-status {
    min-height: 0;
    margin: 0;
    font-size: .82rem;
    font-weight: 700;
}

.quote-lead-form .consult-status:empty {
    display: none;
}

.quote-lead-form .consult-status.is-success {
    color: #16764a;
}

.quote-lead-form .consult-status.is-error {
    color: #b42335;
}

.paid-traffic .consult-fab-wrap {
    display: none !important;
}

@media (max-width: 60rem) {
    .quote-funnel-grid {
        grid-template-columns: minmax(0, .82fr) minmax(23rem, 1.18fr);
        max-width: 56rem;
    }

    .quote-offer h2 {
        max-width: 13ch;
    }

    .quote-offer {
        padding: 1.5rem;
    }

    .quote-visual {
        height: clamp(8rem, 18vh, 10rem);
    }

    .quote-benefits {
        grid-template-columns: 1fr;
    }

    .quote-benefits li {
        grid-template-columns: auto 1fr;
        align-items: center;
    }

    .quote-funnel .quote-lead-form {
        padding: 1.5rem !important;
    }
}

@media (max-width: 40rem) {
    .home-launch main #lead-capture.quote-funnel {
        display: grid;
        height: auto;
        min-height: max(48rem, 100svh);
        place-items: stretch;
        padding: 0 !important;
        overflow: hidden;
        background: #151513;
    }

    .quote-funnel-grid {
        position: relative;
        isolation: isolate;
        grid-template-columns: 1fr;
        grid-template-rows: minmax(17.5rem, 1fr) auto;
        align-content: stretch;
        width: 100%;
        max-width: none;
        height: auto;
        min-height: max(48rem, 100svh);
        padding-bottom: .8rem;
        overflow: hidden;
        border: 0;
        border-radius: 0;
        background:
            linear-gradient(180deg, rgba(12, 12, 11, .2) 0%, rgba(12, 12, 11, .46) 38%, rgba(12, 12, 11, .88) 72%, #151513 100%),
            url("../assets/home_hero/home_hero_6a7db74ba27825.07154461_1786623819.jpg") center 33% / cover no-repeat;
        box-shadow: none;
    }

    .quote-offer {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        gap: .55rem;
        min-height: 0;
        padding: 2rem 1.35rem 1.35rem;
        text-shadow: 0 .12rem .8rem rgba(0, 0, 0, .35);
    }

    .quote-kicker {
        display: flex;
        align-items: center;
        gap: .55rem;
        margin: 0;
        color: #ff7a84;
        font-size: .68rem;
        font-weight: 800;
        letter-spacing: .16em;
        text-shadow: none;
    }

    .quote-kicker::before {
        width: 1.45rem;
        height: 1px;
        flex: 0 0 auto;
        background: currentColor;
        content: "";
    }

    .quote-offer h2 {
        max-width: 13ch;
        font-size: clamp(2rem, 8.6vw, 2.38rem) !important;
        font-weight: 720;
        line-height: 1.01;
        letter-spacing: -.048em;
    }

    .quote-offer > p,
    .quote-visual,
    .quote-benefits {
        display: none;
    }

    .quote-trust {
        display: none;
    }

    .quote-funnel .quote-lead-form {
        position: relative;
        z-index: 2;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-content: center;
        align-self: end;
        justify-self: stretch;
        gap: .58rem;
        width: calc(100% - 1.25rem);
        margin: 0 auto !important;
        padding: 1.2rem 1.08rem calc(.95rem + env(safe-area-inset-bottom)) !important;
        border: 1px solid rgba(46, 40, 34, .12) !important;
        border-radius: 1.2rem !important;
        background: rgba(250, 249, 247, .985);
        box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, .28) !important;
        backdrop-filter: blur(.7rem);
    }

    .quote-lead-form .lead-form-heading,
    .quote-lead-form .full,
    .quote-lead-form > button,
    .quote-lead-form .form-privacy-note,
    .quote-lead-form .consult-status {
        grid-column: 1 / -1;
    }

    .quote-lead-form .lead-form-heading {
        position: relative;
        margin: 0 0 .2rem;
        padding-left: 0;
    }

    .quote-lead-form .lead-form-heading > span {
        color: #d84553;
        font-size: .64rem;
        font-weight: 800;
        letter-spacing: .16em;
    }

    .quote-lead-form .lead-form-heading h3 {
        margin: .24rem 0 .12rem;
        font-size: clamp(1.28rem, 5.4vw, 1.5rem);
        font-weight: 730;
        line-height: 1.08;
        letter-spacing: -.032em;
    }

    .quote-lead-form .lead-form-heading p {
        max-width: 32rem;
        color: #6f6962;
        font-size: .76rem;
        line-height: 1.32;
    }

    .quote-lead-form .lead-field {
        gap: .22rem;
    }

    .quote-lead-form .lead-field label {
        color: #38332e;
        font-size: .7rem;
        font-weight: 750;
        letter-spacing: .015em;
    }

    .quote-lead-form .lead-field label small {
        color: #8d867e;
        font-size: .62rem;
        font-weight: 550;
    }

    .quote-lead-form input,
    .quote-lead-form select,
    .quote-lead-form textarea {
        min-height: 2.75rem;
        padding: .62rem .76rem;
        border-color: #d8d0c7;
        border-radius: .66rem;
        background: #fff;
        color: #211f1c;
        font-size: .83rem;
    }

    .quote-lead-form textarea {
        min-height: 3.15rem;
        max-height: 3.15rem;
        resize: none;
    }

    .quote-lead-form > .btn {
        min-height: 2.9rem;
        border-radius: .66rem;
        box-shadow: 0 .55rem 1.2rem rgba(239, 86, 99, .2);
        font-size: .82rem;
        font-weight: 800;
        letter-spacing: .015em;
    }

    .quote-lead-form .form-privacy-note {
        color: #7b746c;
        font-size: .61rem;
        line-height: 1.3;
    }

    .quote-lead-form .consult-status {
        font-size: .64rem;
    }
}

@media (max-width: 40rem) and (max-height: 43rem) {
    .home-launch main #lead-capture.quote-funnel {
        height: auto;
        min-height: max(44rem, 100svh);
    }

    .quote-funnel-grid {
        grid-template-rows: minmax(13.5rem, 1fr) auto;
        height: auto;
        min-height: max(44rem, 100svh);
        padding-bottom: .65rem;
    }

    .quote-offer {
        gap: .35rem;
        padding: 1.1rem 1rem .85rem;
    }

    .quote-kicker {
        font-size: .56rem;
    }

    .quote-offer h2 {
        font-size: 1.72rem !important;
    }

    .quote-funnel .quote-lead-form {
        gap: .4rem;
        width: calc(100% - 1rem);
        margin: 0 auto !important;
        padding: .82rem .82rem calc(.65rem + env(safe-area-inset-bottom)) !important;
        border-radius: 1rem !important;
    }

    .quote-lead-form .lead-form-heading > span {
        font-size: .55rem;
    }

    .quote-lead-form .lead-form-heading h3 {
        margin: .16rem 0 .06rem;
        font-size: 1.04rem;
    }

    .quote-lead-form .lead-form-heading p {
        display: none;
    }

    .quote-lead-form .lead-field {
        gap: .13rem;
    }

    .quote-lead-form .lead-field label {
        font-size: .61rem;
    }

    .quote-lead-form input,
    .quote-lead-form select {
        min-height: 2.3rem;
        padding: .38rem .6rem;
        font-size: .72rem;
    }

    .quote-lead-form textarea {
        min-height: 2.5rem;
        max-height: 2.5rem;
        padding: .4rem .6rem;
        font-size: .72rem;
    }

    .quote-lead-form > .btn {
        min-height: 2.35rem;
        font-size: .7rem;
    }

    .quote-lead-form .form-privacy-note {
        font-size: .56rem;
        line-height: 1.25;
    }
}

@media (max-width: 23rem) {
    .quote-funnel .quote-lead-form {
        gap: .4rem;
        padding: .72rem !important;
    }

    .quote-offer h2 {
        font-size: 1.4rem;
    }
}
