.availability-r5-presentation__root {
  background: var(--color-bloom-cream);
  color: var(--color-care-forest);
}

.availability-r5-presentation__hero .button,
.availability-r5-presentation__closing .button {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font: 600 var(--text-sm)/1.428571 var(--font-interface);
  justify-content: center;
  padding-inline: 22px;
  text-decoration: none;
}

.availability-r5-presentation__hero .button {
  background: var(--color-care-forest);
  border-color: var(--color-care-forest);
  color: var(--color-paper-white);
  min-height: var(--control-min-height);
}

.availability-r5-presentation__closing .button {
  background: var(--color-paper-white);
  border-color: var(--color-paper-white);
  color: var(--color-care-forest);
  min-height: var(--control-prominent-min-height);
}

.availability-r5-presentation__hero {
  align-items: center;
  background:
    radial-gradient(70% 128% at 4% 100%, color-mix(in srgb, var(--color-living-coral) 16%, var(--color-transparent)), var(--color-transparent) 74%),
    radial-gradient(62% 112% at 96% 5%, color-mix(in srgb, var(--color-mint-on-forest) 22%, var(--color-transparent)), var(--color-transparent) 76%),
    var(--color-bloom-cream);
  display: flex;
  height: auto;
  min-height: 560px;
  overflow: clip;
  padding: 88px 80px;
  position: relative;
}

.availability-r5-presentation__heroRing {
  aspect-ratio: 1;
  border: 1px solid var(--color-border-warm);
  border-radius: 50%;
  position: absolute;
  right: -82px;
  top: 66px;
  width: var(--size-decorative-ring-desktop);
  display: none;
}

.availability-r5-presentation__heroContent { margin-inline: auto; max-width: 48.75rem; position: relative; text-align: center; width: 100%; }
.availability-r5-presentation__eyebrow { color: var(--color-coral-on-light); font: 600 var(--text-xs)/1.454545 var(--font-interface); letter-spacing: .1em; margin: 0 0 20px; }
.availability-r5-presentation__heroCopy { display: grid; gap: 20px; justify-items: center; }
.availability-r5-presentation__heroCopy h1 { color: var(--color-care-forest); font: 400 var(--text-4xl)/1.0625 var(--font-display); letter-spacing: -.025em; margin: 0; }
.availability-r5-presentation__heroDescription { color: var(--color-body-strong); font: 400 var(--text-lg)/1.555556 var(--font-interface); margin-inline: auto; max-width: 680px; }
.availability-r5-presentation__heroDescription p { margin: 0; }
.availability-r5-presentation__desktopOnly { display: contents; }
.availability-r5-presentation__compactOnly { display: none; }
.availability-r5-presentation__heroAction { align-items: center; display: flex; gap: 18px; justify-content: center; }
.availability-r5-presentation__heroAction > p { color: var(--color-forest-72); display: none; font: var(--text-xs)/1.5 var(--font-interface); margin: 0; }

.availability-r5-presentation__states {
  background:
    radial-gradient(70% 128% at 4% 0%, color-mix(in srgb, var(--color-living-coral) 16%, var(--color-transparent)), var(--color-transparent) 74%),
    var(--color-bloom-cream);
  padding-block: 88px;
}

.availability-r5-presentation__closing { align-items: center; background-color: var(--color-care-forest); background-image: var(--background-availability-closing); background-position: 50%, center 55%; background-size: cover; border-block: 1px solid var(--color-hairline); color: var(--color-paper-white); display: flex; height: auto; justify-content: space-between; padding: var(--space-closing-availability-desktop) 80px; }
.availability-r5-presentation__closingCopy { display: grid; gap: 16px; max-width: 760px; }
.availability-r5-presentation__closing h1, .availability-r5-presentation__closing h2 { font: 400 var(--text-4xl)/1.107143 var(--font-display); letter-spacing: -.025em; margin: 0; }
.availability-r5-presentation__closingCopy > p { font: 400 var(--text-lg)/1.555556 var(--font-interface); margin: 0; }

@media (min-width: 721px) and (max-width: 900px) {
  .site-shell:has(.availability-r5-module__root) .site-header { background: var(--color-bloom-cream); height: var(--size-header-tablet); padding-inline: 42px; }
  .availability-r5-presentation__hero { min-height: 500px; padding: 88px 32px 56px; }
  .availability-r5-presentation__heroRing { display: none; }
  .availability-r5-presentation__heroContent { display: flex; flex-direction: column; height: auto; justify-content: space-between; max-width: 720px; min-height: 396px; width: 100%; }
  .availability-r5-presentation__eyebrow { line-height: 1.333333; margin: 0; }
  .availability-r5-presentation__heroCopy { gap: 20px; }
  .availability-r5-presentation__heroCopy h1 { line-height: 1.03125; }
  .availability-r5-presentation__heroDescription { color: var(--color-care-forest); max-width: 680px; }
  .availability-r5-presentation__heroDescription .availability-r5-presentation__desktopOnly { display: none; }
  .availability-r5-presentation__heroDescription .availability-r5-presentation__compactOnly { display: inline; }
  .availability-r5-presentation__heroDescription .availability-r5-presentation__compactOnly { display: block; }
  .availability-r5-presentation__heroAction > p { display: block; }
  .availability-r5-presentation__heroAction .button__label--alternate { display: inline; }
  .availability-r5-presentation__heroAction .button__label--default { display: none; }
  .availability-r5-presentation__states { padding-block: 72px; }
  .availability-r5-presentation__closing { padding: var(--space-closing-availability-tablet) 40px; }
  .availability-r5-presentation__closingCopy { gap: 14px; max-width: 560px; }
  .availability-r5-presentation__closing h1, .availability-r5-presentation__closing h2 { line-height: 1.076923; }
  .availability-r5-presentation__closingCopy > p { font-size: var(--text-base); line-height: 1.625; }
}

@media (max-width: 720px) {
  .site-shell:has(.availability-r5-module__root) .site-header { background: var(--color-bloom-cream); height: var(--size-header-mobile); padding-inline: 16px; }
  .availability-r5-presentation__hero { min-height: 480px; padding: 128px 18px 40px; }
  .availability-r5-presentation__heroRing { display: none; }
  .availability-r5-presentation__heroContent { display: flex; flex-direction: column; height: auto; justify-content: space-between; min-height: 408px; width: 100%; }
  .availability-r5-presentation__eyebrow { letter-spacing: .08em; line-height: 1.363636; margin: 0; }
  .availability-r5-presentation__heroCopy { gap: 16px; }
  .availability-r5-presentation__heroCopy h1 { line-height: 1.043478; }
  .availability-r5-presentation__heroDescription { color: var(--color-care-forest); font: 400 var(--text-base)/1.5 var(--font-interface); }
  .availability-r5-presentation__heroDescription .availability-r5-presentation__desktopOnly { display: none; }
  .availability-r5-presentation__heroDescription .availability-r5-presentation__compactOnly { display: inline; }
  .availability-r5-presentation__heroDescription .availability-r5-presentation__compactOnly { display: block; }
  .availability-r5-presentation__heroAction { align-items: stretch; flex-direction: column; gap: 8px; }
  .availability-r5-presentation__heroAction .button { width: 100%; }
  .availability-r5-presentation__heroAction .button__label--alternate { display: inline; }
  .availability-r5-presentation__heroAction .button__label--default { display: none; }
  .availability-r5-presentation__heroAction > p { display: block; font-size: var(--text-xs); line-height: 1.363636; }
  .availability-r5-presentation__states { padding-block: 64px; }
  .availability-r5-presentation__closing {
    align-items: stretch;
    background-image: var(--background-availability-closing-mobile);
    flex-direction: column;
    gap: 18px;
    justify-content: flex-end;
    padding: var(--space-closing-availability-mobile) 18px;
  }
  .availability-r5-presentation__closingCopy { gap: 18px; }
  .availability-r5-presentation__closing h1, .availability-r5-presentation__closing h2 { line-height: 1.045455; }
  .availability-r5-presentation__closingCopy > p { font-size: var(--text-base); line-height: 1.533333; }
  .availability-r5-presentation__closing .button { width: 100%; }
}
