/* Warm drawing stock and dark ink, informed by the Veiled Sky vellum palette. */
:root {
  --stone: #f4efdf;
  --paper: #fffaf0;
  --spruce: #2c413b;
  --ink: #302e27;
  --muted: #5c594c;
  --rule: #c4b99d;
  background: var(--stone) url('/assets/drawing-paper.webp') repeat;
  background-size: 640px 640px;
  scrollbar-color: #8d826b var(--stone);
}
body { background: transparent; }
::selection { background: #d8c9a4; color: #302e27; }
a { text-decoration-color: #726b55; text-decoration-thickness: 1px; }
a:hover { color: #3b5449; }
.site-header, .hero-render, .hero-render figcaption, .amenities,
.site-footer, .home-hero { background: transparent; }
.site-header nav a:hover { color: #3b5449; }
.site-footer { background: rgb(154 133 88 / 7%); }
.amenities { background: rgb(154 133 88 / 6%); }
.home-hero {
  width: calc(100% - var(--page-inset) * 2);
  margin-inline: auto;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.55fr);
  gap: 48px;
  color: var(--ink);
  align-items: center;
  padding-block: 30px 38px;
}
.hero-copy { padding: 20px 0; }
.hero-copy h1 { font-size: clamp(38px, 3.3vw, 52px); max-width: 16ch; }
.hero-description { font-size: 24px; max-width: 30ch; }
.hero-copy > p:not(.hero-description) { color: var(--muted); margin-bottom: 28px; }
.hero-render { display: block; }
.hero-render > img {
  width: 100%; height: auto; min-height: 0;
  aspect-ratio: 1400 / 759; object-fit: contain;
}
.hero-render figcaption { padding: 12px 0 0; }
.button, .button.light, .dialog-head button {
  color: #fffaf0; background: var(--spruce); border: 0;
}
.button:hover, .button.light:hover, .dialog-head button:hover {
  color: #fffaf0; background: #405b4d;
}
.menu-toggle { border-color: #91856a; background: transparent; }
.plan-controls select { background: var(--paper); border-color: #91856a; }
.amenity-list dd { color: var(--muted); }
.material-list dd { color: var(--ink); }
dialog { background: var(--stone) url('/assets/drawing-paper.webp') repeat; background-size: 640px; }
@media (max-width: 1100px) {
  .home-hero { gap: 32px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); }
  .hero-copy { padding: 16px 0; }
}
@media (max-width: 800px) {
  .home-hero { grid-template-columns: 1fr; gap: 26px; padding-block: 16px 24px; }
  .hero-render { grid-row: 1; }
  .hero-copy { display: block; padding: 0; }
  .hero-copy h1 { font-size: 40px; max-width: 20ch; margin-bottom: 22px; }
  .hero-description { font-size: 22px; max-width: 45ch; margin-bottom: 22px; }
  .hero-copy > p:not(.hero-description) { margin-bottom: 24px; }
  .hero-copy .button { width: fit-content; }
  .hero-render figcaption { font-size: 18px; padding: 10px 0 0; }
}
@media (max-width: 560px) {
  .home-hero { gap: 28px; }
  .hero-copy h1 { font-size: 38px; max-width: 16ch; }
  .hero-render > img { object-fit: contain; aspect-ratio: 1400 / 759; }
}

.home-location {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
  align-items: center;
  gap: 64px;
  padding-block: 12px 76px;
}
.home-location p { max-width: 32ch; }
.home-location-map img { width: 100%; }
@media (max-width: 800px) {
  .home-location { grid-template-columns: 1fr; gap: 28px; padding-block: 12px 48px; }
  .home-location p { max-width: 60ch; }
}
