main {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0 1rem;
}

#contact {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas:
        "email"
        "phone"
        "oh"
        "map"
        "sm"
    ;
    gap: 1rem;
}

#contact #phone-contact {
    grid-area: phone;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

#contact #opening-hours {
    grid-area: oh;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

#contact #contact-methods {
    grid-area: email;
    display: flex;
    align-items: flex-start;
    height: max-content;
}

#contact #social-media {
    grid-area: sm;
}

#contact #map {
    grid-area: map;
}

#contact #map>iframe {
    width: 100%;
    height: 300px;
    border-radius: 0.5rem;
}

#contact #contact-image-car {
    display: none;
}

@media (min-width: 576px) {
    #contact {
        grid-template-areas:
            "email email"
            "oh phone"
            "map map"
            "sm sm"
        ;
    }
}


@media (min-width: 768px) {
    main {
        padding: 0 3rem;
    }

    #contact #contact-image-car {
        display: block;
        border-radius: 1rem;
        grid-area: car;
        width: 100%;
        object-fit: cover;
        height: 100%;
    }

    #contact {
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            "email email"
            "car oh"
            "car phone"
            "car map"
            "car sm"
            "car ."
        ;
    }
}

@media (min-width: 992px) {
    #contact {
        grid-template-areas:
            "car email oh"
            "car email sm"
            "car email map"
            "car phone map"
            "car . map"
            "car . ."
        ;
        gap: 1rem;
        grid-template-columns: 2fr 3fr 2fr;
    }
}

