:root {
  --cloud-dancer: #f0eee9;
  --cloud-dancer-light: #faf9f6;
  --cloud-dancer-shadow: #ddd8cf;
  --green: #766658;
  --deep: #332f2a;
  --sage: #a1978b;
  --cream: var(--cloud-dancer);
  --sand: #d8d0c4;
  --ink: #2d2a26;
  --white: #fff;
}

body,
.intro,
.location {
  background: var(--cloud-dancer);
}

.rooms {
  background: var(--cloud-dancer-light);
}

.room-card {
  background: #e8e4dc;
}

.services {
  background: #4b453e;
}

.booking {
  background: var(--cloud-dancer-shadow);
}

.address-card,
.primary {
  background: #766658;
}

.dark,
footer {
  background: var(--deep);
}

.hero-shade {
  background: linear-gradient(
    90deg,
    rgba(43, 38, 32, 0.82) 0%,
    rgba(82, 72, 62, 0.38) 55%,
    rgba(240, 238, 233, 0.06) 100%
  );
}

.heritage {
  background: linear-gradient(180deg, var(--cloud-dancer-light), var(--cloud-dancer));
  color: var(--ink);
}

.heritage-copy .overline {
  color: #766658;
}

.heritage-copy h2 {
  color: #2d2a26;
}

.heritage-copy > p:not(.overline) {
  color: #4b453e;
  font-size: 15px;
  line-height: 1.85;
}

.heritage-photo {
  border: 1px solid #cfc8bd;
  background: var(--cloud-dancer-light);
  box-shadow: 0 22px 55px rgba(51, 47, 42, 0.16);
}

.heritage-photo figcaption {
  background: var(--cloud-dancer-light);
  color: #2d2a26;
  padding: 26px 28px;
}

.heritage-photo figcaption span {
  color: #766658;
  font-size: 25px;
}

.heritage-photo figcaption p {
  color: #4b453e;
  font-size: 13px;
  line-height: 1.65;
}

.heritage-photo figcaption strong {
  color: #2d2a26;
  font-size: 27px;
  line-height: 1.15;
  margin-bottom: 6px;
}

.heritage-distance {
  background: rgba(51, 47, 42, 0.92);
  color: #fff;
}

.facts,
.heritage-photo,
.map-card {
  border-color: #cfc8bd;
}

.overline,
.room-number,
.room-content li::before {
  color: #8c7a69;
}

.language-switcher {
  background: rgba(51, 47, 42, 0.3);
}
