/**
 *  Sales map block 
 */
.map--container {
   margin-bottom: 80px;
}
.map--header {
   margin-bottom: 28px;
}
.map--wrap {
   display: block;
   position: relative;
   width: 100%;
   min-height: 70vh;
   border: 1px solid var(--Soft-Grey);
   background: var(--White);
}
.map--frame {
   position: absolute;
   width: 100%;
   top: 0;
   bottom: 0;
   overflow: hidden;
}
.map--canvas {
   width: 100%;
   height: 100%;
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   z-index: 1;
   display: flex;
   align-items: center;
   justify-content: center;
}
.map--canvas.map--canvas_zoomed {
   cursor:grab;
}
.map--image_container {
   position: relative;
}
.map--image {
   width: 100%;
   height: auto;
   display: block;
}
.map--zoom_icon {
   position: absolute;
   z-index: 2;
   width: 40px;
   height: 40px;
   right: 32px;
   top: 32px;
   background-color: var(--White);
   box-shadow: 0px 0px 8px 3px rgba(0, 0, 0, 0.08);
}
.map--zoom_icon img {
   opacity: 0.3;
}
.map--zoom_minus {
   top: 77px;
}
.map--zoom_icon.map--zoom_active {
   cursor: pointer;
}
.map--zoom_icon.map--zoom_active img {
   opacity: 1;
}
.map--zoom_info {
   position: absolute;
   z-index: 2;
   display: inline-block;
   bottom: 18px;
   left: 24px;
   font-size: 12px;
   font-style: normal;
   font-weight: 350;
   line-height: 1;
   letter-spacing: 0.05em; 
   color: var(--Grey);
}
.map--touch_screen .map--zoom_info {
   display: none;
}

.map--point {
   position: absolute;
   width: 20px;
   height: 20px;
   cursor: pointer;
   background-image: url("map_point.svg");
   background-repeat: no-repeat;
   background-position: center center;
   opacity: 0;
}
.map--point.map--point_large {
   background-size: 16px;
}

.tippy-box {
   background-color: var(--White);
   color: var(--Solid-Grey);
   border: 1px solid var(--Soft-Grey);
   border-radius: 6px;
}
.tippy-box > .tippy-svg-arrow > svg {
   left: -4px;
}

.tippy-content {
   padding: 16px;
}
.map--tooltip_category {
   color: var(--Dark-Violet);
   text-align: center;
   font-size: 12px;
   font-style: normal;
   font-weight: 500;
   line-height: 24px;
   letter-spacing: 0.05em;
   margin-bottom: 8px;
}
.map--tooltip_title {
   color: var(--Black);
   margin-bottom: 6px;
   text-align: center;
   font-size: 14px;
   font-style: normal;
   font-weight: 500;
   line-height: 1.6em;
   letter-spacing: 0.05em;
   text-transform: uppercase;    
}
.map--tooltip_content {
    margin-bottom: 18px;

}
.map--tooltip_content h5 {
   color: var(--Black);
   margin-bottom: 0;
   text-align: center;
   font-size: 14px;
   font-style: normal;
   font-weight: 500;
   line-height: 1.6em;
   letter-spacing: 0.05em;
   text-transform: uppercase;    
}
.map--tooltip_content p ~ h5 {
   margin-top: 14px;
}
.map--tooltip_content p {
   font-size: 12px;
   font-style: normal;
   font-weight: 350;
   line-height: 1.7em;
   letter-spacing: 0.05em;
   white-space: normal;
   text-align: center;
   margin-bottom: 6px;
}
@media (hover: hover) {
   .map--tooltip_content a:hover {
      color: var(--Dark-Violet);
   }
}
.map--tooltip_button {
    width: 100%;
}



@media (max-width: 650px) {
   .map--container {
      margin-bottom: 100px;
   }
   .map--wrap {
      min-height: 60vh;
   }
   .map--zoom_icon {
      right: 50px;
      top: unset;
      bottom: -55px;
   }
   .map--zoom_minus {
      top: unset;
      right: 0;
   }
}
@media (max-width: 450px) {
}


/**
 *  Tippy svg-arrows 
 */
.tippy-box[data-placement^=top]>.tippy-svg-arrow {
   bottom: 0
}
.tippy-box[data-placement^=top]>.tippy-svg-arrow:after,.tippy-box[data-placement^=top]>.tippy-svg-arrow>svg {
   top: 16px;
   transform: rotate(180deg)
}
.tippy-box[data-placement^=bottom]>.tippy-svg-arrow {
   top: 0
}
.tippy-box[data-placement^=bottom]>.tippy-svg-arrow>svg {
   bottom: 16px
}
.tippy-box[data-placement^=left]>.tippy-svg-arrow {
   right: 0
}
.tippy-box[data-placement^=left]>.tippy-svg-arrow:after,.tippy-box[data-placement^=left]>.tippy-svg-arrow>svg {
   transform: rotate(90deg);
   top: calc(50% - 3px);
   left: 11px
}
.tippy-box[data-placement^=right]>.tippy-svg-arrow {
   left: 0
}
.tippy-box[data-placement^=right]>.tippy-svg-arrow:after,.tippy-box[data-placement^=right]>.tippy-svg-arrow>svg {
   transform: rotate(-90deg);
   top: calc(50% - 3px);
   right: 11px
}
.tippy-svg-arrow {
   width: 16px;
   height: 16px;
   fill: #333;
   text-align: initial
}
.tippy-svg-arrow,.tippy-svg-arrow>svg {
   position: absolute
}
