/*
Theme Name: Maven Results
Theme URI: https://mavenresults.com/
Author: Maven Results
Description: Custom block theme for Maven Results, a digital marketing agency for e-commerce brands and local and service businesses. Pair with the Maven Core plugin for the audit form, growth calculator, Calendly booking, Google Tag Manager, structured data and llms.txt.
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.2
Version: 1.0.8
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: maven-results
*/

/* ---------- Base ---------- */
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition: none !important; } }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: #F5BE32; color: #0B0B0C; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid #F5BE32; outline-offset: 3px; }
img { height: auto; }
.wp-site-blocks > footer.wp-block-template-part, .wp-site-blocks > main { margin-block-start: 0 !important; }
.wp-block-post-content.alignfull > * { margin-block-start: 0 !important; margin-block-end: 0 !important; }
.wp-block-columns.are-vertically-aligned-center > .wp-block-column { align-self: center; }
.mvn-num, table, .mvn-stat__value { font-variant-numeric: tabular-nums lining-nums; }

/* ---------- Type helpers ---------- */
.mvn-eyebrow {
	display: flex; align-items: center; gap: .55rem; width: fit-content;
	font-size: var(--wp--preset--font-size--x-small) !important; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
	color: var(--wp--preset--color--ink); background: var(--wp--preset--color--mist); border: 1px solid var(--wp--preset--color--line);
	padding: .4rem .8rem; border-radius: 999px;
}
.mvn-eyebrow::before { content: ""; width: .5rem; height: .5rem; border-radius: 50%; background: var(--wp--preset--color--yellow); flex: none; }
.has-ink-background-color .mvn-eyebrow, .has-charcoal-background-color .mvn-eyebrow { color: #fff; background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.14); }
.has-yellow-background-color .mvn-eyebrow { background: rgba(11,11,12,.08); border-color: rgba(11,11,12,.15); }
.has-yellow-background-color .mvn-eyebrow::before { background: var(--wp--preset--color--ink); }
.mvn-lead { font-size: var(--wp--preset--font-size--large); line-height: 1.55; color: var(--wp--preset--color--slate); }
.has-ink-background-color .mvn-lead, .has-charcoal-background-color .mvn-lead { color: #C4C4CA; }
.has-ink-background-color .mvn-muted, .has-charcoal-background-color .mvn-muted { color: #A1A1AA; }
.mvn-guarantee { border-top: 4px solid var(--wp--preset--color--yellow); }
.has-yellow-background-color .mvn-lead { color: #2A2A2E; }
.mvn-muted { color: var(--wp--preset--color--muted); }
.mvn-hl { background: linear-gradient(transparent 62%, rgba(245,190,50,.55) 62%); padding: 0 .08em; }
.has-ink-background-color :where(h1,h2,h3,h4,h5,h6), .has-charcoal-background-color :where(h1,h2,h3,h4,h5,h6) { color: #fff; }
.has-ink-background-color a:where(:not(.wp-element-button)), .has-charcoal-background-color a:where(:not(.wp-element-button)) { color: #fff; }
.has-ink-background-color a:where(:not(.wp-element-button)):hover, .has-charcoal-background-color a:where(:not(.wp-element-button)):hover { color: var(--wp--preset--color--yellow); }
h1 em, h2 em, .mvn-accent { font-style: normal; color: var(--wp--preset--color--yellow); }
.has-white-background-color h2 em, .has-mist-background-color h2 em, .mvn-on-light em { color: var(--wp--preset--color--ink); background: linear-gradient(transparent 60%, rgba(245,190,50,.7) 60%); }

/* ---------- Header ---------- */
.wp-site-blocks > header.wp-block-template-part { position: sticky; top: -38px; z-index: 50; }
.admin-bar .wp-site-blocks > header.wp-block-template-part { top: -6px; }
@media (max-width: 782px) { .admin-bar .wp-site-blocks > header.wp-block-template-part { top: 8px; } }
@media (max-width: 600px) { .wp-site-blocks > header.wp-block-template-part, .admin-bar .wp-site-blocks > header.wp-block-template-part { top: 0; } .mvn-hide-mobile { display: none !important; } }
.mvn-utility { height: 38px; box-sizing: border-box; display: flex; align-items: center; font-size: var(--wp--preset--font-size--x-small); }
.mvn-utility > .wp-block-group { width: 100%; }
.mvn-utility p { margin: 0; }
.mvn-utility a { color: #fff !important; text-decoration: none; }
.mvn-utility a:hover { color: var(--wp--preset--color--yellow) !important; }
.mvn-header { position: relative; background: rgba(255,255,255,.92); backdrop-filter: saturate(1.4) blur(12px); -webkit-backdrop-filter: saturate(1.4) blur(12px); border-bottom: 1px solid var(--wp--preset--color--line); }
.mvn-header .mvn-brand img { display: block; width: 188px; height: auto; }
.mvn-header .wp-block-navigation .wp-block-navigation-item__content { padding: .35rem 0; text-decoration: none; }
.mvn-header .wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--gold); }
.mvn-header .wp-block-navigation__submenu-container { border: 1px solid var(--wp--preset--color--line) !important; border-radius: 14px; box-shadow: 0 24px 50px -24px rgba(11,11,12,.3); padding: .5rem !important; min-width: 280px !important; }
.mvn-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: .55rem .8rem !important; border-radius: 8px; }
.mvn-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--wp--preset--color--mist); color: var(--wp--preset--color--ink); }
.mvn-header .wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem; background: #fff !important; }
.mvn-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { font-size: var(--wp--preset--font-size--large); gap: 1rem; }
.mvn-header .wp-block-button__link { padding: .7rem 1.2rem; }
@media (max-width: 600px) { .mvn-header .mvn-brand img { width: 140px; } .mvn-header .mvn-header-cta { display: none !important; } }

/* ---------- Heroes ---------- */
.mvn-hero { position: relative; overflow: hidden; isolation: isolate; }
.mvn-hero::after { /* brand arrow motif */
	content: ""; position: absolute; z-index: -1; pointer-events: none; right: -6%; bottom: -18%; width: min(46vw, 640px); aspect-ratio: 1;
	background: no-repeat center / contain url("assets/images/arrow.svg"); opacity: .9;
}
.mvn-hero::before { content: ""; position: absolute; inset: 0; z-index: -2; pointer-events: none; background: radial-gradient(60% 70% at 85% 30%, rgba(245,190,50,.16), transparent 70%); }
.mvn-page-hero::after { width: min(30vw, 400px); bottom: -34%; opacity: .4; }
.mvn-hero h1 { color: #fff; max-width: 14ch; }
.mvn-page-hero h1 { max-width: 18ch; }
.mvn-hero .mvn-lead { max-width: 56ch; }
.mvn-hero.is-layout-constrained > :where(h1, .mvn-lead, .mvn-eyebrow) { margin-left: max(0px, calc((100% - 1240px) / 2)) !important; margin-right: auto !important; }
@media (max-width: 781px) { .mvn-hero::after { width: 70vw; right: -25%; bottom: -12%; opacity: .35; } }
.mvn-crumbs { font-size: var(--wp--preset--font-size--x-small); color: #9A9AA2; margin: 0 0 1.5rem; }
.mvn-crumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .6rem; }
.mvn-crumbs li { display: inline-flex; align-items: center; gap: .6rem; }
.mvn-crumbs li + li::before { content: ""; width: 5px; height: 5px; border-top: 1.5px solid #6B6B73; border-right: 1.5px solid #6B6B73; transform: rotate(45deg); }
.mvn-crumbs a { color: #D4D4D8 !important; text-decoration: none; }
.mvn-crumbs a:hover { color: var(--wp--preset--color--yellow) !important; }
.mvn-crumbs + * { margin-top: 0 !important; }

/* Hero proof row */
.mvn-proof { display: flex; flex-wrap: wrap; gap: .5rem 1.75rem; font-size: var(--wp--preset--font-size--small); color: #C4C4CA; margin-top: 2rem !important; }
.mvn-proof span { display: inline-flex; align-items: center; gap: .5rem; }
.mvn-proof span::before { content: ""; width: 1.1rem; height: 1.1rem; border-radius: 50%; background: var(--wp--preset--color--yellow) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%230B0B0C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 70% no-repeat; }

/* Channel marquee */
.mvn-marquee { overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.mvn-marquee p { margin: 0; display: flex; gap: 2.75rem; width: max-content; animation: mvn-scroll 38s linear infinite; font-family: var(--wp--preset--font-family--display); font-weight: 600; font-size: var(--wp--preset--font-size--large); color: var(--wp--preset--color--slate); white-space: nowrap; }
.mvn-marquee p span::after { content: "\2197"; color: var(--wp--preset--color--yellow); margin-left: 2.75rem; }
@keyframes mvn-scroll { to { transform: translateX(-50%); } }

/* ---------- Cards & grids ---------- */
.mvn-card { background: var(--wp--preset--color--white); border: 1px solid var(--wp--preset--color--line); border-radius: 20px; padding: clamp(1.4rem, 2.5vw, 2rem); height: 100%; display: flex; flex-direction: column; gap: .75rem; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.mvn-card:hover { transform: translateY(-3px); box-shadow: 0 22px 44px -26px rgba(11,11,12,.35); border-color: #D4D4D8; }
.mvn-card > * { margin: 0 !important; }
.mvn-card h3 { font-size: var(--wp--preset--font-size--x-large); }
.mvn-card p { color: var(--wp--preset--color--slate); }
.mvn-card .mvn-card__link { margin-top: auto !important; padding-top: .5rem; }
.mvn-card .mvn-card__link a { font-weight: 600; font-size: var(--wp--preset--font-size--small); text-decoration: none; color: var(--wp--preset--color--ink); display: inline-flex; align-items: center; gap: .4rem; }
.mvn-card .mvn-card__link a::after { content: "\2197"; display: inline-grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: var(--wp--preset--color--yellow); font-size: .8rem; transition: transform .2s ease; }
.mvn-card:hover .mvn-card__link a::after { transform: rotate(45deg); }
.mvn-card__icon { font-family: var(--wp--preset--font-family--display); font-weight: 700; font-size: var(--wp--preset--font-size--small) !important; width: 2.6rem; height: 2.6rem; border-radius: 12px; display: grid; place-items: center; background: var(--wp--preset--color--yellow-soft); color: var(--wp--preset--color--gold); }
.has-mist-background-color .mvn-card { border-color: transparent; }
.mvn-card--dark { background: var(--wp--preset--color--charcoal); border-color: rgba(255,255,255,.08); color: #fff; }
.mvn-card--dark h3 { color: #fff; }
.mvn-card--dark p { color: #C4C4CA; }
.mvn-card--dark .mvn-card__link a { color: #fff; }
.mvn-card--yellow { background: var(--wp--preset--color--yellow); border-color: transparent; }
.mvn-card--yellow p { color: #2A2A2E; }
.mvn-card--yellow .mvn-card__link a::after { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--yellow); }
.wp-block-columns.mvn-equal > .wp-block-column { display: flex; flex-direction: column; }
.wp-block-columns.mvn-equal > .wp-block-column > .mvn-card { flex: 1; }
.mvn-tags { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .25rem !important; }
.mvn-tags span { font-size: .75rem; font-weight: 600; padding: .25rem .6rem; border-radius: 999px; background: var(--wp--preset--color--mist); color: var(--wp--preset--color--slate); }
.mvn-card--dark .mvn-tags span { background: rgba(255,255,255,.08); color: #D4D4D8; }

/* Track cards (two audiences) */
.mvn-track { border-radius: 28px; padding: clamp(1.75rem, 4vw, 3rem); height: 100%; display: flex; flex-direction: column; gap: 1rem; position: relative; overflow: hidden; }
.mvn-track > * { margin: 0 !important; }
.mvn-track h3 { font-size: var(--wp--preset--font-size--xx-large); }
.mvn-track--ecom { background: var(--wp--preset--color--ink); color: #fff; }
.mvn-track--ecom h3 { color: #fff; }
.mvn-track--ecom p { color: #C4C4CA; }
.mvn-track--local { background: var(--wp--preset--color--yellow); }
.mvn-track--local p { color: #2A2A2E; }
.mvn-track .wp-block-buttons { margin-top: auto !important; padding-top: 1rem; }

/* Lists */
.wp-block-list.is-style-mvn-check { list-style: none; padding: 0; display: grid; gap: .7rem; }
.wp-block-list.is-style-mvn-check li { position: relative; padding-left: 2rem; }
.wp-block-list.is-style-mvn-check li::before { content: ""; position: absolute; left: 0; top: .2em; width: 1.25rem; height: 1.25rem; border-radius: 50%; background: var(--wp--preset--color--yellow) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%230B0B0C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 70% no-repeat; }
.has-yellow-background-color .wp-block-list.is-style-mvn-check li::before, .mvn-track--local .wp-block-list.is-style-mvn-check li::before { background-color: var(--wp--preset--color--ink); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%23F5BE32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.wp-block-list.is-style-mvn-rows { list-style: none; padding: 0; border-top: 1px solid var(--wp--preset--color--line); }
.wp-block-list.is-style-mvn-rows li { padding: 1rem 0 1rem 2.25rem; border-bottom: 1px solid var(--wp--preset--color--line); position: relative; }
.wp-block-list.is-style-mvn-rows li::before { content: "\2197"; position: absolute; left: 0; top: 1rem; width: 1.4rem; height: 1.4rem; border-radius: 50%; display: grid; place-items: center; font-size: .75rem; background: var(--wp--preset--color--yellow); }
.has-ink-background-color .wp-block-list.is-style-mvn-rows, .has-ink-background-color .wp-block-list.is-style-mvn-rows li { border-color: rgba(255,255,255,.12); }
.has-ink-background-color .wp-block-list.is-style-mvn-rows li::before { color: var(--wp--preset--color--ink); }

/* Stats */
.mvn-stats .wp-block-column { border-left: 1px solid rgba(255,255,255,.14); padding-left: 1.25rem; }
.has-white-background-color .mvn-stats .wp-block-column, .has-mist-background-color .mvn-stats .wp-block-column { border-color: var(--wp--preset--color--line); }
.mvn-stat__value { font-family: var(--wp--preset--font-family--display); font-weight: 800; font-size: clamp(2.2rem, 4.5vw, 3.5rem) !important; line-height: 1; letter-spacing: -.03em; margin: 0 !important; }
.mvn-stat__label { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); margin: .5rem 0 0 !important; }
.has-ink-background-color .mvn-stat__label { color: #A1A1AA; }

/* Steps */
.mvn-steps { counter-reset: mvnstep; }
.mvn-steps > .wp-block-column { counter-increment: mvnstep; background: var(--wp--preset--color--mist); border-radius: 20px; padding: 1.5rem; }
.mvn-steps > .wp-block-column::before { content: counter(mvnstep, decimal-leading-zero); display: inline-grid; place-items: center; width: 2.4rem; height: 2.4rem; border-radius: 50%; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--yellow); font-family: var(--wp--preset--font-family--display); font-weight: 700; font-size: .85rem; margin-bottom: 1rem; }
.mvn-steps h3 { font-size: var(--wp--preset--font-size--large); }
.mvn-steps p { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--slate); }
.has-mist-background-color .mvn-steps > .wp-block-column { background: #fff; }
.has-ink-background-color .mvn-steps > .wp-block-column { background: var(--wp--preset--color--charcoal); }
.has-ink-background-color .mvn-steps p { color: #C4C4CA; }

/* Definition / answer box */
.mvn-answer { background: var(--wp--preset--color--yellow-soft); border-radius: 20px; padding: clamp(1.4rem, 3vw, 2.25rem); }
.mvn-answer > :first-child { margin-top: 0; }
.mvn-answer p { color: #2A2A2E; }

/* Table */
.mvn-table table { border-collapse: separate; border-spacing: 0; width: 100%; background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 16px; overflow: hidden; }
.mvn-table th, .mvn-table td { border: 0 !important; border-bottom: 1px solid var(--wp--preset--color--line) !important; padding: .95rem 1.1rem; text-align: left; vertical-align: top; }
.mvn-table thead th { background: var(--wp--preset--color--ink); color: #fff; font-family: var(--wp--preset--font-family--display); font-weight: 600; }
.mvn-table tbody tr:last-child td { border-bottom: 0 !important; }
.mvn-table tbody td:first-child { font-weight: 600; }
@media (max-width: 700px) { .mvn-table table, .mvn-table tbody, .mvn-table tr, .mvn-table td { display: block; width: 100% !important; } .mvn-table thead { display: none; } .mvn-table td:first-child { background: var(--wp--preset--color--mist); } }

/* FAQ */
.mvn-faq { display: grid; gap: .75rem; }
.mvn-faq .wp-block-details { background: var(--wp--preset--color--mist); border-radius: 16px; padding-left: 1.4rem; padding-right: 1.4rem; margin: 0 !important; }
.mvn-faq summary { font-family: var(--wp--preset--font-family--display); font-weight: 600; font-size: var(--wp--preset--font-size--large); letter-spacing: -.01em; cursor: pointer; list-style: none; position: relative; padding-right: 2.5rem; }
.mvn-faq summary::-webkit-details-marker { display: none; }
.mvn-faq summary::after { content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 1.8rem; height: 1.8rem; border-radius: 50%; display: grid; place-items: center; background: #fff; font-weight: 500; transition: transform .2s ease; }
.mvn-faq details[open] summary::after { transform: translateY(-50%) rotate(45deg); background: var(--wp--preset--color--yellow); }
.mvn-faq details > :not(summary) { color: var(--wp--preset--color--slate); max-width: 72ch; }
.mvn-faq details > p:nth-child(2) { margin-top: .75rem; }
.has-mist-background-color .mvn-faq .wp-block-details { background: #fff; }

/* CTA band */
.mvn-cta-band { position: relative; overflow: hidden; isolation: isolate; }
.mvn-cta-band::after { content: ""; position: absolute; z-index: -1; right: -4%; top: -40%; width: min(40vw, 520px); aspect-ratio: 1; background: no-repeat center / contain url("assets/images/arrow-dark.svg"); opacity: .12; pointer-events: none; }
.mvn-cta-cols > .wp-block-column:last-child .wp-block-buttons { justify-content: flex-end; }
@media (max-width: 781px) { .mvn-cta-cols > .wp-block-column:last-child .wp-block-buttons { justify-content: flex-start; } }

/* Buttons */
.wp-block-button.is-style-outline > .wp-block-button__link { background: transparent; border: 1.5px solid currentColor; color: var(--wp--preset--color--ink); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--ink); color: #fff; }
.has-ink-background-color .wp-block-button.is-style-outline > .wp-block-button__link, .mvn-track--ecom .wp-block-button.is-style-outline > .wp-block-button__link { color: #fff; border-color: rgba(255,255,255,.4); }
.has-ink-background-color .wp-block-button.is-style-outline > .wp-block-button__link:hover, .mvn-track--ecom .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: #fff; color: var(--wp--preset--color--ink); }
.wp-block-button.is-style-dark > .wp-block-button__link { background: var(--wp--preset--color--ink); color: #fff; }
.wp-block-button.is-style-dark > .wp-block-button__link:hover { background: var(--wp--preset--color--graphite); color: #fff; }
.wp-block-button__link { transition: background-color .15s ease, color .15s ease, transform .15s ease; }
.wp-block-button__link:hover { transform: translateY(-1px); }

/* Posts */
.mvn-post-card { background: var(--wp--preset--color--mist); border-radius: 20px; padding: 1.25rem; height: 100%; }
.mvn-post-card .wp-block-post-featured-image { margin: -0.25rem -0.25rem .75rem; }
.mvn-post-card .wp-block-post-featured-image img { border-radius: 14px; aspect-ratio: 16/10; object-fit: cover; }
.mvn-post-card .wp-block-post-title a { text-decoration: none; }
.mvn-post-card .wp-block-post-title a:hover { color: var(--wp--preset--color--gold); }
.has-mist-background-color .mvn-post-card { background: #fff; }
.mvn-article .wp-block-post-content h2 { font-size: var(--wp--preset--font-size--x-large); margin-top: 2.5rem; }
.mvn-article .wp-block-post-content h3 { font-size: var(--wp--preset--font-size--large); margin-top: 2rem; }
.mvn-article-hero.is-layout-constrained > * { margin-left: auto !important; margin-right: auto !important; }
.mvn-article-hero h1 { max-width: 900px; }
.mvn-article-hero::after { display: none; }
.wp-block-query-pagination a, .wp-block-post-terms a { text-decoration: none; }

/* Footer */
.mvn-footer a:not(.wp-element-button) { text-decoration: none; color: #C4C4CA; }
.mvn-footer a:not(.wp-element-button):hover { color: var(--wp--preset--color--yellow); }
.mvn-footer h2 { font-family: var(--wp--preset--font-family--sans); font-size: var(--wp--preset--font-size--x-small); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: #8A8A92 !important; margin-bottom: 1rem !important; }
.mvn-footer ul { list-style: none; padding: 0; margin: 0; }
.mvn-footer li { margin: 0 0 .55rem; font-size: var(--wp--preset--font-size--small); }
.mvn-footer .mvn-legal { font-size: var(--wp--preset--font-size--x-small); color: #8A8A92; }
.mvn-footer img { width: 190px; height: auto; display: block; }
.mvn-footer-cta h2 { font-family: var(--wp--preset--font-family--display); font-size: clamp(2.2rem, 6vw, 4.5rem) !important; text-transform: none; letter-spacing: -.035em; color: #fff !important; font-weight: 800; line-height: 1; }

/* ---------- Forms (Maven Core output) ---------- */
.mvn-form { display: grid; gap: 1rem 1.25rem; grid-template-columns: 1fr 1fr; }
.mvn-form .mvn-field--full { grid-column: 1 / -1; }
@media (max-width: 640px) { .mvn-form { grid-template-columns: 1fr; } }
.mvn-field label, .mvn-calc label, .mvn-field legend { display: block; font-size: var(--wp--preset--font-size--small); font-weight: 600; color: var(--wp--preset--color--ink); margin-bottom: .4rem; }
.mvn-field input, .mvn-field select, .mvn-field textarea, .mvn-calc input, .mvn-calc select {
	width: 100%; box-sizing: border-box; font: inherit; font-size: 1rem; color: var(--wp--preset--color--ink);
	background: #fff; border: 1.5px solid #D4D4D8; border-radius: 12px; padding: .8rem .95rem; transition: border-color .15s ease, box-shadow .15s ease;
}
.mvn-field textarea { min-height: 130px; resize: vertical; }
.mvn-field input:focus, .mvn-field select:focus, .mvn-field textarea:focus, .mvn-calc input:focus, .mvn-calc select:focus { outline: none; border-color: var(--wp--preset--color--ink); box-shadow: 0 0 0 4px rgba(245,190,50,.35); }
.mvn-field fieldset { border: 0; padding: 0; margin: 0; }
.mvn-checks { display: flex; flex-wrap: wrap; gap: .5rem; }
.mvn-checks label { display: inline-flex; align-items: center; gap: .45rem; margin: 0; font-weight: 500; font-size: var(--wp--preset--font-size--small); padding: .45rem .8rem; border: 1.5px solid #D4D4D8; border-radius: 999px; cursor: pointer; background: #fff; }
.mvn-checks input { width: auto; margin: 0; accent-color: #0B0B0C; }
.mvn-checks label:has(input:checked) { border-color: var(--wp--preset--color--ink); background: var(--wp--preset--color--yellow-soft); }
.mvn-req { color: var(--wp--preset--color--gold); }
.mvn-form__note { font-size: var(--wp--preset--font-size--x-small); color: var(--wp--preset--color--muted); margin: 0; }
.mvn-form__submit { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; }
.mvn-btn { appearance: none; border: 0; cursor: pointer; font: inherit; font-size: var(--wp--preset--font-size--small); font-weight: 600; background: var(--wp--preset--color--yellow); color: var(--wp--preset--color--ink); padding: .95rem 1.7rem; border-radius: 999px; text-decoration: none; display: inline-block; transition: background-color .15s ease, transform .15s ease; }
.mvn-btn:hover { background: #FFCE4A; color: var(--wp--preset--color--ink); transform: translateY(-1px); }
.mvn-btn[disabled] { opacity: .6; cursor: progress; }
.mvn-btn--dark { background: var(--wp--preset--color--ink); color: #fff; }
.mvn-btn--dark:hover { background: var(--wp--preset--color--graphite); color: #fff; }
.mvn-btn--ghost { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,.4); }
.mvn-btn--ghost:hover { background: #fff; color: var(--wp--preset--color--ink); }
.mvn-alert { padding: 1rem 1.25rem; border-radius: 12px; font-size: var(--wp--preset--font-size--small); }
.mvn-alert--ok { background: #E9F6EC; color: #14532D; }
.mvn-alert--err { background: #FDECEC; color: #7F1D1D; }
.mvn-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.mvn-form-card { background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 24px; padding: clamp(1.5rem, 3vw, 2.5rem); box-shadow: 0 30px 60px -40px rgba(11,11,12,.35); }

/* ---------- Growth calculator ---------- */
.mvn-calc { background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 28px; overflow: hidden; box-shadow: 0 30px 70px -45px rgba(11,11,12,.45); }
.mvn-calc__tabs { display: flex; gap: .4rem; padding: .6rem; background: var(--wp--preset--color--mist); overflow-x: auto; scrollbar-width: none; }
.mvn-calc__tabs button { flex: 1 0 auto; appearance: none; border: 0; background: transparent; font: inherit; font-weight: 600; font-size: var(--wp--preset--font-size--small); padding: .75rem 1.1rem; border-radius: 999px; cursor: pointer; color: var(--wp--preset--color--slate); white-space: nowrap; }
.mvn-calc__tabs button[aria-selected="true"] { background: var(--wp--preset--color--ink); color: #fff; }
.mvn-calc__panel { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); }
.mvn-calc__panel[hidden] { display: none; }
@media (max-width: 900px) { .mvn-calc__panel { grid-template-columns: 1fr; } }
.mvn-calc__inputs { padding: clamp(1.5rem, 3vw, 2.5rem); display: grid; gap: 1.25rem; align-content: start; }
.mvn-calc__inputs h3, .mvn-calc__results h3 { margin: 0; font-size: var(--wp--preset--font-size--x-large); }
.mvn-calc__row { display: grid; gap: .25rem; }
.mvn-calc__hint { font-size: var(--wp--preset--font-size--x-small); color: var(--wp--preset--color--muted); margin: .2rem 0 0; }
.mvn-calc__affix { position: relative; }
.mvn-calc__affix[data-pre]::before { content: attr(data-pre); position: absolute; left: .95rem; top: 50%; transform: translateY(-50%); color: var(--wp--preset--color--muted); }
.mvn-calc__affix[data-pre] input { padding-left: 1.75rem; }
.mvn-calc__affix[data-post]::after { content: attr(data-post); position: absolute; right: .95rem; top: 50%; transform: translateY(-50%); color: var(--wp--preset--color--muted); }
.mvn-calc__pair { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
@media (max-width: 480px) { .mvn-calc__pair { grid-template-columns: 1fr; } }
.mvn-calc__results { background: var(--wp--preset--color--ink); color: #fff; padding: clamp(1.5rem, 3vw, 2.5rem); display: flex; flex-direction: column; gap: 1.25rem; position: relative; overflow: hidden; }
.mvn-calc__results::after { content: ""; position: absolute; right: -60px; bottom: -60px; width: 260px; aspect-ratio: 1; background: no-repeat center / contain url("assets/images/arrow.svg"); opacity: .12; pointer-events: none; }
.mvn-calc__results h3 { color: #fff; }
.mvn-calc__label { color: var(--wp--preset--color--yellow); font-size: var(--wp--preset--font-size--x-small); letter-spacing: .1em; text-transform: uppercase; font-weight: 600; margin: 0; }
.mvn-calc__big { font-family: var(--wp--preset--font-family--display); font-weight: 800; font-size: clamp(2.4rem, 5vw, 3.75rem); line-height: 1; letter-spacing: -.03em; margin: .4rem 0 0; font-variant-numeric: tabular-nums lining-nums; }
.mvn-calc__sub { color: #A1A1AA; font-size: var(--wp--preset--font-size--small); margin: .5rem 0 0; }
.mvn-calc__grid { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin: 0; }
.mvn-calc__grid > div { background: rgba(255,255,255,.06); border-radius: 14px; padding: .9rem 1rem; }
.mvn-calc__grid dt { font-size: var(--wp--preset--font-size--x-small); color: #A1A1AA; margin-bottom: .25rem; }
.mvn-calc__grid dd { margin: 0; font-family: var(--wp--preset--font-family--display); font-weight: 700; font-size: var(--wp--preset--font-size--large); font-variant-numeric: tabular-nums lining-nums; }
.mvn-calc__bars { display: grid; gap: .5rem; }
.mvn-calc__bar { display: grid; grid-template-columns: 5.5rem 1fr; align-items: center; gap: .75rem; font-size: var(--wp--preset--font-size--x-small); color: #A1A1AA; }
.mvn-calc__bar span { display: block; height: 12px; border-radius: 999px; background: rgba(255,255,255,.12); position: relative; overflow: hidden; }
.mvn-calc__bar span i { position: absolute; inset: 0 auto 0 0; border-radius: 999px; background: #6B6B73; transition: width .35s ease; }
.mvn-calc__bar--after span i { background: var(--wp--preset--color--yellow); }
.mvn-calc__note { font-size: var(--wp--preset--font-size--small); color: #D4D4D8; margin: 0; border-left: 3px solid var(--wp--preset--color--yellow); padding-left: .9rem; }
.mvn-calc__fine { font-size: .75rem; color: #8A8A92; margin: 0; line-height: 1.55; }
.mvn-calc__cta { display: flex; flex-wrap: wrap; gap: .75rem; position: relative; z-index: 1; }
@media (max-width: 480px) { .mvn-calc__grid { grid-template-columns: 1fr; } }

/* Calendly */
.mvn-calendly { background: var(--wp--preset--color--ink); color: #fff; border-radius: 24px; overflow: hidden; }
.mvn-calendly__intro { padding: clamp(1.5rem, 3vw, 2.25rem); display: grid; gap: .75rem; }
.mvn-calendly__intro h3 { margin: 0; font-size: var(--wp--preset--font-size--x-large); color: #fff; }
.mvn-calendly__intro p { margin: 0; color: #C4C4CA; }
.mvn-calendly ul { list-style: none; margin: .25rem 0 .5rem; padding: 0; font-size: var(--wp--preset--font-size--small); color: #D4D4D8; display: grid; gap: .35rem; }
.mvn-calendly li::before { content: "\2197  "; color: var(--wp--preset--color--yellow); }
.mvn-calendly__fallback { color: #fff; font-size: var(--wp--preset--font-size--small); margin-left: .75rem; }
.mvn-calendly.is-loaded .mvn-calendly__frame { min-height: 700px; background: #fff; }
.mvn-sticky-col { position: sticky; top: 7rem; }
@media (max-width: 781px) { .mvn-sticky-col { position: static; } }
.mvn-rule-top { border-top: 1px solid var(--wp--preset--color--line); }

.mvn-track--ecom .mvn-eyebrow, .mvn-card--dark .mvn-eyebrow { color: #fff; background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.14); }
.mvn-track--local .mvn-eyebrow, .mvn-card--yellow .mvn-eyebrow { background: rgba(11,11,12,.08); border-color: rgba(11,11,12,.15); }
.mvn-track--local .mvn-eyebrow::before, .mvn-card--yellow .mvn-eyebrow::before { background: var(--wp--preset--color--ink); }
.mvn-card--yellow .wp-block-list.is-style-mvn-rows, .mvn-card--yellow .wp-block-list.is-style-mvn-rows li { border-color: rgba(11,11,12,.15); }
.mvn-card--yellow .wp-block-list.is-style-mvn-rows li::before { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--yellow); }
.mvn-card--dark .wp-block-list.is-style-mvn-rows, .mvn-card--dark .wp-block-list.is-style-mvn-rows li { border-color: rgba(255,255,255,.12); }
.mvn-card--dark .wp-block-list.is-style-mvn-rows li { color: #D4D4D8; }
.mvn-card--dark .wp-block-list.is-style-mvn-rows li::before { color: var(--wp--preset--color--ink); }
.mvn-card .wp-block-list.is-style-mvn-rows a { text-decoration: none; font-weight: 600; }
.mvn-card .wp-block-list.is-style-mvn-rows a:hover { text-decoration: underline; }
