/* header */
header, main, footer {
    position: relative;
    /*border: 1px solid #80869a;*/
    flex-grow: 0;
}
.logo img {
    height: 70px;
    width: auto;
    margin: 20px 30px;
}
@media (max-width: 380px) {
    .logo img {
        width: 300px;
        height: auto;
    }
}

.slogan {
    align-self: center;
    text-align: center;
    text-transform: uppercase;
    font-weight: 800;
    font-size: 1.4rem;
    padding: 0 20px;
}
/*@media (max-width: 480px) {
    .slogan {
        display: none;
    }
}*/

.head-contacts {
    padding: 20px 30px;
}
.head-contacts p {
    text-align: right;
}
@media (max-width: 768px) {
    .head-contacts {
        width: 500px;
        font-size: 1.2rem;
    }
}
@media (max-width: 490px) {
    .head-contacts {
        width: 310px;
        font-size: 1.2rem;
    }
}

/* main content */
main {
    flex-grow: 1;
}
section {
    margin: 20px;
}
section h3 {
    display: block;
    padding: 5px 20px;
    text-align: left;
    background: linear-gradient(30deg, #c62022, transparent 95%);
    color: #fff;
    text-transform: uppercase;
    border-left: 1px solid #777;
    border-bottom: 1px dotted #c62022;
    border-bottom-left-radius: 10px;
    box-shadow: -3px 3px 5px #dedede;
}
section p {
    padding: 10px;
    font-size: 1.05rem;
}

@media (max-width: 768px) {
    section p {
        font-size: 1.2rem;
    }
}

.range, .contacts {
    /*max-width: 1300px;
    min-width: 998px;*/
    width: 95%;
    margin: 5px auto;
    border-left: 3px solid #c62022;
    border-right: 3px solid #c62022;
    border-bottom: 0.5px dotted #c62022;
    border-radius: 5px;
    box-shadow: 5px 3px 4px #dedede, -5px 3px 4px #dedede;
}
.range h4 {
    font-size: 1.0rem;
}
.range p {
    font-size: 0.9rem;
    padding: 5px 10px;
}
.range-item, .contacts-item {
    flex-basis: 0;
    padding: 10px;
}
.range-item:nth-child(2) {
    display: flex;
    justify-content: center;
    align-items: center;
}
.range-item-last {
    min-width: 95%;
    margin-top: -10px;
    margin-bottom: 20px;
    padding: 0 10px;
}
.label {
    width: 30%;
    text-align: right;
    padding: 0 5px;
}
@media (max-width:768px) {
    .contacts-item {
        min-width: 310px;
    }
    .range h4, .range p {
        font-size: 1.2rem;
    }
    .range-item-last {
        min-width: 90%;
        padding: 10px;
    }
}
@media (max-width:490px) {
    .contacts-item {
        min-width: 310px;
    }
}

.benefit {
    margin: 5px;
    font-size: 1.05rem;
}
@media (max-width:768px) {
    .benefit {
        font-size: 1.2rem;
    }
}
.benefit span {
    width: 45%;
    margin: 5px;
    padding: 5px 10px;
}
.benefit span:hover {
    color: #000;
    cursor: default;
}
.benefit span:before {
    content: "\25C7";
    color: #c62022;
}
.benefit span:hover:before{
    content: "\25C8";
}

.map {
    height: 500px;
    width: 97%;
    background-image: url('../images/map2.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    margin: 10px auto;
    border-radius: 5px;
}


footer > div {
    background: #c62022;
    color: #fff;
    font-size: 0.6rem;
    padding: 2px 40px;
}