/*
  Theme Name: HomNest
  Author: Egloo
  Author URI: https://egloo.it
  Version: 1.0.0
*/

/* -----------------------------------
==============================================================================
	# FONT
==============================================================================
----------------------------------- */

@import url("https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap");

@font-face {
  font-family: IvyMode;
  font-style: normal;
  font-weight: 300;
  src: url(./files/fonts/IvyMode-Light.otf) format("opentype");
}

@font-face {
  font-family: IvyMode;
  font-style: italic;
  font-weight: 300;
  src: url(./files/fonts/IvyMode-LightItalic.otf) format("opentype");
}

@font-face {
  font-family: IvyMode;
  font-style: normal;
  font-weight: 400;
  src: url(./files/fonts/IvyMode-Regular.otf) format("opentype");
}

@font-face {
  font-family: IvyMode;
  font-style: italic;
  font-weight: 400;
  src: url(./files/fonts/IvyMode-Italic.otf) format("opentype");
}

@font-face {
  font-family: TypoRound;
  font-style: normal;
  font-weight: 300;
  src: url(./files/fonts/TypoRound-Light.otf) format("opentype");
}

@font-face {
  font-family: TypoRound;
  font-style: italic;
  font-weight: 300;
  src: url(./files/fonts/TypoRound-LightItalic.otf) format("opentype");
}

@font-face {
  font-family: TypoRound;
  font-style: normal;
  font-weight: 400;
  src: url(./files/fonts/TypoRound-Light.otf) format("opentype");
}

@font-face {
  font-family: TypoRound;
  font-style: italic;
  font-weight: 400;
  src: url(./files/fonts/TypoRound-LightItalic.otf) format("opentype");
}

/* -----------------------------------
==============================================================================
	# GENERAL
==============================================================================
----------------------------------- */

:root {
  --vh-100: 100vh;
  --full-height: var(--vh-100);
  --site-width: 1220px;

  --ff-normal: "Jost", sans-serif;
  --ff-alternate: "TypoRound", sans-serif;

  --green: #1c2020;
  --gold: #b88f34;
  --beige: #f2ece0;

  font-size: 16px;
  line-height: 1.2;
  font-family: var(--ff-normal);

  color: #1c2020;
}

::-moz-selection {
  color: white;
  background: black;
}

::selection {
  color: white;
  background: black;
}

body::-webkit-scrollbar {
  width: 0.7rem;
}

body::-webkit-scrollbar-thumb {
  background: var(--green);
  border-radius: 8px;
}

body {
  position: relative;
}

body::-webkit-scrollbar-track {
  background: var(--grey);
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

body {
  min-height: 100vh;
  position: relative;
}

img {
  object-fit: cover;
}

img,
svg,
video,
iframe {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--ff-alternate);
}

h1 em,
h2 em,
h3 em,
h4 em,
h5 em,
h6 em {
  font-style: normal !important;
}

a {
  text-decoration: none;
  color: inherit;
}

li {
  list-style: none;
}

p:not(:last-child) {
  margin-bottom: 0.9rem;
}

input,
textarea,
select {
  font-family: var(--ff-normal);
  line-height: 1;
}

a,
select {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.container {
  width: 100%;
  max-width: 1356px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

body .gm-style-moc {
  background-color: rgba(255, 255, 255, 0.9);
}

body .gm-style-mot {
  font-family: "Graphico";
  color: var(--gold);
  font-size: 1.75rem;
}

body.page-template-contact .gm-style .gm-style-iw-c,
body.single-apartment .gm-style .gm-style-iw-c {
  width: 350px;
  max-width: 350px;
  background-color: var(--green);
  padding: 1.4rem 1.5rem 1.8rem 1.6rem !important;
  box-shadow: none;
  border-radius: 0;
  margin-left: -217px;
  top: 39px;
}

body.page-template-contact .gm-style .gm-style-iw-tc::after,
body.single-apartment .gm-style .gm-style-iw-tc::after {
  display: none;
}

body.page-template-contact .gm-style .gm-style-iw-d,
body.single-apartment .gm-style .gm-style-iw-d {
  overflow: unset !important;
}

body.page-template-contact .map-info-window h3 {
  font-size: 1.375rem;
  font-weight: 300;
  font-style: italic;
  letter-spacing: 0.02em;
  padding-bottom: 0.75rem;
  color: white;
}

body.single-apartment .map-info-window h3 {
  font-size: 1.375rem;
  font-weight: 300;
  font-style: italic;
  letter-spacing: 0.02em;
  padding-bottom: 0.6rem;
  color: white;
}

body.single-apartment .map-info-window p.address-proximity {
  padding-bottom: 0.9375rem;
  color: white;
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
}

body.page-template-contact .view-map-wrap a,
body.single-apartment .view-map-wrap a {
  position: relative;
  color: var(--gold);
  font-weight: 400;
  letter-spacing: 0.1em;
  font-family: var(--ff-normal);
  text-transform: uppercase;
}

body.page-template-contact .view-map-wrap a:after,
body.single-apartment .view-map-wrap a:after {
  position: absolute;
  bottom: -0.15rem;
  left: 0;
  width: 100%;
  content: "";
  height: 1px;
  border-bottom: 1px solid var(--gold);
}

body.page-template-contact .gm-style .gm-style-iw-t button,
body.single-apartment .gm-style .gm-style-iw-t button {
  display: none !important;
}

#multi-map {
  min-height: 1024px;
}

#location-info {
  display: none;
  position: absolute;
  bottom: 1rem;
  right: 8rem;
  width: 26rem;
  min-width: 26rem;
  pointer-events: none;
}

#location-info.active {
  display: block;
}

#location-info .swiper {
  overflow: visible;
}

#location-info button.next-arrow {
  position: absolute;
  right: 7rem;
  bottom: 8rem;
  z-index: 3;
  background: transparent;
  outline: 0;
  box-shadow: none;
  border: 0;
  cursor: pointer;
}

#location-info button.close-button {
  position: absolute;
  right: 7rem;
  bottom: 16.5rem;
  z-index: 3;
  background: transparent;
  outline: 0;
  box-shadow: none;
  border: 0;
  cursor: pointer;
}

#location-info button.close-button img {
  width: 1.5rem;
}

#location-info .swiper-slide,
#location-info .content,
#location-info .close-button,
#location-info .next-arrow,
#location-info .content .link {
  pointer-events: auto;
}

#location-info .image-wrapper {
  position: relative;
  margin-bottom: -5.6rem;
  margin-left: auto;
  width: 100%;
  max-width: 31rem;
  padding-bottom: 0;
  height: 32rem;
  object-fit: cover;
}

#location-info .image-wrapper .slide-image {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

#location-info .content {
  position: relative;
  width: 100%;
  max-width: 30rem;
  background-color: #2a3936;
  padding: 3rem;
  color: white;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  pointer-events: none;
  left: -5.6rem;
}

#location-info .content .distance-phrase-wrapper {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}

#location-info .content .specs {
  display: flex;
  gap: 1rem;
  align-items: center;
}

#location-info .content .specs .single-spec {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

#location-info .content .specs .single-spec .value {
  margin-bottom: 0;
  font-size: 0.875rem;
}

#location-info .content .specs .single-spec img {
  object-fit: contain;
}

#location-info .content .link {
  text-transform: uppercase;
  color: #b88f34;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  position: relative;
  opacity: 1;
}

#location-info .content .link::after {
  content: "";
  position: absolute;
  bottom: -0.25em;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #b88f34;
  transition-duration: 0.3s;
  transition-property: opacity, transform;
  pointer-events: none;
}

#location-info .content .link:hover::after {
  opacity: 0;
  transform: translateY(-0.25em);
}

.map-container .svg-top,
.map-container .svg-bottom {
  pointer-events: none;
}

/* -----------------------------------
==============================================================================
	# HEADER
==============================================================================
----------------------------------- */
header.egloo {
  display: flex;
  justify-content: center;
}

header.egloo .container {
  padding-top: 2.5rem;
  display: flex;
  justify-content: space-between;
  color: white;
  position: absolute;
  top: 0;
  z-index: 99;
}

header.egloo .container .column-left .logo {
  width: 9.43rem;
}

header.egloo .container .column-left .logo img {
  width: 100%;
}

header.egloo .container .column-right {
  display: flex;
  align-items: center;
  gap: 2.5rem;
	grid-gap: 2.5rem;
}

header.egloo .container .changing-language {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

header.egloo .container .changing-language span,
body header section.menu .columns .column-right .changing-language span,
footer.egloo .container .changing-language span {
  order: 2;
}

header.egloo .container .changing-language a.ENG,
body header section.menu .columns .column-right .changing-language a.ENG,
footer.egloo .container .changing-language a.ENG {
  order: 1;
}

header.egloo .container .changing-language a.ITA,
body header section.menu .columns .column-right .changing-language a.ITA,
footer.egloo .container .changing-language a.ITA {
  order: 3;
}

header.egloo .container .changing-language a:not(.active),
header.egloo .container .changing-language span {
  opacity: 0.3 !important;
}

header.egloo .container .column-right .contact-button button {
  display: flex;
  align-items: center;
  font-size: 0.87rem;
  gap: 0.6rem;
  height: 2.25rem;
  width: 9.93rem;
  border-radius: 23px;
  justify-content: center;
  border: none;
  cursor: pointer;
  color: white;
  border: 1px solid white;
  background-color: transparent;
  font-family: "Jost", sans-serif;
  transition: ease-in-out 0.3s;
}

header.egloo .container .column-right .contact-button button img {
  transition: ease-in-out 0.3s;
}

header.egloo .container .column-right .contact-button button:hover img {
  transform: translateX(0.5rem);
  transition: ease-in-out 0.3s;
}

body.home header.egloo .container .column-right .burger-menu .close,
body header section.menu header.egloo .container .column-right .burger-menu .open {
  display: none;
}

header.egloo .container .column-right section.menu {
  /* display: none; */
  position: absolute;
}

header.egloo .container .column-right .burger-menu .linea {
  width: 1.64rem;
  border-top: 1px solid white;
  transition: transform 0.3s ease-in-out, opacity 0.2s ease-in-out;
}

header.egloo .container .column-right .burger-menu .linea-3 {
  width: 50%;
}

header.egloo .container .column-right .burger-menu .aperto .linea-3 {
  width: 100%;
  transform: translate(-8px, -19px) rotate(-45deg);
}

header.egloo .container .column-right .burger-menu button {
  height: 1.25rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
  background-color: transparent;
  border: none;
  cursor: pointer;
  background-color: transparent;
  transition: transform 0.3s ease-in-out;
}

.burger-menu {
  position: relative;
  display: inline-block;
}

.linea-1 {
  transform-origin: center left;
}

.linea-3 {
  transform-origin: center right;
}

.burger-menu button.aperto .linea-1 {
  transform: translate(0px, 0px) rotate(45deg);
}

.burger-menu button.aperto .linea-2 {
  opacity: 0;
}

/* -----------------------------------
==============================================================================
	# FRONT PAGE
==============================================================================
----------------------------------- */
body.home section#hero .bg {
  pointer-events: none;
}

section#hero {
  width: 100%;
  height: 100vh;
  position: relative;
}

section#hero .bg {
  width: 100%;
  height: 90%;
  position: relative;
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 5.87rem;
}

.swiper-pagination-bullet-active {
  background-color: white !important;
}

.swiper-pagination-bullet {
  opacity: unset;
  border: 1px solid white;
  background: transparent;
  width: 10px;
  height: 10px;
}

section#hero .bg img {
  width: 100%;
  height: 100%;
}

body.single-apartment section#hero .title {
  margin-top: -1rem;
}

section#hero .title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-top: -3rem;
  text-align: center;
  color: white;
  z-index: 2;
}

body.home section#hero .title *,
section#hero .title h1 {
  font-size: 3rem;
  line-height: 0.87;
  font-weight: 300;
  font-family: var(--ff-alternate);
}

section#hero .title h1 {
  font-style: normal;
}

section#hero .menu-fixed {
  width: 100%;
  position: fixed;
  bottom: 3.5%;
  z-index: 9;
  opacity: 1;
  visibility: visible;
}

body.single-apartment .menu-fixed.fixed {
  position: fixed;
  width: 100%;
  z-index: 99;
  bottom: 3%;
  left: 0;
  opacity: 1;
  visibility: visible;
}

body.single-apartment .menu-fixed,
body.single-apartment .menu-fixed.invisible,
body.home section#hero .menu-fixed.invisible {
  width: 100%;
  opacity: 0;
  transition: opacity 300ms ease-in-out;
  visibility: hidden;
}

body.single-apartment .menu-fixed .container {
  max-width: 46.35rem;
}

.menu-fixed {
  width: 57%;
  margin: 0 auto;
}

.menu-fixed .container {
  max-width: 59.2rem;
}

.menu-fixed .container .cont {
  color: var(--green);
  display: flex;
  align-items: center;
  /* justify-content: space-between; */
  margin: 0 auto;
  height: 6rem;
  left: 50%;
  z-index: 99;
  background-color: #fff;
  border-radius: 50px;
  outline: 1px solid rgba(0, 0, 0, 0.1);
  outline-offset: -1rem;
  /*   width: 95%; */
}

.menu-fixed .container .cont .collection {
  position: relative;
  display: flex;
  align-items: center;
  height: 2rem;
  /* border-right: 1px solid rgba(0, 0, 0, 0.1); */
  left: 1rem;
}

.menu-fixed .container .cont .collection:not(:last-child) {
  cursor: pointer;
}

.menu-fixed .container .cont .collection input::placeholder {
  color: var(--green);
}

body .daterangepicker {
  display: block !important;
  transition: opacity 0.3s ease;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  bottom: 142px;
}

body.opened .daterangepicker {
  opacity: 1;
  visibility: visible;
  margin-top: 1rem;
  position: fixed;
  bottom: 142px;
}

body.opened .daterangepicker {
  top: auto !important;
}

body .daterangepicker .drp-buttons .drp-selected,
body .daterangepicker .drp-buttons .cancelBtn {
  display: none;
}

body .daterangepicker .drp-buttons button {
  cursor: pointer;
}

body .daterangepicker .calendar-table td {
  width: 2.25rem;
  height: 2.25rem;
}

body .daterangepicker .calendar-table th.next.available,
body .daterangepicker .calendar-table th.prev.available {
  position: relative;
  top: -1px;
}

body .daterangepicker .calendar-table th.next.available:hover,
body .daterangepicker .calendar-table th.prev.available:hover {
  background-color: transparent;
}

body .daterangepicker td.in-range {
  background-color: #fcf7ef;
  color: black;
}

body .daterangepicker td.active {
  text-decoration: none;
  /* border-radius: 50%; */
}

body .daterangepicker td.start-date,
body .daterangepicker td.end-date {
  position: relative;
  z-index: 2;
}

body .daterangepicker td.start-date:before,
body .daterangepicker td.end-date:before {
  content: "";
  position: absolute;
  width: 100%;
  top: 0%;
  right: 0;
  height: 100%;
  border-radius: 50%;
  background-color: #f2ece0;
  z-index: -1;
}

body .daterangepicker td.off:hover {
  color: #999 !important;
}

body .daterangepicker td.active.start-date.in-range,
body .daterangepicker td.off,
body .daterangepicker td.end-date.start-date {
  background: white !important;
}

body .daterangepicker td.off:before {
  content: none !important;
}

body .daterangepicker td.start-date {
  border-top-left-radius: 3rem;
  border-bottom-left-radius: 3rem;
}

body .daterangepicker td.end-date {
  border-top-right-radius: 3rem;
  border-bottom-right-radius: 3rem;
}

body .daterangepicker td.active,
body .daterangepicker td.active:hover {
  background-color: #fcf7ef;
  border-color: transparent;
  color: black;
}

body .table-condensed tr .month {
  color: var(--green);
  font-size: 0.87rem;
  text-transform: uppercase;
  font-weight: 400;
}

body .table-condensed tr th {
  color: #b88f34;
  font-size: 0.87rem;
  font-weight: 400;
  padding-bottom: 0.87rem;
}

body .daterangepicker:before,
body .daterangepicker:after {
  all: unset;
}

body .daterangepicker {
  border-radius: 12px;
  border: 1px solid #ebebeb;
  margin-top: -21px;
  font-family: var(--ff-normal);
  font-size: 0.87rem;
  padding: 1.81rem;
  padding-top: 1.4rem;
  padding-right: 1.43rem;
  padding-bottom: 1.43rem;
  line-height: 1em;
}

body .daterangepicker .drp-calendar.left,
body .daterangepicker .drp-calendar.right,
body .daterangepicker .drp-buttons {
  padding: 0rem;
}

body .daterangepicker .drp-buttons {
  border: none;
}

body .daterangepicker .drp-calendar.left:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translateY(-50%);
  height: 82%;
  border-left: 1px solid #ebebeb;
}

body .daterangepicker .drp-calendar.left .calendar-table {
  padding-right: 1.62rem;
}

body .daterangepicker .drp-calendar.right .calendar-table {
  padding-left: 1.62rem;
}

body .daterangepicker td.available:hover,
body .daterangepicker th.available:hover {
  background-color: #fcf7ef;
}

body .daterangepicker .calendar-table .next span,
body .daterangepicker .calendar-table .prev span {
  color: var(--green);
  border: solid black;
  border-width: 0 1px 1px 0;
  border-radius: 0;
  display: inline-block;
  padding: 3px;
}

body .daterangepicker .drp-buttons .btn {
  margin-top: 0.87rem;
  background-color: var(--green);
  border: none;
  color: white;
  text-transform: uppercase;
  font-family: var(--ff-normal);
  height: 2.25rem;
  width: 5.43rem;
  border-radius: 18px;
  transition: all ease-in-out 0.3s;
  font-weight: 400;
}

body .daterangepicker .drp-buttons .btn:hover {
  background-color: var(--gold);
  color: var(--green);
  transition: all ease-in-out 0.3s;
}

/* Style for options */
.select-items {
  position: absolute;
  z-index: 1;

  background-color: #f9f9f9;
  min-width: 180px;
  overflow: auto;
  max-height: 200px;
  border: 1px solid #ddd;
  border-radius: 4px;
}

/* Style for individual option */
.select-option {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  cursor: pointer;
  user-select: none;
}

.select-hide {
  display: none;
}

/* Style for selected option */
/* .select-selected::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #606060 transparent transparent transparent;
} */

.menu-fixed .container .cont .collection .drop-dowm-icon-changing {
  width: 0.6rem;
  height: 0.3rem;
}

.menu-fixed .container .cont .collection:last-child {
  border: unset;
}

.menu-fixed .container .cont .collection .btn-minus {
  display: flex;
  align-items: center;
  margin-left: 1.12rem;
}

.menu-fixed .container .cont .collection .icon {
  z-index: 9;
  /* margin-right: 0.7rem; */
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
}

.menu-fixed .container .cont .collection .icon img {
  height: 1.4rem;
  object-fit: contain;
}

.menu-fixed .container .cont .drop-dowm-icon-changing {
  margin-left: 1.12rem;
}

.menu-fixed .container .cont .collection .increment-decrement {
  padding-left: 3rem;
  padding-right: 1rem;
  font-size: 0.875rem;
  display: flex;
  align-items: center;
}

.menu-fixed .container .cont .collection .increment-decrement svg line {
  stroke: #b1b1b1;
  opacity: 1;
}

.menu-fixed .container .cont .collection .increment-decrement input {
  border: none;
  display: flex;
  justify-content: center;
  all: unset;
  width: 3rem;
  text-align: center;
}

.menu-fixed .container .cont .collection .increment-decrement .btn-plus button,
.menu-fixed .container .cont .collection .increment-decrement .btn-minus button {
  border: none;
  background-color: transparent;
  font-size: 0.87rem;
  height: 1rem;
  cursor: pointer;
}

.menu-fixed .container .cont .collection .increment-decrement .btn-plus {
  display: flex;
  align-items: center;
}

.menu-fixed .container .cont .collection .check-availability-button {
  /* margin-left: 2rem; */
  display: flex;
  justify-content: center;
  position: relative;
  left: 1rem;
}

.menu-fixed .container .cont .collection .check-availability-button button {
  border: none;
  background-color: transparent;
}

.menu-fixed .container .cont .collection .check-availability-button button a {
  border: none;
  display: flex;
  align-items: center;
  text-transform: uppercase;
  background-color: var(--green);
  color: white;
  line-height: 1.83;
  font-size: 0.75rem;
  font-weight: 400;
  padding: 0.56rem 1.5rem;
  padding-bottom: 0.4rem;
  border-radius: 30px;
  transition: all ease-in-out 0.3s;
}

.menu-fixed .container .cont .collection .check-availability-button button a:hover {
  background-color: var(--gold);
}

.menu-fixed .container .cont .collection .increment-decrement input::-webkit-outer-spin-button,
.menu-fixed .container .cont .collection .increment-decrement input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

body.home section#about {
  padding-top: 2.75rem;
}

body.home section#premium-apartments {
  background-color: var(--green);
}

body.page-template-about section#premium-apartments {
  background-color: #2a3936;
  position: relative;
}

body.page-template-about .vertical-text-right {
  color: #23302e;
  bottom: 25rem;
}

body.page-template-about .vertical-text-left {
  color: #23302e;
  top: 20rem;
}

body.home section#about .container .columns,
body.home section#premium-apartments .container .columns,
body.page-template-about section#about .container .columns,
body.page-template-about section#premium-apartments .container .columns {
  width: calc((100% / 12 * 10) - (2.5rem * 11 / 12));
  display: flex;
  margin: 0 auto;
  justify-content: space-between;
  gap: 2.5rem;
}

body.home section#about .container .columns {
  padding-bottom: 9.37rem;
}

body.home section#about .container .columns .column-left,
body.home section#premium-apartments .container .columns .column-left,
body.page-template-about section#premium-apartments .container .columns .column-left {
  width: 50%;
}

body.home section#premium-apartments .container .columns .column-left .img,
body.page-template-about section#premium-apartments .container .columns .column-left .img {
  position: relative;
  top: -5.06rem;
}

body.home section#about .container .columns .column-left p,
body.page-template-about section#about .container .columns .column-left p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.71;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body.home section#about .container .columns .column-left .title *,
body.page-template-about section#about .container .columns .column-left .title h2 {
  padding-top: 0.4rem;
  color: var(--green);
  font-size: 3rem;
  line-height: 1.2;
  font-weight: 300;
  font-family: var(--ff-alternate);
  font-style: normal;
}

section#intro-about .columns .column.left .title {
  max-width: 24rem;
}

body.home section#about .container .columns .column-left .title {
  max-width: 31rem;
}

body.home section#about .container .columns .column-left .title em {
  font-style: italic;
}

body.home section#about .container .columns .column-right,
body.home section#premium-apartments .container .columns .column-right,
body.page-template-about section#premium-apartments .container .columns .column-right {
  width: 36%;
}

body.home section#about .container .columns .column-right,
body.page-template-about section#about .container .columns .column-right {
  padding-top: 8.38rem;
}

body.home section#premium-apartments .container .columns .column-right,
body.page-template-about section#premium-apartments .container .columns .column-right {
  padding-top: 5.87rem;
  color: white;
	padding-bottom: 6rem;
}

body.page-template-about section#premium-apartments .container .columns .column-right .title,
body.home section#premium-apartments .container .columns .column-right .title {
  margin-left: -2.5rem;
}

body.home section#premium-apartments .container .columns .column-right .title *,
body.page-template-about section#premium-apartments .container .columns .column-right .title * {
  color: white;
  font-size: 4rem;
  font-weight: 300;
  font-family: var(--ff-alternate);
  padding-bottom: 2.5rem;
  line-height: 1;
}

body.home section#homnest-collection .columns {
  display: flex;
  margin-left: auto;
}

body.home section#homnest-collection .columns .column-left .title h3 {
  color: var(--green);
  margin: 0;
  font-size: 4rem;
  font-weight: 300;
  font-family: var(--ff-alternate);
  padding-bottom: 2.5rem;
  line-height: 1;
}

body.home section#homnest-collection .columns .column-right {
  padding-top: 5.3rem;
  width: calc(50% + 2.5rem);
  padding-left: 2.5rem;
}

body.home section#homnest-collection .columns .column-right img {
  width: 100%;
  height: 44rem;
  object-position: bottom;
}

body.home section#homnest-collection .columns .column-left .description,
body.home section#homnest-collection .columns .column-left .button-explore {
  margin-left: 2.5rem;
}

body.home section#premium-apartments .container .columns .column-right .description p,
body.page-template-about section#premium-apartments .container .columns .column-right .description p,
body.home section#homnest-collection .columns .column-left .description p {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
  padding-bottom: 6.25rem;
}

body.page-template-about section#premium-apartments .container .columns .column-right .description p {
  font-weight: 300;
}

.gold-text {
  padding-bottom: 1.9rem;
  font-size: 1.4rem;
  font-weight: 200;
  line-height: 1.2;
  font-family: var(--ff-alternate);
  text-transform: uppercase;
  color: var(--gold);
}

body.home section#about .container .columns .column-right .description p {
  color: var(--green);
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
}

body.home section#premium-apartments .container .columns .column-right .button-explore button,
body.page-template-about section#premium-apartments .container .columns .column-right .button-explore button,
body.home section#homnest-collection .columns .column-left .button-explore button,
body.page-template-about section#homnest-collection .columns .column-left .button-explore button {
  width: 100%;
  align-items: center;
  justify-content: space-between;
  background-color: transparent;
  border: none;
  font-size: 1.75rem;
  font-family: var(--ff-alternate);
  font-style: italic;
  color: var(--gold);
  font-weight: 300;
  cursor: pointer;
  transition: ease-in-out 0.3s;
}

body.home section#premium-apartments .container .columns .column-right .button-explore button a,
body.page-template-about section#premium-apartments .container .columns .column-right .button-explore button a,
body.home section#homnest-collection .columns .column-left .button-explore button a,
body.page-template-about section#homnest-collection .columns .column-left .button-explore button a {
  display: flex;
  justify-content: space-between;
  text-align: left;
}

body.page-template-about section#premium-apartments .container .img-center {
  width: calc(100% / 12 * 8);
  margin: 0 auto;
  padding-bottom: 8.37rem;
}

body.page-template-about section#premium-apartments .container .responsability {
  width: calc(100% / 12 * 8);
  margin: 0 auto;
}

body.page-template-about section#premium-apartments .container .responsability .title * {
  color: white;
  margin: 0;
  font-size: 4rem;

  font-weight: 300;
  font-family: var(--ff-alternate);
  padding-bottom: 2.5rem;
  line-height: 1;
  text-transform: uppercase;
  text-align: center;
}

body.page-template-about section#premium-apartments .container .responsability .description p {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 300;
  padding-bottom: 8.75rem;
  color: white;
  text-align: center;
  max-width: 46rem;
  margin: auto;
}

body.page-template-about section#premium-apartments .container .responsability .gold-text p {
  text-align: center;
}

body.page-template-about section#premium-apartments .container .img-center img {
  width: 100%;
  height: 100%;
  object-fit: cover;
	max-height: 42rem;
	object-position: bottom;
}

section#video .video {
  position: relative;
  cursor: pointer;
}

section#video .image img {
  height: 40rem;
  object-fit: cover;
  width: 100%;
}

section#video .video video {
  height: 40rem;
  width: 100%;
  object-fit: contain;
  background-color: black;
}

section#video .video .play {
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
  visibility: visible;
}

section#video .image {
  position: relative;
}

section#video .video .bg,
section#video .image .bg {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  transition: all 200ms ease-in-out;
  z-index: 2;
}

section#video .video .poster {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 40rem;
  object-fit: cover;
  z-index: 1;
}

section#video .video.active .bg {
  background-color: rgba(0, 0, 0, 0);
}

section#video .video.active .play {
  opacity: 0;
  visibility: hidden;
}

body.home section#about .container .columns .column-right .read-more-button,
body.page-template-about section#about .container .columns .column-right .read-more-button {
  display: flex;
  justify-content: flex-end;
}

body.home section#about .container .columns .column-right .read-more-button button,
body.page-template-about section#about .container .columns .column-right .read-more-button button {
  border: none;
  cursor: pointer;
  margin-top: 2.37rem;
  font-size: 0.75rem;
  font-weight: 400;
  text-transform: uppercase;
  padding-bottom: 0.5rem;
  letter-spacing: 0.1em;
  color: var(--gold);
  background-color: transparent;
  border-bottom: 1px solid var(--gold);
  transition: all 0.3s ease-in-out;
}

body.home section#about .container .columns .column-right .read-more-button button:hover,
body.page-template-about section#about .container .columns .column-right .read-more-button button:hover {
  color: var(--green);
  border-bottom: 1px solid var(--green);
}

body.home section#homnest-collection {
  position: relative;
  width: 100%;
  background-color: var(--beige);
}

body.home section#homnest-collection .columns .column-left {
  padding-top: 12.5rem;
  width: calc(50% + 2.5rem);
}

body.home section#homnest-collection .columns .column-left .column-left-wrapper {
  max-width: 658px;
  margin-left: auto;
  padding-right: 7.06rem;
  padding-left: 7.8rem;
  width: 100%;
}

.vertical-text-left {
  color: white;
  font-size: 11.25rem;
  font-weight: 300;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  line-height: 0.8;
  overflow: hidden;
  text-transform: uppercase;
  opacity: 0.4;
  padding-top: 14.5rem;
  position: absolute;
  left: -0.5rem;
}

.vertical-text-right {
  margin-left: auto;
  color: white;
  font-size: 11.25rem;
  font-weight: 300;
  writing-mode: vertical-lr;
  text-orientation: mixed;
  transform: rotate(180deg);
  line-height: 0.8;
  overflow: hidden;
  font-family: var(--ff-alternate);
  text-transform: uppercase;
  opacity: 0.4;
  position: absolute;
  right: 0;
  bottom: 5rem;
}

body.home section#homnest-collection .cont .info-apartments {
  padding-top: 4.8rem;
  padding-bottom: 5rem;
  display: flex;
  justify-content: center;
  max-width: 44.5rem;
  margin: auto;
	opacity: 0;
	visibility: hidden;
	font-size: 0;
}

body.home section#homnest-collection .cont .info-apartments p {
	font-size: 0px!important;
}

body.home section#homnest-collection .cont .info-apartments p {
  text-align: center;
  font-size: 3rem;
  line-height: 1.2;
  font-weight: 300;
  font-family: var(--ff-alternate);
}

body.home section#homnest-collection .cont .info-apartments p strong {
  font-weight: 600;
  font-style: italic;
}

body.home section#homnest-collection .cont .other-apartments {
  padding-bottom: 5rem;
}

body.home section#homnest-collection .cont .other-apartments .cards {
  display: flex;
  /* width: calc((100% / 12 * 10) - (2rem * 11 / 12)); */
  margin: auto;
}

body.home section#homnest-collection .cont .other-apartments .cards .card {
  width: calc(100% / 3);
  height: 100%;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .img {
  width: 100%;
  height: 100%;
}

body.home section#homnest-collection .cont .other-apartments .container .swiper-wrap {
  max-width: 74%;
  margin: 0 auto;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .title p {
  padding-top: 1rem;
  padding-bottom: 0.7rem;
  font-size: 1.12rem;
  line-height: 1.33;
  font-weight: 400;
  text-transform: uppercase;
  margin: 0;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .info {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .info img {
  height: 1.375rem;
  width: auto;
  object-fit: contain;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .info .persons,
body.home section#homnest-collection .cont .other-apartments .cards .card .info .bedrooms,
body.home section#homnest-collection .cont .other-apartments .cards .card .info .bathrooms {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .info span {
  font-size: 0.62rem;
}

body.home section#homnest-collection .cont .other-apartments .cards .card .info p {
  font-size: 0.68rem;
  line-height: 1.63;
  font-weight: 400;
  text-transform: uppercase;
  margin: 0;
}

body.home section#homnest-collection .cont .other-apartments .check-availability-button {
  margin-top: 4.48rem;
  display: flex;
  justify-content: center;
}

body.home section#homnest-collection .cont .other-apartments .check-availability-button button {
  border: none;
}

body.home section#homnest-collection .cont .other-apartments .check-availability-button button a {
  border: none;
  display: flex;
  align-items: center;
  text-transform: uppercase;
  background-color: var(--green);
  color: white;
  line-height: 1.83;
  font-weight: 400;
  font-size: 0.75rem;
  padding: 0.56rem 1.5rem;
  padding-bottom: 0.4rem;
  border-radius: 30px;
  transition: all ease-in-out 0.3s;
}

body.home section#homnest-collection .cont .other-apartments .check-availability-button button a:hover {
  background-color: var(--gold);
}

body.home section#video .bg {
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

body.home section#video .video {
  width: 100%;
  height: 100%;
}

body.home section#video .video .img {
  width: 100%;
  height: 100%;
}

body.home section#video .video .img img {
  width: 100%;
  height: 100%;
}

/* Section How We Do It */
body.home section#how-we-do-it {
  padding-top: 5.06rem;
  padding-bottom: 6.56rem;
  width: 100%;
  height: 100%;
  background-color: var(--green);
  color: white;
  display: flex;
  flex-direction: column;
  align-items: center;
}

body.home section#how-we-do-it .cont-text {
  display: flex;
  flex-direction: column;
  align-items: center;
}

body.home section#how-we-do-it .cont-text .convenience {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  padding-bottom: 1.37rem;
}

body.home section#how-we-do-it .cont-text .convenience p {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.1em;
	text-align: center;
}

body.home section#how-we-do-it .cont-text .title {
  padding-bottom: 2.12rem;
}

body.home section#how-we-do-it .cont-text .title * {
  font-size: 3rem;
  line-height: 1.2;
  font-weight: 300;
  font-family: var(--ff-alternate);
}

body.home section#how-we-do-it .cont-text .title em {
  font-style: italic;
}

body.home section#how-we-do-it .cont-text .subtitle {
  padding-bottom: 5.125rem;
}

body.home section#how-we-do-it .cont-text .subtitle p {
  text-align: center;
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 300;
}

body.home section#how-we-do-it {
  padding-left: 25vw;
  padding-right: 25vw;
  overflow: hidden;
}

body.home section#how-we-do-it .swiper {
  overflow: visible;
}

body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide {
  display: grid;
  place-items: center;
  position: relative;
}

body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide .title {
  position: absolute;
  top: 68%;
  left: 50%;
  transform: translatex(-50%);
  z-index: 9;
}

body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide .title p {
  font-size: 1.56rem;
  letter-spacing: 0.02em;
  font-weight: 400;
  font-family: var(--ff-alternate);
  font-style: normal;
  text-transform: uppercase;
  inline-size: 44rem;
  text-align: center;
  transition: all 200ms ease-in-out;
}

body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide.swiper-slide-active .title p {
  font-size: 2.5rem;
}

body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide img {
  width: auto;
  height: 26rem;
  transition: all 200ms ease-in-out;
}

body.home section#how-we-do-it .swiper {
  width: 100%;
  height: 429px;
  margin: 0 auto;
}

body.home section#how-we-do-it .swiper .swiper-slide-prev,
body.home section#how-we-do-it .swiper .swiper-slide-next {
  width: calc((100% - 100%) / 2);
  margin: 0 auto;
}

body.home section#how-we-do-it .swiper .swiper-slide:not(.swiper-slide-active) img {
  height: 20rem;
  width: auto;
}

body.home section#how-we-do-it .swiper .swiper-button-prev:after,
body.home section#how-we-do-it .swiper .swiper-button-next:after {
  display: none;
}

body.home section#how-we-do-it .swiper .swiper-button-prev {
  width: 3rem;
  transform: rotate(180deg);
}

body.home section#how-we-do-it .swiper .swiper-button-next {
  width: 3rem;
}

body.home section#how-we-do-it .swiper .swiper-button-next img,
body.home section#how-we-do-it .swiper .swiper-button-prev img {
  width: 3rem;
}

/* Section Map */
section#map {
  width: 100%;
  position: relative;
}

section#map .map-container {
  width: 100%;
  /* width: calc((100% / 12 * 10) - (2.5rem * 11 / 12)); */
  /* margin: 0 auto;
  display: flex;
  gap: 2.5rem; */
}

section#map .map-container .button {
  padding-top: 4.37rem;
  width: calc((100% / 12 * 10) - (2.5rem * 11 / 12));
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
  gap: 2.5rem;
  top: 0%;
  left: 12.5%;
  z-index: 9;
  transform: translate(-6.25%);
  padding-bottom: 1rem;
}

section#map .map-container .button a {
  font-size: 3rem;
  line-height: 1.37;
  font-weight: 200;
  font-family: var(--ff-alternate);
  color: var(--gold);
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

section#map .map-container .button img {
  transition: ease-in-out 0.3s;
  width: 2.56rem;
  height: 2.56rem;
  position: relative;
  bottom: 0.9rem;
}

section#map .map-container .button:hover img {
  transform: translateX(1rem);
  transition: ease-in-out 0.3s;
}

section#map .map-container .button a strong {
  font-style: italic;
  font-weight: 100;
}

section#map .map-container .map {
  position: relative;
}

section#map .map-container .svg-top {
  position: absolute;
  top: 0%;
  width: 100%;
  z-index: 1;
}

section#map .map-container .svg-top img,
section#map .map-container .svg-bottom img {
  width: 100%;
}

section#map .map-container .svg-bottom img {
  position: relative;
  bottom: 0rem;
}

section#map .map-container .svg-bottom {
  position: absolute;
  bottom: 0%;
  width: 100%;
}

section#map .map-container .map .cont-img-info {
  width: 30.75rem;
  position: absolute;
  top: 20.5%;
  right: 9%;
  z-index: 2;
}

section#map .map-container .map .cont-img-info .img {
  width: 100%;
}

section#map .map-container .map .cont-img-info .img section#map .map-container .map .cont-img-info .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#map .map-container .map .cont-img-info .info {
  padding: 2.37rem 2.5rem;
  position: relative;
  z-index: 2;
  color: white;
  background-color: var(--green);
  right: 4.31rem;
  bottom: 8.18rem;
}

section#map .map-container .map .cont-img-info .info .title h5 {
  font-size: 1.87rem;
  font-weight: 200;
  line-height: 1.43;
  font-family: var(--ff-alternate);
  padding-bottom: 1.62rem;
}

section#map .map-container .map .cont-img-info .info .title h5 strong {
  font-style: italic;
  font-weight: 100;
}

section#map .map-container .map .cont-img-info .info .description p {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
  letter-spacing: 0.08em;
  padding-bottom: 2.56rem;
}

section#map .map-container .map .cont-img-info .info .button-explore button {
  border: none;
  text-transform: uppercase;
  color: var(--gold);
  background-color: var(--green);
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--gold);
  cursor: pointer;
  transition: ease-in-out 0.3s;
}

.button-explore button img {
  transition: ease-in-out 0.3s;
  height: 2.5rem;
  width: 2.5rem;
}

/* Add hover effect to the button */
.button-explore button:hover img {
  transform: translateX(1rem);
  transition: ease-in-out 0.3s;
}

/* SECTION RECOMMENDED */
section#recommended {
  padding-top: 4.5rem;
}

section#recommended .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 6.12rem;
}

section#recommended .container .title h5 {
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1.57;
  font-family: var(--ff-alternate);
  padding-bottom: 3.06rem;
}

section#recommended .container .columns {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 3.75rem;
}

section#recommended .container .columns .column {
  position: relative;
  width: 34%;
  height: auto;
}

section#recommended .container .columns .column > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#recommended .container .columns .column .info-apartment a {
  opacity: 0;
  position: absolute;
  padding: 2rem;
  top: 0;
  z-index: 2;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: var(--green);
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: ease-in-out 0.3s;
}

section#recommended .container .columns .column:hover .info-apartment a {
  opacity: 1;
  z-index: 3;
}

section#recommended .container .columns .column .info-apartment .cont-up .title h2 {
  font-size: 1.75rem;
  line-height: 1.57;
  font-weight: 400;
  font-family: var(--ff-alternate);
}

section#recommended .container .columns .column .info-apartment .cont-up .address p {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
  text-transform: uppercase;
}

section#recommended .container .columns .column .info-apartment .cont-down {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

section#recommended .container .columns .column.info-apartment .cont-down .arrow {
  transition: ease-in-out 0.3s;
}

section#recommended .container .columns .column .info-apartment .cont-down .arrow:hover {
  transform: translateX(0.5rem);
  transition: ease-in-out 0.3s;
}

section#recommended .container .columns .column .info-apartment .cont-down .icons {
  display: flex;
  align-items: center;
  gap: 1.56rem;
}

section#recommended .container .columns .column .info-apartment .cont-down .icons .persons,
section#recommended .container .columns .column .info-apartment .cont-down .icons .beds,
section#recommended .container .columns .column .info-apartment .cont-down .icons .bathrooms {
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

section#recommended .container .columns .column .info-apartment .cont-down .number p {
  font-size: 0.62rem;
}

/* CONTACT */
body.page-template-contact section#hero .bg,
body.page-template-work-with-us section#hero .bg {
  width: 100%;
  max-height: 28.12rem;
  height: 100%;
  position: relative;
}

body.page-template-work-with-us section#contact #form .title h2 {
  text-align: center;
  color: var(--gold);
  max-width: 39.8rem;
  margin: auto;
}

body.page-template-work-with-us section#contact #form {
  margin-top: 2.5rem;
}

body.page-template-work-with-us section#contact #form .form .name-email {
  gap: 2.5rem;
  margin-bottom: 1.5625rem;
}

body.page-template-work-with-us section#contact #form .cont form {
  max-width: 39.8rem;
  margin: auto;
}

body.page-template-contact section#hero,
body.page-template-work-with-us section#hero {
  height: 28.12rem;
}

body.page-template-contact section#hero .bg .bg-opacity,
body.page-template-work-with-us section#hero .bg .bg-opacity {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
}

body.page-template-contact section#hero .img,
body.page-template-work-with-us section#hero .img {
  width: 100%;
  height: 100%;
}

body.page-template-contact section#hero .img img,
body.page-template-work-with-us section#hero .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#contact {
  position: relative;
}

section#contact > .container {
  z-index: 2;
}

section#contact::after {
  content: "";
  position: absolute;
  top: -4rem;
  right: 0;
  height: 4.1rem;
  width: 60vw;
  background-color: rgb(255, 255, 255);
}

section#contact .contain {
  width: calc((100% / 12 * 10) - (2.5rem * 11 / 12));
  margin: 0 auto;
  position: relative;
  top: -4rem;
  padding-top: 3.75rem;
  padding-left: 3.75rem;
  background-color: white;
}

section#contact .contain .name p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.71;
  text-transform: uppercase;
  margin-bottom: 2.12rem;
  letter-spacing: 0.1em;
}

section#contact .contain .columns {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

section#contact .contain .columns .contact h1 {
  font-size: 4rem;
  font-weight: 200;
  line-height: 1;
  font-family: var(--ff-alternate);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

section#contact .contain .columns a,
section#contact .contain .columns p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  color: var(--green);
  letter-spacing: 0.04em;
}

section#contact #map .map {
  width: 100%;
  position: relative;
}

section#contact #map .map #single-map {
  min-height: 40rem;
}

body #single-map {
  min-height: 42rem;
}

body #multi-map {
  min-height: 55rem;
}

#location-info .content .title-wrapper h2 {
  font-size: 1.875rem;
  font-weight: 300;
  font-style: italic;
}

section#contact #map .map:before,
#multi-map:before,
body #single-map:before {
  height: 10rem;
  top: 0;
  width: 100%;
  position: absolute;
  background-image: linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.01));
  content: "";
  z-index: 1;
  pointer-events: none;
}

section#contact #map .map:after,
body #single-map:after {
  height: 10rem;
  bottom: 0;
  width: 100%;
  position: absolute;
  background-image: linear-gradient(rgba(255, 255, 255, 0.01), rgba(255, 255, 255, 1));
  content: "";
  pointer-events: none;
}

#multi-map:after {
  height: 10rem;
  bottom: 0;
  width: 100%;
  position: absolute;
  background-image: linear-gradient(rgba(242, 236, 224, 0.01), rgba(242, 236, 224, 1));
  content: "";
  pointer-events: none;
}

section#contact #map .map .svg-top {
  width: 100%;
  position: absolute;
  top: 0%;
  z-index: 1;
  pointer-events: none;
}

section#contact #map .map .svg-top img,
section#contact #map .map .svg-bottom img {
  width: 100%;
  height: 14rem;
}

section#contact #map .map .svg-bottom {
  width: 100%;
  position: absolute;
  bottom: 0%;
  pointer-events: none;
}

section#contact #form {
  margin-top: 3rem;
  margin-bottom: 5.31rem;
}

section#contact #form .cont {
  width: calc(100% / 12 * 8);
  margin: 0 auto;
}

section#contact #form .title h2 {
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1.57;
  font-family: var(--ff-alternate);
  padding-bottom: 2.75rem;
  text-align: center;
}

section#contact #form .title h2 strong {
  font-style: italic;
  font-weight: 400;
}

section#contact #form .form .name-email {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  gap: 1rem;
  margin-bottom: 2.75rem;
}

section#contact #form .form .name-email input,
section#contact #form .form .message textarea {
  all: unset;
  padding: 0.93rem 1.18rem;
  border: 1px solid rgba(38, 32, 32, 0.2);
  border-radius: 26px;
  width: 50%;
  color: var(--green);
}

section#contact #form .form .name-email input::placeholder,
section#contact #form .form .message textarea::placeholder {
  color: rgba(38, 32, 32, 0.2);
}

section#contact #form .form span.wpcf7-form-control-wrap {
  display: flex;
  flex-direction: column;
}

section#contact #form .form .name-email input {
  width: auto;
  color: var(--green);
}

section#contact #form .form .message {
  width: 100%;
}

body.page-template-work-with-us section#contact #form .form .message select {
  all: unset;
  padding: 0.93rem 1.18rem;
  border: 1px solid rgba(38, 32, 32, 0.2);
  border-radius: 26px;
  font-family: var(--ff-normal);
  font-size: 1rem;
  cursor: pointer;
}

body.page-template-work-with-us section#contact #form .form .message span {
  position: relative;
}

body.page-template-work-with-us section#contact #form .form .message span:after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.084' height='6.042' viewBox='0 0 11.084 6.042'%3E%3Cpath id='Tracciato_735' data-name='Tracciato 735' d='M-4011.923-6873.24l4.835,4.835,4.835-4.835' transform='translate(4012.63 6873.947)' fill='none' stroke='%231c2020' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/svg%3E");
  background-repeat: no-repeat no-repeat;
  background-position: center center;
  background-size: cover;
  position: absolute;
  right: 1rem;
  width: 10px;
  content: "";
  height: 5px;
  top: 50%;
  transform: translatex(-50%);
  margin-top: -2px;
}

section#contact #form .form .message textarea {
  display: block;
  width: calc(100% - 2.36rem);
  max-height: 12.5rem;
}

section#contact #form .form .privacy-checkbox {
  display: flex;
  gap: 0.875rem;
  margin-top: 1.56rem;
  margin-bottom: 1.5rem;
}

section#contact #form .form .privacy-checkbox input {
  position: relative;
  top: 1px;
}

section#contact #form .form .privacy-checkbox * {
  font-size: 0.875rem;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.35);
}

section#contact #form .form .wpcf7-list-item {
  margin-left: 0;
}

section#contact #form .form .submit .wpcf7-spinner {
  position: relative;
  top: 0.2rem;
  margin-left: 0.5rem;
}

section#contact #form .form .submit input {
  all: unset;
  font-size: 1.75rem;
  font-weight: 200;
  font-family: var(--ff-alternate);
  font-style: italic;
  line-height: 1.64;
  cursor: pointer;
  color: var(--gold);
  cursor: pointer;
}

section#contact #form .form .wpcf7-not-valid-tip {
  color: #c00;
  padding-top: 0.8rem;
  padding-left: 1.18rem;
  font-size: 0.9375rem;
}

section#contact #form .form .wpcf7-response-output {
  border: 0;
  padding: 0;
  color: var(--green);
  margin: 0;
  margin-top: 0.5rem;
}

/* -----------------------------------
==============================================================================
	# ABOUT
==============================================================================
----------------------------------- */
body.page-template-about section#hero .bg {
  width: 100%;
  max-height: 28.12rem;
  height: 100%;
  position: relative;
}

body.page-template-about section#hero {
  height: 28.12rem;
}

body.page-template-about section#hero .bg .bg-opacity {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
}

body.page-template-about section#hero .img {
  width: 100%;
  height: 100%;
}

body.page-template-about section#hero .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Section Intro-About */
section#intro-about {
  position: relative;
  margin-bottom: 12.93rem;
}

section#intro-about:after {
  content: "";
  position: absolute;
  top: -4rem;
  right: 0;
  height: 4.1rem;
  width: 60vw;
  background-color: rgb(255, 255, 255);
}

section#intro-about .contain {
  background-color: white;
  position: relative;
  top: -4rem;
  width: calc((100% / 12 * 10) - (2.5rem * 11 / 12));
  margin: 0 auto;
  padding-left: 3.75rem;
  margin-bottom: -4rem;
}

section#intro-about .name p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.71;
  text-transform: uppercase;
  padding-bottom: 2.12rem;
  padding-top: 3.75rem;
  letter-spacing: 0.1em;
}

section#intro-about .columns {
  display: flex;
  gap: 0.8rem;
}

section#intro-about .columns .column.left {
  width: 50%;
}

section#intro-about .columns .column.right {
  width: 40%;
}

section#intro-about .columns .column.left .title * {
  font-size: 3rem;
  font-weight: 200;
  line-height: 1.2;
  font-family: var(--ff-alternate);
}

section#intro-about .columns .column.left .title * strong {
  font-style: italic;
  font-weight: 200;
}

section#intro-about .columns .column.right .description p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.71;
}

/* -----------------------------------
==============================================================================
	# MENU
==============================================================================
----------------------------------- */
body header section.menu {
  background-color: var(--green);
  color: white;
  width: 100%;
  z-index: 11;
  position: fixed;
  padding-top: 7.37rem;
  height: 100vh;
  left: 0;
  opacity: 0;
  visibility: hidden;
  display: flex;
  flex-direction: column;
  transition: all 300ms ease-in-out;
}

body header section.menu .columns:first-child {
  flex: 1;
}

body.aperto {
  overflow: hidden;
}

body.aperto header .column-right .changing-language,
body.aperto header .column-right .contact-button {
  display: none;
}

header section.menu.aperto {
  opacity: 1;
  visibility: visible;
}

body header section.menu .columns {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 2.5rem;
  max-width: 1356px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

body header section.menu .columns .column-left {
  padding: 4rem 0;
  grid-column: span 5;
}

body header section.menu .columns .column-left ul li a {
  font-size: 3rem;
  line-height: 1.04rem;
  font-weight: 300;
  letter-spacing: 0.02em;
  font-family: var(--ff-alternate);
}

body header section.menu .columns .column-left ul li a:hover {
  font-style: italic;
}

body header section.menu .columns .column-left ul li:not(:last-child) {
  padding-bottom: 4rem;
}

body header section.menu .columns .column-center {
  grid-column: span 4;
}

body header section.menu .columns .column-center .img {
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 150ms ease-in-out;
}

body header section.menu .columns .column-center .img img {
  width: 100%;
  height: 100%;
  max-height: 30.5rem;
}

body header section.menu .columns .column-center .img.visible {
  opacity: 1;
}

body header section.menu .columns .column-right {
  padding: 4rem 0;
  grid-column: span 3;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

body header section.menu .columns .column-right h3 {
  font-size: 1rem;
  line-height: 1.71rem;
  font-weight: 300;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-family: var(--ff-normal);
}

body header section.menu .columns .column-right ul li {
  font-size: 1rem;
  line-height: 1.61rem;
  font-weight: 300;
  letter-spacing: 0.04em;
  font-family: var(--ff-normal);
}

body header section.menu .columns .column-left.span-9 {
  grid-column: span 9;
}

body header section.menu .columns .column-left.span-9 .socials {
  display: flex;
  align-items: center;
  gap: 1.56rem;
}

body header section.menu .columns .column-left.span-9 .socials span {
  margin-right: -0.5rem;
}

body header section.menu .columns .column-left.span-9 .socials img {
	width: 1.5rem;
}

body header section.menu .columns .column-right .changing-language {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

header.egloo .container .changing-language span {
  opacity: 0.3;
}

body header section.menu .columns .column-right .changing-language .link,
footer.egloo .container .changing-language .link,
body.home .link,
body.page-template-premium-apartments .link,
body.page-template-single-apartment-pa .link,
body.single-apartment .link {
  opacity: 0.3;
}

footer.egloo .container .logo {
  position: relative;
  top: 0.2rem;
}

body.home .column-right .link.active,
body.page-template-premium-apartments .link.active,
body.page-template-single-apartment-pa .link.active,
body.single-apartment .link.active {
  opacity: 1;
  text-decoration: none;
}

body.single-apartment .link .active {
  text-decoration: underline;
  opacity: 1;
  transition: ease-in-out 0.3s;
}

body header section.menu .columns .column-right .changing-language .link.active,
footer.egloo .container .changing-language .link.active,
body.home.aperto .link.active {
  text-decoration: underline;
  opacity: 1;
}

footer.egloo .container .changing-language .link.active {
  color: var(--green);
}

/* -----------------------------------
==============================================================================
	# PREMIUM APARTMENTS
==============================================================================
----------------------------------- */
body.page-template-premium-apartments section#hero .bg,
body.page-template-homnest-collection section#hero .bg {
  width: 100%;
  max-height: 28.12rem;
  height: 100%;
  position: relative;
}

body.page-template-premium-apartments section#hero,
body.page-template-homnest-collection section#hero {
  height: 28.12rem;
}

body.page-template-premium-apartments section#hero .bg .bg-opacity,
body.page-template-homnest-collection section#hero .bg .bg-opacity {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
}

body.page-template-premium-apartments section#intro .vertical-text-left,
body.page-template-homnest-collection section#intro .vertical-text-left {
  padding-top: 0;
}

body.page-template-premium-apartments section#intro .vertical-text-right {
  bottom: auto;
  top: 23.5rem;
}

section#hero .bg .img {
  width: 100%;
  height: 100%;
}

section#hero .bg .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Section Intro */
section#intro {
  position: relative;
  top: -5rem;
  margin-bottom: -5rem;
}

body.page-template-premium-apartments section#intro,
body.page-template-homnest-collection section#intro {
  top: 0;
  margin-bottom: 0;
}

body.page-template-premium-apartments section#intro .container .content .contain .description p,
body.page-template-homnest-collection section#intro .container .content .contain .description p {
  padding-bottom: 5rem;
}

body.page-template-premium-apartments section#intro .container .content,
body.page-template-homnest-collection section#intro .container .content {
  width: calc((100% / 12 * 10) - (2.5rem * 11 / 12));
  margin: 0 auto;
  position: relative;
}

body.page-template-premium-apartments section#intro .container .content .columns,
body.page-template-homnest-collection section#intro .container .content .columns {
  padding-left: 3.75rem;
}

body.page-template-premium-apartments section#intro .container .content:nth-child(1),
body.page-template-homnest-collection section#intro .container .content:nth-child(1) {
  width: calc((100% / 12 * 10) - (2.5rem * 11 / 12));
  margin: 0 auto;
  position: relative;
  top: -4rem;
  /* padding-top: 3.75rem; */
  padding-left: 3.75rem;
  padding-right: 3.75rem;
  background-color: white;
  padding-bottom: 0;
}

body.page-template-premium-apartments section#intro .container .content:nth-child(2),
body.page-template-homnest-collection section#intro .container .content:nth-child(2) {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 7.5rem;
}

body.page-template-premium-apartments section#intro .container .content:nth-child(1) .contain,
body.page-template-homnest-collection section#intro .container .content:nth-child(1) .contain {
  column-gap: 3.75rem;
}

body.page-template-premium-apartments section#intro .container .content .columns,
body.page-template-homnest-collection section#intro .container .content .columns {
  padding-top: 3rem;
}

body.page-template-premium-apartments section#intro:after,
body.page-template-homnest-collection section#intro:after {
  content: "";
  position: absolute;
  top: -4rem;
  right: 0;
  height: 4.1rem;
  width: 60vw;
  background-color: rgb(255, 255, 255);
}

section#intro .container .content {
  width: calc((100% / 8 * 6) - (3.75rem * 7 / 8));
  gap: 3.75rem;
  padding-bottom: 5.5rem;
  background-color: white;
  margin: 0 auto;
  /* padding-left: 3.75rem; */
  /* padding-right: 22%; */
}

section#intro .container .content .contain {
  display: flex;
  /* gap: 3.75rem; */
  justify-content: space-between;
}

section#intro .container .content .contain .title,
section#intro .container .content .contain .description {
  width: 50%;
}

section#intro .container .content .contain .title * {
  font-size: 4rem;
  line-height: 1;
  font-weight: 200;
  font-family: var(--ff-alternate);
}

section#intro .container .content .contain .title em {
  font-style: italic;
}

section#intro .container .content .contain .description p {
  font-size: 1rem;
  letter-spacing: 0.04em;
  font-weight: 400;
  padding-bottom: 8.18rem;
  line-height: 1.71;
}

section#intro .container .content .contain .description .button button {
  width: 100%;
  align-items: center;
  justify-content: space-between;
  font-weight: 300;
}

section#intro .container .content .contain .description .button button {
  border: none;
  background-color: transparent;
  cursor: pointer;
  color: var(--gold);
  font-family: var(--ff-alternate);
  font-style: italic;
  font-size: 1.75rem;
}

section#intro .container .content .contain .description .button button a {
  display: flex;
  justify-content: space-between;
}

section#intro .container .content .column-left {
  padding-top: 3.75rem;
}

section#intro .container .content .column-right {
  padding-top: 7.12rem;
}

section#intro .container .content .homnest p {
  padding-top: 3.75rem;
  padding-bottom: 1.37rem;
  font-size: 1rem;
  line-height: 1.71;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

section#intro .container .content .columns {
  padding-top: 7.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 7.5rem 3.75rem;
  width: 100%;
}

section#intro .container .content .columns .card {
  position: relative;
  width: calc(50% - 3.75rem);
  max-height: 20rem;
  height: 20rem;
  cursor: pointer;
}

section#intro .container .content .columns .card .img {
  width: 100%;
  height: 100%;
}

section#intro .container .content .columns .card .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#intro .container .content .columns .card .info-apartment a {
  opacity: 0;
  position: absolute;
  padding: 2rem;
  top: 0;
  z-index: 2;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: var(--green);
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: ease-in-out 0.3s;
}

section#intro .container .content .columns .card:hover .info-apartment a {
  opacity: 1;
  z-index: 3;
}

section#intro .container .content .columns .info-apartment .cont-up .title h2 {
  font-size: 1.75rem;
  line-height: 1.57;
  font-weight: 400;
  font-family: var(--ff-alternate);
}

section#intro .container .content .columns .info-apartment .cont-up .address p {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
  text-transform: uppercase;
}

section#intro .container .content .columns .info-apartment .cont-down {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

section#intro .container .content .columns .info-apartment .cont-down .arrow {
  transition: ease-in-out 0.3s;
}

section#intro .container .content .columns .info-apartment .cont-down .arrow:hover {
  transform: translateX(0.5rem);
  transition: ease-in-out 0.3s;
}

section#intro .container .content .columns .info-apartment .cont-down .icons {
  display: flex;
  align-items: center;
  gap: 1.56rem;
}

section#intro .container .content .columns .info-apartment .cont-down .icons img,
section#recommended .container .columns .column .info-apartment .cont-down .icons img {
  object-fit: contain;
}

section#intro .container .content .columns .info-apartment .cont-down .icons .persons,
section#intro .container .content .columns .info-apartment .cont-down .icons .beds,
section#intro .container .content .columns .info-apartment .cont-down .icons .bathrooms {
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

section#intro .container .content .columns .info-apartment .cont-down .number p {
  font-size: 0.62rem;
}

section#intro .vertical-text-left {
  color: var(--beige);
  font-size: 11.25rem;
  font-weight: 200;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  line-height: 0.8;
  overflow: hidden;
  text-transform: uppercase;
  opacity: 0.4;
  /* padding-top: 14.5rem; */
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  left: -0.5rem;
}

section#intro .vertical-text-right {
  margin-left: auto;
  color: var(--beige);
  font-size: 11.25rem;
  font-weight: 200;
  writing-mode: vertical-lr;
  text-orientation: mixed;
  transform: rotate(180deg);
  line-height: 0.8;
  overflow: hidden;
  font-family: var(--ff-alternate);
  text-transform: uppercase;
  opacity: 0.4;
  position: absolute;
  right: 0;
  bottom: 15rem;
}

/* -----------------------------------
==============================================================================
	# SINGLE APARTMENT
==============================================================================
----------------------------------- */

body.page-template-single-apartment-pa section#hero,
body.page-template-single-apartment-hc section#hero,
body.single-apartment section#hero {
  position: relative;
  height: 100vh;
  width: 100%;
}

body.page-template-single-apartment-pa section#hero .bg-opacity,
body.page-template-single-apartment-hc section#hero .bg-opacity,
body.single-apartment section#hero .bg-opacity {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
}

body.page-template-single-apartment-pa section#hero .img,
body.page-template-single-apartment-hc section#hero .img,
body.single-apartment section#hero .img {
  width: 100%;
  height: 100%;
}

body.page-template-single-apartment-pa section#hero .img img,
body.page-template-single-apartment-hc section#hero .img img,
body.single-apartment section#hero .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.page-template-single-apartment-pa section#hero .title h1,
body.page-template-single-apartment-hc section#hero .title h1,
body.single-apartment section#hero .title h1 {
  font-size: 4rem;
  text-transform: uppercase;
  font-family: var(--ff-alternate);
  font-weight: 200;
  letter-spacing: 0.02em;
  line-height: 1;
}

body.page-template-single-apartment-pa section#hero .title .city p,
body.page-template-single-apartment-hc section#hero .title .city p,
body.single-apartment section#hero .title .city p {
  font-size: 1.12rem;
  font-weight: 400;
  text-transform: uppercase;
  padding-top: 1rem;
}

body.page-template-single-apartment-pa section#hero .icon,
body.page-template-single-apartment-hc section#hero .icon,
body.single-apartment section#hero .icon {
  position: absolute;
  bottom: 3rem;
  left: 50%;
  z-index: 3;
  transform: translate(-50%, -3rem);
}

body.page-template-single-apartment-pa section#hero .icon img,
body.page-template-single-apartment-hc section#hero .icon img,
body.single-apartment section#hero .icon img {
  cursor: pointer;
  transition: ease-in-out 0.3s;
}

body.page-template-single-apartment-pa section#hero .icon img:hover,
body.page-template-single-apartment-hc section#hero .icon img:hover,
body.single-apartment section#hero .icon img:hover {
  scale: 1.2;
  transform: rotate(90deg);
  transition: ease-in-out 0.3s;
}

section#intro-single-apartment {
  padding-top: 6.12rem;
  padding-bottom: 9rem;
  position: relative;
}

section#intro-single-apartment .vertical-text-left,
section#intro-single-apartment .vertical-text-right {
  color: var(--beige);
}

section#intro-single-apartment .vertical-text-right {
  bottom: unset;
  top: 5.5rem;
}

section#intro-single-apartment .vertical-text-left {
  padding: unset;
  top: 34.31rem;
}

section#intro-single-apartment .contain {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

section#intro-single-apartment .contain .category-apartment {
  position: relative;
  width: 100%;
  text-align: center;
  margin-bottom: 1.37rem;
}

section#intro-single-apartment .contain .category-apartment p {
  font-size: 1rem;
  margin: 0;
  text-transform: uppercase;
  line-height: 1.71;
  letter-spacing: 0.1em;
}

section#intro-single-apartment .contain .category-apartment .icon-back {
  position: absolute;
  left: 0rem;
  top: 50%;
  transform: translate(0%, -50%);
}

section#intro-single-apartment .contain .category-apartment .icon-back a {
  display: flex;
  align-items: center;
  gap: 1.43rem;
  color: var(--gold);
  text-transform: uppercase;
}

section#intro-single-apartment .contain .category-apartment .icon-back a img {
  transition: ease-in-out 0.3s;
}

section#intro-single-apartment .contain .category-apartment .icon-back a:hover img {
  transform: translate(-0.5rem);
}

section#intro-single-apartment .contain .title h2 {
  text-align: center;
  font-size: 3rem;
  line-height: 1.2;
  font-family: var(--ff-alternate);
  font-weight: 200;
  letter-spacing: 0.02em;
  padding-bottom: 2.5rem;
}

section#intro-single-apartment .contain .title h2 strong {
  font-weight: 200;
  font-style: italic;
}

section#intro-single-apartment .contain .subtitle {
  text-align: center;
  padding-bottom: 6.12rem;
  max-width: 39.8rem;
  margin: auto;
}

section#intro-single-apartment .contain .subtitle p {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
  letter-spacing: 0.04em;
}

section#intro-single-apartment .container-swiper {
  max-width: 59rem;
  width: 100%;
  height: 39.31rem;
  margin: 0 auto;
  margin-bottom: 5.6rem;
}

section#intro-single-apartment .swiper {
  max-width: 59rem;
  width: 100%;
  height: 39.31rem;
}

section#intro-single-apartment .swiper .swiper-wrapper .swiper-slide {
  width: 100%;
  height: 100%;
}

section#intro-single-apartment .swiper .swiper-wrapper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section#intro-single-apartment .container-swiper {
  width: 100%;
}

section#intro-single-apartment .swiper-button-prev:after,
section#intro-single-apartment .swiper-button-next:after {
  content: unset;
}

section#intro-single-apartment .swiper-button-prev {
  left: -1.87rem;
}

section#intro-single-apartment .swiper-button-next {
  right: -1.87rem;
}

section#intro-single-apartment .swiper-button-prev,
section#intro-single-apartment .swiper-button-next {
  width: unset;
  height: unset;
  background-color: #fff;
  padding: 0.62rem;
  border-radius: 50%;
}

section#intro-single-apartment .swiper-button-prev img {
  width: 2.55rem;
  height: 2.55rem;
}

section#intro-single-apartment .container-swiper {
  position: relative;
}

section#intro-single-apartment .price p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 2.2;
  font-family: var(--ff-alternate);
  text-align: center;
  padding-bottom: 3.93rem;
}

.cont-icons-info {
  display: flex;
  justify-content: center;
  padding-bottom: 3.5rem;
  flex-wrap: wrap;
  row-gap: 3rem;
}

.cont-icons-info .info {
  width: 8.43rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.31rem;
}

.cont-icons-info .info .icon {
  display: flex;
  align-items: center;
}

.cont-icons-info .info .icon img {
  width: 25px;
  height: 25px;
  object-fit: contain;
}

.cont-icons-info .description {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  position: relative;
  min-height: 1.725rem;
}

.cont-icons-info .description:before {
  content: " ";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  height: 0.9rem;
  margin-top: auto;
  margin-bottom: auto;
  border-left: 1px var(--gold) solid;
}

.cont-icons-info .info:last-child .description:after {
  content: " ";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  height: 0.9rem;
  margin-top: auto;
  margin-bottom: auto;
  border-left: 1px var(--gold) solid;
}

.cont-icons-info .description .number p {
  font-size: 0.68rem;
  line-height: 1.27;
  font-weight: 400;
}

.cont-icons-info .description .text p {
  font-size: 0.68rem;
  line-height: 1.27;
  font-weight: 400;
  text-transform: uppercase;
}

/* Current Apartment Info */
section#current-apartment-info {
  margin-bottom: 6.12rem;
}

section#current-apartment-info .bg-black {
  position: relative;
  background-color: var(--green);
  width: 100%;
  height: 42.75rem;
}

body.page-template-single-apartment-hc section#current-apartment-info .bg-black,
body.single-apartment section#current-apartment-info.change-color .bg-black {
  position: relative;
  background-color: var(--beige);
  width: 100%;
  height: 42.75rem;
}

section#current-apartment-info .bg-black .title {
  width: 50%;
  padding-left: 4.56rem;
}

section#current-apartment-info .bg-black .title * {
  color: white;
  font-size: 1.75rem;
  font-weight: 300;
  font-family: var(--ff-alternate);
  letter-spacing: 0.02em;
  padding-bottom: 2.5rem;
  padding-top: 10rem;
}

body.single-apartment section#current-apartment-info.change-color .bg-black .title * {
  color: var(--green);
}

section#current-apartment-info .bg-black .description {
  width: 41%;
}

section#current-apartment-info .bg-black .description p {
  color: white;
  padding-left: 7rem;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.71;
}

body.single-apartment section#current-apartment-info.change-color .bg-black .description p {
  color: var(--green);
}

section#current-apartment-info .bg-black .img {
  /* max-width: 43.75rem; */
  width: 50%;
  height: 100%;
  position: absolute;
  top: -5.06rem;
  right: 0;
}

section#current-apartment-info .bg-black .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* SERVICES */
section#services .title h3 {
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1.57;
  font-family: var(--ff-alternate);
  text-align: center;
  padding-bottom: 2.26rem;
}

/* -----------------------------------
==============================================================================
	# FOOTER
==============================================================================
----------------------------------- */

footer.egloo .bg {
  background-color: var(--beige);
  padding-top: 2.81rem;
}

footer.egloo .container {
  display: flex;
  justify-content: space-between;
}

footer.egloo .container .menu-footer .title h3,
footer.egloo .container .where-we-are-footer .title h3,
footer.egloo .container .contacts-footer .title h3 {
  padding-top: 1.5rem;
  font-size: 1.37rem;
  line-height: 1.63;
  font-weight: 400;
  font-family: var(--ff-alternate);
  color: var(--gold);
  padding-bottom: 1.43rem;
}

footer.egloo .container ul.list li a {
  transition: ease-in-out 0.3s;
}

footer.egloo .container ul.list li a,
footer.egloo .container ul.list li {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
}

footer.egloo .container ul.list li img {
	width: 1.5rem;	
}

footer.egloo .container .changing-language {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding-top: 2rem;
}

footer.egloo .container .changing-language a {
  font-size: 1rem;
  line-height: 1.71;
  font-weight: 400;
}

footer.egloo .container .contacts-footer .list .socials {
  margin-top: 1.91rem;
  display: flex;
  gap: 0.87rem;
}

footer.egloo .container .icon {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  margin-top: 4.5rem;
  margin-bottom: 3.12rem;
  position: relative;
  z-index: 30;
}

footer.egloo .container .icon a img {
  transition: ease-in-out 0.3s;
}

footer.egloo .container .icon a:hover img {
  transform: translateY(-0.5rem);
  transition: ease-in-out 0.3s;
}

footer.egloo .container .cont-bottom {
  position: relative;
  z-index: 9;
}

footer.egloo .container .cont-bottom {
  border-top: 1px solid rgba(0, 0, 0, 0.4);
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 1.25rem 0;
}

footer.egloo .container .cont-bottom div {
  flex: 1;
}

footer.egloo .container .cont-bottom div.privacy-policy {
  text-align: center;
}

footer.egloo .container .cont-bottom div.cockies {
  text-align: right;
}

footer.egloo .container .cont-bottom a,
footer.egloo .container .cont-bottom .current-year {
  font-size: 1rem;
  line-height: 1.75;
  font-weight: 400;
  opacity: 0.3;
  transition: ease-in-out 0.3s;
}

footer.egloo .container .cont-bottom a:hover,
footer.egloo .container ul.list li a:hover {
  color: var(--gold);
  opacity: 1;
}

body.page-template-work-with-us section#contact .contain .columns .contact h1 {
  text-transform: none;
}

body.page-template-work-with-us section#contact .contain .columns {
  column-gap: 3.75rem;
}

body.page-template-work-with-us section#contact .contain .columns div {
  width: 50%;
}

body.page-template-work-with-us section#contact .contain .columns .text p {
  font-size: 1rem;
  letter-spacing: 0.04em;
  font-weight: 400;
  line-height: 1.71;
  padding-right: 3.75rem;
}

/* MEDIA QUERY */

.collection .wrapper {
  position: relative;
}

.collection .wrapper:after {
  content: "";
  top: 50%;
  height: 2rem;
  border-right: 1px solid #ebebeb;
  position: absolute;
  right: 0;
  transform: translateY(-50%);
}

.dropdown,
.dropdown2,
.dropdown3 {
  width: 220px;
  height: 64px;
  background: transparent;
  position: relative;
  top: 0;
  left: 0rem;
  /* border-right: 1px solid rgba(0, 0, 0, 0.1); */
}

.dropdown2 {
  width: 190px;
}

.dropdown3 {
  width: 240px;
}

.dropdown::before,
.dropdown2::before,
.dropdown3::before {
  content: "";
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translate(-0.5rem, -50%) rotate(-45deg);
  z-index: 9999;
  width: 6px;
  height: 6px;
  border: 1px solid #1c2020;
  border-top: transparent;
  border-right: transparent;
  pointer-events: none;
  transition: all 0.3s linear;
}

.dropdown input,
.dropdown2 input,
.dropdown3 input {
  width: 100%;
  height: 100%;
  padding: 0;
  padding-left: 3rem;
  cursor: pointer;
  border: none;
  outline: none;
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
  font-size: 0.87rem;
  position: absolute;
  top: 0;
  left: 0;
  user-select: none;
}

body.home .dropdown2 input,
body.single-apartment .dropdown3 input {
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
  border-radius: 50px 0 0 50px;
}

.dropdown2 input,
.dropdown3 input {
  border-radius: 0;
}

.dropdown .options,
.dropdown2 .options2,
.dropdown3 .options3 {
  width: calc(100% - 0.85rem);
  border-radius: 9px;
  cursor: pointer;
  border: none;
  border: 1px solid #ebebeb;
  outline: none;
  font-size: 0.87rem;
  overflow: hidden;
  position: absolute;
  top: -142px;
  transition: all 0.3s ease;
  opacity: 0;
  visibility: hidden;
}

.dropdown .options .option,
.dropdown2 .options2 .option,
.dropdown3 .options3 .option {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  padding: 1rem;
  transition: all 0.2s ease;
  color: #292d34;
  position: relative;
  z-index: 9;
  background-color: white;
}

.dropdown .options .option:hover,
.dropdown2 .options2 .option:hover {
  color: var(--green);
  background: rgb(249, 247, 243);
}

.dropdown.opened .options,
.dropdown2.opened .options2 {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.dropdown.opened input,
.dropdown2.opened input,
.dropdown3.opened input {
  background-color: #f2ece0;
}

.dropdown.opened::before,
.dropdown2.opened::before,
.dropdown3.opened::before {
  right: 0.5rem;
  top: 50%;
  transform: translate(-0.5rem, -50%) rotate(-225deg);
}

body .daterangepicker .drp-buttons .btn:hover {
  background-color: var(--gold);
  color: var(--green);
  transition: all ease-in-out 0.3s;
}

body span.flatpickr-weekday {
  font-size: 0.87rem;
  color: var(--gold);
  font-weight: 400;
  text-transform: lowercase;
  padding-bottom: 0.87rem;
}

body .flatpickr-months .flatpickr-month {
  font-size: 0.87rem;
  text-transform: uppercase;
  font-weight: 400;
  color: var(--green);
  line-height: 1.85;
  font-family: var(--ff-normal);
}

body .flatpickr-months {
  padding-bottom: 0.87rem;
  column-gap: 3rem;
}

body .flatpickr-current-month span.cur-month {
  font-weight: 400;
}

body .flatpickr-current-month input.cur-year {
  font-weight: 400;
}

body .flatpickr-calendar.arrowTop:after,
body .flatpickr-calendar.arrowTop:before {
  all: unset;
}

body .flatpickr-day.selected,
body .flatpickr-day.startRange,
body .flatpickr-day.endRange,
body .flatpickr-day.selected.inRange,
body .flatpickr-day.startRange.inRange,
body .flatpickr-day.endRange.inRange,
body .flatpickr-day.selected:focus,
body .flatpickr-day.startRange:focus,
body .flatpickr-day.endRange:focus,
body .flatpickr-day.selected:hover,
body .flatpickr-day.startRange:hover,
body .flatpickr-day.endRange:hover,
body .flatpickr-day.selected.prevMonthDay,
body .flatpickr-day.startRange.prevMonthDay,
body .flatpickr-day.endRange.prevMonthDay,
body .flatpickr-day.selected.nextMonthDay,
body .flatpickr-day.startRange.nextMonthDay,
body .flatpickr-day.endRange.nextMonthDay {
  position: relative;
  z-index: 99;
  background: #f2ece0 !important;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: var(--green);
  border-color: #f2ece0;
}

body .flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n + 2) .flatpickr-day.inRange:nth-child(7n + 1) {
  -webkit-box-shadow: 27px 0 0 #f2ece0, 5px 0 0 #f2ece0;
  box-shadow: none !important;
}

body .flatpickr-day.inRange,
body .flatpickr-day.prevMonthDay.inRange,
body .flatpickr-day.nextMonthDay.inRange,
body .flatpickr-day.today.inRange,
body .flatpickr-day.prevMonthDay.today.inRange,
body .flatpickr-day.nextMonthDay.today.inRange,
body .flatpickr-day:hover,
body .flatpickr-day.prevMonthDay:hover,
body .flatpickr-day.nextMonthDay:hover,
body .flatpickr-day:focus,
body .flatpickr-day.prevMonthDay:focus,
body .flatpickr-day.nextMonthDay:focus,
body .flatpickr-day:hover,
body .flatpickr-day.today:hover,
body .flatpickr-day.today:focus {
  cursor: pointer;
  outline: 0;
  background: #fcf7ef;
  color: var(--green);
  border: none;
}

body .rangeMode .flatpickr-day {
  margin-top: 0px;
}

body .rangeMode .flatpickr-day {
  margin: 0;
}

body .dayContainer + body .dayContainer {
  -webkit-box-shadow: 0px;
  box-shadow: 0px;
}

body .flatpickr-calendar {
  padding: 1.56rem;
}

.dayContainer + .dayContainer {
  -webkit-box-shadow: -1px 0 0 #ebebeb !important;
  box-shadow: -1px 0 0 #ebebeb !important;
}

body .flatpickr-day.inRange {
  position: relative;
  z-index: -1;
  border-radius: 0;
  box-shadow: none;
}

body .dayContainer {
  gap: 0;
}

body .flatpickr-day.selected.startRange,
body .flatpickr-day.startRange.startRange,
body .flatpickr-day.endRange.startRange {
  z-index: 99999;
}

body .flatpickr-day.selected.endRange,
body .flatpickr-day.startRange.endRange,
body .flatpickr-day.endRange.endRange {
  z-index: 99999;
}

body .flatpickr-day.selected.startRange,
body .flatpickr-day.startRange.startRange,
body .flatpickr-day.endRange.startRange {
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
  background: #fcf7ef !important;
}

body .flatpickr-day.selected.endRange,
body .flatpickr-day.startRange.endRange,
body .flatpickr-day.endRange.endRange {
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  background: #fcf7ef !important;
}

body .flatpickr-day.endRange.endRange:before,
body .flatpickr-day.startRange.startRange:before {
  background: #f2ece0 !important;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  z-index: -1;
  border-radius: 50%;
}

body .flatpickr-calendar.arrowBottom:before,
body .flatpickr-calendar.arrowBottom:after {
  all: unset;
}

body .flatpickr-months .flatpickr-next-month {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 25px;
  right: 2.5rem !important;
  height: 34px;
  padding: 10px;
  z-index: 3;
  color: rgba(0, 0, 0, 0.9);
  fill: rgba(0, 0, 0, 0.9);
}

body .flatpickr-months .flatpickr-prev-month {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 25px;
  left: 2rem !important;
  height: 34px;
  padding: 10px;
  z-index: 3;
  color: rgba(0, 0, 0, 0.9);
  fill: rgba(0, 0, 0, 0.9);
}

body .flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
body .flatpickr-months .flatpickr-next-month.flatpickr-next-month {
  left: auto;
}

body .flatpickr-months .flatpickr-next-month.flatpickr-next-month {
  padding-right: 0;
  margin-right: -0.2rem;
}

body .rangeMode .flatpickr-day {
  box-shadow: none !important;
}

body .flatpickr-months .flatpickr-prev-month:hover svg,
body .flatpickr-months .flatpickr-next-month:hover svg {
  fill: var(--gold);
}

body .flatpickr-months .flatpickr-prev-month {
  padding-left: 0;
}

body .flatpickr-calendar {
  width: 642px !important;
  border: 1px solid #ebebeb;
  border-radius: 12px;
}

body .flatpickr-weekdays:after {
  content: "";
  width: 2px;
  height: calc(100% - 50px);
  position: absolute;
  border-left: 1px solid #ebebeb;
  top: 25px;
  left: 319px;
}

body .flatpickr-current-month {
  pointer-events: none;
}

body .dayContainer + .dayContainer {
  box-shadow: none !important;
}

body .flatpickr-day {
  border: none;
}

body .flatpickr-day.today {
  background-color: white;
  color: var(--green);
}

body .flatpickr-current-month {
  padding-top: 0.2rem;
  font-size: 100%;
}

body .flatpickr-months .flatpickr-prev-month svg,
body .flatpickr-months .flatpickr-next-month svg {
  width: 10px !important;
  height: 10px !important;
}

body .flatpickr-calendar {
  position: fixed;
  bottom: 142px;
  top: auto !important;
  border: 1px solid #ebebeb;
  box-shadow: none;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  display: inline-block;
}

body .flatpickr-calendar.animate.open {
  animation: none !important;
  opacity: 1;
  visibility: visible;
}

@media only screen and (min-width: 768px) {
  body .flatpickr-innerContainer {
    display: block;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 3rem;
  }
	
	header.egloo .container .column-right {
		gap: 0;
	}
	
	header.egloo .container .column-right .contact-button {
		margin-left: 2.5rem;
		margin-right: 2.5rem;
	}

  body .flatpickr-rContainer {
    display: inline-block;
    padding: 0;
    width: 100%;
  }

  body .flatpickr-days {
    width: 100% !important;
  }

  body .flatpickr-weekdays {
    align-items: center;
    height: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 3rem;
  }

  body .flatpickr-day {
    width: 100%;
  }

  body .flatpickr-days {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 3rem;
  }
  body .dayContainer {
    gap: 0;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    max-width: none;
    min-width: auto;
    width: 100%;
    row-gap: 0.35rem;
  }

  .menu-fixed .container .cont {
    outline: 0;
  }

  .menu-fixed .container .cont:after {
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 50px;
    width: calc(100% - 4rem);
    height: calc(100% - 2rem);
    left: 2rem;
    top: 1rem;
    position: absolute;
    content: "";
    pointer-events: none;
  }
}

@media only screen and (max-width: 768px) {
  body .flatpickr-calendar {
    width: 284px !important;
  }

  body .flatpickr-weekdays:after {
    all: unset;
  }

  body .flatpickr-innerContainer {
    display: block;
    grid-template-columns: 1fr;
    column-gap: 3rem;
  }
  body .flatpickr-calendar {
    left: 50% !important;
    transform: translatex(-50%);
  }

  body .flatpickr-rContainer {
    display: inline-block;
    padding: 0;
    width: 100%;
  }

  body .flatpickr-days {
    width: 100% !important;
  }

  body .flatpickr-weekdays {
    align-items: center;
    height: auto;
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 3rem;
  }

  body .flatpickr-day {
    width: 100%;
  }

  body .flatpickr-days {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 3rem;
  }

  body .dayContainer {
    gap: 0;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    max-width: none;
    min-width: auto;
    width: 100%;
    row-gap: 0.5rem;
  }

  body .flatpickr-day {
    max-width: 34px;
    height: 34px;
    line-height: 34px;
  }

  body .flatpickr-current-month .flatpickr-monthDropdown-months {
    all: unset;
    font-weight: 400;
    width: auto;
  }

  body.home section#homnest-collection .columns .column-right img {
    max-height: 100%;
    height: 100%;
  }

  body.home section#how-we-do-it .swiper .swiper-button-next {
    right: -2rem;
  }

  body.home section#how-we-do-it .swiper .swiper-button-prev {
    left: -2rem;
  }
}

#multi-map {
  min-height: 1024px;
}

#location-info {
  display: none;
  position: absolute;
  left: 52%;
  width: 40%;
  min-width: 24rem;
  bottom: 4%;
  pointer-events: none;
}

#location-info.active {
  display: block;
}

#location-info .swiper-slide,
#location-info .content,
#location-info .close-button,
#location-info .next-arrow,
#location-info .content .link {
  pointer-events: auto;
}

#location-info .image-wrapper {
  position: relative;
  margin-bottom: -26%;
  margin-left: auto;
  width: 100%;
  max-width: 31rem;
  padding-bottom: 106%;
}

#location-info .image-wrapper .slide-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

#location-info .content {
  position: relative;
  width: 100%;
  max-width: 30rem;
  background-color: #2a3936;
  padding: 3rem;
  color: white;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  pointer-events: none;
}

#location-info .content .distance-phrase-wrapper {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}

#location-info .content .specs {
  display: flex;
  gap: 1rem;
  align-items: center;
}

#location-info .content .specs .single-spec {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

#location-info .content .specs .single-spec .value {
  margin-bottom: 0;
  font-size: 0.875rem;
}

#location-info .content .link {
  text-transform: uppercase;
  color: #b88f34;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  position: relative;
  opacity: 1;
}

#location-info .content .link::after {
  content: "";
  position: absolute;
  bottom: -0.25em;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #b88f34;
  transition-duration: 0.3s;
  transition-property: opacity, transform;
  pointer-events: none;
}

#location-info .content .link:hover::after {
  opacity: 0;
  transform: translateY(-0.25em);
}

.map-container .svg-top,
.map-container .svg-bottom {
  pointer-events: none;
}
.daterangepicker .next,
.daterangepicker .prev {
  display: none;
}
.custom-arraow-prev {
  float: left;
  font-size: 24px;
  margin-top: 5px;
}
.custom-arraow-next {
  float: right;
  font-size: 24px;
  margin-top: 5px;
}

@media only screen and (min-width: 768px) and (max-width: 1280px) {
  body.page-template-contact .gm-style .gm-style-iw-c,
  body.single-apartment .gm-style .gm-style-iw-c {
    margin-left: -193px;
    top: 39px;
    width: 295px;
  }

  body.home section#homnest-collection .columns .column-right img {
    height: 35rem;
  }

  body.home section#about .container .columns .column-left .title *,
  body.page-template-about section#about .container .columns .column-left .title h2,
  body.home section#hero .title *,
  section#hero .title h1,
  body.home section#how-we-do-it .cont-text .title *,
  section#intro-about .columns .column.left .title *,
  section#intro-single-apartment .contain .title h2 {
    font-size: 2.5rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide .title p {
    font-size: 1.2rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide.swiper-slide-active .title p {
    font-size: 1.7rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide:not(.swiper-slide-active) img {
    height: 17rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide img {
    height: 23rem;
  }

  body.home section#premium-apartments .container .columns .column-right .title *,
  body.page-template-about section#premium-apartments .container .columns .column-right .title *,
  body.home section#homnest-collection .columns .column-left .title h3,
  body.page-template-about section#premium-apartments .container .responsability .title *,
  section#intro .container .content .contain .title *,
  section#contact .contain .columns .contact h1,
  body.page-template-single-apartment-pa section#hero .title h1,
  body.page-template-single-apartment-hc section#hero .title h1,
  body.single-apartment section#hero .title h1 {
    font-size: 3rem;
  }

  body.home section#premium-apartments .container .columns .column-right .button-explore button {
    margin-bottom: 4rem;
  }

  body.home section#premium-apartments .container .columns .column-right .description p,
  body.page-template-about section#premium-apartments .container .columns .column-right .description p,
  body.home section#homnest-collection .columns .column-left .description p {
    padding-bottom: 4rem;
  }

  body.home section#homnest-collection .columns .column-left .column-left-wrapper {
    padding-right: 4vw;
  }

  section#intro .container .content .columns .info-apartment .cont-up .title h2,
  section#recommended .container .columns .column .info-apartment .cont-up .title h2 {
    font-size: 1.5rem;
    line-height: 1.2;
  }

  body.page-template-about section#premium-apartments .container .columns .column-right .title,
  body.home section#premium-apartments .container .columns .column-right .title {
    margin-left: 0;
  }

  body.home section#about .container .columns .column-right,
  body.home section#premium-apartments .container .columns .column-right,
  body.page-template-about section#premium-apartments .container .columns .column-right {
    width: 41%;
  }

  body.page-template-about section#premium-apartments .container .img-center {
    padding-top: 2rem;
  }

  body.page-template-about section#premium-apartments .container .img-center,
  body.page-template-about section#premium-apartments .container .responsability .description p {
    padding-bottom: 6rem;
  }

  .gold-text {
    font-size: 1.5rem;
  }

  .vertical-text-left,
  section#intro .vertical-text-left {
    font-size: 12vw;
    left: -0.5vw;
  }

  .vertical-text-right,
  section#intro .vertical-text-right {
    font-size: 12vw;
  }

  body header section.menu .columns .column-left ul li a {
    font-size: 2.5rem;
    line-height: 1.04;
  }

  section#current-apartment-info .bg-black .description p {
    padding-left: 4.56rem;
  }

  body header section.menu .columns .column-left ul li:not(:last-child) {
    padding-bottom: 4rem;
    max-width: 13rem;
  }

  body header section.menu .columns .column-center .img img {
    max-height: 22rem;
  }

  section#video .image img,
  section#video .video video {
    height: 25rem;
  }

  body.home section#homnest-collection .columns .column-left .description,
  body.home section#homnest-collection .columns .column-left .button-explore {
    margin-left: 0;
  }

  body.home section#homnest-collection .columns .column-left {
    padding-top: 8.5rem;
  }

  body.home section#homnest-collection .cont .other-apartments .cards .card .info {
    gap: 1rem;
  }

  body.home section#homnest-collection .cont .other-apartments .cards .card .info img {
    height: 1.275rem;
  }

  section#intro .container .content .columns .card {
    max-height: 24vw;
    height: 24vw;
    width: calc(50% - 1.5rem);
  }

  body.page-template-premium-apartments section#intro .container .content .columns,
  body.page-template-homnest-collection section#intro .container .content .columns {
    padding-top: 1rem;
  }

  body.page-template-premium-apartments section#intro .container .content .columns,
  body.page-template-homnest-collection section#intro .container .content .columns {
    padding-left: 1.75rem;
    gap: 5.5rem 1.75rem;
    justify-content: space-between;
    padding-right: 1.75rem;
  }

  section#intro .container .content .columns .card .info-apartment a {
    padding: 1.5rem;
  }

  section#recommended .container .columns .column {
    width: 40%;
  }

  section#intro .container .content .columns .info-apartment .cont-down .arrow,
  section#recommended .container .columns .column .info-apartment .cont-down .arrow {
    width: 1.8rem;
    height: 1.8rem;
  }

  section#intro .container .content .columns .info-apartment .cont-down .icons img,
  section#recommended .container .columns .column .info-apartment .cont-down .icons img {
    max-height: 1.2rem;
    object-fit: contain;
  }

  body.page-template-premium-apartments section#intro .container .content .contain .description p,
  body.page-template-homnest-collection section#intro .container .content .contain .description p {
    padding-bottom: 3rem;
  }

  section#intro .container .content .columns .info-apartment .cont-up .address p,
  section#recommended .container .columns .column .info-apartment .cont-up .address p {
    font-size: 0.75rem;
    padding-top: 0.4rem;
  }

  section#contact .contain .columns a,
  section#contact .contain .columns p {
    font-size: 1rem;
  }

  #location-info .content .specs .single-spec .value {
    margin-bottom: 0;
    font-size: 0.75rem;
  }

  #location-info .content .specs .single-spec img,
  #location-info .content .distance-phrase-wrapper p {
    object-fit: contain;
    height: 1rem;
  }

  #location-info button.next-arrow {
    position: absolute;
    right: 3.5rem;
    bottom: 6.5rem;
  }

  #location-info button.close-button img {
    width: 1.2rem;
  }

  #location-info button.close-button {
    position: absolute;
    right: 3.5rem;
    bottom: 12.8rem;
  }

  #location-info button.next-arrow img {
    width: 1.7rem;
  }

  #location-info .content .distance-phrase-wrapper {
    gap: 1rem;
  }

  #location-info .content .distance-phrase-wrapper img {
    height: 1rem;
  }

  #location-info .content .distance-phrase-wrapper p {
    font-size: 0.75rem;
  }

  #location-info .image-wrapper {
    margin-bottom: -5.6rem;
    max-width: 31rem;
    padding-bottom: 0;
    height: 21rem;
    object-fit: cover;
  }

  #location-info {
    bottom: 1rem;
    right: 1.25rem;
    width: 17rem;
    min-width: 13rem;
    pointer-events: none;
  }

  #location-info .content .title-wrapper h2 {
    font-size: 1.3rem;
    font-weight: 300;
  }

  #location-info .content {
    width: 100%;
    max-width: 30rem;
    padding: 2rem;
    gap: 2rem;
    left: -2.6rem;
  }

  body #multi-map {
    min-height: 35rem;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  body.home section#homnest-collection .cont .other-apartments .cards .card .info {
    flex-wrap: wrap;
    row-gap: 0.8rem;
  }

  body.home section#homnest-collection .cont .other-apartments .cards .card .info p {
    min-width: 100%;
  }

  body header section.menu .columns .column-left ul li:not(:last-child) {
    padding-bottom: 3rem;
  }

  section#intro-single-apartment .container-swiper {
    position: relative;
    max-width: 77%;
  }

  section#intro-single-apartment .swiper,
  section#intro-single-apartment .container-swiper {
    height: 48vw;
  }

  .menu-fixed .container {
    max-width: 47.8rem;
  }

  body .dropdown2 {
    width: 154px;
  }

  body .dropdown3 {
    width: 204px;
  }

  body .dropdown input,
  body .dropdown2 input,
  body .dropdown3 input {
    padding-left: 2.5rem;
  }

  .menu-fixed .container .cont .collection .check-availability-button button a {
    font-size: 0.6rem;
  }

  .menu-fixed .container .cont {
    width: 100%;
  }

  .menu-fixed .container .cont .collection .icon img {
    height: 1rem;
  }

  body .dropdown input,
  body .dropdown2 input,
  body .dropdown3 input,
  .menu-fixed .container .cont .collection .increment-decrement {
    font-size: 0.75rem;
  }

  .menu-fixed .container .cont .collection .increment-decrement {
    padding-right: 0;
  }

  .menu-fixed .container .cont .collection .increment-decrement input {
    width: 2rem;
  }
}

@media screen and (min-width: 768px) {
  .only-mobile {
    display: none;
  }
	
	#location-info button.next-arrow {
		right: auto;
		left: 20rem;
	}
	
	#location-info button.close-button {
		left: 21rem;
		right: auto;
	}
}

@media screen and (max-width: 768px) {
  html,
  body {
    overscroll-behavior-y: contain;
  }

  body header section.menu {
    z-index: 999;
  }

  header.egloo .container {
    z-index: 1000;
  }

  body .availability-mobile {
    position: fixed;
    bottom: 1.5rem;
    width: 100%;
    z-index: 99;
    opacity: 1;
    visibility: visible;
    left: 0;
    transition: opacity 300ms ease-in-out;
  }

  body .availability-mobile.invisible {
    opacity: 0;
    visibility: hidden;
  }

  body .availability-mobile .content:after {
    content: "";
    flex: 1;
  }

  body .availability-mobile .content {
    border-radius: 50px;
    background: white;
    border: 1px solid #ebebeb;
    height: 60px;
    display: flex;
    align-items: center;
    padding: 0px 1.5rem;
  }

  body .availability-mobile p {
    flex: 6;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 0.875rem;
  }

  body .availability-mobile img {
    max-height: 2rem;
    object-fit: contain;
    width: 100%;
    flex: 1;
  }

  body.active:after {
    position: fixed;
    height: 100vh;
    width: 100vw;
    background: rgba(255, 255, 255, 0.7);
    content: "";
    top: 0;
    left: 0;
  }

  body.active,
  body.activated {
    touch-action: none;
    overflow: hidden;
  }

  body.aperto {
    touch-action: none;
    position: fixed;
    height: 100%;
    width: 100%;
  }

  section#hero {
    height: 69vh;
  }

  header.egloo .container .changing-language,
  header.egloo .container .contact-button,
  .vertical-text-left,
  .vertical-text-right {
    display: none;
  }

  body #multi-map {
    min-height: 40rem;
  }

  section#hero .title h1 {
    font-size: 2rem;
  }

  body.home section#hero .title {
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  body.home section#hero .title * {
    font-size: 2.3rem;
    line-height: 1.2;
  }

  body header section.menu .columns .column-left ul li a {
    font-size: 1.8rem;
    line-height: 1.2;
  }

  body header section.menu .columns .column-left ul li:not(:last-child) {
    padding-bottom: 2.5rem;
  }

  body.home section#about .container .columns {
    padding-bottom: 3.37rem;
  }

  body.home section#about .container .columns,
  body.home section#premium-apartments .container .columns,
  body.page-template-about section#about .container .columns,
  body.page-template-about section#premium-apartments .container .columns {
    width: calc(100% / 12 * 12);
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    justify-content: space-between;
    gap: 2.5rem;
  }

  body.home section#about .container .columns .column-left,
  body.home section#premium-apartments .container .columns .column-left,
  body.page-template-about section#premium-apartments .container .columns .column-left {
    width: 100%;
    text-align: center;
  }

  body.home section#about .container .columns .column-right,
  body.page-template-about section#about .container .columns .column-right {
    padding-top: 2.38rem;
  }

  body.home section#about .container .columns .column-right,
  body.home section#premium-apartments .container .columns .column-right,
  body.page-template-about section#premium-apartments .container .columns .column-right {
    width: 100%;
  }

  body.home section#about .container .columns .column-right .read-more-button,
  body.page-template-about section#about .container .columns .column-right .read-more-button {
    display: flex;
    justify-content: center;
  }

  body.home section#premium-apartments .container .columns .column-left .img,
  body.page-template-about section#premium-apartments .container .columns .column-left .img {
    position: relative;
    top: 3rem;
    width: 70%;
    margin: 0 auto;
  }

  body.home section#premium-apartments .container .columns .column-right .title h3,
  body.page-template-about section#premium-apartments .container .columns .column-right .title *,
  body.page-template-about section#premium-apartments .container .responsability .title * {
    margin-left: 0rem;
    color: white;
    font-size: 2.5rem;
    font-weight: 300;
    font-family: var(--ff-alternate);
    padding-bottom: 2rem;
    line-height: 1;
    text-align: left;
  }

  body.home section#premium-apartments .container .columns .column-right .description p,
  body.page-template-about section#premium-apartments .container .columns .column-right .description p,
  body.home section#homnest-collection .columns .column-left .description p,
  body.page-template-about section#premium-apartments .container .responsability .description p {
    font-size: 0.9375rem;
    line-height: 1.71;
    font-weight: 300;
    padding-bottom: 3.75rem;
  }

  body.page-template-about section#premium-apartments .container .responsability .description p {
    text-align: left;
  }

  body.home section#premium-apartments .container .columns .column-right .button-explore button,
  body.page-template-about section#premium-apartments .container .columns .column-right .button-explore button,
  body.home section#homnest-collection .columns .column-left .button-explore button,
  body.page-template-about section#homnest-collection .columns .column-left .button-explore button {
    gap: 3rem;
    width: 40%;
    margin: auto;
    margin-bottom: 3rem;
  }

  body.home section#homnest-collection .columns {
    display: flex;
    flex-direction: column;
    width: calc(100% / 12 * 12);
  }

  body.home section#homnest-collection .columns .column-left {
    padding: 0rem;
    padding-top: 4rem;
    width: 100%;
  }

  body.home section#homnest-collection .columns .column-left .title * {
    font-size: 3rem;
    text-align: center;
  }

  body.home section#homnest-collection .columns .column-left .description,
  body.home section#homnest-collection .columns .column-left .button-explore {
    margin: 0;
  }

  body.home section#homnest-collection .columns .column-right {
    padding-top: 2.3rem;
    width: 70%;
    margin: 0 auto;
  }

  body.home section#homnest-collection .cont .info-apartments {
    padding-top: 3rem;
    padding-bottom: 3rem;
    display: flex;
    justify-content: center;
  }

  body.home section#homnest-collection .cont .info-apartments p {
    font-size: 1.3rem;
  }

  body.home section#homnest-collection .cont .other-apartments {
    padding-bottom: 3rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide.swiper-slide-active .title p {
    font-size: 1.5rem;
  }

  body.page-template-about section#hero .img img {
    object-position: right;
  }

  body.page-template-about section#hero,
  body.page-template-contact section#hero,
  body.page-template-work-with-us section#hero,
  body.page-template-premium-apartments section#hero,
  body.page-template-homnest-collection section#hero {
    height: 85vw;
  }

  section#intro-about .contain,
  section#contact .contain {
    top: 0;
    padding-top: 1rem;
    padding-bottom: 2rem;
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    margin-bottom: 0;
  }

  section#intro-about:after,
  section#contact::after,
  body.page-template-premium-apartments section#intro:after,
  body.page-template-homnest-collection section#intro:after {
    display: none;
  }

  section#intro-about .name p,
  section#contact .contain .name p,
  section#intro .container .content .homnest p {
    padding-top: 2rem;
    padding-bottom: 1.25rem;
  }

  section#contact .contain .columns {
    display: grid;
    grid-template-columns: 1fr;
  }

  body.page-template-homnest-collection section#intro .container .content:nth-child(1) .contain section#intro-about .columns .column.left .title,
  section#contact .contain .columns .contact h1,
  body.page-template-premium-apartments section#intro .container .content .contain .title,
  body.page-template-homnest-collection section#intro .container .content .contain .title {
    padding-bottom: 1rem;
  }

  body.page-template-premium-apartments section#intro .container .content:nth-child(1),
  body.page-template-homnest-collection section#intro .container .content:nth-child(1) {
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    top: 0;
    padding-top: 1rem;
  }

  section#intro .container .content .columns .card {
    width: 100%;
    height: auto;
  }

  section#intro .container .content .columns .card .img {
    height: auto;
  }

  body.page-template-premium-apartments section#intro .container .content .columns,
  body.page-template-homnest-collection section#intro .container .content .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    display: grid;
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  body.page-template-premium-apartments section#intro .container .content,
  body.page-template-homnest-collection section#intro .container .content,
  section#recommended .container .columns .column {
    width: 100%;
  }

  body.page-template-premium-apartments section#intro .container .content:nth-child(2),
  body.page-template-homnest-collection section#intro .container .content:nth-child(2) {
    padding-bottom: 4rem;
  }

  section#intro .container .content .columns .card {
    max-height: none;
  }

  section#intro .container .content .columns .card .info-apartment a,
  section#recommended .container .columns .column .info-apartment a {
    position: unset;
    opacity: 1;
    background: white;
    padding: 1rem 0 0 0;
    color: var(--green);
  }

  section#recommended {
    padding-top: 3.5rem;
  }

  section#recommended .container {
    margin-bottom: 4rem;
  }

  section#recommended .container .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#recommended .container .columns .column .info-apartment .cont-down .icons img,
  section#intro .container .content .columns .info-apartment .cont-down .icons img {
    object-fit: contain;
  }

  section#intro .container .content .columns .info-apartment .cont-down .arrow,
  section#recommended .container .columns .column .info-apartment .cont-down .arrow {
    display: none;
  }

  section#intro .container .content .columns .info-apartment .cont-up .address p,
  section#recommended .container .columns .column .info-apartment .cont-up .address p {
    padding-top: 0.2rem;
    padding-bottom: 0.7rem;
  }

  section#intro .container .content .columns .info-apartment .cont-up .title h2,
  section#recommended .container .columns .column .info-apartment .cont-up .title h2 {
    font-size: 1.5rem;
  }

  body.page-template-premium-apartments section#intro .container .content .contain .description p,
  body.page-template-homnest-collection section#intro .container .content .contain .description p {
    padding-bottom: 1rem;
  }

  section#intro-about .columns .column.right .description p {
    font-size: 0.9375rem;
  }

  section#intro-about .columns .column.left .title *,
  section#contact .contain .columns .contact h1,
  section#intro .container .content .contain .title *,
  body.home section#about .container .columns .column-left .title * {
    font-size: 2.3rem;
  }

  section#contact .contain .columns .email {
    padding-top: 0.5rem;
    padding-bottom: 0.4rem;
  }

  body.home section#about .container .columns .column-left {
    text-align: left;
  }

  section#contact .contain .columns .contact h1,
  section#intro .container .content .contain .title * {
    line-height: 1.2;
  }

  section#contact .contain .name p {
    margin-bottom: 0;
  }

  section#intro-about .columns {
    display: grid;
  }

  section#intro-about .columns .column.left {
    width: 100%;
  }

  body.home section#premium-apartments .container .columns .column-left .img,
  body.page-template-about section#premium-apartments .container .columns .column-left .img {
    top: 0;
    width: 100%;
    padding-top: 4rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  body.page-template-about section#premium-apartments .container .columns .column-right {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 0;
	  padding-bottom: 0;
  }

  body.page-template-about section#premium-apartments .container .img-center {
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-bottom: 2.5rem;
  }

  body.page-template-about section#premium-apartments .container .responsability {
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#intro .container .content .contain .title,
  section#intro .container .content .contain .description {
    width: 100%;
  }

  body.page-template-about section#premium-apartments .container .responsability .gold-text p {
    text-align: left;
  }

  body.page-template-about section#premium-apartments .container .columns .column-right .title,
  body.home section#premium-apartments .container .columns .column-right .title {
    margin-left: 0;
  }

  body.page-template-premium-apartments section#intro .container .content:nth-child(1) .contain,
  body.page-template-homnest-collection section#intro .container .content:nth-child(1) .contain {
    gap: 0.8rem;
    display: grid;
    grid-template-columns: 1fr;
  }

  section#intro-about .columns .column.left .title {
    padding-bottom: 1rem;
  }

  section#intro-about .columns .column.right {
    width: 100%;
  }

  section#intro-about {
    margin-bottom: 1rem;
  }

  section#video .image img,
  section#video .video video {
    height: 70vw;
    object-fit: cover;
    width: 100%;
  }

  section#map .map-container .button {
    padding-top: 3.2rem;
    padding-bottom: 0.5rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    width: 100%;
    transform: none;
  }

  section#map .map-container .button a {
    font-size: 2rem;
    line-height: 1.2;
  }

  section#map .map-container .button a span {
    display: grid;
  }

  section#map .map-container .button img {
    bottom: 0.35rem;
  }

  section#map .map-container .button:hover img {
    transform: none;
  }

  body header section.menu .columns.top-section .column-center,
  body header section.menu .columns.top-section .column-right {
    display: none;
  }

  body header section.menu .columns {
    gap: 0;
    grid-template-columns: 1fr;
  }

  body header section.menu .columns .column-left {
    padding: 3rem 0;
  }

  footer.egloo .bg {
    padding-top: 3.2rem;
  }

  footer.egloo .container .menu-footer {
    display: none;
  }

  footer.egloo .container .logo {
    grid-column: span 2;
  }

  footer.egloo .container .logo img {
    max-width: 10rem;
  }

  footer.egloo .container:nth-child(1) {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }

  footer.egloo .container .icon {
    margin-top: 3.1rem;
    margin-bottom: 3.1rem;
    justify-content: start;
  }

  footer.egloo .container ul.list li a,
  footer.egloo .container ul.list li {
    font-size: 0.9375rem;
  }

  footer.egloo .container .cont-bottom {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.25rem;
  }

  footer.egloo .container .cont-bottom div.cockies,
  footer.egloo .container .cont-bottom div.privacy-policy {
    text-align: left;
  }

  section#contact #form .cont {
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#contact #form .form .name-email {
    margin-bottom: 1rem;
  }

  section#contact #form {
    margin-bottom: 3.3rem;
    margin-top: 1.5rem;
  }

  section#contact #form .title h2 {
    display: grid;
    font-size: 1.5rem;
    text-align: left;
  }

  body .gm-style-mot {
    font-size: 1.5rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  section#contact #map .map:before,
  #multi-map:before,
  body #single-map:before,
  section#contact #map .map:after,
  body #single-map:after {
    height: 5rem;
  }

  body.page-template-contact .gm-style .gm-style-iw-c,
  body.single-apartment .gm-style .gm-style-iw-c {
    margin-left: 0;
    top: 11px;
  }

  body.page-template-contact .view-map-wrap a,
  body.single-apartment .view-map-wrap a {
    font-size: 0.9375rem;
  }

  body.page-template-contact .map-info-window h3 {
    font-size: 1.2rem;
  }

  body.home section#premium-apartments .container .columns .column-right .title h3,
  body.home section#premium-apartments .container .columns .column-right .title * {
    font-size: 2.5rem;
    line-height: 1.2;
    padding-bottom: 1.8rem;
  }

  body.home section#premium-apartments .container .columns .column-right {
    padding-top: 0;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
	  padding-bottom: 0;
  }

  body.home section#premium-apartments .container .columns .column-right .button-explore button {
    width: 100%;
  }

  body.home section#premium-apartments .container .columns .column-right .description p {
    padding-bottom: 2.7rem;
  }

  body.home section#about .container .columns .column-right .read-more-button {
    justify-content: start;
  }

  body.home section#about .container .columns .column-right .description p {
    font-size: 0.9375rem;
  }

  body.home section#about {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 1rem;
  }

  body.home section#about .container .columns {
    gap: 0.8rem;
  }

  body.home section#about .container .columns .column-right {
    padding-top: 1rem;
  }

  body.home section#homnest-collection .columns .column-left .column-left-wrapper {
    max-width: 100%;
    padding: 0;
  }

  body.home section#homnest-collection .columns .column-right {
    order: 1;
  }

  body.home section#homnest-collection .columns .column-left {
    order: 2;
  }

  body.home section#premium-apartments .container .columns .column-right .button-explore button,
  body.page-template-about section#premium-apartments .container .columns .column-right .button-explore button,
  body.home section#homnest-collection .columns .column-left .button-explore button,
  body.page-template-about section#homnest-collection .columns .column-left .button-explore button {
    width: 100%;
  }

  body.home section#homnest-collection .columns .column-right {
    padding-top: 4rem;
    max-width: 100%;
    padding-left: 0;
    width: 100%;
  }

  body.home section#homnest-collection .columns .column-left .title h3,
  body.home section#homnest-collection .columns .column-left .title * {
    text-align: left;
    padding-bottom: 1.8rem;
    font-size: 2.5rem;
  }

  body.home section#homnest-collection .cont .other-apartments .container .swiper-wrap {
    max-width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  body.home section#homnest-collection .columns {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  body.home section#homnest-collection .columns .column-left {
    padding-top: 2.5rem;
  }

  body.home section#homnest-collection .columns .column-left .description p {
    padding-bottom: 2.7rem;
  }

  body.home section#homnest-collection .cont .info-apartments {
    padding-top: 0;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  body.home section#homnest-collection .cont .info-apartments p {
    font-size: 2.3rem;
  }

  body.home section#homnest-collection .cont .other-apartments .cards .card .title p {
    padding-top: 1.4rem;
    padding-bottom: 0.7rem;
    font-size: 1.3rem;
  }

  body.home section#homnest-collection .cont .other-apartments .cards .card .info {
    flex-wrap: wrap;
  }

  body.home section#homnest-collection .cont .other-apartments .cards .card .info p {
    min-width: 100%;
  }

  body.home section#homnest-collection .cont .other-apartments .cards .card .info {
    row-gap: 1rem;
  }

  body.home section#homnest-collection .cont .other-apartments {
    padding-bottom: 3.5rem;
  }

  body.home section#how-we-do-it {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  body.home section#how-we-do-it {
    padding-top: 3.5rem;
    padding-bottom: 4rem;
  }

  body.home section#how-we-do-it .cont-text .subtitle p {
    font-size: 0.9375rem;
  }

  body.home section#how-we-do-it .cont-text .title * {
    font-size: 2.5rem;
  }

  body.home section#how-we-do-it .cont-text .convenience {
    padding-bottom: 1.25rem;
  }

  body.home section#how-we-do-it .cont-text .title {
    padding-bottom: 1.8rem;
  }

  body.home section#how-we-do-it .cont-text .subtitle {
    padding-bottom: 3.5rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide.swiper-slide-active .title p {
    font-size: 1.4rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide .title p {
    font-size: 1rem;
  }

  body.home section#how-we-do-it .swiper .swiper-wrapper .swiper-slide img {
    width: 72vw;
    height: auto;
  }

  body.home section#how-we-do-it .swiper .swiper-slide:not(.swiper-slide-active) img {
    width: 66vw;
    height: auto;
  }

  body.home section#how-we-do-it .swiper {
    height: 380px;
  }

  body.page-template-single-apartment-pa section#hero .title h1,
  body.page-template-single-apartment-hc section#hero .title h1,
  body.single-apartment section#hero .title h1 {
    font-size: 2.5rem;
  }

  body.page-template-single-apartment-pa section#hero,
  body.page-template-single-apartment-hc section#hero,
  body.single-apartment section#hero {
    position: relative;
    height: 69vh;
    width: 100%;
  }

  section#intro-single-apartment .contain .category-apartment {
    display: grid;
  }

  section#intro-single-apartment .contain .category-apartment p {
    order: 2;
  }

  section#intro-single-apartment .contain .category-apartment .icon-back {
    position: unset;
    top: 0;
    transform: none;
  }

  body.single-apartment section#hero .title {
    margin-top: 0;
    width: 100%;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  section#intro-single-apartment .contain .category-apartment .icon-back a img {
    height: 2rem;
  }

  section#intro-single-apartment {
    padding-top: 3rem;
    padding-bottom: 3.5rem;
  }

  section#intro-single-apartment .contain .title h2 {
    font-size: 2.5rem;
    padding-bottom: 1.8rem;
  }

  body.page-template-single-apartment-pa section#hero .icon,
  body.page-template-single-apartment-hc section#hero .icon,
  body.single-apartment section#hero .icon {
    bottom: 0;
  }

  section#intro-single-apartment .contain .category-apartment {
    gap: 2rem;
  }

  section#intro-single-apartment .contain .subtitle {
    padding-bottom: 3.5rem;
  }

  section#intro-single-apartment {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .cont-icons-info .info:nth-child(2) .description:after {
    content: " ";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    height: 0.9rem;
    margin-top: auto;
    margin-bottom: auto;
    border-left: 1px var(--gold) solid;
  }

  section#intro-single-apartment .swiper .swiper-wrapper .swiper-slide img {
    height: 57vw;
  }

  section#intro-single-apartment .swiper,
  section#intro-single-apartment .container-swiper {
    height: auto;
  }

  section#intro-single-apartment .swiper-button-prev img,
  section#intro-single-apartment .swiper-button-next img {
    width: 2rem;
    height: 2rem;
  }

  section#intro-single-apartment .container-swiper {
    margin-bottom: 3rem;
  }

  section#intro-single-apartment .price p {
    padding-bottom: 3rem;
  }

  section#current-apartment-info .bg-black .img {
    position: unset;
  }

  section#current-apartment-info .bg-black .title {
    width: 100%;
    padding-left: 0;
    padding-top: 3.5rem;
    padding-bottom: 1.8rem;
  }

  section#intro-single-apartment .contain .subtitle p,
  section#current-apartment-info .bg-black .description p {
    font-size: 0.9375rem;
  }

  section#current-apartment-info .bg-black .description p {
    padding-left: 0;
  }

  section#current-apartment-info .bg-black .description {
    width: 100%;
  }

  section#current-apartment-info .bg-black {
    height: auto;
    display: grid;
  }

  section#current-apartment-info .bg-black .img {
    order: 1;
    width: 100%;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    padding-top: 4rem;
  }

  .cont-icons-info {
    row-gap: 2rem;
  }

  .cont-icons-info .info {
    gap: 1.3rem;
  }

  section#current-apartment-info .bg-black .container {
    order: 2;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    padding-bottom: 3.5rem;
  }

  section#current-apartment-info .bg-black .title * {
    padding: 0;
  }

  section#current-apartment-info {
    margin-bottom: 3.5rem;
  }

  section#services .title h3 {
    padding-bottom: 3.26rem;
  }

  section#services .cont-icons-info .info:nth-child(even) .description:after {
    content: " ";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    height: 0.9rem;
    margin-top: auto;
    margin-bottom: auto;
    border-left: 1px var(--gold) solid;
  }

  .cont-icons-info {
    padding-bottom: 4rem;
  }

  section#recommended .container .columns .column.right {
    display: none;
  }

  body.page-template-work-with-us section#contact .contain .columns div {
    width: 100%;
  }

  body.page-template-work-with-us section#hero .img img {
    object-position: right;
  }

  body.page-template-work-with-us section#contact #form {
    margin-top: 0.5rem;
  }

  body.page-template-work-with-us section#contact #form .title h2 {
    font-size: 1.5rem;
    text-align: left;
  }

  body.page-template-work-with-us section#contact #form .form .name-email {
    gap: 1.5625rem;
  }

  #location-info {
    position: fixed;
    top: 50%;
    z-index: 99;
    transform: translatey(-50%);
    bottom: auto;
    right: 1.25rem;
    width: calc(100% - 2.5rem);
    min-width: calc(100% - 2.5rem);
	  left: 1.25rem;
  }

  #location-info .image-wrapper .slide-image {
    max-height: 13.8rem;
  }

  #location-info .content {
    max-width: 100%;
  }

  #location-info .image-wrapper {
    max-width: 100%;
    height: auto;
    margin-bottom: 0;
	  padding-bottom: 13.8rem;
  }

  #location-info button.close-button img {
    width: 1.2rem;
  }

  #location-info button.next-arrow img {
    width: 1.9rem;
  }

  #location-info button.next-arrow {
    position: absolute;
    right: 1.5rem;
    bottom: auto;
    z-index: 3;
    top: 19.9rem;
  }

  #location-info button.close-button {
       position: absolute;
    right: 1.2rem;
    bottom: auto;
    top: 14.8rem;
    padding: 0.5rem;
  }

  #location-info .content {
    left: 0;
    padding: 2rem 1.5rem 2.3rem 1.5rem;
    gap: 1.5rem;
  }

  #location-info .content .specs .single-spec img {
    height: 1rem;
  }

  #location-info .content .specs .single-spec p {
    font-size: 0.75rem;
  }

  #location-info .content .distance-phrase-wrapper {
    gap: 1rem;
  }

  #location-info .content .distance-phrase-wrapper img {
    height: 1.3rem;
  }

  #location-info .content .distance-phrase-wrapper p {
    font-size: 0.75rem;
  }

  #location-info .content .title-wrapper h2 {
    font-size: 1.3rem;
    font-weight: 300;
  }

  section#hero .menu-fixed,
  section#intro-single-apartment .menu-fixed {
    width: 100vw;
    position: fixed;
    bottom: auto;
    z-index: 999;
    left: 0;
    opacity: 1;
    visibility: visible;
    height: 100vh;
    top: 0;
    background: white;
    opacity: 0;
    visibility: hidden;
    transition: all 300ms ease-in-out;
  }

  #number-input {
    color: var(--green) !important;
    opacity: 1 !important;
  }

  section#hero .menu-fixed.active,
  section#intro-single-apartment .menu-fixed.active {
    opacity: 1;
    visibility: visible;
    left: 0;
    z-index: 9999;
  }

  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 2.87rem;
  }

  body.home section#hero .title {
    margin-top: -1.5rem;
  }

  .menu-fixed .container {
    max-width: 100%;
    padding: 0;
  }

  .menu-fixed .container .intro {
    padding: 1.3rem;
    text-align: center;
    position: relative;
    color: white;
    text-transform: uppercase;
    font-size: 0.75rem;
    background-color: var(--green);
    letter-spacing: 0.04em;
  }

  .menu-fixed .container .intro p {
    margin: 0;
  }

  body.home .dropdown2 input,
  body.single-apartment .dropdown3 input {
    border-radius: 50px;
  }

  .menu-fixed .container .intro button {
    position: absolute;
    right: 1.25rem;
    top: 50%;
    transform: translatey(-50%);
    background: transparent;
    outline: 0;
    border: 0;
  }

  .menu-fixed .container .cont {
    width: 100%;
    display: grid;
    gap: 2.25rem;
    padding-top: 2.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    border-radius: 50px;
    height: auto;
    outline: none;
  }

  .collection .wrapper:after {
    display: none;
  }

  .menu-fixed .container .cont .collection .increment-decrement {
    height: 64px;
    width: 100%;
  }

  .menu-fixed .container .cont .collection {
    border: 1px solid #ebebeb;
    border-radius: 50px;
    height: auto;
    left: 0;
    justify-content: space-between;
  }

  .menu-fixed .container .cont .collection .btn-minus {
    margin-left: auto;
  }

  body .dropdown2 input,
  body .dropdown3 input {
    border-radius: 50px;
  }

  body .dropdown,
  body .dropdown2,
  body .dropdown3,
  .collection .wrapper {
    width: 100%;
  }

  body .dropdown .options,
  body .dropdown2 .options2,
  body .dropdown3 .options3 {
    top: 4.5rem;
    width: 100%;
    z-index: 99999;
  }

  body .daterangepicker .drp-calendar.left .calendar-table {
    padding-right: 0;
  }

  body .daterangepicker .drp-calendar.right .calendar-table {
    padding-left: 0;
  }

  body .daterangepicker {
    padding: 1.4rem;
  }

  body .daterangepicker .drp-calendar.left:after {
    display: none;
  }

  .menu-fixed .container .cont .collection .check-availability-button button a {
    font-size: 0.75rem;
    padding: 0.75rem 1.5rem;
  }

  .menu-fixed .container .cont .collection .check-availability-button {
    left: 0;
  }

  .menu-fixed .container .cont .collection .check-availability-button button a:hover {
    background-color: var(--green);
  }

  .cont-icons-info {
    padding-bottom: 0.5rem;
  }

  body.opened .daterangepicker {
    z-index: 9999;
  }

  body .dropdown .options,
  body .dropdown2 .options2,
  body .dropdown3 .options3 {
    transform: none;
  }

  .dropdown2 input {
    pointer-events: none;
  }

  body.opened .daterangepicker {
    top: 250px !important;
    bottom: auto;
    padding-top: 0.8rem;
  }

  body.opened.single-apartment .daterangepicker {
    top: 148px !important;
  }

  body .dropdown2 .options2 {
    max-height: 0rem;
  }

  body .dropdown2.opened .options2 {
    max-height: 20rem;
  }
	
	body header section.menu .columns {
		align-items: start;
	}
	
	body header section.menu .columns .column-right {
		padding-top: 0;
	}
	
	body header section.menu .columns:first-child {
		flex: unset;
	}
	
	body header section.menu .columns .column-left {
		padding-top: 2rem;
	}
	
}

@media only screen and (min-width: 1440px) {
	#location-info .image-wrapper {
		padding-bottom: 32rem;
	}	
}