

/* Start:/bitrix/components/pr/map/templates/.default/style.css?17586331482170*/

.YMapsBaloon {
  padding: 8px 0px 8px 8px;
  font-size: 14px;
  line-height: 1.5;
  font-family: 'PT Sans', Tahoma, sans-serif;
  color: #58585a;
}
.YMapsBaloon:before,
.YMapsBaloon:after {
  display: table;
  line-height: 0px;
  content: "";
}
.YMapsBaloon:after {
  clear: both;
}
.YMapsBaloon_Photo {
  float: left;
  width: 220px;
  height: 165px;
  position: relative;
  overflow: hidden;
}
.YMapsBaloon_Photo a {
  color: inherit;
}
.YMapsBaloon_Photo img {
  max-width: 100%;
}
.YMapsBaloon_PhotoImg {
  display: block;
  height: 165px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.YMapsBaloon_Photo .YMapsBaloon_TextInPhoto {
  height: 80px;
  padding: 25px 14px 5px 14px;
  color: #fff;
  position: absolute;
  left: 0px;
  bottom: 0px;
  right: 0px;
  background-color: rgba(0, 0, 0, 0);
  background-image: linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%);
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%);
  background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%);
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%);
  background-image: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000000 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(0, 0, 0, 0)), color-stop(1, #000000));
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.YMapsBaloon_Photo .YMapsBaloon_Price {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 16px;
}
.YMapsBaloon_Text {
  margin-left: 240px;
}
.YMapsBaloon_TextInner {
  float: left;
  width: 100%;
}
.YMapsBaloon_Title {
  font-size: 16px;
}
.YMapsBaloon_Title a {
  color: inherit;
}
.YMapsBaloon_Subtype {
  color: #bcbcbc;
}
.YMapsBaloon_Info {
  margin: 5px 0px;
}
.YMapsBaloon_Info:before,
.YMapsBaloon_Info:after {
  display: table;
  line-height: 0px;
  content: "";
}
.YMapsBaloon_Info:after {
  clear: both;
}
.YMapsBaloon_Info .recom-offers__checkbox {
  position: relative;
}
.YMapsBaloon_InfoName {
  float: left;
}
.YMapsBaloon_InfoValue {
  float: right;
}
/* End */


/* Start:/bitrix/templates/telus_new2/js/project-map/vendor/openlayers/ol.css?17919694196343*/
:root,
:host {
  --ol-background-color: white;
  --ol-accent-background-color: #F5F5F5;
  --ol-subtle-background-color: rgba(128, 128, 128, 0.25);
  --ol-partial-background-color: rgba(255, 255, 255, 0.75);
  --ol-foreground-color: #333333;
  --ol-subtle-foreground-color: #666666;
  --ol-brand-color: #00AAFF;
}

.ol-box {
  box-sizing: border-box;
  border-radius: 2px;
  border: 1.5px solid var(--ol-background-color);
  background-color: var(--ol-partial-background-color);
}

.ol-mouse-position {
  top: 8px;
  right: 8px;
  position: absolute;
}

.ol-scale-line {
  background: var(--ol-partial-background-color);
  border-radius: 4px;
  bottom: 8px;
  left: 8px;
  padding: 2px;
  position: absolute;
}

.ol-scale-line-inner {
  border: 1px solid var(--ol-subtle-foreground-color);
  border-top: none;
  color: var(--ol-foreground-color);
  font-size: 10px;
  text-align: center;
  margin: 1px;
  will-change: contents, width;
  transition: all 0.25s;
}

.ol-scale-bar {
  position: absolute;
  bottom: 8px;
  left: 8px;
}

.ol-scale-bar-inner {
  display: flex;
}

.ol-scale-step-marker {
  width: 1px;
  height: 15px;
  background-color: var(--ol-foreground-color);
  float: right;
  z-index: 10;
}

.ol-scale-step-text {
  position: absolute;
  bottom: -5px;
  font-size: 10px;
  z-index: 11;
  color: var(--ol-foreground-color);
  text-shadow: -1.5px 0 var(--ol-partial-background-color), 0 1.5px var(--ol-partial-background-color), 1.5px 0 var(--ol-partial-background-color), 0 -1.5px var(--ol-partial-background-color);
}

.ol-scale-text {
  position: absolute;
  font-size: 12px;
  text-align: center;
  bottom: 25px;
  color: var(--ol-foreground-color);
  text-shadow: -1.5px 0 var(--ol-partial-background-color), 0 1.5px var(--ol-partial-background-color), 1.5px 0 var(--ol-partial-background-color), 0 -1.5px var(--ol-partial-background-color);
}

.ol-scale-singlebar {
  position: relative;
  height: 10px;
  z-index: 9;
  box-sizing: border-box;
  border: 1px solid var(--ol-foreground-color);
}

.ol-scale-singlebar-even {
  background-color: var(--ol-subtle-foreground-color);
}

.ol-scale-singlebar-odd {
  background-color: var(--ol-background-color);
}

.ol-unsupported {
  display: none;
}

.ol-viewport,
.ol-unselectable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.ol-viewport canvas {
  all: unset;
  overflow: hidden;
}

.ol-viewport {
  touch-action: pan-x pan-y;
}

.ol-selectable {
  -webkit-touch-callout: default;
  -webkit-user-select: text;
  -moz-user-select: text;
  user-select: text;
}

.ol-grabbing {
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

.ol-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.ol-control {
  position: absolute;
  background-color: var(--ol-subtle-background-color);
  border-radius: 4px;
}

.ol-zoom {
  top: .5em;
  left: .5em;
}

.ol-rotate {
  top: .5em;
  right: .5em;
  transition: opacity .25s linear, visibility 0s linear;
}

.ol-rotate.ol-hidden {
  opacity: 0;
  visibility: hidden;
  transition: opacity .25s linear, visibility 0s linear .25s;
}

.ol-zoom-extent {
  top: 4.643em;
  left: .5em;
}

.ol-full-screen {
  right: .5em;
  top: .5em;
}

.ol-control button {
  display: block;
  margin: 1px;
  padding: 0;
  color: var(--ol-subtle-foreground-color);
  font-weight: bold;
  text-decoration: none;
  font-size: inherit;
  text-align: center;
  height: 1.375em;
  width: 1.375em;
  line-height: .4em;
  background-color: var(--ol-background-color);
  border: none;
  border-radius: 2px;
}

.ol-control button::-moz-focus-inner {
  border: none;
  padding: 0;
}

.ol-zoom-extent button {
  line-height: 1.4em;
}

.ol-compass {
  display: block;
  font-weight: normal;
  will-change: transform;
}

.ol-touch .ol-control button {
  font-size: 1.5em;
}

.ol-touch .ol-zoom-extent {
  top: 5.5em;
}

.ol-control button:hover,
.ol-control button:focus {
  text-decoration: none;
  outline: 1px solid var(--ol-subtle-foreground-color);
  color: var(--ol-foreground-color);
}

.ol-zoom .ol-zoom-in {
  border-radius: 2px 2px 0 0;
}

.ol-zoom .ol-zoom-out {
  border-radius: 0 0 2px 2px;
}

.ol-attribution {
  text-align: right;
  bottom: .5em;
  right: .5em;
  max-width: calc(100% - 1.3em);
  display: flex;
  flex-flow: row-reverse;
  align-items: center;
}

.ol-attribution a {
  color: var(--ol-subtle-foreground-color);
  text-decoration: none;
}

.ol-attribution ul {
  margin: 0;
  padding: 1px .5em;
  color: var(--ol-foreground-color);
  text-shadow: 0 0 2px var(--ol-background-color);
  font-size: 12px;
}

.ol-attribution li {
  display: inline;
  list-style: none;
}

.ol-attribution li:not(:last-child):after {
  content: " ";
}

.ol-attribution img {
  max-height: 2em;
  max-width: inherit;
  vertical-align: middle;
}

.ol-attribution button {
  flex-shrink: 0;
}

.ol-attribution.ol-collapsed ul {
  display: none;
}

.ol-attribution:not(.ol-collapsed) {
  background: var(--ol-partial-background-color);
}

.ol-attribution.ol-uncollapsible {
  bottom: 0;
  right: 0;
  border-radius: 4px 0 0;
}

.ol-attribution.ol-uncollapsible img {
  margin-top: -.2em;
  max-height: 1.6em;
}

.ol-attribution.ol-uncollapsible button {
  display: none;
}

.ol-zoomslider {
  top: 4.5em;
  left: .5em;
  height: 200px;
}

.ol-zoomslider button {
  position: relative;
  height: 10px;
}

.ol-touch .ol-zoomslider {
  top: 5.5em;
}

.ol-overviewmap {
  left: 0.5em;
  bottom: 0.5em;
}

.ol-overviewmap.ol-uncollapsible {
  bottom: 0;
  left: 0;
  border-radius: 0 4px 0 0;
}

.ol-overviewmap .ol-overviewmap-map,
.ol-overviewmap button {
  display: block;
}

.ol-overviewmap .ol-overviewmap-map {
  border: 1px solid var(--ol-subtle-foreground-color);
  height: 150px;
  width: 150px;
}

.ol-overviewmap:not(.ol-collapsed) button {
  bottom: 0;
  left: 0;
  position: absolute;
}

.ol-overviewmap.ol-collapsed .ol-overviewmap-map,
.ol-overviewmap.ol-uncollapsible button {
  display: none;
}

.ol-overviewmap:not(.ol-collapsed) {
  background: var(--ol-subtle-background-color);
}

.ol-overviewmap-box {
  border: 1.5px dotted var(--ol-subtle-foreground-color);
}

.ol-overviewmap .ol-overviewmap-box:hover {
  cursor: move;
}

.ol-overviewmap .ol-viewport:hover {
  cursor: pointer;
}

/* End */


/* Start:/bitrix/templates/telus_new2/js/project-map/style.css?17919694194538*/
.project-map {
    position: relative;
    width: 100%;
    height: var(--project-map-height, 510px);
    min-height: 300px;
    isolation: isolate;
    font:
        14px/1.45 Arial,
        sans-serif;
    color: #282d32;
}
.project-map--single {
    height: var(--project-map-height, 768px);
    min-height: 376px;
}
.project-map__canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.project-map__canvas:focus-visible {
    outline: 2px solid #17689b;
    outline-offset: 2px;
}
.project-map__status {
    position: absolute;
    bottom: 32px;
    left: 12px;
    right: 12px;
    z-index: 2;
    width: fit-content;
    max-width: calc(100% - 24px);
    padding: 10px 14px;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 2px 12px #0002;
}
.project-map [hidden] {
    display: none !important;
}
.project-map button {
    cursor: pointer;
    font: inherit;
}
.project-map__retry {
    margin-left: 8px;
    padding: 3px 8px;
    color: #17689b;
    background: #fff;
    border: 1px solid #17689b;
    border-radius: 4px;
}
.project-map__popup {
    position: relative;
    width: var(--popup-width, 340px);
    max-width: min(340px, calc(100vw - 48px));
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 3px 18px #0004;
    overflow: hidden;
}
.project-map__close {
    position: absolute;
    right: 5px;
    top: 5px;
    z-index: 1;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: #333;
    font-size: 24px !important;
    line-height: 1 !important;
}
.project-map__card,
.project-map__cluster-list {
    box-sizing: border-box;
    max-height: min(340px, var(--popup-height, 340px));
    overflow: auto;
    overscroll-behavior: contain;
    padding: 16px;
}
.project-map__photo {
    display: block;
    width: 100%;
    height: 145px;
    object-fit: cover;
    border-radius: 4px;
}
.project-map__title {
    margin: 12px 22px 8px 0;
    font:
        600 16px/1.35 Arial,
        sans-serif;
}
.project-map__title a,
.project-map__details {
    color: #17689b;
    text-decoration: none;
}
.project-map__title a:hover,
.project-map__details:hover {
    text-decoration: underline;
}
.project-map__card p {
    margin: 7px 0;
}
.project-map__price {
    font-weight: bold;
    font-size: 17px;
}
.project-map__address,
.project-map__description {
    color: #555;
}
.project-map__metro-icon {
    margin-right: 6px;
    font-weight: 900;
}
.project-map__characteristics {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 3px 10px;
    margin: 10px 0;
}
.project-map__characteristics dt {
    font-weight: normal;
    color: #666;
}
.project-map__characteristics dd {
    margin: 0;
}
.project-map__cluster-list {
    padding-top: 38px;
}
.project-map__cluster-list button {
    display: block;
    width: 100%;
    padding: 10px;
    text-align: left;
    background: #fff;
    border: 0;
    border-bottom: 1px solid #ddd;
    color: #17689b;
}
.project-map__cluster-list button:hover {
    background: #eef5fa;
}
.project-map .ol-attribution {
    max-width: calc(100% - 8px);
    font-size: 11px;
}
@media (max-width: 768px) {
    .project-map--single {
        height: var(--project-map-height, 376px);
    }
    .project-map__card,
    .project-map__cluster-list {
        max-height: min(260px, var(--popup-height, 260px));
    }
}

/* Keep the standard OpenLayers controls, with comfortable touch targets. */
.project-map .ol-zoom {
    top: 12px;
    left: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 0;
    background: transparent;
}
.project-map .ol-zoom button {
    box-sizing: border-box;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    border: 1px solid #c5cdd4;
    border-radius: 8px;
    background: #fff;
    color: #173f5e;
    font-size: 28px;
    font-weight: 500;
    line-height: 1;
    box-shadow: 0 2px 8px #0002;
    touch-action: manipulation;
}
.project-map .ol-zoom button:hover {
    background: #edf5fb;
    border-color: #17689b;
}
.project-map .ol-zoom button:active {
    background: #dbeaf6;
}
.project-map .ol-zoom button:focus-visible {
    outline: 3px solid #17689b;
    outline-offset: 3px;
}

/* The contacts layout owns the adaptive height of this map. */
.project-map-contacts {
    position: absolute;
    inset: 0;
    overflow: hidden;
    border-radius: 6px;
}
.project-map-contacts > .project-map {
    height: 100%;
    min-height: 0;
}

/* End */
/* /bitrix/components/pr/map/templates/.default/style.css?17586331482170 */
/* /bitrix/templates/telus_new2/js/project-map/vendor/openlayers/ol.css?17919694196343 */
/* /bitrix/templates/telus_new2/js/project-map/style.css?17919694194538 */
