/* 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%;
  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; }

a {
  outline: none; }

.clear {
  clear: both;
  height: 0; }

* {
  margin: 0;
  padding: 0;
  text-decoration: none;
  list-style: none;
  font-weight: normal; }

section:after,
div:after {
  content: '';
  height: 0;
  display: block;
  clear: both;
  overflow: hidden; }

*,
*:before,
*:after {
  box-sizing: border-box; }

html,
body {
  width: 100%; }

.limit-grid {
  width: 100%;
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px; }

.no-overflow {
  overflow: hidden !important; }

.t-upper {
  text-transform: uppercase; }

@media only screen and (max-width: 767px) {
  .hide-mobile {
    display: none !important; } }

@media only screen and (min-width: 768px) {
  .show-mobile {
    display: none !important; } }

@media only screen and (min-width: 1024px) {
  .limit-grid {
    padding: 0; } }

@media only screen and (min-width: 1280px) {
  .limit-grid {
    max-width: 1200px; } }

.slick-arrow {
  display: block !important;
  position: absolute;
  top: 50%;
  left: 0;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
  text-indent: -9999em;
  line-height: 100px;
  text-align: left;
  width: 15px;
  height: 35px;
  z-index: 100;
  transform: translateY(-50%); }
  .slick-arrow.slick-prev {
    left: 20px;
    background: url("/static/arrow-left.svg") no-repeat; }
  .slick-arrow.slick-next {
    left: auto;
    right: 20px;
    background: url("/static/arrow-right.svg") no-repeat; }
  .slick-arrow.slick-disabled {
    cursor: default;
    opacity: 0.1 !important; }

.slick-dots {
  display: flex !important;
  justify-content: flex-end;
  position: absolute;
  bottom: 10px;
  right: 20px;
  z-index: 10; }
  .slick-dots li {
    width: 10px;
    height: 20px;
    cursor: pointer;
    position: relative;
    display: inline-block;
    margin: 0 5px;
    padding: 0; }
    .slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      padding: 5px;
      color: transparent;
      border: 0;
      outline: none;
      border-radius: 50%;
      background-color: #979797; }
  .slick-dots .slick-active button {
    background-color: #fff; }

.slick-slide > div {
  font-size: 0; }

body {
  font-family: "Montserrat";
  font-weight: 400;
  color: #263238;
  font-size: 15px;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

a {
  transition: all 300ms ease; }

p,
li {
  line-height: 1.3em; }

input {
  outline: none; }

img {
  width: 100%;
  height: auto; }

button {
  background-color: transparent;
  border: 0;
  outline: none;
  cursor: pointer;
  border-radius: 0;
  -webkit-appearance: none; }

strong {
  font-weight: 700; }

.lowercase {
  text-transform: lowercase; }

.gridcosta {
  max-width: 1200px; }

@media only screen and (min-width: 768px) {
  .wrapper {
    min-height: 350px;
    min-height: 70vh; } }

.loading {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.7);
  z-index: 1001;
  transition: all 300ms ease;
  opacity: 0;
  visibility: hidden; }
  .loading.active {
    opacity: 1;
    visibility: visible; }

.header {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 70px;
  z-index: 102;
  background: #fff;
  border-bottom: 1px solid #eceff1;
  transition: all 400ms ease; }
  .header--sticky {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    z-index: 800;
    transition-duration: 300ms; }
    .header--sticky .header-logo__btn:before {
      width: 110px;
      height: 40px; }
    .header--sticky.header--nav-active .header-nav {
      top: 50px; }
  .header.header--nav-mobile-active .header-nav {
    top: 0;
    border-bottom: 0;
    padding: 0;
    z-index: 999; }
    .header.header--nav-mobile-active .header-nav-item__btn {
      border-bottom: 1px solid #eceff1 !important;
      border-left: transparent 20px solid !important;
      border-right: transparent 20px solid !important; }
  .header--hide {
    transition-delay: 0s;
    transform: translateY(-100%); }
  .header--nav-active .header-toggle__bar:nth-child(2), .header--contact-active .header-toggle__bar:nth-child(2) {
    width: 0%; }
  .header--nav-active .header-toggle__bar:nth-child(1), .header--nav-active .header-toggle__bar:nth-child(3), .header--contact-active .header-toggle__bar:nth-child(1), .header--contact-active .header-toggle__bar:nth-child(3) {
    top: 8px;
    transition-delay: 100ms;
    background-color: #263238; }
  .header--nav-active .header-toggle__bar:nth-child(1), .header--contact-active .header-toggle__bar:nth-child(1) {
    transform: rotate(-45deg);
    background-color: #263238; }
  .header--nav-active .header-toggle__bar:nth-child(3), .header--contact-active .header-toggle__bar:nth-child(3) {
    transform: rotate(45deg);
    background-color: #263238; }
  .header--contact-active {
    background: #fff; }
  .header--nav-active .header-search {
    transform: translate(0, 0); }
  .header--nav-active .header-social-items {
    transform: translate(0, 0); }
  .header--nav-active .header-nav {
    transform: translate(0, 0); }
  .header--nav-active.header--black {
    background-color: #fff; }
    .header--nav-active.header--black .header-logo__btn:before {
      background: url("/static/logo-renatacesar-black.svg") no-repeat;
      background-size: contain; }
    .header--nav-active.header--black .header-logo__btn:after {
      background: url("/static/logo-pilar-black.svg") no-repeat;
      background-size: contain; }
  .header--nav-mobile-active .header-nav-items--mobile .header-nav-item:not(.active) {
    transform: translateX(-150%); }
  .header--nav-mobile-active .header-nav-items--mobile .header-nav-item.active {
    top: 0 !important; }
    .header--nav-mobile-active .header-nav-items--mobile .header-nav-item.active .header-nav-item__btn:after {
      transform: translateY(-50%) rotate(180deg); }
  .header--black {
    background-color: rgba(38, 50, 56, 0.6);
    border-color: rgba(38, 50, 56, 0.6); }
    .header--black .header-logo__btn:before {
      background: url("/static/logo-renatacesar-white.svg") no-repeat;
      background-size: contain; }
    .header--black .header-logo__btn:after {
      background: url("/static/logo-pilar-white.svg") no-repeat;
      background-size: contain; }
    .header--black .header-toggle__bar {
      background-color: #fff; }

.header-logo {
  margin-left: 20px; }

.header-logo__btn {
  display: block;
  width: 220px;
  height: 50px;
  position: relative;
  overflow: hidden;
  text-indent: -9999em;
  line-height: 100px;
  transition: none; }
  .header-logo__btn:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 137px;
    height: 50px;
    background: url("/static/logo-renatacesar-black.svg") no-repeat center left;
    background-size: contain;
    transform: translateY(-50%);
    transition: all 100ms ease; }

.header-nav {
  width: 100%;
  height: 100%;
  position: fixed;
  padding: 30px 20px 0 20px;
  top: 70px;
  right: 0;
  overflow-y: scroll;
  z-index: 100;
  background-color: #fff;
  border: 1px solid #eceff1;
  transform: translateX(100%);
  transition: all 1s cubic-bezier(0.075, 0.82, 0.165, 1);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-bottom: 190px solid #fff; }
  .header-nav--mobile-active {
    border-bottom-width: 130px; }

.header-nav-menu {
  text-align: center; }

.header-nav-items {
  width: 100%; }
  .header-nav-items--mobile {
    position: relative; }
    .header-nav-items--mobile .header-nav-item {
      position: absolute;
      left: 0;
      width: 100%;
      z-index: 2;
      transition: all 300ms ease; }
      .header-nav-items--mobile .header-nav-item:nth-child(1) {
        top: 0; }
      .header-nav-items--mobile .header-nav-item:nth-child(2) {
        top: 52px; }
      .header-nav-items--mobile .header-nav-item:nth-child(3) {
        top: 104px; }
      .header-nav-items--mobile .header-nav-item:nth-child(4) {
        top: 156px; }
      .header-nav-items--mobile .header-nav-item:nth-child(5) {
        top: 208px; }
      .header-nav-items--mobile .header-nav-item.active .header-nav-item__btn span {
        font-weight: bold; }
    .header-nav-items--mobile .header-nav-item__btn {
      height: auto;
      line-height: 52px;
      padding: 0;
      border: 0 !important; }
  .header-nav-items--desktop {
    position: absolute;
    top: 0;
    left: 0;
    padding: 50px 20px 0 40px; }
    .header-nav-items--desktop .header-nav-item--blog {
      padding-top: 50px; }
    .header-nav-items--desktop .header-nav-item__btn {
      text-align: center;
      display: none; }

.header-nav-item {
  transition: all 300ms ease; }
  .header-nav-item--imoveis .header-nav-item__btn:after, .header-nav-item--blog .header-nav-item__btn:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 7px;
    height: 20px;
    background: url("/static/arrow-right-dark.svg") no-repeat;
    background-size: contain;
    transform: translateY(-50%); }
  .header-nav-item--imoveis:hover:before, .header-nav-item--blog:hover:before {
    width: 100vw;
    height: calc(100vh - 70px);
    pointer-events: none;
    background: rgba(38, 50, 56, 0.8);
    top: 70px;
    left: 0;
    position: fixed; }
  .header-nav-item:hover .header-nav-item__btn {
    border-bottom: #57d0c1 4px solid; }
    .header-nav-item:hover .header-nav-item__btn span {
      font-weight: bold; }

.header-nav-item__btn {
  position: relative;
  display: block;
  text-align: left;
  text-decoration: none;
  color: #263238;
  transition: all 300ms ease;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 7px;
  height: 70px;
  line-height: 62px;
  padding-top: 4px;
  position: relative; }
  .header-nav-item__btn:before {
    content: "";
    position: absolute;
    width: 5px;
    top: 7px;
    left: -20px;
    height: 5px;
    background: #263238;
    border-radius: 50%;
    opacity: 0;
    visibility: hidden; }
  .header-nav-item__btn span {
    display: inline-block; }
  .header-nav-item__btn b {
    display: block;
    content: attr(title);
    font-weight: bold;
    height: 0;
    overflow: hidden;
    visibility: hidden; }
  .header-nav-item__btn.active {
    color: #263238; }
    .header-nav-item__btn.active:before {
      opacity: 1;
      visibility: visible; }

.header-nav-submenu {
  display: none;
  z-index: 900;
  transition: all 0s 300ms ease;
  background: #fff; }
  .header-nav-submenu--active {
    display: block; }
  .header-nav-submenu--first > .header-nav-submenu-item {
    margin-bottom: 30px; }
  .header-nav-submenu--second > .header-nav-submenu-item {
    margin-top: 15px; }

.header-nav-submenu-item {
  width: 100%;
  position: relative; }

.header-nav-submenu-item__btn {
  position: relative;
  display: block;
  text-align: left;
  font-size: 14px;
  text-decoration: none;
  color: #263238;
  transition: all 300ms ease;
  font-weight: 300;
  letter-spacing: 2px;
  line-height: 24px; }
  .header-nav-submenu-item__btn--first {
    font-size: 18px;
    font-weight: 500; }

.header-toggle {
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 24px;
  height: 16px;
  z-index: 101;
  transform: translateY(-50%); }

.header-toggle__bar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: block;
  height: 1px;
  background-color: #263238;
  border-radius: 2px;
  transition: all 300ms ease; }
  .header-toggle__bar:nth-child(2) {
    top: 7px; }
  .header-toggle__bar:nth-child(3) {
    top: 15px; }

.header-social-items {
  width: 100%;
  top: auto;
  bottom: 20px;
  right: 20px;
  position: fixed;
  z-index: 100;
  transform: translateX(100%);
  transition: all 1s cubic-bezier(0.075, 0.82, 0.165, 1);
  display: flex;
  justify-content: flex-end;
  align-items: flex-end; }

.header-social-item {
  margin-left: 20px; }

.header-social__btn {
  display: block;
  overflow: hidden;
  text-indent: -9999em;
  line-height: 100px; }
  .header-social__btn--facebook {
    width: 10px;
    height: 20px;
    background: url("/static/icon-facebook.svg") no-repeat; }
  .header-social__btn--instagram {
    width: 20px;
    height: 20px;
    background: url("/static/icon-instagram.svg") no-repeat; }
  .header-social__btn--youtube {
    width: 20px;
    height: 14px;
    background: url("/static/icon-youtube.svg") no-repeat; }
  .header-social__btn--linkedin {
    width: 19px;
    height: 19px;
    background: url("/static/icon-linkedln.svg") no-repeat; }
  .header-social__btn--whatsapp {
    width: 20px;
    height: 20px;
    background: url("/static/icon-whatsapp.svg") no-repeat; }

.header-search {
  position: fixed;
  bottom: 60px;
  left: 0;
  width: 100%;
  padding: 0 20px;
  transition: all 1s cubic-bezier(0.075, 0.82, 0.165, 1);
  z-index: 100;
  transform: translateX(100%); }

.header-search-form {
  display: block;
  position: relative;
  width: 100%; }

.header-search-form__input {
  display: block;
  width: 100%;
  height: 40px;
  padding: 0 50px 0 20px;
  font-family: "IBM Plex Serif";
  font-size: 12px;
  border: none;
  font-weight: 300;
  border-radius: 5px;
  color: #90a4ae;
  border: 1px solid #90a4ae; }

.header-search-form__btn {
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  overflow: hidden;
  text-indent: -9999em;
  line-height: 100px;
  width: 27px;
  height: 19px;
  background: url("/static/icon-search.svg") no-repeat;
  transform: translateY(-50%); }

@media only screen and (min-width: 768px) {
  .header--black .header-search-form__input {
    color: #fff; }
    .header--black .header-search-form__input::-webkit-input-placeholder {
      color: #fff; }
    .header--black .header-search-form__input::-moz-placeholder {
      color: #fff; }
    .header--black .header-search-form__input:-ms-input-placeholder {
      color: #fff; }
    .header--black .header-search-form__input:-moz-placeholder {
      color: #fff; }
  .header--black .header-social__btn--facebook {
    background: url("/static/icon-facebook-white.svg") no-repeat; }
  .header--black .header-social__btn--instagram {
    background: url("/static/icon-instagram-white.svg") no-repeat; }
  .header--black .header-social__btn--youtube {
    background: url("/static/icon-youtube-white.svg") no-repeat; }
  .header--black .header-social__btn--linkedin {
    background: url("/static/icon-linkedln-white.svg") no-repeat; }
  .header--black .header-social__btn--whatsapp {
    background: url("/static/icon-whatsapp-white.svg") no-repeat; }
  .header--nav-active .header-search {
    transform: translateY(-50%); }
  .header-logo {
    width: 30%; }
  .header-toggle {
    top: 21px;
    z-index: 140; }
  .header-nav {
    z-index: 120; }
  .header-search {
    position: absolute;
    bottom: auto;
    top: 50%;
    left: auto;
    right: 220px;
    width: auto;
    transform: translateY(-50%); }
  .header-search-form__input {
    background-color: transparent;
    border-radius: 5px; }
    .header-search-form__input::-webkit-input-placeholder {
      color: #90a4ae; }
    .header-search-form__input::-moz-placeholder {
      color: #90a4ae; }
    .header-search-form__input:-ms-input-placeholder {
      color: #90a4ae; }
    .header-search-form__input:-moz-placeholder {
      color: #90a4ae; }
  .header-social-items {
    width: 20%;
    top: 20px;
    height: auto;
    padding: 0;
    right: 80px;
    position: absolute;
    transform: translateX(0);
    display: flex;
    justify-content: flex-end;
    align-items: center; } }

@media only screen and (min-width: 1024px) {
  .header {
    height: 70px;
    transition-duration: 300ms; }
    .header--black .header-nav-item__btn {
      color: #fff; }
    .header--sticky .header-logo__btn:before {
      width: 137px;
      height: 50px; }
    .header .header-logo__btn:before {
      left: 50%;
      transform: translate(-50%, -50%); }
    .header--sticky, .header:hover {
      transition-delay: 0s;
      background-color: white;
      border-bottom: 1px solid #eceff1; }
      .header--sticky .header-logo__btn:before, .header:hover .header-logo__btn:before {
        background: url("/static/logo-renatacesar-black.svg") no-repeat;
        background-size: contain; }
      .header--sticky .header-logo__btn:after, .header:hover .header-logo__btn:after {
        background: url("/static/logo-pilar-black.svg") no-repeat;
        background-size: contain; }
      .header--sticky .header-search-form__btn, .header:hover .header-search-form__btn {
        background: url("/static/icon-search.svg") no-repeat; }
      .header--sticky .header-search-form__input, .header:hover .header-search-form__input {
        border-color: #90a4ae;
        color: #90a4ae;
        background-color: transparent; }
        .header--sticky .header-search-form__input::-webkit-input-placeholder, .header:hover .header-search-form__input::-webkit-input-placeholder {
          color: #90a4ae; }
        .header--sticky .header-search-form__input::-moz-placeholder, .header:hover .header-search-form__input::-moz-placeholder {
          color: #90a4ae; }
        .header--sticky .header-search-form__input:-ms-input-placeholder, .header:hover .header-search-form__input:-ms-input-placeholder {
          color: #90a4ae; }
        .header--sticky .header-search-form__input:-moz-placeholder, .header:hover .header-search-form__input:-moz-placeholder {
          color: #90a4ae; }
      .header--sticky .header-nav-item__btn, .header:hover .header-nav-item__btn {
        color: #263238; }
      .header--sticky .header-social__btn--facebook, .header:hover .header-social__btn--facebook {
        background: url("/static/icon-facebook.svg") no-repeat; }
      .header--sticky .header-social__btn--instagram, .header:hover .header-social__btn--instagram {
        background: url("/static/icon-instagram.svg") no-repeat; }
      .header--sticky .header-social__btn--youtube, .header:hover .header-social__btn--youtube {
        background: url("/static/icon-youtube.svg") no-repeat; }
      .header--sticky .header-social__btn--linkedin, .header:hover .header-social__btn--linkedin {
        background: url("/static/icon-linkedln.svg") no-repeat; }
      .header--sticky .header-social__btn--whatsapp, .header:hover .header-social__btn--whatsapp {
        background: url("/static/icon-whatsapp.svg") no-repeat; }
  .header-logo {
    width: 15%; }
  .header-toggle {
    display: none; }
  .header-nav {
    width: 50%;
    height: auto;
    padding: 0;
    position: relative;
    top: 0;
    overflow: visible;
    background-color: transparent;
    border: none;
    display: flex;
    flex-direction: row;
    transform: none; }
  .header-nav-items {
    position: relative;
    min-width: 77%; }
    .header-nav-items--mobile {
      display: none; }
    .header-nav-items--desktop {
      display: flex;
      padding: 0; }
      .header-nav-items--desktop .header-nav-item--blog {
        padding-top: 0; }
      .header-nav-items--desktop .header-nav-item__btn {
        display: block; }
        .header-nav-items--desktop .header-nav-item__btn.current {
          font-weight: 500; }
  .header-nav-item {
    padding: 0;
    margin-left: 20px;
    pointer-events: auto; }
    .header-nav-item--blog .header-nav-item__btn:after, .header-nav-item--imoveis .header-nav-item__btn:after {
      display: none; }
    .header-nav-item--blog:hover:before, .header-nav-item--imoveis:hover:before {
      content: ""; }
    .header-nav-item--blog .header-nav-submenu--first {
      padding-bottom: 25px; }
      .header-nav-item--blog .header-nav-submenu--first .header-nav-submenu-item:first-child {
        display: none; }
    .header-nav-item--blog .header-nav-submenu-item__btn {
      font-size: 12px;
      font-weight: 400; }
    .header-nav-item:hover .header-nav-submenu--first {
      transition-delay: 0s;
      z-index: 10;
      opacity: 1;
      visibility: visible; }
      .header-nav-item:hover .header-nav-submenu--first:before {
        transition-delay: 0s;
        opacity: 1;
        visibility: visible; }
    .header-nav-item:hover .header-nav-submenu--imoveis {
      transition-delay: 0s;
      z-index: 10;
      opacity: 1;
      visibility: visible; }
  .header-nav-item__btn {
    font-size: 12px;
    letter-spacing: 4px;
    color: #263238; }
  .header-search {
    width: 190px;
    right: 190px;
    padding: 0; }
  .header-search-form__input {
    border-color: #90a4ae; }
  .header-nav-submenu {
    display: block;
    width: 100%;
    transition-delay: 100ms; }
    .header-nav-submenu--imoveis {
      position: fixed;
      top: 70px;
      left: 0;
      opacity: 0;
      visibility: hidden; }
    .header-nav-submenu--first {
      display: flex;
      position: absolute;
      top: 70px;
      left: 20px;
      padding: 20px 0 30px 0;
      text-align: left;
      opacity: 0;
      visibility: hidden; }
      .header-nav-submenu--first:before {
        content: "";
        display: block;
        width: 2000px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 50%;
        border-top: 1px solid #eceff1;
        transform: translateX(-50%);
        background-color: #fff;
        box-shadow: 0 20px 25px rgba(38, 50, 56, 0.35);
        opacity: 0;
        visibility: hidden;
        transition: all 0s 300ms ease; }
      .header-nav-submenu--first > .header-nav-submenu-item {
        margin-bottom: 0; }
        .header-nav-submenu--first > .header-nav-submenu-item:not(:last-child) {
          padding-right: 30px;
          margin-right: 30px; }
          .header-nav-submenu--first > .header-nav-submenu-item:not(:last-child):after {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            right: 0;
            width: 1px;
            height: 100%;
            background-color: #eceff1; }
    .header-nav-submenu--second {
      margin-top: 10px; }
      .header-nav-submenu--second > .header-nav-submenu-item {
        margin-top: 0; }
  .header-nav-submenu-item {
    margin-bottom: 5px; }
  .header-nav-submenu-item__btn {
    display: block;
    font-size: 12px;
    letter-spacing: 2px;
    white-space: nowrap; }
    .header-nav-submenu-item__btn--first {
      font-size: 16px;
      font-weight: 500; }
      .header-nav-submenu-item__btn--first[href="/imoveis"] {
        padding: 5px 10px;
        border: #213139 1px solid;
        border-radius: 5px;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: 1px;
        text-transform: uppercase;
        display: inline-block; }
  .header-social-items {
    width: 15%;
    top: 25px;
    right: 40px; } }

@media only screen and (min-width: 1280px) {
  .header-search {
    width: auto;
    min-width: 230px;
    right: 210px; } }

@media only screen and (min-width: 1440px) {
  .header-nav-item {
    margin-left: 40px; }
  .header-nav-submenu--first > .header-nav-submenu-item:not(:last-child) {
    padding-left: 20px; }
  .header-search-form__input {
    font-size: 13px;
    letter-spacing: 1px; }
  .header-social-items {
    width: 11%;
    top: 28px;
    right: 57px; }
  .header-social-item {
    margin-left: 21px; } }

.filter-steps {
  display: flex;
  overflow: hidden;
  background: #f1f3f4; }
  .filter-steps-item {
    width: 33.33333%;
    height: 50px;
    background: #f1f3f4;
    text-align: center;
    color: #b8bcbf;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: relative; }
    .filter-steps-item:after {
      width: 50px;
      height: 50px;
      border-right: #fff 5px solid;
      border-top: #fff 5px solid;
      transform: rotate(45deg);
      background: #f1f3f4;
      content: "";
      top: 0;
      right: -25px;
      position: absolute;
      z-index: 901; }
    .filter-steps-item--active {
      background: #fff;
      border: #57d0c1 1px solid;
      color: #57d0c1; }
      .filter-steps-item--active:after {
        border-width: 1px;
        border-color: #57d0c1;
        background: #fff; }
      .filter-steps-item--active:before {
        width: 25px;
        height: 50px;
        border-top: #57d0c1 1px solid;
        border-bottom: #57d0c1 1px solid;
        content: "";
        top: -1px;
        right: -10px;
        position: absolute;
        z-index: 902; }
    .filter-steps-item--current {
      font-weight: bold; }
    .filter-steps-item--selected {
      color: #b8bcbf;
      text-transform: none;
      cursor: pointer; }
      .filter-steps-item--selected span {
        margin-left: 10px;
        color: #57d0c1;
        font-size: 14px;
        letter-spacing: 4px;
        text-transform: uppercase;
        display: inline-block;
        vertical-align: top; }

.filter-step {
  padding: 80px 0; }

.filter-wrapper {
  display: flex;
  justify-content: center; }
  .filter-wrapper:hover .filter-btn {
    opacity: 0.5; }
    .filter-wrapper:hover .filter-btn:hover {
      opacity: 1; }

.filter-btn {
  width: 335px;
  height: 80px;
  margin: 0 0 0 10px;
  background: #b3e9e2;
  text-align: center;
  font-size: 20px;
  text-transform: uppercase;
  color: #000;
  letter-spacing: 10px;
  transition: all 300ms ease; }
  .filter-btn:first-child {
    margin: 0; }
  .filter-btn--selected {
    background-color: #b3e9e2; }
  .filter-btn--image {
    background-size: cover;
    color: #fff;
    position: relative; }
  .filter-btn--beach {
    background: url("/static/praia.jpg") center no-repeat; }
  .filter-btn--city {
    background: url("/static/cidade.jpg") center no-repeat; }
  .filter-btn--countryside {
    background: url("/static/campo.jpg") center no-repeat; }

.filter-list {
  width: 250px;
  display: inline-block; }
  .filter-list li {
    margin: 15px 0 0;
    list-style: none;
    font-size: 16px;
    color: #b8bcbf; }
    .filter-list li:first-child {
      margin: 0; }
    .filter-list li a {
      line-height: 20px;
      color: #263238;
      font-size: 16px;
      font-weight: normal;
      text-decoration: none;
      display: block;
      transition: none; }
      .filter-list li a:hover {
        color: #57d0c1;
        font-weight: bold; }

@media only screen and (max-width: 1023px) {
  .filter {
    margin-left: -20px;
    position: relative; }
    .filter-steps {
      overflow: auto;
      display: block;
      background: transparent; }
      .filter-steps-item {
        width: 100%;
        height: 80px;
        padding-bottom: 10px;
        border: 0;
        background: transparent url("/static/menu-arrow.png") center bottom no-repeat; }
        .filter-steps-item:before, .filter-steps-item:after {
          display: none; }
        .filter-steps-item:last-child {
          background: none !important; }
        .filter-steps-item--active {
          border: 0;
          background-image: url("/static/menu-arrow-selected.png"); }
        .filter-steps-item--current {
          font-weight: bold; }
        .filter-steps-item:nth-child(1).filter-steps-item--current {
          height: 380px;
          padding-bottom: 300px; }
        .filter-steps-item:nth-child(2).filter-steps-item--current {
          height: 70px;
          padding-bottom: 0; }
    .filter-step {
      padding: 0; }
      .filter-step--1 {
        max-width: 340px;
        width: 100%;
        top: 80px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute; }
      .filter-step--2 {
        max-width: 340px;
        width: 100%;
        top: 160px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute; }
    .filter-wrapper {
      display: block; }
    .filter-btn {
      width: 100%;
      margin-top: 10px;
      margin-left: 0; }
      .filter-btn:first-child {
        margin: 0; }
    .filter-list {
      margin-bottom: 40px; } }

.btn {
  border: 1px solid #51beb1;
  width: 80%;
  height: 40px;
  background-color: #51beb1;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 14px;
  color: #fff;
  line-height: 40px;
  border-radius: 5px; }
  .btn--page, .btn--page-arrow {
    width: 20px;
    height: 20px;
    padding: 0;
    font-size: 12px;
    line-height: 18px;
    text-align: center; }
  .btn--page {
    letter-spacing: 0; }
  .btn--page-arrow {
    padding: 0 10px;
    width: auto; }
  .btn--no-bg {
    background: transparent;
    color: #263238; }
  .btn--no-bd {
    border: 0; }
  .btn[disabled] {
    opacity: 0.2;
    cursor: default; }

@media only screen and (min-width: 1024px) {
  .btn {
    transition: all 300ms ease; }
    .btn:hover {
      background: #263238;
      color: #fff;
      border-color: #263238; } }

.hero--about {
  position: relative;
  z-index: 1; }

.hero-slide {
  position: relative;
  outline: none;
  overflow: hidden; }

.hero-image {
  position: relative;
  height: 100%;
  overflow: hidden; }
  .hero-image:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 60%;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.8)); }

.hero-image__img {
  position: relative; }
  .hero-image__img--mobile {
    display: block !important; }
  .hero-image__img--desktop {
    display: none !important; }

.hero-player {
  display: none;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 120%;
  transform: translateY(-50%) scale(1.25); }

.hero-limit {
  position: absolute;
  top: 60%;
  transform: translateY(-50%);
  left: 0;
  z-index: 3;
  pointer-events: none; }

.hero__titlesmall {
  color: #fff;
  display: block;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  line-height: 27px; }

.hero__title {
  display: block;
  position: relative;
  padding-bottom: 10px;
  text-align: center;
  color: #fff;
  font-size: 26px;
  line-height: 29.9px;
  font-family: "IBM Plex Serif"; }

.hero-text {
  display: block;
  position: relative;
  margin-bottom: 15px;
  font-size: 16px;
  color: #fff; }

.hero__btn {
  width: 190px;
  height: 40px;
  line-height: 38px;
  border: #fff 1px solid;
  border-radius: 5px;
  margin-top: 10px;
  position: relative;
  font-size: 14px;
  letter-spacing: 4px;
  font-weight: 500;
  color: #fff;
  text-transform: uppercase;
  background-color: transparent;
  display: inline-block; }

@media only screen and (min-width: 320px) {
  .hero__titlesmall {
    font-size: 10px; }
  .hero__title {
    font-size: 23px; }
  .hero-text {
    font-size: 14px; } }

@media only screen and (min-width: 768px) {
  .hero--auto .hero-image__img--desktop {
    position: relative;
    width: 100%;
    height: auto; }
  .hero--blog .hero-slide {
    height: auto; }
  .hero--blog .hero-slide__btn {
    position: relative;
    height: 54vh;
    overflow: hidden; }
  .hero-slide--link .hero-slide__btn:before, .hero-slide--nolink:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 60%;
    z-index: 2;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.8)); }
  .hero-slide--video.hero-slide--link .hero-slide__btn:after, .hero-slide--video.hero-slide--nolink:after {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent; }
  .hero-slide__btn {
    display: block;
    width: 100%;
    height: 100%; }
  .hero-image__img--desktop {
    position: absolute;
    top: 0;
    left: 0;
    display: block !important; }
  .hero-image__img--mobile {
    display: none !important; }
  .hero-player {
    display: block; }
  .hero-limit {
    top: auto;
    left: 50%;
    transform: translateX(-50%);
    bottom: 60px;
    max-width: 620px; } }

@media only screen and (min-width: 1024px) {
  .hero__titlesmall {
    font-size: 14px; }
  .hero-limit {
    pointer-events: auto; }
  .hero__title {
    font-size: 30px;
    line-height: 38px; }
  .hero__text {
    font-size: 16px; }
  .hero-slide {
    height: 75vh; }
  .slick-dots {
    bottom: 50px;
    right: 50px; } }

.beaches {
  margin-top: 60px;
  text-align: left; }

.beaches-text__title {
  font-size: 46px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px;
  text-align: left; }
  .beaches-text__title p {
    line-height: 40px; }
  .beaches-text__title small {
    font-size: 22px;
    font-family: "Montserrat"; }

.beaches-text-subtitle {
  margin-top: 30px;
  font-size: 15px;
  color: #455a64; }

.beaches-items {
  position: relative;
  margin-top: 40px; }

.beaches-item {
  position: relative;
  margin-bottom: 20px; }

.beaches-item__btn {
  position: relative;
  display: block;
  color: #263238; }
  .beaches-item__btn:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 50%;
    height: 100%;
    background: linear-gradient(to left, transparent, rgba(255, 255, 255, 0.8)); }

.beaches-item-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 20px;
  z-index: 2; }

.beaches-item__title {
  margin-bottom: 5px;
  font-size: 28px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 23px; }

.beaches-item__subtitle {
  font-size: 16px;
  font-family: "IBM Plex Serif";
  font-style: italic;
  font-weight: 500;
  line-height: 23px; }

@media only screen and (min-width: 768px) {
  .beaches {
    margin: auto;
    margin-top: 60px;
    width: 90%; }
  .beaches-text {
    display: flex;
    align-items: baseline; }
  .beaches-text__title {
    margin-right: 30px;
    width: 50%; }
  .beaches-text-subtitle {
    width: 30%;
    margin-top: 30px; }
  .beaches-items-block {
    display: flex; }
  .beaches-item {
    position: relative;
    padding-right: 20px; }
    .beaches-item:last-child {
      padding: 0; } }

@media only screen and (min-width: 1024px) {
  .beaches-item__title,
  .beaches-item__subtitle {
    transition: all 600ms ease; }
  .beaches-item__btn {
    position: relative;
    overflow: hidden; }
    .beaches-item__btn:hover .beaches-item__image {
      transform: scale(1.05);
      transition-duration: 1s; }
    .beaches-item__btn:hover .beaches-item__title,
    .beaches-item__btn:hover .beaches-item__subtitle {
      transform: translateX(10px); }
    .beaches-item__btn:hover .beaches-item__subtitle {
      transition-delay: 100ms; }
  .beaches-item__image {
    transition: all 600ms ease; } }

@media only screen and (min-width: 1440px) {
  .beaches-text__title {
    margin-right: 60px;
    width: 39%; }
  .beaches-items {
    margin-top: 50px; } }

.building-container {
  max-width: 600px;
  margin: 0 auto 30px auto; }

.building {
  position: relative;
  border: 1px solid #ababb6;
  margin-top: 20px;
  background-color: #fff;
  color: #263238; }
  .building--sold .slick-arrow {
    display: none !important; }

.building-carousel {
  position: relative;
  font-size: 0;
  background: url("/static/loading.svg") no-repeat center center; }
  .building-carousel .slick-arrow {
    width: 29px;
    height: 40px; }
    .building-carousel .slick-arrow.slick-prev {
      left: 0;
      background: rgba(38, 50, 56, 0.85) url("/static/arrow-left.svg") center no-repeat !important;
      background-size: auto 30px !important; }
    .building-carousel .slick-arrow.slick-next {
      left: auto;
      right: 0;
      background: rgba(38, 50, 56, 0.85) url("/static/arrow-right.svg") center no-repeat !important;
      background-size: auto 30px !important; }
    .building-carousel .slick-arrow:hover {
      background-color: #263238 !important; }

.building__btn {
  display: block;
  position: relative;
  width: 100%;
  font-size: 13px;
  color: #263238; }

.building-info {
  position: relative;
  padding: 20px 10px 50px 10px;
  text-align: left; }

.building-info__title {
  margin-bottom: 10px;
  font-size: 18px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 23px;
  height: 69px;
  overflow: hidden; }

.building-info__area {
  padding-top: 20px; }

.building-info-desc {
  margin-bottom: 15px; }
  .building-info-desc p {
    line-height: 1.6em; }

.building-info-desc__ref {
  display: block;
  font-size: 16px;
  font-weight: 300; }

.building-info__segment {
  font-size: 14px;
  font-weight: 300;
  text-transform: uppercase; }

.building-info__readmore {
  padding: 8px;
  border: #213139 1px solid;
  border-radius: 5px;
  position: absolute;
  bottom: 10px;
  right: 10px;
  font-size: 14px;
  color: #455a64;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #213139; }

.building-sold {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 101;
  background: rgba(0, 0, 0, 0); }
  .building-sold__msg {
    position: absolute;
    display: inline-flex;
    flex-direction: column;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 12px;
    color: #ECEFF1;
    text-align: center;
    text-transform: uppercase;
    padding: 16px 12px 12px 12px;
    border-radius: 5px;
    border: var(--stroke-weight-1, 1px) solid var(--color-grey-94, #ECEFF1);
    background: var(--color-azure-1880, rgba(38, 50, 56, 0.8));
    z-index: 100;
    letter-spacing: 2px;
    white-space: nowrap; }
    .building-sold__msg strong {
      display: block;
      padding: 0 0 8px;
      font-weight: 600;
      font-size: 28px; }

@media only screen and (min-width: 768px) {
  .building-container {
    margin-bottom: 40px; }
  .building {
    display: flex; }
  .building-carousel {
    width: 60%; }
    .building-carousel .slick-arrow.slick-prev {
      left: 0; }
    .building-carousel .slick-arrow.slick-next {
      left: auto;
      right: 0; }
  .building__btn {
    display: flex;
    align-items: flex-start;
    width: 40%; }
  .building-info {
    padding: 20px 20px 0 20px; }
  .building-info-block {
    display: block;
    margin-bottom: 20px; }
  .building-info__segment {
    margin-bottom: 10px; }
  .building-info__readmore {
    right: auto;
    left: 20px;
    font-size: 12px; } }

@media only screen and (min-width: 1024px) {
  .building:hover .building-carousel .slick-arrow.slick-prev {
    left: 0; }
  .building:hover .building-carousel .slick-arrow.slick-next {
    right: 0; }
  .building-info {
    padding: 10px 10px 0 10px; }
  .building-info-desc p {
    line-height: 1.3em; }
  .building-info-desc span {
    display: block; }
  .building-info-desc__ref {
    font-size: 13px; }
  .building-info__title {
    font-size: 14px;
    line-height: 18px;
    height: auto; }
  .building-info__readmore {
    left: 10px;
    bottom: 10px; } }

@media only screen and (min-width: 1280px) {
  .building-carousel {
    width: 60%; }
  .building-info__title {
    font-size: 15px; }
  .building__btn {
    width: 40%;
    font-size: 13px; }
  .building__image {
    width: 353px;
    height: 353px; }
  .building-info-desc p:not(:last-child) {
    margin-bottom: 15px; } }

@media only screen and (min-width: 1440px) {
  .building-info {
    padding: 20px 20px 0 20px; }
  .building-info__title {
    font-size: 18px;
    line-height: 22px; }
  .building-info__segment {
    font-size: 12px; }
  .building-info__readmore {
    bottom: 20px;
    left: 20px; } }

.buildings {
  margin-top: 40px;
  background-color: #eceff1;
  text-align: left;
  padding-bottom: 50px; }
  .buildings--page {
    margin-top: 70px;
    padding-top: 30px;
    background: transparent; }
    .buildings--page .buildings-header {
      padding-top: 0; }

.buildings-items {
  margin-top: 50px; }
  .buildings-items--blog {
    margin-bottom: 40px;
    justify-content: center; }

.buildings-items-container {
  margin-top: 70px;
  margin-bottom: 50px; }

.buildings-items-more {
  margin-top: 20px; }

.buildings-header {
  padding-top: 50px; }

.buildings-header__title {
  font-size: 30px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px; }

.buildings-header-subtitle {
  margin-top: 20px;
  font-size: 14px;
  color: #455a64; }

.buildings-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 30px; }
  .buildings-pagination span {
    display: flex; }
  @media only screen and (max-width: 767px) {
    .buildings-pagination {
      margin-bottom: 30px; } }

.buildings-pagination__btn {
  min-width: 36px;
  height: 36px;
  line-height: 34px;
  margin: 0 5px;
  border: #213139 1px solid;
  background: #213139;
  color: #fff; }
  @media only screen and (max-width: 767px) {
    .buildings-pagination__btn {
      min-width: 32px;
      height: 32px;
      line-height: 30px;
      padding: 0; } }
  .buildings-pagination__btn.btn--no-bg {
    background-color: transparent;
    color: #213139; }
  .buildings-pagination__btn.btn--disabled {
    opacity: 0.25;
    pointer-events: none; }
  .buildings-pagination__btn span.mobile {
    display: none; }
  @media only screen and (max-width: 767px) {
    .buildings-pagination__btn {
      margin: 0 2px; }
      .buildings-pagination__btn span {
        display: none; }
        .buildings-pagination__btn span.mobile {
          display: inline-block; } }

@media only screen and (min-width: 768px) {
  .buildings {
    margin-top: 80px;
    width: 100%; }
    .buildings--page {
      margin-top: 70px; }
  .buildings-items-container {
    margin-top: 80px; }
  .buildings-header {
    display: flex;
    align-items: flex-start;
    width: 100%;
    margin: auto; }
  .buildings-header__title {
    padding-right: 30px;
    width: 50%; }
  .buildings-header-subtitle {
    width: 50%;
    padding: 10px 0 0 10px;
    margin-top: 0; }
  .buildings-items-more {
    display: flex;
    justify-items: center; }
  .buildings-items-more__btn {
    max-width: 370px;
    margin: 0 auto; } }

@media only screen and (min-width: 1024px) {
  .buildings--page {
    padding-top: 0; }
    .buildings--page .buildings-header {
      padding-top: 40px; }
  .buildings-header__title {
    font-size: 32px; }
  .buildings-header-subtitle {
    width: 30%;
    font-size: 15px; }
  .buildings-items {
    display: flex;
    flex-wrap: wrap;
    margin-top: 50px;
    width: 100%; }
    .buildings-items--blog {
      margin-top: 0;
      margin-bottom: 60px; }
    .buildings-items:hover .buildings-item {
      opacity: 0.5; }
  .buildings-item {
    width: 50%;
    transition: all 300ms ease; }
    .buildings-item:nth-child(2n + 2) {
      padding-left: 10px; }
    .buildings-item:nth-child(2n + 1) {
      padding-right: 10px; }
    .buildings-item:hover {
      opacity: 1 !important; } }

.aboutblock {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  align-items: flex-end;
  padding: 20px 0;
  margin-bottom: 60px;
  text-align: left; }

.aboutblock-wrapper {
  position: relative; }
  .aboutblock-wrapper.limit-grid {
    padding: 0; }

.aboutblock-info {
  padding: 0 20px; }

.aboutblock-info__title {
  position: relative;
  margin-bottom: 45px;
  font-size: 28px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px; }
  .aboutblock-info__title:after {
    content: '';
    width: 107%;
    height: 2px;
    display: block;
    position: absolute;
    top: 60px;
    right: -20px;
    background-color: #e4e4e5; }

.aboutblock-info-content {
  font-size: 18px;
  color: #455a64; }

.aboutblock-info__btn {
  width: 68%;
  margin-top: 40px; }

.aboutblock-subinfo {
  position: relative;
  min-height: 240px; }

.aboutblock-figure {
  position: absolute;
  top: 30px;
  left: 0;
  width: 100%;
  height: 240px;
  overflow: hidden; }

.aboutblock__img {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: auto;
  transform: translateY(-50%); }

.aboutblock-block {
  margin-top: 40px;
  margin-left: 20px;
  padding-top: 240px;
  width: 100%;
  border: 2px solid #455a64;
  border-right: none;
  right: 0;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end; }

.aboutblock-block__text {
  width: 80%;
  margin: auto;
  margin-top: 50px;
  padding-bottom: 40px;
  font-size: 20px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  color: #455a64;
  line-height: 26px; }

@media only screen and (max-width: 320px) {
  .aboutblock-block__text {
    margin-top: 0; } }

@media only screen and (min-width: 768px) {
  .aboutblock {
    display: flex;
    flex-direction: column-reverse;
    padding: 0;
    overflow: visible;
    margin-top: 150px; }
  .aboutblock-wrapper {
    margin-bottom: 0; }
    .aboutblock-wrapper.limit-grid {
      padding: 0 20px; }
  .aboutblock-info {
    position: relative;
    width: 50%;
    margin: 0;
    padding: 20px;
    background-color: #eceff1;
    z-index: 5; }
  .aboutblock-info__title {
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 30px;
    text-transform: uppercase; }
    .aboutblock-info__title:after {
      content: '';
      width: 100%;
      top: auto;
      bottom: 0;
      left: 0;
      color: #4e4e56; }
  .aboutblock-info-content {
    width: 80%;
    font-size: 16px;
    line-height: 26px; }
  .aboutblock-info__btn {
    width: 50%;
    margin-top: 40px;
    margin-right: 20px; }
  .aboutblock-subinfo {
    position: absolute;
    top: -40px;
    left: 0%;
    width: 100%; }
  .aboutblock-figure {
    width: 53%;
    top: -40px;
    left: 45%;
    height: 290px;
    z-index: 10; }
  .aboutblock-block {
    position: relative;
    width: 40%;
    padding: 280px 50px 30px 30px;
    margin: 0 auto;
    border: 1px solid #455a64;
    transform: translateX(20%); }
  .aboutblock-block__text {
    width: 60%;
    margin: 0;
    padding: 0;
    font-size: 17px; } }

@media only screen and (min-width: 1024px) {
  .aboutblock-wrapper.limit-grid {
    padding: 0; }
  .aboutblock-info {
    padding: 60px;
    margin-right: 50px; }
  .aboutblock-info-content {
    font-size: 18px; }
  .aboutblock-info__title {
    margin-right: 30px;
    font-size: 32px; }
  .aboutblock-figure {
    width: 55%;
    height: 390px; }
  .aboutblock-block {
    padding-top: 380px; }
  .aboutblock-info__btn {
    width: 40%;
    margin-right: 30px;
    margin-bottom: 70px; } }

@media only screen and (min-width: 1280px) {
  .aboutblock__img {
    width: 100%;
    top: 0;
    left: 50%;
    width: auto;
    height: 100%;
    transform: translateX(-50%); } }

@media only screen and (min-width: 1440px) {
  .aboutblock--type-about {
    margin-bottom: 120px; }
  .aboutblock-info-content {
    font-size: 18px;
    line-height: 28px; }
  .aboutblock-block__text {
    font-size: 20px; } }

.beaches-about-wrapper.limit-grid {
  padding: 0; }

.beaches-about-carousel {
  margin-bottom: 40px;
  background: url("/static/loading.svg") no-repeat center center;
  position: -webkit-sticky;
  /* Safari */
  position: sticky;
  top: 0; }

.beaches-about-carousel-slide__img--mobile {
  display: block !important; }

.beaches-about-carousel-slide__img--desktop {
  display: none !important; }

.beaches-about-content {
  padding-bottom: 40px;
  border-bottom: 1px solid #ababb6;
  text-align: left;
  font-size: 18px; }
  .beaches-about-content h1,
  .beaches-about-content h2,
  .beaches-about-content h3,
  .beaches-about-content h4,
  .beaches-about-content h5,
  .beaches-about-content h6 {
    margin-bottom: 40px;
    font-family: "IBM Plex Serif";
    font-size: 24px;
    font-weight: 500;
    line-height: 1.5em; }
  .beaches-about-content h1 {
    margin-bottom: 50px;
    font-size: 32px; }
  .beaches-about-content h2 {
    margin-top: 20px;
    font-size: 28px; }
  .beaches-about-content p {
    margin-bottom: 20px;
    color: #455a64; }

@media only screen and (min-width: 768px) {
  .beaches-about--sticky .beaches-about-carousel {
    position: fixed; }
  .beaches-about--sticky .beaches-about-content {
    margin-left: 50%; }
  .beaches-about-wrapper {
    position: relative;
    display: flex;
    align-items: flex-start;
    border: 1px solid #e4e4e5;
    background: #fff; }
  .beaches-about-carousel {
    width: 50%;
    margin-bottom: 0; }
  .beaches-about-carousel-slide__img--mobile {
    display: none !important; }
  .beaches-about-carousel-slide__img--desktop {
    display: block !important; }
  .beaches-about-content {
    width: 50%;
    margin-top: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 12px;
    border: 0; }
    .beaches-about-content h1 {
      margin-bottom: 30px;
      font-size: 22px;
      line-height: 30px; }
    .beaches-about-content h2,
    .beaches-about-content h3 {
      margin-top: 10px;
      margin-bottom: 10px;
      font-size: 22px;
      line-height: 32px; }
    .beaches-about-content p {
      margin-top: 10px; }
      .beaches-about-content p:last-child {
        padding-bottom: 0;
        border-bottom: none; } }

@media only screen and (min-width: 320px) {
  .beaches-about-carousel {
    position: relative;
    top: auto; } }

@media only screen and (min-width: 768px) {
  .beaches-about-carousel {
    position: -webkit-sticky;
    /* Safari */
    position: sticky;
    top: 0;
    margin-top: -76px;
    padding-top: 76px; } }

@media only screen and (min-width: 1024px) {
  .beaches-about {
    position: relative; }
    .beaches-about:before {
      display: block;
      content: '';
      position: absolute;
      top: 50%;
      right: 0;
      width: 50%;
      height: 80%;
      background: #eceff1;
      transform: translateY(-50%);
      z-index: -1; }
  .beaches-about-content {
    padding-top: 30px;
    padding-left: 30px;
    padding-right: 30px;
    text-align: left;
    font-size: 14px; }
    .beaches-about-content h1 {
      font-size: 28px;
      line-height: 40px; }
    .beaches-about-content h2,
    .beaches-about-content h3 {
      margin-top: 20px;
      font-size: 26px;
      line-height: 32px; }
    .beaches-about-content p {
      margin-top: 10px;
      color: #455a64; } }

@media only screen and (min-width: 1440px) {
  .beaches-about--sticky .beaches-about-content {
    margin-left: 50%; }
  .beaches-about-content {
    margin: 0;
    padding-top: 60px;
    padding-left: 50px;
    padding-right: 30px;
    text-align: left;
    font-size: 18px;
    position: relative; }
    .beaches-about-content h1 {
      font-size: 32px;
      line-height: 40px; }
    .beaches-about-content h2,
    .beaches-about-content h3 {
      margin-top: 40px;
      font-size: 28px;
      line-height: 32px; }
    .beaches-about-content p {
      margin-top: 20px;
      color: #455a64; } }

@media only screen and (min-width: 1920px) {
  .beaches-about-content:after {
    right: -193px;
    width: 25%; } }

.beaches-related-carousel {
  width: 65%;
  margin: auto; }
  .beaches-related-carousel .slick-list {
    overflow: visible; }
  .beaches-related-carousel .slick-slide.slick-current .beaches-related-slide {
    transform: scale(1); }
  .beaches-related-carousel .slick-dots {
    bottom: -40px;
    right: auto;
    left: 50%;
    transform: translateX(-50%); }
    .beaches-related-carousel .slick-dots li {
      margin: 0 10px; }
      .beaches-related-carousel .slick-dots li button {
        background-color: #eceff1; }
    .beaches-related-carousel .slick-dots .slick-active button {
      background-color: #90a4ae; }

.beaches-related__title {
  font-size: 28px;
  font-weight: 500;
  font-family: "IBM Plex Serif";
  line-height: 40px; }

.beaches-related-slide {
  margin-top: 50px;
  transform: scale(0.8);
  transition: all 300ms ease;
  transition-delay: 0.5s; }

.slick-slide:not(.slick-current) .beaches-related-slide {
  transition-delay: 0s; }

.beaches-related-slide__btn {
  display: block;
  width: 100%;
  color: #263238; }

.beaches-related-slide__image--mobile {
  display: block !important; }

.beaches-related-slide__image--desktop {
  display: none !important; }

.beaches-related-slide-wrapper {
  font-size: 23px;
  text-align: left;
  letter-spacing: 2.5px;
  line-height: 30px;
  width: 100%;
  background-color: #fff;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  border: 1px solid #e4e4e5; }

.beaches-related-slide__title {
  font-family: "IBM Plex Serif";
  font-weight: 500;
  text-transform: uppercase; }

.beaches-related-slide__subtitle {
  padding-top: 10px;
  font-size: 18px;
  font-weight: 300; }

.beaches-related-gallery {
  margin-top: 50px; }

@media only screen and (min-width: 768px) {
  .beaches-related {
    position: relative; }
  .beaches-related__title {
    line-height: 40px;
    text-align: right;
    width: 51%; }
  .beaches-related-carousel {
    position: relative;
    width: 65%;
    margin: auto; }
    .beaches-related-carousel .slick-arrow.slick-prev {
      left: -40px !important;
      background: url("/static/arrow-left-dark.svg") no-repeat; }
    .beaches-related-carousel .slick-arrow.slick-next {
      left: auto;
      right: -40px !important;
      background: url("/static/arrow-right-dark.svg") no-repeat; }
  .beaches-related-slide {
    margin-top: 50px;
    transform: scale(0.7); }
  .beaches-related-slide__btn {
    display: flex;
    justify-content: center; }
  .beaches-related-slide-images {
    width: 60%; }
  .beaches-related-slide__image--mobile {
    display: none !important; }
  .beaches-related-slide__image--desktop {
    display: block !important; }
  .beaches-related-slide-wrapper {
    width: 40%;
    display: flex;
    flex-direction: column;
    margin-left: 0;
    justify-content: center;
    padding-left: 20px; }
  .beaches-related-slide__subtitle {
    font-size: 16px; } }

@media only screen and (min-width: 1024px) {
  .beaches-related {
    padding: 50px 0 100px 0; }
  .beaches-related-bars {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    .beaches-related-bars:before, .beaches-related-bars:after {
      display: block;
      content: '';
      position: absolute;
      width: 200%;
      height: 1px;
      background: #455a64; }
    .beaches-related-bars:before {
      top: 0;
      left: 50%; }
    .beaches-related-bars:after {
      bottom: 0;
      right: 50%; }
  .beaches-related-bars__line {
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    background: #455a64; }
  .beaches-related-wrapper {
    position: relative;
    z-index: 2; }
  .beaches-related__title {
    width: 41%;
    margin-left: 40px; }
  .beaches-related-carousel {
    position: relative;
    width: 50%;
    max-width: 1200px;
    margin: auto; }
    .beaches-related-carousel .slick-active .beaches-related-slide {
      margin-top: 40px; }
  .beaches-related-slide-images {
    width: 50%; }
  .beaches-related-slide__btn:before {
    top: -45px; }
  .beaches-related-slide-wrapper {
    width: 50%; } }

@media only screen and (min-width: 1440px) {
  .beaches-related {
    max-width: initial; }
  .beaches-related-carousel {
    width: 60%; }
  .beaches-related__title {
    width: 34%;
    margin-left: 0; }
  .beaches-related-slide__title {
    font-size: 32px; }
  .beaches-related-slide__subtitle {
    font-size: 24px; }
  .beaches-related-slide-images {
    width: 60%; }
  .beaches-related-slide-wrapper {
    width: 40%; } }

.news {
  display: none;
  position: relative; }
  .news--active {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    opacity: 1;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.6);
    animation: show 1s ease; }

@keyframes show {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: flex;
    opacity: 0; }
  100% {
    opacity: 1; } }

.news-wrapper {
  margin: auto;
  margin-top: 40px;
  max-width: 344px;
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between; }

.news-header {
  height: 50px;
  margin-bottom: 70px; }

.news-header__close {
  position: absolute;
  top: 10px;
  right: 20px;
  width: 20px;
  height: 20px;
  background: transparent;
  cursor: pointer;
  font-size: 0; }
  .news-header__close:before, .news-header__close:after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1px;
    height: 18px;
    background: #fff;
    transform: translate(-50%, -50%) rotate(-45deg); }
  .news-header__close:after {
    transform: translate(-50%, -50%) rotate(45deg); }

.news-info {
  margin-top: 50px;
  background-color: #fff;
  text-align: left;
  font-size: 16px; }

.news-info__title {
  margin-top: 20px;
  margin-bottom: 20px;
  font-weight: 500;
  font-size: 30px;
  line-height: 40px;
  font-family: "IBM Plex Serif"; }

.news-info-input {
  margin-top: 40px;
  display: flex; }

.news-info-input__text {
  width: 70%;
  border: 1px solid #263238;
  font-family: "IBM Plex Serif";
  height: 40px;
  border-radius: 5px;
  font-size: 14px;
  padding-left: 10px;
  margin-bottom: 50px; }
  .news-info-input__text::-webkit-input-placeholder {
    color: #263238; }
  .news-info-input__text::-moz-placeholder {
    color: #263238; }
  .news-info-input__text:-ms-input-placeholder {
    color: #263238; }
  .news-info-input__text:-moz-placeholder {
    color: #263238; }

.news-info-input__btn {
  width: 26%;
  margin-left: 10px; }

@media only screen and (min-width: 768px) {
  .news-info {
    padding: 20px; } }

.gallery {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 901;
  background: #263238;
  transition: all 300ms ease;
  opacity: 0;
  visibility: hidden; }
  .gallery.active {
    opacity: 1;
    visibility: visible; }

.gallery-wrapper {
  position: relative;
  width: 100%;
  padding: 0 20px;
  max-width: 930px;
  margin: 0 auto; }

.gallery-header {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  justify-content: flex-end;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  padding: 0 20px;
  z-index: 2; }

.gallery-header-close__btn {
  display: flex;
  align-items: center;
  font-family: "Montserrat";
  font-size: 0;
  color: #fff; }

.gallery-header-close__icon {
  margin-left: 20px;
  position: relative;
  width: 13px;
  height: 13px; }
  .gallery-header-close__icon:before, .gallery-header-close__icon:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 13px;
    background: #fff; }
  .gallery-header-close__icon:before {
    transform: rotate(-45deg); }
  .gallery-header-close__icon:after {
    transform: rotate(45deg); }

.gallery-carousel {
  display: flex;
  align-items: center;
  height: 100%; }
  .gallery-carousel .slick-slider {
    width: 100%; }
  .gallery-carousel .slick-arrow.slick-next {
    right: 10px; }
  .gallery-carousel .slick-arrow.slick-prev {
    left: 10px; }

.gallery-carousel-slide {
  display: flex !important;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 0 35px;
  border-top: 60px solid #263238;
  border-bottom: 157px solid #263238; }
  .gallery-carousel-slide--landscape .gallery-carousel-slide__img {
    width: 100%;
    height: auto; }
  .gallery-carousel-slide--portrait .gallery-carousel-slide__img {
    width: auto;
    height: 100%; }

.gallery-carousel-slide__img {
  margin: 0 auto; }

.gallery-footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 2;
  background: #263238; }

.gallery-footer-row {
  position: relative;
  display: flex;
  align-items: flex-start; }
  .gallery-footer-row--first {
    padding: 20px 0; }
  .gallery-footer-row--last {
    padding-bottom: 20px; }

.gallery-counter {
  margin-right: 10px; }

.gallery-tour {
  width: 72px;
  height: 72px;
  border-radius: 36px;
  background: #51beb1;
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
  top: 120px;
  right: 80px;
  position: absolute; }
  .gallery-tour span {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    color: #263238;
    display: block; }
  .gallery-tour big {
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    color: #263238;
    display: block; }
  @media only screen and (max-width: 767px) {
    .gallery-tour {
      width: 52px;
      height: 52px;
      border-radius: 26px;
      top: 80px;
      right: 50px; } }

.gallery-counter__text {
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  white-space: nowrap; }

.gallery-captions {
  position: relative;
  width: 100%;
  margin-left: auto; }

.gallery-captions__item {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 15px;
  color: #fff;
  text-align: left;
  transition: all 300ms ease;
  opacity: 0;
  visibility: hidden; }
  .gallery-captions__item.active {
    opacity: 1;
    visibility: visible; }

.gallery-toggle {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 2; }

.gallery-toggle__btn {
  display: flex;
  align-items: center; }
  .gallery-toggle__btn:before {
    content: '';
    display: block;
    width: 24px;
    height: 16px;
    margin-right: 10px;
    background: url("/static/gallery-toggle-icon.svg") no-repeat; }
  .gallery-toggle__btn--active .gallery-toggle__text:first-child {
    display: block; }
  .gallery-toggle__btn--active .gallery-toggle__text:last-child {
    display: none; }

.gallery-toggle__text {
  display: block;
  font-size: 14px;
  color: #fff; }
  .gallery-toggle__text:first-child {
    display: none; }

.gallery-map__btn {
  position: relative;
  display: block;
  width: 78px;
  height: 78px;
  margin-right: 20px;
  background: url("/static/gallery-map.png") no-repeat;
  font-size: 0;
  z-index: 5; }

.gallery-thumbs {
  width: 50%; }
  .gallery-thumbs .slick-list {
    overflow: visible; }
  .gallery-thumbs .slick-slide {
    opacity: 0.5; }
    .gallery-thumbs .slick-slide.slick-current {
      opacity: 1; }
  .gallery-thumbs .slick-arrow.slick-prev, .gallery-thumbs .slick-arrow.slick-next {
    width: 5px;
    height: 14px;
    background: url("/static/arrow-left-small-white.svg") no-repeat; }
  .gallery-thumbs .slick-arrow.slick-prev {
    left: -7px; }
  .gallery-thumbs .slick-arrow.slick-next {
    right: -5px;
    transform: rotate(180deg) translateY(50%); }

.gallery-thumbs-slide {
  padding: 0 10px; }

.gallery-thumbs-slide-figure {
  position: relative;
  width: 100%;
  height: 78px;
  overflow: hidden; }

.gallery-thumbs-slide__img {
  position: absolute;
  top: 0;
  left: 50%;
  width: auto;
  height: 100%;
  transform: translateX(-50%); }

@media (max-width: 1023px) and (orientation: landscape) {
  .gallery-header {
    height: 30px; }
  .gallery-carousel .slick-arrow.slick-next {
    right: 10px; }
  .gallery-carousel .slick-arrow.slick-prev {
    left: 10px; }
  .gallery-carousel-slide {
    padding: 30px 35px 20px 35px;
    border-top-width: 0;
    border-bottom-width: 0; }
  .gallery-footer-row--first {
    padding: 5px 0; } }

@media only screen and (min-width: 414px) {
  .gallery-footer-row--last:before {
    width: 38%; } }

@media only screen and (min-width: 568px) {
  .gallery-footer-row--last {
    display: none; } }

@media only screen and (min-width: 768px) {
  .gallery--hide-thumbs .gallery-footer {
    transform: translateY(98px); }
  .gallery-header-close__btn {
    font-size: 14px; }
  .gallery-carousel {
    border-top: 60px solid #263238;
    border-bottom: 60px solid #263238;
    transition: all 300ms ease; }
  .gallery-carousel-slide {
    border-bottom: 59px solid #263238; }
  .gallery-footer-row--last:before {
    display: none; }
  .gallery-thumbs {
    width: 100%;
    transform: none; }
    .gallery-thumbs .slick-list {
      overflow: hidden; }
  .gallery-footer {
    transition: all 300ms ease; } }

@media only screen and (min-width: 1024px) {
  .gallery-carousel {
    overflow: hidden; }
  .gallery-carousel-slide {
    height: 100%;
    border-top: 60px solid #263238;
    border-bottom: 60px solid #263238; }
  .gallery-thumbs .slick-slide {
    transition: all 300ms ease; }
    .gallery-thumbs .slick-slide:hover {
      opacity: 1; } }

.footer {
  position: relative;
  text-align: left;
  color: #455a64; }

.footer-block {
  position: relative; }
  .footer-block:before {
    content: '';
    width: 100%;
    height: 2px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #b0bec5; }
  .footer-block:after {
    content: '';
    width: 100%;
    height: 2px;
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: #b0bec5; }

.footer-info {
  padding-top: 50px; }

.footer__title {
  font-size: 18px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  letter-spacing: 3px;
  line-height: 16px;
  position: relative; }

.footer-info__text-title {
  margin-top: 20px;
  font-size: 16px;
  font-weight: 500;
  line-height: 20px; }

.footer-info__data {
  font-size: 15px;
  font-weight: 300; }
  .footer-info__data--email {
    font-size: 14px;
    color: #455a64;
    text-decoration: underline; }

.footer-address {
  margin-top: 50px; }

.footer-address-text {
  margin-top: 26px;
  font-size: 16px; }
  .footer-address-text p {
    line-height: 20px; }

.footer-news {
  margin-top: 50px; }

.footer-news__title {
  margin-top: 20px;
  font-size: 16px;
  line-height: 20px; }

.footer-news-form {
  position: relative;
  margin-top: 20px;
  display: flex; }
  .footer-news-form.error .footer-news-input__text {
    border-color: red; }

.footer-news-input__text {
  width: 70%;
  border: 1px solid #263238;
  height: 40px;
  border-radius: 5px;
  font-size: 14px;
  padding-left: 10px;
  background: transparent;
  font-family: "IBM Plex Serif";
  margin-bottom: 50px; }
  .footer-news-input__text::-webkit-input-placeholder {
    color: #263238; }
  .footer-news-input__text::-moz-placeholder {
    color: #263238; }
  .footer-news-input__text:-ms-input-placeholder {
    color: #263238; }
  .footer-news-input__text:-moz-placeholder {
    color: #263238; }

.footer-news-input__btn {
  width: 26%;
  margin-left: 10px; }

.footer-news-form-feedback {
  position: absolute;
  left: 0;
  top: 45px; }
  .footer-news-form-feedback p {
    font-size: 14px;
    font-weight: 700; }
  .footer-news-form-feedback a {
    display: none; }

.footer-copyright {
  margin: 30px auto;
  width: 100%; }

.footer-copyright__text {
  font-size: 10px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  letter-spacing: 2px; }

@media only screen and (min-width: 768px) {
  .footer-block {
    display: flex;
    justify-content: space-between; }
  .footer__title {
    font-size: 15px; }
  .footer-info__text-title {
    font-size: 14px; }
  .footer-info__data {
    font-size: 13px; }
    .footer-info__data--email {
      font-size: 12px; }
  .footer-address-text {
    font-size: 16px; }
  .footer-news__title {
    font-size: 14px; }
  .footer-news-input__text {
    width: 65%; }
  .footer-news-input__btn {
    width: 30%; }
  .footer-copyright__text {
    text-align: center; } }

@media only screen and (min-width: 1024px) {
  .footer-block {
    max-width: none; }
  .footer__title {
    font-size: 17px; }
  .footer-info {
    margin-left: 40px; }
  .footer-info__text-title {
    font-size: 15px; }
  .footer-info__data {
    font-size: 15px; }
    .footer-info__data--email {
      font-size: 13px; }
  .footer-address-text {
    font-size: 16px; }
  .footer-news {
    width: 30%;
    margin-right: 40px; }
  .footer-news__title {
    font-size: 16px; }
  .footer-news-input__text {
    width: 65%; }
  .footer-news-input__btn {
    width: 30%; } }

@media only screen and (min-width: 1440px) {
  .footer-news-input__text {
    width: 50%; }
  .footer-info {
    margin-left: 110px; } }

.newsletter-modal {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: fixed;
  z-index: 1000;
  display: none; }
  .newsletter-modal--open {
    display: block; }
  .newsletter-modal__overlay {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.55);
    top: 0;
    left: 0;
    position: absolute; }
  .newsletter-modal__wrapper {
    width: calc(100% - 40px);
    max-width: 388px;
    max-height: 552px;
    background: #fff;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute; }
  .newsletter-modal__close {
    width: 36px;
    height: 36px;
    top: 0;
    right: 0;
    position: absolute;
    background: url("/static/close.svg") no-repeat center center;
    background-size: 16px;
    cursor: pointer; }
  .newsletter-modal__image {
    width: 100%;
    height: 204px;
    background: url("/static/img_modal.jpeg") no-repeat center center;
    background-size: cover;
    position: relative; }
    .newsletter-modal__image:after {
      width: 100%;
      height: 100%;
      background: linear-gradient(201.59deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.25) 34%, rgba(216, 216, 216, 0) 100%);
      top: 0;
      left: 0;
      position: absolute; }
    .newsletter-modal__image--building {
      background-image: url("/static/img_modal_imovel.jpg"); }
    .newsletter-modal__image--error {
      background-image: url("/static/img_modal_erro.jpg"); }
    .newsletter-modal__image--success {
      background-image: url("/static/img_modal_sucesso.jpg"); }
  .newsletter-modal__title {
    padding: 20px 30px;
    color: #000;
    text-align: left;
    text-transform: none;
    font-weight: 500; }
  .newsletter-modal__text {
    padding: 0 30px 20px;
    text-align: left; }
    .newsletter-modal__text--big {
      line-height: 26px;
      padding-bottom: 40px;
      font-size: 18px;
      font-weight: 300;
      color: #455a64; }
  .newsletter-modal__form {
    padding: 0 30px 20px; }
  .newsletter-modal a {
    padding: 8px;
    margin: 20px 0;
    border: #213139 1px solid;
    border-radius: 5px;
    font-size: 14px;
    color: #455a64;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #213139;
    display: inline-block; }

.buildingsingle-contact {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  overflow-y: scroll;
  padding-bottom: 50px;
  border-top: 50px solid #fff;
  background: #eceff1;
  transition: all 300ms ease;
  opacity: 0;
  visibility: hidden; }
  .buildingsingle-contact.active {
    z-index: 100;
    opacity: 1;
    visibility: visible; }
    .buildingsingle-contact.active .buildingsingle-contact-form {
      padding-bottom: 50px; }
    .buildingsingle-contact.active + .buildingsingle-about-footer {
      display: none; }

.buildingsingle-contact-wrapper {
  display: block;
  width: 100%;
  height: 100%;
  padding: 40px 20px; }

.buildingsingle-contact-header-modal {
  display: flex;
  justify-content: space-between;
  align-items: center; }

.buildingsingle-contact__close {
  display: none;
  position: absolute;
  top: 20px;
  right: 20px;
  width: 25px;
  height: 25px;
  background: transparent;
  cursor: pointer; }
  .buildingsingle-contact__close:before, .buildingsingle-contact__close:after {
    content: '';
    display: block;
    width: 25px;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #263238;
    border-radius: 10px; }
  .buildingsingle-contact__close:before {
    transform: translate(-50%, -50%) rotate(45deg); }
  .buildingsingle-contact__close:after {
    transform: translate(-50%, -50%) rotate(-45deg); }

.buildingsingle-contact-header {
  padding-bottom: 20px;
  margin-bottom: 30px;
  text-align: center; }

.buildingsingle-contact-header-figure {
  position: relative;
  width: 75px;
  height: 75px;
  margin: 0 auto 10px auto;
  overflow: hidden;
  border-radius: 50%; }

.buildingsingle-contact-header__img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.buildingsingle-contact-header__title {
  font-size: 20px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  font-size: 20px;
  line-height: 23px;
  letter-spacing: 2px; }

.buildingsingle-contact-header-desc {
  font-size: 15px;
  line-height: 20px; }
  .buildingsingle-contact-header-desc p {
    color: #455a64; }
    .buildingsingle-contact-header-desc p a {
      color: #51beb1; }
    .buildingsingle-contact-header-desc p:first-child {
      margin: 10px 0 15px; }
    .buildingsingle-contact-header-desc p:nth-child(2) {
      padding: 5px 0 5px 30px;
      font-size: 20px;
      background: url("/static/icon-whatsapp-green.svg") left center no-repeat;
      background-size: 25px;
      display: inline-block; }
    .buildingsingle-contact-header-desc p:nth-child(3) {
      text-decoration: underline; }

.buildingsingle-contact-form {
  max-width: 300px;
  margin: auto; }

.buildingsingle-contact-form-group {
  width: 100%;
  margin-bottom: 20px;
  position: relative; }
  .buildingsingle-contact-form-group.error .buildingsingle-contact-form__text {
    border-color: red;
    color: red;
    margin-bottom: 20px; }
    .buildingsingle-contact-form-group.error .buildingsingle-contact-form__text::placeholder {
      color: red; }
  .buildingsingle-contact-form-group.error span {
    transform: unset;
    opacity: 1;
    z-index: 1; }
  .buildingsingle-contact-form-group span {
    transform: translateY(-100%);
    opacity: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    color: red;
    font-size: 12px;
    margin-left: 10px;
    z-index: -1; }

.buildingsingle-contact-form__text {
  display: block;
  height: 40px;
  width: 100%;
  margin: auto;
  border: 1px solid #90a4ae;
  padding: 0 10px;
  font-size: 14px;
  color: #455a64;
  background: transparent;
  font-family: "Montserrat";
  border-radius: 5px;
  transition: margin-bottom 0.25s; }
  .buildingsingle-contact-form__text--area {
    height: 120px;
    padding: 10px; }
  .buildingsingle-contact-form__text::placeholder {
    color: #90a4ae; }

.buildingsingle-contact-form-submit__btn {
  display: block;
  width: 100%; }

.buildingsingle-contact-form-feedback {
  margin-top: 20px; }

@media only screen and (min-width: 768px) {
  .buildingsingle-contact {
    margin-top: -150px;
    display: block;
    position: relative;
    width: 40%;
    margin-left: 5%;
    height: auto;
    overflow: visible;
    background: #eceff1;
    border: 0;
    border-radius: 3px;
    opacity: 1;
    visibility: visible; }
    .buildingsingle-contact--active {
      position: fixed;
      width: 100%;
      height: 100%; }
      .buildingsingle-contact--active .buildingsingle-contact-header-modal {
        display: flex; }
  .buildingsingle-contact-wrapper {
    display: block;
    padding: 0; }
  .buildingsingle-contact-header {
    padding: 20px;
    margin-bottom: 0; }
  .buildingsingle-contact-header-info {
    width: 37%;
    margin: auto;
    margin-left: 10px;
    font-size: 9px;
    color: #455a64; }
  .buildingsingle-contact-header__btn {
    width: 24%;
    margin: auto;
    margin-right: 90px; }
  .buildingsingle-contact-form {
    padding: 20px; } }

@media only screen and (min-width: 1024px) {
  .buildingsingle-contact-header-info {
    width: 42%;
    margin-left: 200px;
    font-size: 12px; }
  .buildingsingle-contact-header:after {
    content: '';
    width: 95%;
    height: 2px;
    display: block;
    position: absolute;
    top: 250px;
    left: 8px; } }

@media only screen and (min-width: 1440px) {
  .buildingsingle-contact-wrapper {
    right: 75px;
    height: 100%; } }

.success {
  display: flex;
  justify-content: center; }

.ButtonContainer {
  width: 60px;
  height: 60px;
  border-radius: 30px;
  outline: none;
  position: fixed;
  right: -100px;
  bottom: 40px;
  transition: right 0.5s;
  cursor: pointer;
  background: #263238 url("/static/arrow-top.svg") center no-repeat;
  z-index: 101; }

.ButtonTransition {
  right: 20px; }

@media only screen and (max-width: 767px) {
  .ButtonContainer {
    width: 40px;
    height: 40px;
    border-radius: 20px;
    bottom: 90px;
    background: #263238 url("/static/arrow-top.svg") center no-repeat;
    background-size: 65% auto; } }

.notfound-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60vh; }

.notfound__text {
  text-align: left;
  font-family: "IBM Plex Serif";
  font-size: 18px;
  font-weight: 500;
  line-height: 23px; }

.thankyou-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 80vh; }

.thankyou-text,
.thankyou__text {
  text-align: left;
  font-family: "IBM Plex Serif";
  font-size: 18px;
  font-weight: 500;
  line-height: 23px; }

.hero-limit {
  max-width: 100%; }

.hero-wrapper {
  font-family: "Montserrat";
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end; }
  .hero-wrapper .hero-slide {
    height: 90vh; }
  .hero-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .hero-wrapper .hero-content {
    position: absolute;
    z-index: 55;
    top: unset;
    transform: unset;
    bottom: 40px;
    left: 0;
    width: 100%; }
  .hero-wrapper h2 {
    text-transform: uppercase;
    font-size: 60px;
    line-height: 77px;
    font-weight: 700;
    margin-bottom: 30px; }
  .hero-wrapper .hero-text {
    font-size: 24px;
    line-height: 27px;
    margin-bottom: 45px; }
  .hero-wrapper .call-to-action-contact,
  .hero-wrapper .whatsapp-contact {
    text-align: center;
    margin-bottom: 30px; }
    .hero-wrapper .call-to-action-contact a,
    .hero-wrapper .whatsapp-contact a {
      font-size: 24px;
      line-height: 44px;
      padding: 14px 20px;
      color: white;
      text-align: center;
      text-decoration: none;
      display: inline-flex;
      border-radius: 4px;
      border: 1px solid white; }
      .hero-wrapper .call-to-action-contact a:before,
      .hero-wrapper .whatsapp-contact a:before {
        display: inline-block;
        content: '';
        width: 44px;
        height: 44px;
        overflow: hidden;
        background: url("/static/icon-whatsapp-color.svg") center center no-repeat;
        background-size: contain;
        transition: none;
        vertical-align: middle;
        margin-left: 20px;
        float: right;
        order: 2; }
      .hero-wrapper .call-to-action-contact a span,
      .hero-wrapper .whatsapp-contact a span {
        order: 1; }
  .hero-wrapper .call-to-action-contact a:before {
    content: none; }
  .hero-wrapper .btn {
    display: inline-block;
    width: auto;
    padding: 0 20px;
    cursor: pointer;
    border: 1px solid #51beb1;
    background-color: #51beb1;
    color: white;
    font-size: 14px;
    line-height: 40px;
    font-weight: 700;
    font-family: "Montserrat"; }

@media (max-width: 1023px) {
  .hero-wrapper {
    align-items: center; }
    .hero-wrapper .hero-content {
      bottom: 20px; }
    .hero-wrapper .hero-slide {
      height: 100vh; }
    .hero-wrapper h2 {
      font-size: 50px;
      line-height: 65px; }
    .hero-wrapper .whatsapp-contact a {
      flex-direction: column;
      justify-content: center;
      font-size: 20px;
      line-height: 27px; }
      .hero-wrapper .whatsapp-contact a:before {
        order: 0;
        margin: 0 0 10px;
        width: 100%; }
      .hero-wrapper .whatsapp-contact a span {
        order: 1; } }

.buildingsingle {
  margin-top: 70px; }

.buildingsingle-hero {
  position: relative;
  margin-bottom: 40px; }
  .buildingsingle-hero .slick-dots {
    right: auto;
    left: 50%;
    bottom: 30px;
    transform: translateX(-50%); }

.buildingsingle-hero-limit {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  z-index: 3; }

.buildingsingle-hero__title {
  display: block;
  padding-bottom: 10px;
  text-align: center;
  position: relative;
  color: #fff;
  text-transform: uppercase;
  font-family: "IBM Plex Serif";
  font-size: 24px;
  font-weight: 600;
  line-height: 30px; }

.buildingsingle-hero__subtitle {
  display: block;
  color: #fff;
  font-size: 14px;
  letter-spacing: 3px;
  text-transform: uppercase;
  line-height: 17px;
  padding-bottom: 10px; }

.buildingsingle-hero-item {
  position: relative; }
  .buildingsingle-hero-item:nth-child(2) {
    display: none; }

.buildingsingle-hero-item__btn {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3; }

.buildingsingle-hero-player {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scale(1.25); }

.buildingsingle-hero-item-image {
  position: relative;
  height: 100%; }
  .buildingsingle-hero-item-image:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.8)); }

.buildingsingle-hero-item-image__img {
  position: relative; }
  .buildingsingle-hero-item-image__img--desktop {
    display: none !important; }
  .buildingsingle-hero-item-image__img--mobile {
    display: block !important; }

.buildingsingle-hero__btn {
  padding: 10px 50px;
  border: #fff 1px solid;
  border-radius: 3px;
  margin-top: 15px;
  position: relative;
  font-size: 14px;
  letter-spacing: 2px;
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
  background-color: transparent; }

.buildingsingle-hero__back {
  padding: 10px 25px;
  border: #90a4ae 1px solid;
  border-radius: 3px;
  font-size: 14px;
  letter-spacing: 2px;
  font-weight: 600;
  color: #90a4ae;
  text-transform: uppercase;
  background: #fff;
  margin-top: -20px;
  position: relative;
  float: left; }
  @media only screen and (max-width: 767px) {
    .buildingsingle-hero__back {
      margin-top: 20px; } }

.buildingsingle-hero__tour {
  width: 72px;
  height: 72px;
  border-radius: 36px;
  background: #51beb1;
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
  top: 50px;
  right: 50px;
  position: absolute; }
  .buildingsingle-hero__tour span {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    color: #263238;
    display: block; }
  .buildingsingle-hero__tour big {
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    color: #263238;
    display: block; }
  @media only screen and (max-width: 767px) {
    .buildingsingle-hero__tour {
      width: 52px;
      height: 52px;
      border-radius: 26px;
      top: 20px;
      right: 20px; } }

.buildingsingle-beaches {
  margin-top: 50px; }

.buildingsingle-gallery {
  margin-top: 50px; }

.buildingsingle-info {
  margin-bottom: 15px;
  text-align: left;
  font-size: 15px;
  color: #455a64;
  line-height: 22px; }

.buildingsingle-info-col {
  width: 100%;
  margin-bottom: 10px; }

.buildingsingle-info-item {
  position: relative;
  display: inline-block; }
  .buildingsingle-info-item:not(:first-child) {
    margin-right: 5px;
    padding-right: 10px; }
    .buildingsingle-info-item:not(:first-child):after {
      content: '|';
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      font-family: "Montserrat";
      font-weight: 500; }
  .buildingsingle-info-item strong {
    font-weight: 600; }
  .buildingsingle-info-item--rent {
    font-size: 18px;
    font-weight: 600;
    color: #51beb1;
    font-family: "IBM Plex Serif";
    display: block; }
  .buildingsingle-info-item:last-child {
    margin-right: 0 !important;
    padding-right: 0 !important; }
    .buildingsingle-info-item:last-child:after {
      display: none !important; }

.buildingsingle-info__ref {
  padding: 10px 25px;
  border-radius: 3px;
  margin-top: 15px;
  background: #51beb1;
  color: #fff;
  display: inline-block; }

.buildingsingle-info__values {
  margin-top: 20px;
  font-size: 18px;
  font-weight: 600;
  font-family: "IBM Plex Serif"; }

.buildingsingle-about {
  position: relative;
  margin-bottom: 40px;
  text-align: left; }

.buildingsingle-about-info {
  margin-bottom: 40px; }

.buildingsingle-about-info__title {
  position: relative;
  margin-bottom: 20px;
  font-size: 20px;
  color: #51beb1;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px;
  text-transform: uppercase;
  /* &:after {
    content: '';
    width: 100%;
    height: 2px;
    display: block;
    position: absolute;
    bottom: -10px;
    left: -20px;
    padding-right: 20px;
    background-color: color('blue-light');
    box-sizing: content-box;
  } */ }
  .buildingsingle-about-info__title--details {
    margin-top: 50px; }
    .buildingsingle-about-info__title--details .buildingsingle-about-info__title {
      text-transform: none; }

.buildingsingle-about-info-content {
  color: #455a64;
  font-size: 15px; }
  .buildingsingle-about-info-content p:not(:last-child) {
    margin-bottom: 20px; }
  .buildingsingle-about-info-content iframe {
    display: block;
    margin: 0 0 20px 0;
    max-width: 100%; }

.buildingsingle-about-info-item {
  list-style: circle;
  padding-top: 5px; }

.buildingsingle-about-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 20px;
  z-index: 20;
  border-top: 1px solid #eceff1;
  background: #fff;
  transform: translateY(100%);
  transition: all 300ms ease; }
  .buildingsingle-about-footer.active {
    transform: translateY(0); }

.buildingsingle-about-footer__btn {
  display: block;
  width: 100%; }

.buildingsingle-grid-row:not(:last-child) {
  margin-bottom: 40px; }

.buildingsingle-grid-cols.limit-grid,
.buildingsingle-grid-wrapper.limit-grid {
  padding: 0; }

.buildingsingle-grid-col {
  margin-bottom: 40px; }

.buildingsingle-grid-content {
  padding: 0 20px;
  text-align: left; }
  .buildingsingle-grid-content h1,
  .buildingsingle-grid-content h2,
  .buildingsingle-grid-content h3,
  .buildingsingle-grid-content h4,
  .buildingsingle-grid-content h5,
  .buildingsingle-grid-content h6 {
    margin-bottom: 40px;
    font-family: "IBM Plex Serif";
    font-size: 32px;
    font-weight: 500;
    text-align: center; }
  .buildingsingle-grid-content p {
    font-size: 22px;
    font-weight: 300;
    margin-bottom: 40px; }

.buildingsingle-grid__img {
  display: block; }
  .buildingsingle-grid__img--desktop {
    display: none; }

.buildingsingle-grid-figure {
  position: relative;
  background: #263238;
  display: block; }
  .buildingsingle-grid-figure img {
    transition: all 300ms ease; }
  .buildingsingle-grid-figure:before {
    width: 100%;
    height: 100%;
    content: '';
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
    background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
    background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    transition: all 300ms ease; }
    @media only screen and (max-width: 767px) {
      .buildingsingle-grid-figure:before {
        background: -webkit-linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
        background: -o-linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
        background: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
        opacity: 1; } }
  .buildingsingle-grid-figure span {
    padding: 10px 25px;
    border: #51beb1 1px solid;
    border-radius: 3px;
    margin-left: -107px;
    font-size: 14px;
    background: #51beb1;
    color: #fff;
    text-transform: uppercase;
    bottom: 50px;
    left: 50%;
    position: absolute;
    opacity: 0;
    transition: all 300ms ease; }
    @media only screen and (max-width: 767px) {
      .buildingsingle-grid-figure span {
        width: 52px;
        height: 52px;
        border: 0;
        border-radius: 26px;
        background: #51beb1 url("/static/plus.svg") center no-repeat;
        font-size: 0;
        top: 10px;
        bottom: auto;
        right: 10px;
        left: auto;
        opacity: 1; } }
  .buildingsingle-grid-figure:hover:before {
    opacity: 1; }
  .buildingsingle-grid-figure:hover span {
    opacity: 1; }

.buildingsingle-others {
  margin-top: 40px;
  background-color: #eceff1;
  text-align: left;
  padding-bottom: 60px; }

.buildingsingle-others-header {
  padding-top: 40px; }
  .buildingsingle-others-header h2 {
    font-size: 30px;
    font-weight: 500;
    font-family: "IBM Plex Serif";
    line-height: 40px; }
  .buildingsingle-others-header__text {
    font-size: 16px;
    margin-top: 20px;
    color: #455a64; }

.buildingsingle-others-carousel .slick-dots {
  bottom: -40px;
  right: auto;
  left: 50%;
  transform: translateX(-50%); }
  .buildingsingle-others-carousel .slick-dots li {
    margin: 0 10px; }
    .buildingsingle-others-carousel .slick-dots li button {
      background-color: #fff; }
  .buildingsingle-others-carousel .slick-dots .slick-active button {
    background-color: #90a4ae; }

.buildingsingle-others-hero-item--mobile {
  display: block !important; }

.buildingsingle-others-hero-item--desktop {
  display: none !important; }

.buildingsingle-related {
  position: relative;
  width: 100%;
  margin-top: 40px;
  margin-bottom: 90px;
  overflow: hidden; }

.buildingsingle-sticky {
  position: fixed;
  top: 50px;
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 5;
  transition: all 300ms ease;
  opacity: 0;
  visibility: hidden; }
  .buildingsingle-sticky.active {
    border-bottom: 1px solid #eceff1;
    opacity: 1;
    visibility: visible; }

.buildingsingle-sticky-wrapper {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  text-align: left;
  padding-top: 20px;
  padding-bottom: 20px; }

.buildingsingle-sticky__title {
  width: 100%;
  margin-bottom: 5px;
  font-size: 13px; }
  .buildingsingle-sticky__title strong {
    margin-right: 10px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 500; }

.buildingsingle-sticky-items {
  display: flex; }

.buildingsingle-sticky-item {
  position: relative;
  font-size: 12px; }
  .buildingsingle-sticky-item:not(:first-child) {
    margin-left: 14px; }
    .buildingsingle-sticky-item:not(:first-child):before {
      content: '|';
      display: block;
      position: absolute;
      top: 50%;
      left: -10px;
      transform: translateY(-50%); }

.buildingsingle-sticky-contact__btn {
  position: absolute;
  top: 50%;
  right: 20px;
  max-width: 300px;
  transform: translateY(-50%); }

@media only screen and (max-width: 320px) {
  .buildingsingle-hero-item__title {
    font-size: 28px; }
  .buildingsingle-hero-item-text {
    font-size: 14px; } }

@media only screen and (max-width: 414px) {
  .buildingsingle-about-info-content iframe {
    height: 188px; } }

@media only screen and (min-width: 768px) {
  .buildingsingle {
    margin-bottom: 110px; }
    .buildingsingle:before {
      content: '';
      display: block;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(38, 50, 56, 0.8);
      z-index: 2;
      transition: all 300ms ease;
      opacity: 0;
      visibility: hidden; }
    .buildingsingle--header-hide .buildingsingle-sticky {
      top: 0; }
    .buildingsingle--header-hide.buildingsingle--contact-fixed .buildingsingle-contact {
      border-top-width: 76px; }
    .buildingsingle--contact-fixed:before {
      opacity: 1;
      visibility: visible; }
    .buildingsingle--contact-fixed .buildingsingle-contact {
      position: fixed;
      left: auto;
      right: 4%;
      max-height: 100%;
      border-top: 146px solid #fff;
      max-width: 360px;
      overflow-x: hidden;
      overflow-y: auto;
      z-index: 4;
      background: #fff; }
    .buildingsingle--contact-fixed .buildingsingle-contact__close {
      display: block; }
  .buildingsingle-beaches {
    margin-top: 100px; }
  .buildingsingle-hero-player {
    display: block; }
  .buildingsingle-hero-item {
    overflow: hidden; }
    .buildingsingle-hero-item:before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 2;
      width: 100%;
      height: 60%;
      z-index: 2;
      background: linear-gradient(transparent, rgba(0, 0, 0, 0.8)); }
    .buildingsingle-hero-item:after {
      display: block;
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: transparent; }
  .buildingsingle-hero-item-image:before {
    height: 60%; }
  .buildingsingle-hero-item-image__img--desktop {
    display: block !important;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .buildingsingle-hero-item-image__img--mobile {
    display: none !important; }
  .buildingsingle-carousel .slick-dots {
    right: 40px; }
  .buildingsingle-hero-limit {
    top: auto;
    left: 50%;
    transform: translateX(-50%);
    bottom: 60px;
    max-width: 620px; }
  .buildingsingle-hero__title {
    font-size: 22px;
    padding: 0;
    line-height: 28px; }
  .buildingsingle-hero__subtitle {
    font-size: 10px; }
  .buildingsingle-info {
    display: flex; }
  .buildingsingle-info-col {
    width: 55%; }
  .buildingsingle-about {
    display: flex;
    align-items: flex-start; }
  .buildingsingle-about-block {
    width: 55%;
    padding-top: 15px;
    border-top: #263238 1px solid; }
  .buildingsingle-about-info__title:after {
    width: 77%;
    left: -125px;
    height: 1px; }
  .buildingsingle-about-info--details__title:after {
    width: 60%;
    left: 0;
    height: 1px; }
  .buildingsingle-about-footer {
    display: none; }
  .buildingsingle-grid__img--mobile {
    display: none; }
  .buildingsingle-grid__img--desktop {
    display: block; }
  .buildingsingle-gallery {
    margin-top: 110px; }
  .buildingsingle-others {
    background-color: #fff; }
  .buildingsingle-others-carousel {
    width: 90%;
    margin: auto; }
    .buildingsingle-others-carousel > .slick-slider > .slick-arrow.slick-prev {
      left: -30px;
      margin-left: 0;
      background: url("/static/arrow-left-dark.svg") no-repeat; }
    .buildingsingle-others-carousel > .slick-slider > .slick-arrow.slick-next {
      right: -30px;
      margin-right: 0;
      left: auto;
      background: url("/static/arrow-right-dark.svg") no-repeat; }
  .buildingsingle-others-header {
    display: flex;
    justify-content: center; }
    .buildingsingle-others-header h2 {
      width: 57%;
      font-size: 30px;
      font-weight: 500;
      font-family: "IBM Plex Serif";
      line-height: 40px; }
    .buildingsingle-others-header__text {
      font-size: 16px;
      margin-top: 20px;
      color: #455a64; }
  .buildingsingle-others-hero-item {
    width: 88%;
    margin: auto;
    margin-top: 40px; }
  .buildingsingle-others-slide {
    padding-right: 20px; } }

@media only screen and (min-width: 1024px) {
  .buildingsingle--contact-fixed .buildingsingle-contact {
    right: 6%; }
  .buildingsingle-hero-limit {
    max-width: 790px; }
  .buildingsingle-hero-item {
    height: 75vh; }
  .buildingsingle-hero__title {
    font-size: 30px;
    line-height: 38px; }
  .buildingsingle-hero__subtitle {
    margin-top: 20px;
    font-size: 14px; }
  .buildingsingle-info-block {
    margin-left: 40px; }
  .buildingsingle-about {
    margin-bottom: 100px; }
  .buildingsingle-about-info p {
    width: 90%; }
  .buildingsingle-about-info-items {
    display: flex;
    flex-wrap: wrap;
    width: 100%; }
  .buildingsingle-about-info-item {
    list-style: circle;
    padding-top: 5px;
    width: 45%;
    margin-left: 20px; }
  .buildingsingle-grid-row {
    margin-bottom: 60px; }
    .buildingsingle-grid-row--image_content {
      display: flex;
      align-items: flex-start;
      justify-content: flex-start; }
      .buildingsingle-grid-row--image_content.buildingsingle-grid-row--showfirst-image {
        flex-direction: row-reverse; }
        .buildingsingle-grid-row--image_content.buildingsingle-grid-row--showfirst-image .buildingsingle-grid-content {
          margin-right: 15%; }
      .buildingsingle-grid-row--image_content.buildingsingle-grid-row--showfirst-content .buildingsingle-grid-content {
        margin-left: 15%; }
      .buildingsingle-grid-row--image_content .buildingsingle-grid-figure {
        width: 50%; }
      .buildingsingle-grid-row--image_content .buildingsingle-grid-content {
        width: 35%;
        padding: 0 40px 40px 40px; }
  .buildingsingle-grid-cols {
    display: flex;
    align-items: flex-start; }
  .buildingsingle-grid-col {
    display: flex;
    flex-direction: column;
    width: 46%;
    margin-bottom: 0; }
    .buildingsingle-grid-col--showfirst-image {
      flex-direction: column-reverse; }
      .buildingsingle-grid-col--showfirst-image .buildingsingle-grid-figure {
        margin-bottom: 40px; }
    .buildingsingle-grid-col--showfirst-content .buildingsingle-grid-content {
      margin-bottom: 0; }
    .buildingsingle-grid-col--left .buildingsingle-grid-content h1,
    .buildingsingle-grid-col--left .buildingsingle-grid-content h2,
    .buildingsingle-grid-col--left .buildingsingle-grid-content h3,
    .buildingsingle-grid-col--left .buildingsingle-grid-content h4,
    .buildingsingle-grid-col--left .buildingsingle-grid-content h5,
    .buildingsingle-grid-col--left .buildingsingle-grid-content h6 {
      margin-left: 30%;
      text-align: right; }
    .buildingsingle-grid-col--right {
      margin-left: 8%; }
      .buildingsingle-grid-col--right .buildingsingle-grid-content {
        text-align: left; }
        .buildingsingle-grid-col--right .buildingsingle-grid-content h1,
        .buildingsingle-grid-col--right .buildingsingle-grid-content h2,
        .buildingsingle-grid-col--right .buildingsingle-grid-content h3,
        .buildingsingle-grid-col--right .buildingsingle-grid-content h4,
        .buildingsingle-grid-col--right .buildingsingle-grid-content h5,
        .buildingsingle-grid-col--right .buildingsingle-grid-content h6 {
          text-align: left;
          margin-right: 30%; }
  .buildingsingle-grid-content {
    padding: 0; }
    .buildingsingle-grid-content h2 {
      width: 70%; }
    .buildingsingle-grid-content p:last-child {
      margin-bottom: 0; }
  .buildingsingle-others-header {
    justify-content: flex-start; }
    .buildingsingle-others-header h2 {
      width: 47%; }
  .buildingsingle-others-carousel {
    width: 100%; }
  .buildingsingle-others-hero-item {
    max-width: 1200px;
    width: 100%;
    display: flex !important;
    justify-content: center; }
  .buildingsingle-sticky {
    top: 70px; }
  .buildingsingle-sticky-item {
    font-size: 14px; }
  .buildingsingle-sticky-contact__btn {
    right: 0; } }

@media only screen and (min-width: 1440px) {
  .buildingsingle-about {
    margin-bottom: 140px; }
  .buildingsingle-about-info__title:after {
    width: 87%;
    left: -165px;
    height: 1px; } }

.about {
  position: relative;
  margin-top: 70px;
  overflow: hidden; }

.about-infos {
  text-align: left;
  position: relative;
  max-width: 1100px; }
  .about-infos h1 {
    position: relative;
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 28px;
    color: #263238;
    font-family: "IBM Plex Serif";
    font-weight: 500;
    line-height: 40px;
    text-transform: uppercase; }
    .about-infos h1:after {
      content: '';
      display: block;
      position: absolute;
      top: 60px;
      left: -20px;
      padding-right: 20px;
      width: 100%;
      height: 1px;
      background-color: #455a64;
      box-sizing: content-box; }

.about-infos-text {
  color: #455a64;
  font-size: 15px; }

.about-infos-text p {
  margin-top: 20px; }

.about-carousel {
  margin-top: 50px;
  background-color: #eceff1;
  padding-bottom: 70px; }
  .about-carousel .slick-list {
    overflow: visible;
    width: 80%;
    margin: auto;
    max-width: 1200px; }
  .about-carousel .slick-slide {
    transform: scale(0.8);
    transition: all 300ms ease; }
  .about-carousel .slick-slide.slick-active.slick-current {
    transform: scale(1); }

.about-carousel-slide {
  padding-top: 50px;
  font-size: 15px;
  letter-spacing: 0.3;
  color: #455a64;
  text-align: left;
  width: 90%;
  margin: auto; }
  .about-carousel-slide h3 {
    font-size: 24px;
    margin-top: 20px;
    font-family: "IBM Plex Serif";
    font-weight: 500;
    position: relative;
    margin-bottom: 20px;
    color: #263238; }

.about-professionals {
  margin-top: 40px;
  background-color: #eceff1;
  padding-bottom: 40px; }

.about-professional-header {
  padding-top: 50px;
  font-size: 13px;
  color: #455a64;
  text-align: left; }

.about-professional-header__title {
  position: relative;
  margin-bottom: 20px;
  font-size: 28px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  color: #263238; }

.about-professional-carousel {
  margin-top: 40px; }
  .about-professional-carousel .slick-list {
    overflow: visible;
    width: 90%; }
  .about-professional-carousel .slick-slide {
    transform: scale(0.8);
    transition: all 300ms ease; }
  .about-professional-carousel .slick-slide.slick-active.slick-current {
    transform: scale(1); }

.about-professional-carousel-slide {
  margin-top: 20px;
  width: 94%; }

.about-professional-carousel-slide__img {
  width: 100%;
  margin: 0; }

.about-professional-carousel-slide-text {
  padding: 20px;
  text-align: left;
  font-size: 13px;
  background-color: #fff; }
  .about-professional-carousel-slide-text h3 {
    margin-bottom: 5px;
    font-size: 15px;
    font-family: "IBM Plex Serif";
    font-weight: 500; }
  .about-professional-carousel-slide-text h4 {
    font-weight: 500; }
  .about-professional-carousel-slide-text p:last-child {
    padding-bottom: 20px; }

@media only screen and (min-width: 768px) {
  .about-figure {
    position: relative;
    z-index: 2; }
  .about-infos {
    position: relative;
    padding: 0 20px;
    margin-top: -100px;
    margin-bottom: 70px;
    text-align: left;
    z-index: 3; }
    .about-infos h1 {
      margin-top: 0; }
      .about-infos h1:after {
        left: 0;
        width: 100%;
        padding: 0; }
  .about-infos-wrapper {
    padding: 40px;
    background-color: #fff; }
  .about-infos-text {
    font-size: 11px; }
    .about-infos-text h3,
    .about-infos-text p {
      width: 32%;
      line-height: 16px;
      font-size: 12px; }
      .about-infos-text h3:not(:first-child),
      .about-infos-text p:not(:first-child) {
        padding-left: 20px; }
      .about-infos-text h3:nth-child(4),
      .about-infos-text p:nth-child(4) {
        padding-left: 0; }
      .about-infos-text h3:nth-child(5),
      .about-infos-text p:nth-child(5) {
        margin-top: 0; }
  .about-infos-text-block {
    display: flex;
    flex-wrap: wrap; }
  .about-carousel {
    position: relative;
    margin: 0;
    padding-right: 40px;
    justify-content: center; }
    .about-carousel:before {
      content: '';
      display: block;
      position: absolute;
      bottom: 100%;
      left: 0;
      width: 100%;
      height: 1000px;
      background-color: #eceff1; }
    .about-carousel .slick-list {
      overflow: hidden;
      width: 100%; }
    .about-carousel .slick-slide {
      transform: scale(1); }
  .about-carousel-slide {
    margin: 0;
    padding-top: 0;
    font-size: 11px;
    width: 40%;
    margin-left: 20px;
    padding-right: 20px; }
    .about-carousel-slide h3 {
      font-size: 21px; }
  .about-professionals-wrapper.limit-grid {
    width: 90%; }
  .about-professional-header {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%; }
  .about-professional-header__title {
    width: 45%;
    margin-bottom: 0; }
  .about-professional-carousel {
    width: 100%;
    margin-top: 40px; }
    .about-professional-carousel .slick-list {
      overflow: visible;
      width: 100%;
      margin: auto; }
    .about-professional-carousel .slick-slide {
      width: 25% !important;
      transform: scale(1); }
    .about-professional-carousel .slick-track {
      width: 100% !important; }
  .about-professional-carousel-slide {
    padding-right: 20px; }
  .about-professional-carousel-slide-figure {
    width: 100%; }
  .about-professional-carousel-slide-text {
    font-size: 13px; }
    .about-professional-carousel-slide-text h3 {
      font-size: 16px; }
    .about-professional-carousel-slide-text p {
      word-break: break-word; }
      .about-professional-carousel-slide-text p:last-child {
        padding-bottom: 10px; } }

@media only screen and (min-width: 1024px) {
  .about-infos {
    max-width: 100%;
    padding: 0; }
    .about-infos h1 {
      margin-left: 40px; }
  .about-infos-text-block {
    margin-left: 40px; }
  .about-infos-text {
    font-size: 15px;
    display: flex;
    margin-right: 40px; }
    .about-infos-text p:not(:first-child),
    .about-infos-text h3:not(:first-child) {
      padding-left: 60px; }
    .about-infos-text p:nth-child(4),
    .about-infos-text h3:nth-child(4) {
      padding-left: 0; }
  .about-carousel {
    padding-right: 0; }
    .about-carousel .slick-list {
      width: 100%; }
    .about-carousel .slick-slide:not(:last-child) .about-carousel-slide {
      padding-right: 20px; }
  .about-carousel-slide {
    font-size: 13px;
    width: 20%;
    margin-left: 0;
    padding-right: 0; }
  .about-carousel-slide-figure {
    position: relative;
    width: 100%;
    height: 215px;
    overflow: hidden; }
  .about-professionals {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: inherit; }
  .about-professional-header {
    width: 100%;
    justify-content: flex-start; }
  .about-professional-header__title {
    width: 25%;
    line-height: 40px;
    font-size: 32px; }
  .about-professional-header-text p {
    margin-left: 20px; }
  .about-professional-carousel .slick-slide {
    width: 25% !important; } }

@media only screen and (min-width: 1440px) {
  .about-infos-text p,
  .about-infos-text h3 {
    line-height: 20px;
    font-size: 15px; }
  .about-carousel h3 {
    font-size: 28px; } }

.blog {
  padding-top: 100px;
  overflow: hidden;
  margin-bottom: 50px; }

.blog-hero .hero-wrapper.limit-grid {
  padding: 0; }

.blog-hero .slick-slider {
  width: 100%; }

.blog-hero .hero-wrapper .hero__title {
  font-size: 24px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 1.3em;
  position: relative;
  margin: 0 100px; }

.blog-hero .hero-wrapper .hero-text {
  font-size: 20px;
  font-weight: 400;
  font-family: "IBM Plex Serif";
  margin-bottom: 45px; }

.blog-hero .hero-wrapper .hero-slide {
  height: auto; }
  .blog-hero .hero-wrapper .hero-slide .hero-limit {
    padding: 0 100px; }

@media (max-width: 1023px) {
  .blog-hero .hero-wrapper .hero-slide {
    height: auto; }
    .blog-hero .hero-wrapper .hero-slide .hero-limit {
      padding: 0 20px; } }

.blog-header {
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
  font-size: 14px;
  color: #263238; }

.blog-header__title {
  font-size: 24px;
  margin-bottom: 10px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 1.3em;
  position: relative; }

.blog-posts {
  padding: 20px 0; }
  .blog-posts--small {
    padding-bottom: 0; }
  .blog-posts--big {
    padding-top: 0; }

.blog-posts-post {
  width: 100%;
  margin-bottom: 20px;
  background: #fff; }

.blog-posts-post__btn {
  display: block; }

.blog-posts-post-col {
  text-align: left;
  padding: 20px;
  color: #455a64;
  display: flex;
  flex-direction: column; }

.blog-posts-post__cat {
  margin-bottom: 10px;
  text-transform: uppercase;
  font-size: 15px; }

.blog-posts-post__title {
  font-family: "IBM Plex Serif";
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3em; }

.blog-posts-post-excerpt {
  display: none;
  margin-top: 20px;
  font-size: 15px; }

.blog-posts-post-button {
  width: 130px;
  padding: 12px 10px;
  margin-top: 15px;
  border: 1px solid;
  border-radius: 5px;
  font-size: 14px;
  color: #4e4e56;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px; }

.blog__btn {
  max-width: 370px;
  margin: 0 auto; }

@media only screen and (min-width: 768px) {
  .blog-header {
    display: flex;
    align-items: flex-end;
    align-items: center;
    text-align: left;
    padding: 40px 15%; }
  .blog-header__title {
    width: 50%;
    padding-right: 20px;
    margin-bottom: 0;
    text-align: right;
    text-transform: uppercase; }
    .blog-header__title--full {
      width: 100%;
      padding: 0;
      text-align: center; }
  .blog-header__subtitle {
    width: 50%;
    padding-left: 20px; }
  .blog-posts-post__btn {
    display: flex;
    align-items: center; }
  .blog-posts-post-figure {
    width: 40%;
    height: 260px;
    background-size: cover;
    background-position: center;
    overflow: hidden; }
  .blog-posts-post-col {
    width: 60%;
    height: 260px; }
  .blog-posts-post__title {
    font-size: 22px; }
  .blog-posts-post-excerpt {
    display: block;
    width: 70%; } }

@media only screen and (min-width: 1024px) {
  .blog-hero {
    position: relative; }
    .blog-hero:before {
      display: block;
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 50%;
      background: #eceff1; }
  .blog-posts {
    padding: 70px 0 30px 0; }
    .blog-posts--small {
      background: #eceff1; }
      .blog-posts--small .blog-posts-wrapper {
        display: flex;
        align-items: flex-start; }
      .blog-posts--small .blog-posts-post {
        width: 48%;
        margin-bottom: 0; }
        .blog-posts--small .blog-posts-post:nth-child(2n + 2) {
          margin-left: 4%; }
      .blog-posts--small .blog-posts-post__title {
        font-size: 24px; }
    .blog-posts--big .blog-posts-post:not(:last-child) {
      margin-bottom: 60px; }
  .blog-posts-post--small .blog-posts-post__title {
    font-size: 24px; }
  .blog-posts-post__title {
    font-size: 32px; }
  .blog-posts-post-excerpt {
    width: 80%; }
  .blog-posts-post-button {
    margin-top: auto; } }

.blogsingle {
  padding-top: 70px; }

.blogsingle-header {
  margin-bottom: 20px;
  padding-top: 20px; }

.blogsingle-header__title {
  margin: 0 auto 30px auto;
  font-size: 18px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 1.3em; }

.blogsingle-header__subtitle {
  margin: 0 auto 40px auto;
  font-size: 18px;
  line-height: 1.3em; }

.blogsingle-header__cats {
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 3px; }
  .blogsingle-header__cats span {
    margin: 0 10px; }

.blogsingle-featured {
  display: block;
  width: 100%;
  margin-bottom: 30px; }

.blogsingle-featured__img {
  display: block;
  width: 100%;
  height: auto; }

.blogsingle-content {
  margin-bottom: 30px;
  color: #455a64;
  text-align: left; }
  .blogsingle-content > h1,
  .blogsingle-content > h2,
  .blogsingle-content > h3,
  .blogsingle-content > h4,
  .blogsingle-content > h5,
  .blogsingle-content > h6 {
    margin-bottom: 20px;
    font-family: "IBM Plex Serif";
    font-weight: 500;
    font-size: 18px; }
  .blogsingle-content > p,
  .blogsingle-content > ul li,
  .blogsingle-content > ol li {
    margin-bottom: 20px;
    line-height: 1.6em; }
  .blogsingle-content > ul {
    margin-bottom: 20px;
    padding-left: 20px; }
  .blogsingle-content > ul li,
  .blogsingle-content > ol li {
    list-style: inside; }
  .blogsingle-content blockquote {
    margin-bottom: 20px;
    font-family: "IBM Plex Serif";
    font-weight: 300;
    font-size: 14px; }
    .blogsingle-content blockquote p:last-child {
      margin-bottom: 0; }
  .blogsingle-content img {
    width: auto;
    max-width: 950px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    display: block; }
    .blogsingle-content img.alignleft {
      margin-left: 125px;
      margin-right: 20px;
      float: left; }
    .blogsingle-content img.alignright {
      margin-left: 20px;
      margin-right: 125px;
      float: right; }
  .blogsingle-content iframe {
    display: block;
    width: 100%;
    height: 200px; }
  .blogsingle-content .wp-caption {
    width: auto !important;
    margin: 0 auto 20px; }
  .blogsingle-content .wp-caption-text {
    padding: 5px 0;
    font-weight: 300;
    font-size: 14px;
    text-align: center; }
  .blogsingle-content .building__image {
    width: 353px;
    height: 353px;
    margin-bottom: 0; }

.blogsingle-other {
  background-color: #eceff1;
  z-index: 10;
  position: relative;
  margin-bottom: 100px;
  display: none; }
  .blogsingle-other:after {
    content: '';
    bottom: -40px;
    right: 0;
    width: 40%;
    height: 40px;
    display: block;
    position: absolute;
    border: 1px solid #455a64;
    border-right: none;
    border-top: none; }

.blogsingle-other__title {
  background-color: #fff;
  color: #263238;
  font-weight: 500;
  padding-bottom: 20px;
  font-size: 20px;
  padding-left: 40px;
  text-align: left;
  position: relative; }
  .blogsingle-other__title:before {
    content: '';
    top: -21px;
    left: 0;
    width: 80%;
    height: 62px;
    display: block;
    position: absolute;
    border: 1px solid #455a64;
    border-left: none;
    border-bottom: none; }

@media only screen and (max-width: 1279px) {
  .blogsingle-content img {
    max-width: 100%; }
    .blogsingle-content img.alignleft {
      margin-left: 0; }
    .blogsingle-content img.alignright {
      margin-right: 0; } }

@media only screen and (max-width: 767px) {
  .blogsingle-content img {
    max-width: 100%; }
    .blogsingle-content img.alignleft {
      margin-left: auto;
      margin-right: auto;
      float: none;
      display: block; }
    .blogsingle-content img.alignright {
      margin-left: auto;
      margin-right: auto;
      float: none;
      display: block; } }

@media only screen and (min-width: 768px) {
  .blogsingle-header__title {
    font-size: 24px; }
  .blogsingle-featured {
    margin-bottom: 50px;
    overflow: hidden;
    position: relative; }
  .blogsingle-content > h1,
  .blogsingle-content > h2,
  .blogsingle-content > h3,
  .blogsingle-content > h4,
  .blogsingle-content > h5,
  .blogsingle-content > h6 {
    margin-bottom: 20px;
    font-size: 24px; }
  .blogsingle-content > p,
  .blogsingle-content > ul {
    margin-bottom: 20px; }
  .blogsingle-content blockquote {
    padding: 0 40px;
    margin-bottom: 50px;
    font-size: 24px;
    text-align: center; }
  .blogsingle-content > img {
    max-width: 950px;
    width: auto;
    height: auto;
    margin-bottom: 25px; }
    .blogsingle-content > img.alignleft {
      float: left;
      margin-right: 20px; }
    .blogsingle-content > img.alignright {
      float: right;
      margin-left: 20px; }
    .blogsingle-content > img.aligncenter {
      margin-left: auto;
      margin-right: auto;
      display: block; }
  .blogsingle-content iframe {
    width: 560px;
    height: 315px;
    margin: 0 auto 50px auto; }
  .blogsingle-content .buildings-item {
    width: 470px;
    margin: auto; }
  .blogsingle-content .wp-caption {
    max-width: 100%;
    margin-bottom: 50px; }
    .blogsingle-content .wp-caption.alignright, .blogsingle-content .wp-caption.alignleft {
      display: flex;
      align-items: center; }
      .blogsingle-content .wp-caption.alignright img, .blogsingle-content .wp-caption.alignleft img {
        width: 60%; }
      .blogsingle-content .wp-caption.alignright .wp-caption-text, .blogsingle-content .wp-caption.alignleft .wp-caption-text {
        width: 40%;
        margin: 0; }
    .blogsingle-content .wp-caption.alignnone .wp-caption-text, .blogsingle-content .wp-caption.aligncenter .wp-caption-text {
      margin-bottom: 0; }
    .blogsingle-content .wp-caption.alignleft .wp-caption-text {
      text-align: left; }
    .blogsingle-content .wp-caption.alignright .wp-caption-text {
      text-align: right; }
  .blogsingle-other__title:before {
    width: 30%; }
  .blogsingle-other {
    display: block; }
    .blogsingle-other .slick-arrow.slick-prev {
      left: 5px;
      background: url("/static/arrow-left-dark.svg") no-repeat; }
    .blogsingle-other .slick-arrow.slick-next {
      left: auto;
      right: 5px;
      background: url("/static/arrow-right-dark.svg") no-repeat; }
  .blogsingle-other-slide {
    width: 90% !important; } }

@media only screen and (min-width: 1024px) {
  .blogsingle-header {
    padding: 20px 0 10px 0; }
  .blogsingle-header__title {
    width: 950px;
    font-size: 30px; }
  .blogsingle-header__cats {
    font-size: 14px; }
  .blogsingle-header__subtitle {
    width: 950px; }
  .blogsingle-featured {
    position: relative;
    overflow: hidden; }
  .blogsingle-featured__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto; }
  .blogsingle-content > h1,
  .blogsingle-content > h2,
  .blogsingle-content > h3,
  .blogsingle-content > h4,
  .blogsingle-content > h5,
  .blogsingle-content > h6,
  .blogsingle-content > p,
  .blogsingle-content > ul,
  .blogsingle-content blockquote {
    width: 950px;
    margin-left: auto;
    margin-right: auto; }
  .blogsingle-content .wp-caption {
    max-width: 1140px; }
  .blogsingle-content > img {
    max-width: 950px; }
  .blogsingle-content iframe {
    width: 950px;
    height: 539px; }
  .blogsingle-content blockquote {
    font-size: 32px; }
  .blogsingle-other .slick-arrow.slick-prev {
    left: 20px; }
  .blogsingle-other .slick-arrow.slick-next {
    right: 20px; }
  .blogsingle-other:after {
    width: 23%; }
  .blogsingle-other-wrapper {
    padding: 50px 0 40px 0; }
  .blogsingle-other__title:before {
    width: 23%; } }

@media only screen and (min-width: 1440px) {
  .blogsingle-other .slick-arrow.slick-prev {
    left: 30px; }
  .blogsingle-other .slick-arrow.slick-next {
    right: 30px; }
  .blogsingle-other:after {
    width: 17%;
    height: 50px;
    bottom: -50px; }
  .blogsingle-other-slide {
    width: 80% !important; }
  .blogsingle-text-content {
    margin-top: 60px; }
    .blogsingle-text-content p {
      padding-bottom: 60px; }
    .blogsingle-text-content img {
      padding-bottom: 60px; }
  .blogsingle-other__title:before {
    width: 18%; } }

.beach {
  padding-top: 190px;
  text-align: left; }
  .beach--sticky .beach-sticky {
    top: 0; }
  .beach--header-sticky .beach-sticky {
    top: 50px; }

.beach-sticky {
  position: fixed;
  top: 70px;
  left: 0;
  width: 100%;
  padding: 20px 0 20px 20px;
  border-bottom: 2px solid #eceff1;
  background-color: #fff;
  z-index: 101;
  transition: all 300ms ease; }
  .beach-sticky__subtitle {
    text-transform: capitalize; }

.beach-sticky__title {
  font-size: 28px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px;
  text-align: left;
  text-transform: uppercase; }

.beach-sticky-nav {
  position: fixed;
  padding-top: 10px;
  padding-bottom: 10px;
  position: relative;
  overflow-x: scroll; }

.beach-sticky-nav-items {
  display: flex; }

.beach-sticky-nav-item {
  font-size: 15px;
  color: #455a64;
  position: relative; }
  .beach-sticky-nav-item:not(:first-child) {
    padding-left: 20px; }
  .beach-sticky-nav-item:not(:last-child):after {
    content: '';
    position: absolute;
    top: 4px;
    right: -10px;
    width: 1px;
    height: 70%;
    background-color: #455a64;
    display: block; }

.beach-sticky-nav-item__btn {
  text-decoration: none;
  color: #455a64;
  letter-spacing: 3px;
  font-size: 12px;
  white-space: nowrap; }

.beach-header {
  padding: 25px 0; }

.beach-header__title {
  font-size: 32px;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px; }

.beach-header-subtitle {
  margin-top: 20px;
  font-size: 15px;
  color: #455a64; }

.beach-about {
  background-color: #eceff1; }

.beach-breadcrumb {
  margin-bottom: 50px; }
  .beach-breadcrumb__text {
    text-transform: capitalize; }

.beach-condominiums {
  margin-top: 70px;
  margin-bottom: 70px;
  padding-bottom: 50px;
  max-width: 100%;
  overflow: hidden; }

.beach-condominiums-header {
  width: 80%;
  margin: auto;
  position: relative; }
  .beach-condominiums-header:after {
    content: '';
    top: 60px;
    right: -18px;
    width: 10%;
    height: 80px;
    display: block;
    position: absolute;
    border: 2px solid #455a64;
    border-left: none;
    border-bottom: none; }

.beach-condominiums-header__text {
  font-size: 28px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px;
  text-align: left; }

.beach-condominiums-item {
  margin-top: 60px;
  overflow: hidden; }

.beach-condominiums-item__title {
  margin: auto;
  margin-top: 20px;
  font-size: 28px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  width: 60%;
  position: relative;
  text-transform: uppercase; }
  .beach-condominiums-item__title:after {
    content: '';
    top: -20px;
    left: -64px;
    width: 159%;
    height: 70px;
    display: block;
    position: absolute;
    border: 2px solid #455a64;
    border-left: none;
    border-top: none; }

.beach-condominiums-item-subtitle {
  margin: auto;
  margin-top: 40px;
  font-size: 15px;
  color: #455a64;
  width: 60%; }

.beach-items {
  margin-bottom: 70px; }

.beach-items-more {
  display: flex;
  justify-items: center;
  margin-bottom: 40px; }

.beach-items-more__btn {
  max-width: 370px;
  margin: 0 auto; }

@media only screen and (min-width: 768px) {
  .beach {
    padding-top: 150px;
    margin: auto; }
    .beach--single {
      padding-top: 170px; }
  .beach-sticky {
    display: flex; }
  .beach-sticky-nav {
    overflow-x: inherit;
    margin-left: 60px; }
  .beach-header {
    margin-bottom: 40px; }
  .beach-header-wrapper {
    position: relative;
    display: flex;
    justify-content: space-between; }
  .beach-header__title {
    width: 60%;
    padding-right: 20px;
    font-size: 28px;
    line-height: 34px; }
  .beach-header-subtitle {
    width: 40%;
    margin-top: 5px; }
  .beach-about {
    background-color: #fff; }
  .beach-condominiums {
    position: relative;
    margin-bottom: 120px; }
    .beach-condominiums:before {
      content: '';
      position: absolute;
      top: 180px;
      left: 53%;
      transform: translateX(-50%);
      width: 70%;
      height: 93%;
      display: block;
      background-color: #eceff1; }
  .beach-condominiums-header {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    padding-right: 50px; }
    .beach-condominiums-header:before {
      content: '';
      top: -30px;
      left: 0;
      width: 56%;
      height: 70px;
      display: block;
      position: absolute;
      border-bottom: 2px solid #455a64; }
    .beach-condominiums-header--left:after {
      top: 35px;
      right: 15px;
      width: 5%;
      height: 150px; }
  .beach-condominiums-item {
    margin-top: 50px;
    position: relative;
    padding-top: 120px; }
    .beach-condominiums-item--left {
      padding-left: 150px; }
      .beach-condominiums-item--left .beach-condominiums-item__btn {
        justify-content: flex-start;
        align-items: flex-start; }
      .beach-condominiums-item--left .beach-condominiums-item-image {
        left: auto;
        right: 0;
        overflow: hidden; }
      .beach-condominiums-item--left .beach-condominiums-item__title:after {
        left: -74px;
        border-right: 0;
        border-left: 2px solid #455a64; }
      .beach-condominiums-item--left .beach-condominiums-item-subtitle {
        width: 43%; }
    .beach-condominiums-item img {
      border-radius: 5px;
      height: 100%;
      max-width: inherit;
      width: auto;
      margin: 0; }
  .beach-condominiums-item__btn {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end; }
  .beach-condominiums-item-image {
    position: absolute;
    width: 58%;
    left: 0;
    bottom: 0;
    height: 100%;
    display: flex;
    justify-content: flex-end;
    z-index: 2; }
  .beach-condominiums-item__title {
    margin: 0;
    margin-top: 20px;
    width: 40%; }
    .beach-condominiums-item__title:after {
      top: -190px;
      height: 240px;
      left: -15px;
      width: 100%; }
  .beach-condominiums-item-subtitle {
    margin: 0;
    margin-top: 40px;
    padding-right: 100px;
    width: 40%; } }

@media only screen and (min-width: 1024px) {
  .beach {
    padding-top: 0;
    margin-top: 150px; }
    .beach--single {
      margin-top: 170px; }
    .beach--header-sticky .beach-sticky {
      top: 70px; }
  .beach-header {
    padding-top: 30px; }
  .beach-items {
    position: relative;
    margin-top: 40px;
    display: flex;
    flex-wrap: wrap; }
  .beach-sticky {
    top: 70px; }
  .beach-sticky-nav-item:not(:first-child) {
    padding-left: 40px; }
  .beach-sticky-nav-item:not(:last-child):after {
    right: -20px; }
  .beach-header-wrapper {
    justify-content: flex-start; }
  .beach-header__title {
    width: 50%; }
  .beach-header-subtitle {
    width: 30%;
    padding-left: 10px; }
  .beach-condominiums:before {
    width: 65%; }
  .beach-condominiums-header {
    padding-right: 200px; }
    .beach-condominiums-header:before {
      width: 80%;
      left: auto;
      right: 480px; }
    .beach-condominiums-header--left:after {
      right: 132px; }
  .beach-condominiums-item--left {
    padding-left: 0; }
    .beach-condominiums-item--left .beach-condominiums-item__title {
      padding-left: 23%; }
      .beach-condominiums-item--left .beach-condominiums-item__title:after {
        left: 200px;
        width: 101%; }
    .beach-condominiums-item--left .beach-condominiums-item-subtitle {
      padding: 0 0 0 23%; }
      .beach-condominiums-item--left .beach-condominiums-item-subtitle p {
        max-width: 100%; }
  .beach-condominiums-item:not(:first-of-type) .beach-condominiums-item__title:after {
    height: 500px; }
  .beach-condominiums-item-image {
    width: 55%; }
  .beach-condominiums-item__title {
    width: 100%;
    padding: 0 0 0 57%;
    margin-top: 70px; }
    .beach-condominiums-item__title:after {
      left: auto;
      right: 132px;
      width: 100%;
      top: auto;
      bottom: -25px;
      height: 295px; }
  .beach-condominiums-item-subtitle {
    margin: 0;
    margin-top: 50px;
    padding: 0 0 0 57%;
    width: 100%; }
    .beach-condominiums-item-subtitle p {
      max-width: 50%; } }

@media only screen and (min-width: 1440px) {
  .beach-condominiums-header {
    padding-right: 25%; }
    .beach-condominiums-header:before {
      width: 54%;
      right: auto;
      left: 0; }
    .beach-condominiums-header--left:after {
      width: 13%; }
  .beach-condominiums-item--left .beach-condominiums-item-image {
    overflow: visible;
    justify-content: flex-start; }
  .beach-condominiums-item-image {
    overflow: visible;
    align-items: flex-start; }
    .beach-condominiums-item-image img {
      width: 100%;
      height: auto;
      max-width: 100%; } }

.beachsingle-about,
.beachsingle-other-beaches {
  margin-top: 50px;
  margin-bottom: 50px; }

.beachsingle-other-beaches.limit-grid {
  max-width: 100%;
  overflow: hidden; }

@media only screen and (min-width: 768px) {
  .beachsingle {
    padding-top: 160px; }
  .beachsingle-about,
  .beachsingle-other-beaches {
    margin-top: 100px;
    margin-bottom: 100px; } }

.contact {
  margin-top: 70px; }

.contact-infos {
  min-height: calc(100vh - 70px);
  font-size: 13px;
  background: #eceff1;
  color: #455a64;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    .contact-infos {
      padding: 30px;
      margin-left: -20px;
      margin-right: -20px; } }
  .contact-infos:before {
    width: calc(100% - 60%);
    height: 100%;
    background: #eceff1;
    content: '';
    top: 0;
    left: 0;
    position: fixed;
    z-index: -1; }
    @media only screen and (max-width: 767px) {
      .contact-infos:before {
        display: none; } }
  .contact-infos h3 {
    font-size: 22px;
    color: #263238;
    font-family: "IBM Plex Serif";
    font-weight: 500;
    line-height: 25px;
    margin-top: 50px;
    position: relative; }
  .contact-infos p {
    margin-top: 20px; }
  .contact-infos a {
    color: #51beb1;
    text-decoration: underline; }

.contact-whatsapp {
  padding: 5px 0 5px 30px;
  font-size: 18px;
  background: url("/static/icon-whatsapp-green.svg") left center no-repeat;
  background-size: 20px;
  text-decoration: none !important;
  display: block; }

.contact-infos-block {
  position: relative; }
  .contact-infos-block:after {
    content: '';
    width: 20%;
    height: 1px;
    display: block;
    position: absolute;
    bottom: -25px;
    left: 0;
    background-color: #ababb6; }

.contact-form-container {
  text-align: left; }

.contact-form__title {
  font-size: 23px;
  color: #263238;
  font-family: "IBM Plex Serif";
  font-weight: 500;
  line-height: 40px;
  padding-top: 30px;
  position: relative; }

.contact-form-group {
  position: relative; }
  .contact-form-group.error .contact-form__text {
    border-bottom-color: red;
    margin-bottom: 20px; }
  .contact-form-group.error span {
    transform: unset;
    opacity: 1;
    z-index: 1; }
  .contact-form-group span {
    transform: translateY(-100%);
    opacity: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    color: red;
    font-size: 12px;
    margin-left: 10px;
    z-index: -1; }

.contact-form__text {
  width: 100%;
  padding-bottom: 5px;
  font-size: 14px;
  margin-top: 30px;
  font-family: "Montserrat";
  color: #455a64;
  border: none;
  border-bottom: 1px solid #ababb6;
  outline: none;
  transition: margin-bottom 0.25s; }
  .contact-form__text--area {
    border: 1px solid #ababb6;
    height: 100px; }

.checkmark {
  position: absolute;
  top: 2px;
  left: -2px;
  height: 20px;
  width: 20px;
  border-radius: 5px;
  background-color: #eee; }
  .checkmark:after {
    content: '';
    position: absolute;
    display: none;
    left: 7px;
    top: 4px;
    width: 6px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }

.contact-checkbox {
  display: block;
  position: relative;
  padding-left: 25px;
  margin-top: 20px;
  margin-bottom: 20px;
  line-height: 13px;
  cursor: pointer;
  font-size: 10px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .contact-checkbox:hover input ~ .checkmark {
    background-color: #ccc; }
  .contact-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0; }
    .contact-checkbox input:checked ~ .checkmark {
      background-color: #ababb6; }
      .contact-checkbox input:checked ~ .checkmark:after {
        display: block; }

.contact-form__btn {
  margin-bottom: 40px;
  width: 100%; }
  .contact-form__btn[disabled] {
    opacity: 0.2;
    cursor: default; }

.contact-form-feedback {
  margin-bottom: 30px; }

@media only screen and (min-width: 768px) {
  .contact {
    display: flex;
    align-items: flex-start; }
  .contact-infos {
    width: 37%;
    padding-top: 0;
    margin-left: 30px; }
  .contact-form-container {
    width: 50%;
    margin-right: 10px;
    margin-top: 35px; }
  .contact-form {
    padding-bottom: 20px; }
  .contact-form__text--textarea {
    height: 150px;
    padding: 10px;
    border: 1px solid #ababb6; }
  .contact-form__btn {
    margin-bottom: 0;
    width: 75%; }
  .checkmark {
    position: absolute;
    top: -3px; } }

@media only screen and (min-width: 1024px) {
  .contact-infos {
    width: 40%;
    padding-left: 100px;
    padding-right: 20px; }
  .contact-infos-block:first-child {
    padding-top: 30px; }
  .contact-form-container {
    width: 45%;
    margin-right: 90px;
    margin-top: 45px; }
  .contact-form {
    padding: 0 50px 50px 50px; }
  .contact-form__title {
    font-size: 32px; }
  .contact-form__text--textarea {
    height: 180px; }
  .contact-form__btn {
    width: 64%; } }

@media only screen and (min-width: 1440px) {
  .contact-infos {
    width: 30; }
  .contact-form__btn {
    width: 55%; } }

