.mt-contact-info-map-section,
.mt-contact-info-map-section * {
    box-sizing: border-box;
}

.mt-contact-info-map-section {
    width: 100%;
    padding: 3.472vw 6.944vw;
    background: #f2f2f2;
}

.mt-contact-info-map-card {
    width: min(100%, 86.111vw);
    margin: 0 auto;
    padding: 2.083vw 2.083vw 2.083vw 3.472vw;
    border-radius: 2.083vw;
    background: #ffffff;
}

.mt-contact-info-map-layout {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 52.778vw;
    gap: 1.389vw;
    align-items: start;
}

.mt-contact-info-map-left {
    min-width: 0;
    padding: 0;
    display: grid;
    gap: 3.472vw;
    align-content: start;
}

.mt-contact-info-map-item {
    display: grid;
    grid-template-columns: 3.472vw minmax(0, 1fr);
    gap: 1.528vw;
    align-items: start;
}

.mt-contact-info-map-item-icon {
    width: 3.472vw;
    height: 3.472vw;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.mt-contact-info-map-item-icon img {
    width: 3.472vw;
    height: 3.472vw;
    max-width: none;
    display: block;
    object-fit: contain;
}

.mt-contact-info-map-item-copy {
    min-width: 0;
}

.mt-contact-info-map-item-title {
    margin: 0;
    color: #000000;
    font-family: var(--vape-font-brand);
    font-size: 1.111vw;
    font-weight: 700;
    line-height: 1.667vw;
    letter-spacing: 0;
}

.mt-contact-info-map-item-text {
    max-height: 6.667vw;
    overflow: hidden;
    color: #5c5c5c;
    font-family: var(--vape-font-body);
    font-size: 1.111vw;
    font-weight: 500;
    line-height: 1.667vw;
    letter-spacing: 0;
}

.mt-contact-info-map-section .mt-contact-info-map-right {
    position: relative;
    width: 100%;
    aspect-ratio: 760 / 364;
    border-radius: 2.083vw;
    overflow: hidden;
    background: #f2f2f2;
}

.mt-contact-info-map-section .mt-contact-info-map-right img {
    width: 100%;
    height: 100%;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center;
}

.mt-contact-info-map-placeholder {
    width: 100%;
    height: 100%;
    color: #6b7280;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--vape-font-brand);
    font-size: 0.972vw;
    font-weight: 700;
    line-height: 1.4;
}

@media (max-width: 1024px) {
    .mt-contact-info-map-section {
        padding: 0 3.516vw;
    }

    .mt-contact-info-map-card {
        width: 100%;
        padding: 2.148vw;
        border-radius: 2.148vw;
    }

    .mt-contact-info-map-layout {
        grid-template-columns: 1fr;
        gap: 2.344vw;
    }

    .mt-contact-info-map-left {
        padding: 0;
        gap: 2.148vw;
    }

    .mt-contact-info-map-item {
        grid-template-columns: 4.297vw minmax(0, 1fr);
        gap: 1.367vw;
    }

    .mt-contact-info-map-item-icon {
        width: 4.297vw;
        height: 4.297vw;
    }

    .mt-contact-info-map-item-icon img {
        width: 1.953vw;
        height: 1.953vw;
    }

    .mt-contact-info-map-item-title {
        margin-bottom: 0.391vw;
        font-size: 1.563vw;
        line-height: 2.344vw;
    }

    .mt-contact-info-map-item-text {
        font-size: 1.563vw;
        line-height: 2.344vw;
    }

    .mt-contact-info-map-right {
        border-radius: 1.758vw;
    }
}

@media (max-width: 768px) {
    .mt-contact-info-map-section {
        padding: 0 2.344vw;
    }

    .mt-contact-info-map-card {
        padding: 2.344vw;
        border-radius: 2.344vw;
    }

    .mt-contact-info-map-layout {
        gap: 2.604vw;
    }

    .mt-contact-info-map-left {
        gap: 2.344vw;
    }

    .mt-contact-info-map-item {
        grid-template-columns: 5.208vw minmax(0, 1fr);
        gap: 1.563vw;
    }

    .mt-contact-info-map-item-icon {
        width: 5.208vw;
        height: 5.208vw;
    }

    .mt-contact-info-map-item-icon img {
        width: 2.344vw;
        height: 2.344vw;
    }

    .mt-contact-info-map-item-title {
        font-size: 1.823vw;
        line-height: 2.865vw;
    }

    .mt-contact-info-map-item-text {
        font-size: 1.823vw;
        line-height: 2.865vw;
    }

    .mt-contact-info-map-right {
        aspect-ratio: 16 / 10;
        border-radius: 1.823vw;
    }
}