.about-page { background: #ece5d7; }
.about-page h1,
.about-page h2,
.about-page .about-story__quote { font-family: var(--serif); }

.about-hero {
  position: relative;
  min-height: min(760px, calc(100dvh - 76px));
  display: grid;
  align-items: center;
  overflow: hidden;
  color: #f4eddf;
  background: #111024;
}
.about-hero__media { position: absolute; inset: 0; }
.about-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(9, 18, 34, .96) 0%, rgba(9, 18, 34, .84) 34%, rgba(9, 18, 34, .28) 66%, rgba(9, 18, 34, .08) 100%);
}
.about-hero__media img { height: 100%; object-fit: cover; object-position: center; filter: saturate(.86) contrast(1.04); }
.about-hero__inner { position: relative; z-index: 1; }
.about-hero__copy { width: min(660px, 54vw); padding: clamp(5.5rem, 10vw, 8rem) 0; }
.about-hero h1 { max-width: 13em; margin: 0; font-size: clamp(2.2rem, 4.4vw, 3.6rem); line-height: 1.5; text-wrap: balance; word-break: auto-phrase; }
.about-hero__copy > p:last-child { max-width: 35rem; margin: 1.7rem 0 0; color: rgba(244, 237, 223, .84); font-family: var(--serif); font-size: clamp(1rem, 1.5vw, 1.2rem); }

.about-story { background: #ece5d7; }
.about-story__inner { width: min(calc(100% - 40px), 760px); }
.about-story h2 { max-width: 14em; margin-bottom: clamp(2.2rem, 5vw, 3.8rem); font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.65; text-wrap: balance; word-break: auto-phrase; }
.about-story__copy { font-family: var(--serif); font-size: clamp(1rem, 1.4vw, 1.12rem); line-height: 2.15; }
.about-story__copy p { margin: 0; }
.about-story__copy p + p { margin-top: 1.45rem; }
.about-story__quote { margin: clamp(3.6rem, 8vw, 6rem) 0 !important; padding: clamp(2rem, 5vw, 3.2rem) 0; border-top: 1px solid rgba(23, 22, 42, .42); border-bottom: 1px solid rgba(23, 22, 42, .42); color: #17162a; font-size: clamp(1.65rem, 3.5vw, 2.75rem); line-height: 1.9; text-align: center; text-wrap: balance; word-break: auto-phrase; }
.about-story__quote--stanza span { display: block; }
.about-story__quote--stanza span + span { margin-top: 1.35em; }

.about-cta { position: relative; padding: clamp(5rem, 9vw, 8rem) 0; overflow: hidden; color: #f4eddf; background: #111024; text-align: center; }
.about-cta::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 0%, rgba(217, 192, 139, .14), transparent 48%); }
.about-cta .shell { position: relative; z-index: 1; }
.about-cta h2 { max-width: 17em; margin: 0 auto; font-size: clamp(2rem, 4.2vw, 3.5rem); text-wrap: balance; word-break: auto-phrase; }
.about-cta p:not(.eyebrow) { max-width: 38rem; margin: 1.3rem auto 2rem; color: rgba(244, 237, 223, .8); }
.about-page .footer-links { display: flex; flex-wrap: wrap; gap: 1rem; }

@media (max-width: 768px) {
  .about-hero { min-height: 760px; align-items: end; }
  .about-hero__media { height: 500px; bottom: auto; }
  .about-hero__media::after { background: linear-gradient(180deg, rgba(9, 18, 34, .04) 0%, rgba(9, 18, 34, .32) 46%, #111024 82%); }
  .about-hero__media img { object-position: 72% center; }
  .about-hero__copy { width: 100%; padding: 30rem 0 4.5rem; }
}

@media (max-width: 560px) {
  .about-page .mini-cta { min-height: 44px; display: inline-flex; align-items: center; padding: .45rem .65rem; font-size: .72rem; }
  .about-hero { min-height: 720px; }
  .about-hero__media { height: 455px; }
  .about-hero__copy { padding: 27rem 0 3.8rem; }
  .about-hero h1 { max-width: 12em; font-size: clamp(1.85rem, 7.8vw, 2.3rem); line-height: 1.58; }
  .about-hero__copy > p:last-child { font-size: .98rem; }
  .about-story__inner { width: min(calc(100% - 28px), 760px); }
  .about-story h2 { font-size: clamp(1.8rem, 7.8vw, 2.15rem); line-height: 1.7; }
  .about-story__quote { font-size: clamp(1.45rem, 7vw, 1.85rem); line-height: 1.85; }
  .about-cta .cta { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .about-page *, .about-page *::before, .about-page *::after { scroll-behavior: auto !important; transition: none !important; }
}
