/* EasyPrint V2.74 — stronger mobile scale trim + hero centering fix */
@media screen and (max-width: 540px) {
  body #home.section,
  body #how-it-works.section,
  body #pricing.section,
  body #payment-recovery.section,
  body #about.section {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* HOME tighter + centered */
  body #home .ep-hero-shell {
    max-width: 386px !important;
    padding-top: 22px !important;
    padding-bottom: 26px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  body #home .ep-hero-heading,
  body #home .ep-hero-bottom,
  body #home .ep-hero-actions {
    max-width: 320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    align-items: center !important;
    justify-content: center !important;
  }
  body #home .ep-hero-kicker {
    font-size: 11px !important;
    letter-spacing: .20em !important;
  }
  body #home .ep-hero-heading h1 {
    font-size: clamp(38px, 9.4vw, 50px) !important;
    line-height: .95 !important;
    margin-top: 8px !important;
    text-align: center !important;
  }
  body #home .ep-hero-meta {
    gap: 7px !important;
    max-width: 300px !important;
    margin: 14px auto 0 !important;
    justify-content: center !important;
  }
  body #home .ep-hero-meta span {
    font-size: 9.5px !important;
    padding: 6px 10px !important;
  }
  body #home .ep-hero-stage {
    transform: scale(.86) !important;
    transform-origin: center top !important;
    margin: 6px auto -24px !important;
  }
  body #home .ep-hero-subtitle {
    max-width: 300px !important;
    font-size: 12px !important;
    line-height: 1.56 !important;
    margin: 6px auto 0 !important;
    text-align: center !important;
  }
  body #home .ep-hero-actions { margin-top: 18px !important; }
  body #home .ep-hero-primary,
  body #home .upload-btn.ep-hero-primary {
    width: min(100%, 244px) !important;
    min-height: 42px !important;
    font-size: 14px !important;
    border-radius: 13px !important;
  }

  /* HOW */
  body #how-it-works .how-container { max-width: 392px !important; }
  body #how-it-works .how-heading .section-title {
    font-size: clamp(30px, 8.2vw, 40px) !important;
    line-height: 1.02 !important;
  }
  body #how-it-works .how-kicker { font-size: 11px !important; letter-spacing: .20em !important; }
  body #how-it-works .how-subtitle {
    max-width: 314px !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
  }
  body #how-it-works .ep-how-mobile-scene {
    width: min(100%, 382px) !important;
    height: clamp(346px, calc(min(50vw, 198px) * 2.12), 446px) !important;
    margin-top: 8px !important;
  }
  body #how-it-works .ep-how-phone { width: clamp(156px, 49vw, 198px) !important; }
  body #how-it-works .steps-grid {
    width: min(100%, 392px) !important;
    max-width: 392px !important;
    gap: 6px !important;
  }
  body #how-it-works .steps-grid .step-card {
    min-height: 78px !important;
    padding: 10px !important;
    border-radius: 12px !important;
  }
  body #how-it-works .steps-grid .step-card::before {
    width: 26px !important;
    height: 26px !important;
    margin-bottom: 7px !important;
    font-size: 10px !important;
  }
  body #how-it-works .steps-grid .step-card h3 { font-size: 10.5px !important; line-height: 1.16 !important; }
  body #how-it-works .steps-grid .step-card p { font-size: 8.8px !important; line-height: 1.32 !important; }

  /* PRICING */
  body #pricing .pricing-container,
  body #pricing .ep-paper-showcase { max-width: 392px !important; }
  body #pricing .ep-paper-intro h2 {
    font-size: clamp(31px, 8.2vw, 40px) !important;
    line-height: .98 !important;
    max-width: 280px !important;
  }
  body #pricing .ep-paper-intro p,
  body #pricing .pricing-subtitle {
    max-width: 310px !important;
    font-size: 12px !important;
    line-height: 1.52 !important;
  }
  body #pricing .ep-paper-service {
    max-width: 262px !important;
    transform: scale(.92) !important;
    transform-origin: center top !important;
  }
  body #pricing .ep-paper-stage {
    transform: scale(.88) !important;
    transform-origin: center top !important;
    margin-top: -18px !important;
    margin-bottom: -38px !important;
  }

  /* PAYMENT RECOVERY */
  body #payment-recovery .ep-recovery-shell { max-width: 392px !important; }
  body #payment-recovery .ep-recovery-kicker { font-size: 11px !important; letter-spacing: .20em !important; }
  body #payment-recovery .ep-recovery-title {
    font-size: clamp(30px, 8.2vw, 40px) !important;
    line-height: 1.02 !important;
  }
  body #payment-recovery .ep-recovery-lead {
    max-width: 306px !important;
    font-size: 12px !important;
    line-height: 1.56 !important;
  }
  body #payment-recovery input[type="text"],
  body #payment-recovery input[type="search"],
  body #payment-recovery input[type="tel"],
  body #payment-recovery .ep-recovery-form-shell input {
    min-height: 50px !important;
    font-size: 13.5px !important;
  }
  body #payment-recovery button,
  body #payment-recovery .ep-recovery-form-shell button {
    min-height: 46px !important;
    font-size: 14px !important;
  }

  /* ABOUT */
  body #about .ep-notes-container { max-width: 392px !important; }
  body #about .ep-notes-kicker { font-size: 11px !important; letter-spacing: .20em !important; }
  body #about .ep-notes-heading h2 {
    font-size: clamp(31px, 8.2vw, 40px) !important;
    line-height: .98 !important;
  }
  body #about .ep-notes-heading p {
    max-width: 304px !important;
    font-size: 12px !important;
    line-height: 1.54 !important;
  }
  body #about .ep-notes-board {
    transform: scale(.88) !important;
    transform-origin: center top !important;
    margin-top: -18px !important;
    margin-bottom: -92px !important;
  }

  /* footer slight trim */
  footer, .footer, .site-footer {
    font-size: 13px !important;
  }
}

@media screen and (max-width: 390px) {
  body #home .ep-hero-shell { max-width: 370px !important; }
  body #home .ep-hero-heading h1 { font-size: clamp(36px, 9vw, 46px) !important; }
  body #home .ep-hero-stage { transform: scale(.82) !important; margin-bottom: -38px !important; }
  body #how-it-works .ep-how-mobile-scene { height: clamp(332px, calc(min(49vw, 188px) * 2.1), 430px) !important; }
  body #pricing .ep-paper-stage { transform: scale(.84) !important; margin-bottom: -52px !important; }
  body #about .ep-notes-board { transform: scale(.84) !important; margin-bottom: -118px !important; }
}
