/* PromptMyImage Theme 1.2.1 — homepage proportion, typography and layout refinement.
 * Loaded after pmi-main.css and scoped to the public front page.
 */
body.home,
body.home button,
body.home input,
body.home select,
body.home textarea,
body.home .site-header,
body.home .site-footer,
body.home .pmi-home-v118 {
  font-family: Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
body.home .pmi-home-v118 { --pmi-home-min-font: 14px; }
body.home .pmi-home-v118 .container {
  width: min(1440px, calc(100% - 64px)) !important;
  max-width: 1440px !important;
}
body.home .pmi-home-v118 :is(p,li,dd,dt,button,a,span,small,summary) {
  font-size: max(var(--pmi-home-min-font), 1em);
  line-height: 1.55;
}
body.home .pmi-v118-kicker,
body.home .pmi-v118-overline,
body.home .pmi-v118-analysis :is(dt,dd),
body.home .pmi-v118-demo-tabs button,
body.home .pmi-v118-prompt-actions .btn,
body.home .pmi-v118-negative p,
body.home .pmi-v118-microproof span,
body.home .pmi-v118-benefit-grid :is(strong,small),
body.home .pmi-v118-step-grid p,
body.home .pmi-v118-compare-table span,
body.home .pmi-v118-example-grid p,
body.home .pmi-v118-text-button,
body.home .pmi-v118-trust-facts span,
body.home .pmi-v118-pricing-grid article > small,
body.home .pmi-v118-unit-price,
body.home .pmi-v118-ready-card p,
body.home .pmi-v118-faq-list :is(summary,p),
body.home .site-footer :is(p,a,span,li) { font-size: 14px !important; }

/* Hero: 42/58 split with a materially larger product proof. */
body.home .pmi-v118-hero { padding: 58px 0 48px !important; }
body.home .pmi-v118-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(420px, .84fr) minmax(720px, 1.16fr) !important;
  gap: clamp(46px, 4.5vw, 76px) !important;
  align-items: center !important;
}
body.home .pmi-v118-hero-copy { max-width: 620px !important; }
body.home .pmi-v118-hero h1 {
  font-family: Poppins, sans-serif !important;
  font-size: clamp(56px, 5vw, 80px) !important;
  line-height: .98 !important;
  letter-spacing: -.052em !important;
}
body.home .pmi-v118-demo-card {
  display: grid !important;
  grid-template-columns: minmax(310px, .82fr) minmax(0, 1.68fr) !important;
  min-width: 0 !important;
  max-width: none !important;
  align-items: stretch !important;
}
body.home .pmi-v118-demo-source { min-width: 0 !important; padding: 22px !important; }
body.home .pmi-v118-demo-source > img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  object-position: center !important;
}
body.home .pmi-v118-demo-output { min-width: 0 !important; }
body.home .pmi-v118-prompt-panel p {
  min-height: 170px !important;
  font-size: 15px !important;
  line-height: 1.68 !important;
}

/* Benefits and three-step process. */
body.home .pmi-v118-benefit-grid > div { min-height: 88px !important; }
body.home .pmi-v118-steps { padding-block: 48px 56px !important; }
body.home .pmi-v118-step-grid { margin-top: 26px !important; }
body.home .pmi-v118-step-grid article { gap: 8px !important; }
body.home .pmi-v118-step-grid article .icon { margin-bottom: 12px !important; }
body.home .pmi-v118-step-grid h3 { margin: 8px 0 0 !important; }
body.home .pmi-v118-step-grid p { margin: 0 !important; }

/* Comparison + exactly four diverse examples, one clean desktop row. */
body.home .pmi-v118-proof { padding: 38px 0 72px !important; }
body.home .pmi-v118-proof-grid {
  display: grid !important;
  grid-template-columns: minmax(320px, .68fr) minmax(0, 1.72fr) !important;
  gap: 24px !important;
  align-items: start !important;
}
body.home .pmi-v118-compare-card,
body.home .pmi-v118-examples-panel {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
  min-width: 0 !important;
}
body.home .pmi-v118-example-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  overflow: visible !important;
}
body.home .pmi-v118-example-grid article {
  display: flex !important;
  min-width: 0 !important;
  min-height: 0 !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
body.home .pmi-v118-example-grid picture {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  background: #edf1f6 !important;
}
body.home .pmi-v118-example-grid .pmi-v118-example-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
}
body.home .pmi-v118-example-grid article > div {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  padding: 17px !important;
}
body.home .pmi-v118-example-grid h3 { font-size: 17px !important; }
body.home .pmi-v118-example-grid p { min-height: 0 !important; margin-bottom: 14px !important; }
body.home .pmi-v118-text-button { margin-top: auto !important; }

/* Trust: give each statement enough breathing room. */
body.home .pmi-v118-trust { padding: 34px 0 70px !important; }
body.home .pmi-v118-trust-grid {
  grid-template-columns: minmax(280px, .82fr) minmax(360px, 1.18fr) !important;
  gap: 26px !important;
  align-items: start !important;
}
body.home .pmi-v118-trust-facts {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

/* Pricing: wider, clearer cards and honest package wording. */
body.home .pmi-v118-pricing-grid { max-width: 1180px !important; gap: 20px !important; }
body.home .pmi-v118-pricing-grid article { min-height: 410px !important; padding: 30px !important; }
body.home .pmi-v118-pricing-grid article > p { font-size: 15px !important; }

/* FAQ gets 70%; supporting CTA gets 30%. */
body.home .pmi-v118-faq-grid {
  grid-template-columns: minmax(190px, .48fr) minmax(0, 1.72fr) minmax(260px, .7fr) !important;
  gap: 22px !important;
  align-items: start !important;
}
body.home .pmi-v118-faq-list summary { min-height: 54px !important; }
body.home .pmi-v118-ready-card { min-height: 0 !important; align-self: start !important; }

@media (max-width: 1280px) {
  body.home .pmi-v118-hero-grid { grid-template-columns: 1fr !important; }
  body.home .pmi-v118-hero-copy { max-width: 800px !important; }
  body.home .pmi-v118-demo-card { max-width: 1120px !important; }
  body.home .pmi-v118-proof-grid { grid-template-columns: 1fr !important; }
  body.home .pmi-v118-example-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (max-width: 980px) {
  body.home .pmi-home-v118 .container { width: min(100% - 32px, 1440px) !important; }
  body.home .pmi-v118-demo-card { grid-template-columns: 1fr !important; }
  body.home .pmi-v118-example-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.home .pmi-v118-trust-grid,
  body.home .pmi-v118-faq-grid { grid-template-columns: 1fr !important; }
  body.home .pmi-v118-trust-facts { grid-column: auto !important; }
}
@media (max-width: 580px) {
  body.home .pmi-v118-hero { padding-top: 34px !important; }
  body.home .pmi-v118-hero h1 { font-size: clamp(40px, 12vw, 54px) !important; }
  body.home .pmi-v118-example-grid { grid-template-columns: 1fr !important; }
  body.home .pmi-v118-example-grid picture { aspect-ratio: 16 / 10 !important; }
  body.home .pmi-v118-trust-facts { grid-template-columns: 1fr !important; }
}
