/* ==========================================================
   ARMOUR MOTORS — ORDER / CONSULTATION MODAL
   ========================================================== */

body.am-modal-open {
    overflow: hidden !important;
}

.am-lead-modal {
    position: fixed;
    inset: 0;

    z-index: 99999;

    display: none;

    align-items: center;
    justify-content: center;

    padding: 22px;

    background: rgba(4, 11, 7, .76);

    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
}

.am-lead-modal.is-open {
    display: flex;

    animation: amModalFade .18s ease-out;
}

.am-lead-dialog {
    position: relative;

    width: min(760px, 100%);
    max-height: calc(100vh - 44px);

    overflow-y: auto;

    border: 1px solid rgba(207, 215, 178, .24);

    background:
        linear-gradient(
            145deg,
            #101e15 0%,
            #0a160f 100%
        );

    color: #fff;

    box-shadow:
        0 30px 90px rgba(0, 0, 0, .42);

    animation: amModalRise .22s ease-out;
}

.am-lead-top {
    padding: 28px 30px 22px;

    border-bottom:
        1px solid rgba(255, 255, 255, .10);
}

.am-lead-eyebrow {
    margin-bottom: 10px;

    color: #c5ce78;

    font-size: 10px;
    font-weight: 850;

    letter-spacing: .16em;

    text-transform: uppercase;
}

.am-lead-top h2 {
    margin: 0;

    max-width: 620px;

    font-size: clamp(27px, 4vw, 42px);

    line-height: 1;

    letter-spacing: -.035em;
}

.am-lead-product {
    margin-top: 12px;

    color: #cbd3ca;

    font-size: 13px;
}

.am-lead-product strong {
    color: #fff;
}

.am-lead-close {
    position: absolute;

    top: 15px;
    right: 15px;

    width: 38px;
    height: 38px;

    display: grid;
    place-items: center;

    padding: 0;

    border:
        1px solid rgba(255,255,255,.16);

    border-radius: 50%;

    background: rgba(255,255,255,.04);

    color: #fff;

    font-size: 22px;
    line-height: 1;

    cursor: pointer;

    transition:
        background .15s ease,
        transform .15s ease;
}

.am-lead-close:hover {
    background: rgba(255,255,255,.11);

    transform: rotate(5deg);
}

.am-lead-form {
    padding: 24px 30px 30px;

    display: grid;

    gap: 15px;
}

.am-lead-row {
    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 12px;
}

.am-lead-field {
    display: grid;

    gap: 6px;
}

.am-lead-field > span {
    color: #aeb8af;

    font-size: 10px;
    font-weight: 750;

    letter-spacing: .04em;

    text-transform: uppercase;
}

.am-lead-field input,
.am-lead-field textarea {
    width: 100%;

    border:
        1px solid rgba(255,255,255,.13);

    outline: 0;

    background: #15241a;

    color: #fff;

    font: inherit;

    transition:
        border-color .15s ease,
        background .15s ease;
}

.am-lead-field input {
    min-height: 46px;

    padding: 0 13px;
}

.am-lead-field textarea {
    min-height: 100px;

    padding: 12px 13px;

    resize: vertical;
}

.am-lead-field input:focus,
.am-lead-field textarea:focus {
    border-color: #aab66d;

    background: #17291d;
}

.am-lead-field input::placeholder,
.am-lead-field textarea::placeholder {
    color: #69756c;
}

.am-lead-submit {
    min-height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 0;

    background: #ed5b18;

    color: #fff;

    font-size: 12px;
    font-weight: 900;

    letter-spacing: .03em;

    cursor: pointer;

    transition:
        transform .15s ease,
        filter .15s ease;
}

.am-lead-submit:hover {
    filter: brightness(1.06);

    transform: translateY(-1px);
}

.am-lead-submit:disabled {
    opacity: .65;

    cursor: wait;

    transform: none;
}

.am-lead-status {
    min-height: 20px;

    display: none;

    padding: 11px 13px;

    font-size: 12px;
    line-height: 1.4;

    font-weight: 750;
}

.am-lead-status[data-state="success"] {
    display: block;

    color: #dce8bb;

    border:
        1px solid rgba(176, 195, 109, .28);

    background:
        rgba(139, 160, 76, .13);
}

.am-lead-status[data-state="error"] {
    display: block;

    color: #ffd0c5;

    border:
        1px solid rgba(238, 91, 24, .28);

    background:
        rgba(238, 91, 24, .11);
}

.am-lead-small {
    margin: -3px 0 0;

    color: #808d82;

    font-size: 9px;
    line-height: 1.4;
}

.am-lead-honeypot {
    position: absolute !important;

    left: -10000px !important;

    width: 1px !important;
    height: 1px !important;

    opacity: 0 !important;
}

@keyframes amModalFade {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes amModalRise {
    from {
        opacity: 0;
        transform:
            translateY(18px)
            scale(.985);
    }

    to {
        opacity: 1;
        transform:
            translateY(0)
            scale(1);
    }
}


@media (max-width: 640px) {

    .am-lead-modal {
        padding: 10px;
        align-items: flex-end;
    }

    .am-lead-dialog {
        width: 100%;

        max-height:
            calc(100dvh - 20px);
    }

    .am-lead-top {
        padding:
            24px
            20px
            18px;
    }

    .am-lead-top h2 {
        padding-right: 34px;

        font-size: 30px;
    }

    .am-lead-form {
        padding:
            19px
            20px
            24px;
    }

    .am-lead-row {
        grid-template-columns: 1fr;
    }

    .am-lead-field input {
        min-height: 48px;
    }

    .am-lead-submit {
        min-height: 52px;
    }

}
