@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  box-sizing: border-box;
}

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

pre {
  background: #fff;
  color: #000;
  font-family: monospace;
  max-width: 100vw;
  overflow-x: auto;
}

:root {
  --background-color: #EFECEA;
  --border-color: #003D4F;
  --text-color: #003D4F;
}

.context-dark {
  --background-color: #003D4F;
  --border-color: #EFECEA;
  --heading-color: #EFECEA;
  --text-color: #EFECEA;
}

input,
label,
select,
button,
textarea {
  -webkit-appearance: none;
  background: none;
  border: 0;
  display: inline-block;
  font-family: inherit;
  font-size: inherit;
  line-height: 1;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  white-space: normal;
}
input:focus,
label:focus,
select:focus,
button:focus,
textarea:focus {
  outline: 0;
}

::-webkit-search-decoration {
  display: none;
}

button,
input[type=reset],
input[type=button],
input[type=submit] {
  overflow: visible;
  width: auto;
}

/* IE8 and FF freak out if this rule is within another selector */
::-webkit-file-upload-button {
  padding: 0;
  border: 0;
  background: none;
}

/* Textarea
-----------------------------------------------*/
textarea {
  /* Move the label to the top */
  vertical-align: top;
  /* Turn off scroll bars in IE unless needed */
  overflow: auto;
}

/* Selects
-----------------------------------------------*/
select[multiple] {
  /* Move the label to the top */
  vertical-align: top;
}

html {
  max-width: 100vw;
  scroll-behavior: smooth;
}

body {
  background: var(--background-color);
  color: var(--text-color);
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  max-width: 100vw;
  min-width: 320px;
  -webkit-text-size-adjust: 100%;
}

.components {
  margin-block: 80px;
}
.components__inner {
  gap: 40px;
  width: calc(100% - 40px) !important;
}
.components__section {
  border: 1px solid #000;
  padding: 20px;
  position: relative;
  width: 100%;
}
.components__title {
  font-size: 24px;
  font-weight: 700;
}
.components__context {
  background: #000;
  color: #fff;
  font-size: 14px;
  padding: 3px 8px;
  position: absolute;
  right: 0;
  top: 0;
}
.components .context-dark {
  background: #003E51;
  color: #fff;
}
.components__list {
  align-items: center;
  display: grid;
  gap: 20px;
}
.components__section--buttons .components__list-heading, .components__section--buttons .components__list-row {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.components__section--inputs .components__list-heading, .components__section--inputs .components__list-row {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.components__list-heading-item, .components__list-row-item {
  align-self: center;
  font-size: 14px;
  justify-content: center;
}

.armix-form-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

@font-face {
  font-family: "SpanBold";
  src: url("../../assets/fonts/span/SpanBold/font.woff2") format("woff2"), url("../../assets/fonts/span/SpanBold/font.woff") format("woff");
}
@font-face {
  font-family: "SpanBoldItalic";
  src: url("../../assets/fonts/span/SpanBoldItalic/font.woff2") format("woff2"), url("../../assets/fonts/span/SpanBoldItalic/font.woff") format("woff");
}
.global-inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 100%;
  width: calc(100% - 48px);
}
@media (min-width: 641px) {
  .global-inner {
    max-width: 100%;
    width: calc(100% - 80px);
  }
}
@media (min-width: 1025px) {
  .global-inner {
    max-width: 100%;
    width: 960px;
  }
}
@media (min-width: 1367px) {
  .global-inner {
    width: 1280px;
  }
}
@media (min-width: 1921px) {
  .global-inner {
    width: 1600px;
  }
}

@media (min-width: 641px) {
  .global-inner--large {
    width: calc(100% - 40px);
  }
}
@media (min-width: 1025px) {
  .global-inner--large {
    width: calc(100% - 40px);
  }
}
@media (min-width: 1367px) {
  .global-inner--large {
    max-width: 1326px;
    width: 100%;
  }
}

.global-inner-fluid {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 100%;
  padding-inline: 24px;
}
@media (min-width: 1367px) {
  .global-inner-fluid {
    padding-inline: 72px;
  }
}

.global-padding {
  padding-block: 56px;
}
@media (min-width: 1025px) {
  .global-padding {
    padding-block: 70px;
  }
}
@media (min-width: 1367px) {
  .global-padding {
    padding-block: 105px;
  }
}

.global-gap {
  gap: 56px;
}
@media (min-width: 1025px) {
  .global-gap {
    gap: 70px;
  }
}
@media (min-width: 1367px) {
  .global-gap {
    gap: 105px;
  }
}

.global-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media (min-width: 641px) {
  .global-grid {
    grid-template-columns: repeat(8, 1fr);
  }
}
@media (min-width: 1025px) {
  .global-grid {
    grid-template-columns: repeat(12, 1fr);
  }
}

.global-cover {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100svh;
  padding-block: 37px;
}
@media (min-width: 1367px) {
  .global-cover {
    padding-block: 75px;
  }
}

.logo {
  display: block;
  text-align: center;
}
.logo .logo__heading,
.logo .logo__link,
.logo .logo__image {
  display: block;
  height: inherit;
  width: auto;
}
.logo .logo__heading {
  width: min-content;
}

.loop-bar {
  align-items: center;
  border-top: 1px solid #003D4F;
  display: flex;
  font-size: 12px;
  letter-spacing: 0.3px;
  justify-content: space-between;
  padding-block: 5px;
  width: 100%;
}
.loop-bar__list {
  display: flex;
}
.loop-bar__item {
  border-left: 1px solid #003D4F;
  padding-inline: 10px;
}
.loop-bar__item:first-child {
  border-left: none;
  padding-left: 0;
}
.loop-bar__link--active {
  font-weight: 700;
}

@media (min-width: 1025px) {
  .loop-bar {
    padding-block: 10px;
  }
}
.map {
  height: 300px;
  width: 100%;
}

@media (min-width: 1025px) {
  .map {
    height: 405px;
  }
}
.menu-icon {
  height: 24px;
  width: 24px;
}
.menu-icon__link {
  display: block;
  height: inherit;
  position: relative;
  width: inherit;
}
.menu-icon__icon {
  display: block;
  height: inherit;
  object-fit: contain;
  width: inherit;
}
.menu-icon__icon--close {
  left: 0;
  position: absolute;
  top: 0;
}
.menu-icon--open .menu-icon__icon--open {
  display: block;
}
.menu-icon--open .menu-icon__icon--close {
  display: none;
}
.menu-icon--close .menu-icon__icon--open {
  display: none;
}
.menu-icon--close .menu-icon__icon--close {
  display: block;
}

.button-primary, .input-submit,
.button-secondary,
.properties-alert-form__shortcode .input-submit,
.newsletter-cf7 .input-submit {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  font-family: "Inter", sans-serif;
  font-variant-position: normal;
  justify-content: center;
  text-align: center;
  text-transform: uppercase;
  transition: 0.15s ease-in-out background-color;
  white-space: nowrap;
  width: fit-content;
}

:root {
  --button-primary-bg-color: #003e51;
  --button-primary-border-color: #003e51;
  --button-primary-text-color: #ffffff;
  --button-secondary-bg-color: transparent;
  --button-secondary-border-color: #003e51;
  --button-secondary-text-color: #003e51;
  --button-height-s: 36px;
  --button-height-l: 50px;
  --button-secondary-hover-bg-color: #003e51;
  --button-secondary-hover-text-color: #ffffff;
}

.context-dark {
  --button-primary-bg-color: #ffffff;
  --button-primary-text-color: #003e51;
  --button-primary-border-color: #ffffff;
  --button-secondary-bg-color: transparent;
  --button-secondary-border-color: #ffffff;
  --button-secondary-text-color: #ffffff;
  --button-secondary-hover-bg-color: #EFECEA;
  --button-secondary-hover-text-color: #003e51;
}

.button-primary, .input-submit,
.button-secondary,
.properties-alert-form__shortcode .input-submit,
.newsletter-cf7 .input-submit {
  background-color: var(--button-primary-bg-color);
  border: 1px solid var(--button-primary-border-color);
  color: var(--button-primary-text-color);
  font-size: 10px;
  font-weight: 500;
  height: var(--button-height-s);
  padding-inline: 14px;
}
.button-primary:hover:not(:disabled), .input-submit:hover:not(:disabled), .button-primary--hover,
.button-secondary:hover:not(:disabled),
.button-secondary--hover {
  opacity: 0.8;
}
.button-primary:disabled, .input-submit:disabled, .button-primary--disabled,
.button-secondary:disabled,
.button-secondary--disabled {
  pointer-events: none;
  opacity: 0.5;
}
@media (min-width: 1025px) {
  .button-primary, .input-submit,
  .button-secondary,
  .properties-alert-form__shortcode .input-submit,
  .newsletter-cf7 .input-submit {
    font-size: 14px;
    height: var(--button-height-l);
    letter-spacing: 0.35px;
    padding-inline: 22px;
  }
}

.button-secondary, .properties-alert-form__shortcode .input-submit, .newsletter-cf7 .input-submit {
  background-color: var(--button-secondary-bg-color);
  border: 1px solid var(--button-secondary-border-color);
  color: var(--button-secondary-text-color);
}
.button-secondary:hover:not(:disabled), .properties-alert-form__shortcode .input-submit:hover:not(:disabled), .newsletter-cf7 .input-submit:hover:not(:disabled), .button-secondary--hover {
  background-color: var(--button-secondary-hover-bg-color);
  color: var(--button-secondary-hover-text-color);
  opacity: 1;
}

.button-primary.button-primary--small, .button-primary--small.input-submit,
.button-secondary.button-secondary--small,
.properties-alert-form__shortcode .button-secondary--small.input-submit,
.newsletter-cf7 .input-submit {
  font-size: 10px;
  font-weight: 500;
  height: var(--button-height-s);
  padding-inline: 14px;
}

.input-label {
  font-size: 12px;
  text-transform: uppercase;
}

@media (min-width: 1025px) {
  .input-label {
    font-size: 14px;
  }
}
:root {
  --input-border-color: #003e51;
  --input-text-color: #003e51;
  --input-placeholder-color: color.mix(#fff, #003e51, 90%);
  --input-height-s: 36px;
  --input-height-l: 50px;
  --input-font-size-s: 10px;
  --input-font-size-l: 14px;
  --input-padding-s: 14px;
  --input-padding-l: 20px;
  --input-search-icon: url("./../../components/atoms/form/icon-search--blue.svg");
}

.context-dark {
  --input-border-color: #ffffff;
  --input-text-color: #ffffff;
  --input-placeholder-color: color.mix(#fff, #ffffff, 70%);
  --input-search-icon: url("./../../components/atoms/form/icon-search--white.svg");
}

.input-text,
.input-search,
.input-textarea {
  border: 1px solid var(--input-border-color);
  border-radius: 0;
  color: var(--input-text-color);
  display: block;
  font-size: var(--input-font-size-s);
  font-weight: 500;
  height: var(--input-height-s);
  padding-inline: var(--input-padding-s);
  width: 100%;
}
.input-text::-webkit-input-placeholder,
.input-search::-webkit-input-placeholder,
.input-textarea::-webkit-input-placeholder {
  color: var(--input-placeholder-color);
  opacity: 0.8 !important;
  text-transform: uppercase;
}
.input-text::-moz-placeholder,
.input-search::-moz-placeholder,
.input-textarea::-moz-placeholder {
  color: var(--input-placeholder-color);
  opacity: 0.8 !important;
  text-transform: uppercase;
}
.input-text:-ms-input-placeholder,
.input-search:-ms-input-placeholder,
.input-textarea:-ms-input-placeholder {
  color: var(--input-placeholder-color);
  opacity: 0.8 !important;
  text-transform: uppercase;
}
.input-text::-ms-input-placeholder,
.input-search::-ms-input-placeholder,
.input-textarea::-ms-input-placeholder {
  color: var(--input-placeholder-color);
  opacity: 0.8 !important;
  text-transform: uppercase;
}
.input-text:-moz-placeholder,
.input-search:-moz-placeholder,
.input-textarea:-moz-placeholder {
  color: var(--input-placeholder-color);
  opacity: 0.8 !important;
  text-transform: uppercase;
}
.input-text::placeholder,
.input-search::placeholder,
.input-textarea::placeholder {
  color: var(--input-placeholder-color);
  opacity: 0.8 !important;
  text-transform: uppercase;
}
.input-text[disabled],
.input-search[disabled],
.input-textarea[disabled] {
  cursor: not-allowed;
  opacity: 0.5;
}
.input-text[aria-invalid=true], .input-text.is-invalid, .input-text--error,
.input-search[aria-invalid=true],
.input-search.is-invalid,
.input-search--error,
.input-textarea[aria-invalid=true],
.input-textarea.is-invalid,
.input-textarea--error {
  border-width: 2px;
  border-color: #840202;
}
.input-text--success,
.input-search--success,
.input-textarea--success {
  border-width: 2px;
  border-color: #027a48;
}
.input-text:focus,
.input-search:focus,
.input-textarea:focus {
  border-width: 2px;
}
@media (min-width: 1025px) {
  .input-text,
  .input-search,
  .input-textarea {
    font-size: var(--input-font-size-l);
    height: var(--input-height-l);
    padding-inline: var(--input-padding-l);
  }
}

.input-search {
  background-image: var(--input-search-icon);
  background-position: calc(100% - 14px) center;
  background-size: 16px 16px;
  background-repeat: no-repeat;
  padding-right: 40px;
}
@media (min-width: 1025px) {
  .input-search {
    background-position: calc(100% - 20px) center;
    padding-right: 50px;
  }
}

.newsletter-cf7 .input-text, .input-text.input-text--small,
.input-search.input-search--small,
.input-textarea.input-textarea--small {
  font-size: var(--input-font-size-s);
  height: var(--input-height-s);
  padding-inline: var(--input-padding-s);
}

.input-search.input-search--small {
  background-position: calc(100% - 14px) center;
  padding-inline-end: 40px;
}

.input-textarea {
  padding-block: 1em;
  height: 110px;
}

.input-textarea.input-textarea--small {
  height: 80px;
}

/*
.input-submit
{
	border: 1px solid $blue;
	border-radius: 0;
	color: $blue;
	cursor: pointer;
	display: block;
	font-size: 12px;
	font-weight: 500;
	height: 40px;
	padding-inline: 12px;
	transition: .3s padding linear, .3s background-color linear, .3s color linear;
	text-transform: uppercase;
	width: 100%;

	&:hover
	{
		background-color: $blue;
		color: $white;
	}
}

.submitting .input-submit
{
	background-color: transparent;
	background-image: url('../../assets/images/loader.svg');
	background-repeat: no-repeat;
	background-size: 32px auto;
	background-position: calc(100% - 4px) center;
	color: $blue;
	cursor: not-allowed;
	padding-right: 40px;
}
*/
:root {
  --input-checkbox-color: #003e51;
  --input-checkbox-text-color: #003e51;
  --input-checkbox-size-s: 11px;
  --input-checkbox-font-size-s: 7px;
  --input-checkbox-letter-spacing-s: .18px;
  --input-checkbox-gap-s: 9px;
  --input-checkbox-size-l: 14px;
  --input-checkbox-font-size-l: 12px;
  --input-checkbox-letter-spacing-l: .03px;
  --input-checkbox-gap-l: 13px;
}

.context-dark {
  --input-checkbox-text-color: #ffffff;
  --input-checkbox-color: #ffffff;
}

label:has(.input-checkbox) {
  color: var(--input-checkbox-text-color);
  cursor: pointer;
  font-size: var(--input-checkbox-font-size-s);
  letter-spacing: var(--input-checkbox-letter-spacing-s);
  line-height: 1.3;
  padding-left: calc(var(--input-checkbox-gap-s) + var(--input-checkbox-size-s));
  position: relative;
  text-align: left;
}
label:has(.input-checkbox) span {
  display: inline-block;
}
label:has(.input-checkbox) a {
  font-weight: 500;
  text-decoration: underline;
  white-space: nowrap;
}
label:has(.input-checkbox) input {
  display: none;
}
label:has(.input-checkbox)::before, label:has(.input-checkbox)::after {
  border: 1px solid var(--input-checkbox-color);
  content: "";
  display: block;
  height: var(--input-checkbox-size-s);
  width: var(--input-checkbox-size-s);
  left: 0;
  position: absolute;
  top: 0;
}
label:has(.input-checkbox)::after {
  background-color: var(--input-checkbox-color);
  display: none;
  position: absolute;
  transform-origin: center;
  scale: 0.4;
}
label:has(.input-checkbox):has(.input-checkbox:checked)::after {
  display: block;
}
@media (max-width: 1024px) {
  label:has(.input-checkbox) {
    padding-top: 2px;
  }
}
@media (min-width: 1025px) {
  label:has(.input-checkbox) {
    font-size: var(--input-checkbox-font-size-l);
    letter-spacing: var(--input-checkbox-letter-spacing-l);
    padding-left: calc(var(--input-checkbox-gap-l) + var(--input-checkbox-size-l));
  }
  label:has(.input-checkbox) label:has(.input-checkbox)::before,
  label:has(.input-checkbox) label:has(.input-checkbox)::after {
    height: var(--input-checkbox-size-l);
    width: var(--input-checkbox-size-l);
  }
  label:has(.input-checkbox) span {
    padding-top: 0;
  }
}

label:has(.input-checkbox.input-checkbox--small) {
  font-size: var(--input-checkbox-font-size-s);
  letter-spacing: var(--input-checkbox-letter-spacing-s);
  padding-left: calc(var(--input-checkbox-gap-s) + var(--input-checkbox-size-s));
}

label:has(.input-radio--button) {
  align-items: center;
  border: 1px solid #003D4F;
  cursor: pointer;
  display: flex;
  font-size: 10px;
  letter-spacing: 0.25px;
  height: 39px;
  justify-content: center;
  width: 100%;
}
label:has(.input-radio--button) input {
  display: none;
}
label:has(.input-radio--button):has(input:checked) {
  background: #003D4F;
  color: #fff;
}
label:has(.input-radio--button):hover {
  opacity: 0.8;
}

.input-radio--button-block {
  display: flex;
}
.input-radio--button-block label {
  align-items: center;
  border: 1px solid var(--input-border-color);
  border-left: 0;
  cursor: pointer;
  display: flex;
  font-size: var(--input-font-size-s);
  height: 36px;
  justify-content: center;
  width: 100%;
}
.input-radio--button-block label:first-child {
  border-left: 1px solid var(--input-border-color);
}
.input-radio--button-block label input {
  display: none;
}
.input-radio--button-block label:has(input:checked) {
  background: rgba(255, 255, 255, 0.15);
}

@media (min-width: 1025px) {
  .input-radio--button-block label {
    font-size: 14px;
    height: 50px;
  }
}
.input-radio-list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  max-width: 100%;
}
.input-radio-list__options {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}
.input-radio-list label {
  align-items: center;
  border: 1px solid var(--input-border-color);
  cursor: pointer;
  display: flex;
  font-size: var(--input-font-size-s);
  height: 36px;
  justify-content: center;
  padding-inline: 15px;
  text-align: center;
}
.input-radio-list label input {
  display: none;
}
.input-radio-list label:has(input:checked) {
  background: rgba(255, 255, 255, 0.15);
}

@media (min-width: 1025px) {
  .input-radio-list {
    gap: 20px;
  }
  .input-radio-list__options {
    gap: 20px;
  }
  .input-radio-list label {
    font-size: 14px;
    height: 50px;
    padding-inline: 20px;
  }
}
.input-range {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.input-range__values {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr auto 1fr;
  margin-bottom: 10px;
  display: none;
}
.input-range__label {
  margin-bottom: 10px;
}
.input-range .noUi-target {
  background-color: rgba(255, 255, 255, 0.3);
  box-shadow: none;
  border: 0;
  border-radius: 0;
  height: 1px;
  padding-inline: 8px;
}
.input-range .noUi-target .noUi-connects {
  border: 0;
  border-radius: 0;
  height: 1px;
}
.input-range .noUi-target .noUi-connects .noUi-connect {
  background: #fff;
}
.input-range .noUi-target .noUi-handle {
  background: #003D4F;
  border: 1px solid #fff;
  box-shadow: none;
  border-radius: 50%;
  cursor: grab;
  height: 16px;
  right: -8px;
  top: -7px;
  width: 16px;
}
.input-range .noUi-target .noUi-handle::before, .input-range .noUi-target .noUi-handle::after {
  display: none;
}
.input-range__display-values {
  display: flex;
  font-size: 12px;
  justify-content: space-between;
}

@media (min-width: 1025px) {
  .input-range__display-values {
    font-size: 14px;
  }
}
.date-slider__input {
  display: none;
}
.date-slider__label {
  cursor: pointer;
  display: block;
  width: fit-content;
}
.date-slider__box {
  align-items: center;
  border: 1px solid #003D4F;
  display: flex;
  flex-direction: column;
  gap: 6px;
  height: 78px;
  justify-content: center;
  width: 78px;
}
.date-slider__label:has(input:checked) .date-slider__box {
  background: #003D4F;
  color: #fff;
}
.date-slider__dow, .date-slider__month {
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.23px;
  line-height: 1;
}
.date-slider__month {
  opacity: 0.5;
}
.date-slider__dom {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.7px;
  line-height: 1;
}
.date-slider .splide .splide__track {
  position: relative;
}
.date-slider .splide .splide__track::after {
  background-image: linear-gradient(to right, transparent, #EFECEA 80%);
  content: "";
  display: block;
  height: 100%;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  width: 40px;
}
.date-slider .splide .splide__arrow {
  height: 18px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  z-index: 2;
}
.date-slider .splide .splide__arrow--prev {
  left: -18px;
}
.date-slider .splide .splide__arrow--next {
  right: -18px;
}

@media (min-width: 1025px) {
  .date-slider__box {
    height: 92px;
    gap: 8px;
    width: 92px;
  }
  .date-slider__dow, .date-slider__month {
    font-size: 10px;
    letter-spacing: 0.25px;
  }
  .date-slider__dom {
    font-size: 33px;
    letter-spacing: 0.83px;
  }
  .date-slider .splide .splide__arrow--prev {
    left: -24px;
  }
  .date-slider .splide .splide__arrow--next {
    right: -24px;
  }
  .date-slider .splide .splide__track::after {
    display: none;
  }
}
.text-balance {
  text-wrap: balance;
}

.text-author-name,
.text-author-job {
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 0.68px;
  line-height: 15.56px;
  text-transform: uppercase;
}
@media (min-width: 1025px) {
  .text-author-name,
  .text-author-job {
    font-size: 14px;
    letter-spacing: 1.05px;
  }
}

.text-author-job {
  font-weight: normal;
}

.text-author-data {
  font-size: 9px;
}
@media (min-width: 1025px) {
  .text-author-data {
    font-size: 13px;
  }
}

a.text-author-data {
  text-decoration: none;
  color: inherit;
}
a.text-author-data:hover {
  text-decoration: underline;
}

.heading-3, .heading-2, .heading-cover, .heading-hero {
  color: var(--heading-color, inherit);
  font-family: "SpanBold", serif;
}

.heading-hero {
  font-size: 59px;
  line-height: 1.18;
}
@media (min-width: 1025px) {
  .heading-hero {
    font-size: 83px;
  }
}

.heading-cover {
  font-size: 42px;
  line-height: 50.4px;
}
@media (min-width: 1025px) {
  .heading-cover {
    font-size: 78px;
    line-height: 93.6px;
  }
}

.heading-2 {
  font-size: 38px;
  line-height: 45.6px;
}
@media (min-width: 1025px) {
  .heading-2 {
    font-size: 60px;
    line-height: 72px;
  }
}

.heading-3 {
  font-size: 24px;
  line-height: 28.8px;
}
@media (min-width: 1025px) {
  .heading-3 {
    font-size: 28px;
    line-height: 34px;
  }
}

.subtitle {
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 17px;
  letter-spacing: 2.55px;
  line-height: 1.18;
}
@media (min-width: 1025px) {
  .subtitle {
    font-size: 37px;
    letter-spacing: 5.55px;
  }
}

.description {
  color: var(--text-color, inherit);
  font-size: 12px;
  line-height: 15.8px;
  letter-spacing: 0.3px;
}
@media (min-width: 1025px) {
  .description {
    font-size: 18px;
    letter-spacing: 0.45px;
    line-height: 23px;
  }
}

.video-background {
  height: 100%;
  overflow: clip;
  position: relative;
  width: 100%;
}
.video-background__poster {
  display: block;
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: var(--poster-position);
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.video-background__local {
  display: block;
  height: 100%;
  object-fit: cover;
  position: relative;
  width: 100%;
  z-index: 1;
}
.video-background__vimeo {
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
}
.video-background__vimeo-iframe {
  display: block;
  height: auto;
  width: 100%;
}

.video-background.video-background--overlay::before, .video-background.video-background--overlay::after {
  background: rgba(0, 61, 79, 0.75);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.video-background.video-background--overlay::after {
  background: rgba(0, 0, 0, 0.2);
}

.video-background--fill {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

ul.pagination {
  all: unset;
}

.pagination {
  --pagination-background: #003D4F;
  --pagination-background-active: #003D4F;
}

.context-dark .pagination {
  --pagination-background: #EFECEA;
  --pagination-background-active: #EFECEA;
}

.pagination,
ul.splide__pagination {
  display: inline-flex;
  gap: 6px;
}
.pagination li,
ul.splide__pagination li {
  display: block;
}
.pagination li button,
ul.splide__pagination li button {
  background-color: var(--pagination-background);
  border-radius: 50%;
  display: block;
  height: 5px;
  transition: scale 0.3s ease-in-out;
  width: 5px;
}
.pagination li button.is-active,
ul.splide__pagination li button.is-active {
  background-color: var(--pagination-background-active);
  scale: 1.3;
}

.pagination.pagination--dark li button, .pagination.pagination--dark li button.is-active {
  background: #EFECEA;
}

.splide .splide__arrow {
  all: unset;
}

.arrows {
  --arrow-bg-left: url("../images/icon-arrow-left--blue.svg");
  --arrow-bg-right: url("../images/icon-arrow-right--blue.svg");
}

.context-dark .arrows {
  --arrow-bg-left: url("../images/icon-arrow-left.svg");
  --arrow-bg-right: url("../images/icon-arrow-right.svg");
}

.arrows .arrows__arrow {
  background-image: var(--arrow-bg-left);
  background-repeat: no-repeat;
  cursor: pointer;
  background-size: contain;
  display: block;
  height: 60px;
  width: 60px;
}
.arrows .arrows__arrow svg {
  display: none;
}
.arrows .arrows__arrow--next {
  background-image: var(--arrow-bg-right);
}
.arrows .arrows__arrow:hover {
  opacity: 0.8;
}

.arrows .arrows__arrow--blue {
  background-image: url("../images/icon-arrow-left--blue.svg");
}

.arrows .arrows__arrow--blue.arrows__arrow--next {
  background-image: url("../images/icon-arrow-right--blue.svg");
}

.properties-image-gallery {
  max-width: 100%;
  position: relative;
}
.properties-image-gallery__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
}
.properties-image-gallery__grid-item {
  aspect-ratio: 1;
  display: block;
  grid-column: span 1;
  height: auto;
  max-width: 100%;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.properties-image-gallery__grid-item:first-child {
  aspect-ratio: 4/3;
  grid-column: span 3;
}
.properties-image-gallery__grid-item:nth-child(5) {
  display: none;
}
.properties-image-gallery__grid-image {
  display: block;
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  transition: transform 0.3s ease;
  top: 0;
  width: 100%;
}
.properties-image-gallery__grid-item:hover .properties-image-gallery__grid-image {
  transform: scale(1.03);
}
.properties-image-gallery__more {
  bottom: 12px;
  position: absolute;
  right: 12px;
  transition: transform 0.3s ease;
  z-index: 2;
}
.properties-image-gallery__more:hover {
  transform: scale(1.05);
}
.properties-image-gallery__more-icon {
  display: block;
  height: auto;
  width: 32px;
}

@media (min-width: 1025px) {
  .properties-image-gallery__grid {
    gap: 20px;
    grid-template-columns: 3fr 1fr 1fr;
    grid-template-rows: minmax(auto, max-content) minmax(auto, max-content);
  }
  .properties-image-gallery__grid-item:nth-child(1) {
    align-self: stretch;
    aspect-ratio: auto !important;
    grid-column: 1/2;
    grid-row: 1/3;
    height: 100%;
    position: relative;
    width: 100%;
  }
  .properties-image-gallery__grid-item:nth-child(2) {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .properties-image-gallery__grid-item:nth-child(3) {
    grid-column: 3/4;
    grid-row: 1/2;
  }
  .properties-image-gallery__grid-item:nth-child(4) {
    grid-column: 2/3;
    grid-row: 2/3;
  }
  .properties-image-gallery__grid-item:nth-child(5) {
    display: block;
    grid-column: 3/4;
    grid-row: 2/3;
  }
  .properties-image-gallery__more {
    bottom: 20px;
    right: 20px;
  }
  .properties-image-gallery__more-icon {
    width: 43px;
  }
}
.properties-image-thumbnail {
  display: block;
  height: 100%;
  object-fit: cover;
  transition: scale 0.3s ease-in-out;
  width: 100%;
}

.properties-item:hover .properties-image-thumbnail {
  scale: 1.05;
}

.favorites .simplefavorite-button {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 0;
  line-height: 1;
}
.favorites .simplefavorite-button::before {
  background-image: url("../../components/atoms/favorites/icon-fav.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 26px;
  transition: transform 0.3s ease;
  width: 26px;
}
.favorites .simplefavorite-button:hover {
  opacity: 0.7;
}
.favorites .simplefavorite-button.active::before {
  background-image: url("../../components/atoms/favorites/icon-fav-filled.svg");
}
.favorites .simplefavorite-button.loading::before {
  transform: scale(1.2);
}

@media (min-width: 1025px) {
  .favorites .simplefavorite-button {
    gap: 6px;
    font-size: 14px;
    letter-spacing: 2.1px;
  }
}
.favorites--item .simplefavorite-button {
  display: block;
}
.favorites--item .simplefavorite-button::before {
  background-image: url("../../components/atoms/favorites/icon-fav--white.svg");
  height: 22px;
  width: 22px;
}
.favorites--item .simplefavorite-button.active::before {
  background-image: url("../../components/atoms/favorites/icon-fav-filled--white.svg");
}

@media (min-width: 1025px) {
  .favorites--item .simplefavorite-button {
    font-size: 0;
    gap: 0;
  }
  .favorites--item .simplefavorite-button::before {
    height: 28px;
    width: 28px;
  }
  .favorites--item .simplefavorite-button.active::before {
    background-image: url("../../components/atoms/favorites/icon-fav-filled--white.svg");
  }
}
.share .addtoany_share {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 0;
  line-height: 1;
}
.share .addtoany_share::before {
  background-image: url("../../components/atoms/share/icon-share.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 26px;
  width: 26px;
}
.share .addtoany_share:hover {
  opacity: 0.7;
}

#addtoany .a2a_full_footer {
  display: none;
}

@media (min-width: 1025px) {
  .share .addtoany_share {
    gap: 6px;
    font-size: 14px;
    letter-spacing: 2.1px;
    text-transform: uppercase;
  }
}
.choices--line.choices-wrapper .choices {
  color: #003D4F;
  font-size: 10px;
  letter-spacing: 0.25px;
  width: 100%;
}

.choices--line.choices-wrapper .choices .choices__inner {
  background-color: transparent;
  border: 0;
  border-bottom: 1px solid #003D4F;
  border-radius: 0;
  font-size: inherit;
  letter-spacing: inherit;
  min-height: 30px;
  padding: 0;
}

.choices--line.choices-wrapper .choices .choices__inner .choices__placeholder {
  opacity: 1;
}

.choices--line.choices-wrapper .choices::after {
  background-image: url("./../../components/atoms/choices/choices-chevron.svg");
  border: 0;
  display: block;
  height: 16px;
  margin: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
  width: 16px;
}

.choices--line.choices-wrapper .choices.is-open::after {
  margin: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
}

.choices--line.choices-wrapper .choices__list--dropdown.is-active {
  background-color: #fff;
  border: 1px solid #003D4F;
}

.choices--line.choices-wrapper .choices__list--dropdown.is-active .choices__item.is-highlighted {
  background-color: #EFECEA;
}

.choices--line.choices-wrapper .choices__list--dropdown.is-active .choices__item.is-selected {
  background-color: #003D4F;
  color: #fff;
}

:root {
  --choices-border-color: #003e51;
  --choices-text-color: #003e51;
  --choices-placeholder-color: color.mix(#fff, #003e51, 90%);
  --choices-height-s: 36px;
  --choices-height-l: 50px;
  --choices-font-size-s: 10px;
  --choices-font-size-l: 14px;
  --choices-padding-s: 14px;
  --choices-padding-l: 20px;
  --choices-chevron-icon: url("./../../components/atoms/choices/choices-chevron.svg");
}

.context-dark {
  --choices-border-color: #ffffff;
  --choices-text-color: #ffffff;
  --choices-placeholder-color: color.mix(#fff, #ffffff, 70%);
  --choices-chevron-icon: url("./../../components/atoms/choices/choices-chevron--white.svg");
}

.choices--square.choices-wrapper .choices {
  color: var(--choices-text-color);
  font-size: var(--choices-font-size-s);
  letter-spacing: 0.25px;
  margin: 0;
  width: 100%;
}
@media (min-width: 1025px) {
  .choices--square.choices-wrapper .choices {
    font-size: var(--choices-font-size-l);
    letter-spacing: 0.25px;
  }
}
.choices--square.choices-wrapper .choices.is-disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.choices--square.choices-wrapper .choices .choices__inner {
  background-color: transparent;
  border: 1px solid var(--choices-border-color);
  border-radius: 0;
  font-size: inherit;
  letter-spacing: inherit;
  min-height: var(--choices-height-s);
  padding: 0;
}
@media (min-width: 1025px) {
  .choices--square.choices-wrapper .choices .choices__inner {
    min-height: var(--choices-height-l);
  }
}

.choices--square.choices-wrapper .choices .choices__inner .choices__list--single {
  align-items: center;
  display: flex;
  min-height: inherit;
  padding-inline: var(--choices-padding-s) 30px;
  text-transform: uppercase;
}
@media (min-width: 1025px) {
  .choices--square.choices-wrapper .choices .choices__inner .choices__list--single {
    padding-inline: var(--choices-padding-l) 40px;
  }
}

.choices__list--dropdown {
  z-index: 999998 !important;
}

.choices--square.choices-wrapper .choices::after {
  background-image: var(--choices-chevron-icon);
  border: 0;
  display: block;
  height: 16px;
  margin: 0;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
  width: 16px;
}
@media (min-width: 1025px) {
  .choices--square.choices-wrapper .choices::after {
    right: 16px;
  }
}

.choices--square.choices-wrapper .choices .choices__list {
  min-width: fit-content;
}

.choices--square.choices-wrapper .choices .choices__item {
  white-space: nowrap;
}
.choices--square.choices-wrapper .choices .choices__item::after {
  display: none;
}

.choices--square.choices-wrapper .choices.is-open::after {
  margin: 0;
  right: 8px;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
}
@media (min-width: 1025px) {
  .choices--square.choices-wrapper .choices.is-open::after {
    right: 16px;
  }
}

.choices--square.choices-wrapper .choices__list--dropdown.is-active {
  background-color: #fff;
  border: 1px solid #003D4F;
  color: #003e51;
}

.choices--square.choices-wrapper .choices__list--dropdown.is-active .choices__item.is-highlighted {
  background-color: #EFECEA;
}

.choices--square.choices-wrapper .choices__list--dropdown.is-active .choices__item.is-selected {
  background-color: #003D4F;
  color: #fff;
}

.choices--square.choices--small.choices-wrapper .choices {
  font-size: var(--choices-font-size-s);
  letter-spacing: 0.25px;
}

.choices--square.choices--small.choices-wrapper .choices .choices__inner {
  min-height: var(--choices-height-s);
}

.choices--square.choices--small.choices-wrapper .choices .choices__inner .choices__list--single {
  padding-inline: var(--choices-padding-s) 30px;
}

.choices--square.choices--small.choices-wrapper .choices::after,
.choices--square.choices--small.choices-wrapper .choices.is-open::after {
  right: 8px;
}

.scroll-to-discover {
  align-items: center;
  color: #EFECEA;
  display: flex;
  flex-direction: column;
  gap: 26px;
  justify-content: center;
}
.scroll-to-discover__text {
  font-size: 10px;
  letter-spacing: 1.5px;
}
.scroll-to-discover__line {
  background-color: #EFECEA;
  display: block;
  width: 1px;
  height: 40px;
}

@media (min-width: 1367px) {
  .scroll-to-discover__text {
    font-size: 12px;
    letter-spacing: 1.8px;
  }
  .scroll-to-discover__line {
    height: 47px;
  }
}
.text-editor {
  color: var(--text-color, inherit);
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.text-editor b,
.text-editor strong {
  font-weight: 700;
}
.text-editor i,
.text-editor em {
  font-style: italic;
}
.text-editor p {
  margin-bottom: 1.55em;
}
.text-editor p:last-child {
  margin-bottom: 0;
}
.text-editor a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.14em;
}
.text-editor a:hover {
  opacity: 0.8;
}
.text-editor ul,
.text-editor ol {
  margin-bottom: 1em;
  padding-left: 1.5em;
}
.text-editor ul li,
.text-editor ol li {
  margin-bottom: 0.5em;
}
.text-editor ul li::marker,
.text-editor ol li::marker {
  color: #333;
}
.text-editor ul ul,
.text-editor ul ol,
.text-editor ol ul,
.text-editor ol ol {
  margin-block: 0.5em 0;
}
.text-editor ul {
  list-style-type: disc;
}
.text-editor ol {
  list-style-type: decimal;
}
.text-editor dl {
  margin-bottom: 1.55em;
}
.text-editor dt {
  font-weight: 700;
}
.text-editor dd {
  margin: 0.25em 0 1em 1.5em;
}
.text-editor h1,
.text-editor h2,
.text-editor h3,
.text-editor h4,
.text-editor h5,
.text-editor h6 {
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 16px;
}
.text-editor h1 {
  font-size: 2.5em;
}
.text-editor h2 {
  font-size: 2em;
}
.text-editor h3 {
  font-size: 1.5em;
}
.text-editor h4 {
  font-size: 1.25em;
}
.text-editor h5 {
  font-size: 1.125em;
}
.text-editor h6 {
  font-size: 1em;
}
.text-editor blockquote {
  border-left: 4px solid currentcolor;
  font-size: 1.05em;
  font-style: italic;
  margin: 1.55em 0;
  opacity: 0.8;
  padding: 0.25em 0 0.25em 1em;
}
.text-editor hr {
  border: 0;
  border-top: 1px solid currentcolor;
  margin: 2em 0;
  opacity: 0.25;
}
.text-editor table {
  border-collapse: collapse;
  display: block;
  margin: 1.55em 0;
  max-width: 100%;
  overflow-x: auto;
  width: 100%;
}
.text-editor caption {
  font-weight: 700;
  padding-bottom: 0.75em;
  text-align: left;
}
.text-editor th,
.text-editor td {
  border: 1px solid rgba(0, 61, 79, 0.25);
  min-width: 120px;
  padding: 0.7em 0.85em;
  text-align: left;
  vertical-align: top;
}
.text-editor th {
  background-color: rgba(0, 61, 79, 0.08);
  font-weight: 700;
}
.text-editor tbody tr:nth-child(even) {
  background-color: rgba(0, 61, 79, 0.04);
}
.text-editor pre {
  background-color: rgba(0, 61, 79, 0.08);
  border-radius: 4px;
  margin: 1.55em 0;
  overflow-x: auto;
  padding: 1em;
  white-space: pre;
}
.text-editor code,
.text-editor kbd,
.text-editor samp {
  font-family: monospace;
  font-size: 0.9em;
}
.text-editor :not(pre) > code {
  background-color: rgba(0, 61, 79, 0.08);
  border-radius: 3px;
  padding: 0.1em 0.3em;
}
.text-editor img,
.text-editor video,
.text-editor iframe {
  height: auto;
  max-width: 100%;
}
.text-editor figure {
  margin: 1.55em 0;
}
.text-editor figcaption {
  font-size: 0.875em;
  margin-top: 0.5em;
  opacity: 0.75;
}
.text-editor mark {
  background-color: #fff1a8;
  color: inherit;
}
.text-editor sub,
.text-editor sup {
  font-size: 0.75em;
  line-height: 0;
}
.text-editor [data-custom-class=title],
.text-editor [data-custom-class=heading_1],
.text-editor [data-custom-class=heading_2] {
  color: inherit;
  font-family: inherit;
  font-weight: 700;
  line-height: 1.3;
}
.text-editor [data-custom-class=title] {
  font-size: 2em;
}
.text-editor [data-custom-class=heading_1] {
  font-size: 1.5em;
}
.text-editor [data-custom-class=heading_2] {
  font-size: 1.25em;
}
.text-editor [data-custom-class=subtitle] {
  opacity: 0.75;
}
.text-editor [data-custom-class=body_text],
.text-editor [data-custom-class=link] {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
}

.load-more {
  min-width: 180px;
}
.load-more--hidden {
  display: none !important;
}
.load-more__loader {
  display: none;
  height: 30px;
  width: auto;
}
.load-more--loading, .load-more:disabled {
  background-color: transparent;
  pointer-events: none;
}
.load-more--loading .load-more__loader, .load-more:disabled .load-more__loader {
  display: inline-block;
}
.load-more--loading .load-more__text, .load-more:disabled .load-more__text {
  display: none;
}

.mobile-menu {
  background-color: #003D4F;
  color: #EFECEA;
  height: 100dvh;
  left: 0;
  overflow: scroll;
  pointer-events: none;
  position: fixed;
  top: 0;
  transform: translateX(-100%);
  transition: transform 0.3s ease-in-out;
  width: 100%;
  z-index: 999999;
}
.mobile-menu--active {
  pointer-events: auto;
  transform: translateX(0);
}
.mobile-menu__inner {
  display: grid;
  gap: 24px;
  grid-template-rows: auto 1fr auto;
  min-height: 100%;
}
.mobile-menu__top {
  align-items: center;
  display: flex;
  height: 80px;
  justify-content: space-between;
  position: relative;
  width: 100%;
}
.mobile-menu__top:after {
  background-color: #EFECEA;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100vw;
}
.mobile-menu__middle .mobile-menu__list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mobile-menu__middle .mobile-menu__link {
  font-size: 17px;
  letter-spacing: 1.27px;
  line-height: 1;
  padding-block: 10px;
  text-transform: uppercase;
}
.mobile-menu__middle .mobile-menu__link:hover {
  opacity: 0.8;
}
.mobile-menu__bottom {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 24px;
}
.mobile-menu__offices {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 9px;
  letter-spacing: 0.23px;
  line-height: 12px;
}
.mobile-menu__offices .offices__item-name {
  font-weight: 700;
}
.mobile-menu__company {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 14px;
  letter-spacing: 0.35px;
  line-height: 21.52px;
}
.mobile-menu__social-links .social-links__link {
  font-size: 16px;
}

@media (min-width: 1367px) {
  .mobile-menu {
    display: none;
  }
}
@media (max-width: 1366px) {
  html:has(.mobile-menu--active) body {
    background-color: #003D4F;
  }
  body:has(.mobile-menu--active) > *:not(.mobile-menu) {
    overflow: hidden;
    pointer-events: none;
  }
}
.nav-menu__list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.nav-menu__link {
  display: block;
}

.nav-menu--header .nav-menu__list {
  display: flex;
  flex-direction: row;
  gap: 50px;
}
.nav-menu--header .nav-menu__link {
  color: #EFECEA;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.9px;
  padding-block: 1.5px;
  text-transform: uppercase;
  white-space: nowrap;
}
.nav-menu--header .nav-menu__link:hover {
  opacity: 0.8;
}
.nav-menu--header .nav-menu__item--current-page .nav-menu__link {
  text-decoration: underline;
}

.nav-menu--footer {
  width: 100%;
}
.nav-menu--footer .nav-menu__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.nav-menu--footer .nav-menu__link {
  border-bottom: 1px solid #003D4F;
  padding-block: 1.5px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.nav-menu--footer .nav-menu__link:hover {
  opacity: 0.8;
}

@media (min-width: 641px) {
  .nav-menu--footer {
    text-align: center;
  }
  .nav-menu--footer .nav-menu__list {
    gap: 20px;
  }
  .nav-menu--footer .nav-menu__link {
    border-bottom: 0;
    padding-block: 1.5px;
  }
}
.nav-menu--legal .nav-menu__list {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 10px;
}
.nav-menu--legal .nav-menu__link {
  font-size: 12px;
  text-decoration: underline;
}
.nav-menu--legal .nav-menu__link:hover {
  opacity: 0.8;
}

@media (min-width: 641px) {
  .nav-menu--legal .nav-menu__list {
    flex-direction: row;
    gap: 20px;
  }
}
.social-links__list {
  display: flex;
  flex-direction: row;
  gap: 24px;
}
.social-links__link {
  display: block;
  font-size: 24px;
}
.social-links__link:hover {
  opacity: 0.8;
}

.newsletter-cf7 {
  display: flex;
  flex-direction: column;
  gap: 16px;
  grid-area: newsletter;
}
.newsletter-cf7__title {
  font-weight: 700;
}
.newsletter-cf7__description {
  text-wrap: pretty;
}
.newsletter-cf7__form {
  display: grid;
  gap: 20px;
  grid-template-columns: minmax(0, 1fr) auto;
}
.newsletter-cf7__input-wrapper[data-name=acceptance] {
  grid-column: span 2;
  justify-self: start;
}
.newsletter-cf7__response-output {
  color: #003D4F;
  display: block;
  font-size: 12px;
  grid-column: span 2;
  line-height: 1.5;
  text-align: center;
  text-wrap: balance;
}
.newsletter-cf7 .sent .wpcf7-response-output {
  display: block;
  text-align: left;
}

.text-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.text-block__top {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.text-block__bottom {
  display: flex;
  flex-direction: column;
  gap: 17px;
}
.text-block--align-center {
  align-items: center;
  text-align: center;
}
.text-block--align-center .text-block__top, .text-block--align-center .text-block__bottom {
  align-items: center;
}

@media (max-width: 1024px) {
  .text-block__heading br {
    display: none;
  }
}
@media (min-width: 641px) {
  .text-block--align-center .text-block__description {
    max-width: 90%;
  }
}
@media (min-width: 1025px) {
  .text-block__description {
    font-size: 18px;
    letter-spacing: 0.45px;
  }
}
@media (min-width: 1367px) {
  .text-block {
    gap: 24px;
  }
  .text-block__top {
    gap: 20px;
  }
  .text-block__bottom {
    gap: 28px;
  }
}
.properties-item {
  background: url("../images/property-no-image.png") center/cover no-repeat;
  display: block;
  height: 330px;
  position: relative;
  overflow: hidden;
  width: 100%;
}
.properties-item::before {
  background: linear-gradient(0deg, #000 0%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  content: "";
  display: block;
  height: 78%;
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 1;
}
.properties-item__wrapper {
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 12px;
  justify-content: end;
  left: 0;
  height: 100%;
  padding: 20px 24px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.properties-item__price {
  color: #EFECEA;
  font-family: "SpanBold", serif;
  font-size: 29px;
  line-height: 1;
}
.properties-item__content {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.properties-item__address {
  font-size: 12px;
}
.properties-item__details {
  display: flex;
}
.properties-item__details-item {
  display: block;
  font-size: 10px;
}
.properties-item__details-item:not(:first-child)::before {
  content: "•";
  display: inline-block;
  margin-inline: 0.5em;
}
.properties-item__favorites {
  bottom: 24px;
  position: absolute;
  right: 24px;
  z-index: 2;
}

@media (min-width: 1367px) {
  .properties-item {
    aspect-ratio: 1;
    height: auto;
    width: 100%;
  }
  .properties-item__wrapper {
    padding: 22px 36px;
  }
  .properties-item__price {
    font-size: 41px;
  }
  .properties-item__wrapper {
    gap: 18px;
  }
  .properties-item__address {
    font-size: 15px;
  }
  .properties-item__content {
    gap: 10px;
  }
  .properties-item__details-item {
    font-size: 10px;
  }
  .properties-item__favorites {
    bottom: 28px;
    right: 30px;
  }
}
.locations-item {
  display: block;
  height: 360px;
  position: relative;
  overflow: hidden;
  width: 100%;
}
.locations-item::before, .locations-item::after {
  background: rgba(0, 0, 0, 0.2);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.locations-item::after {
  background: rgba(0, 61, 69, 0.5);
}
.locations-item__image {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
  transition: scale 0.3s ease-in-out;
}
.locations-item__wrapper {
  align-items: center;
  color: var(--text-color);
  display: flex;
  gap: 20px;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.locations-item__title {
  font-family: "SpanBold", serif;
  font-size: 38px;
}
.locations-item:hover .locations-item__image {
  scale: 1.05;
}

@media (min-width: 641px) {
  .locations-item {
    height: 480px;
  }
}
@media (min-width: 1025px) {
  .locations-item__title {
    font-size: 60px;
  }
}
@media (min-width: 1367px) {
  .locations-item {
    aspect-ratio: 720/500;
    height: auto;
    width: 100%;
  }
}
.schedule {
  border: 1px solid #003D4F;
  /* Fields */
}
.schedule__header {
  align-items: center;
  background-color: #003D4F;
  display: flex;
  justify-content: center;
  height: 74px;
}
.schedule__header-image {
  display: block;
  height: 38px;
  width: auto;
}
.schedule__step {
  display: flex;
  flex-direction: column;
  gap: 40px;
  min-height: 430px;
  padding-inline: 20px;
}
.schedule__step--is-hidden {
  display: none;
}
.schedule__step--1 {
  padding-block: 24px;
}
.schedule__step--2 {
  padding-block: 24px 16px;
}
.schedule__title {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.35px;
  line-height: 1;
  text-wrap: balance;
}
.schedule__fields-groups {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 20px;
}
.schedule__step--2 .schedule__fields-groups, .schedule__step--2 .schedule__button-wrapper {
  margin-bottom: -10px;
}
.schedule__kind {
  display: flex;
  gap: 12px;
  margin-bottom: 30px;
}
.schedule__button-wrapper {
  display: flex;
  justify-content: center;
}
.schedule__details {
  align-items: center;
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  font-weight: 500;
  height: 16px;
  letter-spacing: 0.25px;
}
.schedule__details-change {
  text-decoration: underline;
}
.schedule__step--3 {
  align-items: center;
  justify-content: center;
  padding-block: 0;
  padding-inline: 0;
}
.schedule__loader {
  display: block;
  height: 80px;
  width: auto;
}
.schedule .schedule__step.schedule__step--4,
.schedule .schedule__step.schedule__step--5 {
  align-items: center;
  gap: 10px;
  justify-content: center;
  text-align: center;
}
.schedule__description {
  font-size: 12px;
  text-wrap: balance;
}

@media (min-width: 1025px) {
  .schedule__header {
    height: 87px;
  }
  .schedule__header-image {
    height: 45px;
  }
  .schedule__title {
    font-size: 16px;
    letter-spacing: 0.4px;
  }
  .schedule__step {
    gap: 40px;
    padding-inline: 28px;
    min-height: 460px;
  }
  .schedule__step--1 {
    padding-block: 40px;
  }
}
.contact-form-ajax {
  border: 1px solid #003D4F;
}
.contact-form-ajax__step {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px;
  justify-content: center;
  min-height: 532px;
  padding-block: 24px;
  padding-inline: 20px;
}
.contact-form-ajax__step--is-hidden {
  display: none;
}
.contact-form-ajax__title {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.35px;
  line-height: 1;
  text-wrap: balance;
  width: 100%;
}
.contact-form-ajax__description {
  font-size: 12px;
  text-wrap: balance;
  width: 100%;
}
.contact-form-ajax__fields-groups {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 20px;
}
.contact-form-ajax__loader {
  display: block;
  height: 80px;
  width: auto;
}
.contact-form-ajax .contact-form-ajax__step.contact-form-ajax__step--3,
.contact-form-ajax .contact-form-ajax__step.contact-form-ajax__step--4 {
  align-items: center;
  gap: 10px;
  justify-content: center;
  text-align: center;
}

@media (min-width: 1025px) {
  .contact-form-ajax__step {
    min-height: 590px;
    padding-block: 40px;
    padding-inline: 28px;
  }
}
.our-agent-search__form {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  gap: 26px;
  justify-content: center;
}
.our-agent-search__submit-wrapper {
  display: flex;
  justify-content: center;
}

@media (min-width: 1025px) {
  .our-agent-search__form {
    display: grid;
    grid-template-columns: 200px 1fr auto;
  }
}
.agents-carousel-item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.agents-carousel-item__image {
  aspect-ratio: 3/4;
  height: auto;
  object-fit: cover;
  width: 266px;
}
.agents-carousel-item__content {
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.agents-carousel-item__name {
  font-size: 17px;
  font-weight: 700;
}
.agents-carousel-item__job {
  font-size: 13px;
}
.agents-carousel-item__phone, .agents-carousel-item__email {
  font-size: 12px;
}

@media (min-width: 1025px) {
  .agents-carousel-item {
    gap: 30px;
  }
  .agents-carousel-item__image {
    aspect-ratio: auto;
    height: 382px;
    object-fit: cover;
    width: 100%;
  }
  .agents-carousel-item__name {
    font-size: 21px;
    line-height: 28.38px;
  }
  .agents-carousel-item__job {
    font-size: 16px;
  }
  .agents-carousel-item__phone, .agents-carousel-item__email {
    font-size: 15px;
    line-height: 24px;
  }
}
.agents-item {
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-align: center;
  width: 100%;
}
.agents-item__image {
  aspect-ratio: 3/4;
  height: auto;
  object-fit: cover;
  width: 100%;
}
.agents-item__content {
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.agents-item__name {
  font-size: 17px;
  font-weight: 700;
}
.agents-item__job {
  font-size: 13px;
}
.agents-item__phone, .agents-item__email {
  font-size: 12px;
}

@media (min-width: 1025px) {
  .agents-item {
    gap: 30px;
  }
  .agents-item__image {
    width: 100%;
  }
  .agents-item__name {
    font-size: 21px;
    line-height: 28.38px;
  }
  .agents-item__job {
    font-size: 16px;
  }
  .agents-item__phone, .agents-item__email {
    font-size: 15px;
    line-height: 24px;
  }
}
.agents-testimonials-item {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.agents-testimonials-item__photo {
  aspect-ratio: 5/4;
  display: block;
  height: auto;
  object-fit: cover;
  object-position: top center;
  width: 100%;
}
.agents-testimonials-item__quote {
  align-items: center;
  background-color: #EFECEA;
  color: #003D4F;
  display: flex;
  font-family: "Inter", sans-serif;
  font-size: 13px;
  font-weight: 400;
  flex-grow: 1;
  letter-spacing: 0.46px;
  line-height: 17.28px;
  justify-content: center;
  margin-bottom: 16px;
  padding: 36px;
}
.agents-testimonials-item__content {
  text-align: center;
}
.agents-testimonials-item__content-top {
  border-bottom: 0.5px solid #EFECEA;
  margin-bottom: 4px;
  padding-bottom: 4px;
}
.agents-testimonials-item__content-bottom-left {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}
.agents-testimonials-item .agents-testimonials-item__social-links {
  display: inline-flex;
}
.agents-testimonials-item .agents-testimonials-item__social-links .social-links__link {
  font-size: 14px;
}

@media (min-width: 641px) {
  .agents-testimonials-item {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    grid-template-rows: 1fr auto;
    min-height: 420px;
  }
  .agents-testimonials-item__photo-wrapper {
    grid-row: span 2;
  }
  .agents-testimonials-item__photo {
    height: 100%;
    object-fit: cover;
  }
  .agents-testimonials-item__quote {
    height: 100%;
  }
  .agents-testimonials-item__content {
    padding: 12px 36px;
  }
  .agents-testimonials-item__content-bottom-left {
    margin-bottom: 10px;
  }
}
@media (min-width: 1025px) {
  .agents-testimonials-item {
    min-height: 588px;
  }
  .agents-testimonials-item__quote {
    font-size: 24px;
    letter-spacing: 0.84px;
    line-height: 30px;
    padding: 80px;
  }
  .agents-testimonials-item__content {
    text-align: left;
    padding: 40px 60px;
  }
  .agents-testimonials-item__content-top {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-bottom: 10px;
    padding-inline: 20px;
  }
  .agents-testimonials-item__content-bottom {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding-inline: 20px;
    padding-top: 10px;
  }
  .agents-testimonials-item__content-bottom-left {
    margin-bottom: 0;
  }
  .agents-testimonials-item .agents-testimonials-item__social-links .social-links__link {
    font-size: 16px;
  }
}
.accordion-text {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.accordion-text__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 0;
}
.accordion-text__heading {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  width: 100%;
}
.accordion-text__icon {
  display: block;
  height: 16px;
  position: relative;
  width: 16px;
}
.accordion-text__icon-more, .accordion-text__icon-less {
  bottom: 0;
  height: inherit;
  left: 0;
  opacity: 1;
  position: absolute;
  transition: opacity 0.3s ease;
  width: inherit;
}
.accordion-text__item--open .accordion-text__icon-more {
  opacity: 0;
}
.accordion-text__item--open .accordion-text__icon-less {
  opacity: 1;
}
.accordion-text__content {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.accordion-text__item--open .accordion-text__content {
  grid-template-rows: 1fr;
}
.accordion-text__content-inner {
  overflow: hidden;
}

.accordion-text__heading {
  background-color: rgba(0, 61, 79, 0.1);
  padding: 11px 15px 11px 22px;
}
.accordion-text__title {
  font-size: 9px;
  line-height: 11.4px;
}
.accordion-text__description {
  font-size: 12px;
  padding: 11px 22px;
}

@media (min-width: 1025px) {
  .accordion-text__heading {
    padding: 23px 32px 23px 32px;
  }
  .accordion-text__title {
    font-size: 18px;
    line-height: 21.6px;
  }
  .accordion-text__icon {
    height: 24px;
    width: 24px;
  }
  .accordion-text__description {
    font-size: 14px;
    padding: 23px 32px;
  }
}
.filters {
  background-color: #003D4F;
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 30px;
  height: 100dvh;
  max-width: 720px;
  padding: 60px 30px 30px 30px;
  pointer-events: none;
  position: fixed;
  right: 0;
  transition: transform 0.3s ease-in-out;
  transform: translateX(100%);
  top: 0;
  width: 80%;
  z-index: 9999999;
}
.filters--open {
  pointer-events: all;
  transform: translateX(0);
}
.filters__close {
  cursor: pointer;
  position: absolute;
  right: 20px;
  top: 20px;
}
.filters__close-icon {
  width: 24px;
  height: 24px;
}
.filters__title {
  font-family: "SpanBold", serif;
  font-size: 24px;
}
.filters__form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.filters__form-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

@media (min-width: 1025px) {
  .filters {
    gap: 80px;
    padding: 100px 80px 80px 80px;
  }
  .filters__close {
    right: 24px;
    top: 24px;
  }
  .filters__close-icon {
    width: 42px;
    height: 42px;
  }
  .filters__title {
    font-size: 45px;
  }
  .filters__form {
    gap: 70px;
  }
  .filters__form-group {
    gap: 28px;
  }
}
.loop-ajax__pagination {
  width: 100%;
}

.search-pagination {
  max-width: 100%;
  overflow-x: auto;
  padding-block: 5px;
}
.search-pagination__list {
  align-items: center;
  display: flex;
  gap: 2px;
  justify-content: center;
  min-width: max-content;
}
.search-pagination__item {
  display: block;
}
.search-pagination__link, .search-pagination__ellipsis {
  align-items: center;
  display: inline-flex;
  font-family: "Inter", sans-serif;
  font-size: 12px;
  height: 28px;
  justify-content: center;
  min-width: 28px;
}
.search-pagination__link {
  border: 1px solid transparent;
  color: #003D4F;
  text-decoration: none;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}
.search-pagination__link:hover, .search-pagination__link:focus-visible, .search-pagination__link--current {
  background-color: #003D4F;
  color: #EFECEA;
}
.search-pagination__link:focus-visible {
  outline: 2px solid #003D4F;
  outline-offset: 2px;
}
.search-pagination__link--disabled {
  opacity: 0.35;
}
.search-pagination--loading {
  opacity: 0.5;
  pointer-events: none;
}

@media (min-width: 641px) {
  .search-pagination__list {
    gap: 6px;
  }
  .search-pagination__link, .search-pagination__ellipsis {
    font-size: 14px;
    height: 36px;
    min-width: 36px;
  }
}
.header {
  background-color: #003D4F;
  color: #fff;
  left: 0;
  min-width: 320px;
  position: relative;
  top: 0;
  width: 100%;
  z-index: 99;
}
.header__inner {
  align-items: center;
  flex-direction: row;
  height: 80px;
  justify-content: space-between;
}
.header__logo {
  height: 36px;
}
.header__nav-menu {
  display: none;
}

.header:has(+ .modules > .hero),
.header:has(+ .modules > .our-agent-cover),
.header:has(+ .modules > .cover),
.header:has(+ .cover) {
  background: transparent;
  position: absolute;
}

@media (min-width: 1367px) {
  .header__inner {
    display: grid;
    grid-template-columns: auto 1fr auto;
    height: 150px;
    gap: 40px;
    width: 100%;
  }
  .header__logo {
    height: 50px;
  }
  .header__nav-menu {
    display: flex;
    justify-self: end;
  }
  .header__menu-icon {
    display: none;
  }
}
.header--sticky {
  transition: transform 0.2s linear;
  will-change: transform;
}

.header.header--sticky {
  background: #003D4F !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  left: 0;
  position: fixed !important;
  transform: translateY(-200%);
  top: 0;
  width: 100%;
}

.header.header--sticky.header--pinned.header--not-top {
  transform: translateY(0);
}

@media (min-width: 1367px) {
  .header.header--sticky .header__logo {
    height: 36px;
  }
  .header.header--sticky .header__inner {
    height: 80px;
  }
}
.footer {
  padding-block: 36px;
}
.footer__inner {
  gap: 36px;
}
.footer__logo {
  display: none;
  grid-area: logo;
}
.footer__iso {
  grid-area: logo;
  height: 43px;
}
.footer__disclaimer {
  grid-area: disclaimer;
}
.footer__copyright {
  grid-area: copyright;
}
.footer__newsletter {
  font-size: 14px;
  grid-area: newsletter;
  text-align: center;
}
.footer__disclaimer, .footer__copyright {
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
  text-wrap: pretty;
}
.footer__offices {
  display: flex;
  flex-direction: column;
  font-size: 14px;
  gap: 20px;
  grid-area: offices;
  text-align: center;
}
.footer__offices .offices__item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.footer__offices .offices__item-name {
  font-weight: 700;
}
.footer__divider {
  all: unset;
  display: none;
  grid-area: divider;
}
.footer__nav-menu {
  grid-area: nav-menu;
}
.footer__legal-menu {
  grid-area: legal-menu;
  text-align: center;
}
.footer__social-links {
  grid-area: social-links;
}
.footer__scroll-top {
  align-self: center;
  display: none;
  grid-area: scroll-top;
}

@media (min-width: 641px) {
  .footer {
    padding-block: 60px;
  }
  .footer__inner {
    display: grid;
    gap: 40px 40px;
    grid-template-areas: "logo logo" "newsletter newsletter" "nav-menu offices" "social-links social-links" "divider divider" "disclaimer disclaimer" "legal-menu legal-menu" "copyright copyright";
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .footer__newsletter {
    max-width: 420px;
    justify-self: center;
  }
  .footer__logo {
    display: block;
    height: 38px;
    justify-self: center;
  }
  .footer__iso {
    display: none;
  }
  .footer__social-links {
    justify-self: center;
  }
  .footer__divider {
    border-top: 1px solid #003D4F;
    display: block;
  }
  .footer__legal-menu {
    justify-self: center;
  }
}
@media (min-width: 1025px) {
  .footer__inner {
    align-items: start;
    gap: 30px 20px;
    grid-template-areas: "logo       logo       logo       offices      offices      nav-menu nav-menu nav-menu newsletter newsletter newsletter newsletter" "disclaimer disclaimer disclaimer offices      offices      nav-menu nav-menu nav-menu newsletter newsletter newsletter newsletter" "disclaimer disclaimer disclaimer offices      offices      nav-menu nav-menu nav-menu newsletter newsletter newsletter newsletter" ".          .          .          social-links social-links nav-menu nav-menu nav-menu newsletter newsletter newsletter newsletter" "divider    divider    divider    divider    divider    divider    divider    divider    divider    divider    divider    divider" "legal-menu legal-menu legal-menu legal-menu legal-menu legal-menu copyright copyright copyright copyright copyright scroll-top";
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .footer__logo {
    align-self: start;
    justify-self: center;
    max-width: 195px;
    width: 100%;
  }
  .footer__newsletter {
    font-size: 14px;
    max-width: 380px;
    justify-self: center;
    text-align: left;
  }
  .footer__disclaimer {
    align-self: start;
    justify-self: center;
    max-width: 195px;
    text-align: left;
  }
  .footer__offices {
    align-self: start;
    justify-self: start;
    text-align: left;
  }
  .footer__social-links {
    align-self: start;
    justify-self: start;
  }
  .footer__legal-menu {
    align-self: center;
    justify-self: start;
  }
  .footer__copyright {
    align-self: center;
    justify-self: end;
    text-align: right;
    text-wrap: balance;
  }
  .footer__scroll-top {
    display: block;
    height: 32px;
    justify-self: end;
  }
  .footer__scroll-top-icon {
    display: block;
    height: inherit;
    width: auto;
  }
}
@media (min-width: 1367px) {
  .footer__inner {
    align-items: start;
    gap: 30px 20px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas: "logo       logo       logo       offices      offices      nav-menu nav-menu newsletter newsletter newsletter newsletter newsletter" "disclaimer disclaimer disclaimer offices      offices      nav-menu nav-menu newsletter newsletter newsletter newsletter newsletter" "disclaimer disclaimer disclaimer offices      offices      nav-menu nav-menu newsletter newsletter newsletter newsletter newsletter" ".          .          .          social-links social-links nav-menu nav-menu newsletter newsletter newsletter newsletter newsletter" "divider    divider    divider    divider    divider    divider    divider    divider    divider    divider    divider    divider" "legal-menu legal-menu legal-menu legal-menu copyright copyright copyright copyright copyright copyright copyright scroll-top";
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .footer__newsletter {
    justify-self: start;
    margin-left: 40px;
  }
}
@media (min-width: 1921px) {
  .footer__newsletter {
    max-width: 440px;
    margin-left: 60px;
  }
}
.hero {
  --text-color: #fff;
  --border-color: #fff;
  color: var(--text-color);
  height: 100svh;
  max-height: 800px;
  display: flex;
  padding-top: 80px;
  position: relative;
  text-align: center;
}
.hero__inner {
  align-items: center;
  justify-content: center;
  margin-block: 20px 0;
  position: relative;
  z-index: 3;
}
.hero__subtitle {
  margin-bottom: 35px;
  line-height: 1;
}
.hero__heading {
  margin-bottom: 40px;
  line-height: 1;
}
.hero__description {
  font-family: "Inter", sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 1.5px;
  line-height: 16px;
  margin-bottom: 60px;
  text-wrap: balance;
}
.hero__button-wrapper {
  margin-bottom: 40px;
}
.hero__excerpt {
  font-family: "Inter", sans-serif;
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.18;
  text-wrap: balance;
}

@media (min-width: 1025px) {
  .hero__description {
    font-size: 16px;
    letter-spacing: 2.4px;
  }
}
@media (min-width: 1367px) {
  .hero {
    max-height: 100svh;
    padding-top: 150px;
  }
  .hero__inner {
    margin-block: 90px 0;
  }
  .hero__subtitle {
    margin-bottom: 32px;
  }
  .hero__heading {
    margin-bottom: 54px;
  }
  .hero__description {
    margin-bottom: 81px;
  }
  .hero__button-wrapper {
    margin-bottom: 66px;
  }
  .hero__excerpt {
    font-size: 11px;
  }
}
@media (min-width: 1921px) {
  .hero__inner {
    margin-block: 90px 0;
  }
  .hero__subtitle {
    margin-bottom: 60px;
  }
  .hero__heading {
    margin-bottom: 110px;
  }
  .hero__description {
    margin-bottom: 135px;
  }
  .hero__button-wrapper {
    margin-bottom: 110px;
  }
}
.kpi__inner {
  gap: 62px;
}
.kpi__items {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.kpi__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.kpi__item:not(:last-child)::after {
  background-color: var(--border-color);
  content: "";
  display: block;
  height: 1px;
  margin-top: 20px;
  width: 100px;
}
.kpi__item-name {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 2.1px;
  text-align: center;
}
.kpi__item-value {
  font-family: "SpanBold", serif;
  font-size: 35px;
  letter-spacing: 0.88px;
  line-height: 1.2;
  white-space: nowrap;
  text-align: center;
}
.kpi__item-description {
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.25px;
  max-width: 160px;
  text-align: center;
}

@media (min-width: 1025px) {
  .kpi__inner {
    gap: 79px;
  }
  .kpi__items {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .kpi__item {
    align-items: center;
    gap: 16px;
    padding-inline: 40px;
    position: relative;
  }
  .kpi__item:not(:last-child)::after {
    height: 100%;
    margin: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 1px;
  }
  .kpi__item-name {
    font-size: 18px;
    letter-spacing: 2.7px;
  }
  .kpi__item-value {
    font-size: 50px;
    letter-spacing: 1.25px;
  }
  .kpi__item-description {
    font-size: 16px;
    letter-spacing: 0.4px;
    line-height: 19.2px;
    max-width: 260px;
  }
}
.locations-carousel {
  background-color: var(--background-color);
  color: var(--text-color);
  overflow: clip;
}
.locations-carousel__carousel {
  min-width: 100dvw;
  position: relative;
  width: 100%;
}
.locations-carousel .locations-carousel__pagination {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
}
.locations-carousel .locations-carousel__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
.locations-carousel .locations-carousel__arrow--prev {
  left: 20px;
}
.locations-carousel .locations-carousel__arrow--next {
  right: 20px;
}

.properties-carousel {
  overflow: clip;
  width: 100%;
}
.properties-carousel__carousel {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 100vw;
  min-width: 100vw;
}

@media (min-width: 1025px) {
  .properties-carousel__carousel {
    gap: 40px;
  }
}
.cta-banner {
  color: var(--text-color);
  min-height: 600px;
  display: flex;
  position: relative;
}
.cta-banner__inner {
  align-items: center;
  gap: 60px;
  justify-content: center;
  position: relative;
  z-index: 3;
}
.cta-banner__text-block {
  max-width: 260px;
}
.cta-banner__text-block .description {
  text-wrap: balance;
}
.cta-banner__background {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.cta-banner__background::before, .cta-banner__background::after {
  background: rgba(0, 61, 79, 0.75);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.cta-banner__background::after {
  background: rgba(0, 0, 0, 0.2);
}

@media (min-width: 641px) {
  .cta-banner {
    min-height: 500px;
    padding-block: 50px;
  }
  .cta-banner__inner {
    gap: 50px;
    justify-content: center;
  }
  .cta-banner__text-block {
    max-width: 480px;
  }
}
@media (min-width: 1025px) {
  .cta-banner {
    min-height: 520px;
    padding-block: 70px;
  }
  .cta-banner__inner {
    gap: 70px;
    justify-content: center;
  }
  .cta-banner__text-block {
    max-width: 680px;
  }
}
@media (min-width: 1921px) {
  .cta-banner {
    min-height: 700px;
  }
}
.animation-pin-scroll-hor {
  border: 1px solid blue;
  max-width: 100vw;
  overflow: clip;
  padding: 120px 0;
}
.animation-pin-scroll-hor__wrapper {
  border: 1px solid red;
  position: relative;
}
.animation-pin-scroll-hor__movement {
  font-family: "SpanBold", serif;
  font-size: 120px;
  line-height: 1;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.single-property-main__inner {
  display: grid;
  grid-template-areas: "address address" "gallery gallery" "info    info" "price   buttons" "hr      hr" "est     status";
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0 16px;
}
.single-property-main__address-group {
  align-items: start;
  display: flex;
  flex-direction: column;
  grid-area: address;
  justify-content: start;
  gap: 7px;
  margin-bottom: 16px;
  width: 100%;
}
.single-property-main__address {
  color: #003D4F;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.4px;
  line-height: 1;
}
.single-property-main__location {
  color: #003D4F;
  font-size: 9px;
  letter-spacing: 0.23px;
  line-height: 1;
}
.single-property-main__gallery {
  grid-area: gallery;
  margin-bottom: 16px;
}
.single-property-main__information {
  font-size: 9px;
  font-weight: 500;
  grid-area: info;
  letter-spacing: 0.23px;
  margin-bottom: 16px;
  overflow-x: scroll;
  text-transform: uppercase;
  white-space: nowrap;
}
.single-property-main__information-item {
  display: inline-block;
  white-space: nowrap;
}
.single-property-main__price {
  align-self: center;
  font-family: "SpanBold", serif;
  font-size: 34px;
  grid-area: price;
  line-height: 1;
}
.single-property-main__buttons {
  align-items: center;
  align-self: bottom;
  display: flex;
  gap: 10px;
  grid-area: buttons;
  justify-content: end;
}
.single-property-main__divider {
  border: 0;
  border-top: 1px solid #003D4F;
  grid-area: hr;
  margin: 8px 0;
  width: 100%;
}
.single-property-main__est-payment {
  grid-area: est;
}
.single-property-main__status-group {
  grid-area: status;
}
.single-property-main__est-payment, .single-property-main__status-group {
  font-size: 9px;
  letter-spacing: 0.23px;
}
.single-property-main__est-payment-label, .single-property-main__status {
  opacity: 0.5;
}

@media (min-width: 1025px) {
  .single-property-main__inner {
    gap: 0 24px;
    grid-template-areas: "address address buttons" "gallery gallery gallery" "price   info    info   " "hr      hr      hr     " "est     est     status ";
    grid-template-columns: 1fr auto auto;
  }
  .single-property-main__address-group {
    gap: 12px;
    margin-bottom: 24px;
  }
  .single-property-main__address {
    font-size: 30px;
    letter-spacing: 0.75px;
  }
  .single-property-main__location {
    font-size: 15px;
    letter-spacing: 0.38px;
  }
  .single-property-main__gallery {
    margin-bottom: 18px;
  }
  .single-property-main__buttons {
    gap: 26px;
  }
  .single-property-main__price {
    font-size: 45px;
  }
  .single-property-main__information {
    font-size: 14px;
    letter-spacing: 0.35px;
    overflow: hidden;
  }
  .single-property-main__status-group {
    justify-self: end;
  }
  .single-property-main__est-payment, .single-property-main__status-group {
    font-size: 12px;
    letter-spacing: 0.3px;
  }
}
.single-property-content {
  margin-block: 34px;
}
.single-property-content__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
}
.single-property-content__main, .single-property-content__full-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 50px;
}
.single-property-content__full-content {
  display: none;
}
.single-property-content__full-content-toggle {
  align-items: center;
  display: inline-flex;
  font-size: 11px;
  font-weight: 700;
  gap: 0.5em;
  letter-spacing: 0.28px;
}
.single-property-content__full-content-toggle img {
  display: inline-block;
  height: 10px;
  transform: rotate(180deg);
  transition: transform 0.3s ease;
  width: auto;
}
.single-property-content__full-content--active {
  display: grid;
}
.single-property-content:has(.single-property-content__full-content--active) .single-property-content__full-content-toggle img {
  transform: rotate(0deg);
}
.single-property-content__box {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
}
.single-property-content__box-title {
  align-items: center;
  background: #D6D8D8;
  display: flex;
  font-size: 14px;
  font-weight: 500;
  height: 36px;
  letter-spacing: 2.1px;
  justify-content: center;
}
.single-property-content__box-text {
  font-size: 12px;
  letter-spacing: 0.3px;
  line-height: 19px;
}
.single-property-content__box-text p:not(:last-child) {
  margin-bottom: 1em;
}
.single-property-content__box-items {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px;
}
.single-property-content__item-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
  line-height: 19px;
}
.single-property-content__item-value {
  font-size: 12px;
  letter-spacing: 0.3px;
  line-height: 19px;
}
.single-property-content__item-value ul {
  padding-left: 1em;
  list-style: disc;
}
.single-property-content__map-wrapper {
  display: grid;
  gap: 14px;
}
.single-property-content__map-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-align: center;
}
.single-property-content__map {
  width: 100%;
  height: 324px;
  border: 0;
}
.single-property-content__map-fallback {
  display: grid;
  min-height: 160px;
  place-items: center;
  padding: 24px;
  text-align: center;
  background: rgba(214, 216, 216, 0.35);
}
.single-property-content__box--property_snapshot {
  order: 2;
}
.single-property-content__box--exterior_features {
  order: 3;
}
.single-property-content__box--interior_features {
  order: 4;
}
.single-property-content__box--map {
  order: 5;
}
.single-property-content__box--essential_specs {
  order: 6;
}
.single-property-content__sidebar {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
}
.single-property-content__disclosure {
  font-size: 7px;
  letter-spacing: 0.18px;
}
.single-property-content__sidebar-sticky {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media (min-width: 1025px) {
  .single-property-content {
    margin-block: 52px;
  }
  .single-property-content__inner {
    align-items: start;
    gap: 85px;
    grid-template-columns: minmax(0, 1fr) 380px;
  }
  .single-property-content__main, .single-property-content__full-content {
    gap: 50px;
  }
  .single-property-content__full-content {
    display: grid !important;
  }
  .single-property-content__full-content-toggle {
    display: none !important;
  }
  .single-property-content__box {
    gap: 27px;
  }
  .single-property-content__box-title {
    font-size: 20px;
    height: 54px;
    letter-spacing: 3px;
  }
  .single-property-content__box-content {
    padding-inline: 23px;
  }
  .single-property-content__box-text {
    font-size: 14px;
    letter-spacing: 0.35px;
    line-height: 17.8px;
  }
  .single-property-content__item-label, .single-property-content__item-value {
    font-size: 14px;
    letter-spacing: 0.35px;
  }
  .single-property-content__map-wrapper {
    gap: 26px;
  }
  .single-property-content__map-title {
    font-size: 14px;
    letter-spacing: 0.35px;
  }
  .single-property-content__map {
    height: 350px;
  }
  .single-property-content__sidebar {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .single-property-content__sidebar-top {
    flex-grow: 1;
  }
  .single-property-content__sidebar-sticky {
    display: flex;
    flex-direction: column;
    gap: 40px;
    position: sticky;
    left: 0;
    transition: top 0.3s linear;
    top: 20px;
  }
  .single-property-content__sidebar-bottom {
    height: min-content;
  }
  .single-property-content__disclosure {
    font-size: 10px;
    letter-spacing: 0.25px;
  }
  body.scroll-up .single-property-content__sidebar-sticky {
    top: 100px;
  }
}
.our-agent-cover {
  position: relative;
}
.our-agent-cover__inner {
  gap: 50px;
}
.our-agent-cover__text-block {
  gap: 36px;
  margin-top: 50px;
  max-width: 480px;
}
.our-agent-cover__text-block .description {
  max-width: 80%;
}
.our-agent-cover__our-agent-search {
  max-width: 360px;
  width: 100%;
}

@media (min-width: 1025px) {
  .our-agent-cover__inner {
    gap: 82px;
  }
  .our-agent-cover__text-block {
    margin-top: 0;
    max-width: 640px;
  }
  .our-agent-cover__our-agent-search {
    max-width: 914px;
  }
}
.cover {
  position: relative;
}
.cover__inner {
  gap: 36px;
}
.cover__text-block {
  gap: 36px;
  max-width: 480px;
  margin-bottom: 50px;
}
.cover__text-block .description {
  max-width: 80%;
}
.cover__scroll-to-discover {
  position: absolute;
  bottom: 66px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
.cover--small {
  height: 350px;
  padding-block-start: 80px;
}
.cover--small .cover__text-block {
  margin-bottom: 0;
}
.cover .cover__image-background {
  height: 100%;
  inset: 0;
  object-fit: cover;
  position: absolute;
  width: 100%;
  z-index: -1;
}
.cover .cover__image-background img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.cover .cover__image-background::before, .cover .cover__image-background::after {
  background: rgba(0, 61, 79, 0.75);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.cover .cover__image-background::after {
  background: rgba(0, 0, 0, 0.2);
}

@media (min-width: 1025px) {
  .cover__text-block {
    margin-bottom: 0;
    max-width: 700px;
  }
  .cover--small {
    height: 546px;
  }
  .cover--small .cover__text-block {
    margin-bottom: 0;
  }
}
@media (min-width: 1367px) {
  .cover__inner {
    gap: 48px;
  }
  .cover__scroll-to-discover {
    bottom: 132px;
  }
  .cover--small {
    padding-block-start: 150px;
  }
}
.agents-carousel {
  max-width: 100vw;
  overflow: hidden;
}
.agents-carousel__inner {
  gap: 41px;
}
.agents-carousel__carousel {
  min-width: 100dvw;
  position: relative;
  width: 100%;
}

@media (min-width: 1025px) {
  .agents-carousel__inner {
    gap: 97px;
  }
  .agents-carousel__carousel {
    min-width: 0;
    width: calc(100% - 80px);
  }
  .agents-carousel__arrows .agents-carousel__arrow {
    position: absolute;
    top: 40%;
    transform: translateY(-50%);
    z-index: 10;
  }
  .agents-carousel__arrows .agents-carousel__arrow--prev {
    right: calc(100% + 20px);
  }
  .agents-carousel__arrows .agents-carousel__arrow--next {
    left: calc(100% + 20px);
  }
}
@media (min-width: 1367px) {
  .agents-carousel__carousel {
    min-width: 0;
    width: calc(100% - 120px);
  }
  .agents-carousel__arrows .agents-carousel__arrow--prev {
    right: calc(100% + 30px);
  }
  .agents-carousel__arrows .agents-carousel__arrow--next {
    left: calc(100% + 30px);
  }
}
.loop-base {
  margin-block: 30px;
}

@media (min-width: 1367px) {
  .loop-base {
    margin-block: 50px;
  }
}
.loop-ajax__message {
  align-items: center;
  background: #D6D8D8;
  display: flex;
  flex-direction: column;
  font-size: 16px;
  letter-spacing: 2px;
  justify-content: center;
  padding: 10px;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}
.loop-ajax__message .loop-ajax__message-fav-link {
  font-size: 12px;
  text-decoration: underline;
}

.loop-ajax__message-count {
  white-space: nowrap;
}

@media (min-width: 1025px) {
  .loop-ajax__message {
    font-size: 20px;
    letter-spacing: 3px;
  }
}
.loop-ajax__bar {
  align-items: center;
  border-top: 1px solid #003D4F;
  display: flex;
  font-size: 12px;
  letter-spacing: 0.3px;
  justify-content: space-between;
  padding-block: 5px;
  width: 100%;
}
.loop-ajax__bar .loop-ajax__bar-list {
  display: flex;
}
.loop-ajax__bar .loop-ajax__bar-item {
  border-left: 1px solid #003D4F;
  padding-inline: 10px;
}
.loop-ajax__bar .loop-ajax__bar-item:first-child {
  border-left: none;
  padding-left: 0;
}
.loop-ajax__bar .loop-ajax__bar-link--active {
  text-decoration: underline;
}
.loop-ajax__bar .loop-ajax__bar-link,
.loop-ajax__bar .loop-ajax__bar-filter {
  appearance: none;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  font: inherit;
  padding: 0;
}

@media (min-width: 1025px) {
  .loop-ajax__bar {
    padding-block: 10px;
  }
}
.loop-ajax__filters {
  background-color: #003D4F;
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 30px;
  height: 101dvh;
  max-width: 720px;
  overflow: auto;
  padding: 60px 30px 30px 30px;
  pointer-events: none;
  position: fixed;
  right: 0;
  transition: transform 0.3s ease-in-out;
  transform: translateX(100%);
  top: 0;
  width: 80%;
  z-index: 9999999;
}
.loop-ajax__filters--open {
  pointer-events: all;
  transform: translateX(0);
}
.loop-ajax__filters-close {
  appearance: none;
  background: transparent;
  border: 0;
  cursor: pointer;
  padding: 0;
  position: absolute;
  right: 20px;
  top: 20px;
}
.loop-ajax__filters-close-icon {
  width: 24px;
  height: 24px;
}
.loop-ajax__filters-title {
  font-family: "SpanBold", serif;
  font-size: 24px;
}
.loop-ajax__filters-form {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.loop-ajax__filters-form-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.loop-ajax__filters-clear {
  appearance: none;
  background: transparent;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  margin-left: 20px;
  padding: 10px 0;
  text-decoration: underline;
}

@media (min-width: 1025px) {
  .loop-ajax__filters {
    gap: 80px;
    padding: 100px 80px 80px 80px;
  }
  .loop-ajax__filters-close {
    right: 24px;
    top: 24px;
  }
  .loop-ajax__filters-close-icon {
    width: 42px;
    height: 42px;
  }
  .loop-ajax__filters-title {
    font-size: 45px;
  }
  .loop-ajax__filters-form {
    gap: 70px;
  }
  .loop-ajax__filters-form-group {
    gap: 28px;
  }
}
.loop-ajax__empty {
  align-items: center;
  display: flex;
  font-size: 14px;
  letter-spacing: 0.5px;
  justify-content: center;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}
.loop-ajax__empty--hidden {
  display: none;
}

.loop-ajax__load-more {
  min-width: 180px;
}
.loop-ajax__load-more--hidden {
  display: none !important;
}
.loop-ajax__load-more-loader {
  display: none;
  height: 30px;
  width: auto;
}
.loop-ajax__load-more--loading, .loop-ajax__load-more:disabled {
  background-color: transparent;
  pointer-events: none;
}
.loop-ajax__load-more--loading .loop-ajax__load-more-loader, .loop-ajax__load-more:disabled .loop-ajax__load-more-loader {
  display: inline-block;
}
.loop-ajax__load-more--loading .loop-ajax__load-more-text, .loop-ajax__load-more:disabled .loop-ajax__load-more-text {
  display: none;
}

.loop-ajax {
  border-bottom: 1px solid #003D4F;
  padding-block: 30px;
}
.loop-ajax__inner {
  gap: 30px;
}
.loop-ajax__list {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  width: 100%;
}
.loop-ajax__feedback {
  color: #003D4F;
  font-size: 14px;
  margin: 10px 0;
}
.loop-ajax__loader {
  align-items: center;
  display: flex;
  grid-column: 1/-1;
  justify-content: center;
  min-height: 320px;
  width: 100%;
}
.loop-ajax__loader-image {
  display: block;
  height: 100px;
  width: 100px;
}
.loop-ajax--property .loop-ajax__list {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

@media (min-width: 1025px) {
  .loop-ajax__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .loop-ajax--property .loop-ajax__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1367px) {
  .loop-ajax {
    padding-block: 50px;
  }
  .loop-ajax__list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .loop-ajax--property .loop-ajax__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.agents-main-loop__inner {
  gap: 30px;
}
.agents-main-loop__loop {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  width: 100%;
}
.agents-main-loop a:hover {
  text-decoration: underline;
}
.agents-main-loop__loop-empty {
  align-items: center;
  display: flex;
  font-size: 14px;
  letter-spacing: 0.5px;
  justify-content: center;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}
.agents-main-loop .loop-empty--hidden {
  display: none;
}

@media (min-width: 1025px) {
  .agents-main-loop__loop {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1367px) {
  .agents-main-loop__loop {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.testimonials__inner {
  gap: 52px;
}
.testimonials__text-block {
  max-width: 300px;
}
.testimonials__carousel {
  width: 100%;
}
.testimonials__item {
  align-items: center;
  display: flex;
  justify-content: center;
}
.testimonials__item-inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 30px;
  max-width: 420px;
}
.testimonials__item-text {
  font-family: "Inter", sans-serif;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.63px;
  line-height: 26px;
  text-align: center;
}
.testimonials__item-name {
  font-size: 9px;
  letter-spacing: 0.68px;
}
.testimonials .testimonials__pagination {
  justify-content: center;
  margin-top: 26px;
  width: 100%;
}

@media (min-width: 1025px) {
  .testimonials__inner {
    gap: 70px;
  }
  .testimonials__text-block {
    max-width: 100%;
  }
  .testimonials__item-inner {
    gap: 30px;
    max-width: 720px;
  }
  .testimonials__item-text {
    font-size: 24px;
    line-height: 30px;
    letter-spacing: 0.84px;
  }
  .testimonials__item-name {
    font-size: 12px;
    letter-spacing: 0.9px;
  }
  .testimonials .testimonials__pagination {
    margin-top: 30px;
  }
}
.agents-carousel + .testimonials {
  position: relative;
}
.agents-carousel + .testimonials::before {
  background-color: #003D4F;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 295px;
}
@media (min-width: 1025px) {
  .agents-carousel + .testimonials::before {
    width: 914px;
  }
}

.simple-video {
  height: 100dvh;
  max-height: 700px;
  position: relative;
}

@media (min-width: 1025px) {
  .simple-video {
    max-height: 748px;
  }
}
.simple-image {
  position: relative;
}
.simple-image::before, .simple-image::after {
  background: rgba(0, 61, 79, 0.75);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.simple-image::after {
  background: rgba(0, 0, 0, 0.2);
}
.simple-image__image {
  display: block;
  height: var(--height-s);
  width: 100%;
  object-fit: cover;
  object-position: var(--object-position);
}

@media (min-width: 1025px) {
  .simple-image__image {
    height: var(--height-l);
  }
}
.cta-form {
  background-color: #003D4F;
}
.cta-form__inner {
  gap: 52px;
}
.cta-form__text-block {
  max-width: 250px;
}
.cta-form__text-block .description {
  text-wrap: balance;
}
.cta-form__shortcode {
  max-width: 480px;
  width: 100%;
}
.cta-form__shortcode .form {
  align-items: start;
  display: flex;
  flex-direction: column;
  gap: 18px;
  justify-content: center;
  width: 100%;
}
.cta-form__shortcode .form .form__input-wrapper {
  width: 100%;
}
.cta-form__shortcode .input-submit {
  align-self: center;
  margin-top: 30px;
}
.cta-form .form .wpcf7-response-output {
  color: #fff;
  display: block;
  font-size: 14px;
  letter-spacing: 0.25px;
  text-align: center;
  width: 100%;
}

@media (max-width: 1024px) {
  .cta-form__shortcode .form .choices-wrapper {
    width: 100%;
  }
}
@media (min-width: 1025px) {
  .cta-form__inner {
    gap: 90px;
  }
  .cta-form__text-block {
    max-width: 100%;
  }
  .cta-form__text-block .text-block__description {
    max-width: 668px;
  }
  .cta-form__shortcode {
    max-width: 910px;
  }
  .cta-form__shortcode .form {
    gap: 32px;
  }
  .cta-form__shortcode .input-submit {
    margin-top: 78px;
  }
}
.properties-alert-form {
  background-color: #003D4F;
}
.properties-alert-form__inner {
  gap: 52px;
}
.properties-alert-form__text-block {
  max-width: 250px;
}
.properties-alert-form__text-block .description {
  text-wrap: balance;
}
.properties-alert-form__shortcode {
  max-width: 480px;
  width: 100%;
}
.properties-alert-form__shortcode .form {
  align-items: start;
  display: flex;
  flex-direction: column;
  gap: 18px;
  justify-content: center;
  width: 100%;
}
.properties-alert-form__shortcode .form .form__input-wrapper {
  width: 100%;
}
.properties-alert-form__shortcode .input-submit {
  align-self: center;
  margin-top: 30px;
}
.properties-alert-form .form .wpcf7-response-output {
  color: #fff;
  display: block;
  grid-column: 1/-1;
  font-size: 14px;
  letter-spacing: 0.25px;
  text-align: center;
  width: 100%;
}

@media (min-width: 1025px) {
  .properties-alert-form__inner {
    gap: 90px;
  }
  .properties-alert-form__text-block {
    max-width: 800px;
  }
  .properties-alert-form__shortcode {
    max-width: 910px;
  }
  .properties-alert-form__shortcode .form {
    display: grid;
    grid-template-columns: 1fr 2fr auto;
    gap: 28px;
  }
  .properties-alert-form__shortcode .input-submit {
    margin-top: 0;
  }
}
.locations-banner {
  height: 500px;
  position: relative;
}
.locations-banner__bg {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.locations-banner__bg::before, .locations-banner__bg::after {
  background: rgba(0, 61, 79, 0.75);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.locations-banner__bg::after {
  background: rgba(0, 0, 0, 0.2);
}
.locations-banner__bg-image {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.locations-banner__inner {
  align-items: center;
  justify-content: center;
  height: 100%;
  gap: 30px;
}

@media (min-width: 1025px) {
  .locations-banner {
    height: 748px;
  }
  .locations-banner__inner {
    gap: 48px;
  }
}
.offices-map {
  background: #003D4F;
  color: #EFECEA;
  overflow: hidden;
}
.offices-map__inner {
  gap: 54px;
}
.offices-map__content {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 30px;
  justify-content: center;
  text-align: center;
  width: 100%;
}
.offices-map__map {
  width: 100vw;
}
.offices-map__offices {
  display: flex;
  flex-direction: column;
  font-size: 12px;
  gap: 30px;
  letter-spacing: 0.3px;
  line-height: 15.66px;
}
.offices-map__offices .offices__item-name {
  font-weight: 700;
}
.offices-map__button {
  margin-top: 20px;
}
.offices-map .description {
  text-wrap: balance;
}

@media (min-width: 641px) {
  .offices-map__map {
    width: 100%;
  }
  .offices-map__offices {
    flex-direction: row;
    justify-content: space-around;
    width: 100%;
  }
}
@media (min-width: 1025px) {
  .offices-map__inner {
    gap: 112px;
  }
  .offices-map__text-block {
    max-width: 700px;
  }
  .offices-map__content {
    display: grid;
    gap: 50px;
    grid-template-columns: minmax(0, 1fr) auto;
    max-width: 1220px;
    text-align: left;
  }
  .offices-map__map {
    grid-column: span 2;
  }
  .offices-map__offices {
    font-size: 16px;
    gap: 95px;
    grid-column: span 1;
    justify-content: start;
    letter-spacing: 0.45px;
    line-height: 24px;
  }
  .offices-map__button {
    grid-column: span 1;
  }
}
.simple-text__text-block {
  max-width: 260px;
}

@media (min-width: 641px) {
  .simple-text__text-block {
    max-width: 480px;
  }
}
@media (min-width: 1025px) {
  .simple-text__text-block {
    max-width: 868px;
  }
}
.our-founder {
  background-color: #003D4F;
  color: #EFECEA;
}
.our-founder__inner {
  gap: 36px;
}
.our-founder__main {
  align-items: center;
  border-top: 0.5px solid #EFECEA;
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin-bottom: -35px;
  max-width: 266px;
  justify-content: center;
  padding-block: 36px;
  text-align: center;
}
.our-founder__image {
  display: block;
  height: 320px;
  object-fit: cover;
  width: 100%;
}
.our-founder__text-wrapper {
  display: flex;
  flex-direction: column;
  max-width: 100%;
  width: 100%;
}
.our-founder__text-top {
  display: flex;
  flex-direction: column;
  margin-bottom: 32px;
}
.our-founder__text-middle {
  border-bottom: 0.5px solid #EFECEA;
  display: flex;
  flex-direction: column;
  margin-bottom: 9px;
  padding-bottom: 9px;
}
.our-founder__text-bottom {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.our-founder__text-bottom-left {
  display: flex;
  flex-direction: column;
}
.our-founder__title {
  margin-bottom: 28px;
}
.our-founder__description {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.3px;
  line-height: 17px;
}
.our-founder .our-founder__social-links {
  display: inline-flex;
}
.our-founder .our-founder__social-links .social-links__link {
  font-size: 14px;
}

@media (min-width: 641px) {
  .our-founder__main {
    max-width: 480px;
  }
}
@media (min-width: 1025px) {
  .our-founder__inner {
    gap: 98px;
    max-width: 934px;
  }
  .our-founder__main {
    display: grid;
    gap: 40px;
    grid-template-columns: auto minmax(0, 1fr);
    margin-bottom: 0;
    max-width: 100%;
    padding-block: 53px 0;
    text-align: left;
  }
  .our-founder__image {
    min-height: 478px;
    width: 355px;
  }
  .our-founder__text-wrapper {
    display: grid;
    min-height: 100%;
    grid-template-rows: minmax(0, 1fr) auto auto;
  }
  .our-founder__text-top {
    padding-inline: 20px;
  }
  .our-founder__text-middle {
    gap: 4px;
    margin-bottom: 14px;
    padding-bottom: 14px;
    padding-inline: 20px;
  }
  .our-founder__text-bottom {
    align-items: center;
    padding-inline: 20px;
    flex-direction: row;
    justify-content: space-between;
  }
  .our-founder__title {
    margin-bottom: 34px;
  }
  .our-founder__description {
    font-size: 18px;
    letter-spacing: 0.45px;
    line-height: 25px;
  }
  .our-founder .our-founder__social-links .social-links__link {
    font-size: 16px;
  }
}
.agents-testimonials {
  background-color: #003D4F;
  color: #EFECEA;
}
.agents-testimonials__inner {
  gap: 55px;
}
.agents-testimonials__text-block {
  max-width: 300px;
}
.agents-testimonials__main {
  max-width: 266px;
}
.agents-testimonials__item {
  height: 100%;
}
.agents-testimonials .agents-testimonials__pagination {
  display: flex;
  margin-top: 20px;
  justify-content: center;
}

@media (min-width: 641px) {
  .agents-testimonials__main {
    max-width: 1042px;
  }
  .agents-testimonials .agents-testimonials__pagination {
    margin-top: 40px;
  }
}
@media (min-width: 1025px) {
  .agents-testimonials__inner {
    gap: 110px;
  }
  .agents-testimonials__text-block {
    max-width: 100%;
  }
  .agents-testimonials .agents-testimonials__arrows {
    position: relative;
  }
  .agents-testimonials .agents-testimonials__arrow {
    position: absolute;
    top: 270px;
  }
  .agents-testimonials .agents-testimonials__arrow--prev {
    right: calc(100% + 80px);
  }
  .agents-testimonials .agents-testimonials__arrow--next {
    left: calc(100% + 80px);
  }
}
.faq {
  background: #EFECEA;
}
.faq__inner {
  gap: 48px;
  max-width: 914px;
}

@media (min-width: 1025px) {
  .faq__inner {
    gap: 66px;
  }
}
.icon-boxes {
  color: #EFECEA;
  position: relative;
}
.icon-boxes::before, .icon-boxes::after {
  background: rgba(0, 61, 79, 0.75);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.icon-boxes::after {
  background: rgba(0, 0, 0, 0.2);
}
.icon-boxes__bg {
  display: block;
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: var(--bg-position);
  position: absolute;
  top: 0;
  width: 100%;
}
.icon-boxes__inner {
  gap: 50px;
  position: relative;
  z-index: 2;
}
.icon-boxes__list {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 60px;
  justify-content: center;
}
.icon-boxes__item {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: center;
  max-width: 180px;
  width: 100%;
}
.icon-boxes__icon {
  display: block;
  height: 84px;
  width: auto;
}
.icon-boxes__title {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1.13px;
}
.icon-boxes__description {
  font-size: 10px;
  letter-spacing: 0.25px;
  line-height: 12px;
}

@media (min-width: 641px) {
  .icon-boxes__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1025px) {
  .icon-boxes__inner {
    gap: 100px;
  }
  .icon-boxes__list {
    gap: 100px;
  }
  .icon-boxes__item {
    gap: 25px;
    max-width: 260px;
  }
  .icon-boxes__icon {
    height: 140px;
  }
  .icon-boxes__title {
    font-size: 24px;
    letter-spacing: 1.8px;
  }
  .icon-boxes__description {
    font-size: 16px;
    letter-spacing: 0.4px;
    line-height: 19.2px;
  }
}
.static-loop {
  border-bottom: 1px solid #003D4F;
  padding-block: 30px;
}
.static-loop__inner {
  gap: 30px;
}
.static-loop__list {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  width: 100%;
}
.static-loop__no-results {
  align-items: center;
  display: flex;
  font-size: 14px;
  letter-spacing: 0.5px;
  justify-content: center;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}

@media (min-width: 1025px) {
  .static-loop__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1367px) {
  .static-loop {
    padding-block: 50px;
  }
  .static-loop__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.posts-content {
  margin-block: 40px;
}
.posts-content__inner {
  gap: 20px;
  max-width: 960px;
}
.posts-content__title {
  font-size: 24px;
  font-weight: 700;
}

body:has(#sidx-main-container) .posts-content__inner {
  max-width: 100%;
  width: 100%;
}

body:has(#sidx-main-container) .posts-content__inner .posts-content__content {
  width: 100%;
}

#sidx-main-container {
  width: 100%;
}

#sidx-main-container .sidx-medium-screen {
  width: 100%;
}

.cta-search-properties {
  padding-block-end: 0;
}
.cta-search-properties__inner {
  gap: 50px;
}
.cta-search-properties__form {
  border-bottom: 1px solid #003D4F;
  display: grid;
  gap: 26px;
  grid-template-columns: 1fr;
  padding-bottom: 50px;
  width: 100%;
}

@media (min-width: 1025px) {
  .cta-search-properties__form {
    grid-template-columns: 200px 1fr auto;
    max-width: 914px;
    padding-bottom: 110px;
  }
}
.template-single-property {
  margin-block: 24px;
}

@media (min-width: 1025px) {
  .template-single-property {
    margin-block: 48px;
  }
}
.wpcf7 .screen-reader-response,
.wpcf7 .hidden-fields-container,
.wpcf7 .wpcf7-spinner,
.wpcf7 [aria-hidden=true] {
  display: none;
}