/* EasyPrint V2.73 — mobile landing scale trim.
   Purpose: make the mobile landing/public sections feel slightly smaller and more refined
   without changing desktop or backend behavior. */
@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: 14px !important;
    padding-right: 14px !important;
  }

  body #home .ep-hero-shell {
    max-width: 400px !important;
    padding-top: 24px !important;
    padding-bottom: 30px !important;
  }
  body #home .ep-hero-heading { max-width: 340px !important; }
  body #home .ep-hero-kicker {
    font-size: 12px !important;
    letter-spacing: .22em !important;
  }
  body #home .ep-hero-heading h1 {
    font-size: clamp(44px, 10.5vw, 56px) !important;
    line-height: .96 !important;
    margin-top: 10px !important;
  }
  body #home .ep-hero-meta {
    gap: 8px !important;
    max-width: 330px !important;
    margin-top: 16px !important;
  }
  body #home .ep-hero-meta span {
    font-size: 10px !important;
    padding: 7px 11px !important;
    border-radius: 999px !important;
  }
  body #home .ep-hero-stage {
    transform: scale(.92) !important;
    transform-origin: center top !important;
    margin-top: 8px !important;
    margin-bottom: -10px !important;
  }
  body #home .ep-hero-subtitle {
    max-width: 315px !important;
    font-size: 12.5px !important;
    line-height: 1.6 !important;
    margin-top: 8px !important;
  }
  body #home .ep-hero-actions { margin-top: 20px !important; }
  body #home .ep-hero-primary,
  body #home .upload-btn.ep-hero-primary {
    width: min(100%, 260px) !important;
    min-height: 44px !important;
    font-size: 15px !important;
    border-radius: 14px !important;
  }

  body #how-it-works .how-container { max-width: 404px !important; }
  body #how-it-works .how-heading .section-title {
    font-size: clamp(32px, 8.9vw, 42px) !important;
    line-height: 1.02 !important;
  }
  body #how-it-works .how-subtitle {
    max-width: 330px !important;
    font-size: 12.5px !important;
  }
  body #how-it-works .ep-how-mobile-scene {
    width: min(100%, 396px) !important;
    height: clamp(368px, calc(min(52vw, 212px) * 2.15), 474px) !important;
    margin-top: 10px !important;
  }
  body #how-it-works .ep-how-phone {
    width: clamp(170px, 52vw, 214px) !important;
  }
  body #how-it-works .steps-grid {
    width: min(100%, 404px) !important;
    max-width: 404px !important;
    gap: 7px !important;
  }
  body #how-it-works .steps-grid .step-card {
    min-height: 84px !important;
    padding: 11px !important;
    border-radius: 13px !important;
  }
  body #how-it-works .steps-grid .step-card::before {
    width: 28px !important;
    height: 28px !important;
    margin-bottom: 8px !important;
    font-size: 10.5px !important;
  }
  body #how-it-works .steps-grid .step-card h3 {
    font-size: 11px !important;
    line-height: 1.18 !important;
  }
  body #how-it-works .steps-grid .step-card p {
    font-size: 9px !important;
    line-height: 1.34 !important;
  }

  body #pricing .pricing-container { max-width: 404px !important; }
  body #pricing .ep-paper-showcase {
    max-width: 404px !important;
  }
  body #pricing .ep-paper-intro h2 {
    font-size: clamp(34px, 8.8vw, 44px) !important;
    line-height: .98 !important;
    max-width: 300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body #pricing .ep-paper-intro p,
  body #pricing .pricing-subtitle {
    max-width: 326px !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
  }
  body #pricing .ep-paper-service {
    max-width: 274px !important;
    transform: scale(.96) !important;
    transform-origin: center top !important;
  }
  body #pricing .ep-paper-stage {
    transform: scale(.93) !important;
    transform-origin: center top !important;
    margin-top: -10px !important;
    margin-bottom: -18px !important;
  }

  body #payment-recovery .ep-recovery-shell { max-width: 404px !important; }
  body #payment-recovery .ep-recovery-title {
    font-size: clamp(32px, 8.7vw, 44px) !important;
    line-height: 1.02 !important;
  }
  body #payment-recovery .ep-recovery-lead {
    max-width: 322px !important;
    font-size: 12.5px !important;
    line-height: 1.6 !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: 52px !important;
    font-size: 14px !important;
  }
  body #payment-recovery button,
  body #payment-recovery .ep-recovery-form-shell button {
    min-height: 48px !important;
    font-size: 15px !important;
  }

  body #about .ep-notes-container { max-width: 404px !important; }
  body #about .ep-notes-heading h2 {
    font-size: clamp(34px, 8.7vw, 44px) !important;
    line-height: .98 !important;
  }
  body #about .ep-notes-heading p {
    max-width: 318px !important;
    font-size: 12.5px !important;
    line-height: 1.58 !important;
  }
  body #about .ep-notes-board {
    transform: scale(.93) !important;
    transform-origin: center top !important;
    margin-top: -8px !important;
    margin-bottom: -42px !important;
  }
}

@media screen and (max-width: 390px) {
  body #home .ep-hero-stage { transform: scale(.9) !important; margin-bottom: -18px !important; }
  body #pricing .ep-paper-stage { transform: scale(.9) !important; margin-bottom: -26px !important; }
  body #about .ep-notes-board { transform: scale(.9) !important; margin-bottom: -58px !important; }
}
