

.c-footer-rebuild {
    padding-top: 30px;
    padding-bottom: 45px;
}

.c-footer-rebuild__top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, 1.65fr);
    gap: 32px;
    align-items: start;
}

.c-footer-rebuild__brand .c-footer__logo {
    max-width: 326px;
    margin: 0;
}

.c-footer-rebuild__brand img {
    max-width: 100%;
    height: auto;
}

.c-footer-rebuild__contact {
    min-width: 0;
}

.c-footer-rebuild__contact .c-footer__map-info-items {
    padding-top: 0;
}

.c-footer-rebuild__contact .c-footer__map-info-item {
    padding: 10px 0;
}

.c-footer-rebuild__contact .c-footer__phone span {
    font-size: clamp(22px, 2vw, 32px);
    overflow-wrap: anywhere;
}

.c-footer-rebuild__serving {
    color: #666;
    font-size: 15px;
    line-height: 1.7;
}

.c-footer-rebuild__serving strong {
    color: #666;
    text-transform: uppercase;
}

.c-footer-rebuild__newsletter {
    min-width: 0;
}

.c-footer-rebuild__newsletter-frame {
    border: 40px solid #8c1d1d;
    padding: 20px;
    background: #fff;
    box-sizing: border-box;
}

.c-footer-rebuild__newsletter-frame input,
.c-footer-rebuild__newsletter-frame select {
    max-width: 100%;
    box-sizing: border-box;
}

.c-footer-rebuild__offices {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 55px;
}

.c-footer-rebuild__office {
    min-width: 0;
}

.c-footer-rebuild__map-media {
    height: 245px;
    overflow: hidden;
}

.c-footer-rebuild__map-media iframe {
    display: block;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

.c-footer-rebuild__map-media .c-embed {
    width: 100%;
    height: 100%;
    margin: 0;
}

.c-footer-rebuild__offices .c-footer__map-text {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 56px;
    padding: 12px 8px;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.7px;
    box-sizing: border-box;
}

@media (max-width: 1100px) {
    .c-footer-rebuild__top {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .c-footer-rebuild__brand {
        grid-column: 1 / -1;
    }

    .c-footer-rebuild__newsletter-frame {
        border-width: 22px;
    }
}

@media (max-width: 767px) {
    .c-footer-rebuild__top,
    .c-footer-rebuild__offices {
        grid-template-columns: minmax(0, 1fr);
    }

    .c-footer-rebuild__brand {
        grid-column: auto;
        text-align: center;
    }

    .c-footer-rebuild__brand .c-footer__logo {
        margin: 0 auto;
    }

    .c-footer-rebuild__newsletter-frame {
        border-width: 18px;
        padding: 15px;
    }

    .c-footer-rebuild__offices {
        margin-top: 35px;
        gap: 25px;
    }

    .c-footer-rebuild__map-media {
        height: 260px;
    }
}



@media (min-width: 768px) {
    .c-footer-rebuild__top {
        display: grid;
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
        gap: 40px;
        align-items: start;
    }

    .c-footer-rebuild__brand {
        grid-column: auto;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .c-footer-rebuild__brand .c-footer__logo {
        margin: 0 0 20px;
        max-width: 326px;
        width: 100%;
    }

    .c-footer-rebuild__brand .c-footer-rebuild__contact {
        width: 100%;
        max-width: 420px;
    }

    .c-footer-rebuild__brand .c-footer__map-info-items {
        padding-top: 0;
        text-align: center;
    }

    .c-footer-rebuild__newsletter {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 767px) {
    .c-footer-rebuild__top {
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
    }

    .c-footer-rebuild__brand {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .c-footer-rebuild__brand .c-footer__logo {
        margin: 0 auto 15px;
    }

    .c-footer-rebuild__brand .c-footer-rebuild__contact {
        width: 100%;
        max-width: 420px;
    }
}

.c-footer-rebuild__brand .c-footer-rebuild__contact,
.c-footer-rebuild__brand .c-footer__map-info-items {
    text-align: left;
}

.c-footer-rebuild__brand .c-footer__map-info-item {
    text-align: left;
}

.c-footer-rebuild__brand .c-footer__map-info-item a,
.c-footer-rebuild__brand .c-footer__phone,
.c-footer-rebuild__brand .c-footer-rebuild__serving {
    justify-content: flex-start;
    text-align: left;
}

.c-footer-rebuild__brand .c-footer__text {
    text-align: left;
}

.c-footer-rebuild__brand .c-social {
    justify-content: flex-start;
}

.c-footer-rebuild__brand .c-footer__map-info-items .c-footer__map-info-item:last-child {
    display: flex;
    justify-content: flex-start;
}

@media (max-width: 767px) {
    .c-footer-rebuild__brand .c-footer-rebuild__contact,
    .c-footer-rebuild__brand .c-footer__map-info-items,
    .c-footer-rebuild__brand .c-footer__map-info-item,
    .c-footer-rebuild__brand .c-footer__text,
    .c-footer-rebuild__brand .c-footer__map-info-item a,
    .c-footer-rebuild__brand .c-footer__phone,
    .c-footer-rebuild__brand .c-footer-rebuild__serving {
        text-align: center;
        justify-content: center;
    }

    .c-footer-rebuild__brand .c-social {
        justify-content: center;
    }
}

