/* Mobile polish layer (2026-11-09): readable minimum text, 44px tap targets, no tap delay, no iOS text inflation. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
a, button, [role="button"], summary, label { touch-action: manipulation; -webkit-tap-highlight-color: rgba(0,0,0,0.06); }
img, video { max-width: 100%; }
input, select, textarea { font-size: max(16px, 1em); }
@media (max-width: 640px) {
  .pcard__kicker, .email__sl-label, .cue__label, .lp-badge, .lp-step__pill, .lp-eyebrow,
  .cd-line .lbl, .ty-bar, .topbar, .stamp, .beat__lab small, main small, .pass-grid span, .lg, .swap { font-size: 12px !important; }
  .foot__links a, .footer a { display: inline-block; padding: 12px 8px; }
  .cnav { width: 44px; height: 44px; }
  .cdots button { width: 44px !important; height: 44px !important; padding: 19px !important; background-clip: content-box !important; }
  #tfPrev, #tfNext { min-width: 44px; min-height: 44px; }
  .nothanks { display: inline-block; padding: 12px 10px; }
}

/* Compact, sleek phone layout (2026-11-09): no white band at the top, tighter section rhythm */
@media (max-width:640px){
  .hero{padding:24px 0 28px!important}
  .hero h1{margin-top:0}
  .hero .lead{margin-top:12px}
  .cd-wrap{margin-top:24px!important}
  .hero-cta{margin-top:22px!important}
  .section{padding:44px 0!important}
  .section#apply{padding-top:20px!important}
  .sec-head{margin-bottom:26px!important}
  main.pp{padding-top:28px!important}
}

/* Fatimah pitch (2026-11-11): extra phone hardening for the funnel pages */
html, body { overflow-x: clip; }
@supports not (overflow: clip) { html, body { overflow-x: hidden; } }
@media (max-width: 640px) {
  .cd-when { line-height: 1.45; }
  .cd-when .cd-time { display: block; }
  .cd-when .cd-dot { display: none; }
  .cd-time { white-space: normal; }
  .hero-cta .btn, .section > .wrap > .btn-lg, .gift .btn { width: 100%; justify-content: center; }
  .btn, .cta, .wa-btn, .cal-btn, .tf-ok, .order, .bigprice, .cy-confirm { min-height: 48px; }
  .modal { max-height: calc(100dvh - 24px); overflow-y: auto; -webkit-overflow-scrolling: touch; }
  .modal-field input { min-height: 48px; }
  .disclaim { font-size: 13px; padding: 0 8px; }
  .host-stats { gap: 10px; }
  .pillar h3 { font-size: 19px; line-height: 1.35; }
  .bo-desc, .pillar p, .host-body p, .gift-copy p { font-size: 16px; }
  .gm-line { font-size: 13px; }
  .tf-opt { min-height: 48px; }
  .cy-slot { min-height: 44px; display: flex; align-items: center; justify-content: center; }
  .topbar { padding-left: max(16px, env(safe-area-inset-left)); padding-right: max(16px, env(safe-area-inset-right)); }
  .foot { padding-bottom: max(24px, env(safe-area-inset-bottom)); }
}

@media (max-width: 640px) {
  .modal-x { width: 46px !important; height: 46px !important; }
  .nothanks { min-height: 44px; display: inline-flex !important; align-items: center; justify-content: center; }
  .guar a, .g2 a, .note a { display: inline-block; padding: 12px 2px; }
  .thumb__url, .stamp, .email__count, .hero .k, .fmt, .cy-brand, .gm-time, .pass-no, .bo-dur, .co-f, .lg, .wins-hint { font-size: 13px !important; }
}
