.hero h1,
.intro h2,
.team-copy h2,
.section-heading h2,
.contact-section h2,
.property-page h1,
.similar h2,
.property-body h3 {
  font-weight: 500;
}

.property-card-price,
.property-price {
  font-weight: 600;
}

.property-body > p,
.intro-grid > p,
.section-heading > p {
  color: #505b56;
  font-weight: 400;
}

@media (max-width: 620px) {
  .site-header {
    background: #14231e;
  }

  .site-header .nav-wrap {
    height: 94px;
    justify-content: space-between;
    gap: 0;
  }

  .site-header .brand {
    flex: 0 0 82px;
    order: 1;
  }

  .site-header .brand-logo {
    width: 82px;
    height: 82px;
  }

  .site-header .language-picker {
    flex: 0 0 7.25rem;
    min-width: 7.25rem;
    width: 7.25rem;
    margin-left: 0;
    order: 2;
  }

  .site-header .language-picker select {
    -webkit-appearance: none;
    padding-right: 1.4rem;
    padding-left: 1.75rem;
    font-size: .68rem;
  }

  .site-header .language-icon {
    left: .55rem;
  }

  .site-header .language-chevron {
    right: .45rem;
  }

  .site-header .nav-toggle {
    position: relative;
    flex: 0 0 32px;
    width: 32px;
    height: 38px;
    padding: 0;
    overflow: hidden;
    border: 0;
    font-size: 0;
    order: 5;
  }

  .site-header .nav-toggle::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 6px;
    width: 20px;
    height: 1px;
    background: currentColor;
    box-shadow: 0 6px 0 currentColor;
  }

  .site-header .mobile-login,
  .site-header .mobile-favourites {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }

  .site-header .mobile-favourites {
    order: 3;
  }

  .site-header .mobile-login {
    order: 4;
  }

  .site-header .main-nav {
    top: 94px;
  }

  .hero {
    display: block;
    min-height: 0;
    padding: 0 0 3rem;
    overflow: hidden;
    background: #f3efe7;
  }

  .hero-slides,
  .hero-shade {
    top: 94px;
    bottom: auto;
    height: 18rem;
  }

  .hero-slides {
    background: #14231e;
  }

  .hero-slides .hero-image {
    object-fit: contain;
    object-position: center;
  }

  .hero-content {
    padding-top: calc(94px + 18rem);
  }

  .hero-copy {
    min-height: 0;
    margin-right: -15px;
    margin-left: -15px;
    padding: 2.5rem 15px 2rem;
    background: #14231e;
  }

  .hero-copy > p {
    margin: 1.2rem 0 0;
  }

  .advanced-search {
    margin-top: 1.5rem;
  }

  .hero-slider-controls {
    top: calc(94px + 14.6rem);
    bottom: auto;
  }

  .advanced-search-heading > span {
    font-weight: 600;
  }

  .advanced-search input,
  .advanced-search select {
    font-size: 1rem;
    font-weight: 500;
  }

  .property-card-price {
    font-size: 1.55rem;
  }

  .property-body > p {
    font-size: 1rem;
  }

  .property-fact b {
    font-size: .9rem;
  }
}

@media (max-width: 380px) {
  .site-header .nav-wrap {
    height: 86px;
  }

  .site-header .brand {
    flex-basis: 64px;
  }

  .site-header .brand-logo {
    width: 64px;
    height: 64px;
  }

  .site-header .mobile-login,
  .site-header .mobile-favourites {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
  }

  .site-header .main-nav {
    top: 86px;
  }

  .hero-slides,
  .hero-shade {
    top: 86px;
  }

  .hero-content {
    padding-top: calc(86px + 18rem);
  }

  .hero-slider-controls {
    top: calc(86px + 14.6rem);
  }
}

@media (max-width: 340px) {
  .site-header .brand {
    flex-basis: 56px;
  }

  .site-header .brand-logo {
    width: 56px;
    height: 56px;
  }

  .site-header .language-picker {
    flex-basis: 6.75rem;
    min-width: 6.75rem;
    width: 6.75rem;
  }

  .site-header .language-picker select {
    padding-right: 1.15rem;
    padding-left: 1.55rem;
  }

  .site-header .language-icon {
    left: .45rem;
  }

  .site-header .language-chevron {
    right: .35rem;
  }

  .site-header .mobile-login,
  .site-header .mobile-favourites,
  .site-header .nav-toggle {
    width: 30px;
    flex-basis: 30px;
  }

  .site-header .nav-toggle::before {
    left: 5px;
  }
}
