.map {
position: relative;
overflow: hidden;
font-family: 'AppleSDGothicNeoLight', Helvetica, Arial, Lucida, sans-serif;
font-size: 14px;
}
.map__wrapper {
height: 600px;
position: relative;
}
.map__menu {
position: absolute;
left: 0;
top: 0;
background-color: #6C6F76;
height: 100%;
width: 320px;
box-sizing: border-box;
display: flex;
align-items: flex-end;
z-index: 10;
transition: left 300ms;
}
.map__menu.hidden {
left: -270px;
}
.map__menu.hidden .map__menu-hide {
opacity: 0;
}
.map__menu-categories {
width: 100%;
height: 550px;
transition: opacity 300ms;
overflow-y: scroll;
overflow-x: hidden;
}
.map__menu.hidden .map__menu-categories {
opacity: 0;
}
.map__menu-categories > a {
font-size: 12px;
color: #fff;
text-decoration: none;
display: block;
line-height: 30px;
height: 30px;
cursor: pointer;
white-space: nowrap;
display: flex;
align-items: center;
}
.map__menu-category {
text-transform: uppercase;
padding: 0 30px;
font-weight: bold;
}
.map__menu-place {
padding-left: 23px;
padding: 0 30px 0 53px;
text-transform: capitalize;
}
.map__menu-categories > a > i {
flex-shrink: 0;
width: 8px;
height: 8px;
border-radius: 4px;
margin-right: 15px;
}
.map__active-link {
background-color: rgba(255, 255, 255, 0.2);
}
.map__menu-hide {
position: absolute;
top: 15px;
right: 15px;
color: #fff;
cursor: pointer;
transition: opacity 300ms;
}
.map__menu-hide:before {
display: inline-block;
content: "";
width: 20px;
height: 10px;
background-image: url('data:image/svg+xml;utf8,');
background-repeat: no-repeat;
background-position: left center;
}
@keyframes menu_show_button_disappears {
from {
opacity: 1;
right: 0%
}
to {
opacity: 0;
right: 100%
}
99% {
right: 0%;
}
}
.map__menu-show {
animation: menu_show_button_disappears linear 300ms;
position: absolute;
top: 0;
right: 100%;
width: 50px;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
cursor: pointer;
}
@keyframes menu_show_button_appears {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.map__menu.hidden .map__menu-show {
animation: menu_show_button_appears linear 300ms;
opacity: 1;
right: 0;
}
.map__menu-show:before {
display: block;
content: "";
width: 10px;
height: 10px;
border-color: #fff;
border-style: solid;
border-width: 1px 1px 0 0;
transform: rotate(45deg);
}
.map__map {
width: 100%;
height: 100%;
}
.map__place-info {
position: absolute;
right: 60px;
bottom: 20px;
width: 400px;
background: #fff;
}
.map__place-info.hidden {
display: none !important;
}
.map__place-img {
height: 240px;
overflow: hidden;
}
.map__place-img img {
object-fit: cover;
width: 100%;
height: 100%;
}
.map__place-div-1 {
/*padding: 30px;*/
}
.map__place-text {
padding: 30px 30px 0px 30px;
overflow: auto;
max-height: 230px;
}
.map__place-title {
font-weight: bold;
font-family: 'Maleah-Regular', Helvetica, Arial, Lucida, sans-serif;
font-size: 24px;
text-transform: uppercase;
margin-bottom: 5px;
line-height: 1.08;
color: #000;
}
.map__place-address {
line-height: 1.7;
font-weight: bold;
}
.map__place-desc {
/*margin-bottom: 26px;*/
color: #6C6F76;
line-height: 1.7;
}
.map__place-nav {
display: flex;
justify-content: space-between;
align-items: center;
padding: 26px 30px 30px 30px;
}
.map__place-link {
background: #EE2944;
line-height: 34px;
font-family: 'AppleSDGothicNeoLight', Helvetica, Arial, Lucida, sans-serif;
color: #fff;
padding: 0 20px;
text-decoration: none;
}
.map__place-link:hover {
background: #f8455f;
}
.map__next, .map__prev {
cursor: pointer;
}
.map__next:before, .map__prev:before {
display: inline-block;
content: '';
width: 30px;
height: 15px;
background-image: url("data:image/svg+xml;utf8,");
background-position: center center;
background-repeat: no-repeat;
transition: all 300ms;
}
.map__prev:before {
transform: rotate(180deg);
margin-right: 25px;
}
.map__prev:hover:before {
transform: rotate(180deg) translateX(3px);
}
.map__next:hover:before {
transform: translateX(3px);
}
.map__place-info-close {
display: inline-block;
width: 20px;
height: 20px;
position: absolute;
cursor: pointer;
right: 30px;
top: 30px;
}
.map__place-info-close:before,
.map__place-info-close:after
{
display: block;
content: '';
width: 2px;
height: 100%;
position: absolute;
left: 50%;
top: 0;
background: rgba(255, 255, 255, 0.8);
transform: rotate(-45deg) scaleY(1.41);
box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.18);
}
.map__place-info-close:after {
transform: rotate(45deg) scaleY(1.41);
}
@media (max-width: 1500px) {
.map__place-info {
position: static;
width: auto;
min-height: 250px;
display: flex;
align-items: stretch;
background: #f3f3f3;
}
.map__place-img {
width: 400px;
height: 250px;
flex-shrink: 0;
margin: 30px;
}
.map__place-title {
margin-right: 100px;
}
.map__place-div-1 {
/*margin: 30px 30px 30px 0px;*/
padding: 0;
flex-grow: 1;
position: relative;
}
.map__place-text {
position: relative;
padding-left: 0;
max-height: none;
}
.map__next-prev-links {
position: absolute;
top: 35px;
right: 30px;
}
.map__place-nav {
padding-left: 0;
}
}
@media (max-width: 800px) {
.map__place-info {
flex-direction: column;
}
.map__place-img {
width: auto;
}
.map__place-div-1 {
/*margin: 0px 30px 30px 30px;*/
}
.map__place-text {
padding-top: 0;
padding-left: 30px;
}
.map__place-nav {
padding-left: 30px;
}
.map__place-title {
margin-right: 0px;
}
.map__next-prev-links {
position: static;
}
}