body{
    font-family: 'Montserrat', sans-serif;
}
    
a{
    text-decoration: none;
    color: inherit;
}
a:active, a:hover, a:focus{
    text-decoration: none;
    color: inherit;
}

.navbar{
    background-color: #FFFFFF;
    border-bottom: 1px solid #F1F1F1;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
}

.navbar .nav-item{
    padding-right: 10px;
    color:#000;
    text-transform: uppercase;
    font-weight: 500;
}

.main-banner{
    height: 45vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #fff;
}
.main-banner form{
    width: 80%;
    background-color: #7b8a63b0;
}
.search-input input, .search-input button{
    background-color: #fff;
    color: #7b8a63;
    border: 1px solid #7b8a63;
    border-radius: 0;
    transform: .4s ease-in-out;
    outline: none;
}
.search-input button:hover, .search-input button:focus{
    background-color: #7b8a63;
    color: #fff;
    border-color: #7b8a63;
}
.search-input input:hover{
    border-color: #7b8a63;
}

.region-list-title{
    color: #7b8a63;
}
.region-name{
    display: block;
    background: #0000000a;
    border: 1px solid #e0e0e0;
    padding: 20px 40px;
    color: #999;
    text-transform: uppercase;
    transition: .4s ease-in-out;
}
.region-name:hover{
    color: #7b8a63;
    border-color: #7b8a63;
    display: block;
}
.region-name span{
    display: inline-flex;
    margin-left: 1em;
    transition: .4s ease-in-out;
    width: 0;
    overflow: hidden;
}
.region-name:hover span{
    width: 30px;
}


.company-list-row{
    padding: 20px 0px;
    color: #000;
    width: 100%;
}
.company-list-row:hover .company-icon{
    fill: #fff;
}
.company-icon{
    width: 80%;
    height: 80%;
    transition: .4s ease-in-out;
    fill: #fff;
}
.company-list-row .icon{
    width: 120px;
    height: 120px;
    background-color: #7b8a63;
    border-radius: 50%;
    transition: .4s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 6px solid #fff;
    position: relative;
    top: 25px;
}
.company-list-row:hover .icon{
    background-color: #000000;
}
.company-list-row .icon .company-icon{
    width: 60%;
    height: 60%;
}
.company-list-row .content{
    display: block;
    background: #0000000a;
    border: 1px solid #e0e0e0;
    padding: 20px 40px;
    color: #999;
    text-transform: uppercase;
    transition: .4s ease-in-out;
}
.company-list-row .content h2{
    padding-top: 1.5em;
}
.companies-url {
    color: #7b8a63;
    border: 1px solid #7b8a63;
    border-radius: 0;
    transition: .4s ease-in-out;
    font-size: 14px;
    padding: .375rem .75rem;
    display: inline-block;
}
.companies-url:hover, .company-list-row:hover .companies-url{
    background-color: #7b8a63;
    color: #fff;
    border-color: #fff;
}
.company-name{
    font-size: 1.6rem;
}
.company-adress>*{
    /* margin-right: .5em; */
}

#region-link, .company-container{
    display: block;
    color: #999;
    padding: 0;
}
#region-link .header{
    font-size: 1.5rem;
    display: block;
    background: #0000000a;
    border: 1px solid #e0e0e0;
    padding: 20px 40px;
    color: #999;
    text-transform: uppercase;
    transition: .4s ease-in-out;
    width: 100%;
    text-align: center;
}
.region-link-list{
    padding: 10px 20px 20px 20px;
    width: 100%;
}
.region-menu-list {
    padding: .5em 0;
    transition: .4s ease-in-out;
}
.region-menu-list:hover{
    color: #7b8a63;
}

.company-container .company-name{
    font-size: 1.5rem;
    display: block;
    background: #0000000a;
    border: 1px solid #e0e0e0;
    padding: 60px 40px 20px 40px;
    color: #999;
    text-transform: uppercase;
    transition: .4s ease-in-out;
    width: 100%;
    text-align: center;
}
.company-container .company-data{
    padding: 10px 20px 20px 20px;
    width: 100%;
}

.company-header{
    padding: 20px 0px;
    width: 100%;
}
.company-header .icon{
    width: 120px;
    height: 120px;
    background-color: #7b8a63;
    border-radius: 50%;
    transition: .4s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 6px solid #fff;
    position: relative;
    top: 25px;
}
.company-header .icon .company-icon{
    width: 60%;
    height: 60%;
}

footer{
    padding: 16.5px 0;
    background: #8e8e8e;
}