* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: #faf7f2;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #2e2e2e;
}

.page {
  padding: 40px 16px;
}

/* shared: back-to-housing pill, fixed bottom-center on rent sub-pages */
.back-to-housing {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 200;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 28px;
  border-radius: 999px;
  background: #1a1a1a;
  color: #fff;
  font-family: 'Noto Sans SC', system-ui, -apple-system, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-decoration: none;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
  transition: all 0.2s ease;
}
.back-to-housing:hover,
.back-to-housing:focus-visible {
  background: #000;
  transform: translate(-50%, -2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  outline: none;
}
.back-to-housing .back-arrow {
  font-size: 18px;
  line-height: 1;
}
.back-to-housing .back-text {
  white-space: nowrap;
}

@media (max-width: 768px) {
  .back-to-housing {
    bottom: 20px;
  }
}

body[data-page="room"] .back-to-housing,
body[data-page="professional"] .back-to-housing {
  position: relative;
  left: auto;
  bottom: auto;
  transform: none;
  z-index: 1;
  margin: 32px 0 28px max(24px, calc((100% - 1200px) / 2 + 24px));
}

body[data-page="room"] .back-to-housing:hover,
body[data-page="room"] .back-to-housing:focus-visible,
body[data-page="professional"] .back-to-housing:hover,
body[data-page="professional"] .back-to-housing:focus-visible {
  transform: translateY(-2px);
}

body[data-page="minimum"] .back-to-housing {
  left: 24px;
  bottom: 54px;
  transform: none;
}

body[data-page="minimum"] .back-to-housing:hover,
body[data-page="minimum"] .back-to-housing:focus-visible {
  transform: translateY(-2px);
}

@media (max-width: 768px) {
  body[data-page="room"] .back-to-housing,
  body[data-page="professional"] .back-to-housing {
    margin: 24px 0 28px 24px;
  }

  body[data-page="minimum"] .back-to-housing {
    left: 16px;
    bottom: 58px;
  }
}
