/* ============================================================
   Feature landing pages (event-check-in-app.php, nonprofit-event-management-software.php)
   Loaded after home-v2.css; reuses its tokens and .ev-* components.
   ============================================================ */

/* inline text links inside copy */
.lp p a, .lp li a { color: var(--purple); font-weight: 500; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.lp p a:hover, .lp li a:hover { color: var(--purple-dark); }

/* hero note under the lead paragraph */
.ev-hero p.lp-hero-note { margin-top: 12px; font-size: 15px; color: var(--ink); font-weight: 500; }

/* intro / prose block: centered heading, readable measure */
.lp-prose { max-width: 820px; margin: 0 auto; }
.lp-prose h2 { font-size: 38px; font-weight: 600; line-height: 1.16; letter-spacing: -0.7px; text-align: center; }
.lp-prose p { margin-top: 16px; font-size: 17px; line-height: 1.75; color: var(--muted); }
.lp-prose h2 + p { margin-top: 22px; }
.lp-prose .ev-hero-cta { justify-content: center; margin-top: 32px; }

/* feature cards: 3 per row, an odd last row stays centered */
.lp-cards { display: flex; flex-wrap: wrap; justify-content: center; gap: 26px; }
.lp-cards > .ev-card { flex: 0 1 calc((100% - 52px) / 3); }
.ev-card h3 { position: relative; z-index: 1; font-size: 19px; font-weight: 600; letter-spacing: -0.2px; line-height: 1.35; }
.ev-card p { position: relative; z-index: 1; }

/* "Built for every event" use-case tiles */
.lp-uses { list-style: none; display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1040px; margin: 0 auto; }
.lp-uses li {
  display: flex; gap: 16px; align-items: flex-start;
  background: #fff; border: 1px solid var(--border); border-radius: 16px;
  padding: 22px 24px; font-size: 15.5px; line-height: 1.65; color: var(--muted);
}
.lp-uses li strong { display: block; margin-bottom: 4px; font-size: 17px; font-weight: 600; color: var(--ink); }
.lp-uses li:last-child:nth-child(odd) { grid-column: 1 / -1; }
.lp-tick {
  flex: none; display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border-radius: 10px; background: var(--purple-soft); color: var(--purple);
}
.lp-tick svg { width: 18px; height: 18px; }
.lp-note { max-width: 1040px; margin: 22px auto 0; text-align: center; font-size: 15.5px; color: var(--muted); }

/* numbered steps: 4 in a row */
.lp-steps { list-style: none; counter-reset: lp-step; display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.lp-steps li {
  counter-increment: lp-step; position: relative;
  background: #fff; border: 1px solid var(--border); border-radius: var(--radius);
  padding: 30px 24px 26px; font-size: 15px; line-height: 1.65; color: var(--muted);
}
.lp-steps li::before {
  content: counter(lp-step);
  display: inline-flex; align-items: center; justify-content: center;
  width: 38px; height: 38px; border-radius: 50%; margin-bottom: 16px;
  background: var(--yellow); color: #4a3608; font-size: 16px; font-weight: 600;
}
.lp-steps li strong { display: block; margin-bottom: 6px; font-size: 18px; font-weight: 600; color: var(--ink); }
.lp-center { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; margin-top: 38px; }

/* highlighted band (free / fees) */
.lp-band { background: var(--purple-tint); }
.lp-band-inner { display: grid; grid-template-columns: 1.3fr 1fr; gap: 48px; align-items: center; }
.lp-band h2 { font-size: 38px; font-weight: 600; line-height: 1.16; letter-spacing: -0.7px; }
.lp-band p { margin-top: 16px; font-size: 17px; line-height: 1.75; color: var(--muted); }
.lp-band-card {
  background: #fff; border: 1px solid var(--border); border-radius: var(--radius);
  padding: 32px; box-shadow: 0 30px 60px -40px rgba(71,59,240,0.45);
}
.lp-band-card p { margin-top: 0; font-size: 15.5px; line-height: 1.65; }
.lp-band-card .store-badges { margin-top: 20px; }
.lp-band-card .store-badges img { height: 46px; }
.lp-band-list { list-style: none; display: flex; flex-direction: column; gap: 14px; }
.lp-band-list li { display: flex; gap: 12px; align-items: flex-start; font-size: 15.5px; line-height: 1.55; color: var(--ink); }

/* buyer checklist (questions to ask) */
.lp-checklist { list-style: none; max-width: 880px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px; }
.lp-checklist li {
  display: flex; gap: 16px; align-items: flex-start;
  background: #fff; border: 1px solid var(--border); border-radius: 16px;
  padding: 20px 24px; font-size: 15.5px; line-height: 1.65; color: var(--muted);
}
.lp-checklist li strong { display: block; font-size: 17px; font-weight: 600; color: var(--ink); }
.lp-checklist + .lp-note { max-width: 880px; }

@media (max-width: 1040px) {
  .lp-steps { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 920px) {
  .lp-cards > .ev-card { flex-basis: calc((100% - 26px) / 2); }
  .lp-prose h2, .lp-band h2 { font-size: 30px; }
  .lp-band-inner { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 620px) {
  .lp-cards > .ev-card { flex-basis: 100%; }
  .lp-uses { grid-template-columns: 1fr; }
  .lp-steps { grid-template-columns: 1fr; }
  .lp-prose h2, .lp-band h2 { font-size: 27px; }
  .lp-prose p, .lp-band p { font-size: 16px; }
  .lp-band-card { padding: 24px; }
}
