@keyframes l3 {
    to {
        transform: rotate(1turn);
    }
}

.block-contact-form {
    padding: 1.25rem 0;
}

.block-contact-form .inner-container {
        display: flex;
        flex-direction: column;
        gap: 1.875rem;
    }

.block-contact-form .info-container .info-title {
            font-size: 1.25rem;
            font-family: var(--font-secondary);
        }

.block-contact-form .info-container .info-item {
            display: flex;
            gap: 0.5rem;
            font-size: 1.125rem;
            line-height: 1.5625rem;
            letter-spacing: -0.2px;
            padding: 0.3125rem 0;
        }

.block-contact-form .info-container .info-item a {
                color: var(--color-primary);
                font-size: 1.125rem;
                letter-spacing: -0.2px;
            }

.block-contact-form .info-container .info-item .icon {
                display: inline-block;
            }

.block-contact-form .info-container .info-item .map-links {
                display: flex;
                align-items: center;
                flex-wrap: wrap;
                gap: 1.25rem;
                padding-top: 0.4375rem;
            }

.block-contact-form .info-container .info-item .link {
                color: #a56e59;
                font-size: 1rem;
                text-decoration: none;
                font-weight: 700;
                display: flex;
                align-items: center;
                gap: 0.3125rem;
            }

.block-contact-form .info-container .info-item .link .icon {
                    font-size: 0.625rem;
                }

.block-contact-form .info-container .info-item .link .icon::before {
                        display: block;
                        padding-top: 0.375rem;
                    }

.block-contact-form .info-container .info-item .link:hover {
                    color: #597183;
                }

.block-contact-form .info-container .info-item.address-item {
                padding-bottom: 0.625rem;
            }

.block-contact-form .info-container .info-item.email a {
                    text-decoration: underline;
                }

.block-contact-form .info-container .image-container {
            padding-top: 1.875rem;
        }

.block-contact-form .info-container .image-container img {
                border-radius: 0.5rem;
            }

.block-contact-form .contact-container {
        background-color: #343d4c;
        border-radius: 0.5rem;
        padding: 1.25rem;
    }

.block-contact-form .contact-container .text-container .title {
                font-size: 1.25rem;
                line-height: 1.75rem;
                font-family: var(--font-secondary);
                color: #fff;
                padding-bottom: 0.625rem;
            }

.block-contact-form .contact-container .text-container .text {
                color: #fff;
                font-size: 0.9375rem;
                line-height: 1.25rem;
            }

.block-contact-form .contact-container .form {
            padding-top: 1.5625rem;
        }

.block-contact-form .contact-container .form .bottom-container {
                display: flex;
                align-items: center;
                gap: 0.9375rem;
                justify-content: space-between;
            }

.block-contact-form .contact-container .form .bottom-container .stylish-checkbox {
                    margin-top: 0;
                }

.block-contact-form .contact-container .form .text-field {
                padding-top: 1.5625rem;
                color: #fff;
                font-size: 0.9375rem;
                letter-spacing: -0.2px;
            }

.block-contact-form .contact-container .form .user-container {
                display: flex;
                align-items: center;
                gap: 1.25rem;
                padding-bottom: 1.25rem;
            }

.block-contact-form .contact-container .form .recaptcha {
                padding-top: 1.625rem;
            }

.block-contact-form .main-title-container.map {
        padding: 1.875rem 0 1.25rem;
    }

.block-contact-form .main-title-container.map .title {
            font-size: 1.875rem;
        }

.block-contact-form .map-container {
        position: relative;
        display: none;
        height: 25rem;
        background-color: #e8e8e8;
        border-radius: 0.5rem;
        overflow: hidden;
    }

.block-contact-form .map-container.active {
            display: block;
        }

.block-contact-form .map-container.loading .loading-overlay {
                display: flex;
            }

.block-contact-form .map-container .loading-overlay {
            position: absolute;
            inset: 0;
            background: #00000054;
            z-index: 1;
            display: none;
            justify-content: center;
            align-items: center;
        }

.block-contact-form .map-container .loading-overlay .loader {
                width: 3.125rem;
                padding: 0.5rem;
                aspect-ratio: 1;
                border-radius: 50%;
                background: var(--color-primary);
                --_m: conic-gradient(#0000 10%, #000), linear-gradient(#000 0 0) content-box;
                -webkit-mask: var(--_m);
                mask: var(--_m);
                -webkit-mask-composite: source-out;
                mask-composite: subtract;
                animation: l3 1s infinite linear;
            }

.block-contact-form .map-container .dealer-locator-map {
            width: 100%;
            height: 100%;
        }

@media screen and (min-width: 64rem) {
        .block-contact-form .inner-container {
            flex-direction: row;
            justify-content: space-between;
            gap: 3.125rem;
        }
        .block-contact-form .contact-container {
            width: 50%;
            padding: 3.125rem 1.875rem;
        }
            .block-contact-form .contact-container .form-container {
                max-width: 26.875rem;
                margin: 0 auto;
            }
        .block-contact-form .info-container {
            width: 50%;
            max-width: 33.125rem;
            padding-top: 3.125rem;
        }
            .block-contact-form .info-container .info-title {
                padding-bottom: 0.625rem;
            }
            .block-contact-form .info-container .image-container {
                padding-top: 3.125rem;
            }
}

@media screen and (min-width: 80rem) {
        .block-contact-form .inner-container {
            gap: 6.25rem;
        }
        .block-contact-form .info-container {
            padding-top: 3.125rem;
        }
            .block-contact-form .info-container .info-title {
                font-size: 1.5625rem;
                line-height: 1.875rem;
            }
        .block-contact-form .contact-container {
            padding: 3.125rem;
        }
                .block-contact-form .contact-container .text-container .title {
                    font-size: 1.5625rem;
                }
        .block-contact-form .main-title-container.map {
            padding-top: 5rem;
            padding-bottom: 1.875rem;
        }
            .block-contact-form .main-title-container.map .title {
                font-size: 2.6875rem;
            }
        .block-contact-form .map-container {
            height: 37.5rem;
        }
}
