.site-container {
  --site-gap: 10px;
  --site-base-font-size: 18px;
  font-size: var(--site-base-font-size);
}

.site-flex-column,
.site-lg-flex-column,
.site-flex {
  display: flex;
  gap: var(--site-gap);
}
.site-flex {
  flex-wrap: wrap;
}
.site-flex-column,
.site-lg-flex-column {
  flex-direction: column;
}

.site-content-container {
  background-color: #f2f2f2;
  margin-top: var(--site-gap);
}

.site-image-container,
.site-text-content-container {
  padding: var(--site-gap);
}

.site-container {
  background-color: white;
  font-family: Montserrat, sans-serif;
}

.site-title,
.site-location-hint,
.site-interior-title,
.site-cabins-title,
.site-attention-title {
  font-weight: 300;
  margin-top: 0px;
  margin-bottom: 0px;
  line-height: 1.1;
  letter-spacing: normal;
  text-transform: uppercase;
  font-style: normal;
  font-variant-caps: normal;
  word-spacing: 0px;
}

.site-title,
.site-location-hint {
  color: #446eaa;
  font-size: calc(var(--site-base-font-size) * 2);
  margin-bottom: 5px;
}

.site-interior-title,
.site-cabins-title,
.site-attention-title {
  color: rgb(11, 187, 239);
  font-size: calc(var(--site-base-font-size) * 1.4);
}

.site-location-plan {
  width: calc(70% - var(--site-gap) / 2);
  overflow: hidden;
  position: relative;
  aspect-ratio: 950/360;
  max-height: 290px;
}
.site-location-plan img {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center center;
}
.site-location-plan .site-download-link-button {
  position: absolute;
  bottom: calc(var(--site-gap) * 2);
  right: calc(var(--site-gap) * 2);
  background-color: #446eaa;
  padding: var(--site-gap);
  color: white;
  font-weight: 300;
  text-decoration: none;
}

.site-location-preview {
  width: calc(30% - var(--site-gap) / 2);
  overflow: hidden;
  position: relative;
  aspect-ratio: 460/360;
  max-height: 290px;
  object-position: center center;
}
.site-location-preview img {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center center;
}

.site-text-content-container {
  padding-left: 20px;
  padding-right: 20px;
}
.site-text-content-container .site-lg-flex-column:first-child {
  width: calc(55% - var(--site-gap) / 2);
}
.site-text-content-container .site-flex-column:last-child {
  width: calc(45% - var(--site-gap) / 2);
}
.site-text-content-container ul {
  padding-left: 15px;
  margin-top: var(--site-gap);
  margin-bottom: var(--site-gap);
}
.site-text-content-container li {
  list-style-type: "_ ";
}
.site-text-content-container li,
.site-text-content-container p {
  margin-bottom: 0px;
  font-size: var(--site-base-font-size);
  font-weight: 300;
  line-height: 1.3;
  padding-right: 5%;
}

.site-attention-container p {
  margin-top: var(--site-gap) / 2;
}

/* Tablet (768px and up) */
@media screen and (max-width: 1024px) {
  .site-container {
    --site-base-font-size: 16px;
  }

  .site-location-plan {
    width: calc(60% - var(--site-gap) / 2);
  }

  .site-location-preview {
    width: calc(40% - var(--site-gap) / 2);
  }

  .site-text-content-container {
    padding-left: 15px;
    padding-right: 15px;
  }

  .site-text-content-container .site-lg-flex-column:first-child {
    width: calc(50% - var(--site-gap) / 2);
  }
  .site-text-content-container .site-flex-column:last-child {
    width: calc(50% - var(--site-gap) / 2);
  }
}

/* Mobile (768px and down) */
@media screen and (max-width: 768px) {
  .site-container {
    --site-base-font-size: 12px;
    --site-gap: 8px;
  }

  .site-location-plan {
    width: calc(70% - var(--site-gap) / 2);
  }

  .site-location-preview {
    width: calc(30% - var(--site-gap) / 2);
  }
  .site-location-plan,
  .site-location-preview {
    max-height: 180px;
  }

  .site-location-plan .site-download-link-button {
    bottom: var(--site-gap);
    right: var(--site-gap);
  }

  .site-text-content-container li,
  .site-text-content-container p {
    margin-bottom: 0px;
    font-size: var(--site-base-font-size);
    font-weight: 300;
    line-height: 1.3;
    padding-right: 5%;
  }

  .site-attention-container p {
    padding-right: 0;
  }
}

/* Small mobile (480px and down) */
@media screen and (max-width: 480px) {
  .site-lg-flex-column {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .site-cabins-container,
  .site-interior-container {
    width: calc(50% - var(--site-gap) / 2);
  }
  .site-text-content-container .site-lg-flex-column:first-child {
    width: calc(100%);
  }
  .site-text-content-container .site-flex-column:last-child {
    width: calc(100%);
  }
  .site-title,
  .site-location-hint {
    font-size: calc(var(--site-base-font-size) * 1.3);
  }
  .site-interior-title,
  .site-cabins-title,
  .site-attention-title {
    font-size: calc(var(--site-base-font-size) * 1.2);
  }
  .site-text-content-container li,
  .site-text-content-container p {
    font-size: calc(var(--site-base-font-size) * 1.1);
  }
}
