/* ============================================================
   Investwizz — product page, phone layout (≤ 640px)
   Loaded after mobile-base.css. The page's own <style> blocks
   sit in <body>, i.e. later in the cascade than this file, so
   selectors here carry a leading `body` to outrank them.
   Every rule lives inside the media query; desktop unchanged.
   Copy is never altered here — layout, size and spacing only.
   ============================================================ */

@media (max-width: 640px) {

  /* ---------- Hero: copy over the photo, phone render beneath ---------- */
  body .phero-inner { padding: 0 var(--gutter); }
  body .phero-copy { padding: 26px 0 8px; }
  body .phero-copy h1 { font-size: 1.9rem; margin-top: 14px !important; }
  body .phero-copy .lede { font-size: 0.95rem; line-height: 1.5; margin-top: 12px; }
  body .phero-copy .hero-btns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 18px; }
  body .phero-copy .hero-btns .btn { padding: 11px 10px; font-size: 0.82rem; white-space: normal; text-align: center; }
  body .phero-copy .cta-reassure { font-size: 0.7rem; margin-top: 10px; }
  body .phero-visual {
    flex: none; min-height: 0; height: 280px; overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
    mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
  }
  body .phero-img { width: 230px; max-width: 70%; }

  /* ---------- Starting portfolio ---------- */
  body .port-inner { padding-inline: var(--gutter); gap: 20px; }
  body .port-img { width: 100%; margin-left: 0; }
  body #portfolio .lede { margin-top: 10px !important; }
  body #portfolio .fine { margin-top: 10px !important; }

  /* ---------- Your choices: stacked rows, image left ---------- */
  body .choices-inner { padding-inline: var(--gutter); }
  body .choices-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 22px; }
  body .choices-grid .card { display: flex; align-items: stretch; }
  body .choice-img-wrap { flex: 0 0 38%; height: auto; min-height: 150px; }
  body .choices-grid .card > div:last-child { padding: 14px 12px !important; }
  body .choices-grid .card h3 { font-size: 0.92rem; margin-bottom: 6px; }
  body .choices-grid .card p { font-size: 0.75rem; line-height: 1.45; }
  body #choices .risk-inline { font-size: 0.8rem; margin-top: 16px !important; }

  /* ---------- Stocks & Shares ISA ---------- */
  body .isa-inner { padding-inline: var(--gutter); gap: 18px; }
  body #isa h2 { font-size: 1.6rem; }
  body #isa .lede { margin-top: 10px !important; }
  body .isa-card { padding: 22px 16px; border-radius: 20px; }
  body .isa-card-label { font-size: 0.6rem; }
  body .isa-card-amount { font-size: 3rem; margin-top: 10px; }
  body .isa-card-sub { font-size: 0.9rem; margin-top: 12px; line-height: 1.5; }

  /* ---------- Get started: photo band on top (card is in mobile-base.css) ---------- */
  body #start { min-height: 0 !important; }
  body #start > div[aria-hidden] { inset: 0 0 auto 0 !important; height: 230px; }
  body #start > div[aria-hidden] > div {
    background: linear-gradient(to bottom, rgba(6,3,26,0.15) 0%, rgba(6,3,26,0.4) 60%, var(--ink-900) 100%) !important;
  }
  body #start .h-lg { font-size: 1.3rem; margin-top: 10px !important; line-height: 1.15; }
}
