.mr-hero { color: var(--mr-color-white); background: var(--mr-color-background); }
.mr-section-anchor { display: block; }
.mr-hero-inner { display: grid; gap: var(--mr-space-5); padding: var(--mr-space-8) var(--mr-gutter) var(--mr-space-10); max-inline-size: 90rem; margin-inline: auto; }
.mr-hero-copy { display: flex; flex-direction: column; align-items: flex-start; gap: var(--mr-space-5); min-inline-size: 0; }
.mr-hero-eyebrow { margin: 0; font-family: var(--mr-font-heading); font-size: .875rem; line-height: 1.2; text-transform: uppercase; }
.mr-hero-title { margin: 0; font-family: var(--mr-font-heading); font-weight: var(--mr-weight-regular); font-size: 2.5rem; line-height: 1.15; white-space: normal; text-wrap: initial; }
.mr-hero-title-break { display: none; }
.mr-hero-description { inline-size: 100%; color: var(--mr-color-text-muted); font-family: var(--mr-font-body); font-weight: var(--mr-weight-regular); font-size: 1rem; line-height: var(--mr-leading-body); }
.mr-hero-description p { margin: 0; }
.mr-hero-description p + p { margin-block-start: 1.55em; }
.mr-hero-actions-support { display: grid; gap: var(--mr-space-3); inline-size: 100%; }
.mr-hero-actions { display: flex; flex-direction: column; gap: .625rem; }
.mr-hero-actions .mr-button { --mr-button-optical-offset: .125rem; inline-size: 100%; padding-inline: var(--mr-space-4); padding-block: calc(.875rem + var(--mr-button-optical-offset)) calc(.875rem - var(--mr-button-optical-offset)); font-weight: var(--mr-weight-regular); }
.mr-hero-support { margin: 0; color: var(--mr-color-text-muted); font-family: var(--mr-font-body); font-weight: var(--mr-weight-regular); font-size: .875rem; line-height: 1.5; white-space: pre-line; }
.mr-hero-portrait-field { min-inline-size: 0; }
.mr-hero-portrait { position: relative; aspect-ratio: 600 / 826; inline-size: 100%; max-inline-size: 37.5rem; overflow: hidden; }
.mr-hero-portrait .mr-hero-image { display: block; position: absolute; max-inline-size: none; inline-size: 102.89%; block-size: 100.1%; inset-inline-start: -1.44%; inset-block-start: -.1%; object-fit: cover; }
/* A frame export must not receive the original source's crop a second time. */
.mr-hero--portrait-framed .mr-hero-image { inline-size: 100%; block-size: 100%; inset: 0; object-position: center top; }
@media (min-width: 40rem) and (max-width: 63.999rem) {
  .mr-hero-inner { max-inline-size: 43rem; }
}
@media (min-width: 64rem) {
  .mr-hero-inner { grid-template-columns: minmax(0, 720fr) minmax(0, 602fr); gap: 3.375rem; padding: .625rem 0 .625rem var(--mr-gutter); }
  .mr-hero-copy { align-self: start; padding-block-start: 1.375rem; gap: var(--mr-space-6); }
  .mr-hero-eyebrow { line-height: normal; }
  .mr-hero-title { font-size: var(--mr-text-hero); line-height: .95; }
  .mr-hero-title-break { display: inline; }
  .mr-hero-description { max-inline-size: 42.5625rem; font-size: var(--mr-text-lead); line-height: 1.5; }
  .mr-hero-description p + p { margin-block-start: 1.5em; }
  .mr-hero-actions-support { gap: .875rem; max-inline-size: 35.625rem; }
  .mr-hero-actions { flex-direction: row; flex-wrap: wrap; gap: .875rem; }
  .mr-hero-actions .mr-button { inline-size: auto; padding-inline: 1.625rem; }
  .mr-hero-support { font-size: 1.0625rem; line-height: 1.55; }
  .mr-hero-portrait-field { padding-inline-start: var(--mr-space-7); overflow: hidden; }
  .mr-hero-portrait { inline-size: min(37.5rem, calc(100% + 1.625rem)); max-inline-size: none; }
  .mr-hero--portrait-framed .mr-hero-portrait { inline-size: 100%; aspect-ratio: 574 / 826; }
  .mr-hero--portrait-framed .mr-hero-image { object-fit: contain; }
  .mr-hero--without-image .mr-hero-inner { grid-template-columns: minmax(0, 1fr); padding-inline-end: var(--mr-gutter); min-block-size: auto; padding-block-end: var(--mr-space-10); }
}
@media (min-width: 90rem) {
  .mr-hero-description { font-size: 1.375rem; }
}
