/* Homepage portrait art direction; loaded after the shared styles. */
.page-hero--home { background: #f8e1ea; }
.page-hero--home .hero-image { top: 92px; mask-image: linear-gradient(to bottom, transparent, #000 24px); -webkit-mask-image: linear-gradient(to bottom, transparent, #000 24px); }
.page-hero--home .hero-image img { object-position: right top; }
.page-hero--home .page-hero__wash {
  background: linear-gradient(90deg, #f8e1ea 0%, #f8e1eaf5 27%, #f8e1eaa6 40%, #f8e1ea00 55%);
}
.page-hero--home::after { height: 160px; }
.page-hero--home .page-hero__copy { max-width: 43%; }
.page-hero--home .page-hero__copy h1 { font-size: clamp(58px, 5.8vw, 84px); }
.page-hero--home .page-hero__copy p { color: #533c47; max-width: 440px; }
.page-hero--home .page-hero__actions { gap: 16px; }
.page-hero--home .hero-signature { color: #462c42; }
@media (min-width: 901px) and (max-width: 1200px) {
  .page-hero--home .page-hero__copy { max-width: 44%; }
  .page-hero--home .page-hero__copy h1 { font-size: clamp(54px, 5.7vw, 68px); }
  .page-hero--home .page-hero__actions { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 900px) {
  .page-hero--home { --portrait-height: clamp(390px, 115vw, 680px); min-height: 100dvh; }
  .page-hero--home::after { height: 96px; background: linear-gradient(180deg,#f8e1eac2,#f8e1ea00); }
  .page-hero--home .hero-image { inset: 0 0 auto; height: var(--portrait-height); mask-image: none; -webkit-mask-image: none; }
  .page-hero--home .hero-image img { object-position: center top; }
  .page-hero--home .page-hero__wash {
    inset: 0 0 auto; height: var(--portrait-height);
    background: linear-gradient(0deg,#f8e1ea 0%,#f8e1ea00 19%);
  }
  .page-hero--home .page-hero__inner {
    width: min(600px, calc(100% - 48px)); min-height: 100dvh;
    padding: calc(var(--portrait-height) - 32px) 0 36px; justify-content: flex-start;
  }
  .page-hero--home .page-hero__copy { max-width: 100%; }
  .page-hero--home .page-hero__copy h1 {
    margin-top: 16px; max-width: 100%; font-size: clamp(40px,10.6vw,60px); line-height: 1.03;
  }
  .page-hero--home .page-hero__copy p { max-width: 100%; font-size: 16px; line-height: 1.5; margin-top: 16px; }
  .page-hero--home .page-hero__actions { flex-direction: column; align-items: flex-start; margin-top: 20px; gap: 10px; }
  .page-hero--home .hero-scroll, .page-hero--home .hero-signature { display: none; }
}
