
/* V6 - structural layout reset. Loaded last on purpose. */

.ticker { display: none !important; }

.home-hero {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 90px 0 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  overflow: visible !important;
  background: var(--paper) !important;
}

.hero-copy,
.hero-visual {
  min-width: 0 !important;
  width: auto !important;
  height: 620px !important;
  min-height: 620px !important;
  max-height: 620px !important;
}

.hero-copy {
  position: relative !important;
  padding: 54px clamp(38px, 5.5vw, 96px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: var(--paper) !important;
}

.hero-copy::before {
  width: 130px !important;
  height: 130px !important;
  left: -72px !important;
  top: 88px !important;
}

.display {
  width: 100% !important;
  max-width: 720px !important;
  font-size: clamp(46px, 4vw, 64px) !important;
  line-height: 1.01 !important;
  letter-spacing: -.028em !important;
}

.hero-lead {
  margin-top: 24px !important;
  max-width: 610px !important;
  font-size: clamp(14px, 1.15vw, 17px) !important;
  line-height: 1.7 !important;
}

.hero-actions {
  margin-top: 28px !important;
}

.hero-visual {
  position: relative !important;
  overflow: hidden !important;
  background: var(--oat) !important;
}

.hero-visual picture,
.hero-visual img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.hero-visual img {
  object-fit: cover !important;
  object-position: center center !important;
}

.stats-strip {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  padding: 0 clamp(22px, 5.5vw, 96px) !important;
  background: var(--paper-2) !important;
  border-top: 1px solid var(--line) !important;
  border-bottom: 1px solid var(--line) !important;
}

.stats-strip-item {
  min-width: 0 !important;
  padding: 22px 0 20px !important;
  text-align: left !important;
}

.stats-strip-item + .stats-strip-item {
  padding-left: clamp(18px, 4vw, 68px) !important;
  border-left: 1px solid var(--line) !important;
}

.stats-strip-item strong {
  display: block !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

.stats-strip-item span {
  display: block !important;
  margin-top: 7px !important;
  color: var(--taupe) !important;
  font-size: 8px !important;
  line-height: 1.35 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}

.services-explorer {
  position: relative !important;
  z-index: 0 !important;
  margin: 0 !important;
}

/* Keep internal-page titles readable and contained. */
.page-title {
  max-width: 980px !important;
  font-size: clamp(44px, 5vw, 72px) !important;
  line-height: 1.02 !important;
}

@media (max-width: 900px) {
  .home-hero {
    padding-top: 78px !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .hero-copy,
  .hero-visual {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .hero-visual {
    order: 0 !important;
    aspect-ratio: 16 / 10 !important;
  }

  .hero-copy {
    order: 1 !important;
    padding: 48px 28px 54px !important;
    overflow: visible !important;
  }

  .display {
    max-width: 700px !important;
    font-size: clamp(43px, 7.4vw, 58px) !important;
  }

  .stats-strip {
    padding-left: 28px !important;
    padding-right: 28px !important;
  }
}

@media (max-width: 768px) {
  .home-hero {
    padding-top: 68px !important;
  }

  .hero-visual {
    order: 0 !important;
    width: 100% !important;
    aspect-ratio: 4 / 5 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .hero-visual img {
    object-position: center center !important;
  }

  .hero-copy {
    order: 1 !important;
    display: block !important;
    padding: 36px 18px 44px !important;
  }

  .hero-copy::before { display: none !important; }

  .display {
    font-size: clamp(38px, 10.5vw, 47px) !important;
    line-height: 1.02 !important;
  }

  .hero-lead {
    margin-top: 20px !important;
    font-size: 14px !important;
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 24px !important;
  }

  .hero-actions .pill {
    width: 100% !important;
  }

  .stats-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    padding: 0 14px !important;
  }

  .stats-strip-item {
    padding: 17px 8px 16px !important;
    text-align: center !important;
  }

  .stats-strip-item + .stats-strip-item {
    padding-left: 8px !important;
  }

  .stats-strip-item strong {
    font-size: 23px !important;
  }

  .stats-strip-item span {
    font-size: 6.6px !important;
    letter-spacing: .1em !important;
  }
}

@media (max-width: 390px) {
  .hero-visual {
    aspect-ratio: 4 / 5 !important;
  }
  .display {
    font-size: 39px !important;
  }
}
