body {
    background: #000;
    color: #fff;
    display: flex;
    flex-flow: column;
    align-items: center;
    font-family: abel, sans-serif;
    background-image: url(../img/back.jpg);
    height: 100%;
    padding: 0;
    margin: 0;
}

.ai-box.box-copyrights {
    margin-top: 50px;
    border-top: 1px solid #555;
    padding-top: 20px;
    text-align: center;
}

body * {
    box-sizing: border-box;
}

.ai-row.row-header {
    padding: 20px;
    border-bottom: 1px solid #555;
}

.footer-map img {
    max-height: 300px;
    border-radius: 10px;
    max-width: 100%;
}

.ai-row.row-footer {
    border-top: 1px solid #555;
    padding: 40px 20px;
}

header, footer {
    width: 100%;
}

.site-logo img {
    max-height: 80px;
}

.footer-logo img {
    max-height: 80px;
}

.footer-map img {
    max-height: 300px;
    border-radius: 10px;
}

.contact.info {
    display: flex;
    flex-flow: column;
    align-items: flex-end;
}

.contact.info a{
    color: #fff;
    text-transform: uppercase;
    font-size: 20px;
    text-decoration: none;
}

.contact.info p {
    margin: 8px 0;
}

.grid-of2.header-grid-top {
    align-items: center;
}

.site-nav a {
    color: #fff;
    text-transform: uppercase;
    font-size: 20px;
    padding: 10px;
    text-decoration: none;
}

.ai-row {
    padding: 30px 20px;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    flex-flow: column;
    align-items: center;
}

.image-grid-item {
    height: 250px;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 7px;
}

.ai-box {
    width: 100%;
    max-width: 1200px;
}

.grid-of2 {
    display: flex;
    justify-content: space-between;
}

.gallery-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
    margin: 30px 0;
}

.grid-of2.footer-grid-bottom {
    display: grid;
    grid-template-columns: 1fr 3fr 2fr;
    grid-gap: 20px;
}

.ai-box.box-text p {
    margin: 8px 0;
}


@media screen and (max-width: 660px) {

    .gallery-grid {
        display: grid;
        grid-template-columns: 1fr;
    }

    .grid-of2.footer-grid-bottom {
        grid-template-columns: 1fr;
    }
    .grid-of2.footer-grid-bottom > div {
        display: flex;
        justify-content: center !important;
        text-align: center;
        align-items: center;
    }
    .grid-of2.footer-grid-bottom > div p {
        text-align: center;
    }
    
}