/* ==========================================================================
   Mobile heroes, 2026-10-13: hero copy sits at the bottom of the hero on
   phones (max 767px), per Atimi's mobile banner mockups. About 32px from the
   hero bottom (measured from the mockup at 390px wide). Desktop and tablet
   untouched. Enqueued site-wide last (functions.php, priority 999).
   ========================================================================== */
@media (max-width: 767px) {
  /* About 691 */
  .mark-hero .mark-hero__layout { justify-content: flex-end !important; padding-bottom: 32px !important; }
  .mark-hero .mark-hero__intro p:last-child { margin-bottom: 0 !important; }

  /* Contact 827 */
  .contact-hero > .hero-shell { align-self: stretch !important; min-height: 100% !important; align-items: flex-end !important; padding-bottom: 32px !important; }

  /* Services 835 */
  .services-hero > .services-hero__copy { align-self: end !important; padding-bottom: 32px !important; }

  /* Case studies 852 */
  .case-landing-hero .case-landing-hero-shell { align-items: flex-end !important; padding-bottom: 32px !important; }

  /* Careers 903, Recruiting 1057 */
  .careers-hero .careers-hero-shell { align-items: flex-end !important; padding-bottom: 32px !important; }
  .careers-hero .careers-hero-copy { padding-bottom: 0 !important; }

  /* HARP 1063 */
  .harp-hero { justify-content: flex-end !important; }
  .harp-hero .harp-hero-shell { padding-bottom: 32px !important; }

  /* Case study pages 1043 / 1048 / 1054 (were 28px) */
  .cs-hero .cs-hero-copy.e-con { padding-bottom: 32px !important; }

  /* Service detail pages 991 / 999 / 1004 / 1009 / 1014 */
  .service-hero > .service-hero-shell { margin-top: auto !important; margin-bottom: 0 !important; padding-bottom: 32px !important; }
}

/* Crumb page heroes (Sitemap 879, Privacy 880), 2026-10-13. Built on the service-hero
   classes (service-pages.css). Ron: 650px desktop, 450px mobile. */
.service-hero.crumb-hero { min-height: 650px !important; }
@media (max-width: 767px) {
  .service-hero.crumb-hero { min-height: 450px !important; }
  .service-hero.crumb-hero .service-hero-image img { object-position: 50% 50% !important; }
}

/* Mobile hero heights, 2026-10-13 (Ron): main pages and case study pages 640px,
   service detail (tertiary) pages 450px, same as the crumb pages. */
@media (max-width: 767px) {
  .mark-hero, .mark-hero .mark-hero__layout,
  .contact-hero,
  .services-hero,
  .case-landing-hero, .case-landing-hero .case-landing-hero-shell,
  .careers-hero, .careers-hero .careers-hero-shell,
  .harp-hero,
  .cs-hero, .cs-hero .cs-hero-media { min-height: 640px !important; height: 640px !important; }
  .contact-hero { grid-template-rows: 640px !important; }
  .service-hero:not(.crumb-hero) { min-height: 450px !important; height: 450px !important; }
}
