/* Event Pricing — marketing picture + home section (2026-10-06).
   Used by public_site/_event_pricing_mock.html on the home page and on the
   Event Pricing feature page. Self-contained (evm-* / evh-*). */

.evm { position: relative; max-width: 560px; margin: 0 auto; padding-bottom: 92px; font-family: 'Inter', system-ui, sans-serif; color: #0f172a; }
.evm-cal { background: #fff; border: 1px solid #e5e7eb; border-radius: 18px; box-shadow: 0 24px 60px -24px rgba(15, 23, 42, .35); overflow: hidden; }
.evm-cal__bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; padding: 14px 16px; border-bottom: 1px solid #f1f5f9; }
.evm-cal__title { font-size: 16px; font-weight: 800; letter-spacing: -.01em; }
.evm-cal__legend { display: flex; flex-wrap: wrap; gap: 4px 10px; font-size: 11px; color: #475569; }
.evm-cal__legend i { display: inline-block; width: 9px; height: 9px; margin-right: 4px; border-radius: 50%; background: var(--c); vertical-align: -1px; }

.evm-cal__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.evm-dow { padding: 8px 6px 6px; font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #64748b; text-align: left; }
.evm-dow--we { color: #be123c; }
.evm-day { position: relative; display: flex; flex-direction: column; gap: 3px; min-height: 62px; min-width: 0; padding: 6px; border-top: 1px solid #f1f5f9; border-left: 1px solid #f1f5f9; font-size: 12px; font-weight: 600; color: #334155; }
.evm-day:nth-child(7n + 1) { border-left: 0; }
.evm-day--out { color: #cbd5e1; }
.evm-day--hot { background: #fff7ed; }
.evm-day--pick { background: #fff1f2; box-shadow: inset 0 0 0 2px #e11d48; }
.evm-pill { display: block; overflow: hidden; padding: 2px 5px; border-radius: 5px; background: var(--c); color: #fff; font-size: 10px; font-style: normal; font-weight: 600; line-height: 1.3; white-space: nowrap; text-overflow: ellipsis; }
.evm-price { align-self: flex-start; padding: 1px 5px; border-radius: 5px; background: #dcfce7; color: #166534; font-size: 10px; font-weight: 700; }

.evm-card { position: absolute; right: -12px; bottom: 0; width: min(330px, 86%); padding: 12px 14px; background: #fff; border: 1px solid #e5e7eb; border-left: 6px solid var(--c); border-radius: 16px; box-shadow: 0 28px 60px -20px rgba(15, 23, 42, .45); }
.evm-card__head { display: flex; gap: 10px; align-items: center; margin-bottom: 8px; }
.evm-card__date { display: grid; justify-items: center; width: 40px; padding: 3px 0; border: 1px solid #e5e7eb; border-radius: 9px; font-size: 17px; font-weight: 800; line-height: 1.05; }
.evm-card__date small { font-size: 9.5px; font-weight: 700; color: #64748b; text-transform: uppercase; }
.evm-card__why { display: grid; gap: 1px; min-width: 0; }
.evm-card__why strong { font-size: 13px; }
.evm-card__why strong i { display: inline-block; width: 9px; height: 9px; margin-right: 6px; border-radius: 50%; background: var(--c); }
.evm-card__why small { font-size: 11px; color: #64748b; }
.evm-card__row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px; align-items: center; padding: 7px 0; border-top: 1px solid #f1f5f9; font-size: 12.5px; font-weight: 600; }
.evm-card__price { white-space: nowrap; font-variant-numeric: tabular-nums; }
.evm-card__price s { color: #94a3b8; font-weight: 500; }
.evm-card__price b { color: #15803d; font-size: 14px; }
.evm-card__price small { color: #15803d; font-size: 10.5px; font-weight: 700; }
.evm-card__btn { padding: 4px 10px; border-radius: 8px; background: #4f46e5; color: #fff; font-size: 11.5px; }

@media (max-width: 560px) {
    .evm { padding-bottom: 112px; }
    .evm-day { min-height: 46px; padding: 4px; font-size: 11px; }
    .evm-pill { height: 5px; padding: 0; font-size: 0; }
    .evm-price { font-size: 9px; padding: 0 3px; }
    .evm-card { right: 0; left: 0; margin: 0 auto; width: 94%; }
}

/* ── Home page section ───────────────────────────────────────── */
.evh { padding: clamp(64px, 9vw, 120px) 0; background: #fbf8f3; color: #0a0b0f; overflow: hidden; }
.evh-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 72px); align-items: center; }
.evh-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #a63446; }
.evh h2 { margin: 0 0 16px; font-size: clamp(30px, 4.2vw, 50px); font-weight: 800; line-height: 1.05; letter-spacing: -.025em; }
.evh h2 em { font-style: normal; color: #a63446; }
.evh-lead { margin: 0 0 22px; font-size: 18px; line-height: 1.6; color: #3f4350; }
.evh-list { display: grid; gap: 12px; margin: 0 0 28px; padding: 0; list-style: none; }
.evh-list li { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; font-size: 15.5px; line-height: 1.5; color: #2a2d36; }
.evh-list li span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; background: rgba(166, 52, 70, .1); color: #a63446; font-weight: 800; }
.evh-ctas { display: flex; flex-wrap: wrap; gap: 12px; }
.evh-note { margin: 16px 0 0; font-size: 13px; color: #6b6f7a; }

@media (max-width: 900px) {
    .evh-grid { grid-template-columns: minmax(0, 1fr); }
}

/* ── Event Pricing feature page ──────────────────────────────── */
.evp-hero h1 { max-width: 820px; }
.evp-hero__ctas { justify-content: center; margin-top: 26px; position: relative; }
.evp-hero__visual { position: relative; max-width: 620px; margin: 48px auto 0; text-align: left; }
.evp-small { margin: 22px auto 0; max-width: 680px; text-align: center; font-size: 14px; color: var(--fd-text-sub, #52555c); }

.evp-why { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 28px; }
.evp-why__card { padding: 24px; background: #fff; border: 1px solid var(--fd-border, #e5e3de); border-radius: 16px; }
.evp-why__icon { display: block; margin-bottom: 10px; font-size: 26px; }
.evp-why__card h3 { margin: 0 0 8px; font-size: 18px; }
.evp-why__card p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--fd-text-sub, #52555c); }

.evp-sources, .evp-venues { display: grid; gap: 10px; max-width: 420px; margin: 0 auto; }
.evp-source { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; padding: 14px 16px; background: #fff; border: 1px solid #e5e7eb; border-left: 6px solid var(--c); border-radius: 14px; box-shadow: 0 10px 30px -18px rgba(15, 23, 42, .35); }
.evp-source strong { font-size: 15px; color: #0f172a; }
.evp-source span { grid-column: 1; font-size: 13px; color: #64748b; }
.evp-source b { grid-column: 2; grid-row: 1 / span 2; align-self: center; padding: 3px 10px; border-radius: 999px; background: color-mix(in srgb, var(--c) 14%, #fff); color: var(--c); font-size: 11.5px; text-transform: uppercase; letter-spacing: .03em; }

.evp-venue { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 14px 16px; background: color-mix(in srgb, var(--c) 8%, #fff); border: 1px solid color-mix(in srgb, var(--c) 30%, #fff); border-left: 6px solid var(--c); border-radius: 14px; }
.evp-venue i { width: 18px; height: 18px; border-radius: 50%; background: var(--c); }
.evp-venue span { font-weight: 700; color: #0f172a; }
.evp-venue small { font-size: 13px; color: #64748b; }

.evp-plans { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 24px; }
.evp-plan { padding: 26px; background: #fff; border: 1px solid var(--fd-border, #e5e3de); border-radius: 16px; }
.evp-plan--up { border-color: rgba(166, 52, 70, .35); box-shadow: 0 0 0 3px rgba(166, 52, 70, .06); }
.evp-plan h3 { margin: 0 0 12px; font-size: 18px; }

.evp-faq { display: grid; gap: 10px; margin-top: 20px; }
.evp-faq details { padding: 16px 18px; background: #fff; border: 1px solid var(--fd-border, #e5e3de); border-radius: 14px; }
.evp-faq summary { cursor: pointer; font-weight: 700; color: var(--fd-text, #1a1a1f); }
.evp-faq p { margin: 10px 0 0; line-height: 1.6; color: var(--fd-text-sub, #52555c); }

@media (max-width: 860px) {
    .evp-why, .evp-plans { grid-template-columns: minmax(0, 1fr); }
    .evp-hero__visual { margin-top: 32px; }
}
.evp-hero .btn-hero-secondary { background: #fff; color: var(--fd-text, #1a1a1f); border: 1px solid var(--fd-border, #e5e3de); }
.evp-hero .btn-hero-secondary:hover { background: #f5f3ef; }
.evh .v2-btn--outline { background: #fff; color: #0a0b0f; border: 1px solid #d9d4cb; }
