/**
 * invisible Component Base — alle .inv-*-Klassen.
 *
 * Regeln:
 *   - Werte AUSSCHLIESSLICH aus Tokens (var(--inv-*))
 *   - BEM-Notation: .inv-block / .inv-block__element / .inv-block--variant
 *   - Neue Komponenten: hier ergänzen, ggf. Component-Tokens davor
 *
 * Scope: .inv-grapes-page > * — verhindert Stil-Kollision mit Site-Frame.
 */

/* === LAYOUT: Section + Container =================================== */
.inv-section { padding: var(--inv-space-24) var(--inv-space-6); background: var(--inv-color-bg); color: var(--inv-color-fg); }
.inv-section--muted { background: var(--inv-color-bg-muted); }
.inv-section--subtle { background: var(--inv-color-bg-subtle); }
.inv-section--brand { background: var(--inv-color-brand); color: var(--inv-color-brand-fg); }
.inv-section--dark { background: var(--inv-color-dark); color: var(--inv-color-dark-fg); }
.inv-section--tight { padding-top: var(--inv-space-12); padding-bottom: var(--inv-space-12); }
.inv-section--roomy { padding-top: var(--inv-space-32); padding-bottom: var(--inv-space-32); }

.inv-container { max-width: var(--inv-container-max); margin-left: auto; margin-right: auto; }
.inv-container--wide { max-width: var(--inv-container-wide); }
.inv-container--narrow { max-width: var(--inv-container-narrow); }
.inv-container--prose { max-width: var(--inv-container-prose); }

/* === TYPOGRAPHY ==================================================== */
.inv-h1 { font-size: var(--inv-font-size-4xl); font-weight: var(--inv-font-weight-extrabold); line-height: var(--inv-line-height-tight); margin: 0 0 var(--inv-space-5); color: inherit; }
.inv-h2 { font-size: var(--inv-font-size-3xl); font-weight: var(--inv-font-weight-bold); line-height: var(--inv-line-height-snug); margin: 0 0 var(--inv-space-12); text-align: center; color: inherit; }
.inv-h3 { font-size: var(--inv-font-size-xl); font-weight: var(--inv-font-weight-bold); line-height: var(--inv-line-height-snug); margin: 0 0 var(--inv-space-2); color: inherit; }
.inv-h4 { font-size: var(--inv-font-size-lg); font-weight: var(--inv-font-weight-semibold); margin: 0 0 var(--inv-space-2); color: inherit; }

.inv-lead { font-size: var(--inv-font-size-xl); line-height: var(--inv-line-height-normal); margin: 0 0 var(--inv-space-8); opacity: 0.88; }
.inv-text { font-size: var(--inv-font-size-base); line-height: var(--inv-line-height-relaxed); color: var(--inv-color-fg-muted); margin: 0 0 var(--inv-space-4); }
.inv-text--strong { color: var(--inv-color-fg); }
.inv-text--small { font-size: var(--inv-font-size-sm); }

/* === GRID ========================================================== */
.inv-grid { display: grid; gap: var(--inv-space-8); }
.inv-grid--tight { gap: var(--inv-space-4); }
.inv-grid--loose { gap: var(--inv-space-12); }
.inv-grid-2 { grid-template-columns: repeat(2, 1fr); }
.inv-grid-3 { grid-template-columns: repeat(3, 1fr); }
.inv-grid-4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 768px) {
	.inv-grid-2, .inv-grid-3, .inv-grid-4 { grid-template-columns: 1fr; }
}

/* === BUTTON ======================================================== */
.inv-btn {
	display: inline-block;
	padding: var(--inv-space-4) var(--inv-space-8);
	border-radius: var(--inv-radius-md);
	font-weight: var(--inv-font-weight-bold);
	font-size: var(--inv-font-size-lg);
	text-decoration: none;
	border: 0;
	cursor: pointer;
	transition: transform var(--inv-transition-fast), background var(--inv-transition-fast);
}
.inv-btn:hover { transform: translateY(-2px); }
.inv-btn--brand { background: var(--inv-color-brand); color: var(--inv-color-brand-fg); }
.inv-btn--brand:hover { background: var(--inv-color-brand-hover); }
.inv-btn--dark { background: var(--inv-color-dark); color: var(--inv-color-dark-fg); }
.inv-btn--outline { background: transparent; color: var(--inv-color-fg); border: 2px solid var(--inv-color-fg); }
.inv-btn--ghost { background: transparent; color: var(--inv-color-fg); }
.inv-btn--sm { padding: var(--inv-space-2) var(--inv-space-5); font-size: var(--inv-font-size-sm); }
.inv-btn--lg { padding: var(--inv-space-5) var(--inv-space-10); font-size: var(--inv-font-size-xl); }

/* === HERO ========================================================== */
.inv-hero {
	padding: var(--inv-space-32) var(--inv-space-6);
	text-align: center;
	color: var(--inv-color-dark-fg);
	background: linear-gradient(135deg, var(--inv-color-slate-950) 0%, var(--inv-color-accent) 100%);
}
.inv-hero__inner { max-width: var(--inv-container-narrow); margin: 0 auto; }
.inv-hero--brand { background: var(--inv-color-brand); color: var(--inv-color-brand-fg); }
.inv-hero--dark { background: var(--inv-color-dark); color: var(--inv-color-dark-fg); }
.inv-hero--light { background: var(--inv-color-bg-muted); color: var(--inv-color-fg); }

/* === FEATURE-CARD ================================================== */
.inv-feature {
	padding: var(--inv-space-8);
	background: var(--inv-color-bg);
	border-radius: var(--inv-radius-lg);
	box-shadow: var(--inv-shadow-md);
	text-align: center;
}
.inv-feature--ghost { background: transparent; box-shadow: none; }
.inv-feature--bordered { background: transparent; box-shadow: none; border: 1px solid var(--inv-color-border); }
.inv-feature--dark { background: var(--inv-color-dark); color: var(--inv-color-dark-fg); box-shadow: none; }
.inv-feature__icon {
	width: 56px;
	height: 56px;
	margin: 0 auto var(--inv-space-4);
	background: var(--inv-color-brand-soft);
	color: var(--inv-color-brand-strong);
	border-radius: var(--inv-radius-full);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	font-weight: var(--inv-font-weight-bold);
}
.inv-feature--dark .inv-feature__icon { background: rgba(255, 255, 255, 0.1); color: var(--inv-color-brand); }
.inv-feature h3, .inv-feature .inv-feature__title { font-size: var(--inv-font-size-xl); margin: 0 0 var(--inv-space-2); color: inherit; font-weight: var(--inv-font-weight-bold); }
.inv-feature p { color: var(--inv-color-fg-muted); line-height: var(--inv-line-height-relaxed); margin: 0; }
.inv-feature--dark p { color: rgba(255, 255, 255, 0.7); }

/* === TESTIMONIAL =================================================== */
.inv-testimonial {
	max-width: var(--inv-container-narrow);
	margin: 0 auto;
	padding: var(--inv-space-10);
	background: var(--inv-color-bg-muted);
	border-left: 4px solid var(--inv-color-brand);
	border-radius: var(--inv-radius-md);
}
.inv-testimonial__quote { font-size: var(--inv-font-size-2xl); font-style: italic; line-height: var(--inv-line-height-snug); color: var(--inv-color-fg); margin: 0 0 var(--inv-space-5); }
.inv-testimonial__cite { color: var(--inv-color-fg-muted); font-size: var(--inv-font-size-sm); display: flex; align-items: center; gap: var(--inv-space-3); }
.inv-testimonial__cite img { width: 48px; height: 48px; border-radius: var(--inv-radius-full); }
.inv-testimonial--dark { background: var(--inv-color-dark); color: var(--inv-color-dark-fg); }
.inv-testimonial--dark .inv-testimonial__quote { color: var(--inv-color-dark-fg); }

/* === CTA-BOX ======================================================= */
.inv-cta { padding: var(--inv-space-24) var(--inv-space-6); text-align: center; }
.inv-cta--brand { background: var(--inv-color-brand); color: var(--inv-color-brand-fg); }
.inv-cta--dark { background: var(--inv-color-dark); color: var(--inv-color-dark-fg); }
.inv-cta--muted { background: var(--inv-color-bg-muted); color: var(--inv-color-fg); }
.inv-cta__inner { max-width: var(--inv-container-narrow); margin: 0 auto; }
.inv-cta h2 { font-size: var(--inv-font-size-3xl); font-weight: var(--inv-font-weight-extrabold); margin: 0 0 var(--inv-space-3); }
.inv-cta p { font-size: var(--inv-font-size-lg); margin: 0 0 var(--inv-space-7); }

/* === FAQ =========================================================== */
.inv-faq {
	border: 1px solid var(--inv-color-border);
	border-radius: var(--inv-radius-md);
	padding: var(--inv-space-5);
	max-width: var(--inv-container-narrow);
	margin: 0 auto var(--inv-space-3);
	background: var(--inv-color-bg);
}
.inv-faq summary { cursor: pointer; font-weight: var(--inv-font-weight-semibold); font-size: var(--inv-font-size-lg); color: var(--inv-color-fg); list-style: none; }
.inv-faq summary::-webkit-details-marker { display: none; }
.inv-faq summary::after { content: '+'; float: right; font-weight: var(--inv-font-weight-normal); color: var(--inv-color-fg-muted); }
.inv-faq[open] summary::after { content: '−'; }
.inv-faq__answer { margin-top: var(--inv-space-3); color: var(--inv-color-fg-subtle); line-height: var(--inv-line-height-relaxed); }

/* === IMAGE / FIGURE ================================================ */
.inv-image { display: block; max-width: 100%; height: auto; border-radius: var(--inv-radius-md); }
.inv-image--rounded-lg { border-radius: var(--inv-radius-lg); }
.inv-image--rounded-full { border-radius: var(--inv-radius-full); }
.inv-image--shadow { box-shadow: var(--inv-shadow-md); }
.inv-figure { margin: 0; }
.inv-figure__caption { font-size: var(--inv-font-size-sm); color: var(--inv-color-fg-muted); margin-top: var(--inv-space-2); text-align: center; }

/* === SPACER ======================================================== */
.inv-spacer { display: block; height: var(--inv-space-12); }
.inv-spacer--sm { height: var(--inv-space-6); }
.inv-spacer--lg { height: var(--inv-space-20); }
.inv-spacer--xl { height: var(--inv-space-32); }

/* === DIVIDER ======================================================= */
.inv-divider { height: 1px; background: var(--inv-color-border); border: 0; margin: var(--inv-space-12) 0; }

/* === ROW LAYOUT (Editor Convenience) =============================== */
.inv-row { display: grid; gap: var(--inv-space-6); }

/* === EDITOR-SCOPE (verhindert Stil-Bleed in Site-Layout) =========== */
.inv-grapes-page { font-family: var(--inv-font-sans); color: var(--inv-color-fg); }
.inv-grapes-page img { max-width: 100%; height: auto; }

/* === HEADING FONT (theme display font; falls back to serif) ========= */
.inv-h1, .inv-h2, .inv-h3, .inv-h4 { font-family: var(--inv-font-heading, var(--inv-font-serif, inherit)); }

/* ============================================================ */
/* === TIER-1 MARKETING COMPONENTS (token-native) ============= */
/* ============================================================ */

/* === STATS / COUNTER === */
.inv-stat { text-align: center; padding: var(--inv-space-4); }
.inv-stat__value { font-size: var(--inv-font-size-5xl); font-weight: var(--inv-font-weight-extrabold); color: var(--inv-color-brand); line-height: 1; font-family: var(--inv-font-heading, var(--inv-font-serif)); }
.inv-stat__label { font-size: var(--inv-font-size-base); color: var(--inv-color-fg-muted); margin-top: var(--inv-space-2); }

/* === PROGRESS / SKILL BAR === */
.inv-progress { margin-bottom: var(--inv-space-4); }
.inv-progress__head { display: flex; justify-content: space-between; font-size: var(--inv-font-size-sm); font-weight: var(--inv-font-weight-semibold); margin-bottom: var(--inv-space-2); color: var(--inv-color-fg); }
.inv-progress__track { height: 8px; background: var(--inv-color-bg-subtle); border-radius: var(--inv-radius-full); overflow: hidden; }
.inv-progress__fill { height: 100%; background: var(--inv-color-brand); border-radius: var(--inv-radius-full); transition: width var(--inv-transition-slow); }

/* === PRICING TABLE === */
.inv-pricing { padding: var(--inv-space-8); background: var(--inv-color-bg); border: 1px solid var(--inv-color-border); border-radius: var(--inv-radius-lg); box-shadow: var(--inv-shadow-md); text-align: center; }
.inv-pricing--featured { border-color: var(--inv-color-brand); border-width: 2px; box-shadow: var(--inv-shadow-lg); transform: translateY(-6px); }
.inv-pricing__name { font-size: var(--inv-font-size-xl); font-weight: var(--inv-font-weight-bold); color: var(--inv-color-fg); }
.inv-pricing__price { font-size: var(--inv-font-size-4xl); font-weight: var(--inv-font-weight-extrabold); color: var(--inv-color-fg); font-family: var(--inv-font-heading, var(--inv-font-serif)); margin: var(--inv-space-3) 0; }
.inv-pricing__price span { font-size: var(--inv-font-size-base); font-weight: var(--inv-font-weight-normal); color: var(--inv-color-fg-muted); }
.inv-pricing__features { list-style: none; padding: 0; margin: var(--inv-space-5) 0; }
.inv-pricing__features li { padding: var(--inv-space-2) 0; color: var(--inv-color-fg-muted); border-bottom: 1px solid var(--inv-color-bg-subtle); }

/* === TEAM MEMBER === */
.inv-team { text-align: center; }
.inv-team__photo { width: 120px; height: 120px; border-radius: var(--inv-radius-full); object-fit: cover; margin: 0 auto var(--inv-space-3); box-shadow: var(--inv-shadow-md); background: var(--inv-color-bg-muted); }
.inv-team__name { font-size: var(--inv-font-size-lg); font-weight: var(--inv-font-weight-bold); color: var(--inv-color-fg); }
.inv-team__role { font-size: var(--inv-font-size-sm); color: var(--inv-color-brand); }

/* === LOGOS / CLIENTS STRIP === */
.inv-logos { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--inv-space-12); }
.inv-logos img { height: 40px; opacity: 0.55; filter: grayscale(1); transition: opacity var(--inv-transition-fast), filter var(--inv-transition-fast); }
.inv-logos img:hover { opacity: 1; filter: none; }

/* === STEPS / PROCESS === */
.inv-step { text-align: center; }
.inv-step__num { width: 48px; height: 48px; margin: 0 auto var(--inv-space-3); border-radius: var(--inv-radius-full); background: var(--inv-color-brand); color: var(--inv-color-brand-fg); display: flex; align-items: center; justify-content: center; font-weight: var(--inv-font-weight-bold); font-size: var(--inv-font-size-lg); }
.inv-step__title { font-weight: var(--inv-font-weight-bold); color: var(--inv-color-fg); margin-bottom: var(--inv-space-2); }
.inv-step p { color: var(--inv-color-fg-muted); margin: 0; }

/* === VIDEO EMBED (responsive 16:9) === */
.inv-video { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; border-radius: var(--inv-radius-md); box-shadow: var(--inv-shadow-md); }
.inv-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* === ALERT / NOTICE === */
.inv-alert { padding: var(--inv-space-4) var(--inv-space-5); border-radius: var(--inv-radius-md); border-left: 4px solid var(--inv-color-accent); background: var(--inv-color-bg-muted); color: var(--inv-color-fg); margin-bottom: var(--inv-space-4); }
.inv-alert--success { border-color: var(--inv-color-success); }
.inv-alert--danger { border-color: var(--inv-color-danger); }
.inv-alert--brand { border-color: var(--inv-color-brand); }

/* === BADGE === */
.inv-badge { display: inline-block; padding: var(--inv-space-1) var(--inv-space-3); border-radius: var(--inv-radius-full); background: var(--inv-color-brand-soft); color: var(--inv-color-brand-strong); font-size: var(--inv-font-size-sm); font-weight: var(--inv-font-weight-semibold); }

/* ============================================================ */
/* === HERO / HEADER VARIANTS ================================= */
/* ============================================================ */

/* Eyebrow label above the headline */
.inv-hero__eyebrow { display: inline-block; text-transform: uppercase; letter-spacing: 0.12em; font-size: var(--inv-font-size-sm); font-weight: var(--inv-font-weight-bold); color: var(--inv-color-brand); margin-bottom: var(--inv-space-3); }
.inv-hero--dark .inv-hero__eyebrow, .inv-hero--image .inv-hero__eyebrow { color: var(--inv-color-brand); }

/* Action row (multiple buttons) */
.inv-hero__actions { display: flex; gap: var(--inv-space-4); justify-content: center; flex-wrap: wrap; margin-top: var(--inv-space-6); }

/* Hero with background image + dark overlay */
.inv-hero--image { background-size: cover; background-position: center; position: relative; color: var(--inv-color-dark-fg); }
.inv-hero--image::before { content: ''; position: absolute; inset: 0; background: rgba(15, 23, 42, 0.55); }
.inv-hero--image .inv-hero__inner { position: relative; z-index: 1; }
.inv-hero--image .inv-h1, .inv-hero--image .inv-h2 { color: var(--inv-color-dark-fg); }

/* Split hero: content + media side by side */
.inv-hero--split { text-align: left; }
.inv-hero--split .inv-hero__inner { max-width: var(--inv-container-max); display: grid; grid-template-columns: 1fr 1fr; gap: var(--inv-space-16); align-items: center; }
.inv-hero--split .inv-hero__actions { justify-content: flex-start; }
.inv-hero--split .inv-hero__media img { width: 100%; border-radius: var(--inv-radius-lg); box-shadow: var(--inv-shadow-xl); display: block; }
@media (max-width: 768px) { .inv-hero--split .inv-hero__inner { grid-template-columns: 1fr; } }

/* Compact page header (inner pages) */
.inv-pageheader { padding: var(--inv-space-16) var(--inv-space-6) var(--inv-space-12); background: var(--inv-color-bg-muted); text-align: center; }
.inv-pageheader--dark { background: var(--inv-color-dark); }
.inv-pageheader--dark .inv-pageheader__title, .inv-pageheader--dark .inv-pageheader__sub { color: var(--inv-color-dark-fg); }
.inv-pageheader__inner { max-width: var(--inv-container-narrow); margin: 0 auto; }
.inv-pageheader__title { font-family: var(--inv-font-heading, var(--inv-font-serif)); font-size: var(--inv-font-size-4xl); font-weight: var(--inv-font-weight-extrabold); color: var(--inv-color-fg); margin: 0 0 var(--inv-space-3); line-height: var(--inv-line-height-tight); }
.inv-pageheader__sub { font-size: var(--inv-font-size-lg); color: var(--inv-color-fg-muted); margin: 0; }
.inv-breadcrumb { font-size: var(--inv-font-size-sm); color: var(--inv-color-fg-muted); margin-bottom: var(--inv-space-3); }
.inv-breadcrumb a { color: var(--inv-color-accent); text-decoration: none; }
.inv-breadcrumb a:hover { text-decoration: underline; }

/* === MEDIA + TEXT (Links/Rechts, alternierend) === */
.inv-media-text { display: grid; grid-template-columns: 1fr 1fr; gap: var(--inv-space-16); align-items: center; margin-bottom: var(--inv-space-16); }
.inv-media-text__media img { width: 100%; border-radius: var(--inv-radius-lg); box-shadow: var(--inv-shadow-lg); display: block; }
.inv-media-text__content .inv-h2 { text-align: left; margin-bottom: var(--inv-space-4); }
.inv-media-text--reverse .inv-media-text__media { order: 2; }
@media (max-width: 768px) {
	.inv-media-text { grid-template-columns: 1fr; gap: var(--inv-space-6); }
	.inv-media-text--reverse .inv-media-text__media { order: 0; }
}

/* ============================================================ */
/* === FORM / INPUTS / CHIPS / TABS / FILTER (interaktiv) ===== */
/* ============================================================ */

/* Form + fields */
.inv-form { max-width: var(--inv-container-narrow); margin: 0 auto; text-align: left; }
.inv-field { margin-bottom: var(--inv-space-4); text-align: left; }
.inv-label { display: block; font-size: var(--inv-font-size-sm); font-weight: var(--inv-font-weight-semibold); color: var(--inv-color-fg); margin-bottom: var(--inv-space-2); }
.inv-input, .inv-textarea, .inv-select {
	width: 100%; padding: var(--inv-space-3) var(--inv-space-4);
	border: 1px solid var(--inv-color-border); border-radius: var(--inv-radius-md);
	background: var(--inv-color-bg); color: var(--inv-color-fg);
	font-size: var(--inv-font-size-base); font-family: inherit; line-height: 1.4;
	transition: border-color var(--inv-transition-fast), box-shadow var(--inv-transition-fast);
}
.inv-input:focus, .inv-textarea:focus, .inv-select:focus { outline: none; border-color: var(--inv-color-brand); box-shadow: 0 0 0 3px var(--inv-color-brand-soft); }
.inv-input::placeholder, .inv-textarea::placeholder { color: var(--inv-color-fg-muted); }
.inv-textarea { resize: vertical; min-height: 120px; }
.inv-checkbox, .inv-radio { display: inline-flex; align-items: center; gap: var(--inv-space-2); font-size: var(--inv-font-size-base); color: var(--inv-color-fg); cursor: pointer; }
.inv-checkbox input, .inv-radio input { accent-color: var(--inv-color-brand); width: 18px; height: 18px; }
.inv-form__note { font-size: var(--inv-font-size-sm); margin-top: var(--inv-space-3); }
.inv-form__note--success { color: var(--inv-color-success); }
.inv-form__note--error { color: var(--inv-color-danger); }

/* Chip / Tag / Label */
.inv-chip { display: inline-flex; align-items: center; gap: var(--inv-space-2); padding: var(--inv-space-1) var(--inv-space-3); border-radius: var(--inv-radius-full); background: var(--inv-color-bg-muted); color: var(--inv-color-fg); font-size: var(--inv-font-size-sm); border: 1px solid var(--inv-color-border); }
.inv-chip--brand { background: var(--inv-color-brand-soft); color: var(--inv-color-brand-strong); border-color: transparent; }
.inv-chip--dark { background: var(--inv-color-dark); color: var(--inv-color-dark-fg); border-color: transparent; }
.inv-label-tag { display: inline-block; padding: 2px var(--inv-space-2); border-radius: var(--inv-radius-sm); background: var(--inv-color-accent); color: #fff; font-size: var(--inv-font-size-xs); font-weight: var(--inv-font-weight-bold); text-transform: uppercase; letter-spacing: 0.05em; }
.inv-label-tag--success { background: var(--inv-color-success); }
.inv-label-tag--danger { background: var(--inv-color-danger); }
.inv-label-tag--brand { background: var(--inv-color-brand); color: var(--inv-color-brand-fg); }

/* Filter pills */
.inv-filter { display: flex; flex-wrap: wrap; gap: var(--inv-space-2); justify-content: center; margin-bottom: var(--inv-space-8); }
.inv-filter__btn { padding: var(--inv-space-2) var(--inv-space-5); border-radius: var(--inv-radius-full); border: 1px solid var(--inv-color-border); background: var(--inv-color-bg); color: var(--inv-color-fg); font-size: var(--inv-font-size-sm); font-weight: var(--inv-font-weight-semibold); cursor: pointer; transition: background var(--inv-transition-fast), color var(--inv-transition-fast), border-color var(--inv-transition-fast); }
.inv-filter__btn:hover { border-color: var(--inv-color-brand); }
.inv-filter__btn--active { background: var(--inv-color-brand); color: var(--inv-color-brand-fg); border-color: var(--inv-color-brand); }

/* Tabs */
.inv-tabs__nav { display: flex; gap: var(--inv-space-1); border-bottom: 2px solid var(--inv-color-border); margin-bottom: var(--inv-space-6); flex-wrap: wrap; }
.inv-tabs__tab { padding: var(--inv-space-3) var(--inv-space-5); border: 0; background: transparent; color: var(--inv-color-fg-muted); font-size: var(--inv-font-size-base); font-weight: var(--inv-font-weight-semibold); cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -2px; transition: color var(--inv-transition-fast); }
.inv-tabs__tab:hover { color: var(--inv-color-fg); }
.inv-tabs__tab--active { color: var(--inv-color-brand); border-bottom-color: var(--inv-color-brand); }
.inv-tabs__panel { color: var(--inv-color-fg-muted); line-height: var(--inv-line-height-relaxed); }

/* === RESPONSIVE: tighter spacing on small screens === */
@media (max-width: 768px) {
	.inv-section { padding: var(--inv-space-12) var(--inv-space-5); }
	.inv-hero, .inv-cta { padding: var(--inv-space-16) var(--inv-space-5); }
	.inv-hero--split .inv-hero__inner, .inv-media-text { gap: var(--inv-space-6); }
	.inv-pricing--featured { transform: none; }
}
