/*
  V37 full-bleed living-wall geometry.
  Provenance: restored from the original full-bleed terrace-5 coordinate model.

  The original full-bleed terrace correctly escaped the centered reading column
  with width: 100vw and margin-left: calc(50% - 50vw). Keep that coordinate
  system. The only addition is a small viewport-relative overscan so the retaining
  wall continues just past both screen edges.
*/

html.home-page {
  --terrace-overscan: clamp(.5rem, 1.1vw, 1rem);
  overflow-x: clip;
  background: #d3aa8f;
}

/*
  The blue atmosphere belongs only to the explicit skybox. The old homepage
  world layer painted blue behind the entire document, so any transparent seam
  or edge around a terrace appeared as a blue gutter below the sky. Make the
  document fallback the living-wall material instead. The skybox remains blue
  because it owns its own opaque background.
*/
html.home-page::before {
  background-color: #d3aa8f !important;
  background-image: none !important;
}

/* Critical full-bleed rule: the narrow reading-column body must not clip paint
   that intentionally escapes it. Horizontal clipping belongs to the root
   viewport above, not to body. */
html.home-page body {
  overflow-x: visible;
}

/*
  Restored working full-bleed invariant:
  - escape the centered body with the original margin-left calculation;
  - do not use left:50% + translateX(), which changed the coordinate system;
  - add only a small symmetric overscan beyond the viewport.
*/
.home-page .ecology-terrace {
  box-sizing: border-box;
  left: auto !important;
  width: calc(100vw + var(--terrace-overscan) + var(--terrace-overscan));
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: calc(50% - 50vw - var(--terrace-overscan)) !important;
  transform: none !important;
}

/* The material plane overscans, but authored copy remains centered inside it. */
.home-page .project-list,
.home-page .home-wordmark-block,
.home-page .reference-section-heading,
.home-page .about-section > p,
.home-page .support-section > p {
  margin-right: auto;
  margin-left: auto;
}

/* Keep a subtle darkening near the lower edge of each wall. The next terrace
   overlaps part of this band, leaving a restrained separation shadow instead of
   a hard straight rule. */
.home-page .ecology-terrace::after {
  content: '';
  position: absolute;
  z-index: 4;
  right: 0;
  bottom: 0;
  left: 0;
  height: calc(var(--home-overlap) + 1.35rem);
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(74, 54, 41, 0) 0%,
    rgba(74, 54, 41, .025) 42%,
    rgba(70, 49, 36, .085) 100%
  );
}

/* Parked ecology lanes stay hidden while top-edge/material modeling is judged. */
html.home-page[data-wall-side-fractures="off"] .terrace-side-fracture-canvas,
html.home-page[data-wall-side-mottling="off"] .terrace-side-mottling-canvas {
  display: none !important;
}

/* Footer, ground, and sky remain their own materials. */
.home-page .site-footer,
.home-page .site-ground-block,
.home-page .site-sky-block {
  width: 100vw;
}
