/* Home Page plugin — simple & young */

:root {
	--hpv-bg: #fafaf7;
	--hpv-surface: #ffffff;
	--hpv-ink: #16181d;
	--hpv-ink-soft: #4a5060;
	--hpv-muted: #8a90a0;
	--hpv-line: #ececea;
	--hpv-mint: #c9f4dd;
	--hpv-mint-ink: #105a3b;
	--hpv-peach: #ffd8c2;
	--hpv-peach-ink: #6b3017;
	--hpv-lilac: #e4dcff;
	--hpv-lilac-ink: #392a86;
	--hpv-lemon: #fff1a6;
	--hpv-lemon-ink: #5b4500;
	--hpv-accent: #16181d;
	--hpv-accent-ink: #fafaf7;
	--hpv-radius: 18px;
	--hpv-radius-lg: 28px;
	--hpv-max: 1100px;
	--hpv-font: "Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
	--hpv-mono: "JetBrains Mono", ui-monospace, monospace;
}

*, *::before, *::after { box-sizing: border-box; }

body.home-page-plugin {
	margin: 0;
	min-height: 100vh;
	font-family: var(--hpv-font);
	font-size: 1.05rem;
	line-height: 1.55;
	color: var(--hpv-ink);
	background: var(--hpv-bg);
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}

body.home-page-plugin a {
	color: var(--hpv-ink);
	text-decoration: none;
	transition: color 0.15s ease, opacity 0.15s ease;
}

body.home-page-plugin a:hover,
body.home-page-plugin a:focus-visible {
	color: var(--hpv-ink-soft);
}

::selection { background: var(--hpv-lemon); color: var(--hpv-ink); }

/* Header */
.hpv-header {
	border-bottom: 1px solid var(--hpv-line);
	background: var(--hpv-bg);
}

.hpv-header__inner {
	max-width: var(--hpv-max);
	margin: 0 auto;
	padding: 1rem 1.5rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.hpv-logo {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--hpv-ink);
}

.hpv-logo__mark {
	font-family: var(--hpv-mono);
	font-size: 0.78rem;
	font-weight: 700;
	padding: 0.32rem 0.55rem;
	background: var(--hpv-ink);
	color: var(--hpv-bg);
	border-radius: 8px;
}

.hpv-logo__text { font-size: 1.05rem; }

.hpv-nav__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 1.4rem;
	align-items: center;
}

.hpv-nav__list a {
	color: var(--hpv-ink-soft);
	font-size: 0.95rem;
	font-weight: 500;
}

.hpv-nav__list a:hover { color: var(--hpv-ink); }

.hpv-nav__cta {
	color: var(--hpv-ink) !important;
	padding: 0.5rem 0.95rem;
	border: 1.5px solid var(--hpv-ink);
	border-radius: 999px;
	font-weight: 600 !important;
}

.hpv-nav__cta:hover {
	background: var(--hpv-ink);
	color: var(--hpv-bg) !important;
}

/* Hero */
.hpv-hero {
	padding: 5rem 1.5rem 4.5rem;
}

.hpv-hero__inner {
	max-width: 880px;
	margin: 0 auto;
	text-align: center;
}

.hpv-pill {
	display: inline-block;
	padding: 0.45rem 0.9rem;
	font-size: 0.85rem;
	font-weight: 500;
	color: var(--hpv-ink-soft);
	background: var(--hpv-surface);
	border: 1px solid var(--hpv-line);
	border-radius: 999px;
	margin-bottom: 1.6rem;
}

.hpv-hero__title {
	font-size: clamp(2rem, 5.6vw, 3.6rem);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.035em;
	margin: 0 0 1.5rem;
	color: var(--hpv-ink);
}

.hpv-mark {
	display: inline-block;
	padding: 0.05em 0.35em;
	border-radius: 0.4em;
	transform: rotate(-1deg);
}

.hpv-mark--mint  { background: var(--hpv-mint);  color: var(--hpv-mint-ink); }
.hpv-mark--peach { background: var(--hpv-peach); color: var(--hpv-peach-ink); transform: rotate(1.5deg); }

.hpv-hero__lede {
	font-size: clamp(1rem, 1.4vw, 1.18rem);
	color: var(--hpv-ink-soft);
	max-width: 38rem;
	margin: 0 auto 0.9rem;
}

.hpv-hero__sub {
	font-size: 0.95rem;
	color: var(--hpv-muted);
	max-width: 36rem;
	margin: 0 auto 2rem;
}

.hpv-hero__actions {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
}

.hpv-hero__deal {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	margin: 1.6rem auto 0;
	padding: 0.55rem 0.85rem 0.55rem 0.55rem;
	background: var(--hpv-mint);
	color: var(--hpv-mint-ink);
	border-radius: 999px;
	font-size: 0.92rem;
	font-weight: 500;
	max-width: 32rem;
	line-height: 1.35;
}

.hpv-hero__deal-num {
	display: inline-flex;
	align-items: center;
	padding: 0.25rem 0.65rem;
	background: var(--hpv-mint-ink);
	color: var(--hpv-mint);
	border-radius: 999px;
	font-family: var(--hpv-mono);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	flex-shrink: 0;
}

.hpv-hero__deal-text {
	text-align: left;
}

/* Buttons */
.hpv-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem 1.4rem;
	font-weight: 600;
	font-size: 0.98rem;
	border-radius: 999px;
	transition: transform 0.15s ease, background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	cursor: pointer;
	border: 1.5px solid transparent;
}

.hpv-btn:hover { transform: translateY(-1px); }

.hpv-btn--primary {
	background: var(--hpv-ink);
	color: var(--hpv-bg) !important;
}

.hpv-btn--primary:hover {
	background: #2a2d35;
	color: var(--hpv-bg) !important;
}

.hpv-btn--ghost {
	background: transparent;
	color: var(--hpv-ink) !important;
	border-color: var(--hpv-ink);
}

.hpv-btn--ghost:hover {
	background: var(--hpv-ink);
	color: var(--hpv-bg) !important;
}

.hpv-btn--lg {
	padding: 1.05rem 1.8rem;
	font-size: 1.05rem;
}

/* Sections */
.hpv-section {
	padding: 4rem 1.5rem;
}

.hpv-section--alt {
	background: var(--hpv-surface);
	border-top: 1px solid var(--hpv-line);
	border-bottom: 1px solid var(--hpv-line);
}

.hpv-section__inner {
	max-width: var(--hpv-max);
	margin: 0 auto;
}

.hpv-section__head {
	text-align: center;
	margin-bottom: 2.5rem;
}

.hpv-kicker {
	display: inline-block;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--hpv-muted);
	margin-bottom: 0.75rem;
}

.hpv-section__title {
	font-size: clamp(1.65rem, 3.4vw, 2.4rem);
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.15;
	margin: 0;
	color: var(--hpv-ink);
}

/* Industries — pastel tiles */
.hpv-tiles {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 640px)  { .hpv-tiles { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .hpv-tiles { grid-template-columns: repeat(4, 1fr); gap: 1.25rem; } }

.hpv-tile {
	padding: 1.6rem 1.4rem;
	border-radius: var(--hpv-radius-lg);
	transition: transform 0.18s ease;
}

.hpv-tile:hover { transform: translateY(-3px); }

.hpv-tile--mint  { background: var(--hpv-mint);  color: var(--hpv-mint-ink); }
.hpv-tile--peach { background: var(--hpv-peach); color: var(--hpv-peach-ink); }
.hpv-tile--lilac { background: var(--hpv-lilac); color: var(--hpv-lilac-ink); }
.hpv-tile--lemon { background: var(--hpv-lemon); color: var(--hpv-lemon-ink); }

.hpv-tile__emoji {
	display: inline-block;
	font-size: 1.6rem;
	margin-bottom: 0.7rem;
}

.hpv-tile__name {
	font-size: 1.15rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	margin: 0 0 0.45rem;
	color: inherit;
}

.hpv-tile__desc {
	margin: 0;
	font-size: 0.94rem;
	line-height: 1.5;
	color: inherit;
	opacity: 0.85;
}

/* Products — clean cards */
.hpv-cards {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 720px)  { .hpv-cards { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .hpv-cards { grid-template-columns: repeat(4, 1fr); gap: 1.25rem; } }

.hpv-card {
	background: var(--hpv-bg);
	border: 1px solid var(--hpv-line);
	border-radius: var(--hpv-radius);
	padding: 1.6rem 1.4rem;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.hpv-card:hover {
	transform: translateY(-3px);
	border-color: var(--hpv-ink);
	box-shadow: 6px 6px 0 0 var(--hpv-ink);
}

.hpv-card__chip {
	display: inline-block;
	padding: 0.3rem 0.65rem;
	font-size: 0.75rem;
	font-weight: 600;
	border-radius: 999px;
	margin-bottom: 1rem;
}

.hpv-chip--mint  { background: var(--hpv-mint);  color: var(--hpv-mint-ink); }
.hpv-chip--peach { background: var(--hpv-peach); color: var(--hpv-peach-ink); }
.hpv-chip--lilac { background: var(--hpv-lilac); color: var(--hpv-lilac-ink); }
.hpv-chip--lemon { background: var(--hpv-lemon); color: var(--hpv-lemon-ink); }

.hpv-card__title {
	font-size: 1.45rem;
	font-weight: 700;
	letter-spacing: -0.025em;
	margin: 0 0 0.55rem;
	color: var(--hpv-ink);
}

.hpv-card__desc {
	margin: 0;
	color: var(--hpv-ink-soft);
	font-size: 0.96rem;
	line-height: 1.55;
}

/* Section sub (under section title) */
.hpv-section__sub {
	margin: 0.85rem auto 0;
	color: var(--hpv-ink-soft);
	font-size: 1.05rem;
	max-width: 36rem;
}

/* Venues — switch steps */
.hpv-steps {
	list-style: none;
	margin: 0 0 2.5rem;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	counter-reset: hpv-step;
}

@media (min-width: 720px) { .hpv-steps { grid-template-columns: repeat(3, 1fr); gap: 1.25rem; } }

.hpv-mark--lilac { background: var(--hpv-lilac); color: var(--hpv-lilac-ink); transform: rotate(-1.5deg); }

.hpv-step {
	position: relative;
	padding: 1.5rem 1.4rem;
	background: var(--hpv-bg);
	border: 1.5px dashed var(--hpv-line);
	border-radius: var(--hpv-radius);
}

.hpv-step__num {
	display: inline-block;
	font-family: var(--hpv-mono);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: var(--hpv-muted);
	margin-bottom: 0.85rem;
}

.hpv-step__title {
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	margin: 0 0 0.45rem;
	color: var(--hpv-ink);
}

.hpv-step__desc {
	margin: 0;
	font-size: 0.95rem;
	color: var(--hpv-ink-soft);
	line-height: 1.55;
}

/* Venues — features */
.hpv-features {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 640px)  { .hpv-features { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .hpv-features { grid-template-columns: repeat(4, 1fr); gap: 1.25rem; } }

.hpv-feature {
	padding: 1.4rem 1.3rem;
	background: var(--hpv-surface);
	border: 1px solid var(--hpv-line);
	border-radius: var(--hpv-radius);
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.hpv-feature:hover {
	transform: translateY(-3px);
	border-color: var(--hpv-ink);
	box-shadow: 6px 6px 0 0 var(--hpv-ink);
}

.hpv-feature__icon {
	display: inline-block;
	font-size: 1.55rem;
	margin-bottom: 0.7rem;
}

.hpv-feature__name {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -0.015em;
	margin: 0 0 0.4rem;
	color: var(--hpv-ink);
}

.hpv-feature__desc {
	margin: 0;
	font-size: 0.92rem;
	color: var(--hpv-ink-soft);
	line-height: 1.5;
}

/* In every box — kit grid */
.hpv-kit {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 560px)  { .hpv-kit { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 880px)  { .hpv-kit { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1100px) { .hpv-kit { grid-template-columns: repeat(5, 1fr); gap: 1rem; } }

.hpv-kit__item {
	padding: 1.4rem 1.2rem;
	background: var(--hpv-surface);
	border: 1px solid var(--hpv-line);
	border-radius: var(--hpv-radius);
	text-align: center;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.hpv-kit__item:hover {
	transform: translateY(-3px);
	border-color: var(--hpv-ink);
	box-shadow: 6px 6px 0 0 var(--hpv-ink);
}

.hpv-kit__emoji {
	display: inline-block;
	font-size: 1.85rem;
	margin-bottom: 0.65rem;
}

.hpv-kit__name {
	font-size: 0.98rem;
	font-weight: 700;
	letter-spacing: -0.015em;
	margin: 0 0 0.4rem;
	color: var(--hpv-ink);
}

.hpv-kit__desc {
	margin: 0;
	font-size: 0.88rem;
	color: var(--hpv-ink-soft);
	line-height: 1.45;
}

/* Pricing — side-by-side comparison */
.hpv-compare {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	max-width: 880px;
	margin: 0 auto;
	align-items: stretch;
}

@media (min-width: 760px) {
	.hpv-compare {
		grid-template-columns: 1fr auto 1fr;
		gap: 1.5rem;
		align-items: center;
	}
}

.hpv-compare__col {
	padding: 1.8rem 1.5rem;
	background: var(--hpv-bg);
	border: 1px solid var(--hpv-line);
	border-radius: var(--hpv-radius-lg);
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.85rem;
}

.hpv-compare__col--old {
	opacity: 0.85;
}

.hpv-compare__col--old .hpv-compare__price {
	color: var(--hpv-muted);
	text-decoration: line-through;
	text-decoration-color: rgba(0, 0, 0, 0.35);
	text-decoration-thickness: 2px;
}

.hpv-compare__col--new {
	background: var(--hpv-mint);
	border-color: transparent;
	color: var(--hpv-mint-ink);
	box-shadow: 6px 6px 0 0 var(--hpv-ink);
}

.hpv-compare__col--new .hpv-compare__price,
.hpv-compare__col--new .hpv-compare__note {
	color: var(--hpv-mint-ink);
}

.hpv-compare__tag {
	display: inline-block;
	padding: 0.3rem 0.7rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	background: rgba(0, 0, 0, 0.06);
	color: var(--hpv-ink-soft);
	border-radius: 999px;
}

.hpv-compare__tag--mint {
	background: var(--hpv-mint-ink);
	color: var(--hpv-mint);
}

.hpv-compare__price {
	font-family: var(--hpv-font);
	font-size: clamp(2rem, 4.5vw, 2.8rem);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1;
	color: var(--hpv-ink);
}

.hpv-compare__price-soft {
	font-size: 0.5em;
	font-weight: 500;
	margin-left: 0.25rem;
	color: inherit;
	opacity: 0.65;
	letter-spacing: 0;
}

.hpv-compare__addon {
	display: inline-flex;
	align-items: baseline;
	gap: 0.45rem;
	padding: 0.35rem 0.75rem;
	background: rgba(0, 0, 0, 0.06);
	border-radius: 999px;
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--hpv-mint-ink);
}

.hpv-compare__col--new .hpv-compare__addon {
	background: rgba(16, 90, 59, 0.12);
}

.hpv-compare__addon-num {
	font-family: var(--hpv-mono);
	font-weight: 700;
	letter-spacing: -0.01em;
}

.hpv-compare__note {
	margin: 0;
	font-size: 0.95rem;
	color: var(--hpv-ink-soft);
	line-height: 1.5;
	max-width: 22rem;
}

.hpv-compare__vs {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin: 0 auto;
	background: var(--hpv-ink);
	color: var(--hpv-bg);
	border-radius: 999px;
	font-family: var(--hpv-mono);
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.05em;
}

/* Proof — deployment stats */
.hpv-stats {
	list-style: none;
	margin: 0 0 3rem;
	padding: 1.6rem 1.4rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
	background: var(--hpv-bg);
	border: 1px solid var(--hpv-line);
	border-radius: var(--hpv-radius-lg);
}

@media (min-width: 720px) { .hpv-stats { grid-template-columns: repeat(4, 1fr); } }

.hpv-stat {
	text-align: center;
	padding: 0.5rem 0.75rem;
	border-left: 1px solid var(--hpv-line);
}

.hpv-stat:first-child,
.hpv-stat:nth-child(3) { border-left: 0; }

@media (min-width: 720px) {
	.hpv-stat:nth-child(3) { border-left: 1px solid var(--hpv-line); }
}

.hpv-stat__num {
	display: block;
	font-size: clamp(1.6rem, 3.5vw, 2.4rem);
	font-weight: 700;
	letter-spacing: -0.035em;
	color: var(--hpv-ink);
	line-height: 1;
	margin-bottom: 0.35rem;
}

.hpv-stat__label {
	display: block;
	font-size: 0.85rem;
	color: var(--hpv-ink-soft);
	line-height: 1.35;
}

/* Proof — testimonial quotes */
.hpv-quotes {
	list-style: none;
	margin: 0 0 3rem;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 720px)  { .hpv-quotes { grid-template-columns: repeat(3, 1fr); gap: 1.25rem; } }

.hpv-quote {
	padding: 1.5rem 1.4rem;
	border-radius: var(--hpv-radius-lg);
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.hpv-quote--mint  { background: var(--hpv-mint);  color: var(--hpv-mint-ink); }
.hpv-quote--peach { background: var(--hpv-peach); color: var(--hpv-peach-ink); }
.hpv-quote--lilac { background: var(--hpv-lilac); color: var(--hpv-lilac-ink); }

.hpv-quote__text {
	margin: 0;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.55;
	color: inherit;
}

.hpv-quote__person {
	display: flex;
	align-items: center;
	gap: 0.7rem;
}

.hpv-quote__avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.12);
	color: inherit;
	font-weight: 700;
	font-size: 0.95rem;
	flex-shrink: 0;
}

.hpv-quote__meta {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}

.hpv-quote__name {
	font-size: 0.92rem;
	font-weight: 700;
	color: inherit;
}

.hpv-quote__role {
	font-size: 0.82rem;
	color: inherit;
	opacity: 0.8;
}

/* Proof — case studies */
.hpv-cases {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 880px) { .hpv-cases { grid-template-columns: repeat(2, 1fr); gap: 1.25rem; } }

.hpv-case {
	background: var(--hpv-bg);
	border: 1px solid var(--hpv-line);
	border-radius: var(--hpv-radius);
	padding: 1.6rem 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 0.9rem;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.hpv-case:hover {
	transform: translateY(-3px);
	border-color: var(--hpv-ink);
	box-shadow: 6px 6px 0 0 var(--hpv-ink);
}

.hpv-case__tag {
	display: inline-block;
	align-self: flex-start;
	padding: 0.3rem 0.65rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	border-radius: 999px;
	background: var(--hpv-lemon);
	color: var(--hpv-lemon-ink);
}

.hpv-case__title {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: -0.025em;
	margin: 0;
	color: var(--hpv-ink);
}

.hpv-case__desc {
	margin: 0;
	font-size: 0.95rem;
	color: var(--hpv-ink-soft);
	line-height: 1.55;
}

.hpv-case__stats {
	margin: 0.6rem 0 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.5rem;
	padding-top: 1rem;
	border-top: 1px dashed var(--hpv-line);
}

.hpv-case__stats > div {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}

.hpv-case__stats dt {
	margin: 0;
	font-size: 0.8rem;
	color: var(--hpv-muted);
}

.hpv-case__stats dd {
	margin: 0;
	font-family: var(--hpv-mono);
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--hpv-ink);
}

/* Get started — two paths */
.hpv-paths {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 880px) {
	.hpv-paths { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
}

.hpv-path {
	padding: 2rem 1.75rem;
	border-radius: var(--hpv-radius-lg);
	display: flex;
	flex-direction: column;
	gap: 1rem;
	border: 1px solid transparent;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.hpv-path:hover {
	transform: translateY(-3px);
	box-shadow: 8px 8px 0 0 var(--hpv-ink);
}

.hpv-path--ads {
	background: var(--hpv-lemon);
	color: var(--hpv-lemon-ink);
}

.hpv-path--biz {
	background: var(--hpv-mint);
	color: var(--hpv-mint-ink);
}

.hpv-path__tag {
	display: inline-block;
	align-self: flex-start;
	padding: 0.35rem 0.75rem;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	background: var(--hpv-lemon-ink);
	color: var(--hpv-lemon);
	border-radius: 999px;
}

.hpv-path__tag--alt {
	background: var(--hpv-mint-ink);
	color: var(--hpv-mint);
}

.hpv-path__title {
	margin: 0;
	font-size: clamp(1.4rem, 2.4vw, 1.75rem);
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.2;
	color: inherit;
}

.hpv-path__desc {
	margin: 0;
	font-size: 1rem;
	color: inherit;
	opacity: 0.85;
	line-height: 1.55;
}

.hpv-path__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	font-size: 0.95rem;
	color: inherit;
}

.hpv-path__list li {
	position: relative;
	padding-left: 1.5rem;
}

.hpv-path__list li::before {
	content: "→";
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 700;
	color: inherit;
	opacity: 0.7;
}

.hpv-path .hpv-btn {
	align-self: flex-start;
	margin-top: 0.4rem;
}

/* Closing CTA */
.hpv-cta {
	padding: 5rem 1.5rem;
	text-align: center;
}

.hpv-cta__inner { max-width: 36rem; margin: 0 auto; }

.hpv-cta__title {
	font-size: clamp(2rem, 5vw, 3rem);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.1;
	margin: 0 0 0.6rem;
	color: var(--hpv-ink);
}

.hpv-cta__sub {
	margin: 0 0 1.8rem;
	color: var(--hpv-ink-soft);
	font-size: 1.1rem;
}

/* Footer */
.hpv-footer {
	border-top: 1px solid var(--hpv-line);
	padding: 1.75rem 1.5rem;
}

.hpv-footer__inner {
	max-width: var(--hpv-max);
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
}

.hpv-footer__copy {
	margin: 0;
	font-size: 0.88rem;
	color: var(--hpv-muted);
}

@media (prefers-reduced-motion: reduce) {
	.hpv-tile, .hpv-card, .hpv-btn { transition: none; }
}
