/* ══ THE FOR VENUES PAGE ═══════════════════════════════════════════════
   Design handoff of 5 Oct 2026 (design/handoff-for-venues). Loaded only
   where a PH Venues widget is placed, through get_style_depends(). Every
   colour a Global Colour covers is a custom property on .phv, set from
   the token file here and overridden by the widget's Global Colour
   controls; the few tints left as values are the design's own mixes of
   those colours, with no token of their own. Mobile is 767px and below. */

.phv {
	--phv-pink: var(--pink, #e8568a); --phv-pinkp: var(--pink-press, #c9376e); --phv-pinks: var(--pink-soft, #fdeef4);
	--phv-ink: var(--ink, #16181f); --phv-ink2: var(--ink-2, #5b6070); --phv-ink3: var(--ink-3, #8f95a6);
	--phv-surface: var(--surface, #f6f7f9); --phv-line: var(--line, #e4e6ec); --phv-line2: var(--line-2, #d3d7e0);
	--phv-open: var(--open, #1f7a4d); --phv-opens: var(--open-soft, #e8f4ed); --phv-shut: var(--shut, #b03a3f);
	--phv-dark: var(--dark, #16181f); --phv-navy: var(--navy-ink, #1b2a4a);
	--phv-gold: var(--gold, #e0a638); --phv-goldi: var(--gold-ink, #8a6400); --phv-golds: var(--gold-soft, #fff3cf);
	font-family: var(--font, 'Plus Jakarta Sans', -apple-system, system-ui, sans-serif);
	color: var(--phv-ink); background: #fff; padding: 84px 0; font-size: 16px; line-height: normal; -webkit-font-smoothing: antialiased;
}
.phv *, .phv *::before, .phv *::after { box-sizing: border-box; }
.phv h1, .phv h2, .phv h3, .phv p, .phv ul, .phv ol { margin: 0; padding: 0; font-family: inherit; line-height: normal; }
.phv-in { max-width: 1200px; margin: 0 auto; padding: 0 28px; }
.phv .phv-kick { display: inline-block; font-size: 11.5px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; color: var(--phv-pinkp); }
.phv .phv-h2 { font-size: 38px; font-weight: 800; letter-spacing: -1.2px; line-height: 1.08; text-wrap: balance; color: inherit; }
.phv .phv-kick + .phv-h2 { margin-top: 10px; }
.phv .phv-h3 { color: inherit; }
.phv .phv-lede { font-size: 17px; color: var(--phv-ink2); line-height: 1.6; max-width: 620px; text-wrap: pretty; }
.phv .phv-h2 + .phv-lede { margin-top: 12px; }
.phv .phv-center { text-align: center; }
.phv a.phv-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 24px; border-radius: 999px; font-size: 15px; font-weight: 700; line-height: 1.2; white-space: nowrap; text-decoration: none; transition: background var(--fast, .14s), color var(--fast, .14s), border-color var(--fast, .14s); }
.phv a.phv-btn--pink { background: var(--phv-pink); color: #fff; }
.phv a.phv-btn--pink:hover { background: var(--phv-pinkp); color: #fff; }
.phv a.phv-btn--ghost { border: 1.5px solid var(--phv-line2); color: var(--phv-ink); background: transparent; }
.phv a.phv-btn--ghost:hover { border-color: var(--phv-ink); color: var(--phv-ink); }
.phv a.phv-btn--white { background: #fff; color: var(--phv-navy); }
.phv a.phv-btn--white:hover { color: var(--phv-pinkp); }
.phv a.phv-btn--line { border: 1.5px solid rgba(255, 255, 255, .35); color: #fff; background: transparent; }
.phv a.phv-btn--line:hover { border-color: #fff; color: #fff; }
.phv a.phv-btn:focus-visible { outline: 2.5px solid var(--phv-pink); outline-offset: 2px; }
.phv-acts { display: flex; gap: 12px; flex-wrap: wrap; }

/* 1 hero, with the search moment */
.phv.phv-hero { background: linear-gradient(#f3f6fb, #fff); padding: 70px 0 80px; }
.phv-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: 56px; align-items: center; }
.phv .phv-h1 { font-size: 54px; font-weight: 800; letter-spacing: -2px; line-height: 1.02; margin: 14px 0 18px; text-wrap: balance; color: inherit; }
.phv-hero .phv-acts { margin-top: 28px; }
.phv .phv-hero__fine { font-size: 13px; color: var(--phv-ink3); margin-top: 14px; }
/* The bold top (theme 1.252.1): the venues navy, with a pink glow, white
   words, the pink button and an outlined white one. The search card stays
   white, so it reads as the thing they would see. */
.phv.phv-hero--bold { background: linear-gradient(115deg, #101a30 0%, var(--phv-navy) 48%, #2b3f6e 100%); color: #fff; position: relative; overflow: hidden; }
.phv.phv-hero--bold::after { content: ''; position: absolute; right: -160px; top: -200px; width: 640px; height: 640px; border-radius: 50%; background: radial-gradient(circle, rgba(232, 86, 138, .32), transparent 65%); pointer-events: none; }
.phv-hero--bold .phv-hero__grid { position: relative; z-index: 1; }
.phv.phv-hero--bold .phv-kick { color: #ff9ec0; }
.phv.phv-hero--bold .phv-h1 { color: #fff; }
.phv.phv-hero--bold .phv-lede { color: rgba(255, 255, 255, .86); }
.phv.phv-hero--bold .phv-hero__fine { color: rgba(255, 255, 255, .66); }
.phv.phv-hero--bold .phv-moment { border-color: transparent; box-shadow: 0 30px 70px rgba(5, 10, 25, .45); color: var(--phv-ink); }
.phv-moment { background: #fff; border: 1px solid var(--phv-line); border-radius: 22px; box-shadow: 0 24px 60px rgba(22, 24, 31, .16); overflow: hidden; }
.phv-moment__q { padding: 16px 18px; border-bottom: 1px solid var(--phv-line); font-size: 14px; font-weight: 600; display: flex; gap: 9px; align-items: center; }
.phv-moment__q i { font-style: normal; width: 22px; height: 22px; border-radius: 50%; background: var(--phv-pinks); color: var(--phv-pinkp); display: grid; place-items: center; font-size: 12px; flex-shrink: 0; }
.phv-moment__chips { display: flex; gap: 6px; flex-wrap: wrap; padding: 12px 18px 4px; }
.phv-chip { font-size: 11.5px; font-weight: 700; padding: 6px 11px; border-radius: 999px; background: var(--phv-surface); color: var(--phv-ink2); white-space: nowrap; }
.phv-chip.is-on { background: var(--phv-ink); color: #fff; }
.phv-vrow { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 12px 18px; border-top: 1px solid var(--phv-line); }
.phv-vrow.is-you { background: var(--phv-pinks); }
.phv-vimg { width: 54px; height: 54px; border-radius: 12px; background: var(--hatch, #dfe5ec); }
.phv-vrow.is-you .phv-vimg { background: #e9c3d2; }
.phv-vrow b { display: block; font-size: 14.5px; font-weight: 800; }
.phv-vrow small { display: block; font-size: 12px; color: var(--phv-ink3); margin-top: 2px; }
.phv-open { font-size: 11px; font-weight: 700; color: var(--phv-open); background: var(--phv-opens); border-radius: 999px; padding: 4px 9px; white-space: nowrap; }
.phv-youtag { font-size: 10px; font-weight: 800; letter-spacing: .06em; color: #fff; background: var(--phv-pink); border-radius: 999px; padding: 3px 8px; margin-left: 6px; vertical-align: 2px; }
.phv-moment__foot { background: var(--phv-dark); color: #fff; padding: 13px 18px; font-size: 13px; font-weight: 700; display: flex; justify-content: space-between; gap: 12px; }
.phv-moment__foot span { color: rgba(255, 255, 255, .62); font-weight: 600; }

/* 2 sound familiar: one card per row. Written for phones first, the
   two-sided desktop layout follows in the min-width block below. */
.phv-bento { display: grid; grid-template-columns: minmax(0, 1fr); max-width: 1120px; margin: 56px auto 0; gap: 20px; }
.phv-bx { display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 18px; align-content: center; padding: 26px 22px; border-radius: 28px; position: relative; overflow: hidden; min-width: 0; }
.phv-bx--border { border: 1px solid var(--phv-line); }
.phv-bx--surface { background: var(--phv-surface); }
.phv-bx--pink { background: var(--phv-pinks); }
.phv-bx > .phv-vis { order: -1; min-width: 0; }
.phv-bx__q { display: block; font-size: 18.5px; font-weight: 700; letter-spacing: -.4px; line-height: 1.4; quotes: '\201C' '\201D'; text-wrap: pretty; }
.phv-who { display: flex; align-items: center; gap: 9px; font-size: 14px; color: var(--phv-ink2); line-height: 1.35; }
.phv-who i { font-style: normal; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; font-size: 14px; font-weight: 800; color: #fff; flex-shrink: 0; }
.phv-who b { display: block; color: var(--phv-ink); font-size: 15px; }
.phv .phv-fix { margin-top: 4px; padding-top: 22px; border-top: 1px solid var(--phv-line); font-size: 15.5px; line-height: 1.6; color: var(--phv-ink2); text-wrap: pretty; }
.phv-fix b { color: var(--phv-open); font-weight: 800; }
.phv .phv-subnote { font-size: 12.5px; color: var(--phv-ink3); margin-top: 16px; }
/* the two boxes */
.phv-mm { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
.phv-mm > div { border-radius: 12px; padding: 16px 18px; font-size: 14px; line-height: 1.4; }
.phv-mm small { display: block; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; margin-bottom: 3px; }
.phv-mm__them { background: var(--phv-surface); color: var(--phv-ink2); }
.phv-mm__them b { color: var(--phv-shut); }
.phv-mm__us { background: var(--phv-opens); color: var(--phv-ink); }
.phv-mm__us small, .phv-mm__us b { color: var(--phv-open); }
/* figures */
.phv-adstat { display: flex; gap: 20px; background: var(--phv-surface); border-radius: 14px; padding: 20px 22px; }
.phv-adstat span { font-size: 13px; color: var(--phv-ink3); }
.phv-adstat b { display: block; font-size: 22px; font-weight: 800; color: var(--phv-ink); letter-spacing: -.5px; }
.phv-adstat .is-zero b { color: var(--phv-pinkp); }
/* the week chart: busy nights navy, the quiet midweek pink and striped */
.phv-week__cap { font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--phv-ink3); margin-bottom: 12px; }
.phv-chart { display: flex; align-items: flex-end; gap: 10px; height: 90px; }
.phv-chart__bar { flex: 1; border-radius: 6px 6px 3px 3px; background: linear-gradient(180deg, #2c4170, var(--phv-navy)); }
.phv-chart__bar.is-lo { background: repeating-linear-gradient(135deg, var(--phv-pinks) 0 8px, #f9d3e1 8px 16px); border: 2px dashed var(--phv-pink); border-bottom: none; }
.phv-days { display: flex; gap: 6px; margin-top: 6px; }
.phv-days span { flex: 1; text-align: center; font-size: 12.5px; font-weight: 700; color: var(--phv-ink3); }
.phv-days span.is-lo { color: var(--phv-pinkp); font-weight: 800; }
/* group chat */
.phv-chat { display: grid; gap: 6px; }
.phv-bub { max-width: 82%; font-size: 14px; line-height: 1.4; padding: 10px 14px; border-radius: 14px 14px 14px 4px; background: var(--phv-surface); }
.phv-bub small { display: block; font-size: 11px; font-weight: 800; color: var(--phv-ink3); margin-bottom: 1px; }
.phv-bub.is-me { justify-self: end; background: #dcf2e4; border-radius: 14px 14px 4px 14px; }
.phv-bub.is-link { border: 1px solid var(--phv-line); background: #fff; font-weight: 700; }
.phv-bub.is-link span { display: block; font-size: 11px; font-weight: 600; color: var(--phv-ink3); }
/* stacked messages */
.phv-dms { display: grid; gap: 6px; }
.phv-dm { background: #fff; border-radius: 14px; padding: 14px 16px; font-size: 14px; line-height: 1.45; box-shadow: var(--e1, 0 1px 2px rgba(22, 24, 31, .06)); }
.phv-dm small { display: block; font-size: 11.5px; font-weight: 700; color: var(--phv-ink3); margin-bottom: 3px; }
.phv-dm--2 { margin-left: 14px; opacity: .75; }
.phv-dm--3 { margin-left: 28px; opacity: .5; }
/* bars with figures */
.phv-funnel { display: grid; gap: 12px; }
.phv-fr { display: grid; grid-template-columns: 100px minmax(0, 1fr) 44px; gap: 10px; align-items: center; font-size: 14px; font-weight: 700; }
.phv-fr__bar { height: 18px; border-radius: 8px; background: var(--phv-surface); overflow: hidden; }
.phv-fr__bar i { display: block; height: 100%; border-radius: 8px; background: var(--phv-ink); }
.phv-fr.is-pink .phv-fr__bar i { background: var(--phv-pink); }
.phv-fr em { font-style: normal; text-align: right; font-weight: 800; }

@media (min-width: 768px) {
	.phv-bento { gap: 40px; }
	.phv-bx { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); grid-template-rows: 1fr auto 1fr; align-content: stretch; min-height: 520px; padding: 28px; column-gap: 56px; row-gap: 22px; }
	.phv-bx > .phv-who { grid-column: 1; padding: 0 8px 0 36px; }
	.phv-bx > .phv-bx__q { grid-column: 1; padding: 0 8px 0 36px; align-self: end; font-size: 23px; }
	.phv .phv-bx > .phv-fix { grid-column: 1; margin: 4px 8px 0 36px; align-self: start; }
	.phv-bx > .phv-vis { order: 0; grid-column: 2; grid-row: 1 / -1; align-self: stretch; display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: 48px 44px; border-radius: 22px; background: var(--phv-surface); }
	.phv-bento > .phv-bx:nth-child(even) { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); }
	.phv-bento > .phv-bx:nth-child(even) > .phv-bx__q, .phv-bento > .phv-bx:nth-child(even) > .phv-who { grid-column: 2; padding: 0 36px 0 8px; }
	.phv .phv-bento > .phv-bx:nth-child(even) > .phv-fix { grid-column: 2; margin: 4px 36px 0 8px; }
	.phv-bento > .phv-bx:nth-child(even) > .phv-vis { grid-column: 1; }
	.phv-bx.is-bare { grid-template-columns: minmax(0, 1fr); min-height: 0; }
	.phv-bx--surface > .phv-vis { background: #fff; }
	.phv-bx--pink > .phv-vis { background: rgba(255, 255, 255, .7); }
	.phv-bx > .phv-mm { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; align-content: center; }
	.phv-mm > div { padding: 22px 24px; font-size: 17px; white-space: nowrap; }
	.phv-mm small { font-size: 12px; margin-bottom: 6px; }
	.phv-mm__them { background: #fff; }
	.phv-adstat span { display: block; font-size: 14px; }
	.phv-adstat b { font-size: 40px; letter-spacing: -1.2px; }
	.phv-bx > .phv-week { justify-content: flex-start; gap: 0; }
	.phv-week__cap { margin-bottom: 20px; }
	.phv-week .phv-chart { flex: 1; height: auto; min-height: 200px; gap: 12px; }
	.phv-chart__bar { border-radius: 10px 10px 4px 4px; }
	.phv-week .phv-days { margin-top: 12px; }
	.phv-days span { font-size: 14px; }
	.phv-bub { font-size: 16px; padding: 13px 17px; border-radius: 18px 18px 18px 6px; background: #fff; }
	.phv-bub.is-me { border-radius: 18px 18px 6px 18px; align-self: flex-end; }
	.phv-bub.is-link { border-color: var(--phv-line2); }
	.phv-bub small { font-size: 12px; }
	.phv-bx > .phv-dms { display: grid; gap: 6px; }
	.phv-dm { font-size: 16.5px; padding: 18px 20px; border-radius: 16px; }
	.phv-dm small { font-size: 12.5px; margin-bottom: 5px; }
	.phv-dm--2 { margin-left: 24px; }
	.phv-dm--3 { margin-left: 48px; }
	.phv-fr { font-size: 15.5px; grid-template-columns: 150px minmax(0, 1fr) 60px; }
	.phv-fr__bar { height: 30px; border-radius: 10px; background: #fff; }
	.phv-fr__bar i { border-radius: 10px; }
	.phv-fr em { font-size: 17px; }
}

/* 3 how guests find you */
.phv.phv-journey { background: var(--phv-surface); }
.phv .phv-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 40px; list-style: none; }
.phv-step { background: #fff; border-radius: 18px; padding: 18px; display: flex; flex-direction: column; gap: 12px; box-shadow: var(--e1, 0 1px 2px rgba(22, 24, 31, .06)); }
.phv-step__n { width: 28px; height: 28px; border-radius: 50%; background: var(--phv-ink); color: #fff; font-size: 13px; font-weight: 800; display: grid; place-items: center; }
.phv-step .phv-h3 { font-size: 16px; font-weight: 800; letter-spacing: -.2px; }
.phv-step p { font-size: 13.5px; color: var(--phv-ink2); line-height: 1.5; }
.phv-mini { border: 1px solid var(--phv-line); border-radius: 12px; padding: 10px; display: grid; gap: 7px; margin-top: auto; min-height: 96px; align-content: start; }
.phv-mini__ln { display: flex; gap: 8px; align-items: center; font-size: 12px; font-weight: 700; }
.phv-mini__ln.is-sub { font-weight: 600; color: var(--phv-ink2); }
.phv-mini__ln .is-pink { color: var(--phv-pinkp); }
.phv-mini__dot { width: 26px; height: 26px; border-radius: 8px; background: #e9c3d2; flex-shrink: 0; }
.phv-mini__t { font-size: 10.5px; font-weight: 800; color: var(--phv-ink3); width: 34px; flex-shrink: 0; }
.phv-mini__tap { display: flex; gap: 6px; }
.phv-mini__tap span { flex: 1; text-align: center; font-size: 11.5px; font-weight: 700; border-radius: 999px; padding: 8px 0; background: var(--phv-surface); }
.phv-mini__tap span.is-hot { background: var(--phv-pink); color: #fff; }

/* 4 free, then more */
.phv-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; margin-top: 40px; }
.phv-col { border-radius: 22px; padding: 28px; }
.phv-col--free { border: 1px solid var(--phv-line); }
.phv-col--mem { background: var(--phv-navy); color: #fff; }
.phv-col .phv-h3 { font-size: 22px; font-weight: 800; letter-spacing: -.5px; }
.phv .phv-col__sub { font-size: 14px; line-height: 1.55; margin-top: 6px; color: var(--phv-ink2); }
.phv .phv-col--mem .phv-col__sub { color: rgba(255, 255, 255, .72); }
.phv .phv-col ul { list-style: none; margin-top: 20px; display: grid; gap: 14px; }
.phv-col li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; font-size: 14px; line-height: 1.5; }
.phv-col li b { display: block; font-size: 14.5px; }
.phv-col li span span { color: var(--phv-ink2); }
.phv-col--mem li span span { color: rgba(255, 255, 255, .72); }
.phv-tick { width: 22px; height: 22px; border-radius: 50%; background: var(--phv-opens); color: var(--phv-open); display: grid; place-items: center; font-size: 12px; font-weight: 800; }
.phv-col--mem .phv-tick { background: rgba(232, 86, 138, .2); color: #ff9ec0; }

/* 5 membership analytics */
.phv.phv-analytics { padding-top: 0; }
.phv-dash { display: grid; grid-template-columns: minmax(0, 1fr) 520px; gap: 56px; align-items: center; }
.phv .phv-analytics .phv-lede { margin-top: 14px; }
.phv-qs { display: grid; gap: 12px; margin-top: 22px; }
.phv-qs > div { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 10px; font-size: 14.5px; line-height: 1.5; color: var(--phv-ink2); }
.phv-qs i { font-style: normal; font-weight: 800; color: var(--phv-pinkp); }
.phv-qs b { color: var(--phv-ink); }
.phv-board { border: 1px solid var(--phv-line); border-radius: 22px; padding: 22px; box-shadow: var(--e2, 0 4px 16px rgba(22, 24, 31, .10)); }
.phv-board__top { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 16px; }
.phv-board__top b { font-size: 15px; font-weight: 800; }
.phv-board__top span { font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--phv-ink3); background: var(--phv-surface); padding: 4px 9px; border-radius: 999px; }
.phv-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.phv-kpi { background: var(--phv-surface); border-radius: 14px; padding: 14px 16px; }
.phv-kpi small { display: block; font-size: 12px; font-weight: 700; color: var(--phv-ink2); }
.phv-kpi b { display: block; font-size: 26px; font-weight: 800; letter-spacing: -.8px; margin-top: 4px; }
.phv-kpi em { font-style: normal; font-size: 12px; font-weight: 700; color: var(--phv-open); }
.phv .phv-board__note { font-size: 12.5px; color: var(--phv-ink2); line-height: 1.5; margin-top: 14px; padding: 12px 14px; border-radius: 12px; background: var(--phv-pinks); }
.phv-board__note b { color: var(--phv-pinkp); }

/* 6 pricing */
.phv.phv-pricing { background: var(--phv-surface); }
.phv-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 40px; align-items: stretch; }
.phv-tier { background: #fff; border: 1px solid var(--phv-line); border-radius: 20px; padding: 24px; display: flex; flex-direction: column; gap: 12px; }
.phv-tier--best { border: 2px solid var(--phv-pink); box-shadow: 0 14px 40px rgba(232, 86, 138, .16); }
/* The gold outline is in the build notes, though not drawn on the mock. */
.phv-tier--featured { border: 2px solid var(--phv-gold); }
.phv-badge { align-self: flex-start; font-size: 11px; font-weight: 800; padding: 4px 10px; border-radius: 999px; }
.phv-badge--plain { background: var(--phv-surface); color: var(--phv-ink2); }
.phv-badge--pink { background: var(--phv-pinks); color: var(--phv-pinkp); }
.phv-badge--gold { background: var(--phv-golds); color: var(--phv-goldi); }
.phv-tier .phv-h3 { font-size: 18px; font-weight: 800; }
.phv .phv-tier__for { font-size: 13.5px; color: var(--phv-ink2); line-height: 1.5; min-height: 40px; }
.phv-price { font-size: 40px; font-weight: 800; letter-spacing: -1.5px; }
.phv-price small { font-size: 14px; font-weight: 600; color: var(--phv-ink3); letter-spacing: 0; }
.phv .phv-tier__per { font-size: 12.5px; color: var(--phv-ink3); margin-top: -8px; }
.phv .phv-tier ul { list-style: none; margin-top: 4px; display: grid; gap: 9px; font-size: 13.5px; line-height: 1.45; }
.phv-tier li { display: grid; grid-template-columns: 16px minmax(0, 1fr); gap: 8px; }
.phv-tier li::before { content: '\2713'; font-weight: 800; color: var(--phv-open); }
.phv-tier .phv-btn { margin-top: auto; }
.phv .phv-tier__small { font-size: 12px; color: var(--phv-ink3); line-height: 1.5; }
.phv .phv-pnote { font-size: 12.5px; color: var(--phv-ink3); margin-top: 18px; text-align: center; }

/* 7 our promise */
.phv-proms { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 36px; }
.phv-prom { border-left: 3px solid var(--phv-ink); padding: 4px 0 4px 18px; }
.phv-prom b { display: block; font-size: 16px; font-weight: 800; letter-spacing: -.2px; }
.phv .phv-prom p { font-size: 14px; color: var(--phv-ink2); line-height: 1.55; margin-top: 6px; }

/* 8 venue questions */
.phv.phv-faqs { padding-top: 0; }
.phv-faq { max-width: 780px; margin: 32px auto 0; border-top: 1px solid var(--phv-line); }
.phv-faq details { border-bottom: 1px solid var(--phv-line); }
.phv-faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 16px; padding: 20px 2px; font-size: 16px; font-weight: 700; min-height: 56px; }
.phv-faq summary::-webkit-details-marker { display: none; }
.phv-faq summary::after { content: '+'; font-size: 22px; font-weight: 600; color: var(--phv-ink3); transition: transform .2s; flex-shrink: 0; }
.phv-faq details[open] summary::after { transform: rotate(45deg); }
.phv .phv-faq p { font-size: 14.5px; color: var(--phv-ink2); line-height: 1.6; padding: 0 2px 20px; max-width: 680px; }

/* 9 closing band */
.phv.phv-close { padding: 0 0 84px; }
.phv-closebox { background: var(--phv-navy); border-radius: 26px; padding: 48px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 30px; align-items: center; color: #fff; }
.phv .phv-closebox .phv-h2 { color: #fff; }
.phv .phv-closebox p { color: rgba(255, 255, 255, .72); font-size: 16px; line-height: 1.6; margin-top: 10px; max-width: 560px; }
.phv-closebox .phv-acts { gap: 10px; }

@media (max-width: 1000px) {
	.phv-hero__grid, .phv-dash { grid-template-columns: minmax(0, 1fr); }
	.phv-proms { grid-template-columns: minmax(0, 1fr); }
	.phv-tiers { gap: 12px; }
	.phv-tier { padding: 20px; }
	.phv .phv-steps { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
@media (max-width: 860px) {
	.phv-tiers { grid-template-columns: minmax(0, 1fr); max-width: 520px; margin-left: auto; margin-right: auto; }
	/* Stacked, Membership comes first. */
	.phv-tier--best { order: -1; }
}
@media (max-width: 767px) {
	.phv-in { padding: 0 16px; }
	.phv { padding: 56px 0; }
	.phv.phv-hero { padding: 40px 0 52px; }
	.phv .phv-h1 { font-size: 36px; letter-spacing: -1.3px; }
	.phv .phv-h2 { font-size: 28px; letter-spacing: -.8px; }
	.phv .phv-lede { font-size: 15.5px; }
	.phv-split, .phv .phv-steps { grid-template-columns: minmax(0, 1fr); }
	.phv-acts .phv-btn { flex: 1; }
	.phv-closebox { grid-template-columns: minmax(0, 1fr); padding: 30px 22px; }
	.phv .phv-tier__for { min-height: 0; }
}

/* ── v3 (20 Oct 2026) ───────────────────────────────────────────────
   Find your venue: a white card on the hero, searching the real listings
   as the owner types, each result opening that listing at its claim card. */
.phv-find { background: #fff; color: var(--phv-ink); border-radius: 22px; padding: 22px; box-shadow: 0 30px 70px rgba(5, 10, 25, .35); }
.phv-find .phv-find__h { display: block; font-size: 18px; font-weight: 800; letter-spacing: -.3px; }
.phv-find > p { margin-top: 6px; font-size: 14px; line-height: 1.5; color: var(--phv-ink2); }
.phv-find__q { display: flex; gap: 8px; margin-top: 14px; }
.phv .phv-find__q input { flex: 1; min-width: 0; height: 48px; padding: 0 14px; border: 1.5px solid var(--phv-line2); border-radius: 12px; font: inherit; font-size: 15px; color: var(--phv-ink); background: #fff; }
.phv .phv-find__q input:focus { outline: none; border-color: var(--phv-navy); box-shadow: 0 0 0 3px rgba(27, 52, 97, .12); }
.phv .phv-find__q button { flex: none; height: 48px; padding: 0 20px; border: 0; border-radius: 999px; background: var(--phv-pink); color: #fff; font: inherit; font-size: 15px; font-weight: 800; cursor: pointer; }
.phv .phv-find__q button:hover { background: var(--phv-pinkp); }
.phv-find__rs { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 6px; }
.phv-find__rs:empty { display: none; }
.phv-find__rs a { display: flex; align-items: center; gap: 12px; padding: 8px 10px; border: 1px solid var(--phv-line); border-radius: 14px; color: var(--phv-ink); text-decoration: none; }
.phv-find__rs a:hover { border-color: var(--phv-ink3); }
.phv-find__rs img { flex: none; width: 40px; height: 40px; border-radius: 10px; object-fit: cover; }
.phv-find__rs i { flex: none; width: 40px; height: 40px; border-radius: 10px; display: grid; place-items: center; background: var(--phv-surface); font-style: normal; font-weight: 800; color: var(--phv-ink2); }
.phv-find__rs span { flex: 1; min-width: 0; }
.phv-find__rs b { display: block; font-size: 14.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.phv-find__rs small { font-size: 12.5px; color: var(--phv-ink2); }
.phv-find__rs em { flex: none; font-style: normal; font-size: 12.5px; font-weight: 800; color: var(--phv-pinkp); }
.phv-find__rs .phv-find__none { padding: 10px 2px; font-size: 13.5px; color: var(--phv-ink2); }
.phv-find__miss { margin-top: 12px; font-size: 12.5px; color: var(--phv-ink3); }
.phv .phv-find__miss a { color: var(--phv-pinkp); font-weight: 700; }

/* The tiers side by side: one row per difference, a tick or a short line. */
.phv-cmp { margin-top: 36px; }
.phv-cmp table { width: 100%; margin-top: 12px; border-collapse: separate; border-spacing: 0; border: 1px solid var(--phv-line); border-radius: 16px; overflow: hidden; font-size: 14px; }
.phv-cmp th, .phv-cmp td { padding: 12px 14px; border-bottom: 1px solid var(--phv-line); text-align: center; }
.phv-cmp tbody tr:last-child th, .phv-cmp tbody tr:last-child td { border-bottom: 0; }
.phv-cmp thead th { background: var(--phv-surface); font-size: 12.5px; font-weight: 800; }
.phv-cmp th:first-child { text-align: left; font-weight: 600; }
.phv-cmp thead th:first-child { font-weight: 800; }
.phv-cmp .is-y { color: var(--phv-open); font-weight: 800; }
.phv-no { display: inline-block; width: 10px; height: 2px; border-radius: 2px; background: var(--phv-line2); vertical-align: middle; }
.phv-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 767px) {
	.phv-cmp th, .phv-cmp td { padding: 10px 8px; font-size: 13px; }
	.phv-find { padding: 18px; }
}
