/* Approved landing refinement. Keep the existing studio and section treatments. */
.site-header .brand,
.site-header .header-enroll,
.site-header nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}


@media (max-width: 900px) {
  .hero.hero-m2 {
    grid-template-areas: 'headline' 'details' 'picture';
  }

  .hero-m2 .hero-details {
    margin-top: 0;
  }

  .hero-m2 .hero-purchase {
    margin-top: 18px;
    padding-top: 18px;
  }

  .hero-m2 .hero-purchase .hero-actions {
    margin-top: 14px;
    gap: 8px;
  }

  .hero-m2 .hero-product-format {
    max-width: 30ch;
    margin-inline: auto;
    font-size: 16px;
    line-height: 1.45;
    letter-spacing: 0;
    text-wrap: balance;
  }

  .hero-m2 .m2-watch,
  .hero-m2 .hero-actions .button {
    min-height: 48px;
    font-size: 16px;
  }

  .studio-composition {
    margin-top: 26px;
  }


  .enroll .enroll-list li,
  .enroll .price > span,
  .enroll .terms,
  .enroll .already,
  .enroll .checkout-note,
  .enroll-bar p {
    font-size: 16px;
  }

  .premium-preview .transcript summary,
  .return-next,
  .return-figure figcaption a {
    min-height: 44px;
  }
}

@media (max-width: 640px) {
  body {
    padding-bottom: max(calc(88px + env(safe-area-inset-bottom, 0px)), var(--enroll-bar-clearance, 0px));
  }

  .enroll-bar {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
    gap: 8px;
  }

  .enroll-bar .button {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 8px 10px;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
  }
}

/* A readable final sample invitation; all existing layout and behavior retained. */
.closing-copy .closing-ps { margin-top: 24px; padding-top: 20px; border-top: 1px solid #cfa38140; font-size: 16px; line-height: 1.6; max-width: 56ch; }
.closing-copy .closing-ps a { color: inherit; text-underline-offset: 4px; }
