
/* 1. Global configuration ---*/
/*----------------------------*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::: CSS3 VARIABLES ::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
:root {
  /* colors used in our web application */
  --home-blue: #435063;
  --mobile-link-blue: #007aff;
  --regular-gray: #4D4C4C;
  --lightest-gray: #F7F7F7;
  --light-gray: #ebebef;
  --light-grayer: #E1E8F5;
  --listing-nav-gray: #324439;
  --primary-gray: #F0F2F1;
  --primary-grayer: #3E5771;
  --primary-fairest: #F1F1F1;
  --primary-fairest-est: #F1F7F5;
  --primary-fairer-er: #DBE4DE;
  --primary-fairer: #66D391;
  --cluster-hover: #6D96DA;
  --primary-color: #44c878;
  --primary-ui: #42c174;
  --primary-ui-hover: #45c879;
  --primary-border: #34985B;
  --primary-darker: #3db06a;
  --primary-darker-er: #23623c;
  --primary-darker-er-er: #1f452e;
  --primary-switcher: #2e834f;
  --primary-darkest: #1c362b;
  --primary-shadow: #1E2638;
  --tooltip: rgba(9, 14, 21, 0.85);
  --map-tooltip: #001437;
  --light-green: #D9F8EA;
  --lightest-green: #effdf7;
  --green: #43b37f;
  --green-hover: #4cbd89;
  --green-border: #358E65;
  --lightest-red: #fde7e7;
  --light-red: #fcb4b4;
  --ultra-light-red: #f7e2e2;
  --red: #cd6666;
  --red-hover: #d87070;
  --red-border: #964040;
  --red-error: #8A0101;
  --light-orange: #f6c763;
  --orange: #d7a844;
  --orange-hover: #e3b34c;
  --orange-border: #B38C3A;
  --light-yellow: #fffbd1;
  --yellow: #f6e95a;
  --yellow-stroke: #E7DB59;
  --yellow-darker: #CFC558;
  --yellow-darker-er: #524C17;
  --blue: #6297F4;
  --light-blue: #c1d8ff;
  --blue-border: #2c508d;
  --mati-blue: #184aa3;
  --listing-star-hover: #dbe8fe;
  --favorite-red: #F76060;
  --favorite-red-shadow: #F99C9C;
  --favorite-red-lighter: #ee7676;
  --favorite-red-dark: #6e251c;
  --btn-white: #ffffff;
  --btn-white-hover: #f5f6f7;
  --btn-white-active: #d9dde0;
  --btn-white-border-active: #b2b8bc;
  --btn-white-border: #cdd1d4;
  --btn-white-text: #5c6872;
  --navbar-green: #38a562;
  --navbar-green-hover: #3cad67;
  --navbar-green-active: #2e8e54;
  --new-listing-row: #f8fbf9;
  --admin-label: #343a36;
  /* partner colors used to customize UI for some users */
  --locservice-blue: #0089bf;
  --colocatere-red: #e2304d;
  --cheznestor-blue: #012699;
  --nestpick-orange: #eb7b59;
  --flatlooker-orange: #ff4706;
  /* used only for professional accounts UI */
  --pro-notice-bg: #5cc2b3;
  --pro-notice-btn: #ff6d6e;
  --pro-notice-btn-hover: #fc5254;
  --pro-notice-btn-active: #f4a9aa;
}

/* WARNING 1: do not optimize font loading by adding <link rel="preload"> tags in layouts/views.
   -> as we need to handle old safari devices from 2013~2016 we need to be able to fallback to woff1 format in @font-face if woff2 fails
   -> this means one of woff & woff2 from @font-face will always be resolved, any preload tag would load a useless duplicate
   WARNING 2: loading priority depends on the font used
   -> Open Sans is using 'font-display: auto;' to let browser handle loading the best he can to avoid flash or clipping,
   -> IcoMoon is using 'font-display: block' to show it only after it has been loaded (ok if icons rendering is delayed a bit)
*/
/* Arial font size was adjusted to avoid messing up layout too much if used */
/* override rules generated using https://screenspan.net/fallback/ */
@font-face {
  font-family: "Adjusted Arial Fallback";
  src: local(Arial);
  size-adjust: 104%;
  ascent-override: 106%;
  descent-override: 22%;
  line-gap-override: normal;
}
@font-face {
  font-family: "Open Sans Regular";
  src: url(/assets/opensans-regular-37be4e97bc61763a1da042ad3d60f76e7cd2f41be528224b7632c35d9326450b.woff2) format("woff2"), url(/assets/opensans-regular-5fdd365abf2fd69ba53ba25783cb485c948b791217421bc1e96f3101ad4ea96d.woff) format("woff");
  font-weight: normal;
  font-style: normal;
  /* let browsers handle font loading */
  /*font-display: auto;*/
  /* Lighthouse/PageSpeed tests prefer clipping :( */
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "IcoMoon";
  src: url(/assets/icomoon-93fce10a142b773bd8960daba7d678f262f2bdea6336bb522f283437b9c6a052.woff2) format("woff2"), url(/assets/icomoon-d81d5d32b19fbcd5b6d87dce059d750730be2dec8d635750d1de1b29a496122c.woff) format("woff");
  font-weight: normal;
  font-style: normal;
  /* hide icons if font cannot be loaded */
  font-display: block;
}
:root {
  --text-font: "Open Sans Regular", "Adjusted Arial Fallback", sans-serif;
  --icon-font: "IcoMoon", Arial, sans-serif;
}

/* 2. Vendor libraries ---*/
/*------------------------*/
/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}

.leaflet-container {
  overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  user-select: none;
  -webkit-user-drag: none;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg,
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer {
  max-width: none !important;
}

.leaflet-container.leaflet-touch-zoom {
  -ms-touch-action: pan-x pan-y;
  touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
  touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  -ms-touch-action: none;
  touch-action: none;
}

.leaflet-container {
  -webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
  filter: inherit;
  visibility: hidden;
}

.leaflet-tile-loaded {
  visibility: inherit;
}

.leaflet-zoom-box {
  width: 0;
  height: 0;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  user-select: none;
}

.leaflet-pane {
  z-index: 400;
}

.leaflet-tile-pane {
  z-index: 200;
}

.leaflet-overlay-pane {
  z-index: 400;
}

.leaflet-shadow-pane {
  z-index: 500;
}

.leaflet-marker-pane {
  z-index: 600;
}

.leaflet-tooltip-pane {
  z-index: 650;
}

.leaflet-popup-pane {
  z-index: 700;
}

.leaflet-map-pane canvas {
  z-index: 100;
}

.leaflet-map-pane svg {
  z-index: 200;
}

.leaflet-vml-shape {
  width: 1px;
  height: 1px;
}

.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute;
}

/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}

.leaflet-top {
  top: 0;
}

.leaflet-right {
  right: 0;
}

.leaflet-bottom {
  bottom: 0;
}

.leaflet-left {
  left: 0;
}

.leaflet-control {
  float: left;
  clear: both;
}

.leaflet-right .leaflet-control {
  float: right;
}

.leaflet-top .leaflet-control {
  margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
  margin-left: 10px;
}

.leaflet-right .leaflet-control {
  margin-right: 10px;
}

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile {
  will-change: opacity;
}

.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1;
}

.leaflet-zoom-animated {
  transform-origin: 0 0;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden;
}

/* cursors */
.leaflet-interactive {
  cursor: pointer;
}

.leaflet-grab {
  cursor: -webkit-grab;
  cursor: -moz-grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
  pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive {
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline: 0;
}

.leaflet-container a {
  color: #0078A8;
}

.leaflet-container a.leaflet-active {
  outline: 2px solid orange;
}

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5);
}

/* general typography */
.leaflet-container {
  font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
}

/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px;
}

.leaflet-bar a,
.leaflet-bar a:hover {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block;
}

.leaflet-bar a:hover {
  background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb;
}

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px "Lucida Console", Monaco, monospace;
  text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px;
}

/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px;
}

/* DISABLED -> was making webpack crash with current config
               (not used anyway, custom switcher implemented */
/*.leaflet-control-layers-toggle {
	background-image: url(/images/layers.png);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(/images/layers-2x.png);
	background-size: 26px 26px;
	}*/
.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative;
}

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff;
}

.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px;
}

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px;
}

.leaflet-control-layers label {
  display: block;
}

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path {
  background-image: url(/images/marker-icon.png);
}

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
}

.leaflet-control-attribution a {
  text-decoration: none;
}

.leaflet-control-attribution a:hover {
  text-decoration: underline;
}

.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale {
  font-size: 11px;
}

.leaflet-left .leaflet-control-scale {
  margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px;
}

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
}

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}

/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px;
}

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px;
}

.leaflet-popup-content {
  margin: 13px 19px;
  line-height: 1.4;
}

.leaflet-popup-content p {
  margin: 18px 0;
}

.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none;
}

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  color: #333;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 4px 0 0;
  border: none;
  text-align: center;
  width: 18px;
  height: 14px;
  font: 16px/14px Tahoma, Verdana, sans-serif;
  color: #c3c3c3;
  text-decoration: none;
  font-weight: bold;
  background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover {
  color: #999;
}

.leaflet-popup-scrolled {
  /*overflow: auto;*/
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
  zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-popup-tip-container {
  margin-top: -1px;
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999;
}

/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666;
}

/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-clickable {
  cursor: pointer;
  pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Directions */
.leaflet-tooltip-bottom {
  margin-top: 6px;
}

.leaflet-tooltip-top {
  margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px;
}

.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff;
}

.leaflet-tooltip-left {
  margin-left: -6px;
}

.leaflet-tooltip-right {
  margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px;
}

.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff;
}

.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::: AUTOCOMPLETE MONKEYPATCHES :::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.autoComplete_dropdown {
  width: 100%;
  background: #ffffff;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.2), 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  font-size: 0.9em;
}
.autoComplete_dropdown li:first-child:not(.autoComplete_error) {
  margin-top: 0.4em;
}
.autoComplete_dropdown li:last-child:not(.autoComplete_error) {
  margin-bottom: 0.4em;
}

.autoComplete_highlighted {
  opacity: 1;
  color: rgb(1, 1, 1);
  font-weight: 700;
}

.autoComplete_result {
  box-sizing: border-box;
  padding: 0.4em 0.8em;
  list-style: none;
  text-align: left;
  font-size: 1.15rem;
  color: #7b7b7b;
  background-color: #fff;
  cursor: pointer;
}
.autoComplete_result .flag {
  float: right;
  margin-top: 0.35em;
}

.autoComplete_result:hover, .autoComplete_result[aria-selected=true] {
  background-color: #f4f4f4;
}

.autoComplete_error {
  box-sizing: border-box;
  padding: 0.9em 0.9em;
  list-style: none;
  text-align: left;
  font-size: 1em;
  line-height: 1.4em;
  color: #8A0101;
  background-color: #FCDCDC;
}

.autoComplete_legend {
  margin-left: 0.3em;
  color: #bcbcbc;
  font-size: 0.9em;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::: INMOBI CHOICE MONKEY PATCHES :::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.qc-cmp2-publisher-logo-container .logo-container {
  margin-top: 10px !important;
  margin-bottom: 13px !important;
  width: 260px !important;
}
.qc-cmp2-publisher-logo-container .logo-container img {
  width: 260px;
}
.qc-cmp2-publisher-logo-container .qc-cmp2-header-links button {
  cursor: pointer !important;
  padding: 0 12px;
  border-radius: 5px !important;
  font-size: 0.9em;
}
.qc-cmp2-publisher-logo-container .qc-cmp2-header-links button:last-of-type {
  background: rgb(68, 200, 120) !important;
  border-radius: 2px !important;
  color: rgb(255, 255, 255) !important;
}

@media screen and (min-width: 768px) {
  .qc-cmp2-publisher-logo-container .logo-container {
    width: 300px !important;
  }
  .qc-cmp2-publisher-logo-container .logo-container img {
    width: 300px;
  }
}
.qc-cmp2-summary-buttons button:last-of-type {
  background: rgb(68, 200, 120) !important;
  border-radius: 2px !important;
  color: rgb(255, 255, 255) !important;
  cursor: pointer !important;
  font-weight: bold;
  font-size: 0.9em;
}

.qs-datepicker-container {
  font-size: 1rem;
  font-family: sans-serif;
  color: #000;
  position: absolute;
  width: 15.625em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  z-index: 9001;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid grey;
  border-radius: 0.263921875em;
  overflow: hidden;
  background: #fff;
  -webkit-box-shadow: 0 1.25em 1.25em -0.9375em rgba(0, 0, 0, 0.3);
  box-shadow: 0 1.25em 1.25em -0.9375em rgba(0, 0, 0, 0.3);
}

.qs-datepicker-container * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.qs-centered {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.qs-hidden {
  display: none;
}

.qs-overlay {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.75);
  color: #fff;
  width: 100%;
  height: 100%;
  padding: 0.5em;
  z-index: 1;
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.qs-overlay.qs-hidden {
  opacity: 0;
  z-index: -1;
}

.qs-overlay .qs-overlay-year {
  background: rgba(0, 0, 0, 0);
  border: none;
  border-bottom: 1px solid #fff;
  border-radius: 0;
  color: #fff;
  font-size: 0.875em;
  padding: 0.25em 0;
  width: 80%;
  text-align: center;
  margin: 0 auto;
  display: block;
}

.qs-overlay .qs-overlay-year::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

.qs-overlay .qs-close {
  padding: 0.5em;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
}

.qs-overlay .qs-submit {
  border: 1px solid #fff;
  border-radius: 0.263921875em;
  padding: 0.5em;
  margin: 0 auto auto;
  cursor: pointer;
  background: hsla(0, 0%, 50.2%, 0.4);
}

.qs-overlay .qs-submit.qs-disabled {
  color: grey;
  border-color: grey;
  cursor: not-allowed;
}

.qs-overlay .qs-overlay-month-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.qs-overlay .qs-overlay-month {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 33.3333333333%;
  cursor: pointer;
  opacity: 0.5;
  -webkit-transition: opacity 0.15s;
  transition: opacity 0.15s;
}

.qs-overlay .qs-overlay-month.active, .qs-overlay .qs-overlay-month:hover {
  opacity: 1;
}

.qs-controls {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background: #d3d3d3;
  -webkit-filter: blur(0);
  filter: blur(0);
  -webkit-transition: -webkit-filter 0.3s;
  transition: -webkit-filter 0.3s;
  transition: filter 0.3s;
  transition: filter 0.3s, -webkit-filter 0.3s;
}

.qs-controls.qs-blur {
  -webkit-filter: blur(5px);
  filter: blur(5px);
}

.qs-arrow {
  height: 1.5625em;
  width: 1.5625em;
  position: relative;
  cursor: pointer;
  border-radius: 0.263921875em;
  -webkit-transition: background 0.15s;
  transition: background 0.15s;
}

.qs-arrow:hover.qs-left:after {
  border-right-color: #000;
}

.qs-arrow:hover.qs-right:after {
  border-left-color: #000;
}

.qs-arrow:hover {
  background: rgba(0, 0, 0, 0.1);
}

.qs-arrow:after {
  content: "";
  border: 0.390625em solid rgba(0, 0, 0, 0);
  position: absolute;
  top: 50%;
  -webkit-transition: border 0.2s;
  transition: border 0.2s;
}

.qs-arrow.qs-left:after {
  border-right-color: grey;
  right: 50%;
  -webkit-transform: translate(25%, -50%);
  -ms-transform: translate(25%, -50%);
  transform: translate(25%, -50%);
}

.qs-arrow.qs-right:after {
  border-left-color: grey;
  left: 50%;
  -webkit-transform: translate(-25%, -50%);
  -ms-transform: translate(-25%, -50%);
  transform: translate(-25%, -50%);
}

.qs-month-year {
  font-weight: 700;
  -webkit-transition: border 0.2s;
  transition: border 0.2s;
  border-bottom: 1px solid rgba(0, 0, 0, 0);
}

.qs-month-year:not(.qs-disabled-year-overlay) {
  cursor: pointer;
}

.qs-month-year:not(.qs-disabled-year-overlay):hover {
  border-bottom: 1px solid grey;
}

.qs-month-year:active:focus, .qs-month-year:focus {
  outline: none;
}

.qs-month {
  padding-right: 0.5ex;
}

.qs-year {
  padding-left: 0.5ex;
}

.qs-squares {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0.3125em;
  -webkit-filter: blur(0);
  filter: blur(0);
  -webkit-transition: -webkit-filter 0.3s;
  transition: -webkit-filter 0.3s;
  transition: filter 0.3s;
  transition: filter 0.3s, -webkit-filter 0.3s;
}

.qs-squares.qs-blur {
  -webkit-filter: blur(5px);
  filter: blur(5px);
}

.qs-square {
  width: 14.2857142857%;
  height: 1.5625em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  cursor: pointer;
  -webkit-transition: background 0.1s;
  transition: background 0.1s;
  border-radius: 0.263921875em;
}

.qs-square:not(.qs-empty):not(.qs-disabled):not(.qs-day):not(.qs-active):hover {
  background: orange;
}

.qs-current {
  font-weight: 700;
  text-decoration: underline;
}

.qs-active, .qs-range-end, .qs-range-start {
  background: #add8e6;
}

.qs-range-start:not(.qs-range-6) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.qs-range-middle {
  background: #d4ebf2;
}

.qs-range-middle:not(.qs-range-0):not(.qs-range-6) {
  border-radius: 0;
}

.qs-range-middle.qs-range-0 {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.qs-range-end:not(.qs-range-0), .qs-range-middle.qs-range-6 {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.qs-disabled, .qs-outside-current-month {
  opacity: 0.2;
}

.qs-disabled {
  cursor: not-allowed;
}

.qs-day, .qs-empty {
  cursor: default;
}

.qs-day {
  font-weight: 700;
  color: grey;
}

.qs-event {
  position: relative;
}

.qs-event:after {
  content: "";
  position: absolute;
  width: 0.46875em;
  height: 0.46875em;
  border-radius: 50%;
  background: #07f;
  bottom: 0;
  right: 0;
}

/* 3. App layout and global rules ---*/
/*-----------------------------------*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::: MAIN LAYOUT :::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  font-family: var(--text-font);
  /* Better Font Rendering on safari & firefox */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Subtle shadow can make text look cripser */
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
}
html input, html button, html select, html a, body input, body button, body select, body a {
  font-family: var(--text-font);
}

body {
  background: var(--primary-fairest);
  min-width: 740px;
  overflow: auto;
}

.main_wrapper {
  height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
  /* required for pro plan expired flash layout */
  position: relative;
}

.pro_expired_main_wrapper {
  height: calc(100% - 50px);
}

.fixed_wrapper {
  top: 0px;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden !important;
}

.main_content {
  width: 100%;
  min-height: 100%;
  margin-bottom: -125px;
  overflow: hidden;
  text-align: center;
  display: block;
}

/* Used on messaging page only */
.messaging_main_content {
  width: 100%;
  height: 100%;
  min-height: calc(100vh - 45px);
  overflow: hidden;
  text-align: center;
  display: block;
  position: relative;
}

.push {
  height: 125px;
}

.empty_layout_wrapper {
  overflow-y: auto;
  height: 100%;
  background: white;
  background-size: cover;
  background-position: center;
}

.empty_layout_background {
  background-image: url(/assets/backgrounds/aquarelle-fa7318e628448484eab046fea52e93210b55b0796ad4a03e4e5c0c10d4665528.jpg);
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::: GLOBAL RULES ::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak, [hidden] {
  display: none !important;
}

a {
  color: var(--primary-color);
  text-decoration: none;
  transition: background-color 0.3s, color 0.3s;
  cursor: pointer;
}

a:hover {
  color: var(--primary-darker-er);
}

textarea, input[type=text], input[type=email], input[type=password], input[type=number] {
  color: var(--primary-darkest) !important;
}

.login_link {
  cursor: pointer;
}

.hidden_overflow {
  overflow-y: hidden !important;
}

.truncate {
  width: 100px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.smooth {
  transition: 0.25s;
}

.smooth-fast {
  transition: 0.1s;
}

.capitalize {
  text-transform: capitalize;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.radius {
  border-radius: 5px;
}

.big-radius {
  border-radius: 8px;
}

.radius-left {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

.radius-right {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.radius-top {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.radius-bottom {
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

.noselect {
  user-select: none !important;
}

.full_opacity {
  opacity: 1 !important;
}

.full_width {
  width: 100% !important;
}

.link_cursor {
  cursor: pointer !important;
}

.tooltip {
  position: absolute;
  font-size: 0.9em;
  font-weight: normal !important;
  background: var(--tooltip);
  color: white;
  padding: 7px 5px;
  border-radius: 8px;
  display: block;
  text-align: center;
  z-index: 1;
}

.tooltip:after {
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(0, 20, 55, 0);
  border-width: 8px;
  margin-left: -8px;
}

.flash_container {
  position: absolute;
  display: block;
  width: 100%;
  top: 0;
  left: 0;
  min-height: 56px;
  line-height: 28px;
  box-sizing: border-box;
  padding: 17px 20px 17px 20px;
  color: white;
  text-align: center;
  z-index: 9;
}
.flash_container a {
  font-weight: bold;
  color: white;
}
.flash_container .close_flash {
  float: right;
  width: 80px;
  height: 100%;
  font-size: 1.7em;
  cursor: pointer;
  -webkit-touch-callout: none;
  user-select: none;
}
.flash_container .close_flash:active {
  transform: scale(1.15);
}

#notice_rails_flash {
  background: var(--primary-color);
  box-shadow: inset 0 -4px var(--primary-fairer);
}
#notice_rails_flash .close_flash {
  color: white;
}
#notice_rails_flash .close_flash:hover {
  text-shadow: 0 0 4px var(--primary-darker-er);
}

#alert_rails_flash {
  background: var(--red);
  box-shadow: inset 0 -4px var(--red-border);
}
#alert_rails_flash .close_flash {
  color: white;
}
#alert_rails_flash .close_flash:hover {
  text-shadow: 0 0 4px var(--red-border);
}

/* Admin helper but on all app pages so convenient to have it listed here */
.admin_on_notice {
  position: fixed;
  bottom: 0px;
  right: 0px;
  padding: 4px 10px;
  background-color: var(--red);
  color: white;
  z-index: 9999999;
  font-size: 0.8em;
  border-top-left-radius: 3px;
}
.admin_on_notice:hover {
  background-color: var(--red-hover);
}
.admin_on_notice:active {
  background-color: var(--red-border);
}
.admin_on_notice a {
  color: white !important;
}
.admin_on_notice a:hover {
  color: white !important;
  text-shadow: none !important;
}
.admin_on_notice a .fas {
  margin-right: 7px;
}

/* Semantic UI custom rules */
.ui.message {
  box-sizing: border-box;
}
.ui.message a {
  margin-top: -3px;
}

/* Internationalization custom rules */
.custom_currency_icon {
  font-size: 1.1em;
  text-align: center;
  color: var(--primary-ui);
  font-weight: bold;
}

/* Leaflet plugins custom rules */
.leaflet-vertex-icon {
  margin-left: -4px !important;
  margin-top: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 8px !important;
}

/* @fancyapps/fancybox custom rules */
.fancybox__content {
  padding: 0 !important;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::: INPUTS ::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* 1. Inputs :::::::::::::::::::::::::::::::::::::::::*/
input[type=text], input[type=password], input[type=email], input[type=url], input[type=number], textarea {
  font-family: var(--text-font);
  font-size: 100%;
  border: 1px solid var(--primary-darker);
  background-color: var(--primary-fairest-est);
  border-radius: 5px;
  outline: none;
}

input[type=text]:hover, input[type=password]:hover, input[type=email]:hover, input[type=url]:hover, input[type=number]:hover, textarea:hover {
  border: 1px solid var(--primary-darker-er);
  background-color: white;
}

input[type=text]:focus, input[type=password]:focus, input[type=email]:focus, input[type=url]:focus, input[type=number]:focus, textarea:focus {
  border: 1px solid var(--primary-color);
  box-shadow: 0 0 8px var(--primary-fairer);
}

/* 2. Placeholders :::::::::::::::::::::::::::::::::::::*/
input::placeholder, textarea::placeholder {
  color: var(--primary-darker-er);
  font-size: 0.9em;
  opacity: 0.54;
}

/* 3. Status management :::::::::::::::::::::::::::::::::*/
.disabled_input {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}

input.ng-touched.ng-invalid,
textarea.ng-touched.ng-invalid,
.listing_form_select_btn.ng-invalid,
.invoice_contacts_sex_select.ng-invalid,
.invoice_contacts_country_select.ng-invalid,
.input_credentials_select.ng-invalid,
.pro_support_object_select.ng-invalid,
.pro_payment_methods_select_btn.ng-invalid {
  border: 1px solid var(--red) !important;
  box-shadow: 0 0 10px var(--red) !important;
}

/* Needed for special form in donation page/modal */
.invalid_input,
.invalid_autocomplete,
.invalid_form_item {
  border: 1px solid var(--red) !important;
  box-shadow: 0 0 10px var(--red) !important;
}

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::   BUTTONS AND SPINNERS   ::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::: General rules :::::::::::::::::::::::::::::::::::*/
button {
  border: none;
}

button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/*:::::::::::::::::::::::::::::: Main buttons :::::::::::::::::::::::::::::::::::*/
.btn_white {
  color: var(--btn-white-text);
  background-color: var(--btn-white);
  border: 1px solid var(--btn-white-border);
  user-select: none;
  text-align: center;
  cursor: pointer;
  outline: none;
  border-radius: 4px;
  position: relative;
}
.btn_white:hover {
  color: var(--btn-white-text) !important;
  background-color: var(--btn-white-hover) !important;
}
.btn_white:active {
  background-color: var(--btn-white-active) !important;
  border: 1px solid var(--btn-white-border-active) !important;
}

/* Used in cookie consent overlay */
.active_btn_white {
  background-color: var(--btn-white-hover);
}

.btn_main, .btn_red, .btn_light_red, .btn_green, .btn_orange, .btn_darkest, .btn_yellow {
  color: white;
  text-align: center;
  display: block;
  cursor: pointer;
  border-radius: 4px;
  text-shadow: 1px 1px 8px rgba(5, 11, 34, 0.4);
  -webkit-touch-callout: none;
  user-select: none;
  outline: none;
  position: relative;
}
.btn_main:active, .btn_red:active, .btn_light_red:active, .btn_green:active, .btn_orange:active, .btn_darkest:active, .btn_yellow:active {
  top: 1px;
  outline: none;
  box-shadow: none;
}

.btn_main {
  background-color: var(--primary-ui);
  box-shadow: inset 0 -2px var(--primary-border);
}
.btn_main:hover {
  background-color: var(--primary-ui-hover);
  color: white !important;
}

.btn_green {
  background-color: var(--green);
  box-shadow: inset 0 -2px var(--green-border);
}
.btn_green:hover {
  background-color: var(--green-hover);
}

.btn_red {
  background-color: var(--red);
  box-shadow: inset 0 -2px var(--red-border);
}
.btn_red:hover {
  background-color: var(--red-hover);
}

.btn_light_red {
  background-color: var(--light-red);
  color: var(--red-error);
  box-shadow: inset 0 -2px var(--red-error);
}
.btn_light_red:hover {
  background-color: var(--red-error);
}

.btn_orange {
  background-color: var(--orange);
  box-shadow: inset 0 -2px var(--orange-border);
}
.btn_orange:hover {
  background-color: var(--orange-hover);
}

.btn_yellow {
  background-color: var(--yellow);
  box-shadow: inset 0 -2px var(--yellow-darker);
}
.btn_yellow:hover {
  background-color: var(--yellow-stroke);
}

.btn_darkest {
  background-color: var(--primary-darkest);
  border: 1px solid black;
}
.btn_darkest:hover {
  background-color: black;
}

/* Name was changed for login buttons because of stupid adblockers
  hiding any div with class 'facebook' or 'facebook_btn' */
.form_apple_btn {
  background-color: #f3f3f3;
  box-shadow: 0px 0px 1px var(--primary-grayer);
  color: black;
}
.form_apple_btn:hover {
  background-color: white;
}
.form_apple_btn .fas {
  background: white;
  line-height: 34px;
  width: 36px;
  float: left;
}

.form_facebook_btn {
  background-color: #4c66a4;
  box-shadow: inset 0 -2px #394B79;
  color: white;
}
.form_facebook_btn:hover {
  background-color: #5977C0;
}
.form_facebook_btn .fas {
  background: #5977C0;
  line-height: 34px;
  width: 36px;
  float: left;
}

.form_google_btn {
  background-color: #d44137;
  box-shadow: inset 0 -2px #88302A;
  color: white;
}
.form_google_btn:hover {
  background-color: #DD4F46;
}
.form_google_btn .fas {
  background: #DD4F46;
  line-height: 34px;
  width: 36px;
  float: left;
}

.form_microsoft_btn {
  background-color: #0277d7;
  box-shadow: inset 0 -2px #014377;
  color: white;
}
.form_microsoft_btn:hover {
  background-color: #188be9;
}
.form_microsoft_btn .fas {
  background: #188be9;
  line-height: 34px;
  width: 36px;
  float: left;
}

.facebook_btn {
  background-color: #4c66a4;
  box-shadow: inset 0 -2px #394B79;
  color: white;
}
.facebook_btn .fas {
  background: transparent;
}
.facebook_btn:hover {
  background-color: #5977C0;
}

.google_btn {
  background-color: #d44137;
  box-shadow: inset 0 -2px #88302A;
  color: white;
}
.google_btn .fas {
  background: transparent;
}
.google_btn:hover {
  background-color: #DD4F46;
}

.twitter_btn {
  background-color: #55aed9;
  box-shadow: inset 0 -2px #326b86;
  color: white;
}
.twitter_btn .fas {
  background: transparent;
}
.twitter_btn:hover {
  background-color: #62c8f8;
}

.linkedin_btn {
  background-color: #165ba0;
  box-shadow: inset 0 -2px #124272;
  color: white;
}
.linkedin_btn .fas {
  background: transparent;
}
.linkedin_btn:hover {
  background-color: #0a66c2;
}

.telegram_btn {
  background-color: #3090be;
  box-shadow: inset 0 -2px #29607b;
  color: white;
}
.telegram_btn .fas {
  background: transparent;
}
.telegram_btn:hover {
  background-color: #27a7e5;
}

.whatsapp_btn {
  background-color: #09a48f;
  box-shadow: inset 0 -2px #0a6c5f;
  color: white;
}
.whatsapp_btn .fas {
  background: transparent;
}
.whatsapp_btn:hover {
  background-color: #00bfa5;
}

.email_btn {
  color: var(--btn-white-text) !important;
  background-color: var(--btn-white-hover) !important;
  border: 1px solid var(--btn-white-border);
  text-shadow: none !important;
}
.email_btn .fas {
  background-color: var(--btn-white);
  color: var(--primary-darker);
}
.email_btn:hover {
  color: var(--btn-white-text) !important;
  background-color: var(--btn-white) !important;
}
.email_btn:hover .fas {
  color: var(--primary-ui);
}

.share_btn_gib_clay {
  background: var(--lightest-red);
  color: var(--regular-gray) !important;
}
.share_btn_gib_clay:hover {
  background: var(--ultra-light-red);
}
.share_btn_gib_clay:active {
  background: var(--light-red);
}
.share_btn_gib_clay .fas {
  color: var(--favorite-red);
}

.share_btn_twitter {
  background-color: #62c8f8;
  color: white !important;
}
.share_btn_twitter:hover {
  color: white !important;
  background-color: #78d2fc;
}
.share_btn_twitter:active {
  background-color: #55aed9;
}
.share_btn_twitter .fas {
  color: white;
}

.share_btn_facebook {
  background-color: #4c66a4;
  color: white !important;
}
.share_btn_facebook:hover {
  color: white !important;
  background-color: #5977C0;
}
.share_btn_facebook:active {
  background-color: #324e91;
}
.share_btn_facebook .fas {
  color: white;
}

.submitted_message {
  color: var(--green-border);
  background: var(--light-green);
  font-weight: bold;
}

/*:::::::::::::::::::::::::::::: GIF Spinners :::::::::::::::::::::::::::::::::::*/
/* END OF LIFE: historical gif spinners were generated via http://www.loadinfo.net/ that went offline as of 2025-01
  TO DO: replace all gif spinners with css loader animations when possible when possible */
.spinner {
  width: 16px;
  height: 16px;
  background-image: url(/assets/spinners/spinner-2eb2560a03932aa3adbcab50d82646436c48afb78b30299009e890ce2cee16d8.gif);
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -8px;
  margin-top: -8px;
}

.spinner_btn_red,
.spinner_btn_light_red,
.spinner_btn_orange,
.spinner_btn_orange_inverted,
.spinner_btn_yellow,
.spinner_btn_main,
.spinner_btn_green,
.spinner_btn_facebook,
.spinner_btn_google,
.spinner_btn_darkest,
.spinner_btn_home,
.spinner_btn_white,
.spinner_btn_black,
.spinner_btn_black_bis {
  width: 16px;
  height: 16px;
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -8px;
  margin-top: -8px;
}

.spinner_btn_red {
  background-image: url(/assets/spinners/spinner-btn-red-3b5a1e995f9ce44621c9ac475897de5d1f42f29a32e50d7fbe909e007fa4138d.gif);
}

.spinner_btn_light_red {
  background-image: url(/assets/spinners/spinner-btn-light-red-09d0d0fcf7848f7028f1016594f92166489146113bfed705f0c11ca3ccb1a54f.gif);
}

.spinner_btn_orange {
  background-image: url(/assets/spinners/spinner-btn-orange-4810df0aa3d1a7171238f0355b28dc263f7142df1a5b117ebcb13564d40cb099.gif);
}

.spinner_btn_orange_inverted {
  background-image: url(/assets/spinners/spinner-btn-orange-inverted-21af27654071a3b30f660cc6e06a1e16f2a54f381fbdb6cb3a2d17a6179e23b1.gif);
}

.spinner_btn_yellow {
  background-image: url(/spinners/spinner-btn-yellow.gif);
}

.spinner_btn_main {
  background-image: url(/assets/spinners/spinner-btn-main-b927b34f74b16196d67f1ea12b7f21b87e412b13a880615bcecac32182e12a5e.gif);
}

.spinner_btn_home {
  background-image: url(/assets/spinners/spinner-btn-home-1648976fff5adb39f7a0f89ecfdd7fecdf246608db190892c1b6a4f41109316a.gif);
}

.spinner_btn_green {
  background-image: url(/assets/spinners/spinner-btn-green-7f1e7b6f1cbda661f51b785c553a6daccc4f6437a18dc87e679290efe7e8c2dd.gif);
}

.spinner_btn_white {
  background-image: url(/assets/spinners/spinner-btn-white-3c8f0ded1033764f1df6f23b7f31a4501f7c7f96b803935cd661f01cfbb38d1f.gif);
}

.spinner_btn_darkest {
  background-image: url(/assets/spinners/spinner-btn-darkest-ceb31b6673ebb5032d85a9b6817f508b90111135b92445bffcba9c07465799a0.gif);
}

.spinner_btn_facebook {
  background-image: url(/assets/spinners/spinner-facebook-626a7e4be5f9af1060758a2af81acbb1504630f311947ae0b0249def2603a84f.gif);
}

.spinner_btn_google {
  background-image: url(/assets/spinners/spinner-google-3a7167c6c5b4b36d097eb9ed1c39aa2d3c8d3cc18f7e765741d9beec4ad5ddb8.gif);
}

.spinner_btn_black {
  background-image: url(/assets/spinners/spinner-btn-black-e58aabe9673f1a1f22d001d7ad9055e1df99de080f6e586f29215810d06d023d.gif);
}

.spinner_btn_black_bis {
  background-image: url(/assets/spinners/spinner-btn-black-bis-3f8181661e0e7301051206ea2c56e2868cf05f05e8afb4bcc86d52bd0c9659fe.gif);
}

.spinner_list {
  width: 220px;
  height: 167px;
  background-image: url(/assets/spinners/spinner-2eb2560a03932aa3adbcab50d82646436c48afb78b30299009e890ce2cee16d8.gif);
  background-position: center;
  background-repeat: no-repeat;
  display: block;
}

@media (min-width: 1800px) and (min-height: 800px) {
  .spinner_list {
    width: 320px;
    height: 240px;
  }
}
/*:::::::::::::::::::::::::::::: CSS Spinners :::::::::::::::::::::::::::::::::::*/
.page-spinner {
  position: fixed;
  top: 50px;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: table;
}
.page-spinner .ring_spinner_container {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.place-spinner {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.searching-spinner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 9999;
  display: table;
}
.searching-spinner .ring_spinner {
  position: fixed;
  top: 50%;
  margin-left: -1.5rem;
}

.small-spinner .ring_spinner {
  width: 1rem;
  height: 1rem;
}

.ring_spinner {
  display: inline-block;
  position: relative;
  width: 3rem;
  height: 3rem;
}
.ring_spinner div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 5px solid;
  border-color: var(--primary-color) var(--primary-color) transparent transparent;
  animation: ring-spin 1.2s cubic-bezier(0.57, 0.05, 0.58, 0.94) infinite;
}
.ring_spinner div:nth-child(1) {
  animation-delay: -0.25s;
}
.ring_spinner div:nth-child(2) {
  animation-delay: -0.17s;
}
.ring_spinner div:nth-child(3) {
  animation-delay: -0.1s;
}

@keyframes ring-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/*:::::::::::::::::::::::::::::::::::::::: Admin helpers ::::::::::::::::::::::::::::::::*/
/* 1. Listing modal helpers ::::::::::::::::::::::::::::::::*/
.admin_shared_tag {
  padding: 3px 10px;
  background: var(--red);
  color: white;
  position: absolute;
  top: -34px;
  left: 0px;
  z-index: 9;
}
.admin_shared_tag .fas {
  margin-right: 4px;
}

.listing_footer_admin_tools {
  height: 90px;
  width: 100%;
  margin-top: 20px;
}

.admin_links_wrapper {
  width: 734px;
  height: 90px;
  display: block;
  background: white;
  margin: 0 auto;
}
.admin_links_wrapper #mp_pictures_container {
  font-size: 0.8em;
  text-align: center;
  width: 480px;
  margin-right: 10px;
  float: left;
  overflow-x: scroll;
  padding: 0 10px;
  box-sizing: border-box;
  height: 80px;
}
.admin_links_wrapper .clipboard_trigger_btn {
  float: left;
  width: 75px;
  height: 58px;
  margin-top: 16px;
  font-size: 0.8em;
  margin-right: 5px;
}
.admin_links_wrapper .clipboard_trigger_btn .copy_text {
  margin-top: 10px;
}
.admin_links_wrapper .clipboard_copied_btn {
  float: left;
  width: 70px;
  height: 58px;
  margin-top: 16px;
  font-size: 0.8em;
  background: white;
  font-weight: bold;
  text-align: center;
}
.admin_links_wrapper .clipboard_copied_btn .fas {
  color: var(--primary-ui);
  font-size: 1.9em;
  margin-top: 5px;
}

.admin_share_wrapper {
  width: 100%;
  height: 90px;
  display: block;
  background: white;
  text-align: center;
  padding-top: 10px;
  box-sizing: border-box;
  font-size: 0.9em;
}
.admin_share_wrapper .admin_links_copied {
  background: var(--light-green);
  color: var(--green);
  margin: 0 auto 10px auto;
  display: block;
  width: 350px;
  height: 30px;
  line-height: 30px;
}
.admin_share_wrapper .admin_links_copied .fas {
  margin-right: 7px;
}
.admin_share_wrapper .admin_share_explainer {
  height: 30px;
  line-height: 30px;
}
.admin_share_wrapper .admin_share_explainer .admin_share_btn {
  width: 60px;
  height: 30px;
  line-height: 30px;
  margin-left: 10px;
  display: inline-block;
}

@media screen and (min-width: 1000px) {
  .admin_links_wrapper .clipboard_trigger_btn {
    width: 70px;
    height: 58px;
    font-size: 0.7em;
    margin-right: 9px;
  }
  .admin_links_wrapper .clipboard_trigger_btn .copy_text {
    margin-top: 13px;
  }
}
@media (min-width: 1800px) and (min-height: 800px) {
  .admin_links_wrapper {
    width: 964px;
  }
  .admin_links_wrapper .clipboard_trigger_btn {
    width: 80px;
    height: 58px;
    margin-top: 16px;
    font-size: 0.8em;
    margin-right: 9px;
  }
  .admin_links_wrapper .clipboard_trigger_btn .copy_text {
    margin-top: 10px;
  }
  #mp_pictures_container {
    width: 680px !important;
  }
}
/* 3. Map marker helpers :::::::::::::::::::::::::::::::::::::*/
.marker_admin_shared {
  position: absolute;
  width: 14px;
  height: 14px;
  display: block;
  z-index: 3;
  cursor: pointer;
}
.marker_admin_shared .marker_container {
  width: 10px;
  height: 10px;
  background: #4c66a4;
  /*background: #df6767;*/
  border: 2px solid white;
  border-radius: 10px;
  position: relative;
}
.marker_admin_shared .marker_container .marker_pulse, .marker_admin_shared .marker_container .big_marker_pulse, .marker_admin_shared .marker_container .marker_heart, .marker_admin_shared .marker_container .marker_envelope {
  display: none;
}
.marker_admin_shared .marker_container .marker_facebook {
  display: block;
  line-height: 11px;
  color: white;
  font-size: 7px;
  text-align: center;
}

.marker_admin_shared_hover {
  position: absolute;
  width: 20px;
  height: 20px;
  display: block;
  z-index: 3;
  cursor: pointer;
}
.marker_admin_shared_hover .marker_container {
  width: 16px;
  height: 16px;
  background: #4c66a4;
  border: 2px solid white;
  border-radius: 16px;
}
.marker_admin_shared_hover .marker_container .marker_pulse, .marker_admin_shared_hover .marker_container .marker_facebook {
  display: block;
}
.marker_admin_shared_hover .marker_container .marker_facebook {
  display: block;
  line-height: 16px;
  color: white;
  font-size: 10px;
  text-align: center;
  margin-left: -1px;
}
.marker_admin_shared_hover .marker_container .marker_heart, .marker_admin_shared_hover .marker_container .big_marker_pulse, .marker_admin_shared_hover .marker_container .marker_envelope {
  display: none;
}

/* 4. Admin login page :::::::::::::::::::::::::::::::::::::*/
#admin_login_wrapper {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: relative;
  overflow: hidden;
  height: 100%;
  z-index: 99999;
  background: white;
  /*background: linear-gradient(
    to left,
    #cf0921 0, 
    #cf0921 25%,
    #f8f8f8 25%, 
    #f8f8f8 75%, 
    #002153 75%, 
    #002153 ) top no-repeat,
  linear-gradient(
    to right,
    #cf0921 0, 
    #cf0921 25%,
    #f8f8f8 25%, 
    #f8f8f8 75%, 
    #002153 75%, 
    #002153 ) bottom no-repeat,
  linear-gradient(
    to top,
    #cf0921 0, 
    #cf0921 25%,
    #f8f8f8 25%, 
    #f8f8f8 75%, 
    #002153 75%, 
    #002153 ) left no-repeat,
  linear-gradient(
    to bottom,
    #cf0921 0, 
    #cf0921 25%,
    #f8f8f8 25%, 
    #f8f8f8 75%, 
    #002153 75%, 
    #002153 ) right no-repeat;*/
}

.big_admin_login_form {
  height: 395px !important;
}

#admin_login_form {
  width: 330px;
  background-color: white;
  display: block;
  position: fixed;
  text-align: center;
  border-radius: 6px;
  z-index: 10002;
  box-shadow: 0 0 1px #ada067;
  user-select: none;
  padding-bottom: 10px;
  z-index: 3;
}
#admin_login_form .admin_login_logo {
  width: 230px;
  margin: 20px auto 0px auto;
}
#admin_login_form .admin_form_title {
  width: 100%;
  text-align: center;
  display: block;
  color: var(--primary-darkest);
  margin: 0px auto 15px auto;
  letter-spacing: 0.06em;
  font-size: 0.85em;
}
#admin_login_form .admin_login_form .admin_login_row {
  display: block;
  width: 320px;
  margin: 0 auto;
  height: 48px;
  text-align: center;
  position: relative;
}
#admin_login_form .admin_login_form .admin_login_row .fas {
  color: var(--primary-grayer);
  opacity: 0.5;
  position: absolute;
  font-size: 0.8em;
}
#admin_login_form .admin_login_form .admin_login_row .fa-envelope {
  top: 12px;
  left: 25px;
}
#admin_login_form .admin_login_form .admin_login_row .fa-lock {
  top: 12px;
  left: 25px;
}
#admin_login_form .admin_login_form .admin_login_row input[type=email], #admin_login_form .admin_login_form .admin_login_row input[type=password], #admin_login_form .admin_login_form .admin_login_row input[type=text] {
  width: 260px;
  height: 32px;
  line-height: 32px;
  font-size: 1em;
  margin: 0 auto;
  padding-left: 30px;
  border: 1px solid var(--primary-darker-er);
  background: white;
}
#admin_login_form .admin_login_form .admin_login_row input[type=email]:focus, #admin_login_form .admin_login_form .admin_login_row input[type=password]:focus, #admin_login_form .admin_login_form .admin_login_row input[type=text]:focus {
  box-shadow: 0 0 8px var(--primary-ui);
}
#admin_login_form .admin_login_form .admin_login_submit_btn {
  width: 290px;
  height: 36px;
  font-size: 1em;
  margin: 10px auto;
}
#admin_login_form .admin_login_footer_info {
  cursor: default;
}
#admin_login_form .admin_login_footer_info .admin_login_error_container {
  float: left;
  text-align: center;
  width: 100%;
}
#admin_login_form .admin_login_footer_info .admin_login_error_container .admin_login_error {
  background: var(--lightest-red);
  color: var(--red-error);
  margin: 10px auto;
  padding: 8px 10px;
  width: 290px;
  box-sizing: border-box;
  font-size: 0.8em;
}
#admin_login_form .admin_login_footer_info .admin_login_error_container .admin_login_error ul {
  margin: 0;
}
#admin_login_form .admin_login_footer_info .admin_login_request_info {
  font-family: Consolas;
  font-size: 0.75em;
  margin: 0 auto;
  word-break: break-all;
  max-width: 300px;
}
#admin_login_form .admin_login_footer_info .admin_login_request_info b {
  color: #046931;
  padding: 0 2px;
  font-family: Verdana;
}
#admin_login_form .admin_login_footer_info .admin_login_request_warning {
  font-family: Consolas;
  font-size: 0.9em;
  font-weight: bold;
  margin: 1px auto 3px auto;
  color: red;
}
#admin_login_form .admin_login_footer_info .admin_login_build_info {
  font-family: Consolas;
  font-size: 0.6em;
  padding: 0 10px;
  font-weight: bold;
  margin-top: 5px;
  text-decoration: underline;
  text-decoration-color: #046931;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::: ADS HELPERS ::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* hide traffective 'Publicité' labels */
.trf-declaration-container::before {
  display: none !important;
}

/* Set skycraper slot to fixed position when user scrolls */
.sticky_skyscraper_profiles_slot {
  top: 110px !important;
  position: fixed;
  right: 0;
  box-sizing: border-box;
  background: transparent !important;
}

.ad_test_slot_layout {
  background: gray;
  color: white;
  font-size: 1.4em;
  letter-spacing: 0.25em;
  font-style: italic;
  margin: 0 auto;
  text-transform: uppercase;
}

/* Slots will be injected dynamically by client js app in those empty containers */
#ad_slot_container_Rectangle_1 {
  width: 300px;
  height: 250px;
  margin: 0 auto;
}

@media screen and (max-width: 1280px) {
  #ad_slot_container_Rectangle_1 {
    width: 250px;
    height: 250px;
  }
}
#messaging_slot_placeholder {
  width: 300px;
  height: 250px;
}

#ad_slot_container_Skyscraper,
#ad_slot_container_HalfpageAd {
  max-width: 300px;
  max-height: 600px;
  display: block;
}

.ad_slot_no_margin {
  margin-top: -50px !important;
}

.skyscraper_ad_placeholder {
  width: 300px;
  height: 250px;
  margin: 0 auto;
}

.sticky_ad_slot {
  top: 190px !important;
  position: fixed;
  right: 0;
  box-sizing: border-box;
  background: transparent !important;
}

#ad_slot_container_Footer_1 {
  max-height: 250px;
  margin: 0 auto;
}

/* These ones are the containers of ad_slot_containers */
#home_traffective_billboard_4_container {
  max-width: 970px;
  min-width: 728px;
  display: block;
  margin: 0 auto 40px auto;
  text-align: center;
}

#home_traffective_footer_1_container {
  display: block;
  max-width: 970px;
  margin: 50px auto 40px auto;
  text-align: center;
}

.traffective_billboard_label {
  color: rgba(1, 1, 1, 0.85);
  text-align: center;
  font-weight: 600;
  width: 100%;
  letter-spacing: 0.4em;
  font-size: 0.7em;
  line-height: 30px;
  height: 28px;
  text-transform: uppercase;
}

.searching_traffective_interstitial_container, .offering_traffective_interstitial_container {
  width: 728px;
  min-height: 10px;
  margin: 0 auto;
}

.searching_traffective_interstitial, .offering_traffective_interstitial {
  width: 728px;
  min-height: 110px;
  margin: -5px auto 20px;
  text-align: center;
}
.searching_traffective_interstitial label, .offering_traffective_interstitial label {
  color: var(--primary-darkest);
  text-align: center;
  font-weight: 600;
  width: 728px;
  letter-spacing: 0.4em;
  line-height: 20px;
  height: 20px;
  font-size: 0.8em;
  display: block;
  text-transform: uppercase;
}
.searching_traffective_interstitial .interstitial_Billboard_1, .offering_traffective_interstitial .interstitial_Billboard_1 {
  width: 728px;
  min-height: 90px;
  text-align: center;
}

.offering_traffective_interstitial {
  margin: 0px auto 6px auto !important;
}

@media (min-width: 1800px) and (min-height: 800px) {
  .searching_traffective_interstitial, .offering_traffective_interstitial {
    width: 970px;
    margin: 0px auto 30px auto;
    min-height: 115px;
  }
  .searching_traffective_interstitial label, .offering_traffective_interstitial label {
    font-size: 1em;
    height: 25px;
    line-height: 25px;
    text-transform: uppercase;
  }
  .searching_traffective_interstitial .interstitial_Billboard_1, .offering_traffective_interstitial .interstitial_Billboard_1 {
    max-width: 970px;
  }
  .offering_traffective_interstitial {
    margin: 3px auto 10px auto !important;
  }
}
@media screen and (max-width: 736px) {
  .searching_traffective_interstitial {
    width: 468px;
    height: 85px;
    margin: -10px auto 20px auto;
  }
  .searching_traffective_interstitial label {
    font-size: 0.75em;
    height: 25px;
    line-height: 25px;
  }
  .searching_traffective_interstitial .interstitial_Billboard_1 {
    width: 468px;
    height: 60px;
  }
}
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::: MAIN HEADER ::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::: 1. Header layout ::::::::::::::::::::::::::::::::::*/
#main_header {
  position: relative;
  height: 45px;
  width: 100%;
  background: var(--navbar-green);
  background: url(/assets/backgrounds/header_bg-a8ad423057c9fdfb0f963772d8bbc9a7796d490a8e67e3f2b71c53c410632332.png);
  /*background: rgb(69,100,228);
  background: linear-gradient(90deg, rgba(69,100,228,1) 0%, rgba(15,192,167,1) 100%);*/
  padding: 0;
  margin: 0;
}

/*::::::::::::::::::::::::::::::::: 2. Header left block (logo) ::::::::::::::::::::::::::::::*/
#main_header_logo {
  width: 180px;
  height: 44px;
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
  display: table;
  padding: 0 15px;
}
#main_header_logo a {
  display: table-cell;
  vertical-align: middle;
  padding-top: 4px;
}
#main_header_logo a img {
  width: 200px;
  height: 19px;
}

/*:::::::::::::::::::::::::::::::::: 4. Header main navigation :::::::::::::::::::::::::::::::*/
#main_header_navigation {
  height: 44px;
  padding: 0px;
  display: block;
  margin: 0;
  float: right;
  /* WARNING: as the number of nav items and text width varies greatly 
     between logged in & logged out navs, we need additional rules 
     to differentiate their styling and keep a nice layout on all devices.
     (main style is for 1366px width and above, below this we use media queries) */
}
#main_header_navigation ul {
  height: 100%;
  margin: 0;
  padding: 0;
}
#main_header_navigation ul li {
  list-style: none;
  display: block;
  float: left;
  height: 100%;
  cursor: pointer;
  box-sizing: border-box;
  transition: 0.2s;
  outline: none;
  position: relative;
  user-select: none !important;
}
#main_header_navigation ul li:hover {
  background: var(--navbar-green-hover);
}
#main_header_navigation ul li:active {
  background: var(--navbar-green-active);
  outline: none;
  box-shadow: none;
}
#main_header_navigation ul li a {
  display: inline-block;
  width: 100%;
  height: 100%;
  text-align: center;
  position: relative;
}
#main_header_navigation ul li a .nav_icon {
  vertical-align: middle;
  color: white;
}
#main_header_navigation ul li a .nav_label {
  color: white;
}
#main_header_navigation ul li a .nav_circle_notice {
  height: 22px;
  display: inline-block;
  padding: 0 8px;
  border-radius: 11px;
  font-size: 11px;
  margin-left: 6px;
  line-height: 22px;
  text-align: center;
  font-weight: bold;
  animation: pop-in 0.3s;
}
#main_header_navigation ul li a .unread_messages_count {
  background-color: #D86437;
  color: white;
}
#main_header_navigation ul li a .listing_count {
  background-color: var(--primary-fairest-est);
  color: var(--primary-darker);
}
#main_header_navigation ul li .header_counter {
  background-color: #D0714F;
  font-size: 13px;
  text-align: center;
  line-height: 22px;
  color: white;
  border-radius: 11px;
  margin-left: 5px;
  display: inline-block;
  padding: 0 8px;
}
#main_header_navigation ul li .main_nav_dropdown {
  background: #fff;
  border: 1px solid #d6d6d6;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
  color: #333;
  position: absolute;
  z-index: 103;
  padding: 6px 0;
  margin: 3px 0 0 45px;
  box-sizing: border-box;
  right: 0;
  top: 47px;
  border-radius: 5px;
}
#main_header_navigation ul li .main_nav_dropdown a {
  color: #404040;
  text-decoration: none;
  padding: 4px 8px;
  display: block;
  text-align: left;
  box-sizing: border-box;
  background: none;
  border: none;
  font-size: 1rem;
  line-height: 1.3em !important;
  width: 100%;
  cursor: pointer;
  text-shadow: none;
}
#main_header_navigation ul li .main_nav_dropdown a:hover {
  background-color: var(--primary-gray);
  color: var(--primary-darkest);
}
#main_header_navigation ul li .main_nav_dropdown a.nav_dropdown_active {
  background-color: var(--primary-gray);
  color: black;
}
#main_header_navigation ul li#nav_locale_item {
  display: inline-block;
  position: relative;
  margin: 0;
  cursor: pointer;
  color: white;
  padding: 0 20px;
  line-height: 46px;
  width: 100px;
}
#main_header_navigation ul li#nav_locale_item img {
  height: 13px;
  margin-right: 5px;
}
#main_header_navigation ul li#nav_locale_item .fa-caret-down, #main_header_navigation ul li#nav_locale_item .fa-caret-up {
  margin-left: 6px;
  font-size: 1.1em;
}
#main_header_navigation ul li#nav_locale_item #nav_locale_dropdown {
  width: 190px;
}
#main_header_navigation ul li#nav_locale_item #nav_locale_dropdown .nav_locale_active {
  background-color: var(--primary-fairest-est) !important;
  color: black !important;
}
#main_header_navigation ul.online_main_header li {
  padding: 0 30px;
  font-size: 0.95em;
}
#main_header_navigation ul.online_main_header li a {
  line-height: 46px;
}
#main_header_navigation ul.online_main_header li a .nav_icon {
  font-size: 1.1em;
  margin-right: 0.55em;
}
#main_header_navigation ul.online_main_header li a img.nav_icon {
  width: 34px;
  margin-top: -2px;
  margin-right: 4px;
}
#main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label {
  display: flex;
  align-items: center;
}
#main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label #nav_user_avatar {
  width: 35px;
  height: 28px;
  display: inline-block;
  vertical-align: middle;
  margin: 1px 8px 0 0;
  border-radius: 5px;
}
#main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label #nav_user_name {
  color: white;
  margin-right: 8px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 130px;
  display: inline-block;
  padding-top: 2px;
}
#main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label .fa-caret-down, #main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label .fa-caret-up {
  color: white;
  font-size: 1.1em;
}
#main_header_navigation ul.online_main_header li#nav_user_item #nav_user_dropdown {
  width: 190px;
}
#main_header_navigation ul.offline_main_header li {
  padding: 0 30px;
  font-size: 0.95em;
}
#main_header_navigation ul.offline_main_header li a {
  line-height: 46px;
}
#main_header_navigation ul.offline_main_header li a .nav_icon {
  font-size: 1.1em;
  margin-right: 0.55em;
}
#main_header_navigation ul.offline_main_header li a img.nav_icon {
  width: 34px;
  margin-top: -2px;
  margin-right: 4px;
}

.active_account_tab_horizontal {
  background: var(--navbar-green-active) !important;
}

/* A verbose mess of media queries will follow,
   but we need to ensure a nice layout on all resolutions/devices
   for both logged in & logged out navigations */
@media screen and (max-width: 1420px) {
  #main_header_navigation ul.online_main_header li {
    padding: 0 20px;
    font-size: 0.9em;
  }
  #main_header_navigation ul.online_main_header li#nav_locale_item {
    padding: 0 15px;
    width: 90px;
  }
}
@media screen and (max-width: 1260px) {
  #main_header_navigation ul.online_main_header li {
    padding: 0 15px;
    font-size: 0.85em;
  }
  #main_header_navigation ul.online_main_header li#nav_locale_item {
    padding: 0 10px;
    width: 80px;
  }
}
@media screen and (max-width: 1200px) {
  #main_header_navigation ul.offline_main_header li {
    padding: 0 20px;
    font-size: 0.9em;
  }
  #main_header_navigation ul.offline_main_header li#nav_locale_item #nav_locale_dropdown {
    width: 140px;
  }
}
@media screen and (max-width: 1170px) {
  #main_header_navigation ul.online_main_header li {
    padding: 0 10px;
    font-size: 0.8em;
  }
  #main_header_navigation ul.online_main_header li#nav_locale_item {
    padding: 0 6px;
    width: 72px;
  }
  #main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label #nav_user_name {
    max-width: 90px;
  }
  #main_header_navigation ul.online_main_header li#nav_user_item #nav_user_dropdown {
    width: 170px;
  }
  #main_header_navigation ul.online_main_header li#nav_locale_item #nav_locale_dropdown {
    width: 140px;
  }
  #main_header_navigation ul.online_main_header li .main_nav_dropdown {
    padding: 4px 0;
  }
  #main_header_navigation ul.online_main_header li .main_nav_dropdown a {
    padding: 6px 8px 6px 8px;
    font-size: 0.85rem;
    line-height: 1.2em !important;
  }
}
@media screen and (max-width: 1100px) {
  #main_header_navigation ul.offline_main_header li {
    padding: 0 10px;
  }
  #main_header_navigation ul.offline_main_header li#nav_locale_item {
    padding: 0 10px;
    width: 80px;
  }
}
@media screen and (max-width: 1024px) {
  #main_header_navigation ul.offline_main_header li a .nav_icon {
    display: none;
  }
  #main_header_navigation ul.online_main_header li#guides_link_li {
    display: none;
  }
  #main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label #nav_user_avatar {
    width: 30px;
    height: 24px;
  }
  #main_header_navigation ul.online_main_header li#nav_user_item a#nav_user_label #nav_user_name {
    max-width: 70px;
  }
  #main_header_navigation ul.online_main_header li#nav_locale_item {
    width: 65px;
  }
}
@media screen and (max-width: 910px) {
  #main_header_navigation ul.offline_main_header li {
    padding: 0 6px;
    font-size: 0.8em;
  }
}
@media screen and (max-width: 840px) {
  #main_header_navigation ul.online_main_header li a .nav_icon {
    display: none;
  }
}
@media screen and (max-width: 820px) {
  #main_header_navigation ul.offline_main_header li#guides_link_li {
    display: none;
  }
}
.account_dropdown_z {
  z-index: 2;
}

#offering_link_dropdown {
  width: 210px;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::: SASS PARTNERS :::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.partner_locservice {
  color: #0089bf !important;
}
.partner_locservice .fas {
  color: #0089bf !important;
}

.partner_locservice_mirror {
  color: white !important;
  background-color: #0089bf !important;
}
.partner_locservice_mirror .fas {
  color: white !important;
}

.partner_colocatere {
  color: #e2304d !important;
}
.partner_colocatere .fas {
  color: #e2304d !important;
}

.partner_colocatere_mirror {
  color: white !important;
  background-color: #e2304d !important;
}
.partner_colocatere_mirror .fas {
  color: white !important;
}

.partner_cheznestor {
  color: #012699 !important;
}
.partner_cheznestor .fas {
  color: #012699 !important;
}

.partner_cheznestor_mirror {
  color: white !important;
  background-color: #012699 !important;
}
.partner_cheznestor_mirror .fas {
  color: white !important;
}

.partner_nestpick {
  color: #eb7b59 !important;
}
.partner_nestpick .fas {
  color: #eb7b59 !important;
}

.partner_nestpick_mirror {
  color: white !important;
  background-color: #eb7b59 !important;
}
.partner_nestpick_mirror .fas {
  color: white !important;
}

.partner_flatlooker {
  color: #ff4706 !important;
}
.partner_flatlooker .fas {
  color: #ff4706 !important;
}

.partner_flatlooker_mirror {
  background-color: #ff4706 !important;
  color: white !important;
}
.partner_flatlooker_mirror .fas {
  color: white !important;
}

/* 4. Shared modals rules ---*/
/*---------------------------*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::: LOGIN MODAL ::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* 1. General layout ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
.login_modal_overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10001;
  background-color: rgba(7, 10, 16, 0.8);
}

.login_modal {
  width: 470px;
  height: 390px;
  background-color: white;
  display: block;
  position: fixed;
  left: 50%;
  top: 50%;
  margin-left: -235px;
  margin-top: -195px;
  text-align: center;
  border-radius: 6px;
  z-index: 10002;
}

.big_login_modal {
  height: 480px !important;
  margin-top: -240px !important;
}

.login_static_table {
  display: table;
  width: 100%;
  height: 100%;
}

.login_static_cell {
  display: table-cell;
  vertical-align: middle;
}

.login_static {
  width: 460px;
  height: 393px;
  background-color: white;
  display: block;
  text-align: center;
  border-radius: 6px;
  z-index: 10002;
  margin: 30px auto;
  padding-top: 20px;
}
.login_static .login_btn {
  margin: 10px auto 0 auto;
}
.login_static img.login_static_logo {
  width: 250px;
  margin: 0px 0 7px 0;
}

.big_login_static {
  height: 447px !important;
}

.login_container {
  padding-top: 25px;
}

.lost_password_container {
  padding-top: 25px;
}

.login_warning_container {
  display: block;
  margin: 0px auto -4px auto;
  width: 300px;
  font-size: 0.9em;
}
.login_warning_container .login_warning {
  padding: 10px;
  background: var(--ultra-light-red);
}

.login_btn {
  color: white;
  width: 333px;
  height: 46px;
  line-height: 46px;
  font-size: 1em;
  margin: 33px auto 0px auto;
  position: relative;
  text-align: center;
  cursor: pointer;
  overflow: hidden;
  border-radius: 4px;
  text-shadow: 1px 1px 8px rgba(5, 11, 34, 0.4);
  position: relative;
  vertical-align: top;
  transition: 0.2s;
}
.login_btn:active {
  top: 1px;
  outline: none;
  box-shadow: none;
  border: none;
}
.login_btn .fas {
  font-size: 1.4em;
  position: absolute;
  left: 0px;
  top: 0px;
  height: 44px;
  line-height: 46px;
  width: 50px;
  display: block;
  float: left;
}
.login_btn .login_btn_text {
  height: 100%;
  display: block;
  float: left;
  padding-left: 65px;
  text-align: left;
}

/* Omniauth provider buttons */
.login_form_separator {
  font-weight: bold;
  height: 40px;
  line-height: 40px;
}

.login_omniauth_row .button_to {
  display: inline-block;
}

.login_modal_omniauth_btn {
  height: 42px;
  box-sizing: border-box;
  line-height: 40px;
  font-size: 1rem;
  padding: 0 10px 0 0;
  text-align: center;
  cursor: pointer;
  overflow: hidden;
  border-radius: 4px;
  position: relative;
  transition: 0.2s;
  border: none;
  text-shadow: none !important;
  margin-right: 5px;
}
.login_modal_omniauth_btn:active {
  top: 1px;
  outline: none;
  box-shadow: none;
  border: none;
}
.login_modal_omniauth_btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.login_modal_omniauth_btn.form_apple_btn {
  height: 41px;
}
.login_modal_omniauth_btn .fas {
  width: 30px;
  font-size: 1.1em;
  position: absolute;
  left: 0px;
  top: 0px;
  height: 40px;
  line-height: 41px;
  display: block;
  float: left;
  background: none;
}
.login_modal_omniauth_btn .login_btn_text {
  height: 100%;
  padding-left: 30px;
  text-align: left;
  font-size: 0.95em;
}

/* 2. Login form ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
.login_form_container {
  background: var(--btn-white-hover);
  width: 333px;
  margin: 0 auto;
  padding-top: 15px;
  border-radius: 5px;
}
.login_form_container .login_form {
  position: relative;
}
.login_form_container .login_form .login_row {
  display: block;
  width: 100%;
  height: 40px;
  text-align: center;
  position: relative;
}
.login_form_container .login_form .login_row .fas {
  color: var(--green);
  opacity: 0.7;
  position: absolute;
}
.login_form_container .login_form .login_row .fa-envelope {
  top: 8px;
  left: 38px;
}
.login_form_container .login_form .login_row .fa-lock {
  top: 8px;
  left: 41px;
}
.login_form_container .login_form .login_row input[type=email], .login_form_container .login_form .login_row input[type=password], .login_form_container .login_form .login_row input[type=text] {
  width: 240px;
  height: 30px;
  line-height: 30px;
  font-size: 0.9em;
  margin: 0 auto;
  padding-left: 30px;
  border: 1px solid var(--green-border);
  background: white;
}
.login_form_container .login_form .login_row input[type=email]:focus, .login_form_container .login_form .login_row input[type=password]:focus, .login_form_container .login_form .login_row input[type=text]:focus {
  box-shadow: 0 0 8px var(--green);
}
.login_form_container .login_form .login_row .login_submit_btn {
  width: 240px;
  height: 36px;
  background-color: var(--green);
  border: 1px solid white;
  color: white;
  font-size: 1em;
  cursor: pointer;
  outline: none;
  position: relative;
  vertical-align: top;
  box-shadow: inset 0 -2px var(--green-border);
}
.login_form_container .login_form .password_forgotten {
  width: 100%;
  display: block;
  text-align: center;
  font-size: 1em;
  color: var(--green-border);
  padding-bottom: 10px;
  padding-top: 4px;
  font-size: 0.9em;
  cursor: pointer;
}
.login_form_container .login_form .remember_row {
  display: block;
  width: 100%;
  height: 26px;
  font-size: 0.9em;
  text-align: center;
  position: relative;
  color: var(--primary-darkest);
}
.login_form_container .login_devise_errors_wrapper {
  background: var(--lightest-red);
  color: var(--red-error);
  width: 240px;
  margin: 0 auto 10px auto;
  padding: 5px 7px 6px 7px;
  font-size: 0.8em;
  line-height: 1.2em;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
/*::::::::::::::::::::::::::::::::::: SIGNUP MODAL ::::::::::::::::::::::::::::::::::::: */
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
/* 1. General layout ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
.signup_overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10001;
  background-color: rgba(7, 16, 14, 0.7);
}

.signup_modal {
  width: 500px;
  height: 380px;
  background-color: white;
  display: block;
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 10002;
  text-align: center;
  margin-left: -230px;
  margin-top: -190px;
}
.signup_modal .signup_modal_close {
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 27px;
  color: var(--primary-ui);
}
.signup_modal .signup_modal_logo {
  width: 230px;
  margin: 20px auto 10px auto;
}
.signup_modal .signup_description {
  line-height: 1.35em;
  font-size: 0.95em;
  width: 390px;
  display: block;
  margin: 0px auto 15px auto;
}
.signup_modal .signup_description .signup_catchphrase {
  color: var(--primary-darkest);
  margin: 7px auto 10px auto;
  display: block;
  font-weight: bold;
}
.signup_modal .signup_description ul {
  text-align: left;
  list-style: none;
  margin: 0;
}
.signup_modal .signup_description ul li {
  padding-left: 1em;
  text-indent: -0.7em;
}
.signup_modal .signup_description ul li:before {
  content: "• ";
  color: var(--primary-color);
  font-size: 1.3em;
}
.signup_modal .signup_description ul.signup_description_searching {
  padding-left: 35px;
}
.signup_modal .signup_description ul.signup_description_offering {
  padding-left: 15px;
}
.signup_modal .signup_btn {
  width: 330px;
  height: 48px;
  line-height: 46px;
  margin: 0px auto;
  text-align: center;
  cursor: pointer;
}
.signup_modal .signup_btn.btn_main .fas {
  background: var(--primary-fairer);
}
.signup_modal .signup_btn.btn_white .fas {
  background: var(--btn-white-hover);
}
.signup_modal .signup_btn .fas {
  font-size: 1.3em;
  height: 46px;
  line-height: 46px;
  width: 60px;
  float: left;
  display: block;
  border-top-left-radius: 4px;
}
.signup_modal .signup_btn .signup_text {
  height: 100%;
  display: block;
  text-align: center;
}
.signup_modal .signup_btn_offering {
  width: 330px !important;
}
.signup_modal .signup_separator {
  height: 40px;
  line-height: 40px;
  font-size: 0.95em;
  font-weight: bold;
  margin-top: 5px;
}

/* 5. Current page rules ---*/
/*--------------------------*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::: SEARCHING ::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* Search filters horizontal bar layout */
section#search_menu {
  height: 57px;
  width: 100%;
  position: relative;
  background: white;
  display: flex;
  line-height: 55px;
  /*z-index: 2;*/
}
section#search_menu #search_filters_container {
  flex-grow: 1;
  min-width: 0;
  /*opacity: 0;
  transition: opacity 300ms ease-in-out;*/
  overflow: hidden;
  position: relative;
}
section#search_menu #search_tools_container {
  flex-shrink: 0;
  padding: 0 10px;
}
section#search_menu #search_filters_container_cache {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  background-color: rgba(255, 255, 255, 0.7);
  z-index: 1;
  cursor: not-allowed;
}

.sticky_search_menu {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  border-bottom: 2px solid var(--btn-white-border);
  box-sizing: border-box;
}

#map_content {
  position: absolute;
  top: 102px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  min-width: 760px;
  margin: 0;
  overflow: hidden;
  /* for professionals accounts iframe only */
}
#map_content.iframe_map_content {
  top: 57px;
  min-width: 320px;
}

#map_search_container {
  width: 100%;
  height: 100%;
  position: relative;
}

#map_app_container {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 502px;
  background-color: #eaeaea;
  z-index: 0;
}
#map_app_container .page-spinner {
  position: absolute !important;
  top: 0;
}
#map_app_container #map {
  width: 100%;
  height: 100%;
}

/* will only apply to professional accounts iframe */
.iframe_map_app_container {
  right: 0 !important;
}

@media screen and (max-width: 1280px) {
  section#search_menu {
    height: 52px;
    line-height: 50px;
  }
  section#search_menu #search_tools_container {
    padding: 0 6px;
  }
  #map_content {
    top: 97px;
    /* for professionals accounts iframe only */
  }
  #map_content.iframe_map_content {
    top: 52px;
  }
}
@media screen and (min-width: 1500px) {
  #map_app_container {
    right: 762px;
  }
}
@media screen and (max-width: 850px) {
  #map_app_container {
    right: 0 !important;
  }
}
/* Search filters right block and buttons (my favorites & display mode) */
.search_tool {
  height: 36px;
  margin: 0 8px 0 0;
  display: inline-block;
  vertical-align: middle;
}
.search_tool .tool_btn {
  border-radius: 4px;
  display: inline-block;
  font-size: 0.9rem;
  height: 36px;
  line-height: 36px;
  margin: 0;
  outline: 0;
  padding: 0 0.45rem 0 0.5rem;
  text-align: center;
  vertical-align: top;
  cursor: pointer;
  box-sizing: border-box;
  outline: none;
  background: white;
  color: var(--btn-white-text);
  border: 1px solid #cdd1d4;
}
.search_tool .tool_btn:hover {
  background: var(--btn-white-hover);
  border: 1px solid #cdd1d4;
}
.search_tool .tool_btn:active {
  background: #d9dde0;
  border: 1px solid #b2b8bc;
}
.search_tool .tool_btn .fas, .search_tool .tool_btn .far {
  margin-left: 5px;
}
.search_tool #show_favorites_btn .fas {
  margin-right: 4px;
  margin-left: 0px;
  color: var(--red);
}
.search_tool #display_mode_switcher_container {
  cursor: pointer;
  -webkit-touch-callout: none;
  user-select: none;
  padding: 0;
  border: none;
}
.search_tool #display_mode_switcher_container .display_mode_switcher {
  width: 80px;
  float: left;
  height: 36px;
  background: white;
  color: var(--btn-white-text);
  border: 1px solid #cdd1d4;
  cursor: pointer;
}
.search_tool #display_mode_switcher_container .display_mode_switcher .fas {
  margin-right: 6px;
}
.search_tool #display_mode_switcher_container .display_mode_switcher:hover {
  background: var(--btn-white-hover);
  border: 1px solid #cdd1d4;
}
.search_tool #display_mode_switcher_container .display_mode_switcher:active {
  background: #d9dde0;
  border: 1px solid #b2b8bc;
}
.search_tool #display_mode_switcher_container .mode_switcher_left {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-right: none !important;
}
.search_tool #display_mode_switcher_container .mode_switcher_right {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

@media screen and (max-width: 1280px) {
  .search_tool {
    height: 32px;
    margin: 0 5px 0 0;
  }
  .search_tool .tool_btn {
    height: 32px;
    line-height: 32px;
    padding: 0 0.35rem 0 0.4rem;
    font-size: 0.85rem;
  }
  .search_tool .tool_btn .fas {
    margin-left: 3px;
  }
  .search_tool #display_mode_switcher_container {
    width: 145px;
  }
  .search_tool #display_mode_switcher_container .display_mode_switcher {
    width: 70px;
    height: 32px;
  }
  #list_ranking_btn {
    height: 30px;
    line-height: 30px;
    margin: -3px 0 0 5px;
  }
  #list_ranking_btn select {
    height: 30px;
    line-height: 30px;
    font-size: 0.9em;
  }
  #list_ranking_btn .fas {
    margin-left: 5px;
    right: 10px;
    top: 8px;
  }
}
/* List search skeleton & visible ui when direct listing url (searching modal regular bundles) */
#list_content {
  margin: 0px auto;
  width: 100%;
  position: relative;
}

#list_results_cell {
  width: calc(100% - 330px);
  text-align: center;
  float: left;
  position: relative;
}

#listings_container_cache {
  background-color: white;
  opacity: 0.5;
  position: fixed;
  z-index: 1;
  top: 97px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
  text-align: center;
  height: 100%;
}
#listings_container_cache.iframe_listings_container_cache {
  top: 52px;
}

.listings_container_cache_scrolled {
  top: 53px !important;
}

@media screen and (min-width: 1280px) {
  #listings_container_cache {
    top: 103px;
  }
  #listings_container_cache.iframe_listings_container_cache {
    top: 57px;
  }
  .listings_container_cache_scrolled {
    top: 57px !important;
  }
  #listings_container {
    width: 970px;
  }
}
/* As Skyscraper is hidden on tablets/narrow viewports */
@media screen and (max-width: 1080px) {
  #list_results_cell {
    width: 100% !important;
  }
}
/* Adblocker enabled horizontal notice */
#list_search_adblocker_notice {
  text-align: center;
  display: none;
}
#list_search_adblocker_notice .ad_slot_container_fallback_notice {
  background: var(--lightest-green);
  color: var(--primary-darker-er);
  font-size: 0.75em;
  display: inline-block;
  margin: 15px auto 0px auto;
  box-sizing: border-box;
  padding: 0.7em 1em;
  border-radius: 5px;
  max-width: 90%;
}

/* Toolbox with counter and sorting filter */
#list_toolbox {
  color: var(--btn-white-text);
  width: 622px;
  min-height: 50px;
  box-sizing: border-box;
  padding: 0;
  text-align: left;
  margin: 15px auto 15px auto;
  font-size: 0.9em;
  opacity: 0;
  display: table;
}
#list_toolbox #list_page_title {
  margin: 0;
  user-select: none;
  font-weight: normal;
  font-size: 1.1em;
  line-height: 1.2em;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  box-sizing: border-box;
  padding: 0 10px 0 0px;
  width: 400px;
}
#list_toolbox #list_page_title span {
  color: var(--primary-darkest);
  font-weight: bold;
}
#list_toolbox #list_page_title b {
  color: black;
}
#list_toolbox #change_search_area {
  line-height: 24px;
  font-size: 1em;
  float: right;
  position: relative;
  text-align: left;
  width: 213px;
  height: 24px;
  margin: 2px 9px;
}
#list_toolbox #change_search_area i {
  font-size: 1.2em;
  margin: 0 5px 0 7px;
}
#list_toolbox #sorting_container {
  display: table-cell;
  vertical-align: middle;
}
#list_toolbox #sorting_container #sorting_list_label {
  display: inline-block;
  line-height: 50px;
  margin-right: 5px;
  user-select: none;
}
#list_toolbox #sorting_container #list_ranking_btn {
  height: 36px;
  line-height: 36px;
  font-weight: 400;
  user-select: none;
}
#list_toolbox #sorting_container #list_ranking_btn select {
  height: 36px;
  line-height: 38px;
  font-weight: 400;
  padding-right: 10px;
  min-width: 240px;
  font-size: 1em;
}
#list_toolbox #sorting_container #list_ranking_btn .fas {
  position: absolute;
  right: 12px;
  top: 11px;
}

@media (min-width: 1800px) and (min-height: 800px) {
  #list_toolbox {
    width: 822px;
    line-height: 60px;
    height: 62px;
    font-size: 1.1em;
    top: -60px;
  }
  #list_toolbox #list_page_title {
    line-height: 1.3em;
    width: 540px;
    padding: 0 20px 0 0px;
  }
  #list_toolbox #sorting_container #sorting_list_label {
    line-height: 64px;
  }
  #list_toolbox #sorting_container #list_ranking_btn {
    height: 40px;
    line-height: 40px;
    font-weight: 400;
    margin-top: -6px;
  }
  #list_toolbox #sorting_container #list_ranking_btn select {
    height: 40px;
    line-height: 40px;
    font-weight: 400;
    padding-right: 10px;
    min-width: 280px;
  }
  #list_toolbox #sorting_container #list_ranking_btn .fas {
    right: 12px;
    top: 11px;
  }
  #list_toolbox #list_toolbox_mode {
    width: 160px;
    height: 32px;
    line-height: 32px;
    margin-left: 15px;
  }
  #list_toolbox #list_toolbox_mode .sidebar_switcher {
    width: 78px;
  }
  #list_toolbox #list_toolbox_mode .fas {
    right: 11px;
    top: 11px;
  }
}
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::: SEARCH & OFFER FILTERS COMPONENTS :::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/* 0. State class helpers ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.active_filter {
  background: var(--btn-white-hover) !important;
}

.missing_filter, input.missing_filter {
  background: var(--light-red) !important;
  color: var(--red-error) !important;
}

/* 1. Container layout :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.visible_overflow {
  overflow: visible !important;
}

.offer_filters_component {
  width: 100%;
  display: block;
  background-color: white;
  transition: all 0.4s ease;
}

#offer_filters_container_cache {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  background-color: rgba(255, 255, 255, 0.7);
  z-index: 1;
  cursor: not-allowed;
}

/* 2. Search filter layout ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.search_filter_component {
  vertical-align: top;
  display: inline-block;
}

.search_filter {
  min-height: 36px;
  padding-right: 8px;
  display: inline-block;
  position: relative;
  vertical-align: top;
  /* important to avoid overflow issues
     with sidebar ui & other filters */
  /*z-index: 3;*/
}
.search_filter .search_filter_input {
  box-sizing: border-box;
  font-weight: 400;
  padding: 0.5em 0.3em 0.5em 0.8em;
  border-radius: 4px;
  border: 1px solid #cdd1d4 !important;
  transition: border 0.2s;
  height: 36px;
  font-size: 14px;
}
.search_filter .search_filter_btn {
  background-color: white;
  color: var(--btn-white-text);
  border: 1px solid #cdd1d4;
  border-radius: 4px;
  display: inline-block;
  font-size: 0.9rem;
  height: 36px;
  line-height: 36px;
  margin: 0;
  outline: 0;
  padding: 0 0.45rem 0 0.5rem;
  text-align: center;
  transition: background-color 0.15s ease-in-out;
  vertical-align: middle;
  cursor: pointer;
  box-sizing: border-box;
  position: relative;
}
.search_filter .search_filter_btn .filter_label_separator {
  margin: 0 -3px;
}
.search_filter .search_filter_btn .fas {
  margin-left: 5px;
  font-size: 0.8rem;
}
.search_filter .search_filter_btn:hover {
  background-color: var(--btn-white-hover);
  border: 1px solid #cdd1d4;
}
.search_filter .search_filter_btn:active {
  background: #d9dde0;
  border: 1px solid #b2b8bc;
}
.search_filter .search_filter_select {
  position: relative;
  /*width: 180px;*/
  padding: 0 !important;
  height: 36px !important;
  line-height: 36px !important;
}
.search_filter .search_filter_select select {
  background: transparent;
  font-size: 0.9rem;
  height: 36px;
  line-height: 36px;
  padding: 0 1.55rem 0 0.5rem;
  margin: 0;
  outline: 0;
  border: none;
  color: var(--btn-white-text) !important;
  cursor: pointer;
  box-sizing: border-box;
  /* Vendor prefixes still needed as of 2023-05
     https://caniuse.com/?search=appearance */
  -webkit-appearance: none; /* for all IE (not -ms- here read link above) */
  -moz-appearance: none; /* for firefox < 80 */
  appearance: none; /* ok for most browsers now */
}
.search_filter .search_filter_select select option {
  padding: 0.3em 1em;
}
.search_filter .search_filter_select .fas {
  float: right;
  margin: 10px 12px 0 0;
}

.search_filter_dropdown {
  white-space: nowrap;
  padding: 10px;
  border: 1px solid #e8e9ea;
  border-radius: 4px;
  background: white;
  position: absolute;
  top: 54px;
  left: 0;
  z-index: 999999;
  box-sizing: border-box;
  min-height: 78px;
}
.search_filter_dropdown:before {
  content: "";
  display: table;
}

.search_filter_dropdown_label {
  font-size: 0.75rem;
  text-transform: uppercase;
  line-height: 1rem;
  font-weight: bold;
  color: var(--regular-gray);
  margin-bottom: 3px;
}

.last_dropdown_label {
  margin-top: 8px;
}

/* chart js container will be displayed & managed by js in map mode */
#rent_range_chart_container, #hidden_rent_range_chart_container {
  display: none;
}

.search_filter_dropdown #rent_range_chart_container {
  width: 300px;
  height: 106px;
  margin: 10px 0px -8px -8px;
}
.search_filter_dropdown #rent_range_chart_container #rent_range_chart {
  width: 300px;
  max-width: 300px;
  height: 120px;
  margin: 0px;
  padding: 0px;
  display: block;
}

.hidden_filter #hidden_rent_range_chart_container {
  width: 350px;
  height: 110px;
  margin: 10px -8px -12px -8px;
}
.hidden_filter #hidden_rent_range_chart_container #hidden_rent_range_chart {
  width: 350px;
  height: 110px;
  margin: 0px;
  padding: 0px;
  display: block;
}

.hidden_filter .search_filter_dropdown_label {
  color: var(--primary-ui);
  margin-bottom: 2px;
  margin-top: 8px;
}

.search_filter_dropdown_select_row {
  display: block;
  text-align: left;
  position: relative;
  width: 100%;
  height: 36px;
  line-height: 36px;
  margin-top: 0.5rem;
}
.search_filter_dropdown_select_row label {
  font-size: 14px;
  cursor: pointer;
  display: inline-block;
  width: 100%;
  color: #636a6d;
}
.search_filter_dropdown_select_row label:hover {
  color: #3b4144;
}
.search_filter_dropdown_select_row .dropdown_row_select {
  background: white;
  border: 1px solid #cdd1d4;
  color: var(--btn-white-text) !important;
  border-radius: 4px;
  width: 130px;
  height: 36px;
  line-height: 36px;
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  padding: 0;
  outline: 0;
  vertical-align: middle;
}
.search_filter_dropdown_select_row .dropdown_row_select select {
  background: transparent;
  font-size: 0.9rem;
  line-height: 36px;
  height: 36px;
  border: none;
  text-indent: 0.01px;
  text-overflow: "";
  color: var(--btn-white-text) !important;
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  box-sizing: border-box;
  outline: 0;
  padding-left: 10px;
  /* Vendor prefixes still needed as of 2023-05
     https://caniuse.com/?search=appearance */
  -webkit-appearance: none; /* for all IE (not -ms- here read link above) */
  -moz-appearance: none; /* for firefox < 80 */
  appearance: none; /* ok for most browsers now */
}
.search_filter_dropdown_select_row .dropdown_row_select .fas {
  float: right;
  margin: 11px 10px 0 0;
  font-size: 0.8em;
}
.search_filter_dropdown_select_row .dropdown_row_select:hover {
  background: var(--btn-white-hover);
  border: 1px solid #cdd1d4;
}
.search_filter_dropdown_select_row .dropdown_row_select:active {
  background: #d9dde0;
  border: 1px solid #b2b8bc;
}
.search_filter_dropdown_select_row .large_dropdown_row_select {
  width: 170px;
}

.search_filter_dropdown_row {
  display: block;
  text-align: left;
  position: relative;
  width: 100%;
  height: 26px;
  line-height: 26px;
}
.search_filter_dropdown_row input {
  margin-right: 8px;
  padding: 0;
  position: relative;
  border: 0;
  vertical-align: middle;
}
.search_filter_dropdown_row label {
  font-size: 14px;
  cursor: pointer;
  display: inline-block;
  width: 100%;
  color: #636a6d;
}
.search_filter_dropdown_row label:hover {
  color: #3b4144;
}

.sub_select_separator {
  height: 36px;
  line-height: 36px;
  display: inline-block;
  width: 15px;
  text-align: center;
  font-size: 22px;
  vertical-align: middle;
}

.dropdown_shortcut {
  font-size: 0.7rem;
  cursor: pointer;
  display: inline-block;
  width: auto;
  padding-left: 4px;
  margin: 0 auto 0 auto;
  color: #636a6d;
  text-transform: uppercase;
  font-weight: normal;
}
.dropdown_shortcut:hover {
  color: #3b4144;
}
.dropdown_shortcut:active {
  transform: scale(1.05);
}
.dropdown_shortcut .fas {
  margin-right: 0.2rem;
}
.dropdown_shortcut .fa-times {
  color: var(--red);
}
.dropdown_shortcut .fa-check {
  color: var(--green);
}
.dropdown_shortcut.check_all {
  color: var(--green);
}
.dropdown_shortcut.uncheck_all {
  color: var(--red);
}

@media screen and (max-width: 1280px) {
  .search_filter {
    min-height: 32px;
    padding-right: 5px;
  }
  .search_filter .search_filter_btn {
    font-size: 0.85rem;
    height: 32px;
    line-height: 32px;
    padding: 0 0.35rem 0 0.4rem;
  }
  .search_filter .search_filter_btn .filter_label_separator {
    margin: 0 -3px;
  }
  .search_filter .search_filter_btn .fas {
    margin-left: 4px;
    font-size: 0.75rem;
  }
  .search_filter .search_filter_select {
    padding: 0 !important;
    height: 32px !important;
    line-height: 32px !important;
  }
  .search_filter .search_filter_select select {
    font-size: 13px;
    height: 30px;
    line-height: 30px;
    font-size: 0.85rem;
  }
  .search_filter .search_filter_select select option {
    padding: 0.3em 1em;
  }
  .search_filter .search_filter_select .fas {
    float: right;
    margin: 9px 10px 0 0;
  }
  .search_filter_dropdown {
    padding: 7px 7px 10px 7px;
    top: 48px;
    min-height: 69px;
  }
  .search_filter_dropdown .search_filter_dropdown_label {
    font-size: 0.7rem;
  }
  .search_filter_dropdown .search_filter_dropdown_row {
    height: 24px;
    line-height: 24px;
  }
  .search_filter_dropdown .search_filter_dropdown_row label {
    font-size: 0.9rem;
  }
  .search_filter_dropdown .search_filter_dropdown_select_row {
    height: 32px;
    line-height: 32px;
  }
  .search_filter_dropdown .search_filter_dropdown_select_row label {
    font-size: 0.9rem;
  }
  .search_filter_dropdown .search_filter_dropdown_select_row .dropdown_row_select {
    width: 110px;
    height: 32px;
    line-height: 32px;
  }
  .search_filter_dropdown .search_filter_dropdown_select_row .dropdown_row_select select {
    font-size: 0.85rem;
    line-height: 32px;
    height: 32px;
    padding-left: 7px;
  }
  .search_filter_dropdown .search_filter_dropdown_select_row .dropdown_row_select .fas {
    margin: 10px 8px 0 0;
    font-size: 0.75em;
  }
  .search_filter_dropdown .search_filter_dropdown_select_row .large_dropdown_row_select {
    width: 150px;
  }
  .search_filter_dropdown#cost_dropdown {
    height: 155px;
  }
  .sub_select_separator {
    height: 32px;
    line-height: 32px;
    width: 13px;
    font-size: 1.2rem;
  }
  .dropdown_shortcut {
    font-size: 0.65rem;
    padding-left: 4px;
  }
  .dropdown_shortcut .fas {
    margin-right: 0.15rem;
  }
}
/* 3. Specific rules ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.search_filter_status_switcher {
  display: inline-block;
  font-size: 0.8em;
  color: var(--btn-white-text);
  background-color: var(--btn-white);
  border: 1px solid var(--btn-white-border);
  border-radius: 4px;
  margin-right: 12px;
  height: 20px;
  line-height: 20px;
  vertical-align: middle;
}
.search_filter_status_switcher .status_switcher {
  padding: 0px 6px;
  text-align: center;
  cursor: pointer;
  user-select: none;
  outline: none;
  position: relative;
  float: left;
}
.search_filter_status_switcher .status_switcher:hover {
  color: var(--btn-white-text);
  background-color: var(--btn-white-hover);
}
.search_filter_status_switcher .status_switcher:active {
  background-color: var(--btn-white-active);
  font-weight: bold;
}

.status_switcher_active.status_switcher_yes {
  background-color: var(--lightest-green);
  font-weight: bold;
  color: var(--green);
}
.status_switcher_active.status_switcher_yes:hover {
  background-color: var(--light-green);
  color: var(--green-border);
}

.status_switcher_active.status_switcher_no {
  background-color: var(--lightest-red);
  font-weight: bold;
  color: var(--red);
}
.status_switcher_active.status_switcher_no:hover {
  background-color: var(--light-red);
  color: var(--red-error);
}

.status_switcher_active.status_switcher_all {
  background-color: #edeff1;
  font-weight: bold;
}
.status_switcher_active.status_switcher_all:hover {
  color: var(--btn-white-text);
  background-color: var(--btn-white-hover);
}

.emoji_filter_checkbox label {
  margin-left: -5px;
  vertical-align: top;
  margin-top: 2px;
}

#availability_datepicker_cache, #availability_hidden_datepicker_cache {
  z-index: 2;
  width: 100%;
  height: 100%;
  position: absolute;
}

#availability_filter_btn, #availability_hidden_filter_btn {
  padding: 0;
  width: 179px;
}
#availability_filter_btn.availability_narrow_filter, #availability_hidden_filter_btn.availability_narrow_filter {
  width: 140px;
}
#availability_filter_btn #availability_datepicker, #availability_filter_btn #availability_datepicker_hidden, #availability_filter_btn #partnership_metrics_datepicker_from, #availability_filter_btn #partnership_metrics_datepicker_to, #availability_hidden_filter_btn #availability_datepicker, #availability_hidden_filter_btn #availability_datepicker_hidden, #availability_hidden_filter_btn #partnership_metrics_datepicker_from, #availability_hidden_filter_btn #partnership_metrics_datepicker_to {
  height: 34px;
  line-height: 36px;
  width: 100%;
  position: absolute;
  z-index: 1;
}
#availability_filter_btn #availability_datepicker .qs-datepicker-container, #availability_filter_btn #availability_datepicker_hidden .qs-datepicker-container, #availability_filter_btn #partnership_metrics_datepicker_from .qs-datepicker-container, #availability_filter_btn #partnership_metrics_datepicker_to .qs-datepicker-container, #availability_hidden_filter_btn #availability_datepicker .qs-datepicker-container, #availability_hidden_filter_btn #availability_datepicker_hidden .qs-datepicker-container, #availability_hidden_filter_btn #partnership_metrics_datepicker_from .qs-datepicker-container, #availability_hidden_filter_btn #partnership_metrics_datepicker_to .qs-datepicker-container {
  position: absolute;
  top: 32px;
  left: -1px;
  transform: none;
  display: none;
}
#availability_filter_btn #availability_datepicker input[type=text], #availability_filter_btn #availability_datepicker_hidden input[type=text], #availability_filter_btn #partnership_metrics_datepicker_from input[type=text], #availability_filter_btn #partnership_metrics_datepicker_to input[type=text], #availability_hidden_filter_btn #availability_datepicker input[type=text], #availability_hidden_filter_btn #availability_datepicker_hidden input[type=text], #availability_hidden_filter_btn #partnership_metrics_datepicker_from input[type=text], #availability_hidden_filter_btn #partnership_metrics_datepicker_to input[type=text] {
  height: 36px;
  line-height: 36px;
  box-sizing: border-box;
  width: 100%;
  border: none;
  background: transparent;
  padding: 0 0 0 0.8em;
  box-shadow: none;
  cursor: pointer;
  color: var(--btn-white-text) !important;
  transition: none;
  outline: none;
  user-select: none;
}
#availability_filter_btn .fas, #availability_hidden_filter_btn .fas {
  margin-right: 10px;
  float: right;
  height: 36px;
  line-height: 36px;
}
#availability_filter_btn .fa-calendar-o, #availability_hidden_filter_btn .fa-calendar-o {
  color: var(--primary-ui);
}
#availability_filter_btn .fa-calendar-alt, #availability_hidden_filter_btn .fa-calendar-alt {
  opacity: 0.5;
}
#availability_filter_btn:hover, #availability_hidden_filter_btn:hover {
  background: var(--btn-white-hover);
  border: 1px solid #cdd1d4;
}
#availability_filter_btn:active, #availability_hidden_filter_btn:active {
  background: #d9dde0;
  border: 1px solid #b2b8bc;
}

/* edits to vendor css from js-datepicker npm module */
.qs-datepicker-container {
  width: 18em;
  border: 1px solid #cdd1d4;
  margin-top: 7px;
}

.qs-controls {
  background: #F1F1F1 !important;
  line-height: 2.1em;
}

.qs-month-year {
  font-weight: 500;
}

.qs-day {
  font-weight: bold;
  color: #0e1f18;
  font-size: 0.95em;
  color: var(--primary-darkest);
}

.qs-active {
  background: var(--primary-ui);
  color: white;
  font-weight: bold;
}

.qs-square:not(.qs-empty):not(.qs-disabled):not(.qs-day):not(.qs-active):hover {
  background: var(--primary-fairer-er);
}

@media screen and (max-width: 1280px) {
  #availability_filter_btn, #availability_hidden_filter_btn {
    width: 164px;
  }
  #availability_filter_btn.availability_narrow_filter, #availability_hidden_filter_btn.availability_narrow_filter {
    width: 127px;
  }
  #availability_filter_btn #availability_datepicker, #availability_filter_btn #availability_datepicker_hidden, #availability_hidden_filter_btn #availability_datepicker, #availability_hidden_filter_btn #availability_datepicker_hidden {
    height: 30px;
    line-height: 32px;
  }
  #availability_filter_btn #availability_datepicker input[type=text], #availability_filter_btn #availability_datepicker_hidden input[type=text], #availability_hidden_filter_btn #availability_datepicker input[type=text], #availability_hidden_filter_btn #availability_datepicker_hidden input[type=text] {
    height: 32px;
    line-height: 32px;
    padding: 0 0 0 0.7em;
  }
  #availability_filter_btn .fas, #availability_hidden_filter_btn .fas {
    height: 30px;
    line-height: 30px;
    margin-right: 6px;
  }
}
#location_search_filter, #location_offer_filter {
  padding-left: 10px;
  width: 250px;
  vertical-align: middle;
}
#location_search_filter #location_filter_container, #location_offer_filter #location_filter_container {
  width: 250px;
  height: 36px;
}
#location_search_filter #location_filter_container input#location_filter_input, #location_offer_filter #location_filter_container input#location_filter_input {
  outline: none;
  background: white;
  width: 200px;
  height: 36px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: none !important;
  vertical-align: top;
}
#location_search_filter #location_filter_container input#location_filter_input:hover, #location_offer_filter #location_filter_container input#location_filter_input:hover {
  border: 1px solid #cdd1d4;
  border-right: none;
  color: black;
}
#location_search_filter #location_filter_container input#location_filter_input:focus, #location_offer_filter #location_filter_container input#location_filter_input:focus {
  border: 1px solid var(--primary-color);
  box-shadow: 0 0 2px var(--primary-fairer);
  border-right: none;
}
#location_search_filter #location_filter_container input#location_filter_input::selection, #location_offer_filter #location_filter_container input#location_filter_input::selection {
  color: white;
  background: #0ec0a6;
}
#location_search_filter #location_filter_container button#location_filter_btn, #location_offer_filter #location_filter_container button#location_filter_btn {
  width: 50px;
  height: 36px;
  padding: 0;
  cursor: pointer;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  vertical-align: top;
  float: right;
}
#location_search_filter #location_filter_container button#location_filter_btn .fa-search, #location_offer_filter #location_filter_container button#location_filter_btn .fa-search {
  /* voluntarily lower than container height for visual alignment */
  line-height: 34px;
  margin: 0 auto;
}
#location_search_filter #location_filter_container button#location_filter_btn .location-spinner, #location_offer_filter #location_filter_container button#location_filter_btn .location-spinner {
  margin-top: 3px;
}
#location_search_filter #location_filter_container button#location_filter_btn .location-spinner .ring_spinner_container .ring_spinner, #location_offer_filter #location_filter_container button#location_filter_btn .location-spinner .ring_spinner_container .ring_spinner {
  display: inline-block;
  position: relative;
  width: 1em;
  height: 1em;
}
#location_search_filter #location_filter_container button#location_filter_btn .location-spinner .ring_spinner_container .ring_spinner div, #location_offer_filter #location_filter_container button#location_filter_btn .location-spinner .ring_spinner_container .ring_spinner div {
  border: 2px solid;
  border-color: var(--btn-white-text) var(--btn-white-text) transparent transparent;
}
#location_search_filter .autoComplete_dropdown, #location_offer_filter .autoComplete_dropdown {
  width: 250px;
  /* both rules needed to avoid being hidden by main content */
  z-index: 3;
  position: absolute;
  top: 36px;
}
#location_search_filter .autoComplete_dropdown .autoComplete_result, #location_offer_filter .autoComplete_dropdown .autoComplete_result {
  font-size: 0.95rem;
  line-height: 1.2rem;
}

#date_filter_btn .fas, #hidden_filter_date_btn .fas {
  position: absolute;
  right: 0px;
  margin-right: 7px;
}

@media screen and (max-width: 1280px) {
  #location_search_filter, #location_offer_filter {
    width: 200px;
  }
  #location_search_filter #location_filter_container, #location_offer_filter #location_filter_container {
    width: 200px;
    height: 32px;
  }
  #location_search_filter #location_filter_container input#location_filter_input, #location_offer_filter #location_filter_container input#location_filter_input {
    width: 160px;
    height: 32px;
  }
  #location_search_filter #location_filter_container button#location_filter_btn, #location_offer_filter #location_filter_container button#location_filter_btn {
    width: 40px;
    height: 32px;
    line-height: 32px;
  }
  #location_search_filter #location_filter_container button#location_filter_btn .fa-search, #location_offer_filter #location_filter_container button#location_filter_btn .fa-search {
    line-height: 30px;
  }
  #location_search_filter #location_filter_container .autoComplete_dropdown, #location_offer_filter #location_filter_container .autoComplete_dropdown {
    width: 200px;
    top: 32px;
  }
  #location_search_filter #location_filter_container .autoComplete_dropdown .autoComplete_result, #location_offer_filter #location_filter_container .autoComplete_dropdown .autoComplete_result {
    font-size: 0.9rem;
    line-height: 1.1rem;
  }
  #date_filter_btn .fas, #hidden_filter_date_btn .fas {
    right: 0px;
  }
}
/* Corrective width fixes for filter dropdowns */
#listing_type_filter_dropdown {
  width: 250px;
}

#housemates_filter_dropdown {
  width: 220px;
}

#lodging_type_filter_dropdown {
  width: 280px;
}

#lodging_size_filter_dropdown {
  width: 260px;
}

#commodities_filter_dropdown {
  width: 330px;
}

#particular_rules_filter_dropdown {
  width: 320px;
}

.commodities_dropdown_label {
  margin-bottom: 4px;
}

#sex_dropdown {
  width: 130px;
}

#activity_dropdown {
  width: 160px;
}

#country_dropdown {
  width: 160px;
}

@media screen and (max-width: 1280px) {
  #listing_type_filter_dropdown {
    width: 230px;
  }
  #lodging_type_filter_dropdown {
    width: 215px;
  }
  #lodging_size_filter_dropdown {
    width: 140px;
  }
}
/* Corrective fixes to make offering filters bar work with new minimized searching filters layout
   (until offering page has been converted/minimized too) */
.offer_filters_menu #search_filters_container {
  overflow: auto;
}
.offer_filters_menu .search_filter_dropdown_label, .offer_filters_menu .search_filter_dropdown_select_row {
  float: left;
}

/* 4. Hidden filters ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#hidden_filters_dropdown {
  width: 440px;
  text-align: left;
  padding: 5px 0 0 12px;
  overflow-y: auto;
  overflow-x: hidden;
  line-height: 1rem;
  position: fixed;
  right: 7px;
  left: auto;
  top: 93px;
}

.hidden_filter {
  margin-bottom: 10px;
  float: left;
  width: 100%;
}
.hidden_filter .hidden_filter_label {
  margin: 0.6rem 0 0.1rem 0;
  line-height: 1rem;
  color: var(--regular-gray);
  font-size: 0.8rem;
  text-transform: uppercase;
  display: inline-block;
  font-weight: bold;
}
.hidden_filter .search_filter {
  margin-top: 5px !important;
  margin-left: 0px !important;
  height: auto !important;
  display: block;
}
.hidden_filter .search_filter .hidden_filter_1_column {
  width: 99%;
  display: inline-block;
  vertical-align: top;
  margin-top: -7px;
}
.hidden_filter .search_filter .hidden_filter_2_columns {
  width: 49%;
  display: inline-block;
  vertical-align: top;
}
.hidden_filter .search_filter .hidden_filter_3_columns {
  width: 32%;
  display: inline-block;
  vertical-align: top;
}
.hidden_filter .search_filter .search_filter_select {
  margin-top: 0.3rem;
}

@media screen and (max-width: 1280px) {
  #hidden_filters_dropdown {
    width: 400px;
    padding: 5px 0 0 10px;
    top: 93px;
  }
  .hidden_filter {
    margin-bottom: 10px;
  }
  .hidden_filter .hidden_filter_label {
    font-size: 0.75rem;
  }
  .hidden_filter .search_filter {
    margin-top: 5px !important;
    margin-left: 0px !important;
  }
}
#room_surface_hidden_filter {
  padding-bottom: 30px;
}

/* 4. Menu tools ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.show_favorites_active {
  background: var(--favorite-red) !important;
  color: white !important;
  border: 1px solid var(--red-error);
}
.show_favorites_active .fas {
  color: white !important;
}
.show_favorites_active b {
  color: white !important;
}

.show_favorites_available {
  border: 1px solid var(--favorite-red) !important;
}
.show_favorites_available b {
  color: var(--favorite-red);
}

.mode_switcher_active {
  background: var(--btn-white-hover) !important;
  border: 1px solid #cdd1d4 !important;
  color: #384046 !important;
  cursor: default !important;
}

#list_ranking_btn {
  background: white;
  color: var(--btn-white-text);
  border: 1px solid #cdd1d4;
  border-radius: 4px;
  display: inline-block;
  height: 32px;
  line-height: 32px;
  font-weight: 400;
  margin: 0;
  outline: 0;
  padding: 0;
  position: relative;
  text-align: center;
  transition: all 0.15s ease-in-out;
  vertical-align: middle;
  cursor: pointer;
}
#list_ranking_btn:hover {
  background: var(--btn-white-hover);
  border: 1px solid #cdd1d4;
}
#list_ranking_btn select {
  background: transparent;
  font-size: 14px;
  height: 32px;
  line-height: 32px;
  font-weight: 400;
  margin: 0;
  border: none;
  color: var(--btn-white-text) !important;
  cursor: pointer;
  width: 100%;
  box-sizing: border-box;
  outline: 0;
  padding: 0 0 0 0.6em;
  /* Vendor prefixes still needed as of 2023-05
     https://caniuse.com/?search=appearance */
  -webkit-appearance: none; /* for all IE (not -ms- here read link above) */
  -moz-appearance: none; /* for firefox < 80 */
  appearance: none; /* ok for most browsers now */
}
#list_ranking_btn .fas {
  position: absolute;
  margin-left: 5px;
  right: 10px;
  top: 9px;
  font-size: 1em;
}

@media screen and (max-width: 1280px) {
  #list_ranking_btn {
    height: 30px;
    line-height: 30px;
    margin: -3px 0 0 5px;
  }
  #list_ranking_btn select {
    height: 30px;
    line-height: 30px;
    font-size: 0.9em;
  }
  #list_ranking_btn .fas {
    margin-left: 5px;
    right: 10px;
    top: 8px;
  }
}
/*::::::::::::::::::::::::::::: CONTAINERS :::::::::::::::::::::::::::::::*/
#map_sidebar_wrapper {
  position: relative;
  float: right;
  width: 476px;
  height: 100%;
  background: white;
  text-align: center;
  transition: 333ms ease;
}

#map_sidebar_container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 500px 590px;
  overflow-y: scroll;
  overflow-x: hidden;
  transition: none;
}

#map_sidebar_cache {
  position: absolute;
  right: 0;
  top: 0;
  width: 476px;
  height: 100%;
  opacity: 0.4;
  background: white;
  display: none;
  z-index: 1;
}

.map_sidebar_explainer {
  position: absolute;
  right: 0;
  width: 476px;
  height: 100%;
  background: white;
  display: none;
  z-index: 2;
  text-align: center;
}
.map_sidebar_explainer .no_results_explainer_cell {
  display: table-cell;
  vertical-align: middle;
}
.map_sidebar_explainer .no_results_explainer_cell .no_results_explainer {
  color: var(--regular-gray);
  width: 360px;
  text-align: center;
  border: 1px solid #cdd1d4;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 15px;
}
.map_sidebar_explainer .no_results_explainer_cell .no_results_explainer .fas {
  font-size: 4em;
  margin-bottom: 10px;
  display: block;
  color: var(--light-gray);
}

#map_sidebar_handle {
  position: absolute;
  width: 26px;
  background: var(--primary-fairer-er);
  top: 0;
  bottom: 0;
  right: 476px;
  height: 100%;
  display: table;
  cursor: pointer;
}
#map_sidebar_handle .map_sidebar_fas_container {
  font-size: 26px;
  text-align: center;
  color: var(--primary-ui);
  display: table-cell;
  vertical-align: middle;
  position: relative;
  user-select: none;
}
#map_sidebar_handle .map_sidebar_fas_container .fas {
  z-index: 99999;
}
#map_sidebar_handle .map_sidebar_fas_container img {
  width: 12px;
  position: absolute;
  bottom: 6px;
  left: 6px;
  cursor: default;
}
#map_sidebar_handle .map_sidebar_fas_container .map_sidebar_country_ribbon {
  width: 12px;
  height: 2px;
  position: absolute;
  bottom: 4px;
  left: 6px;
  cursor: default;
  box-shadow: 0 0 1px black;
  /*.ribbon_blue {
     background: #002153;
     width: 4px;
     height: 2px;
     float: left;
  }*/
}
#map_sidebar_handle .map_sidebar_fas_container .map_sidebar_country_ribbon .ribbon_white {
  background: white;
  width: 6px;
  height: 2px;
  float: left;
}
#map_sidebar_handle .map_sidebar_fas_container .map_sidebar_country_ribbon .ribbon_red {
  background: #cf0921;
  width: 6px;
  height: 2px;
  float: left;
}
#map_sidebar_handle:hover {
  background: #e7efea;
}
#map_sidebar_handle:hover .map_sidebar_fas_container {
  color: var(--primary-border);
}

.map_sidebar_handle_tooltip {
  position: absolute;
  font-size: 13px;
  font-weight: normal !important;
  background: rgba(9, 14, 21, 0.85);
  color: white;
  border-radius: 6px;
  display: block;
  text-align: center;
  z-index: 999999;
  top: 50%;
  left: 3px;
  margin-top: -55px;
  transform: translateX(-50%);
  white-space: nowrap;
  line-height: 1.4em;
  padding: 7px 10px;
}
.map_sidebar_handle_tooltip:after {
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(0, 20, 55, 0);
  border-top-color: var(--tooltip);
  border-width: 8px;
  margin-left: -8px;
  top: 100%;
  left: 56%;
}

#map_sidebar_wrapper .ad_slot_container_fallback_notice {
  background: var(--lightest-green);
  color: var(--primary-darker-er);
  font-size: 0.75rem;
  line-height: 1.1rem;
  display: inline-block;
  margin: 0px auto;
  box-sizing: border-box;
  padding: 0.7em 1em;
  border-radius: 5px;
  max-width: 94%;
}

@media screen and (max-width: 850px) {
  #map_sidebar_wrapper {
    display: none !important;
  }
  #map_sidebar_cache {
    display: none !important;
  }
  .map_sidebar_explainer {
    display: none !important;
  }
  #map_sidebar_handle {
    display: none !important;
  }
}
@media screen and (min-width: 1500px) {
  #map_sidebar_wrapper {
    width: 736px;
  }
  #map_sidebar_wrapper .ad_slot_container_fallback_notice {
    font-size: 0.85rem;
    line-height: 1.25rem;
    padding: 0.7em 6rem;
  }
  #map_sidebar_cache {
    width: 736px;
  }
  .map_sidebar_explainer {
    width: 736px;
  }
  #map_sidebar_handle {
    right: 736px;
  }
}
/*::::::::::::::::::::::::::::: TOP FILTERS :::::::::::::::::::::::::::::::*/
#map_sidebar_filters_container {
  width: 100%;
  height: 50px;
  background: #fff;
  text-align: center;
  display: none;
}
#map_sidebar_filters_container #map_sidebar_mode {
  width: 144px;
  height: 28px;
  line-height: 28px;
  float: left;
  margin: 4px 0 0 17px;
  font-size: 0.9em;
}
#map_sidebar_filters_container #map_sidebar_filters {
  line-height: 50px;
  height: 50px;
  font-size: 0.9em;
  color: var(--btn-white-text);
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_counter_container {
  float: left;
  padding-left: 23px;
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_counter_container #map_sidebar_counter {
  text-align: right;
  margin-right: 3px;
  color: var(--primary-ui);
  font-weight: bold;
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking {
  float: right;
  height: 50px;
  line-height: 50px;
  padding-right: 33px;
  box-sizing: border-box;
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn {
  background: white;
  color: var(--btn-white-text);
  border: 1px solid #cdd1d4;
  border-radius: 4px;
  display: inline-block;
  font-size: 14px;
  height: 32px;
  width: 230px;
  line-height: 32px;
  font-weight: 400;
  margin: -3px 0 0 5px;
  outline: 0;
  position: relative;
  text-align: center;
  transition: all 0.15s ease-in-out;
  vertical-align: middle;
  cursor: pointer;
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn:hover {
  background: var(--btn-white-hover);
  border: 1px solid #cdd1d4;
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn select {
  background: transparent;
  font-size: 14px;
  height: 32px;
  line-height: 32px;
  font-weight: 400;
  margin: 0;
  border: none;
  color: var(--btn-white-text) !important;
  cursor: pointer;
  width: 100%;
  box-sizing: border-box;
  outline: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  padding-left: 10px;
  /* Vendor prefixes still needed as of 2023-05
     https://caniuse.com/?search=appearance */
  -webkit-appearance: none; /* for all IE (not -ms- here read link above) */
  -moz-appearance: none; /* for firefox < 80 */
  appearance: none; /* ok for most browsers now */
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn select option span {
  font-size: 1.3em;
  color: var(--primary-ui);
}
#map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn .fas {
  float: right;
  margin-right: 8px;
  margin-top: 9px;
}

@media screen and (max-width: 1500px) {
  #map_sidebar_filters_container {
    height: 40px;
    line-height: 40px;
  }
  #map_sidebar_filters_container #map_sidebar_filters {
    line-height: 40px;
    height: 40px;
    font-size: 0.75em;
  }
  #map_sidebar_filters_container #map_sidebar_filters #map_sidebar_counter_container {
    padding-left: 10px;
  }
  #map_sidebar_filters_container #map_sidebar_filters #map_sidebar_counter_container #map_sidebar_counter {
    margin-right: 3px;
  }
  #map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking {
    line-height: 40px;
    height: 40px;
    font-size: 0.75em;
    padding-right: 6px;
  }
  #map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking .map_sidebar_ranking_label {
    display: none;
  }
  #map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn {
    font-size: 12px;
    height: 26px;
    line-height: 26px;
    margin: -2px 0 0 0px;
    width: 190px;
  }
  #map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn select {
    font-size: 12px;
    height: 26px;
    line-height: 26px;
    padding-left: 6px;
  }
  #map_sidebar_filters_container #map_sidebar_filters #map_sidebar_ranking #sidebar_ranking_btn .fas {
    margin-right: 6px;
    margin-top: 8px;
  }
}
/* Container for traffective ad slot */
#map_sidebar_ad_container {
  width: 728px;
  min-height: 10px;
}

#map_sidebar_ad {
  width: 728px;
  min-height: 56px;
  display: block;
  text-align: center;
  overflow: hidden;
}
#map_sidebar_ad label {
  color: var(--primary-darkest);
  letter-spacing: 0.3em;
  text-align: center;
  font-size: 0.75em;
  font-weight: 600;
  margin: 0 auto;
  width: 300px;
  opacity: 0.9;
  text-transform: uppercase;
  height: 20px;
  display: block;
}
#map_sidebar_ad #ad_slot_container_Billboard_2 {
  max-width: 728px;
  max-height: 90px;
  display: block;
  margin: 0 auto;
  text-align: center;
}
#map_sidebar_ad .map_sidebar_leaderboard_fallback {
  width: 728px;
  height: 90px;
}
#map_sidebar_ad .ad_slot_container_fallback_notice {
  background: var(--lightest-green);
  color: var(--primary-darker-er);
  font-size: 0.75em;
  display: inline-block;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 0.7em 1em;
  border-radius: 5px;
  max-width: 94%;
}
#map_sidebar_ad .map_sidebar_ad_test {
  width: 728px;
  height: 90px;
  line-height: 90px;
}

.map_sidebar_with_ad_slot {
  top: 114px !important;
}

@media screen and (max-width: 1500px) {
  #map_sidebar_ad {
    width: 468px;
    min-height: 60px;
  }
  #map_sidebar_ad label {
    font-size: 0.65em;
  }
  #map_sidebar_ad #ad_slot_container_Billboard_2 {
    max-width: 468px;
    max-height: 60px;
  }
  #map_sidebar_ad .map_sidebar_leaderboard_fallback {
    width: 468px;
    height: 60px;
  }
  #map_sidebar_ad .ad_slot_container_fallback_notice {
    font-size: 0.7em;
  }
  #map_sidebar_ad .map_sidebar_ad_test {
    width: 320px;
    height: 50px;
    line-height: 50px;
  }
  .map_sidebar_with_ad_slot {
    top: 75px !important;
  }
}
/*::::::::::::::::::::::::::::: SIDEBAR AND CELLS :::::::::::::::::::::::::::::::*/
#map_sidebar {
  width: 736px;
  box-sizing: border-box;
  padding: 0px 10px 10px 10px;
  background: white;
  list-style: none;
  margin: 0;
}
#map_sidebar .listing_visited {
  opacity: 0.7;
}
#map_sidebar .cell_hovered:active {
  top: 0px !important;
}
#map_sidebar .map_sidebar_cell {
  width: 320px;
  height: 290px;
  display: inline-block;
  margin: 4px 12px;
  cursor: pointer;
  border-radius: 4px;
  position: relative;
}
#map_sidebar .map_sidebar_cell:active:not(.gallery_preview_nav) {
  top: 1px;
  outline: none;
  box-shadow: none;
}
#map_sidebar .map_sidebar_cell .cell_fav_btn {
  width: 45px;
  height: 45px;
  display: block;
  position: absolute;
  top: 0px;
  right: 0px;
}
#map_sidebar .map_sidebar_cell .cell_fav_btn .fa-heart-o {
  color: white;
  font-size: 2em;
  position: absolute;
  top: 6px;
  right: 7px;
  z-index: 2;
}
#map_sidebar .map_sidebar_cell .cell_fav_btn .fa-heart {
  color: #1c242d;
  opacity: 0.5;
  font-size: 2em;
  position: absolute;
  top: 6px;
  right: 7px;
  z-index: 1;
}
#map_sidebar .map_sidebar_cell .map_favorite_tooltip {
  top: 50px;
  right: -10px;
  display: none;
  width: 150px;
  font-size: 0.8em;
  position: absolute;
  background-color: var(--tooltip);
  z-index: 9;
  color: white;
  text-align: center;
  padding: 5px;
}
#map_sidebar .map_sidebar_cell .map_favorite_tooltip:after {
  bottom: 100%;
  left: 78%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(136, 183, 213, 0);
  border-bottom-color: var(--tooltip);
  border-width: 8px;
  margin-left: -8px;
}
#map_sidebar .map_sidebar_cell .cell_info_container {
  width: 100%;
  height: 100%;
  transition: 0.3s;
  position: relative;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container {
  width: 320px;
  height: 240px;
  position: relative;
  display: block;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_company_name_normalized {
  font-size: 0.8em;
  background: rgba(255, 255, 255, 0.7);
  position: absolute;
  bottom: 31px;
  z-index: 1;
  left: 0px;
  padding: 0.2em 0.5em 0.2em 0.4em;
  font-weight: bold;
  color: var(--primary-darkest);
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_company_name_normalized .fas {
  margin: 0 3px 0 0px;
  font-size: 0.9em;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container img {
  width: 100%;
  height: 100%;
  border-radius: 4px;
  cursor: pointer;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .sidebar_gallery_counter {
  font-size: 0.8rem;
  font-weight: 400;
  background: rgba(9, 14, 21, 0.8);
  color: white;
  position: absolute;
  bottom: 0px;
  right: 0;
  width: 10%;
  text-align: center;
  height: 22px;
  line-height: 22px;
  display: none;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag {
  background: rgba(9, 14, 21, 0.8);
  font-size: 1.3em;
  font-weight: 600;
  color: white;
  padding: 1px 10px 2px 10px;
  position: absolute;
  left: 0;
  bottom: 0;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .sidebar_listing_type_label {
  font-weight: normal;
  font-size: 0.55em;
  text-transform: uppercase;
  margin-left: 0.5em;
  margin-bottom: -2px;
  max-width: 155px;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .costs_included {
  margin-left: 3px;
  font-size: 0.8em;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .map_housemates {
  font-size: 0.6em;
  margin-left: 5px;
  font-weight: normal;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .map_housemates .fas {
  font-size: 0.9em;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .cell_contacted_btn {
  margin-left: 9px;
  display: none;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .map_contacted_tooltip {
  position: absolute;
  background: var(--tooltip);
  top: -57px;
  right: -69px;
  display: none;
  font-size: 0.63em;
  font-weight: normal;
  text-align: center;
  padding: 5px 0;
  width: 180px;
}
#map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .map_contacted_tooltip:after {
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(136, 183, 213, 0);
  border-top-color: var(--tooltip);
  border-width: 8px;
  margin-left: -8px;
}
#map_sidebar .map_sidebar_cell .cell_info_container .info_container {
  width: 100%;
  display: block;
  height: 45px;
  text-align: left;
}
#map_sidebar .map_sidebar_cell .cell_info_container .info_container .cell_title_info {
  font-size: 1em;
  color: var(--primary-darkest);
  display: block;
  margin: 5px 0 0 5px;
}
#map_sidebar .map_sidebar_cell .cell_info_container .info_container .cell_title_info .cell_company_name_native .fas {
  color: var(--primary-ui);
}
#map_sidebar .map_sidebar_cell .cell_info_container .info_container .cell_time_info {
  font-size: 0.75em;
  color: var(--primary-darker-er);
  display: block;
  margin-left: 5px;
}

@media screen and (max-width: 1500px) {
  #map_sidebar {
    width: 100%;
    padding: 0px 5px 5px 5px;
  }
  #map_sidebar .map_sidebar_cell {
    width: 210px;
    height: 194px;
    margin: 0 4px 10px 9px;
  }
  #map_sidebar .map_sidebar_cell .cell_fav_btn {
    width: 35px;
    height: 35px;
  }
  #map_sidebar .map_sidebar_cell .cell_fav_btn .fa-heart {
    font-size: 1.4em;
    top: 4px;
    right: 4px;
  }
  #map_sidebar .map_sidebar_cell .cell_fav_btn .fa-heart-o {
    font-size: 1.4em;
    top: 4px;
    right: 4px;
  }
  #map_sidebar .map_sidebar_cell .map_favorite_tooltip {
    top: 40px;
    right: -17px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container {
    width: 210px;
    height: 158px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_company_name_normalized {
    font-size: 0.6em;
    bottom: 24px;
    padding: 0.2em 0.4em 0.2em 0.4em;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_company_name_normalized .fas {
    margin: 0 3px 0 0px;
    font-size: 0.9em;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .sidebar_gallery_counter {
    font-size: 0.55em;
    width: 12%;
    bottom: 1px;
    height: 18px;
    line-height: 18px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag {
    font-size: 0.9em;
    padding: 2px 7px;
    bottom: 1px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .sidebar_listing_type_label {
    font-size: 0.6em;
    margin-left: 0.5em;
    margin-bottom: 0px;
    max-width: 77px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .map_housemates {
    font-size: 0.7em;
    margin-left: 4px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .thumb_container .cell_cost_tag .map_contacted_tooltip {
    top: -47px;
    right: -54px;
    font-size: 0.63em;
    line-height: 1.3em;
    padding: 5px 0;
    width: 134px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .info_container {
    height: 35px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .info_container .cell_title_info {
    font-size: 0.8em;
    margin: 3px 0 0 4px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .info_container .cell_title_info .cell_company_name {
    font-size: 0.65em;
    margin-left: 5px;
  }
  #map_sidebar .map_sidebar_cell .cell_info_container .info_container .cell_time_info {
    font-size: 0.6em;
    margin: 0px 0 0 4px;
  }
}
/*::::::::::::::::::::::::::::: STATUS HELPERS :::::::::::::::::::::::::::::::*/
.sidebar_fav {
  color: var(--favorite-red) !important;
  opacity: 1 !important;
}

.show_contacted_btn {
  display: inline-block !important;
}

.cell_info_container_enhanced {
  background: #ffeec3;
}

.cell_active {
  background: var(--primary-fairest-est);
}
.cell_active .cell_info_container {
  opacity: 1 !important;
}

.cell_favorite .cell_info_container {
  opacity: 1 !important;
  background: var(--lightest-red);
}

.cell_map_ribbon {
  position: absolute;
  left: -5px;
  top: -5px;
  z-index: 1;
  overflow: hidden;
  width: 75px;
  height: 75px;
  text-align: right;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.cell_map_ribbon span {
  font-size: 10px;
  text-transform: uppercase;
  text-align: center;
  line-height: 20px;
  transform: rotate(-45deg);
  width: 100px;
  display: block;
  background: white;
  background: linear-gradient(#FFFFFF 0%, #f0f0f0 100%);
  box-shadow: 0 3px 8px -5px black;
  position: absolute;
  top: 18px;
  left: -22px;
}
.cell_map_ribbon span em {
  font-style: normal;
  font-weight: normal;
}
.cell_map_ribbon span::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 100%;
  z-index: -1;
  border-left: 2px solid #7b7b7b;
  border-right: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-top: 5px solid #b8b8b3;
}
.cell_map_ribbon span::after {
  content: "";
  position: absolute;
  right: 0px;
  top: 100%;
  z-index: -1;
  border-left: 4px solid transparent;
  border-right: 4px solid #bababa;
  border-bottom: 4px solid transparent;
  border-top: 4px solid #bababa;
}

.cell_map_urgent {
  background: #FFF9E8 !important;
}

/*:::::::::::::::::::::::::::::::::::::: LISTING GALLERIES PREVIEW ::::::::::::::::::::::::::::::::::::::*/
/* WARNING 1 -> active for both map sidebar & list search galleries, was too lazy to duplicate structure */
/* WARNING 2 -> base styling is for big resolutions, smaller ones () in media query                      */
.cell_info_container .gallery_preview_nav {
  background-color: rgba(1, 1, 1, 0.25);
  position: absolute;
  color: white;
  top: 0;
  bottom: 0;
  width: 10%;
  display: none;
  transition: 0.2s;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.cell_info_container .gallery_preview_nav .nav_icon_container {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.cell_info_container .gallery_preview_nav .nav_icon_container .fas {
  font-size: 1.6em;
}
.cell_info_container .gallery_preview_nav:hover {
  background-color: rgba(1, 1, 1, 0.4);
}
.cell_info_container .gallery_preview_nav:active {
  background-color: rgba(1, 1, 1, 0.6);
}
.cell_info_container .gallery_preview_left {
  left: 0;
  height: 100%;
}
.cell_info_container .gallery_preview_right {
  right: 0;
  height: calc(100% - 22px);
}
.cell_info_container .gallery_preview_right .nav_icon_container {
  padding-top: 22px;
}

@media screen and (max-width: 1500px) {
  .cell_info_container .gallery_preview_nav {
    width: 12%;
  }
  .cell_info_container .gallery_preview_nav .nav_icon_container .fas {
    font-size: 1.4em;
  }
  .cell_info_container .gallery_preview_right {
    height: calc(100% - 18px);
  }
  .cell_info_container .gallery_preview_right .nav_icon_container {
    padding-top: 18px;
  }
}
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::: MAP TOOLTIP ::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#listing_tooltip_wrapper {
  display: none;
  position: absolute;
  left: 0px;
  top: 0px;
  width: 320px;
  z-index: 999999;
  text-align: center;
}

#listing_tooltip_block {
  width: 320px;
  height: 105px;
  display: table;
  position: relative;
  margin: 0px auto;
  background: white;
  border-radius: 5px;
  background-color: rgb(255, 255, 255);
}

.big_listing_tooltip_block {
  height: 145px !important;
}

#listing_tooltip_container {
  display: table-cell;
  vertical-align: top;
  position: relative;
}
#listing_tooltip_container .marker_info_partner_label {
  position: absolute;
  bottom: 28px;
  left: 0;
  background: white;
  font-size: 0.6em;
  padding: 2px 5px 2px 5px;
  opacity: 0.9;
  border-bottom-right-radius: 3px;
  text-transform: uppercase;
  font-weight: bold;
}
#listing_tooltip_container .marker_info_partner_label .fas {
  font-size: 0.8em;
}
#listing_tooltip_container .marker_info_partner_label .fa-external-link {
  margin-left: 0.4em;
}
#listing_tooltip_container .tooltip_img_container {
  width: 140px;
  height: 105px;
  display: block;
  float: left;
  border-top-left-radius: 5px;
  overflow: hidden;
  position: relative;
}
#listing_tooltip_container img.marker {
  width: 140px;
  height: 105px;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  overflow: hidden;
}
#listing_tooltip_container .tooltip_fav_btn {
  width: 22px;
  height: 22px;
  display: block;
  position: absolute;
  top: 3px;
  right: 0px;
}
#listing_tooltip_container .tooltip_fav_btn .fa-heart {
  color: var(--favorite-red);
  font-size: 1.1em;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}
#listing_tooltip_container .marker_rent {
  position: absolute;
  bottom: 0px;
  left: 0;
  padding: 0px 6px 1px 6px;
  font-size: 1.25em;
  font-weight: 600;
  color: white;
  background: rgba(1, 1, 1, 0.8);
  border-top-right-radius: 3px;
}
#listing_tooltip_container .marker_rent .marker_rent_costs {
  font-size: 0.7em;
  font-weight: normal;
}

#marker_info {
  position: relative;
  height: 105px;
  overflow: hidden;
  text-align: left;
}
#marker_info .marker_info_row {
  font-size: 0.75em;
  height: 1.4em;
  overflow: hidden;
}
#marker_info .marker_info_row .fas {
  color: var(--primary-darker);
  font-size: 1em;
  width: 28px;
  text-align: center;
  display: inline-block;
}
#marker_info .marker_info_row_title {
  font-weight: bold;
  margin-top: 5px;
  margin-bottom: 2px;
  margin-left: 7px;
  font-size: 0.75em;
  text-transform: uppercase;
}
#marker_info .marker_row_info_location {
  font-style: italic;
  font-size: 0.7em;
  margin-top: 2px;
}
#marker_info .marker_row_info_location .fas {
  color: var(--primary-darkest);
  width: 12px;
  margin-left: 5px;
}

#marker_open_listing_btn {
  background: var(--light-green);
  color: var(--green-border);
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
  height: 40px;
  line-height: 40px;
  width: 100%;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 0.05rem;
  font-weight: bold;
  box-shadow: -1px 2px 10px 1px rgba(255, 255, 255, 0.8) inset;
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none; /* IE/Edge */
  user-select: none; /* Standard syntax */
}
#marker_open_listing_btn .fas {
  margin-right: 5px;
}

.marker_open_listing_btn_active {
  box-shadow: -1px 2px 10px 1px #78d3a9 inset !important;
  transform: scale(1.05) !important;
}

#listing_tooltip_buttons {
  display: block;
  position: absolute;
  top: 0;
  right: 4px;
}

.listing_tooltip_enhanced_label {
  position: absolute;
  top: 0px;
  right: 0;
  background: rgba(255, 255, 255, 0.8);
  font-size: 0.7em;
  padding: 3px 5px 4px 5px;
  font-weight: bold;
  border-bottom-left-radius: 3px;
}
.listing_tooltip_enhanced_label em {
  font-weight: normal;
  font-style: normal;
}

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::   MAP SEARCH   ::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::: Map search layout :::::::::::::::::::::::::::::::*/
#map {
  width: 100%;
  height: 100%;
  position: relative;
  /*overflow: hidden;*/
}

.polygon_hover {
  cursor: move !important;
}

#map_cache {
  background: rgba(255, 255, 255, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999999;
}

.leaflet-pixi-overlay {
  pointer-events: none;
}

#map_layer_type_container {
  height: 30px;
  background: white;
  border-radius: 4px;
  padding: 0 2px;
  border: 2px solid rgba(0, 0, 0, 0.2);
  position: absolute;
  left: 55px;
  z-index: 999;
  top: 10px;
}
#map_layer_type_container div {
  float: left;
  line-height: 30px;
  text-align: center;
  font-size: 0.8em;
  padding: 0 6px;
  background: #f2f2f2;
  cursor: pointer;
  user-select: none;
}
#map_layer_type_container div.active_layer {
  font-weight: bold;
  background: white;
}

/*:::::::::::::::::::::::::::::::::::::: MAP CLUSTERS :::::::::::::::::::::::::::::::::::::::*/
.cluster_container {
  position: absolute;
  top: 0px;
  left: 0px;
  color: white;
  font-size: 11px;
  font-family: Arial, sans-serif;
  font-style: normal;
  text-decoration: none;
  text-align: center;
  padding: 4px;
  background: var(--primary-color);
  border: 1px solid #3c6cbe;
  border-radius: 5px;
  line-height: 10px;
}

.cluster_container:hover {
  background: var(--cluster-hover);
}

.map_open_data_item {
  width: 24px;
  height: 24px;
  display: block;
  z-index: 2;
}

/*:::::::::::::::::::::::::::::::::::::::::: MAP MARKERS :::::::::::::::::::::::::::::::::::::*/
#marker_status_wrapper {
  display: none;
  animation: popup 0.04s;
  transform: scale(1);
  z-index: 9999;
  position: absolute;
  -webkit-touch-callout: none;
  user-select: none;
}
#marker_status_wrapper:active {
  transform: scale(1.15) !important;
}
#marker_status_wrapper .marker_pulse:after {
  margin: -13px 0 0 -13px;
}
#marker_status_wrapper .big_marker_pulse:after {
  margin: -14px 0 0 -25px;
}

.popup {
  animation: popup 0.04s;
  transform: scale(1);
}

@keyframes popup {
  0% {
    transform: scale(0.4);
  }
  30% {
    transform: scale(0.5);
  }
  40% {
    transform: scale(0.6);
  }
  60% {
    transform: scale(0.7);
  }
  70% {
    transform: scale(0.8);
  }
  80% {
    transform: scale(0.9);
  }
  90% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(1);
  }
}
.marker_normal_hover {
  position: absolute;
  width: 22px;
  height: 22px;
  display: block;
  cursor: pointer;
}
.marker_normal_hover .marker_container {
  width: 16px;
  height: 16px;
  background: #bb5b50;
  border: 3px solid white;
  border-radius: 16px;
}
.marker_normal_hover .marker_container .marker_pulse {
  display: block;
}
.marker_normal_hover .marker_container .marker_heart, .marker_normal_hover .marker_container .marker_envelope, .marker_normal_hover .marker_container .big_marker_pulse, .marker_normal_hover .marker_container .marker_facebook {
  display: none;
}

.marker_visited_hover {
  position: absolute;
  width: 20px;
  height: 20px;
  display: block;
  cursor: pointer;
}
.marker_visited_hover .marker_container {
  width: 16px;
  height: 16px;
  background: #faf5f4 !important;
  border: 2px solid #984a42 !important;
  border-radius: 16px;
}
.marker_visited_hover .marker_container .marker_pulse {
  display: block;
}
.marker_visited_hover .marker_container .marker_heart, .marker_visited_hover .marker_container .big_marker_pulse, .marker_visited_hover .marker_container .marker_envelope, .marker_visited_hover .marker_container .marker_facebook {
  display: none;
}

.marker_favorite_hover {
  position: absolute;
  width: 34px;
  height: 34px;
  display: block;
  cursor: pointer;
}
.marker_favorite_hover .marker_container {
  width: 28px;
  height: 28px;
  /*background: white url(/assets/markers/pixi_markers_big-541487889440ce0eaaa2c97d4a4e7cd2e51f775f70759376613f9e83a29d1dad.png) -3px -3px;*/
  background-size: 102px 34px;
  border: 3px solid white;
  border-radius: 28px;
  text-align: center;
}
.marker_favorite_hover .marker_container .marker_heart {
  display: block;
  line-height: 26px;
  color: var(--favorite-red);
  font-size: 18px;
}
.marker_favorite_hover .marker_container .marker_pulse, .marker_favorite_hover .marker_container .marker_envelope, .marker_favorite_hover .marker_container .marker_facebook {
  display: none;
}
.marker_favorite_hover .marker_container .big_marker_pulse {
  display: block;
}

.marker_contacted_hover {
  position: absolute;
  width: 34px;
  height: 34px;
  display: block;
  cursor: pointer;
}
.marker_contacted_hover .marker_container {
  width: 28px;
  height: 28px;
  /*background: white url(/assets/markers/pixi_markers_big-541487889440ce0eaaa2c97d4a4e7cd2e51f775f70759376613f9e83a29d1dad.png) -37px -3px;*/
  background-size: 102px 34px;
  border: 3px solid white;
  border-radius: 28px;
  text-align: center;
}
.marker_contacted_hover .marker_container .marker_envelope {
  display: block;
  line-height: 24px;
  color: var(--favorite-red);
  font-size: 16px;
}
.marker_contacted_hover .marker_container .marker_pulse, .marker_contacted_hover .marker_container .marker_heart, .marker_contacted_hover .marker_container .marker_facebook {
  display: none;
}
.marker_contacted_hover .marker_container .big_marker_pulse {
  display: block;
}

.marker_enhanced_hover {
  position: absolute;
  width: 34px;
  height: 34px;
  display: block;
  cursor: pointer;
}
.marker_enhanced_hover .marker_container {
  width: 28px;
  height: 28px;
  /*'markers/pixi_markers_big.png') -71px -3px;*/
  background-size: 102px 34px;
  border: 3px solid white;
  border-radius: 28px;
}
.marker_enhanced_hover .marker_container .marker_pulse {
  display: block;
}
.marker_enhanced_hover .marker_container .marker_heart, .marker_enhanced_hover .marker_container .big_marker_pulse, .marker_enhanced_hover .marker_container .marker_envelope, .marker_enhanced_hover .marker_container .marker_facebook {
  display: none;
}

.marker_pulse {
  border-radius: 50%;
  height: 16px;
  width: 16px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -7px 0px 0px -7px;
  z-index: -2;
}

.marker_pulse:after {
  content: "";
  border-radius: 50%;
  height: 40px;
  width: 40px;
  position: absolute;
  margin: -13px 0 0 -13px;
  animation: pulsate 1s ease-out;
  animation-iteration-count: infinite;
  opacity: 0;
  filter: alpha(opacity=0);
  box-shadow: 0 0 1px 4px #c5c5c5;
}

.big_marker_pulse {
  border-radius: 50%;
  height: 22px;
  width: 22px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -11px 0px 0px -11px;
  z-index: -2;
}

.big_marker_pulse:after {
  content: "";
  border-radius: 50%;
  height: 50px;
  width: 50px;
  position: absolute;
  margin: -14px 0 0 -24px;
  animation: pulsate 1s ease-out;
  animation-iteration-count: infinite;
  opacity: 0;
  filter: alpha(opacity=0);
  box-shadow: 0 0 1px 4px #c5c5c5;
}

@keyframes pulsate {
  0% {
    transform: scale(0.1, 0.1);
    opacity: 0;
    filter: alpha(opacity=0);
  }
  50% {
    opacity: 1;
    filter: none;
  }
  100% {
    transform: scale(1.2, 1.2);
    opacity: 0;
    filter: alpha(opacity=0);
  }
}
@keyframes bounce {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
    transform: translateY(-2000px) rotate(-45deg);
  }
  60% {
    opacity: 1;
    filter: none;
    transform: translateY(30px) rotate(-45deg);
  }
  80% {
    transform: translateY(-10px) rotate(-45deg);
  }
  100% {
    transform: translateY(0) rotate(-45deg);
  }
}
/*:::::::::::::::::::::::::::::::::::::: OPEN DATA ITEMS :::::::::::::::::::::::::::::*/
.open_data_item_container {
  position: absolute;
  top: 0px;
  left: 0px;
  font-size: 13px;
  text-align: center;
  border-radius: 11px;
  display: block;
  width: 22px;
  height: 22px;
  background-color: white;
  color: #666666;
}
.open_data_item_container .map_open_data_icon_small {
  line-height: 22px;
  font-size: 13px;
}
.open_data_item_container .map_open_data_icon_medium {
  line-height: 22px;
  font-size: 15px;
}
.open_data_item_container .map_open_data_icon_big {
  line-height: 22px;
  font-size: 18px;
}
.open_data_item_container .open_data_station_name {
  color: var(--primary-darker);
  font-weight: bold;
}

.open_data_item_container:hover {
  background-color: var(--primary-fairest);
}

/* WARNING: this file must be loaded through webpack to compute image urls properly.
   (isolation was required as this can be loaded through both main or modal bundles) */
.marker_favorite_hover .marker_container {
  background: white url(/assets/markers/pixi_markers_big-541487889440ce0eaaa2c97d4a4e7cd2e51f775f70759376613f9e83a29d1dad.png) -3px -3px;
}

.marker_contacted_hover .marker_container {
  background: white url(/assets/markers/pixi_markers_big-541487889440ce0eaaa2c97d4a4e7cd2e51f775f70759376613f9e83a29d1dad.png) -37px -3px;
}

.marker_enhanced_hover .marker_container {
  background: white url(/assets/markers/pixi_markers_big-541487889440ce0eaaa2c97d4a4e7cd2e51f775f70759376613f9e83a29d1dad.png) -71px -3px;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::: OPEN DATA TOOLBAR :::::::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#open_data_container {
  height: 50px;
  position: absolute;
  top: 10px;
  right: 10px;
  display: block;
  user-select: none;
  box-shadow: rgba(0, 0, 0, 0.298039) 0px 1px 4px -1px;
  border-radius: 2px;
  cursor: pointer;
  background-color: white;
  z-index: 999;
}

@media screen and (max-width: 850px) {
  #open_data_container {
    position: fixed;
    top: 105px;
    right: 10px;
    /* specific rule for pro accounts iframe searches */
  }
  #open_data_container.iframe_open_data_container {
    position: absolute;
    top: 10px;
  }
}
#transport_network_title_container {
  margin-left: 12px;
  float: left;
  display: table;
  height: 100%;
}
#transport_network_title_container #transport_network_title {
  color: #666666;
  font-size: 0.8em;
  line-height: 14px;
  display: table-cell;
  vertical-align: middle;
}

#open_data_cache {
  position: absolute;
  left: 0px;
  bottom: 0;
  top: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.7);
  cursor: not-allowed;
  z-index: 9;
}

.open_data_cache_tooltip {
  bottom: -68px;
  left: 50%;
  margin-left: -110px;
  width: 210px;
  line-height: 1.4em;
  display: block;
}
.open_data_cache_tooltip:after {
  bottom: 100%;
  left: 50%;
  border-bottom-color: var(--map-tooltip);
}

#open_data_icons_wrapper {
  height: 47px;
  float: left;
  background: white;
  border-radius: 4px;
  padding: 0 2px;
  border: 2px solid rgba(0, 0, 0, 0.2);
}

.open_data_icon_container {
  position: relative;
  height: 47px;
  display: block;
  float: left;
  cursor: pointer;
  text-align: center;
  padding: 7px;
  box-sizing: border-box;
}
.open_data_icon_container .open_data_icon {
  color: #666666;
  opacity: 0.8;
  transition: transform 0.2s ease-out;
  filter: grayscale(100%);
  min-width: 16px;
  height: 16px;
  display: block;
  margin: 0 auto;
}
.open_data_icon_container .open_data_type {
  text-align: center;
  margin-top: 2px;
  font-size: 0.8em;
}
.open_data_icon_container .place-spinner {
  width: 16px;
  height: 16px;
  margin: 0 auto;
  display: none;
  line-height: 20px;
}
.open_data_icon_container .place-spinner .ring_spinner {
  width: 16px;
  height: 16px;
}
.open_data_icon_container .place-spinner .ring_spinner div {
  border: 2px solid;
  border-color: #6a6a6a #6a6a6a transparent transparent;
  /*border-color: #44c878 #44c878 transparent transparent;*/
}

.open_data_icon_container:active {
  transform: scale(1.1);
}

.open_data_container_on {
  border-bottom: 3px solid #666666;
  line-height: 43px;
  /*background-color: #ececec;*/
  background-color: var(--primary-fairest);
}
.open_data_container_on img {
  color: #333333 !important;
  opacity: 1 !important;
  filter: grayscale(0%) !important;
}
.open_data_container_on .open_data_type {
  margin-top: -9px !important;
}

#open_data_more_icon {
  width: 40px;
  height: 42px;
  line-height: 42px;
  text-align: center;
  cursor: pointer;
  color: #666666;
  position: absolute;
  right: 0;
  top: 0;
}
#open_data_more_icon:hover {
  color: #333333;
}
#open_data_more_icon .fas {
  font-size: 1.9em;
  margin-top: 7px;
}

.open_data_tooltip {
  bottom: -44px;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  font-size: 0.8em;
  line-height: 1.3em;
  display: block;
  padding: 7px 10px;
  z-index: 9999999;
}
.open_data_tooltip:after {
  bottom: 100%;
  left: 50%;
  border-bottom-color: var(--tooltip);
}

.open_data_more_tooltip {
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  font-size: 0.8em;
  line-height: 1.4em;
  display: block;
  padding: 7px 10px;
}
.open_data_more_tooltip:after {
  top: 100%;
  left: 50%;
  border-top-color: var(--tooltip);
}

/* New version ! */
#activate_open_data {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 99999;
  padding: 7px 12px;
}

#transport_tooltip_container .transport_tooltip {
  z-index: 9999;
  position: fixed;
}
#transport_tooltip_container .transport_tooltip .transport_connexions {
  background: white;
  border-radius: 5px;
  padding: 3px 8px 6px 8px;
  position: absolute;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
  z-index: 99999;
  font-size: 12px;
  left: 50%;
  transform: translateX(-50%);
}
#transport_tooltip_container .transport_tooltip .transport_connexions .transport_point_name {
  margin-bottom: 4px;
}
#transport_tooltip_container .transport_tooltip .transport_connexions .transport_line_icon {
  display: inline-block;
  min-width: 22px;
  height: 22px;
  margin-right: 3px;
  vertical-align: top;
}
#transport_tooltip_container .transport_tooltip .transport_connexions .transport_line {
  width: 16px;
  height: 16px;
  display: inline-block;
  line-height: 16px;
  font-weight: 600;
  font-size: 11px;
}
#transport_tooltip_container .transport_tooltip .transport_connexions .transport_line.square {
  border-radius: 0;
}
#transport_tooltip_container .transport_tooltip .transport_connexions .transport_line.round {
  border-radius: 20px;
}

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::: LIST RESULTS :::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#listings_container {
  width: 728px;
  padding-bottom: 100px;
  text-align: center;
  margin: 0 auto;
}

@media screen and (max-width: 736px) {
  #listings_container {
    width: 622px;
  }
}
@media screen and (min-width: 1280px) {
  #listings_container {
    width: 970px;
  }
}
.desactivate_search_area {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}

.listing_visited_list {
  background: rgba(255, 255, 255, 0.3) !important;
}

.status_container {
  width: 65px;
  height: 30px;
  position: absolute;
  display: block;
  right: 0px;
  top: 0px;
}
.status_container .list_status_icon {
  width: 25px;
  height: 25px;
  display: block;
  float: right;
  margin: 4px 4px 0 0;
  position: relative;
}
.status_container .list_status_icon:last-of-type {
  margin: 4px -1px 0 0;
}
.status_container .list_visited_btn .fa-circle {
  font-size: 1.6em;
  color: var(--primary-color);
}
.status_container .list_visited_btn .fa-check {
  position: absolute;
  left: 6px;
  top: 6px;
  font-size: 0.85em;
  color: white;
}
.status_container .list_contacted_btn .fa-circle {
  font-size: 1.6em;
  color: var(--primary-color);
}
.status_container .list_contacted_btn .fa-envelope {
  position: absolute;
  left: 7px;
  top: 7px;
  font-size: 0.75em;
  color: white;
}

.list_favorite_tooltip {
  top: -58px;
  right: -60px;
  display: none;
  width: 160px;
  font-size: 0.8em !important;
}
.list_favorite_tooltip:after {
  top: 100%;
  left: 50%;
  border-top-color: var(--tooltip);
}

@media (min-width: 1800px) and (min-height: 800px) {
  .list_favorite_tooltip {
    top: -67px;
    right: -68px;
    padding: 7px 18px;
    line-height: 25px;
    line-height: 21px;
    font-size: 0.95em !important;
  }
}
.listing_cell_urgent {
  /*background: #FFF9E8 !important;*/
  background: #ffe7e7 !important;
}
.listing_cell_urgent .info_location {
  /*color: #C79402 !important;*/
  color: var(--red-error) !important;
}

.listing_cell {
  height: 167px;
  width: 620px;
  background: white;
  margin: 0 auto 18px auto;
  overflow: visible;
  position: relative;
  display: block;
  border: 1px solid var(--light-gray);
}
.listing_cell:active {
  top: 1px;
  outline: none;
  box-shadow: none;
}
.listing_cell:hover {
  background: white;
  box-shadow: 0px 0px 3px var(--primary-fairer-er);
}
.listing_cell.cell_hovered:active {
  top: 0px !important;
}
.listing_cell .thumb_block {
  float: left;
  width: 220px;
  height: 100%;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.listing_cell .thumb_block img {
  width: 220px;
  height: 165px;
  float: left;
}
.listing_cell .thumb_block .thumb_footer {
  width: 220px;
  height: 18px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: rgba(1, 1, 1, 0.7);
  color: white;
  font-size: 0.55em;
  line-height: 18px;
  text-align: left;
}
.listing_cell .thumb_block .thumb_footer .edition_date {
  margin-left: 4px;
}
.listing_cell .thumb_block .cell_gallery_counter {
  font-size: 0.65em;
  font-weight: 400;
  background-color: rgba(1, 1, 1, 0.7);
  color: white;
  position: absolute;
  bottom: 18px;
  padding: 0px 5px;
  right: 0;
}
.listing_cell .thumb_block .cell_gallery_counter .fas {
  font-size: 0.9em;
}
.listing_cell .info_block {
  float: right;
  width: 400px;
  height: 100%;
  position: relative;
  cursor: pointer;
  color: var(--primary-darkest);
}
.listing_cell .info_block .info_span {
  width: 100%;
  display: block;
  text-align: center;
}
.listing_cell .info_block a.info_title_link {
  margin: 0 auto;
  padding: 0;
  color: var(--primary-darkest);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
}
.listing_cell .info_block a.info_title_link .info_title {
  font-weight: bold;
  margin: 0;
  line-height: 1.5em;
  font-size: 1.2em;
  margin-top: 8px;
}
.listing_cell .info_block a.info_title_link .partner_explainer {
  margin: 5px 0 0 0;
  padding: 0;
  font-weight: bold;
  font-size: 0.7em;
  color: #eb7b59;
}
.listing_cell .info_block .info_location {
  font-size: 0.8em;
  font-weight: normal;
  font-style: normal;
  margin: 0;
  padding: 0;
}
.listing_cell .info_block .info_location .fas {
  margin: 0 2px 0 8px;
}
.listing_cell .info_block .info_message {
  text-align: left;
  font-size: 0.75em;
  color: var(--primary-darkest);
  padding: 8px 10px 8px 15px;
  box-sizing: border-box;
  margin: 0 0 7px 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-width: 400px;
  height: 59px;
}
.listing_cell .info_block .info_financial {
  margin-top: -7px;
  height: 44px;
}
.listing_cell .info_block .info_rent_block {
  color: var(--primary-darkest);
  font-weight: 600;
  font-size: 1.8em;
  margin: 0;
}
.listing_cell .info_block .info_rent_block .rent_costs {
  color: var(--primary-darkest);
  font-size: 0.7em;
  margin-left: -5px;
}
.listing_cell .info_block .info_rent_block .rent_decorator {
  font-size: 0.7em;
  font-weight: 400;
  padding: 0 0px 0 4px;
}
.listing_cell .info_block_footer {
  width: 50px;
  height: 40px;
  position: absolute;
  right: 0;
  bottom: 0;
}
.listing_cell .info_block_footer .list_favorite {
  height: 100%;
  line-height: 100%;
  width: 100%;
  display: block;
  position: relative;
  text-align: center;
  cursor: pointer;
}
.listing_cell .info_block_footer .list_favorite .fa-heart-o {
  color: var(--primary-ui);
  font-size: 1.6em;
  width: 100%;
  line-height: 40px;
  height: 100%;
}
.listing_cell .info_block_footer .list_favorite .fa-heart-o:hover {
  color: var(--primary-darker);
}
.listing_cell .info_block_footer .list_favorite .fa-heart {
  color: var(--favorite-red);
  font-size: 1.6em;
  width: 100%;
  line-height: 40px;
  height: 100%;
}

/* Status helpers */
.thumb_data_container {
  position: absolute;
  left: 0px;
  right: 0;
  bottom: 18px;
  z-index: 1;
}
.thumb_data_container .list_partner_label {
  font-size: 0.65em;
  background: rgba(255, 255, 255, 0.7);
  padding: 0 0.4em 0 0.4em;
  font-weight: bold;
  line-height: 18px;
  height: 18px;
  display: inline-block;
  color: var(--primary-darkest);
  position: absolute;
  left: 0;
  top: -18px;
}
.thumb_data_container .list_partner_label .fas {
  margin: 0 3px 0 0px;
  font-size: 0.9em;
}
.thumb_data_container .list_listing_type_label {
  font-size: 0.75em;
  font-weight: 600;
  letter-spacing: 0.02em;
  background: rgba(1, 1, 1, 0.7);
  text-transform: uppercase;
  padding: 0 0.5em 0 0.3em;
  color: white;
  height: 24px;
  line-height: 24px;
  float: left;
  border-top-right-radius: 3px;
}

.listing_favorite_list {
  -moz-box-shadow: 0 0 10px var(--favorite-red-shadow) !important;
  -webkit-box-shadow: 0 0 10px var(--favorite-red-shadow) !important;
  -o-box-shadow: 0 0 10px var(--favorite-red-shadow) !important;
  box-shadow: 0 0 10px var(--favorite-red-shadow) !important;
  background: white !important;
}

.listing_cell_enhanced {
  background: #ffeec3;
}

.enhanced_ribbon {
  position: absolute;
  left: -5px;
  top: -5px;
  z-index: 1;
  overflow: hidden;
  width: 75px;
  height: 75px;
  text-align: right;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.enhanced_ribbon span {
  font-size: 10px;
  text-transform: uppercase;
  text-align: center;
  line-height: 20px;
  transform: rotate(-45deg);
  width: 100px;
  display: block;
  background: white;
  background: linear-gradient(#FFFFFF 0%, #f0f0f0 100%);
  box-shadow: 0 3px 8px -5px black;
  position: absolute;
  top: 18px;
  left: -22px;
}
.enhanced_ribbon span em {
  font-weight: normal;
  font-style: normal;
}
.enhanced_ribbon span:before {
  content: "";
  position: absolute;
  left: 0px;
  top: 100%;
  z-index: -1;
  border-left: 2px solid #7b7b7b;
  border-right: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-top: 5px solid #b8b8b3;
}
.enhanced_ribbon span:after {
  content: "";
  position: absolute;
  right: 0px;
  top: 100%;
  z-index: -1;
  border-left: 4px solid transparent;
  border-right: 4px solid #bababa;
  border-bottom: 4px solid transparent;
  border-top: 4px solid #bababa;
}

@media (min-width: 1800px) and (min-height: 800px) {
  .status_container {
    width: 90px;
    height: 40px;
  }
  .status_container .list_status_icon {
    width: 36px;
    height: 36px;
    margin: 5px 5px 0 0;
  }
  .status_container .list_status_icon:last-of-type {
    margin: 5px -2px 0 0;
  }
  .status_container .list_visited_btn .fa-circle {
    font-size: 2.2em;
  }
  .status_container .list_visited_btn .fa-check {
    left: 8px;
    top: 10px;
    font-size: 1.1em;
  }
  .status_container .list_contacted_btn .fa-circle {
    font-size: 2.2em;
  }
  .status_container .list_contacted_btn .fa-envelope {
    left: 10px;
    top: 10px;
    font-size: 1em;
  }
  .listing_cell {
    height: 240px;
    width: 820px;
    background: white;
    margin-bottom: 20px;
    overflow: visible;
  }
  .listing_cell .thumb_block {
    float: left;
    width: 320px;
    height: 100%;
    position: relative;
    overflow: hidden;
  }
  .listing_cell .thumb_block img {
    width: 320px;
    height: 240px;
    float: left;
  }
  .listing_cell .thumb_block .thumb_footer {
    width: 100%;
    height: 25px;
    background-color: rgba(1, 1, 1, 0.7);
    position: absolute;
    bottom: 0;
    color: white;
    font-size: 0.7em;
    line-height: 25px;
    text-align: left;
  }
  .listing_cell .thumb_block .thumb_footer .edition_date {
    margin-left: 10px;
  }
  .listing_cell .thumb_block .cell_gallery_counter {
    font-size: 0.85em;
    bottom: 25px;
    padding: 2px 10px;
  }
  .listing_cell .info_block {
    width: 500px;
  }
  .listing_cell .info_block a.info_title_link .info_title {
    font-size: 1.45em;
    margin: 9px auto 2px auto;
    width: 460px;
  }
  .listing_cell .info_block .info_location {
    font-size: 1.05em;
  }
  .listing_cell .info_block .info_message {
    padding: 15px 15px 0px 20px;
    max-width: 500px;
    font-size: 1em;
    height: auto;
  }
  .listing_cell .info_block .info_financial {
    margin-top: -3px;
    height: 73px;
  }
  .listing_cell .info_block .info_rent_block {
    font-size: 2.4em;
    line-height: 70px;
  }
  .listing_cell .info_block .info_rent_block .rent_costs {
    font-size: 0.8em;
    margin-left: -5px;
  }
  .listing_cell .info_block_footer {
    width: 60px;
    height: 50px;
  }
  .listing_cell .info_block_footer .list_favorite .fa-heart, .listing_cell .info_block_footer .list_favorite .fa-heart-o {
    font-size: 2em;
    line-height: 50px;
  }
  .thumb_data_container {
    bottom: 25px;
  }
  .thumb_data_container .list_partner_label {
    font-size: 0.75em;
    padding: 0 0.4em 0 0.3em;
    height: 23px;
    line-height: 24px;
    top: -1.9em;
  }
  .thumb_data_container .list_partner_label .fas {
    margin: 0 3px 0 0px;
    font-size: 0.9em;
  }
  .thumb_data_container .list_listing_type_label {
    font-size: 1em;
    padding: 0 0.6em 0 0.3em;
    height: 34px;
    line-height: 34px;
  }
}
#adunit_results {
  width: 100%;
  margin-bottom: 20px;
}

.list_sidebar_label {
  color: var(--primary-darkest);
  letter-spacing: 0.25em;
  text-align: center;
  font-size: 0.75em;
  font-weight: 600;
  margin: 0;
  width: 300px;
  opacity: 0.8;
  text-transform: uppercase;
  height: 33px;
  line-height: 40px;
}

@media (min-width: 1800px) and (min-height: 800px) {
  .list_sidebar_label {
    letter-spacing: 0.3em;
    font-size: 0.85em;
  }
}
.list_interstitial_ad_test {
  width: 728px;
  height: 90px;
  line-height: 90px;
  margin: 0 auto;
}

/*::::::::::::::::::::::::::::: LISTING GALLERIES PREVIEW :::::::::::::::::::::::::::::::*/
.listing_cell .gallery_preview_nav {
  background-color: rgba(1, 1, 1, 0.25);
  position: absolute;
  color: white;
  top: 0;
  bottom: 0;
  width: 10%;
  display: none;
  transition: 0.2s;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.listing_cell .gallery_preview_nav .nav_icon_container {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.listing_cell .gallery_preview_nav .nav_icon_container .fas {
  font-size: 1.6em;
}
.listing_cell .gallery_preview_nav:hover {
  background-color: rgba(1, 1, 1, 0.4);
}
.listing_cell .gallery_preview_nav:active {
  background-color: rgba(1, 1, 1, 0.6);
}
.listing_cell .gallery_preview_left {
  left: 0;
  height: 100%;
}
.listing_cell .gallery_preview_right {
  right: 0;
  height: calc(100% - 22px);
}
.listing_cell .gallery_preview_right .nav_icon_container {
  padding-top: 22px;
}

@media screen and (max-width: 1500px) {
  .listing_cell .gallery_preview_nav {
    width: 12%;
  }
  .listing_cell .gallery_preview_nav .nav_icon_container .fas {
    font-size: 1.4em;
  }
  .listing_cell .gallery_preview_right {
    height: calc(100% - 18px);
  }
  .listing_cell .gallery_preview_right .nav_icon_container {
    padding-top: 18px;
  }
}
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::: BACK TO TOP BTN :::::::::::::::::::::::::::::::::::::*/
/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.back_to_top_btn {
  width: 56px;
  height: 56px;
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 2;
  background-color: var(--primary-ui);
  color: white;
  font-size: 20px;
  text-align: center;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  transition-duration: 0.25s;
  transition-property: background-color, box-shadow;
}
.back_to_top_btn .fas {
  width: 100%;
  height: 100%;
  display: block;
  line-height: 52px;
}
.back_to_top_btn:hover {
  box-shadow: 0 0 15px var(--primary-fairer);
}
.back_to_top_btn:active {
  transform: scale(1.05);
}

.back_to_top_tooltip {
  position: absolute;
  font-size: 0.7em;
  font-weight: normal !important;
  background: var(--tooltip);
  color: white;
  border-radius: 8px;
  display: block;
  text-align: center;
  z-index: 1;
  top: -66px;
  left: 30%;
  transform: translateX(-50%);
  white-space: nowrap;
  line-height: 1.4em;
  padding: 7px 10px;
}
.back_to_top_tooltip:after {
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(0, 20, 55, 0);
  border-top-color: var(--tooltip);
  border-width: 8px;
  margin-left: -8px;
  top: 100%;
  left: 56%;
}

/*:::::::::::::::::::::::::::::::::::::::::::: FEATURED CELLS :::::::::::::::::::::::::::::::::::::::::::: */
.sticky_sidebar_ad {
  position: fixed !important;
  top: 60px !important;
  right: 0;
}

.list_sidebar_ad_test {
  width: 320px;
  height: 620px;
  line-height: 620px;
}

.list_ad_sidebar {
  width: 320px;
  height: 620px;
  transition: all 0.1s ease;
  text-align: center;
  float: right;
}

/* Hide Skyscraper ad slot on tablets */
@media screen and (max-width: 1080px) {
  .list_ad_sidebar {
    display: none !important;
  }
}
#featured_container {
  width: 622px;
  padding: 1px 5px 5px 5px;
  text-align: center;
  margin: 0 auto 20px auto;
  position: relative;
  background: white;
  box-sizing: border-box;
}
#featured_container .hide_featured_container {
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  font-size: 1.4em;
  color: var(--primary-ui);
  text-align: center;
  line-height: 30px;
  position: absolute;
  z-index: 1;
  cursor: pointer;
}
#featured_container .hide_featured_container:hover {
  color: var(--primary-darker-er);
}
#featured_container .hide_featured_container:active {
  transform: scale(1.15);
}
#featured_container .featured_label {
  position: absolute;
  top: 5px;
  left: 5px;
  padding: 5px 6px 4px 6px;
  font-size: 0.9em;
  font-weight: bold;
}
#featured_container .featured_label em {
  font-weight: normal;
  font-style: normal;
}
#featured_container .featured_wrapper {
  margin-top: 38px;
}
#featured_container .featured_wrapper .featured_listing {
  height: 90px;
  width: 290px;
  display: inline-block;
  position: relative;
  margin: 0 5px 5px 5px;
}
#featured_container .featured_wrapper .featured_listing img {
  width: 120px;
  height: 90px;
  float: left;
  cursor: pointer;
}
#featured_container .featured_wrapper .featured_listing .featured_icon {
  position: absolute;
  top: 0px;
  left: 2px;
  font-size: 0.9em;
}
#featured_container .featured_wrapper .featured_listing .featured_cost {
  font-weight: bold;
  font-size: 1em;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 2px 6px;
  background-color: rgba(1, 1, 1, 0.7);
  color: white;
  border-top-right-radius: 5px;
  border-bottom-left-radius: 5px;
}
#featured_container .featured_wrapper .featured_listing .featured_cost span {
  margin-left: 3px;
  font-size: 0.8em;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table {
  width: 170px;
  height: 90px;
  float: right;
  font-size: 0.8em;
  padding: 0px 5px 0px 10px;
  box-sizing: border-box;
  background: #ffeec3;
  text-align: left;
  display: table;
  cursor: pointer;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table:hover {
  background: #f2e3bd;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table:active {
  background: #ffffff;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell {
  display: table-cell;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  text-align: left;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_type {
  color: var(--primary-border);
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9em;
  line-height: 1em;
  margin: 0 0 2px 0;
  letter-spacing: 0.05em;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_title {
  font-weight: bold;
  width: 150px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_explainer {
  font-style: italic;
  font-size: 0.95em;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_address {
  font-size: 0.8em;
  margin-top: 4px;
  line-height: 1.2em;
  text-indent: -10px;
  margin-left: 10px;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_address .fas {
  color: #e4b337;
  font-size: 1.1em;
  margin-right: 4px;
}
#featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_address b {
  text-transform: uppercase;
}

.featured_visited {
  background: white !important;
}

@media (min-width: 1800px) and (min-height: 800px) {
  #featured_container {
    width: 840px;
    padding: 1px 10px 0 10px;
    margin: 0 auto 20px auto;
  }
  #featured_container .hide_featured_container {
    width: 40px;
    height: 40px;
    font-size: 1.7em;
    line-height: 40px;
  }
  #featured_container .featured_label {
    top: 8px;
    left: 10px;
    padding: 4px 8px 5px 8px;
    font-size: 1.1em;
  }
  #featured_container .featured_wrapper {
    margin-top: 50px;
  }
  #featured_container .featured_wrapper .featured_listing {
    height: 120px;
    width: 380px;
    margin: 0px 10px 10px 10px;
  }
  #featured_container .featured_wrapper .featured_listing img {
    width: 160px;
    height: 120px;
  }
  #featured_container .featured_wrapper .featured_listing .featured_icon {
    top: 0px;
    left: 2px;
    font-size: 1.1em;
  }
  #featured_container .featured_wrapper .featured_listing .featured_cost {
    font-size: 1.4em;
    padding: 1px 6px 1px 6px;
  }
  #featured_container .featured_wrapper .featured_listing .featured_cost span {
    font-size: 0.75em;
  }
  #featured_container .featured_wrapper .featured_listing .featured_info_table {
    width: 220px;
    height: 120px;
    font-size: 1.05em;
    padding: 0px 5px 0px 10px;
  }
  #featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_type {
    font-size: 0.9em;
    line-height: 1em;
    margin: 2px 0;
    letter-spacing: 0.05em;
  }
  #featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_title {
    width: 200px;
  }
  #featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_explainer {
    font-size: 0.95em;
  }
  #featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_address {
    font-size: 0.8em;
    margin-top: 4px;
    line-height: 1.2em;
    text-indent: -10px;
    margin-left: 10px;
  }
  #featured_container .featured_wrapper .featured_listing .featured_info_table .featured_info_cell .featured_address .fas {
    font-size: 1.1em;
    margin-right: 4px;
  }
}
/* 6. Icomoon fonts config ---*/
/*----------------------------*/
i.fas {
  /* force font-family on <i> as browser extensions may try to change it */
  font-family: var(--icon-font) !important;
  /* think about people with disabilities using readers */
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* font-smoothing is not implemented in css3, using vendor plugins */
  -webkit-font-smoothing: antialiased; /* WebKit */
  -moz-osx-font-smoothing: grayscale; /* Firefox */
}

/* Append only icomoon classes of fonts used in searching page regular & modal views */
.fa-address-card-o:before {
  content: "\f2bc";
}

.fa-angle-left:before {
  content: "\f104";
}

.fa-angle-right:before {
  content: "\f105";
}

.fa-bars:before {
  content: "\f0c9";
}

.fa-bed:before {
  content: "\f236";
}

.fa-building:before {
  content: "\f1ad";
}

.fa-calendar-check-o:before {
  content: "\f274";
}

.fa-caret-down:before {
  content: "\f0d7";
}

.fa-caret-up:before {
  content: "\f0d8";
}

.fa-check:before {
  content: "\f00c";
}

.fa-circle:before {
  content: "\f111";
}

.fa-chevron-up:before {
  content: "\f077";
}

.fa-chevron-down:before {
  content: "\f078";
}

.fa-cog:before {
  content: "\f013";
}

.fa-comments:before {
  content: "\f086";
}

.fa-envelope:before {
  content: "\f0e0";
}

.fa-euro:before {
  content: "\f153";
}

.fa-expand:before {
  content: "\f065";
}

.fa-external-link:before {
  content: "\f08e";
}

.fa-eye-slash:before {
  content: "\f070";
}

.fa-facebook:before {
  content: "\f09a";
}

.fa-feed:before {
  content: "\f09e";
}

.fa-heart:before {
  content: "\f004";
}

.fa-heart-o:before {
  content: "\f08a";
}

.fa-home:before {
  content: "\f015";
}

.fa-hourglass-half:before {
  content: "\f252";
}

.fa-link:before {
  content: "\f0c1";
}

.fa-map:before {
  content: "\f279";
}

.fa-map-marker:before {
  content: "\f041";
}

.fa-minus:before {
  content: "\f068";
}

.fa-pencil-square-o:before {
  content: "\f044";
}

.fa-phone:before {
  content: "\f095";
}

.fa-photo:before {
  content: "\f03e";
}

.fa-plus:before {
  content: "\f067";
}

.fa-search:before {
  content: "\f002";
}

.fa-sign-in:before {
  content: "\f090";
}

.fa-sign-out:before {
  content: "\f08b";
}

.fa-street-view:before {
  content: "\f21d";
}

.fa-times:before {
  content: "\f00d";
}

.fa-twitter:before {
  content: "\f099";
}

.fa-university:before {
  content: "\f19c";
}

.fa-user:before {
  content: "\f007";
}

.fa-users:before {
  content: "\f0c0";
}

.fa-file-text-o:before {
  content: "\f0f8";
}
