/* Visual Visitor Blocks ? brand chrome matching Sage / production home */

:root {
	--vv-navy: #064d80;
	--vv-navy-alt: #044d80;
	--vv-navy-header: #084c80;
	--vv-green: #7ac546;
	--vv-green-soft: #8ece61;
	--vv-green-hover: #68a73d;
	--vv-body: #393939;
	--vv-heading: #064d80;
	--vv-surface: #f7fbff;
	--vv-gold: #f2a93b;
}

body .vv-site-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

body .vv-site-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:not(:last-child) {
	border-bottom: 1px solid #e6eef5;
}

body {
	font-family: "Open Sans", sans-serif;
	color: var(--vv-body);
	font-size: 16px;
	line-height: 1.6;
}

p, .wp-block-paragraph, p.wp-block-paragraph {
	font-family: "Open Sans", sans-serif !important;
	font-size: 1rem !important; /* 16px */
	line-height: 1.6;
}
h1, h2, h3, h4, h5, h6, .wp-block-heading {
	color: var(--vv-heading) !important;
	font-weight: 500;
}

/* Single source of truth for size (and, per your earlier call, H2's family) */
h1, h1.wp-block-heading {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 3.25rem !important; /* 52px */
	line-height: 1.2;
}
h2, h2.wp-block-heading {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 2.75rem !important; /* 44px — supersedes the 2.7rem figure from earlier */
	line-height: 1.2;
}
h3, h3.wp-block-heading {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 2.125rem !important; /* 34px */
	line-height: 1.25;
}
h4, h4.wp-block-heading {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 1.375rem !important; /* 22px */
	line-height: 1.3;
}
h5, h5.wp-block-heading {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 1.375rem !important; /* 22px */
	line-height: 1.3;
}
h6, h6.wp-block-heading {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 1.375rem !important; /* 22px */
	line-height: 1.3;
}


/* Do not force navy over WP textColor=white (navy CTA bands, etc.) */
h1.has-white-color,
h2.has-white-color,
h3.has-white-color,
h4.has-white-color,
h5.has-white-color,
h6.has-white-color,
.wp-block-heading.has-white-color,
.has-white-color.has-text-color.wp-block-heading {
	color: #fff !important;
}

.has-background.has-white-color .wp-block-heading:not(.vv-heading-accent),
.has-background.has-white-color h1:not(.vv-heading-accent),
.has-background.has-white-color h2:not(.vv-heading-accent),
.has-background.has-white-color h3:not(.vv-heading-accent),
.has-background.has-white-color p {
	color: #fff !important;
}

/* Green brush underline ? Sage green-shadow.png (not a CSS/SVG stroke) */
.vv-heading-accent.wp-block-heading,
.vv-heading-accent,
.vv-home-section .vv-heading-accent.wp-block-heading {
	display: inline-block;
	padding-right: 76px;
	padding-bottom: 20px;
	margin-bottom: 35px !important; /* beat .vv-home-section heading 0.75rem */
	background-image: url("../images/green-shadow.png");
	background-repeat: no-repeat;
	background-position: bottom left;
	background-size: auto; /* natural 233?10 ? do not stretch into a stroke */
}

.vv-heading-accent.is-style-centered,
.has-text-align-center.vv-heading-accent {
	/* inline-block shrinks to text; without auto margins it sticks left */
	display: table !important;
	width: auto !important;
	max-width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
	text-align: center !important;
	padding-right: 0;
	background-position: bottom center;
}

/* Header */
.vv-topbar {
	display: none; /* production home uses phone in main header, not a top bar strip */
}

.vv-site-header {
	border-bottom: 1px solid #e6eef5;
	background: #fff;
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif;
	transition: box-shadow 0.25s ease, background-color 0.25s ease;
}

/* Prod-like scroll-revealed sticky header (toggled by sticky-header.js) */
.vv-site-header.is-stuck,
.wp-site-blocks > .vv-site-header.is-stuck,
body > header.vv-site-header.is-stuck {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	/* Beat .wp-site-blocks > .vv-site-header { z-index: 2 } and page media */
	z-index: 10050 !important;
	background: #ffffff !important;
	box-shadow: 0 2px 14px rgba(0, 0, 0, 0.1);
	margin: 0 !important;
}

.vv-header-spacer {
	width: 100%;
	pointer-events: none;
}

.vv-site-header .vv-logo,
.vv-site-header .vv-logo img {
	max-height: 48px;
	width: auto;
	height: auto;
	margin: 0;
}

/* Match Max Mega Menu top items: Red Hat Display 18px / 700 / uppercase
   Use "VV Red Hat Display" ? Local's Mega Menu Google Fonts import poisons
   the "Red Hat Display" family name (falls back to Arial). */
.vv-site-header .wp-block-navigation,
.vv-site-header .wp-block-navigation .wp-block-navigation-item__content,
.vv-site-header .wp-block-navigation a {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	color: #333 !important;
	line-height: 1.2 !important;
}

.vv-site-header .wp-block-navigation .wp-block-navigation-submenu__toggle {
	font-size: 18px !important;
}

.vv-header-bar {
	width: 100%;
	gap: 1rem !important;
	flex-wrap: nowrap !important;
}

.vv-header-cta {
	flex: 0 0 auto !important;
	min-width: 220px;
}

.vv-header-cta-row {
	justify-content: flex-end !important;
}

.vv-header-phone {
	margin: 0 !important;
	line-height: 0 !important;
}

.vv-header-phone a {
	display: inline-flex !important;
	align-items: center;
	text-decoration: none !important;
}

.vv-header-phone-icon {
	width: 38px !important;
	height: 38px !important;
	display: block;
	border-radius: 50%;
}

.vv-header-cta .wp-block-button__link {
	border-radius: 5px !important;
	text-transform: none;
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-weight: 600;
	font-size: 0.82rem;
	letter-spacing: 0.02em;
	padding: 0.62rem 1rem !important;
	line-height: 1.2 !important;
}

/* Match prod header ~96px so hero vertical rhythm lines up */
.vv-site-header > .wp-block-group {
	padding-top: 0.7rem !important;
	padding-bottom: 0.7rem !important;
}

.vv-schedule-link {
	line-height: 1.2 !important;
}

.vv-header-cta .is-style-outline .wp-block-button__link,
.vv-btn-login .wp-block-button__link {
	background: transparent !important;
	color: var(--vv-navy-alt) !important;
	border: 2px solid var(--vv-navy-alt) !important;
}

.vv-header-cta .is-style-outline .wp-block-button__link:hover,
.vv-btn-login .wp-block-button__link:hover {
	background: var(--vv-navy-alt) !important;
	color: #fff !important;
}

.vv-btn-trial .wp-block-button__link {
	background: var(--vv-green-soft) !important;
	border: 2px solid var(--vv-green-soft) !important;
	color: #fff !important;
}

.vv-btn-trial .wp-block-button__link:hover {
	background: transparent !important;
	color: var(--vv-green-soft) !important;
}

.vv-schedule-link a {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif;
	font-size: 0.78rem !important;
	color: var(--vv-navy);
	text-decoration: underline;
}

@media (min-width: 960px) {
	.vv-site-header .wp-block-group.wp-block-group-is-layout-flex {
		flex-wrap: nowrap;
		gap: 1rem;
		align-items: center;
	}

	.vv-site-header .wp-block-navigation {
		flex: 1 1 auto;
		justify-content: center;
	}
}

/* Marketing CTAs ? match .start-free-btn / .schedule-btn */
.vv-btn-green .wp-block-button__link,
a.vv-start-free {
	background-color: var(--vv-green) !important;
	border: 2px solid var(--vv-green) !important;
	color: #fff !important;
	font-family: "Poppins", sans-serif !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	text-transform: uppercase;
	border-radius: 5px !important;
	padding: 16px 30px !important;
	line-height: normal !important;
	filter: drop-shadow(0 12px 14px rgba(12, 43, 94, 0.12));
	transition: 0.3s all;
}

.vv-btn-green .wp-block-button__link:hover,
a.vv-start-free:hover {
	background-color: transparent !important;
	border-color: var(--vv-green-hover) !important;
	color: var(--vv-green-hover) !important;
}

.vv-btn-navy-outline .wp-block-button__link,
a.vv-schedule {
	background: #fff !important;
	border: 2px solid var(--vv-navy) !important;
	color: var(--vv-navy) !important;
	font-family: "Poppins", sans-serif !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	text-transform: uppercase;
	border-radius: 5px !important;
	padding: 16px 30px !important;
	line-height: normal !important;
	filter: drop-shadow(0 12px 14px rgba(12, 43, 94, 0.12));
	transition: 0.3s all;
}

.vv-btn-navy-outline .wp-block-button__link:hover,
a.vv-schedule:hover {
	background-color: var(--vv-navy) !important;
	color: #fff !important;
}

/* Kill theme.json / block gap white strip under header ? sitewide (was home-only) */
.wp-site-blocks > main,
main.wp-block-group,
.wp-block-post-content,
.wp-block-post-content > .vv-hero-slider:first-child,
.vv-hero-slider,
/* sr-only H1 is often :first-child, so post-content still gets flow blockGap */
:root :where(.is-layout-flow) > .wp-block-post-content,
:root :where(.is-layout-constrained) > .wp-block-post-content,
main.wp-block-group > .wp-block-post-content,
main > .vv-interior-hero,
main > .vv-hero-slider,
main > .vv-video-hero,
.wp-block-post-content > .vv-video-hero:first-child,
.wp-block-post-content > .vv-interior-hero:first-child {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
}

.wp-site-blocks > header + main,
.wp-site-blocks > .vv-site-header + main,
.wp-site-blocks > header + main.wp-block-group,
.wp-site-blocks > .vv-site-header + main.wp-block-group {
	margin-block-start: 0 !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* First content block under header should not inherit blockGap */
.wp-site-blocks > .vv-site-header {
	margin-bottom: 0 !important;
	position: relative;
	z-index: 2;
}

/* Keep page media under the sticky header stacking context */
.wp-site-blocks > main,
.wp-site-blocks > header.vv-site-header + main {
	position: relative;
	z-index: 1;
}

.wp-block-post-content,
.vv-hero-slider {
	padding-top: 0 !important;
}

/* Bridge templates: keep header flush to main */
body > .wp-block-group:first-child,
body > header.vv-site-header:first-of-type {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}

body > .wp-block-group:first-child + main,
body > header.vv-site-header + main {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
	padding-top: 0 !important;
}

/* Header part declares contentSize 1400px. Bridge/do_blocks pages often miss that
   layout CSS and fall back to theme.json 720px ? nav wraps. Force it sitewide. */
.vv-site-header > .wp-block-group.is-layout-constrained {
	--wp--style--global--content-size: 1400px;
}

.vv-site-header .vv-header-bar {
	max-width: 1400px !important;
	width: 100%;
	justify-content: space-between !important;
}

.vv-site-header .vv-logo img {
	max-width: none !important;
	width: 180px !important;
	height: auto !important;
	max-height: 48px !important;
	display: block !important;
}

/* PLA/PLM/security legacy CSS assumes absolute overlapping header (124px) */
body.vv-pla-bridge .pla-hero,
body.vv-plm-bridge .hero,
body.vv-security-bridge .security-hero,
body.vv-pla-bridge .hero {
	margin-top: 0 !important;
}

/* Product + home sliders flush under header */
.vv-hero-slider,
.vv-hero-slider .n2_clear,
.n2_clear:has([id^="n2-ss-"]),
.n2-section-smartslider.n2_clear {
	margin-top: 0 !important;
}

.home .vv-hero-slider .n2_clear,
.home .n2_clear:has(#n2-ss-15),
.vv-hero-slider .n2_clear {
	border-top: 0;
}

/* Soft top of Layer1221 can read as white ? reinforce brand wash */
.home .vv-hero-slider,
.vv-slider-hero {
	background-color: #ecf6fe !important;
}

/* Home sections ? prod feature heads are Poppins 48px / 700 */
.vv-home-section {
	padding: 0 15px !important;
	--wp--style--global--content-size: 1410px;
	--wp--style--global--wide-size: 1410px;
}

.vv-home-section .wp-block-columns {
	max-width: 1410px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	gap: 16px !important;
}

.vv-home-section .wp-block-columns > .wp-block-column {
	padding: 0 !important;
}

.vv-home-section .wp-block-columns > .wp-block-column {
	flex-basis: 50% !important;
	padding: 0 15px;
}

.vv-home-section .wp-block-column:has(> .wp-block-image) {
	text-align: center;
}

.vv-home-section .wp-block-column .wp-block-image {
	display: inline-block;
	max-width: 100%;
	margin: 0 auto;
}

.vv-home-section .wp-block-heading,
.vv-home-section h2.wp-block-heading,
.vv-home-section h3.wp-block-heading {
	font-weight: 700 !important;
	color: #282828 !important;
	margin: 20px 0 35px !important;
}

.vv-home-section p {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	line-height: 36px;
	color: var(--vv-body);
	font-weight: 400;
}

.vv-home-section ul li {
	font-family: "Open Sans", sans-serif;
	font-size: 18px;
	line-height: 30px;
	color: var(--vv-body);
}

/* Email list band ? centered like middle_full_section */
.vv-email-band {
	background-color: #064d80 !important;
	background-image: url("/wp-content/uploads/2023/02/4.webp") !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	text-align: center !important;
	padding: 100px 24px 40px !important;
}

.vv-email-band .wp-block-heading,
.vv-email-band h3 {
	display: block !important;
	width: 100% !important;
	font-size: clamp(2rem, 4.5vw, 60px) !important;
	line-height: 1.15 !important;
	font-weight: 800 !important;
	color: #fff !important;
	text-align: center !important;
	max-width: 1230px;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-bottom: 40px;
	margin-bottom: 40px !important;
	background-image: url("/wp-content/themes/visual-visitor/assets/images/green-shadow.png") !important;
	background-repeat: no-repeat !important;
	background-position: center bottom !important;
	background-size: 140px 14px !important;
}

.vv-email-band p {
	color: #fff !important;
	text-align: center !important;
	max-width: 1023px;
	margin-left: auto !important;
	margin-right: auto !important;
	font-size: 24px !important;
	line-height: 38px !important;
}

.vv-email-band .vv-email-band__image,
.vv-email-band figure {
	margin: 0 auto -60px !important;
	max-width: 521px;
}

.vv-email-band img {
	width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}

/* Awards ? match Sage section.awards-section */
.vv-awards-section {
	padding: 0 !important;
	margin: 0 !important; /* beat WP group default 24px */
	overflow: visible !important;
}

.vv-awards-section.wp-block-columns,
.vv-awards-section .wp-block-columns,
.vv-awards-section .vv-awards-columns {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
	overflow: visible !important;
}

.vv-awards-section .vv-awards-left,
.vv-awards-section .wp-block-column.vv-awards-left {
	background-color: #ecb940 !important;
	padding: 0 0 0 55px !important;
	position: relative;
	flex: 0 0 50% !important;
	flex-basis: 50% !important;
	width: 50% !important;
	max-width: 50% !important;
	overflow: visible !important;
	box-sizing: border-box !important;
}

.vv-awards-section .vv-awards-left::before {
	content: "";
	background-image: url("../images/27.png");
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 239px 238px;
	/* Asset is 239?238 ? do not stretch the paint box */
	width: 239px;
	height: 238px;
	position: absolute;
	/*
	 * Sage CSS says bottom:100px, but that parks the circle on the SF bottom
	 * edge (~100px visible below). Half-under SF needs the circle centered on
	 * the SF card: SF bottom is ~200px above column bottom ? bottom: 155px.
	 */
	bottom: 155px;
	left: 120px;
	pointer-events: none;
	z-index: 0;
}

.vv-awards-section .vv-awards-left .wp-block-heading,
.vv-awards-section .vv-awards-left h3 {
	position: relative;
	z-index: 1;
	font-size: 60px !important;
	line-height: 83px !important;
	font-weight: 700 !important;
	/* Self-hosted ? CSS "Poppins" paints Arial on Local */
	font-family: "VV Poppins", Poppins, sans-serif !important;
	color: #fff !important;
	text-align: left !important;
	text-transform: none !important;
	margin: 20px 0 35px 155px !important;
	padding: 120px 0 35px !important;
	background-image: url("../images/white-shadow.png");
	background-repeat: no-repeat;
	background-position: bottom left;
	background-size: auto;
}

.vv-awards-badges {
	position: relative;
	z-index: 2;
	max-width: none;
	margin: 0 !important; /* kill WP 24px top ? extra height drops ornament */
	padding-bottom: 0; /* prod: only last card mb 30px under G2 */
}

/* White badge cards ? Sage .badge-section (overlap into right column) */
.vv-awards-badges .vv-badge-section,
.vv-awards-badges .badge-section {
	background: #fff !important;
	padding: 20px !important;
	margin-bottom: 30px !important;
	border-radius: 10px !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
	position: relative !important;
	right: -5% !important;
	z-index: 99 !important;
	width: auto !important;
	max-width: none !important;
}

.vv-awards-badges .vv-badge-section--g2 {
	width: fit-content !important;
	margin-left: auto !important;
	margin-right: 0 !important;
}

.vv-awards-badges .vv-badge-row,
.vv-awards-badges .badge-row {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 10px !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin: 0 !important;
}

.vv-awards-badges .sf-root {
	width: 95px !important;
	max-width: 95px !important;
	height: auto !important;
	min-height: 0 !important;
	flex: 0 0 95px !important;
}

.vv-awards-badges .sf-root img,
.vv-awards-badges .sf-root a img {
	width: 95px !important;
	max-width: 95px !important;
	height: auto !important;
	display: block;
}

.vv-awards-badges .vv-g2-badge {
	max-width: 200px;
	width: 200px;
	height: auto;
	display: block;
}

.vv-awards-section .vv-awards-right,
.vv-awards-section .wp-block-column.vv-awards-right {
	padding: 0 !important;
	margin: 0 !important;
	flex: 0 0 50% !important;
	flex-basis: 50% !important;
	width: 50% !important;
	max-width: 50% !important;
	/* Sage right col is overflow visible; image is natural height */
	overflow: visible;
	min-height: 0;
	box-sizing: border-box !important;
}

.vv-awards-section .vv-awards-right .wp-block-image,
.vv-awards-section .vv-awards-right figure {
	height: auto;
	margin: 0 !important;
}

/* Sage: width 100% only ? do not stretch/cover to column height */
.vv-awards-section .vv-awards-right img {
	width: 100% !important;
	height: auto !important;
	max-width: 100%;
	object-fit: fill;
	margin: 0;
	display: block;
}

@media (max-width: 781px) {
	.vv-awards-section.wp-block-columns,
	.vv-awards-section .wp-block-columns {
		flex-wrap: wrap !important;
	}

	.vv-awards-section .vv-awards-left,
	.vv-awards-section .vv-awards-right,
	.vv-awards-section .wp-block-column.vv-awards-left,
	.vv-awards-section .wp-block-column.vv-awards-right {
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.vv-awards-section .vv-awards-left {
		padding-left: 0 !important;
	}

	.vv-awards-section .vv-awards-left .wp-block-heading,
	.vv-awards-section .vv-awards-left h3 {
		margin-left: 45px !important;
		padding-top: 38px !important;
		font-size: 46px !important;
		line-height: 1.2 !important;
	}

	.vv-awards-badges .vv-badge-section,
	.vv-awards-badges .badge-section {
		right: 0 !important;
		margin-left: 15px !important;
		margin-right: 15px !important;
	}

	.vv-awards-section .vv-awards-right img {
		height: auto !important;
		min-height: 320px;
	}
}

/* Customer Reviews ? between Awards and CTA */
.vv-reviews-section {
	padding: 60px 24px 40px !important;
	text-align: center;
	position: relative;
}

.vv-reviews-section .vv-reviews-title {
	font-size: clamp(2rem, 4vw, 52px) !important;
	line-height: 1.2 !important;
	font-weight: 700 !important;
	font-family: "Poppins", sans-serif !important;
	color: #282828 !important;
	text-align: center !important;
	margin: 0 auto 24px !important;
	padding-bottom: 28px;
	background-image: url("/wp-content/themes/visual-visitor/assets/images/green-shadow.png");
	background-repeat: no-repeat;
	background-position: center bottom;
}

.vv-reviews-section .vv-reviews-sub {
	font-size: clamp(1.25rem, 2.5vw, 30px) !important;
	font-weight: 500 !important;
	font-family: "Poppins", sans-serif !important;
	color: #282828 !important;
	text-align: center !important;
	margin: 0 auto 40px !important;
}

.vv-reviews-section #wprev-slider-15 .wprev_preview_bradius_T4,
.vv-reviews-section .wprev_preview_bradius_T4 {
	background-color: #fff;
	box-shadow: 0 3px 24.5px rgba(0, 0, 0, 0.13);
	border-radius: 10px;
	text-align: left;
	min-height: 420px;
}

/* CTA band ? light default (home); navy bands use inline/bg style */
.vv-cta-band {
	background-color: #ecf6fe;
	text-align: center;
	padding: 100px 24px !important;
}

/* Product/pattern navy CTAs (inline style must not lose to light default) */
.vv-cta-band.has-background[style*="064d80"],
.vv-cta-band.has-background[style*="03426e"],
.vv-cta-band.has-background[style*="#064d80"],
.vv-cta-band.has-background[style*="#03426e"] {
	background-color: #064d80 !important;
	background-image: none !important;
	color: #fff !important;
}

.vv-cta-band.has-background[style*="064d80"] .wp-block-heading,
.vv-cta-band.has-background[style*="03426e"] .wp-block-heading,
.vv-cta-band.has-background[style*="064d80"] p,
.vv-cta-band.has-background[style*="03426e"] p,
.vv-cta-band.has-background[style*="#064d80"] .wp-block-heading,
.vv-cta-band.has-background[style*="#03426e"] .wp-block-heading {
	color: #fff !important;
}

.vv-cta-band .wp-block-heading.vv-cta-title,
.vv-cta-band h3.vv-cta-title {
	font-size: clamp(2rem, 5vw, 72px) !important;
	line-height: 1.15 !important;
	font-weight: 700 !important;
	color: #064d80 !important;
	text-align: center !important;
	max-width: 1220px;
	margin: 0 auto 40px !important;
	padding-bottom: 40px;
	background-image: url("/wp-content/themes/visual-visitor/assets/images/green-shadow.png");
	background-repeat: no-repeat;
	background-position: center bottom;
}

.vv-cta-band.has-background[style*="064d80"] .wp-block-heading.vv-cta-title,
.vv-cta-band.has-background[style*="03426e"] .wp-block-heading.vv-cta-title {
	color: #fff !important;
	background-image: none !important;
	padding-bottom: 0;
}

.vv-cta-band .wp-block-heading.vv-cta-subtitle,
.vv-cta-band h4.vv-cta-subtitle {
	font-size: 48px !important;
	line-height: 1.2 !important;
	font-weight: 600 !important;
	color: #282828 !important;
	text-align: center !important;
	margin: 0 auto !important;
}

@media only screen and (max-width: 991px) {
	.vv-cta-band .wp-block-heading.vv-cta-subtitle,
	.vv-cta-band h4.vv-cta-subtitle {
		font-size: 38px !important;
	}
}

/* Blog band */
.vv-blog-band {
	background-color: var(--vv-navy) !important;
	background-image: url("/wp-content/uploads/2023/02/28.webp") !important;
	background-size: cover !important;
	background-position: bottom center !important;
	color: #fff;
	text-align: center;
	padding: 100px 24px !important;
}

.vv-blog-band .wp-block-heading,
.vv-blog-band h1,
.vv-blog-band h2,
.vv-blog-band h3,
.vv-blog-band h4,
.vv-blog-band p {
	color: #fff !important;
}

.vv-blog-band .wp-block-heading {
	font-weight: 700 !important;
}

.vv-latest-blogs {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
	margin-top: 40px;
	text-align: left;
}

.vv-blog-card__thumb {
	position: relative;
	height: 280px;
	border-radius: 10px;
}

.vv-blog-card__thumb::before {
	content: "";
	width: 110px;
	height: 140px;
	border-radius: 10px;
	background-color: #7ac546;
	position: absolute;
	bottom: -16px;
	left: -16px;
	z-index: 0;
	filter: drop-shadow(0 3px 24px rgba(0, 0, 0, 0.13));
}

.vv-blog-card__thumb img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
	display: block;
}

.vv-blog-card__body {
	padding: 28px 24px 0;
}

.vv-blog-card__title {
	font-size: 24px !important;
	line-height: 34px !important;
	color: #fff !important;
	font-weight: 600 !important;
	margin: 0 0 16px !important;
}

.vv-blog-card__excerpt {
	font-size: 18px !important;
	line-height: 1.6 !important;
	color: #fff !important;
	margin: 0 !important;
}

.vv-blog-card__more {
	display: inline-block !important;
	margin-top: 24px !important;
	padding: 10px 25px !important;
	border: 2px solid #7ac546 !important;
	border-radius: 5px !important;
	color: #fff !important;
	font-family: "Poppins", sans-serif !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	line-height: normal !important;
	transition: 0.25s background-color;
}

.vv-blog-card__more:hover {
	background-color: #7ac546 !important;
	color: #fff !important;
}

@media (max-width: 900px) {
	.vv-latest-blogs {
		grid-template-columns: 1fr;
	}
}

/* Footer ? match production #footer_wrapper */
.vv-site-footer {
	background: #fff;
	color: #000;
	border-top: 1px solid #e6eef5;
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif;
}

.vv-site-footer .vv-footer-top {
	background: #fff;
}

.vv-site-footer .wp-block-heading {
	color: var(--vv-navy-header) !important;
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	text-transform: none !important;
	margin: 0 0 0 !important;
}

.vv-site-footer a {
	color: #000;
	font-weight: 600;
	text-decoration: none;
}

.vv-site-footer a:hover {
	color: var(--vv-green);
}

/* Prod: list-style:none; padding:0; margin-top:15px; li margin-bottom:10px */
.vv-site-footer .vv-footer-menu,
.vv-site-footer ul.wp-block-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 15px 0 0 !important;
}

.vv-site-footer .vv-footer-menu li,
.vv-site-footer ul.wp-block-list li {
	list-style: none !important;
	font-weight: 500;
	color: #000;
	margin: 0 0 10px !important;
	padding: 0 !important;
}

.vv-site-footer .vv-footer-menu li::marker,
.vv-site-footer ul.wp-block-list li::marker {
	content: "" !important;
	font-size: 0 !important;
}

.vv-footer-logo img,
.vv-site-footer .vv-footer-logo img {
	width: 174px !important;
	max-width: 174px !important;
	height: auto !important;
}

.vv-footer-call {
	display: flex !important;
	align-items: center;
	gap: 5px;
	margin: 15px 0 0 !important;
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif;
}

.vv-footer-call img {
	width: 25px !important;
	height: 25px !important;
	margin: 0 5px 0 0;
	display: block;
}

.vv-footer-call a {
	font-weight: 700 !important;
	font-size: 18px !important;
	line-height: 1.1 !important;
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
}

/* Own column beside Contact ? prod 150?150, not nested under phone */
.vv-footer-inc5000,
.vv-footer-col--inc .vv-footer-inc5000 {
	margin: 0 !important;
}

.vv-footer-inc5000 img {
	width: 150px !important;
	max-width: 150px !important;
	height: auto !important;
	margin: 0 !important;
}

/* Bottom bar ? prod padding 40px; 4 equal cols */
.vv-footer-bottom {
	background: #f9f9f9 !important;
	border-top: none;
	color: #1d1d1d;
	padding: 40px 15px !important;
	max-width: none !important;
}

.vv-footer-bottom > .vv-footer-bottom-row,
.vv-footer-bottom .vv-footer-bottom-row {
	max-width: 1200px;
	margin-left: auto !important;
	margin-right: auto !important;
	gap: 0 !important;
}

.vv-footer-bottom .vv-footer-tnc,
.vv-footer-bottom .vv-footer-copyright {
	flex-basis: 25% !important;
}

.vv-footer-bottom a,
.vv-footer-bottom .vv-footer-copyright p,
.vv-footer-bottom .vv-footer-tnc p {
	color: #1d1d1d !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}

.vv-footer-bottom .vv-footer-copyright p {
	text-align: right !important;
}

.vv-footer-social-links {
	text-align: center !important;
	display: flex !important;
	justify-content: center;
	align-items: center;
	gap: 0;
	flex-wrap: wrap;
	min-height: 24px;
}

.vv-footer-social-links a {
	margin: 0 5px !important;
	color: #2f4858 !important; /* prod social icon color */
	line-height: 1 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
}

.vv-footer-social-links a svg {
	display: block;
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.vv-footer-social-links a:hover {
	color: var(--vv-green) !important;
}

@media (max-width: 781px) {
	.vv-footer-bottom .vv-footer-tnc,
	.vv-footer-bottom .vv-footer-copyright {
		flex-basis: 100% !important;
	}

	.vv-footer-bottom .vv-footer-copyright p,
	.vv-footer-social-links {
		text-align: center !important;
	}
}

.vv-media-offset img {
	border-radius: 8px;
}

/* Hide Reading Time WP output on pages (matches Sage .page span.rt-reading-time) */
.page .rt-reading-time,
.page .span-reading-time,
.page .rt-time,
.page .rt-label,
.home .rt-reading-time,
.home .span-reading-time {
	display: none !important;
}

/* Smart Slider heroes ? match production (Sage .n2_clear on ALL product sliders,
   not only homepage). Covers home #15, Person #18, Employee #20, AI Rep #27, Coach #31. */
.vv-hero-slider .n2-ss-slider,
.vv-hero-slider {
	max-width: none;
}

/* Background on .n2_clear ? Sage applies globally so Person/Employee match home. */
.vv-hero-slider .n2_clear,
.n2_clear:has([id^="n2-ss-"]),
.n2-section-smartslider.n2_clear {
	background-color: #ecf6fe;
	background-image: url("../images/Layer1221.webp");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 0 0;
	position: relative;
	overflow: hidden;
	margin-top: 0 !important;
}

/* Corner ornaments (Sage .n2_clear ::before / ::after) */
.vv-hero-slider .n2_clear::before,
.n2_clear:has([id^="n2-ss-"])::before,
.n2-section-smartslider.n2_clear::before {
	content: "";
	height: 183px;
	width: 143px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	pointer-events: none;
	background-image: url("../images/Layer2085.png");
	background-repeat: no-repeat;
	background-size: contain;
}

.vv-hero-slider .n2_clear::after,
.n2_clear:has([id^="n2-ss-"])::after,
.n2-section-smartslider.n2_clear::after {
	content: "";
	height: 183px;
	width: 143px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	pointer-events: none;
	background-image: url("../images/Layer2085-2.png");
	background-repeat: no-repeat;
	background-size: contain;
}

[id^="n2-ss-"][id$="-align"] {
	position: relative;
	z-index: 1;
}

/* Keep slide chrome transparent so Layer1221 shows through */
#n2-ss-12 .n2-ss-slide-background-color,
#n2-ss-12,
#n2-ss-12 .n2-ss-slider-1,
#n2-ss-12 .n2-ss-slider-2,
#n2-ss-12 .n2-ss-slider-3,
#n2-ss-12 .n2-ss-slide,
#n2-ss-15 .n2-ss-slide-background-color,
#n2-ss-15,
#n2-ss-15 .n2-ss-slider-1,
#n2-ss-15 .n2-ss-slider-2,
#n2-ss-15 .n2-ss-slider-3,
#n2-ss-15 .n2-ss-slide,
#n2-ss-18 .n2-ss-slide-background-color,
#n2-ss-18,
#n2-ss-18 .n2-ss-slider-1,
#n2-ss-18 .n2-ss-slider-2,
#n2-ss-18 .n2-ss-slider-3,
#n2-ss-18 .n2-ss-slide,
#n2-ss-20 .n2-ss-slide-background-color,
#n2-ss-20,
#n2-ss-20 .n2-ss-slider-1,
#n2-ss-20 .n2-ss-slider-2,
#n2-ss-20 .n2-ss-slider-3,
#n2-ss-20 .n2-ss-slide,
#n2-ss-25 .n2-ss-slide-background-color,
#n2-ss-25,
#n2-ss-25 .n2-ss-slider-1,
#n2-ss-25 .n2-ss-slider-2,
#n2-ss-25 .n2-ss-slider-3,
#n2-ss-25 .n2-ss-slide,
#n2-ss-27 .n2-ss-slide-background-color,
#n2-ss-27,
#n2-ss-27 .n2-ss-slider-1,
#n2-ss-27 .n2-ss-slider-2,
#n2-ss-27 .n2-ss-slider-3,
#n2-ss-27 .n2-ss-slide,
#n2-ss-31 .n2-ss-slide-background-color,
#n2-ss-31,
#n2-ss-31 .n2-ss-slider-1,
#n2-ss-31 .n2-ss-slider-2,
#n2-ss-31 .n2-ss-slider-3,
#n2-ss-31 .n2-ss-slide,
#n2-ss-33 .n2-ss-slide-background-color,
#n2-ss-33,
#n2-ss-33 .n2-ss-slider-1,
#n2-ss-33 .n2-ss-slider-2,
#n2-ss-33 .n2-ss-slider-3,
#n2-ss-33 .n2-ss-slide {
	background-color: transparent !important;
	background-image: none !important;
}

/* Hero slide row ? prod uses 50px vertical padding (without this, copy sits wrong) */
div#n2-ss-15 .n2-ss-layer-row.n2-ss-layer-with-background.n-uc-171d94531a352-inner,
div#n2-ss-15 .n-uc-171d94531a352-inner {
	padding-top: 50px !important;
	padding-bottom: 50px !important;
	padding-left: 10px !important;
	padding-right: 10px !important;
}

div#n2-ss-15 .n-uc-171d94531a352-inner > .n2-ss-layer-row-inner {
	width: 100%;
	margin: 0;
}

/* Eyebrow ? Poppins 500 (self-hosted VV Poppins; Google Poppins is unreliable on Local) */
.n2_clear div#n2-ss-15item1 {
	font-size: 48px !important;
	line-height: 1.5 !important;
	color: #064d80 !important;
	font-weight: 500 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
}

/* WebID + Person ? Poppins 600; do not override line-height (prod = 1.5 / 112.5px @75) */
.n2_clear .n2-ss-item-content.n2-ss-text.n2-ow-all .n2-font-615d304e633c72168d5c854d5fec5d28-paragraph,
div#n2-ss-15 .n2-font-615d304e633c72168d5c854d5fec5d28-paragraph,
div#n2-ss-15 p.n2-font-615d304e633c72168d5c854d5fec5d28-paragraph {
	font-size: 93px !important;
	color: #064d80 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	margin: 0 !important;
}

.n2_clear .n2-ss-item-content.n2-ss-text.n2-ow-all p span.slider-plus,
div#n2-ss-15 span.slider-plus {
	color: #fda544 !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

.n2_clear .n2-ss-item-content.n2-ss-text.n2-ow-all p span.slider-text-green,
div#n2-ss-15 span.slider-text-green {
	color: #7ac546 !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	background-image: url("/wp-content/themes/visual-visitor/assets/images/green-shadow.png");
	background-repeat: no-repeat;
	background-position: bottom left;
	margin-bottom: 30px;
	display: inline-block;
	background-size: contain;
	padding-bottom: 10px;
}

/* Description ? production renders Roboto 400 (not Montserrat 600) */
div#n2-ss-15 .n2-font-0fc66fa7000ecbe69fdf5dde1518e22a-paragraph,
div#n2-ss-18 .n2-font-0fc66fa7000ecbe69fdf5dde1518e22a-paragraph {
	max-width: 758px !important;
	font-size: 30px !important;
	line-height: 46px !important;
	color: #262626 !important;
	font-weight: 400 !important;
	font-family: "VV Roboto", Roboto, Arial, sans-serif !important;
	/* Prod wp-style: margin-bottom 40px so CTAs aren't flush to copy */
	margin: 0 0 40px !important;
	padding: 0 !important;
}

/* Left column: block layout so CTAs sit side-by-side as inline-block (Sage) */
.n2-ss-layer-col.n2-ss-layer-with-background.n2-ss-layer-content.n-uc-150150cf5bf1a-inner,
div#n2-ss-15 .n-uc-150150cf5bf1a-inner,
#n2-ss-18 .n2-ss-layer-col.n2-ss-layer-with-background.n2-ss-layer-content.n-uc-ooGG9hnD3f7m-inner,
.slider-left-text-data .n2-ss-layer-col.n2-ss-layer-with-background {
	display: block !important;
	text-align: left !important;
}

/* Vertically center hero columns (eyebrow sits mid-hero like prod) */
.n2-ss-slider .n2-ss-layer-row-inner,
div#n2-ss-15 .n2-ss-layer-row-inner,
div#n2-ss-18 .n2-ss-layer-row-inner {
	align-items: center !important;
}

/* Home + product slider CTA layers ? side-by-side (not stacked) */
.n2-ss-layer.n2-ow.n-uc-5ZO6ReqI8S0O.n2-ss-layer--auto,
.n2-ss-layer.n2-ow.n-uc-qEMhL0V4MsDz.n2-ss-layer--auto,
.n2-ss-layer.n2-ow.n-uc-RSqcYoop9aI2.n2-ss-layer--auto,
.n2-ss-layer.n2-ow.n-uc-ORMn6Jd95umx.n2-ss-layer--auto,
div#n2-ss-15 .greenn-slider-btn.n2-ss-layer--auto,
div#n2-ss-15 .blue-slider-btn.n2-ss-layer--auto,
div#n2-ss-15 .n2-ss-layer.n-uc-5ZO6ReqI8S0O,
div#n2-ss-15 .n2-ss-layer.n-uc-qEMhL0V4MsDz,
.vv-hero-slider .greenn-slider-btn.n2-ss-layer--auto,
.vv-hero-slider .blue-slider-btn.n2-ss-layer--auto,
.vv-hero-slider .slider-2btns.n2-ss-layer--auto,
[id^="n2-ss-"] .greenn-slider-btn.n2-ss-layer--auto,
[id^="n2-ss-"] .blue-slider-btn.n2-ss-layer--auto,
[id^="n2-ss-"] .slider-2btns.n2-ss-layer--auto {
	display: inline-block !important;
	width: auto !important;
	max-width: none !important;
	vertical-align: top;
}

/* WebID Person (#18) + AI Sales Rep (#27) green CTA ? mirror home (#15) */
div#n2-ss-18 .n2-font-ece90ae23f93d46acdc4058debd2f270-link a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
div#n2-ss-18 a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
div#n2-ss-27 .n2-font-ece90ae23f93d46acdc4058debd2f270-link a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
div#n2-ss-27 a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
div#n2-ss-27 .greenn-slider-btn a {
	border-radius: 5px !important;
	filter: drop-shadow(0 21px 17.5px rgba(12, 43, 94, 0.15)) !important;
	background-color: #7ac546 !important;
	display: inline-block !important;
	font-size: 18px !important;
	line-height: normal !important;
	text-transform: uppercase !important;
	color: #fff !important;
	font-weight: 700 !important;
	font-family: "Poppins", sans-serif !important;
	text-align: center !important;
	padding: 25px 47px !important;
	margin-right: 20px !important;
	border: 0 !important;
	text-decoration: none !important;
}

div#n2-ss-18 .n2-font-27bd8a5bbf668fb25a67236500fe22ce-link a.n2-style-92696f28387c165901a67dd410e553f5-heading.n2-ow,
div#n2-ss-18 a.n2-style-92696f28387c165901a67dd410e553f5-heading {
	border-radius: 5px !important;
	filter: drop-shadow(0 21px 17.5px rgba(12, 43, 94, 0.15)) !important;
	background-color: rgba(240, 76, 51, 0) !important;
	border: 2px solid #064d80 !important;
	margin-right: 0 !important;
	color: #064d80 !important;
	font-size: 18px !important;
	line-height: normal !important;
	text-transform: uppercase !important;
	font-weight: 700 !important;
	font-family: "Poppins", sans-serif !important;
	text-align: center !important;
	padding: 23px 47px !important;
	text-decoration: none !important;
}

div#n2-ss-18 .n2-ss-layer-row.n2-ss-layer-with-background.n-uc-690ueZ74TyYm-inner {
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}

/* Green CTA ? Start A Free Trial */
div#n2-ss-15 .n2-font-ece90ae23f93d46acdc4058debd2f270-link a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
div#n2-ss-15 a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading {
	border-radius: 5px !important;
	filter: drop-shadow(0 21px 17.5px rgba(12, 43, 94, 0.15)) !important;
	background-color: #7ac546 !important;
	display: inline-block !important;
	font-size: 18px !important;
	line-height: normal !important;
	text-transform: uppercase !important;
	color: #fff !important;
	font-weight: 700 !important;
	font-family: "Poppins", sans-serif !important;
	text-align: center !important;
	padding: 25px 47px !important;
	margin-right: 20px !important;
	border: 0 !important;
	text-decoration: none !important;
}

/* Navy outline CTA ? Schedule A Demo */
div#n2-ss-15 .n2-font-27bd8a5bbf668fb25a67236500fe22ce-link a.n2-style-92696f28387c165901a67dd410e553f5-heading.n2-ow,
div#n2-ss-15 a.n2-style-92696f28387c165901a67dd410e553f5-heading {
	border-radius: 5px !important;
	filter: drop-shadow(0 21px 17.5px rgba(12, 43, 94, 0.15)) !important;
	background-color: rgba(240, 76, 51, 0) !important;
	border: 2px solid #064d80 !important;
	margin-right: 0 !important;
	color: #064d80 !important;
	font-size: 18px !important;
	line-height: normal !important;
	text-transform: uppercase !important;
	font-weight: 700 !important;
	font-family: "Poppins", sans-serif !important;
	text-align: center !important;
	padding: 23px 47px !important;
	text-decoration: none !important;
}

.blue-slider-btn a:hover {
	border: 2px solid #064d80 !important;
	color: #fff !important;
	background: #064d80 !important;
}

.greenn-slider-btn a:hover {
	border: 2px solid #5cba3c !important;
	color: #5cba3c !important;
	background: transparent !important;
}

@media (max-width: 1560px) {
	.n2_clear .n2-ss-item-content.n2-ss-text.n2-ow-all .n2-font-615d304e633c72168d5c854d5fec5d28-paragraph,
	div#n2-ss-15 .n2-font-615d304e633c72168d5c854d5fec5d28-paragraph,
	div#n2-ss-15 p.n2-font-615d304e633c72168d5c854d5fec5d28-paragraph {
		font-size: 75px !important;
	}
	div#n2-ss-15 .n2-font-0fc66fa7000ecbe69fdf5dde1518e22a-paragraph,
	div#n2-ss-18 .n2-font-0fc66fa7000ecbe69fdf5dde1518e22a-paragraph {
		font-size: 26px !important;
		line-height: 39px !important;
	}
	.n2_clear div#n2-ss-15item1,
	.n2_clear div#n2-ss-18item1 {
		font-size: 32px !important;
	}
}

@media (max-width: 1299px) {
	.n2_clear .n2-ss-item-content.n2-ss-text.n2-ow-all .n2-font-615d304e633c72168d5c854d5fec5d28-paragraph,
	div#n2-ss-15 .n2-font-615d304e633c72168d5c854d5fec5d28-paragraph,
	div#n2-ss-15 p.n2-font-615d304e633c72168d5c854d5fec5d28-paragraph {
		font-size: 56px !important;
	}
	div#n2-ss-15 .n2-font-0fc66fa7000ecbe69fdf5dde1518e22a-paragraph,
	div#n2-ss-18 .n2-font-0fc66fa7000ecbe69fdf5dde1518e22a-paragraph {
		font-size: 22px !important;
		line-height: 34px !important;
	}
	.n2_clear div#n2-ss-15item1,
	.n2_clear div#n2-ss-18item1 {
		font-size: 26px !important;
	}
	div#n2-ss-15 .n2-font-ece90ae23f93d46acdc4058debd2f270-link a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
	div#n2-ss-15 a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
	div#n2-ss-18 .n2-font-ece90ae23f93d46acdc4058debd2f270-link a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
	div#n2-ss-18 a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
	div#n2-ss-27 .n2-font-ece90ae23f93d46acdc4058debd2f270-link a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
	div#n2-ss-27 a.n2-style-fd38549eee9ab23b7211fa4859786f10-heading,
	div#n2-ss-27 .greenn-slider-btn a {
		padding: 20px 26px !important;
		font-size: 15px !important;
	}
	div#n2-ss-15 .n2-font-27bd8a5bbf668fb25a67236500fe22ce-link a.n2-style-92696f28387c165901a67dd410e553f5-heading.n2-ow,
	div#n2-ss-15 a.n2-style-92696f28387c165901a67dd410e553f5-heading,
	div#n2-ss-18 .n2-font-27bd8a5bbf668fb25a67236500fe22ce-link a.n2-style-92696f28387c165901a67dd410e553f5-heading.n2-ow,
	div#n2-ss-18 a.n2-style-92696f28387c165901a67dd410e553f5-heading {
		padding: 18px 26px !important;
		font-size: 15px !important;
	}
}

/* Interior pages (Contact, Pricing, Demo, product) ? Sage breadcrumb band */
.vv-interior-hero {
	padding: 80px 20px 64px !important;
	text-align: center;
	background-color: #f7fbff !important;
	background-image: none !important;
}

/* Feature / what-we-do style video heroes (Sage breadcrumb + featured_wrapper) */
.vv-video-hero {
	position: relative;
	background-color: #f7fbff !important;
	background-image: url("/wp-content/uploads/2023/06/breadcum-backg-full.webp");
	background-size: 100% auto;
	background-position: 100% 70%;
	background-repeat: no-repeat;
	padding: 48px 20px 56px !important;
	text-align: center;
	margin: 0 !important;
	margin-block-start: 0 !important;
	border-bottom: 2px solid #4a971e;
}

/* Feature pages: subtitle left + video right (Sage header_row) */
.vv-video-hero__split {
	display: grid !important;
	grid-template-columns: 1fr 1.1fr;
	gap: 32px;
	align-items: center;
	text-align: left;
	max-width: 1200px;
	margin: 0 auto;
}

.vv-video-hero__split .vv-interior-subtitle {
	text-align: left !important;
	margin: 0 !important;
	font-size: 24px !important;
	line-height: 1.5 !important;
	max-width: none;
}

.vv-video-hero__split .vv-video-hero__embed {
	width: 100%;
	margin: 0;
}

@media (max-width: 900px) {
	.vv-video-hero__split {
		grid-template-columns: 1fr;
		text-align: center;
	}
	.vv-video-hero__split .vv-interior-subtitle {
		text-align: center !important;
	}
}

.vv-video-hero.vv-whatwedo-hero {
	background-image: url("/wp-content/themes/visual-visitor/assets/images/homehero.png");
	background-size: cover;
	background-position: center right;
	border-bottom: 0;
	padding-bottom: 72px !important;
}

.vv-video-hero .vv-heading-accent {
	font-size: 60px !important;
	font-weight: 700 !important;
	color: #1062a1 !important;
	margin: 0 auto 16px !important;
	padding-bottom: 40px !important;
}

.vv-video-hero .vv-interior-subtitle {
	max-width: 980px;
	margin: 0 auto 28px !important;
	font-size: 22px !important;
	color: #444 !important;
}

.vv-video-hero__lines {
	margin: 0 auto 28px;
	max-width: 640px;
}

.vv-video-hero__lines p {
	display: block !important;
	margin: 0 !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	color: #282828 !important;
	line-height: 1.45 !important;
	text-align: center;
}

.vv-video-hero .wp-block-buttons {
	margin-top: 28px;
	justify-content: center;
}

.vv-video-hero .vv-btn-green .wp-block-button__link,
.vv-video-hero .wp-block-button__link {
	background: #7ac546 !important;
	color: #fff !important;
	border-radius: 5px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding: 16px 36px !important;
}

.vv-video-hero__embed {
	position: relative;
	width: min(809px, calc(100% - 30px));
	margin: 12px auto 0;
	aspect-ratio: 16 / 9;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 18px 40px rgba(6, 77, 128, 0.18);
	background: #0b1f33;
}

.vv-video-hero__embed iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
	border-radius: 20px;
}

/* Contact offices: Prod is photo+address | map per row */
.vv-contact-offices.vv-contact-office-row {
	margin-bottom: 40px !important;
}

.vv-contact-offices .vv-contact-map iframe {
	width: 100% !important;
	max-width: 100%;
	height: 450px;
	border: 0;
	border-radius: 4px;
}

.vv-interior-hero .vv-heading-accent {
	font-size: 50px !important; /* prod bread_title */
	font-weight: 700 !important;
	color: #1062a1 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	margin: 0 auto 12px !important;
	padding-bottom: 40px !important;
	background-position: bottom center;
	padding-right: 0;
}

/* Match Sage page breadcrumb h1 when title is only in Smart Slider */
.vv-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.vv-interior-subtitle {
	font-size: 22px !important;
	font-weight: 500 !important;
	color: #393939 !important;
	/* Keep horizontal auto so constrained-layout centering is not killed */
	margin: 0 auto 8px !important;
	text-align: center;
	max-width: 100%;
}

.vv-interior-hero > .wp-block-heading,
.vv-interior-hero > .wp-block-group,
.vv-interior-hero > p {
	margin-left: auto !important;
	margin-right: auto !important;
}

.vv-contact-panel {
	/* card outline filled by shared .vv-page-card rule below */
	padding: 40px 40px 60px !important;
}

.vv-contact-call {
	font-size: 28px !important;
	font-weight: 700 !important;
	color: #1062a1 !important;
	margin: 0 auto 32px !important;
	text-align: center;
}

.vv-contact-call a {
	color: #1062a1 !important;
	text-decoration: none;
}

.vv-contact-offices .wp-block-column {
	text-align: left;
}

.vv-contact-offices img {
	width: 100%;
	height: auto;
	border-radius: 4px;
	margin-bottom: 16px;
}

.vv-contact-offices h3 {
	font-size: 20px !important;
	font-weight: 700 !important;
	margin: 12px 0 8px !important;
}

.vv-contact-offices iframe {
	margin-top: 16px;
	border-radius: 4px;
}

.vv-contact-form-band {
	background: #fff !important;
	padding: 64px 20px !important;
}

.vv-contact-form-band .gform_wrapper {
	text-align: left;
	max-width: 640px;
	margin: 0 auto;
}

.vv-calendly-embed {
	min-height: 700px;
	padding: 40px 40px 48px !important;
}

.vv-calendly-embed .calendly-inline-widget {
	min-width: 100%;
	height: 830px;
}

.vv-pricing-elfsight {
	padding: 24px 20px 48px !important;
}

.vv-pricing-choose {
	font-size: 32px !important;
	font-weight: 700 !important;
	margin-bottom: 24px !important;
}

.vv-pricing-included {
	padding: 48px 20px 56px !important;
	background: #f7fbff;
}

.vv-pricing-included h3 {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #064d80 !important;
}

.vv-pricing-faq {
	padding: 48px 20px 64px !important;
	background: #fff;
}

/* Bridge <main> wrappers ? no site-blocks / theme blockGap above hero */
.vv-signup-main,
.vv-signup-complete-main,
.vv-blog-main,
.vv-single-main,
.vv-acf-main,
.vv-pla-main,
.vv-security-main,
.vv-404-main,
.vv-sales-rep-main,
.vv-connect-zapier-main {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
	padding-top: 0;
}

/* Sign-up bridge ? tighten under block header */
.vv-signup-main {
	padding: 0;
}

.vv-signup-main .sign-up-section,
.vv-signup-main section {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

/* Product feature bands ? match Prod .parent_section_node / container-fluid */
.vv-product-feature {
	/* Prod uses margin outside the band (not padding) so section crops align */
	padding: 0 15px !important;
	margin: 50px 0 100px !important;
	background: transparent;
	--wp--style--global--content-size: 1410px;
	--wp--style--global--wide-size: 1410px;
}

/* Prod feature bands are white; .reverce-image has no top margin */
.vv-product-feature.is-alt {
	background: transparent;
	margin-top: 0 !important;
}

.vv-product-feature .wp-block-columns {
	align-items: center;
	max-width: 1410px !important;
	width: 100%;
}

/* Prod .general-text */
.vv-product-feature > .wp-block-columns p:not(.vv-step-caption),
.vv-product-feature .wp-block-column > p:not(.vv-step-caption) {
	color: #393939 !important;
	margin: 0 0 10px !important;
}

.vv-product-feature .wp-block-list,
.vv-product-feature ul.wp-block-list {
	font-size: 19px !important;
	line-height: 36px !important;
	color: #393939 !important;
	margin: 0 0 10px !important;
	padding-left: 1.2em;
}

/* Beat .entry-content li { padding-top: 20px } (compact Prod bullet lists). */
.vv-product-feature .wp-block-list li,
.vv-product-feature ul.wp-block-list li {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin: 0 !important;
	line-height: 1.7 !important;
	font-size: inherit !important;
}

.vv-product-feature h2.wp-block-heading,
.vv-product-feature h3,
.vv-product-video h2.wp-block-heading,
.vv-product-video h3 {
	font-weight: 700 !important;
	color: #282828 !important;
	text-transform: none !important;
	margin: 20px 0 35px !important;
}

/* Prod .heading-three.center-green-caption uses ~20px pad-right, not 76px */
.vv-product-feature .vv-heading-accent.wp-block-heading,
.vv-product-feature .vv-heading-accent {
	padding-right: 20px !important;
	display: inline-block !important;
	width: auto !important;
	max-width: 100%;
}

/*
 * Centered product titles (e.g. "How does + Employee Work?").
 * Product-feature margin shorthand was wiping margin-left/right:auto.
 */
.vv-product-feature .has-text-align-center.vv-heading-accent,
.vv-product-feature h2.has-text-align-center,
.vv-product-feature h3.has-text-align-center,
.vv-product-feature-grid .has-text-align-center.vv-heading-accent,
.vv-product-feature-grid h3.has-text-align-center,
.vv-product-steps .has-text-align-center.vv-heading-accent,
.vv-product-steps h3.has-text-align-center {
	display: table !important;
	width: auto !important;
	max-width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-top: 20px !important;
	margin-bottom: 35px !important;
	text-align: center !important;
	padding-right: 0 !important;
	background-position: bottom center !important;
}

/* Prod .image-center ? center visuals (step caption and/or image) */
.vv-product-feature .wp-block-column:has(> .vv-step-caption),
.vv-product-feature .wp-block-column:has(> .wp-block-image) {
	text-align: center;
}

.vv-product-feature .wp-block-column:has(> .vv-step-caption) .vv-product-ctas,
.vv-product-feature .wp-block-column:has(> .wp-block-image) .vv-product-ctas {
	justify-content: center;
}

/* Keep copy left-aligned when a text column also has media */
.vv-product-feature .wp-block-column:has(> .wp-block-heading) {
	text-align: left;
}

/* Review-widget / injected titles inside feature bands (Prod ~30px) */
.vv-product-feature h2:not(.wp-block-heading) {
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: #282828 !important;
}

/* Sage bridge headings ? beat global navy !important */
h2.heading-two,
h3.heading-three {
	font-weight: 700 !important;
	color: #282828 !important;
	text-transform: none !important;
}

/* Colored step/reason cards ? white titles like Prod .box-text */
.box-steps.blue h4,
.box-steps.green h4,
.box-steps .box-text h4,
.box-text h4 {
	color: #fff !important;
}

/* Product / retention feature list titles (Prod .make_lead_gener h4) */
.make_lead_gener h4,
.make_lead_gener .heading-four,
.data-included h4,
.logos-platform h4 {
	color: #222222 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	text-transform: uppercase !important;
}

.logos-platform .sp-logo-carousel-pro-section-title,
.sp-logo-carousel-pro-section-title {
	color: #222222 !important;
}

/* FAQ bands on dark (Prod white titles) */
.faq_product h2,
.faq_product h3,
.faq_product .heading-two,
.faq_product .heading-three {
	color: #fff !important;
}

/* Retention / product light CTA footers */
.cta-section-footer h3 {
	color: #064d80 !important;
	font-size: 72px !important;
}

.cta-section-footer h4 {
	color: #282828 !important;
	font-size: 48px !important;
}

/* Security dark commitments band */
.commitments h2,
.commitments h3,
.commitments h4,
.commitments .wp-block-heading {
	color: #fff !important;
}

/* Security section titles ? Prod ~32px (beat global heading) */
.responsible-ai h2,
.enterprise-security h2,
.privacy-rights h2,
.commitments h2,
.vv-security-faq-section h2,
.sec-head h2,
.vv-security-container h2 {
	line-height: 1.25 !important;
}

body.vv-security-bridge .security-hero h1,
.vv-security-container .security-hero h1,
.security-hero h1 {
	font-size: 60px !important;
	line-height: 1.15 !important;
}

@media only screen and (max-width: 991px) {
	.vv-product-feature h2.wp-block-heading,
	.vv-product-video h2.wp-block-heading,
	h2.heading-two {
		font-size: 2.0625rem !important; /* 33px */
		line-height: normal !important;
	}
	.vv-product-feature h3,
	.vv-product-video h3,
	h3.heading-three {
		font-size: 1.625rem !important; /* 26px */
		line-height: normal !important;
	}
}

@media only screen and (max-width: 576px) {
	.vv-product-feature h2.wp-block-heading,
	.vv-product-video h2.wp-block-heading,
	h2.heading-two {
		font-size: 1.625rem !important; /* 26px */
	}
	.vv-product-feature h3,
	.vv-product-video h3,
	h3.heading-three {
		font-size: 1.25rem !important; /* 20px */
	}
}

/* WebID Employee hero CTA (#20) ? match Sage wp-style.css */
#n2-ss-20 .other-hero-btn,
#n2-ss-20 .hero-btn,
.vv-hero-slider .other-hero-btn,
[id^="n2-ss-"] .other-hero-btn {
	text-align: center !important;
	margin-top: 20px !important;
	max-width: none !important;
	height: auto !important;
}

#n2-ss-20 .other-hero-btn a,
#n2-ss-20 .hero-btn a,
.vv-hero-slider .hero-btn a,
[id^="n2-ss-"] .hero-btn a,
.other-hero-btn .hero-btn a,
.other-hero-btn a {
	display: inline-block !important;
	border-radius: 5px !important;
	filter: drop-shadow(0 21px 17.5px rgba(12, 43, 94, 0.15));
	background-color: #7ac546 !important;
	font-size: 20px !important;
	line-height: normal !important;
	text-transform: uppercase !important;
	color: #fff !important;
	font-weight: 700 !important;
	font-family: "Poppins", sans-serif !important;
	padding: 25px 47px !important;
	margin: 0 !important;
	border: 2px solid transparent !important;
	text-decoration: none !important;
	text-align: center !important;
	box-sizing: border-box !important;
}

/* Slider CTA markup includes leading/trailing <br>s ? Prod hides them. */
#n2-ss-20 .other-hero-btn a br,
#n2-ss-20 .hero-btn a br,
.other-hero-btn a br,
.hero-btn a br {
	display: none !important;
}

#n2-ss-20 .other-hero-btn a span,
#n2-ss-20 .hero-btn a span,
.other-hero-btn a span,
.hero-btn a span {
	display: block !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: normal !important;
}

#n2-ss-20 .other-hero-btn a:hover,
#n2-ss-20 .hero-btn a:hover,
.other-hero-btn a:hover,
.hero-btn a:hover {
	color: #7ac546 !important;
	border-color: #7ac546 !important;
	background-color: transparent !important;
}

.vv-product-ctas.wp-block-buttons,
.vv-product-ctas {
	display: flex !important;
	flex-wrap: wrap;
	gap: 16px;
	align-items: center;
}

.vv-product-ctas .wp-block-button__link {
	text-transform: uppercase;
	font-weight: 700;
	border-radius: 5px;
	width: auto !important;
}

/* WebID Person walk-through ? Prod .forth-steps parity */
.vv-product-steps {
	padding: 40px 20px 100px !important;
	text-align: center;
}

.vv-product-steps > .vv-steps-eyebrow,
.vv-product-steps > p:first-of-type {
	font-size: 19px;
	line-height: 36px;
	color: #393939;
	font-weight: 500;
	margin: 0 0 8px;
}

.vv-product-steps h3,
.vv-product-steps h3.vv-heading-accent,
.vv-product-steps h3.wp-block-heading {
	font-size: 48px !important;
	line-height: 64px !important;
	color: #282828 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	font-weight: 700 !important;
	text-transform: none !important;
	display: inline-block;
	padding-right: 0;
	padding-bottom: 20px;
	margin: 0 auto 35px;
	background-image: url("/wp-content/themes/visual-visitor/assets/images/green-shadow.png");
	background-repeat: no-repeat;
	background-position: bottom center;
}

.vv-forth-steps {
	max-width: 1450px;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	padding: 0;
	box-sizing: border-box;
}

.vv-step-orbs {
	display: none;
	position: relative;
	justify-content: center;
	align-items: center;
	margin: 30px auto;
	z-index: 0;
}

.vv-step-orbs .step-numb {
	width: 70px;
	height: 70px;
	background: #fda544;
	color: #fff;
	border-radius: 35px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 30px;
	font-weight: 600;
	flex: 0 0 70px;
	position: relative;
	z-index: 1;
	margin: 0;
}

.vv-step-orbs .vv-orb-cell {
	flex: 1 1 25%;
	display: flex;
	justify-content: center;
	padding: 0;
	margin: 0;
}

.vv-step-orbs .vv-step-line {
	display: block;
	position: absolute;
	left: 15%;
	right: 15%;
	width: 70%;
	top: 50%;
	margin: 0;
	border: none;
	border-top: 1px solid #fda544;
	color: #f3742b;
	z-index: 0;
}

.vv-step-cards {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: 0;
	margin: 0 auto;
}

.vv-step-cards .vv-step-card {
	position: relative;
	flex: 1 1 0;
	min-width: 0;
	text-align: left;
	padding: 20px 20px 90px 20px;
	margin: 0 10px;
	border-radius: 12px;
	color: #fff;
	box-sizing: border-box;
}

.vv-step-cards .vv-step-card.is-blue {
	background: #084c80;
}

.vv-step-cards .vv-step-card.is-green {
	background: #7ac546;
}

.vv-step-cards .vv-step-card h4 {
	margin: 10px 0 20px 0;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.3;
	height: 30px;
	overflow: hidden;
	color: #fff !important;
	font-family: "VV Poppins", Poppins, sans-serif;
}

.vv-step-cards .vv-step-card ul {
	list-style: none;
	padding: 10px 0 0 25px;
	margin: 0;
	font-family: "VV Poppins", Poppins, sans-serif;
}

.vv-step-cards .vv-step-card ul li {
	position: relative;
	color: #fff !important;
	margin: 10px 0;
	line-height: 25px;
	font-size: 16px;
	font-weight: 400;
}

.vv-step-cards .vv-step-card ul li::before {
	content: "\2192\00a0";
	position: absolute;
	left: -22px;
	margin-top: -2px;
	color: #fff;
}

.vv-step-cards .vv-step-card .vv-step-link,
.vv-step-cards .vv-step-card a.vv-step-link {
	display: inline-block;
	position: absolute;
	bottom: 30px;
	left: 20px;
	padding: 5px 15px;
	border-radius: 30px;
	background: #fda544;
	border: 2px solid #ffa200;
	color: #fff !important;
	text-decoration: none;
	font-weight: 600;
	font-size: 16px;
}

.vv-step-cards .vv-step-card .mobile-step-numb {
	display: none;
	width: 70px;
	height: 70px;
	background: #fda544;
	color: #fff;
	border-radius: 35px;
	justify-content: center;
	align-items: center;
	font-size: 30px;
	font-weight: 600;
	margin: 0 auto 16px;
}

@media only screen and (min-width: 992px) {
	.vv-step-orbs {
		display: flex;
	}
}

@media only screen and (max-width: 991px) {
	.vv-product-steps h3,
	.vv-product-steps h3.vv-heading-accent,
	.vv-product-steps h3.wp-block-heading {
		font-size: 36px !important;
		line-height: normal !important;
		width: 100%;
		text-align: center;
	}

	.vv-step-cards {
		flex-direction: column;
		align-items: center;
	}

	.vv-step-cards .vv-step-card {
		width: 500px;
		max-width: 90%;
		flex: none;
		margin: 0 auto 24px;
		text-align: center;
		padding: 20px;
	}

	.vv-step-cards .vv-step-card .mobile-step-numb {
		display: flex;
	}

	.vv-step-cards .vv-step-card ul {
		padding-left: 0;
		text-align: left;
		display: inline-block;
	}

	.vv-step-cards .vv-step-card .vv-step-link {
		position: static;
		margin-top: 16px;
	}
}

@media only screen and (max-width: 576px) {
	.vv-product-steps h3,
	.vv-product-steps h3.vv-heading-accent,
	.vv-product-steps h3.wp-block-heading {
		font-size: 28px !important;
	}
}

/* Legacy Gutenberg columns fallback (if old markup remains) */
.vv-product-steps .step-num {
	display: inline-flex;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background: #fda544;
	color: #fff;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	font-size: 30px;
	margin-bottom: 12px;
}

.vv-setup-steps .vv-step-card {
	padding: 20px 20px 90px 20px;
	border-radius: 12px;
	color: #fff;
	min-height: 280px;
	position: relative;
}

.vv-setup-steps .vv-step-card.is-blue {
	background: #084c80;
}

.vv-setup-steps .vv-step-card.is-green {
	background: #7ac546;
}

.vv-setup-steps .vv-step-card h4,
.vv-setup-steps .vv-step-card li,
.vv-setup-steps .vv-step-card p {
	color: #fff !important;
}

.vv-setup-steps .vv-step-link {
	display: inline-block;
	margin-top: 8px;
	padding: 5px 15px;
	border-radius: 30px;
	background: #fda544;
	color: #fff !important;
	text-decoration: none;
	font-weight: 600;
	font-size: 16px;
}

.vv-product-ctas .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: #7ac546 !important;
	border: 2px solid #7ac546 !important;
}

.vv-product-ctas .is-style-outline .wp-block-button__link {
	border: 2px solid #064d80 !important;
	color: #064d80 !important;
	background: transparent !important;
}

.vv-signup-hero {
	background: #f7fbff;
	margin-bottom: 0;
}

body.vv-signup-bridge .vv-signup-main .signup-form {
	max-width: 1200px;
	margin: 0 auto;
}

/* WebID Employee extras */
/* Prod .image-top-num ? giant gray watermark number + label */
.vv-step-caption {
	display: block !important;
	font-size: 64px !important;
	font-weight: 700 !important;
	color: #000 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	margin: 0 !important;
	line-height: 1.42857 !important;
	align-items: baseline;
}

.vv-step-caption .num-caption {
	display: inline;
	font-size: 100px !important;
	font-weight: 700 !important;
	color: #dddddd !important;
	background: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin-right: 10px !important;
	line-height: 1.42857 !important;
	vertical-align: baseline;
}

@media only screen and (max-width: 991px) {
	.vv-step-caption {
		font-size: 48px !important;
	}
	.vv-step-caption .num-caption {
		font-size: 68px !important;
	}
}

@media only screen and (max-width: 576px) {
	.vv-step-caption {
		font-size: 32px !important;
	}
	.vv-step-caption .num-caption {
		font-size: 45px !important;
	}
}

/* Product images ? accents are baked into the webp assets (no CSS L-frame) */
.vv-product-feature .wp-block-column .wp-block-image {
	position: relative;
	z-index: 1;
	display: inline-block;
	max-width: 100%;
	margin: 0 auto;
}

.vv-product-feature .wp-block-column .wp-block-image img {
	border-radius: 0;
	position: relative;
	z-index: 1;
	width: auto;
	max-width: 100%;
	height: auto;
}

/* Opt-in only if an asset lacks a baked accent */
.vv-product-feature .wp-block-image.vv-img-accent-green,
.vv-product-feature .wp-block-image.vv-img-accent-blue {
	padding-bottom: 18px;
	padding-right: 18px;
}

.vv-product-feature .wp-block-image.vv-img-accent-green::after,
.vv-product-feature .wp-block-image.vv-img-accent-blue::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 48%;
	height: 48%;
	border-radius: 0 0 12px 0;
	z-index: 0;
}

.vv-product-feature .wp-block-image.vv-img-accent-green::after {
	background: #7ac546;
}

.vv-product-feature .wp-block-image.vv-img-accent-blue::after {
	background: #8ec6e8;
}

/* Prod .accord_custom / .card-items ? navy border rows + caret */
.vv-product-accord {
	margin: 10px 0 16px;
}

.vv-product-accord details {
	border: 1px solid #044d80;
	border-radius: 3px;
	margin: 5px 0;
	padding: 10px;
	background: transparent;
}

.vv-product-accord summary {
	cursor: pointer;
	padding: 0 0 0 18px;
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	font-family: "VV Poppins", Poppins, sans-serif;
	color: #000 !important;
	list-style: none;
	position: relative;
}

.vv-product-accord summary::-webkit-details-marker {
	display: none;
}

.vv-product-accord summary::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #817676;
}

.vv-product-accord details[open] summary::before {
	border: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #817676;
	transform: translateY(-35%);
}

.vv-product-accord details ul {
	margin: 0;
	padding: 0 16px 12px 32px;
	list-style: none;
}

.vv-product-accord details ul li {
	position: relative;
	/* Beat .entry-content li { padding-top: 20px } which split caret from text */
	padding: 0 0 0 15px !important;
	margin: 0 0 6px !important;
	color: #393939;
	font-size: 15px;
	line-height: 1.4;
	list-style: none !important;
}

.vv-product-accord details ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.45em;
	width: 0;
	height: 0;
	border: 0;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	border-left: 5px solid #817676;
}

.vv-product-ctas .wp-block-button__link {
	filter: drop-shadow(0 21px 17.5px rgba(12, 43, 94, 0.15));
	padding: 16px 47px !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	border-radius: 5px !important;
	margin: 10px 0 !important;
}

.vv-product-feature-grid {
	padding: 0 15px !important;
	margin: 50px 0 100px !important;
	--wp--style--global--content-size: 1410px;
	--wp--style--global--wide-size: 1410px;
}

.vv-product-feature-grid h3 {
	font-size: 48px !important;
	line-height: 64px !important;
	font-weight: 700 !important;
	color: #282828 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	margin-bottom: 40px !important;
}

.vv-feat-sal-row {
	margin-bottom: 28px !important;
}

.vv-feat-sal {
	gap: 16px !important;
	align-items: flex-start !important;
}

/* Prod .feat-icon: fixed 100?100 icons that never flex-shrink. */
.vv-feat-sal > .wp-block-image {
	flex: 0 0 100px !important;
	width: 100px !important;
	max-width: 100px !important;
	margin: 0 !important;
}

.vv-feat-sal > .wp-block-image img {
	display: block !important;
	width: 100px !important;
	height: 100px !important;
	max-width: none !important;
	object-fit: contain !important;
}

.vv-feat-sal h4 {
	margin: 0 0 6px !important;
	font-size: 18px !important;
	color: #282828 !important;
}

.vv-feat-sal p {
	margin: 0 !important;
	font-size: 16px;
}

.vv-vimeo-wrap {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	border-radius: 8px;
}

.vv-vimeo-wrap iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.vv-five-steps .vv-five-step-row {
	align-items: flex-start !important;
}

.vv-five-steps .vv-five-step-row .wp-block-column {
	text-align: center;
}

.vv-five-steps .vv-five-step-row img {
	max-width: 72px;
	height: auto;
	margin: 0 auto 12px;
}

.vv-five-steps h4 span {
	display: block;
	color: #fda544;
	font-size: 22px;
	margin-bottom: 4px;
}

.vv-five-steps h4 {
	font-size: 16px !important;
	color: #282828 !important;
}

.vv-five-steps p {
	font-size: 16px;
	line-height: 1.45;
}

@media (max-width: 900px) {
	.vv-five-steps .vv-five-step-row {
		flex-wrap: wrap !important;
	}

	.vv-five-steps .vv-five-step-row .wp-block-column {
		flex-basis: 45% !important;
	}
}

/* PLA bridge ? beat global navy heading !important on dark bands */
body.vv-pla-bridge .pla-hero__h1,
body.vv-pla-bridge .pla-audience__h2,
body.vv-pla-bridge .pla-audience__panel-header h3,
body.vv-pla-bridge .pla-react__bridge-h2,
body.vv-pla-bridge .pla-react__h2,
body.vv-pla-bridge .pla-cta__h2 {
	font-family: "VV Red Hat Display", "Red Hat Display", sans-serif !important;
	color: #fff !important;
}

body.vv-pla-bridge .pla-hero__sub {
	color: rgba(255, 255, 255, 0.75) !important;
}

body.vv-pla-bridge .pla-react__bridge-h2 em,
body.vv-pla-bridge .pla-cta__h2 em,
body.vv-pla-bridge .pla-hero__h1 em {
	color: #7ac546 !important;
}

/* Beat Simple Custom CSS .btn { border-radius: 30px } ? match site CTAs (~10px). */
body.vv-pla-bridge .btn,
body.vv-pla-bridge a.btn,
body.vv-plm-bridge .btn,
body.vv-plm-bridge a.btn {
	border-radius: 10px !important;
}

.vv-coach-cards h4 {
	font-size: 18px !important;
	color: #282828 !important;
	margin: 0 0 8px !important;
}
.vv-coach-cards .wp-block-column {
	padding: 16px;
}

/* Agencies feature grid */
.vv-agencies-features {
	padding: 72px 20px !important;
	background: #fff;
}
.vv-agencies-features > .vv-heading-accent,
.vv-agencies-features h2.vv-heading-accent {
	max-width: 900px;
	margin-left: auto !important;
	margin-right: auto !important;
}
.vv-agency-feat-row {
	margin-bottom: 28px !important;
}
.vv-agency-feat {
	gap: 16px !important;
	align-items: flex-start !important;
}
.vv-agency-feat h2,
.vv-agency-feat h3 {
	color: #064d80 !important;
	margin: 0 0 8px !important;
}

/* By the Numbers ? logo/metric carousel */
.vv-by-numbers {
	padding: 40px 24px 80px !important;
}
.vv-by-numbers .sp-logo-carousel-pro,
.vv-by-numbers .lcp-wrapper {
	max-width: 1200px;
	margin: 0 auto;
}
.vv-agency-feat p {
	margin: 0 !important;
	font-size: 16px;
	line-height: 1.5;
}

/*
 * Shopping-style pages (who-to-contact, agencies):
 * alternating gray feature bands + foci/featured card grid.
 */
body.page-id-12657 .vv-product-feature,
body.who-to-contact .vv-product-feature,
body.page-id-256 .vv-product-feature,
body.agencies .vv-product-feature {
	background-color: #fff !important;
	padding: 50px 15px !important;
	margin: 0 !important;
}

body.page-id-12657 .vv-product-feature.is-alt,
body.who-to-contact .vv-product-feature.is-alt,
body.page-id-256 .vv-product-feature.is-alt,
body.agencies .vv-product-feature.is-alt {
	background-color: #f7f7f7 !important;
}

.vv-focus-cards {
	padding: 60px 20px 80px !important;
	background: #fff !important;
}

.vv-focus-cards .vv-agency-feat-row {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	margin-bottom: 24px !important;
	align-items: stretch !important;
}

.vv-focus-cards .vv-agency-feat-row > .wp-block-column {
	flex: 1 1 calc(33.333% - 16px) !important;
	max-width: calc(33.333% - 16px) !important;
	margin: 0 !important;
}

.vv-focus-cards .vv-agency-feat-row > .wp-block-column:empty {
	display: none !important;
}

.vv-focus-cards .vv-agency-feat {
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	gap: 0 !important;
	height: 100% !important;
	padding: 24px !important;
	background: #fff !important;
	box-shadow: 0 10px 20px 3px rgba(4, 77, 128, 0.1) !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
}

.vv-focus-cards .vv-agency-feat > .wp-block-image {
	width: 80px !important;
	height: 80px !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	background: rgb(104 148 179 / 20%) !important;
	border-radius: 8px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Agencies card icon tint cycle (Prod .icon-side nth-child colors). */
body.agencies .vv-focus-cards .vv-agency-feat-row > .wp-block-column:nth-child(2) .vv-agency-feat > .wp-block-image,
body.page-id-256 .vv-focus-cards .vv-agency-feat-row > .wp-block-column:nth-child(2) .vv-agency-feat > .wp-block-image {
	background: rgba(175, 220, 144, 0.2) !important;
}

body.agencies .vv-focus-cards .vv-agency-feat-row > .wp-block-column:nth-child(3) .vv-agency-feat > .wp-block-image,
body.page-id-256 .vv-focus-cards .vv-agency-feat-row > .wp-block-column:nth-child(3) .vv-agency-feat > .wp-block-image {
	background: rgba(254, 201, 143, 0.2) !important;
}

.vv-focus-cards .vv-agency-feat > .wp-block-image img {
	width: 55px !important;
	max-width: 55px !important;
	height: auto !important;
	margin: 0 !important;
}

body.who-to-contact .vv-focus-cards .vv-agency-feat > .wp-block-image img,
body.page-id-12657 .vv-focus-cards .vv-agency-feat > .wp-block-image img {
	width: 64px !important;
	max-width: 64px !important;
}

.vv-focus-cards .vv-agency-feat h2,
.vv-focus-cards .vv-agency-feat h3 {
	line-height: 30px !important;
	font-weight: 600 !important;
	color: #1062a1 !important;
	text-transform: uppercase !important;
	margin: 0 0 8px !important;
}

.vv-focus-cards .vv-agency-feat p {
	font-size: 16px !important;
	line-height: 28px !important;
	font-weight: 400 !important;
	color: #393939 !important;
	text-align: left !important;
	margin: 0 !important;
}

@media (max-width: 991px) {
	.vv-focus-cards .vv-agency-feat-row > .wp-block-column {
		flex: 1 1 calc(50% - 12px) !important;
		max-width: calc(50% - 12px) !important;
	}
}

@media (max-width: 600px) {
	.vv-focus-cards .vv-agency-feat-row > .wp-block-column {
		flex: 1 1 100% !important;
		max-width: 100% !important;
	}
}

/* Resources integrations */
.vv-resources-integrations {
	padding: 20px 24px 60px !important;
}
.vv-resources-integrations h3 {
	margin-bottom: 12px !important;
}
.vv-resources-integrations h2 {
	margin-bottom: 28px !important;
}

/* Customer reviews */
.vv-customer-reviews {
	padding: 20px 24px 60px !important;
}

/* ZoomInfo alternative */
.vv-zoom-intro {
	padding: 10px 24px 30px !important;
}
.vv-zoom-slider {
	padding: 40px 0 20px !important;
}

/* About Us */
.vv-about-story {
	padding: 40px 24px 60px !important;
	--wp--style--global--content-size: 1280px;
	--wp--style--global--wide-size: 1280px;
}

/* Elfsight Team Showcase collapses to 1 col under ~600px ? keep cofounders side-by-side. */
.vv-about-story .vv-about-founders,
.vv-about-story .elfsight-app-d8238857-897d-400e-8f09-2110824087a7 {
	min-width: 0;
	width: 100%;
}

.vv-about-story .eapp-team-showcase-grid-component {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	width: 100% !important;
	gap: 0 !important;
}

.vv-about-story .eapp-team-showcase-grid-item {
	width: 50% !important;
	max-width: 50% !important;
	flex: 0 0 50% !important;
	box-sizing: border-box !important;
}

@media (max-width: 781px) {
	.vv-about-story .eapp-team-showcase-grid-component {
		flex-wrap: wrap !important;
	}

	.vv-about-story .eapp-team-showcase-grid-item {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
	}
}

.vv-about-milestones {
	padding: 20px 24px 80px !important;
}
.vv-about-milestones .cool-timeline-wrapper {
	margin-top: 24px;
}

/* White Label */
.vv-wl-supercharge {
	padding: 40px 24px 10px !important;
}
.vv-wl-calendly {
	padding: 60px 24px 80px !important;
}
.vv-wl-vimeo {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	background: #0a2a44;
}
.vv-wl-vimeo iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

/* WordPress Plugin install guide */
.vv-wp-install {
	padding: 20px 24px 40px !important;
}
.vv-wp-step {
	margin-bottom: 36px !important;
}
.vv-wp-step .wp-block-image {
	margin-top: 16px !important;
}
.vv-wp-cta {
	padding: 48px 24px 80px !important;
	background: #f7fbff;
}

/* Careers */
.vv-careers-board {
	padding: 20px 24px 80px !important;
}

/* Video Testimonials */
.vv-vt-boxes {
	padding: 48px 24px 24px !important;
}
.vv-vt-boxes h2 {
	margin: 12px 0 8px !important;
}
.vv-vt-heading {
	padding: 40px 24px 20px !important;
}
.vv-vt-elfsight {
	padding: 20px 24px 80px !important;
}

/* Prod .three-video-quest .left-img img { width: 35%; }
   Figure must span the column so % is of column width, not shrink-wrapped image. */
body.video-testimonials .vv-product-feature .wp-block-column:has(> .wp-block-image),
body.page-id-19870 .vv-product-feature .wp-block-column:has(> .wp-block-image) {
	text-align: center;
}

body.video-testimonials .vv-product-feature .wp-block-image,
body.page-id-19870 .vv-product-feature .wp-block-image {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	text-align: center;
}

body.video-testimonials .vv-product-feature .wp-block-image img,
body.page-id-19870 .vv-product-feature .wp-block-image img {
	width: 35% !important;
	max-width: 35% !important;
	height: auto !important;
	display: inline-block !important;
}

/* PLM hero headline line break without injecting whitespace into textContent */
.vv-plm-bridge .hero__headline .vv-h1-break {
	display: block;
}

/* ?? Blog index (posts page) ?? */
.vv-blog-main {
	background: #f7fbff;
}

.vv-blog-index {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	max-width: 1400px;
	margin: 0 auto;
	padding: 24px 20px 40px;
	box-sizing: border-box;
}

.vv-blog-index > .main {
	flex: 1 1 70%;
	min-width: 0;
}

.vv-blog-index > .sidebar.theblog {
	flex: 0 0 280px;
	width: 280px;
}

.vv-blog-index .blog_list_entry {
	margin-bottom: 28px;
	border-radius: 4px;
	overflow: hidden;
}

.vv-blog-index .blog_list_page {
	display: flex;
	flex-wrap: wrap;
	background: #fff;
	border-radius: 5px;
	overflow: hidden;
}

.vv-blog-index .lef_timg_list {
	flex: 1 1 41%;
	min-width: 260px;
	padding: 0;
}

.vv-blog-index .lef_timg_list a {
	display: block;
	height: 100%;
}

.vv-blog-index .lef_timg_list img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 280px;
	object-fit: cover;
	border-radius: 5px 0 0 5px;
}

.vv-blog-index .right_content_list {
	flex: 1 1 55%;
	min-width: 260px;
	padding: 24px 28px;
	box-sizing: border-box;
}

.vv-blog-index h2.post_title {
	margin: 8px 0 12px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
}

.vv-blog-index h2.post_title a {
	color: #2c2c2c !important;
	text-decoration: none !important;
}

.vv-blog-index h2.post_title a:hover {
	color: #7ac546 !important;
}

.vv-blog-index .date {
	font-size: 12px !important;
	line-height: 36px !important;
	color: #3e3e3e !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
}

.vv-blog-index .calender-icon {
	margin-right: 5px;
	width: 16px;
	height: 16px;
}

.vv-blog-index .post_excerpt p {
	font-size: 16px !important;
	line-height: 26px !important;
	color: #2c2c2c !important;
	margin: 0 0 8px !important;
}

.vv-blog-index .reading-time-pst {
	font-style: italic;
	font-size: 12px;
	font-family: "VV Poppins", Poppins, sans-serif;
	padding: 15px 0 0;
}

.vv-blog-index .vv-blog-nav {
	padding: 16px 0 8px;
}

.vv-blog-index .vv-blog-nav a {
	background: #8ece61;
	color: #fff !important;
	padding: 10px 18px;
	border-radius: 4px;
	text-decoration: none !important;
	font-family: "VV Poppins", Poppins, sans-serif;
	font-weight: 600;
}

ul.recent-post-blog {
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

ul.recent-post-blog h3 {
	text-transform: none !important;
	color: #252524 !important;
	font-weight: 600 !important;
	padding: 0 9px !important;
	margin: 0 0 12px !important;
}

.recent-post-blog li {
	display: flex;
	gap: 12px;
	padding: 10px 0;
	align-items: flex-start;
}

.recent-post-blog .recent.img {
	flex: 0 0 150px;
	width: 150px;
	max-width: 150px;
}

.recent-post-blog .recent.img a {
	display: block;
	width: 150px;
	height: 110px;
	overflow: hidden;
	border-radius: 5px;
}

.recent-post-blog .recent.img img {
	width: 150px !important;
	height: 110px !important;
	max-width: none !important;
	object-fit: cover;
	border-radius: 5px;
	display: block;
}

.recent-post-blog .recent.text a {
	font-size: 14px;
	line-height: 28px;
	font-weight: 700;
	text-transform: uppercase;
	color: #262626;
	font-family: "VV Poppins", Poppins, sans-serif;
	text-decoration: none;
}

.vv-blog-index .wcpd_category_dropdown_widget,
.vv-blog-index .widget {
	margin-bottom: 20px;
}

.vv-blog-index #wpcd_parent {
	width: 100%;
	padding: 10px;
	font-size: 16px;
	color: #5e5e5e;
	font-family: "VV Poppins", Poppins, sans-serif;
	border-radius: 5px;
	box-shadow: 0 12px 10px rgba(0, 0, 0, 0.15);
	border: 1px solid #ddd;
	background: #fff;
}

section.blog_bottom_full_section {
	margin-top: 100px;
	text-align: center;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 0 0 10%;
	background-position: bottom;
}

section.blog_bottom_full_section img {
	width: 155px;
	position: relative;
	top: -90px;
}

section.blog_bottom_full_section h3 {
	color: #fff !important;
	font-weight: 800 !important;
	text-align: center !important;
	max-width: 1230px;
	margin: 0 auto 50px !important;
	padding-bottom: 40px !important;
	background-image: url("/wp-content/themes/visual-visitor/assets/images/green-shadow.png");
	background-repeat: no-repeat;
	background-position: bottom center;
}

section.blog_bottom_full_section p {
	max-width: 1023px;
	font-size: 24px !important;
	line-height: 38px !important;
	color: #fff !important;
	font-weight: 400 !important;
	text-align: center !important;
	margin: 0 auto 65px !important;
}

a.blog_details_btn {
	display: inline-block;
	border-radius: 5px;
	background-color: #7ac546;
	font-size: 18px;
	text-transform: uppercase;
	color: #fff !important;
	font-weight: 500;
	font-family: "VV Poppins", Poppins, sans-serif;
	padding: 16px 40px;
	text-decoration: none !important;
}

a.blog_details_btn:hover {
	background-color: #6bb53a;
	color: #fff !important;
}

/* 404 */
.vv-404-main {
	padding-bottom: 80px;
}
.vv-404-search {
	max-width: 720px;
	margin: 0 auto 48px;
	padding: 0 20px;
}
.vv-404-search .search-form,
.vv-404-search form {
	display: flex;
	gap: 12px;
	align-items: center;
}
.vv-404-search input[type="search"],
.vv-404-search input[type="text"] {
	flex: 1;
	padding: 12px 16px;
	border: 1px solid #ccd6e0;
	border-radius: 4px;
	font-family: "VV Poppins", Poppins, sans-serif;
	font-size: 16px;
}
.vv-404-search input[type="submit"],
.vv-404-search button {
	background: #7ac546;
	color: #fff;
	border: 0;
	border-radius: 4px;
	padding: 12px 22px;
	font-family: "VV Poppins", Poppins, sans-serif;
	font-weight: 600;
	cursor: pointer;
}
.vv-404-columns {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 48px;
	max-width: 900px;
	margin: 0 auto;
	padding: 0 20px;
}
.vv-404-col {
	flex: 1 1 240px;
	max-width: 320px;
}
.vv-404-col h4 {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #064d80 !important;
	margin: 0 0 16px !important;
}
.vv-404-col ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.vv-404-col li {
	margin: 0 0 10px;
}
.vv-404-col a {
	color: #393939;
	text-decoration: none;
	font-family: "VV Poppins", Poppins, sans-serif;
}
.vv-404-col a:hover {
	color: #7ac546;
}

/* Single post */
.vv-single-hero {
	padding-bottom: 8px !important;
}
.vv-single-hero .vv-heading-accent {
	max-width: 1100px;
	font-size: clamp(28px, 4vw, 42px) !important;
	line-height: 1.25 !important;
}
.vv-single-main .single_post_wrapper {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 20px 40px;
}

/* Sidebar promo CTA ? dark photo bg; beat global navy heading !important */
.single-post-top-read-sec .slider_cta {
	padding: 60px 20px;
	text-align: center;
	border-radius: 5px;
	color: #fff;
	background: url("/wp-content/uploads/2023/06/sidebar-backgr-logo.webp");
	background-size: 100% 100%;
	background-repeat: no-repeat;
}
.single-post-top-read-sec .slider_cta h4 {
	font-weight: 500 !important;
	text-transform: uppercase;
	color: #fafbf5 !important;
	text-align: center;
	margin: 0 0 12px !important;
}
.single-post-top-read-sec .slider_cta span {
	font-size: 12px;
	color: #fafbf5 !important;
	font-weight: 400;
	font-family: "VV Poppins", Poppins, sans-serif;
	display: block;
}
.single-post-top-read-sec .slider_cta a.slider_btn {
	border-radius: 3px;
	background-color: #7ac546;
	color: #fff !important;
	padding: 8px 30px;
	display: block;
	width: 150px;
	margin: 20px auto 0 !important;
	text-decoration: none;
	font-weight: 600;
}

/* Sticky header offset for TOC jumps */
.vv-single-main .entry-content h2[id],
.vv-single-main .entry-content h3[id],
.vv-single-main .entry-content h4[id],
.vv-single-main .single-post-cont-data h2[id],
.vv-single-main .single-post-cont-data h3[id],
.vv-single-main .single-post-cont-data h4[id] {
	scroll-margin-top: 120px;
}
.vv-single-main .mainim {
	width: 100%;
	height: auto;
	border-radius: 5px;
	margin-bottom: 16px;
}
.vv-single-main .blog_details_bottom {
	margin-top: 80px;
	text-align: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom;
	padding: 0 0 10%;
}
.vv-single-main .blog_details_bottom img {
	width: 155px;
	position: relative;
	top: -90px;
}
.vv-single-main .blog_details_bottom h3 {
	color: #fff !important;
	font-weight: 800 !important;
	margin: 0 auto 24px !important;
	padding-bottom: 40px !important;
	background-image: url("/wp-content/themes/visual-visitor/assets/images/green-shadow.png");
	background-repeat: no-repeat;
	background-position: bottom center;
}
.vv-single-main .blog_details_bottom p {
	color: #fff !important;
	font-size: 24px !important;
	margin-bottom: 40px !important;
}

/* Thank-you calendly blog band (Prod section.cta-section.thank-you-calendly) */
section.cta-section.thank-you-calendly h3.cta-title,
section.cta-section.thank-you-calendly h3 {
	color: #fff !important;
	font-size: 60px !important;
	font-weight: 600 !important;
	font-family: "VV Poppins", Poppins, sans-serif !important;
}

section.cta-section.thank-you-calendly p.cta-desc {
	color: #fff !important;
}

/* Signup complete thank-you card */
.vv-signup-complete {
	padding: 0 24px 80px !important;
	margin-top: -40px;
	background: transparent;
}
.vv-signup-complete-card {
	max-width: 800px;
	margin: 0 auto 60px;
	background: #fff;
	padding: 40px 48px;
	box-shadow: 0 0 30px -5px rgba(0, 0, 0, 0.1);
	font-size: 16px;
}
.vv-signup-complete h3,
.vv-signup-complete-card h3 {
	font-weight: 700 !important;
	margin-bottom: 15px !important;
}
.vv-signup-complete ol li,
.vv-signup-complete-card ol li {
	font-size: 16px;
	margin-bottom: 8px;
}
.vv-signup-complete-cta {
	margin-top: 16px;
	text-align: center;
}
.vv-signup-complete-cta .btn,
.vv-signup-complete-cta a.btn {
	display: inline-block;
	background: #1062a1;
	color: #fff !important;
	padding: 12px 24px;
	border-radius: 5px;
	text-decoration: none !important;
	font-family: "VV Poppins", Poppins, sans-serif;
	font-weight: 600;
}

/* Job openings */
.vv-sales-rep-main .page_content_wrapper {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px 80px;
}
.vv-sales-rep-main .page_content.grid {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
}
.vv-sales-rep-main .col-md-7 {
	flex: 1 1 55%;
	min-width: 280px;
}
.vv-sales-rep-main .col-md-5 {
	flex: 1 1 320px;
	min-width: 280px;
}

/* Connect Zapier */
.vv-connect-zapier-main .zapier-middle-sec,
.vv-connect-zapier-main .integration-section,
.vv-connect-zapier-main .connect-zapier-sec,
.vv-connect-zapier-main .free-try-button {
	padding: 40px 20px;
}
.vv-connect-zapier-main .zap-section {
	margin-bottom: 24px;
}

/* Agencies retains Sage's 1200px service columns, rather than the 1410px
 * product-page grid used by the newer feature pages. */
body.page-id-256 .vv-product-feature {
	--wp--style--global--content-size: 1200px;
	--wp--style--global--wide-size: 1200px;
	padding: 20px 15px 100px !important;
}

body.page-id-256 .vv-product-feature .wp-block-columns {
	max-width: 1200px !important;
}

body.page-id-256 .vv-product-feature .wp-block-column:has(> .wp-block-heading) {
	box-sizing: border-box;
	padding-right: 95px;
}

body.page-id-256 .vv-agencies-features {
	--wp--style--global--content-size: 1200px;
	--wp--style--global--wide-size: 1200px;
}

body.page-id-256 .vv-agencies-features > .vv-heading-accent,
body.page-id-256 .vv-agencies-features h2.vv-heading-accent {
	max-width: 1200px;
	font-weight: 600 !important;
	line-height: 39.6px !important;
	margin-bottom: 40px !important;
	text-transform: uppercase;
	background-image: none !important;
	padding-bottom: 0 !important;
}

/* Sage feature headings reserve 76px for green-shadow's 233px brush tail. */
body.page-id-10240 .vv-product-feature .vv-heading-accent.wp-block-heading,
body.page-id-10240 .vv-product-feature .vv-heading-accent {
	padding-right: 76px !important;
}

body.page-id-10240 .vv-video-hero.vv-whatwedo-hero {
	padding-top: 66px !important;
}

body.page-id-10240 .vv-video-hero .vv-heading-accent {
	line-height: 66px !important;
	margin-bottom: 30px !important;
}

/* Interior content card ? matches Sage .page_content_wrapper outline/shadow */
.vv-legal-doc,
.vv-contact-panel,
.vv-calendly-embed,
.vv-page-card {
	max-width: min(1240px, calc(100% - 200px)) !important;
	width: 100%;
	margin: 70px auto !important;
	padding: 40px 40px 60px !important;
	background-color: #fff !important;
	box-shadow: 0 0 7px 1px rgba(0, 0, 0, 0.2);
	box-sizing: border-box;
}

@media (max-width: 900px) {
	.vv-legal-doc,
	.vv-contact-panel,
	.vv-calendly-embed,
	.vv-page-card {
		max-width: calc(100% - 32px) !important;
		margin: 40px auto !important;
		padding: 24px 20px 48px !important;
	}
}

.vv-legal-elfsight {
	padding: 12px 24px 80px !important;
}

@media (max-width: 1100px) {
	.vv-blog-index {
		flex-direction: column;
	}
	.vv-blog-index > .sidebar.theblog {
		flex: 1 1 auto;
		width: 100%;
	}
	.vv-blog-index .lef_timg_list img {
		min-height: 220px;
		border-radius: 5px 5px 0 0;
	}
}

/* Kill legacy .entry-content li { padding-top: 20px !important } bleed-through */
.vv-home-section ul li,
.vv-home-section .wp-block-list li {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin: 0 !important;
}

.vv-legal-doc li {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin: 0 0 8px !important;
}

.vv-step-cards .vv-step-card ul li {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Fix: entry-content shrinks to fit its widest content instead of stretching to
   full page width, since the wrapping <main> flex container uses align-items:flex-start.
   On pages where no element forces full width, this leaves a large empty gap on the
   right side of every full-width section (e.g. .vv-product-feature bands). Forcing
   entry-content to stretch fixes it site-wide without affecting Home, blog posts, or
   ACF-templated pages (none of which use this structure). */
main.wp-block-group.is-layout-flex > .entry-content.wp-block-post-content {
	width: 100% !important;
	align-self: stretch !important;
}

a {
	text-decoration: none !important;
}

.pla-how__step { min-width: 0; }
.pla-identity__name { font-size: 8.2px !important; }
.pla-identity__role {
	font-size: 7px !important;
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	line-height: 1.35 !important;
}

.our-guarantee .vv-interior-subtitle {
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}