@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root {
	--voga-font-display: "Helvetica Neue", Helvetica, Arial, sans-serif;
	--voga-font-body: "General Sans", "Avenir Next", "Segoe UI", sans-serif;
	--voga-coral: #e63946;
	--voga-blue: #457b9d;
	--voga-sand: #f1faee;
	--voga-sun: #a8dadc;
	--voga-green: #a8dadc;
	--voga-ink: #1d3557;
	--voga-warm: #f1faee;
	--voga-deep: #1d3557;
	--voga-mid: #457b9d;
	--voga-light: #a8dadc;
	--voga-page-bg: var(--voga-warm);
	--voga-page-text: var(--voga-ink);
	--voga-header-bg: rgba(241, 250, 238, 0.88);
	--voga-line: rgba(31, 42, 46, 0.08);
	--voga-line-strong: rgba(86, 117, 120, 0.56);
	--voga-panel-bg: rgba(241, 250, 238, 0.78);
	--voga-panel-bg-strong: rgba(241, 250, 238, 0.94);
	--voga-panel-border: rgba(86, 117, 120, 0.56);
	--voga-control-bg: rgba(248, 244, 238, 0.32);
	--voga-control-border: rgba(86, 117, 120, 0.84);
	--voga-control-text: rgba(52, 79, 83, 0.96);
	--voga-grid-line: rgba(31, 42, 46, 0.03);
	--voga-shadow: 0 24px 80px rgba(20, 37, 43, 0.08);
	--voga-radius: 24px;
	--voga-mobile-menu-overlay: rgba(29, 53, 87, 0.72);
	--voga-mobile-menu-dialog: linear-gradient(180deg, rgba(241, 250, 238, 0.992) 0%, rgba(168, 218, 220, 0.985) 100%);
	--voga-mobile-menu-text: #1d3557;
	--voga-mobile-menu-close-border: rgba(34, 50, 56, 0.14);
	--voga-mobile-menu-close-bg: rgba(255, 255, 255, 0.3);
	--voga-mobile-menu-close-color: #223238;
}

/* Voga direction system: abstract horizon, restrained depth and accessible motion. */
.voga-hero-stage.voga-hero-abstract {
	background:
		radial-gradient(circle at 76% 24%, rgba(230, 57, 70, .24), transparent 22%),
		linear-gradient(135deg, #1d3557 0%, #1d3557 48%, #457b9d 100%) !important;
}
.voga-hero-stage.voga-hero-abstract::before {
	background: repeating-linear-gradient(135deg, transparent 0 46px, rgba(168,218,220,.12) 47px, transparent 48px) !important;
	opacity: .7 !important;
}
.voga-hero-stage.voga-hero-abstract::after {
	background: linear-gradient(to bottom, rgba(29,53,87,0), rgba(29,53,87,.82) 76%, #1d3557 100%) !important;
}
.voga-direction-field .voga-tide-map path { stroke: rgba(168,218,220,.42) !important; }
.voga-direction-field .voga-compass { color: rgba(241,250,238,.55) !important; }
.voga-direction-node { background: var(--voga-coral) !important; box-shadow: 0 0 0 8px rgba(230,57,70,.16) !important; }
.voga-direction-node.voga-node-two { background: var(--voga-light) !important; }
.voga-direction-node.voga-node-three { background: var(--voga-mid) !important; }
.voga-hero .voga-display { max-width: 10ch; letter-spacing: -.055em; }
.voga-hero .voga-lead { max-width: 34rem; color: rgba(241,250,238,.86); }
.voga-glass-card {
	border-color: rgba(168,218,220,.34) !important;
	background: linear-gradient(145deg, rgba(69,123,157,.56), rgba(29,53,87,.74)) !important;
	box-shadow: 0 24px 70px rgba(10,25,49,.24) !important;
	backdrop-filter: blur(14px);
}
.voga-card { border-color: rgba(69,123,157,.24); box-shadow: 0 18px 48px rgba(29,53,87,.1); }
.voga-card:hover { box-shadow: 0 26px 60px rgba(29,53,87,.18) !important; }
.voga-section:not(.voga-hero) { position: relative; }
.voga-section:not(.voga-hero)::before {
	content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .18;
	background: linear-gradient(135deg, transparent 0 49%, var(--voga-light) 50%, transparent 50.3%);
	background-size: 84px 84px;
}
.voga-section > * { position: relative; z-index: 1; }
html[data-voga-theme="dark"] .voga-section:not(.voga-hero)::before { opacity: .1; }
.voga-manifesto::before,
.voga-process::before,
.voga-portfolio::before,
.voga-clients::before,
.voga-services::before { display: none !important; }
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}
@media (max-width: 781px) {
	.voga-hero .voga-display { max-width: 12ch; font-size: clamp(2.75rem, 14vw, 4.4rem); }
	.voga-hero-stage.voga-hero-abstract::before { opacity: .35 !important; }
	.voga-section:not(.voga-hero)::before { background-size: 120px 120px; opacity: .1; }
}

body,
.wp-site-blocks {
	font-family: var(--voga-font-body);
}

h1, h2, h3, h4, h5, h6,
.voga-display,
.voga-direction-number,
.voga-result-highlight strong {
	font-family: var(--voga-font-display);
}

html[data-voga-theme="dark"] {
	--voga-page-bg: #1d3557;
	--voga-page-text: #f1faee;
	--voga-header-bg: rgba(29, 53, 87, 0.88);
	--voga-line: rgba(241, 250, 238, 0.14);
	--voga-line-strong: rgba(168, 218, 220, 0.58);
	--voga-panel-bg: rgba(29, 53, 87, 0.84);
	--voga-panel-bg-strong: rgba(69, 123, 157, 0.92);
	--voga-panel-border: rgba(168, 218, 220, 0.34);
	--voga-control-bg: rgba(29, 53, 87, 0.42);
	--voga-control-border: rgba(168, 218, 220, 0.72);
	--voga-control-text: rgba(241, 250, 238, 0.96);
	--voga-grid-line: rgba(241, 250, 238, 0.05);
	--voga-shadow: 0 28px 80px rgba(4, 10, 13, 0.42);
	--voga-mobile-menu-overlay: rgba(29, 53, 87, 0.72);
	--voga-mobile-menu-dialog: linear-gradient(180deg, rgba(29, 53, 87, 0.96) 0%, rgba(69, 123, 157, 0.92) 100%);
	--voga-mobile-menu-text: #f1faee;
	--voga-mobile-menu-close-border: rgba(255, 243, 227, 0.18);
	--voga-mobile-menu-close-bg: rgba(255, 255, 255, 0.05);
	--voga-mobile-menu-close-color: #fff3e3;
}

html {
	scroll-behavior: smooth;
}

html[data-voga-theme="dark"] {
	color-scheme: dark;
}

body {
	background:
		radial-gradient(circle at top left, rgba(244, 124, 92, 0.08), transparent 26%),
		radial-gradient(circle at top right, rgba(0, 124, 137, 0.08), transparent 28%),
		var(--voga-page-bg);
	color: var(--voga-page-text);
}

.wp-site-blocks {
	overflow-x: clip;
	overflow-y: visible;
}

.wp-site-blocks > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.wp-site-blocks > .alignfull,
.wp-site-blocks .alignfull {
	width: 100%;
	max-width: 100%;
}

.wp-site-blocks .alignwide,
.wp-block-group.alignwide,
.wp-block-columns.alignwide {
	width: min(1680px, calc(100vw - 5rem));
	max-width: min(1680px, calc(100vw - 5rem));
	margin-left: auto;
	margin-right: auto;
}

.wp-site-blocks .is-layout-constrained > .alignwide,
.wp-site-blocks .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: min(1680px, calc(100vw - 5rem));
}

.wp-site-blocks .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull):not(.alignwide)) {
	max-width: min(1160px, calc(100vw - 5rem));
}

.wp-block-button__link,
.wp-element-button {
	box-shadow: none;
	transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.wp-block-button__link:hover,
.wp-element-button:hover {
	box-shadow: 0 14px 30px rgba(244, 124, 92, 0.22);
	transform: translateY(-1px);
}

.wp-block-button.is-style-outline .wp-block-button__link,
.wp-block-button.is-style-outline > .wp-element-button {
	border-width: 1px;
}

header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 140;
}

@media (min-width: 781px) {
	body.admin-bar header.wp-block-template-part {
		top: 32px;
	}
}

.voga-header {
	position: relative;
	top: 0;
	z-index: 141;
	backdrop-filter: blur(14px);
	background: var(--voga-header-bg);
	border-bottom: 1px solid var(--voga-line);
	box-shadow: 0 10px 30px rgba(20, 37, 43, 0.06);
}

body.admin-bar .voga-header {
	top: 0;
}

.voga-header .wp-block-navigation {
	row-gap: 0.4rem;
}

.voga-header .wp-block-navigation__container {
	gap: 0.45rem 1.1rem;
	align-items: center;
}

.voga-header-nav-shell {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.8rem;
	min-height: 100%;
}

.voga-utility-bar {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	align-self: center;
	margin-left: 0.1rem;
	padding-left: 0.6rem;
	border-left: 1px solid rgba(104, 130, 132, 0.18);
}

.voga-utility-group {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: center;
	gap: 0;
	padding: 0.06rem;
	border: 1.5px solid var(--voga-panel-border);
	border-radius: 999px;
	background: var(--voga-panel-bg-strong);
	box-shadow:
		inset 0 0 0 1px rgba(255, 255, 255, 0.46),
		0 3px 10px rgba(18, 53, 61, 0.06);
}

.voga-language-switcher {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: center;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.voga-language-switcher__item {
	display: flex;
	align-items: center;
	justify-content: center;
	align-self: center;
}

.voga-language-switcher__link,
.voga-theme-switcher {
	display: grid;
	place-items: center;
	box-sizing: border-box;
	width: 1.92rem;
	min-width: 1.92rem;
	min-height: 1.7rem;
	padding: 0;
	border-radius: 999px;
	border: 0;
	background: transparent;
	color: var(--voga-control-text);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.6rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1;
	text-transform: uppercase;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	transition:
		background-color 0.24s ease,
		color 0.24s ease,
		border-color 0.24s ease,
		transform 0.24s ease,
		opacity 0.24s ease;
	padding-bottom: 0.5rem;
}

.voga-language-switcher__link.is-current {
	background: rgba(52, 79, 83, 0.92);
	color: #fff8ef;
	box-shadow: 0 6px 14px rgba(18, 53, 61, 0.12);
}

.voga-language-switcher__link.is-current,
.voga-language-switcher__link.is-current:hover,
.voga-language-switcher__link.is-current:focus-visible,
.voga-language-switcher__link.is-current:active,
.voga-language-switcher__link[aria-current="true"],
.voga-language-switcher__link[aria-current="true"]:hover,
.voga-language-switcher__link[aria-current="true"]:focus-visible,
.voga-language-switcher__link[aria-current="true"]:active {
	background: rgba(52, 79, 83, 0.92);
	color: #fff8ef !important;
	opacity: 1;
	pointer-events: none;
}

.voga-language-switcher__link:hover,
.voga-language-switcher__link:focus-visible {
	background: rgba(104, 130, 132, 0.14);
	color: rgba(33, 50, 53, 0.92);
}

.voga-utility-group--theme {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.voga-theme-switcher {
	width: auto;
	min-width: 3.8rem;
	min-height: 1.96rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: center;
	cursor: pointer;
	opacity: 1;
	background: var(--voga-control-bg);
	padding: 0.14rem;
	border: 0;
}

.voga-theme-switcher__option {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: center;
	width: 1.44rem;
	min-width: 1.44rem;
	height: 1.44rem;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--voga-control-text);
	line-height: 1;
	cursor: pointer;
	transition: background-color 0.24s ease, opacity 0.24s ease, transform 0.24s ease;
}

.voga-theme-switcher__option.is-active {
	background: rgba(104, 130, 132, 0.14);
}

.voga-theme-switcher__svg {
	width: 1.24rem;
	height: 1.24rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.95;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: opacity 0.24s ease, transform 0.24s ease;
}

.voga-theme-switcher__option.is-active .voga-theme-switcher__svg {
	opacity: 1;
	transform: scale(1.04);
}

.voga-theme-switcher__option:not(.is-active) .voga-theme-switcher__svg {
	opacity: 0.5;
	transform: scale(0.92);
}

.voga-theme-switcher__option:hover,
.voga-theme-switcher__option:focus-visible {
	background: rgba(104, 130, 132, 0.12);
	outline: 0;
}

html[data-voga-theme="dark"] .voga-theme-switcher__option:hover,
html[data-voga-theme="dark"] .voga-theme-switcher__option:focus-visible,
html[data-voga-theme="dark"] .voga-theme-switcher__option.is-active {
	background: rgba(111, 175, 142, 0.14);
}

@media (max-width: 781px) {
	.voga-header > .alignwide {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.6rem;
	}

	.voga-header .wp-block-navigation {
		order: 2;
		margin-left: auto;
	}

	.voga-header .voga-utility-bar--header {
		order: 1;
	}

	.voga-header .wp-block-navigation__responsive-container-open {
		margin-left: auto !important;
	}

	.voga-header .voga-utility-bar--header {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.3rem;
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
	}

	.voga-header-nav-shell {
		margin-left: auto;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 0.3rem;
	}

	.voga-header .voga-utility-group {
		padding: 0.05rem;
		border-color: var(--voga-line-strong);
		background: var(--voga-panel-bg-strong);
	}

	.voga-header .voga-utility-group--theme {
		padding: 0;
		border: 0;
		background: transparent;
		box-shadow: none;
	}

	.voga-header .voga-language-switcher__link,
	.voga-header .voga-theme-switcher {
		width: 1.74rem;
		min-width: 1.74rem;
		min-height: 1.54rem;
		font-size: 0.55rem;
		letter-spacing: 0.03em;
		justify-items: center;
	}

	.voga-header .voga-theme-switcher {
		width: auto;
		min-width: 3.48rem;
		min-height: 1.82rem;
		padding: 0.12rem;
		border-color: var(--voga-control-border);
		background: var(--voga-control-bg);
	}

	.voga-header .voga-theme-switcher__option {
		width: 1.28rem;
		min-width: 1.28rem;
		height: 1.28rem;
	}

	.voga-header .voga-theme-switcher__svg {
		width: 1.12rem;
		height: 1.12rem;
	}

	.voga-header .wp-block-navigation__responsive-container-open {
		display: inline-grid !important;
		place-items: center !important;
		width: 1.92rem !important;
		min-width: 1.92rem !important;
		height: 1.7rem !important;
		min-height: 1.7rem !important;
		padding: 0 !important;
		border: 1.5px solid var(--voga-control-border) !important;
		border-radius: 999px !important;
		background: var(--voga-panel-bg-strong) !important;
		color: var(--voga-control-text) !important;
	}

	.voga-header .wp-block-navigation__responsive-container-open svg {
		fill: currentColor;
		width: 18px;
		height: 18px;
	}

	.voga-header .wp-block-navigation__responsive-container-open:hover,
	.voga-header .wp-block-navigation__responsive-container-open:focus-visible {
		background: rgba(244, 238, 231, 0.98) !important;
	}
}

.voga-header .wp-block-navigation-item__content {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.5rem;
	padding: 0.12rem 0;
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.98rem;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.2;
}
.voga-brand { display: inline-flex; align-items: center; width: clamp(120px, 10vw, 165px); line-height: 0; }
.voga-brand img { display: block; width: 100%; height: auto; }
.voga-service-grid { align-items: stretch; }
.voga-service-grid .voga-card { min-height: 100%; display: flex; flex-direction: column; border-top: 4px solid var(--voga-coral); transition: transform .25s ease, box-shadow .25s ease; }
.voga-service-grid .voga-card:nth-child(2) { border-top-color: var(--voga-blue); }
.voga-service-grid .voga-card:nth-child(3) { border-top-color: var(--voga-sun); }
.voga-service-grid .voga-card:hover { transform: translateY(-6px); box-shadow: 0 22px 48px rgba(20,37,43,.12); }
.voga-service-grid .voga-card > p:last-child { margin-top: auto; }

.voga-header .voga-nav-cta .wp-block-navigation-item__content { padding: .7rem 1rem; border-radius: 999px; background: var(--voga-coral); color: #fff; }
.voga-footer-signature { margin-top: .75rem; color: var(--voga-sun); font-size: 1.15rem; font-weight: 600; }
.voga-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.voga-service-grid > .wp-block-column { margin: 0 !important; }
.voga-service-details { margin-top: 1rem; }
.voga-service-details summary { cursor: pointer; color: var(--voga-blue); font-weight: 600; }
.voga-service-details ul { margin: .8rem 0 0 1.2rem; padding: 0; }
.voga-contact-form { display: grid; gap: .9rem; }
.voga-form-mockup { display: none !important; }
.voga-contact-form label { display: grid; gap: .35rem; font-weight: 600; }
.voga-contact-form input, .voga-contact-form textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--voga-control-border); border-radius: 10px; padding: .8rem; background: var(--voga-control-bg); color: inherit; font: inherit; }
.voga-contact-form textarea { min-height: 8rem; resize: vertical; }
.voga-form-status { margin-top: 1rem; padding: .8rem 1rem; border-radius: 10px; background: var(--voga-panel-bg-strong); }
.voga-result-highlight { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; margin: 1.5rem 0; }
.voga-result-highlight strong { display: block; color: var(--voga-sun); font-size: clamp(2.8rem, 7vw, 5rem); line-height: .95; }
.voga-honesty { border-left: 3px solid var(--voga-coral); padding-left: 1rem; opacity: .82; font-size: .95rem; }
@media (max-width: 780px) { .voga-service-grid, .voga-result-highlight { grid-template-columns: 1fr; } }

.voga-header .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -0.35rem;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.2s ease;
	opacity: 0.65;
}

.voga-header .wp-block-navigation-item__content:hover::after,
.voga-header .wp-block-navigation-item__content:focus-visible::after {
	transform: scaleX(1);
}

.voga-header .wp-block-navigation__responsive-container-open,
.voga-header .wp-block-navigation__responsive-container-close {
	border-radius: 999px;
}

html.has-modal-open,
body.has-modal-open {
	overflow: hidden;
}

.voga-section {
	position: relative;
	padding-top: clamp(4.5rem, 9vw, 8rem) !important;
	padding-bottom: clamp(4.5rem, 9vw, 8rem) !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.voga-hero {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.voga-hero.is-layout-constrained > *,
.voga-manifesto.is-layout-constrained > *,
.voga-header.is-layout-constrained > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.wp-site-blocks > .voga-section,
.wp-site-blocks > section.voga-section,
.wp-site-blocks > .wp-block-group.voga-section {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.wp-site-blocks > .voga-section + .voga-section,
.wp-site-blocks > section.voga-section + section.voga-section,
.wp-site-blocks > .wp-block-group.voga-section + .wp-block-group.voga-section {
	margin-block-start: 0 !important;
}

.wp-site-blocks > header.wp-block-template-part + .voga-section,
.wp-site-blocks > header.wp-block-template-part + section.voga-section,
.wp-site-blocks > header.wp-block-template-part + .wp-block-group.voga-section,
.wp-site-blocks > .voga-hero + .voga-manifesto,
.wp-site-blocks > section.voga-hero + section.voga-manifesto,
.wp-site-blocks > .wp-block-group.voga-hero + .wp-block-group.voga-manifesto {
	margin-block-start: 0 !important;
}

.voga-manifesto {
	padding-top: clamp(1.5rem, 3vw, 2.75rem) !important;
	padding-bottom: clamp(1.5rem, 3vw, 2.75rem) !important;
}

.voga-section::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		linear-gradient(var(--voga-grid-line) 1px, transparent 1px),
		linear-gradient(90deg, var(--voga-grid-line) 1px, transparent 1px);
	background-size: 72px 72px;
	mask-image: linear-gradient(to bottom, transparent, black 10%, black 90%, transparent);
	opacity: 0.32;
}

.voga-kicker {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.8rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--voga-blue);
}

.voga-display {
	text-wrap: balance;
	max-width: none;
	line-height: 1.02;
}

.voga-lead {
	font-size: clamp(1.05rem, 2vw, 1.3rem);
	line-height: 1.65;
	max-width: 34rem;
}

.voga-section > .alignwide,
.voga-section > .wp-block-group.alignwide {
	position: relative;
	z-index: 1;
}

.voga-section .wp-block-columns {
	gap: clamp(1.5rem, 3vw, 3.5rem);
}

@media (max-width: 781px) {
	.voga-section .wp-block-group + .wp-block-columns,
	.voga-section .wp-block-columns + .wp-block-columns,
	.voga-section .wp-block-heading + .wp-block-columns,
	.voga-section .wp-block-heading + .wp-block-group,
	.voga-section .wp-block-paragraph + .wp-block-columns {
		margin-top: clamp(1.5rem, 3vw, 3rem);
	}
}

.voga-hero-grid > .wp-block-column,
.voga-hero-overlay-grid > .wp-block-column,
.voga-services-layout > .wp-block-column {
	min-width: 0;
}

.voga-hero .has-2-xl-font-size {
	font-size: clamp(2.8rem, 4.4vw, 4.7rem) !important;
	line-height: 0.9;
	letter-spacing: -0.02em;
	max-width: 6.5ch;
}

.voga-hero-media .has-xl-font-size {
	font-size: clamp(1.8rem, 2.5vw, 3rem) !important;
	line-height: 1;
	letter-spacing: -0.01em;
	/* max-width: 14ch; */
}

.voga-services-copy .has-xl-font-size {
	font-size: clamp(2.15rem, 3.3vw, 3.8rem) !important;
	line-height: 1.06;
	letter-spacing: -0.02em;
	/* max-width: 14ch; */
}

.voga-section .has-xl-font-size {
	font-size: clamp(2rem, 3vw, 3.6rem) !important;
	line-height: 1.06;
	letter-spacing: -0.02em;
}

.voga-section .has-2-xl-font-size {
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
}

.voga-hero-copy .voga-lead {
	max-width: 30rem;
}

.voga-services-copy p:not(.voga-kicker) {
	max-width: 26rem;
}

.voga-portfolio-copy .has-xl-font-size {
	font-size: clamp(2.2rem, 3.2vw, 4rem) !important;
	line-height: 1.06;
	max-width: 11ch;
}

.voga-portfolio-copy p:not(.voga-kicker) {
	max-width: 24rem;
}

.voga-insights-copy .has-xl-font-size {
	font-size: clamp(2.2rem, 3.2vw, 4rem) !important;
	line-height: 1.06;
	max-width: 13ch;
}

.voga-insights-text p {
	max-width: 32rem;
}

.voga-manifesto-copy .has-xl-font-size,
.voga-process .has-xl-font-size,
.voga-services-copy .has-xl-font-size,
.voga-portfolio-copy .has-xl-font-size,
.voga-insights-copy .has-xl-font-size,
.voga-about-copy .has-xl-font-size,
.voga-contact-copy .has-xl-font-size,
.voga-cta-layout .has-xl-font-size {
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
}

.voga-card,
.voga-stat,
.voga-step,
.voga-post,
.voga-contact-card,
.voga-logo-panel {
	border: 1px solid var(--voga-line);
	border-radius: var(--voga-radius);
	box-shadow: var(--voga-shadow);
}

.voga-card,
.voga-step,
.voga-post,
.voga-contact-card {
	background: var(--voga-panel-bg);
	backdrop-filter: blur(10px);
}

.voga-stat {
	background: color-mix(in srgb, var(--voga-sand) 72%, transparent);
}

.voga-stats-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.voga-stats-grid .voga-stat {
	padding: 1.5rem;
	min-height: 220px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.voga-stats-grid .voga-stat strong {
	display: block;
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 0.9;
	color: var(--voga-ink);
}

.voga-stats-grid .voga-stat p {
	margin: 0;
	font-size: 0.98rem;
	line-height: 1.55;
	max-width: 22ch;
}

.voga-stat-hero {
	background: color-mix(in srgb, var(--voga-warm) 92%, transparent);
}

.voga-service-grid .wp-block-column,
.voga-step-grid .wp-block-column,
.voga-post-grid .wp-block-column {
	display: flex;
}

.voga-service-grid .wp-block-group,
.voga-step-grid .wp-block-group,
.voga-post-grid .wp-block-group {
	width: 100%;
}

.voga-services-layout {
	align-items: start;
}

.voga-services-copy {
	padding-right: 1rem;
}

.voga-services-copy .has-xl-font-size {
	max-width: 13ch;
}

.voga-services-cards .voga-service-grid {
	margin-top: 0 !important;
}

.voga-services-cards {
	display: grid;
	gap: 1.5rem;
	align-content: start;
}

.voga-card {
	min-height: 100%;
}
#servicos .voga-service-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: clamp(1rem, 2vw, 1.5rem) !important; align-items: stretch !important; }
#servicos > .alignwide { width: min(1180px, calc(100vw - 5rem)); max-width: 1180px; }
#servicos .voga-service-grid > *, #servicos .voga-service-grid > .wp-block-column { width: auto !important; min-width: 0 !important; margin: 0 !important; }
#servicos .voga-service-grid .voga-card { min-height: 18.5rem; padding: clamp(.9rem, 1.4vw, 1.25rem) !important; border-radius: 1.15rem; }
#servicos .voga-service-grid .voga-card { background: rgba(255,255,255,.62); border-bottom-left-radius: 2rem; border-bottom-right-radius: 2rem; box-shadow: 0 14px 36px rgba(31,42,46,.06); }
#servicos .voga-service-grid .voga-card > * + * { margin-top: .75rem; }
#servicos .voga-service-grid .voga-card .voga-kicker { margin-top: 0; margin-bottom: 1rem; }
#servicos .voga-service-grid .voga-card h3 { margin-bottom: 1rem; }
#servicos .voga-service-grid .voga-card details { margin-top: 1rem; }
#servicos .voga-service-grid .voga-card details ul { display: grid; gap: .42rem; margin-top: .85rem; }
#servicos .voga-service-grid .voga-card details li { line-height: 1.35; }
#servicos .voga-service-grid .voga-card > p:last-child { margin-top: auto; padding-top: .8rem; }
#servicos .voga-service-grid h3 { max-width: 14ch; font-size: clamp(1.2rem, 1.7vw, 1.65rem); line-height: 1.08; }
#servicos .voga-service-grid p { max-width: 30ch; }
#servicos .voga-service-details { margin-top: 1.2rem; }
#servicos .voga-service-grid .wp-element-button { display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; max-width: 100%; padding: .72rem .95rem; font-size: .82rem; line-height: 1.15; }
#servicos .voga-service-grid .wp-block-button { width: auto !important; max-width: 100%; }
@media (max-width: 900px) { #servicos .voga-service-grid { grid-template-columns: 1fr !important; } #servicos .voga-service-grid .voga-card { min-height: auto; } }

/* Services rhythm: give each card a clearer reading flow and a calmer CTA finish. */
#servicos .voga-service-grid .voga-card h3 {
	margin-top: .25rem;
	margin-bottom: 1.15rem;
	line-height: 1.12;
	letter-spacing: -.02em;
}
#servicos .voga-service-grid .voga-card > p:not(.voga-kicker) {
	margin-bottom: 1rem;
	line-height: 1.5;
}
#servicos .voga-service-grid .voga-service-details {
	margin-top: 1.1rem;
}
#servicos .voga-service-grid .voga-service-details summary {
	line-height: 1.35;
}
#servicos .voga-service-grid .voga-service-details ul {
	margin-top: .7rem;
	line-height: 1.4;
}
#servicos .voga-service-grid .voga-service-details li {
	margin-block: .65rem;
}
#servicos .voga-service-grid .voga-service-details ul {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}
#servicos .voga-service-grid .voga-service-details li {
	position: relative;
	padding-left: 1.15rem;
}
#servicos .voga-service-grid .voga-service-details li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .62em;
	width: .42rem;
	height: .42rem;
	border-radius: 50%;
	background: var(--voga-coral);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--voga-coral) 16%, transparent);
}
#servicos .voga-service-grid .voga-card > p:last-child {
	margin-top: auto;
	padding-top: 1rem;
}
#servicos .voga-service-grid .voga-card > p:last-child .wp-element-button {
	margin-top: .25rem;
}

.voga-card h3,
.voga-step h3 {
	text-align: left;
	text-wrap: balance;
	line-height: 1.2;
}

.voga-card > *,
.voga-step > * {
	margin-left: 0 !important;
	margin-right: auto !important;
}

.voga-hero {
	min-height: calc(100vh - 88px);
}

.voga-hero-stage {
	position: relative;
	min-height: calc(100vh - 88px);
	overflow: hidden;
	isolation: isolate;
	background: #12353d;
	--voga-hero-overlay-primary: linear-gradient(90deg, rgba(251, 246, 239, 0.26) 0%, rgba(251, 246, 239, 0.18) 34%, rgba(251, 246, 239, 0.04) 62%, rgba(251, 246, 239, 0.12) 100%);
	--voga-hero-overlay-secondary: linear-gradient(180deg, rgba(255, 252, 248, 0.04) 0%, rgba(251, 246, 239, 0.12) 100%);
	--voga-hero-title: #233238;
	--voga-hero-body: rgba(35, 50, 56, 0.88);
	--voga-hero-outline: rgba(35, 50, 56, 0.72);
	--voga-hero-outline-hover: rgba(35, 50, 56, 0.9);
	--voga-hero-outline-bg: rgba(255, 251, 246, 0.14);
	--voga-hero-outline-bg-hover: rgba(255, 251, 246, 0.22);
	--voga-hero-card-bg: linear-gradient(180deg, rgba(255, 251, 246, 0.26) 0%, rgba(246, 240, 232, 0.18) 100%);
	--voga-hero-card-border: rgba(35, 50, 56, 0.1);
	--voga-hero-card-shadow: 0 18px 38px rgba(120, 103, 89, 0.09);
	--voga-hero-kicker: rgba(76, 96, 101, 0.92);
	--voga-hero-marquee: rgba(76, 96, 101, 0.82);
	--voga-hero-marquee-border: rgba(35, 50, 56, 0.14);
}

.voga-hero-stage > * {
	max-width: none !important;
}

.voga-hero-stage::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--voga-hero-overlay-primary), var(--voga-hero-overlay-secondary);
	transition: background 280ms ease, opacity 280ms ease;
}

.voga-hero-photo,
.voga-hero-photo img {
	height: 100%;
}

.voga-hero-photo {
	position: absolute;
	inset: 0;
	margin: 0;
	min-height: inherit;
	width: 100%;
	max-width: none !important;
}

.voga-hero-photo img {
	display: block;
	width: 100%;
	min-height: inherit;
	object-fit: cover;
	object-position: center center;
	filter: saturate(0.92) contrast(1.05);
	transition: filter 280ms ease;
}

.voga-hero-overlay {
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: stretch;
	width: 100%;
	max-width: none !important;
}

.voga-hero-layout {
	min-height: calc(100vh - 88px);
	align-items: center;
	width: min(1600px, calc(100vw - 8rem));
	max-width: min(1600px, calc(100vw - 8rem));
	margin-left: auto;
	margin-right: auto;
	padding-top: clamp(7rem, 12vh, 9.5rem);
	padding-bottom: clamp(4rem, 7vh, 5.5rem);
	padding-left: clamp(2.75rem, 4.5vw, 5rem);
	padding-right: clamp(2.75rem, 4.5vw, 5rem);
}

.voga-hero-copy {
	position: relative;
	z-index: 2;
	max-width: 46rem;
}

.voga-hero-copy,
.voga-hero-copy > *,
.voga-hero-aside,
.voga-hero-aside > * {
	transition:
		color 220ms ease,
		background-color 220ms ease,
		border-color 220ms ease,
		box-shadow 220ms ease,
		opacity 220ms ease,
		text-shadow 220ms ease;
}

.voga-glass-card {
	transition:
		background-color 220ms ease,
		border-color 220ms ease,
		box-shadow 220ms ease,
		opacity 220ms ease;
}

.voga-glass-card > *,
.voga-glass-card p,
.voga-glass-card h3,
.voga-glass-card strong {
	transition: none;
	-webkit-font-smoothing: antialiased;
	backface-visibility: hidden;
}

.voga-hero-copy .has-2-xl-font-size {
	max-width: 7.2ch;
	line-height: 0.97;
	font-size: clamp(3.8rem, 6.4vw, 6.2rem) !important;
	color: var(--voga-hero-title) !important;
	text-shadow: 0 10px 24px rgba(255, 250, 244, 0.18);
}

.voga-hero-copy > .voga-kicker {
	color: var(--voga-hero-kicker) !important;
}

.voga-hero-copy .voga-lead {
	max-width: 32rem;
	font-size: clamp(1.12rem, 1.4vw, 1.35rem);
	line-height: 1.7;
	color: var(--voga-hero-body) !important;
}

.voga-hero-copy .wp-block-buttons {
	margin-top: 1.75rem;
}

.voga-hero-copy .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: var(--voga-hero-outline);
	color: var(--voga-hero-title);
	background: var(--voga-hero-outline-bg);
}

.voga-hero-copy .wp-block-button.is-style-outline .wp-block-button__link:hover,
.voga-hero-copy .wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
	background: var(--voga-hero-outline-bg-hover);
	border-color: var(--voga-hero-outline-hover);
}

.voga-hero-meta {
	margin-top: 2rem !important;
	opacity: 0.86;
}

.voga-hero-aside {
	display: grid;
	align-content: center;
	align-self: center;
	justify-items: end;
	gap: 1.25rem;
	padding-bottom: 2.5rem;
}

.voga-hero-layout.are-vertically-aligned-bottom {
	align-items: center !important;
}

.voga-hero-aside.is-vertically-aligned-bottom,
.voga-hero-aside.is-vertically-aligned-center {
	align-self: center !important;
}

.voga-glass-card {
	width: min(100%, 21rem);
	padding: 1.15rem 1.25rem !important;
	border: 1px solid var(--voga-hero-card-border);
	border-radius: 28px;
	background: var(--voga-hero-card-bg);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	box-shadow: var(--voga-hero-card-shadow);
	color: var(--voga-hero-title) !important;
}

.voga-glass-card p,
.voga-glass-card h3,
.voga-glass-card strong {
	color: inherit !important;
}

.voga-coordinates-card {
	transform: translateY(-0.5rem);
}

.voga-coordinates-label {
	white-space: nowrap;
	letter-spacing: 0.16em;
	color: var(--voga-hero-kicker) !important;
}

.voga-coordinates-copy {
	text-wrap: pretty;
	line-height: 1.55;
	color: var(--voga-hero-body) !important;
}

.voga-hero-note p:last-child {
	margin-bottom: 0;
	line-height: 1.65;
	color: var(--voga-hero-body) !important;
}

.voga-marquee {
	border-top: 1px solid var(--voga-hero-marquee-border);
	padding-top: 1rem;
	margin-top: clamp(1.5rem, 3vw, 2.5rem);
}

.voga-marquee p {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.78rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--voga-hero-marquee) !important;
}

.voga-process-line {
	position: relative;
}

.voga-process + .voga-section,
.wp-site-blocks > #processo + #portfolio {
	margin-block-start: 0 !important;
	margin-top: 0 !important;
}

.voga-process-line::after {
	content: "";
	position: absolute;
	left: 12%;
	right: 12%;
	top: 3rem;
	border-top: 1px dashed rgba(0, 124, 137, 0.32);
	z-index: 0;
}

.voga-step {
	position: relative;
	z-index: 1;
	min-height: 280px;
}

.voga-logo-panel {
	background: rgba(0, 124, 137, 0.04);
	padding: 1.5rem;
}

.voga-logo-cloud {
	display: grid;
	grid-template-columns: repeat(2, minmax(140px, 1fr));
	gap: 1rem;
}

.voga-logo-chip {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding: 1rem 1.25rem;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.8rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	white-space: nowrap;
	min-width: 0;
	min-height: 78px;
}

.voga-portfolio-layout {
	align-items: start;
}

.voga-portfolio-copy .has-xl-font-size {
	max-width: 10ch;
}

.voga-portfolio-content .wp-block-columns {
	gap: 1.5rem;
}

.voga-portfolio-content .voga-card {
	background: rgba(255, 248, 240, 0.92);
	color: var(--voga-ink);
}

.voga-portfolio-content blockquote p,
.voga-portfolio-content cite {
	color: var(--voga-ink);
}

.voga-about {
	color: #fff;
	padding-top: clamp(5rem, 7vw, 7rem) !important;
	padding-bottom: clamp(5rem, 7vw, 7rem) !important;
}

.voga-about .wp-block-heading,
.voga-about p,
.voga-about a {
	color: #fff;
}

.voga-about .voga-kicker {
	color: rgba(255, 243, 227, 0.84);
}

.voga-about-layout {
	align-items: center;
	column-gap: clamp(2rem, 3vw, 3.5rem);
}

.voga-about-copy .has-xl-font-size {
	max-width: 11ch;
}

.voga-about-copy {
	padding-right: 0;
}

.voga-about-copy .voga-lead {
	max-width: 32rem;
	font-size: 1.08rem;
	line-height: 1.72;
}

.voga-portrait {
	border-radius: 32px;
	overflow: hidden;
	box-shadow: 0 24px 60px rgba(3, 25, 29, 0.24);
}

.voga-about .wp-block-buttons {
	margin-top: 1.75rem;
}

.voga-about .wp-block-button .wp-block-button__link {
	padding-inline: 1.35rem;
}

.voga-post img {
	border-radius: 20px;
}

.voga-insights-copy .has-xl-font-size {
	max-width: 11ch;
}

.voga-post {
	min-height: 100%;
}

.voga-post h3,
.voga-card h3,
.voga-step h3 {
	line-height: 1.2;
}

.voga-post h3 {
	font-size: clamp(1.4rem, 1.8vw, 2rem);
	line-height: 1.22;
}

.voga-contact {
	background: linear-gradient(180deg, rgba(255,252,248,0) 0%, rgba(255,243,227,0.22) 100%);
}

.voga-contact-layout {
	align-items: start;
}

.voga-contact-copy .has-xl-font-size {
	max-width: 11ch;
}

.voga-contact-copy p:not(.voga-kicker) {
	max-width: 31rem;
}

.voga-cta {
	color: #fff;
	padding-top: clamp(5rem, 8vw, 6.5rem) !important;
	padding-bottom: clamp(5rem, 8vw, 6.5rem) !important;
}

.voga-cta .wp-block-heading,
.voga-cta p {
	color: #fff;
}

.voga-cta .voga-kicker {
	color: rgba(255, 243, 227, 0.88);
}

.voga-cta .wp-block-button__link,
.voga-cta .wp-element-button {
	white-space: nowrap;
}

.voga-cta {
	margin-bottom: 0 !important;
}

.wp-site-blocks > .voga-cta + footer.wp-block-template-part,
.wp-site-blocks > .voga-cta + .wp-block-template-part,
.voga-cta + .voga-footer {
	margin-block-start: 0 !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
	border-top: 0 !important;
}

.voga-contact-card {
	padding: clamp(1.75rem, 4vw, 2.75rem);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 252, 248, 0.92) 100%);
	max-width: 820px;
	margin-left: auto;
	border: 1px solid rgba(31, 42, 46, 0.07);
	box-shadow: 0 30px 80px rgba(24, 39, 43, 0.08);
}

.voga-contact-card-grid {
	align-items: start;
	gap: 2rem;
}

.voga-contact-form-column,
.voga-contact-direct-column {
	min-width: 0;
}

.voga-form-mockup {
	display: grid;
	gap: 0.95rem;
	margin-top: 1rem;
}

.voga-form-field {
	display: grid;
	gap: 0.45rem;
	padding: 0.95rem 1.05rem 1rem;
	border: 1px solid rgba(31, 42, 46, 0.08);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.75);
}

.voga-form-field-message {
	min-height: 142px;
	align-content: start;
}

.voga-form-label {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.72rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(0, 124, 137, 0.9);
}

.voga-form-input {
	font-size: 1rem;
	line-height: 1.6;
	color: rgba(31, 42, 46, 0.92);
}

.voga-form-meta {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 0.4rem;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(31, 42, 46, 0.52);
}

.voga-contact-direct-column > p:not(.voga-kicker) {
	max-width: 26rem;
}

.voga-contact-note {
	color: rgba(31, 42, 46, 0.72);
	font-size: 0.98rem;
	line-height: 1.65;
}

.voga-contact-card .wp-block-buttons {
	margin-top: 1.75rem;
	gap: 0.9rem;
}

.voga-contact-card .wp-block-button__link {
	min-width: 0;
	padding-inline: 1.5rem;
}

.voga-contact-card .wp-block-button:first-child .wp-block-button__link {
	min-width: 16.5rem;
}

.voga-cta-layout .has-xl-font-size {
	/* max-width: 14ch; */
	line-height: 1.02;
}

.voga-cta-layout .wp-block-buttons {
	width: 100%;
}

.voga-cta-layout .wp-block-buttons.is-layout-flex,
.voga-cta-layout .wp-block-buttons {
	justify-content: flex-end;
}

.voga-cta-layout {
	width: min(1280px, calc(100vw - 8rem));
	max-width: min(1280px, calc(100vw - 8rem));
	margin-left: auto;
	margin-right: auto;
	column-gap: clamp(2.5rem, 4vw, 4.5rem);
}

.voga-footer {
	border-top: 0;
}

.voga-footer-top {
	align-items: start;
	gap: 2rem;
}

.voga-footer .wp-block-navigation {
	gap: 0.8rem;
}

.voga-footer .wp-block-navigation-item__content {
	font-size: 1.02rem;
}

.voga-footer p a {
	display: inline-block;
}

.voga-footer p {
	max-width: 32rem;
	line-height: 1.65;
}

.voga-footer a {
	color: inherit;
	text-decoration: none;
}

.voga-footer a:hover,
.voga-footer a:focus-visible {
	text-decoration: underline;
}

.voga-footer .wp-block-site-title {
	font-size: clamp(1.4rem, 2vw, 1.8rem);
	margin-bottom: 0.6rem;
}

.voga-footer .wp-block-separator {
	margin-top: 2rem;
	margin-bottom: 1.5rem;
	opacity: 0.72;
}

.voga-footer .wp-block-group.is-layout-flex {
	gap: 1rem 2rem;
}

.voga-footer-meta {
	padding-top: 0.5rem;
}

html.voga-policy-open {
	overflow: hidden;
}

.voga-policy-dialog {
	box-sizing: border-box;
	width: min(46rem, calc(100% - 3rem));
	max-height: min(48rem, calc(100dvh - 3rem));
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--voga-line-strong);
	border-radius: 1.5rem;
	background: var(--voga-page-bg);
	color: var(--voga-page-text);
	box-shadow: 0 24px 80px rgb(7 16 29 / 32%);
}

.voga-policy-dialog[open] {
	display: flex;
	flex-direction: column;
}

.voga-policy-dialog::backdrop {
	background: rgb(7 16 29 / 65%);
}

.voga-policy-dialog__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.5rem clamp(1.25rem, 4vw, 2.5rem);
	border-bottom: 1px solid var(--voga-line-strong);
}

.voga-policy-dialog__header h2 {
	margin: 0;
	color: inherit;
	font-size: clamp(1.4rem, 4vw, 2rem);
	line-height: 1.15;
}

.voga-policy-dialog__header button {
	min-height: 44px;
	padding: .5rem .85rem;
	white-space: nowrap;
	border: 1px solid var(--voga-line-strong);
	border-radius: 999px;
	background: var(--voga-panel-bg);
	color: inherit;
	font: inherit;
	cursor: pointer;
}

.voga-policy-dialog__body {
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: 1.5rem clamp(1.25rem, 4vw, 2.5rem) 2.5rem;
	line-height: 1.65;
}

.voga-policy-dialog__body h2 {
	margin: 1.5rem 0 .5rem;
	color: inherit;
	font-size: 1.125rem;
}

.voga-policy-dialog__body h2:first-child,
.voga-policy-dialog__body p {
	margin-top: 0;
}

.voga-policy-dialog__body a {
	color: inherit;
	text-decoration: underline;
	overflow-wrap: anywhere;
}

@media (max-width: 781px) {
	.voga-policy-dialog {
		inset: 0;
		margin: 0;
		width: 100%;
		height: 100dvh;
		max-width: none;
		max-height: none;
		border: 0;
		border-radius: 0;
	}

	.voga-policy-dialog__header {
		padding-top: calc(1rem + env(safe-area-inset-top));
		padding-bottom: 1rem;
	}

	.voga-policy-dialog__body {
		padding-bottom: calc(2rem + env(safe-area-inset-bottom));
	}
}

.voga-footer-legal a,
.voga-contact-privacy a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: .2em;
}

.voga-back-to-top {
	display: none;
}

@media (max-width: 781px) {
	.voga-back-to-top {
		display: block;
		position: fixed;
		right: 1.25rem;
		bottom: 1.25rem;
		z-index: 140;
		margin: 0 !important;
		opacity: 0;
		transform: translateY(10px);
		pointer-events: none;
		transition: opacity 0.2s ease, transform 0.2s ease;
	}

	.voga-back-to-top.is-visible {
		opacity: 1;
		transform: translateY(0);
		pointer-events: auto;
	}

	.voga-back-to-top a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 3rem;
		height: 3rem;
		border-radius: 999px;
		background: rgba(31, 42, 46, 0.92);
		color: #fff3e3;
		text-decoration: none;
		box-shadow: 0 18px 30px rgba(20, 37, 43, 0.18);
		font-size: 1.2rem;
		line-height: 1;
	}

	.voga-back-to-top a span {
		display: block;
		transform: translateY(-1px);
	}

	.voga-back-to-top a:hover,
	.voga-back-to-top a:focus-visible {
		transform: translateY(-2px);
	}
}

@media (min-width: 1024px) {
	.voga-manifesto-copy .has-xl-font-size {
		font-size: clamp(3.1rem, 4.1vw, 5rem) !important;
		line-height: 1.02;
		max-width: 560px;
	}

	.voga-manifesto-copy .voga-lead {
		max-width: 640px;
		font-size: 1.28rem;
	}

	.voga-manifesto-layout {
		grid-template-columns: minmax(540px, 0.95fr) minmax(480px, 0.85fr);
		display: grid;
		align-items: start;
		column-gap: 3rem;
	}

	.voga-manifesto-layout > .wp-block-column,
	.voga-services-layout > .wp-block-column,
	.voga-process-intro > .wp-block-column,
	.voga-portfolio-layout > .wp-block-column,
	.voga-insights-intro > .wp-block-column,
	.voga-about-layout > .wp-block-column,
	.voga-contact-layout > .wp-block-column,
	.voga-cta-layout > .wp-block-column,
	.voga-footer-top > .wp-block-column {
		margin: 0 !important;
	}

	.voga-stats-grid .voga-stat {
		min-height: 210px;
	}

	.voga-stats-grid .voga-stat strong {
		font-size: clamp(2.4rem, 2.8vw, 3.3rem);
	}

	.voga-services-layout {
		display: grid;
		grid-template-columns: minmax(420px, 0.88fr) minmax(760px, 1.12fr);
		align-items: start;
		column-gap: 3rem;
	}

	.voga-services-copy .has-xl-font-size {
		font-size: clamp(3rem, 3.75vw, 4.5rem) !important;
		line-height: 1.05;
		max-width: 560px;
	}

	.voga-services-copy p:not(.voga-kicker) {
		max-width: 520px;
		font-size: 1.08rem;
		line-height: 1.7;
	}

	.voga-services-cards {
		min-width: 0;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
		align-items: stretch;
	}

	.voga-service-grid {
		display: contents !important;
	}

	.voga-service-grid > .wp-block-column {
		display: flex;
	}

	.voga-services-cards .voga-card {
		min-height: 250px;
		padding: 1.8rem !important;
		border-radius: 26px;
	}

	.voga-services-cards .voga-card > * {
		max-width: none;
	}

	.voga-services-cards .voga-card h3 {
		width: 100%;
		max-width: 100%;
		margin-bottom: 0.9rem;
		margin-left: 0;
		margin-right: auto;
		text-align: left;
		line-height: 1.22;
		text-wrap: balance;
	}

	.voga-services-cards .voga-card p:not(.voga-kicker) {
		max-width: 30ch;
		line-height: 1.65;
	}

	.voga-process-intro {
		display: grid;
		grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
		align-items: end;
		column-gap: 3rem;
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.voga-process .has-xl-font-size {
		font-size: clamp(3rem, 3.8vw, 4.5rem) !important;
		line-height: 1.12;
		max-width: 880px;
	}

	.voga-process-intro p {
		max-width: 360px;
		font-size: 1.02rem;
		line-height: 1.7;
	}

	.voga-step-grid {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(250px, 1fr));
		gap: 1.5rem;
	}

	.voga-step-grid > .wp-block-column {
		display: block;
	}

	.voga-step {
		min-height: 270px;
	}

	.voga-portfolio-layout {
		display: grid;
		grid-template-columns: minmax(420px, 0.82fr) minmax(700px, 1.18fr);
		align-items: start;
		column-gap: 3rem;
	}

	.voga-coordinates-card {
		width: min(100%, 18.75rem);
		margin-left: auto;
		padding: 1rem 1.1rem !important;
	}

	.voga-coordinates-label {
		white-space: nowrap;
		max-width: none;
		line-height: 1.3;
		letter-spacing: 0.14em;
		font-size: 0.74rem;
	}

	.voga-coordinates-copy {
		max-width: 16ch;
	}

	.voga-portfolio-copy .has-xl-font-size {
		font-size: clamp(3rem, 3.7vw, 4.5rem) !important;
		line-height: 1.12;
		max-width: 520px;
	}

	.voga-portfolio-copy p:not(.voga-kicker) {
		max-width: 460px;
		font-size: 1.08rem;
		line-height: 1.7;
	}

	.voga-logo-cloud {
		grid-template-columns: repeat(2, minmax(150px, 1fr));
	}

	.voga-logo-panel {
		min-height: 230px;
	}

	.voga-insights-intro {
		display: grid;
		grid-template-columns: minmax(420px, 0.84fr) minmax(520px, 1.16fr);
		align-items: end;
		column-gap: 3rem;
	}

	.voga-insights-copy .has-xl-font-size {
		font-size: clamp(3rem, 3.75vw, 4.5rem) !important;
		line-height: 1.12;
		max-width: 520px;
	}

	.voga-insights-text p {
		max-width: 620px;
		font-size: 1.08rem;
		line-height: 1.7;
	}

	.voga-post-grid {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.75rem;
	}

	.voga-post-grid > .wp-block-column {
		display: block;
	}

	.voga-post h3 {
		font-size: clamp(1.35rem, 1.45vw, 1.75rem);
		line-height: 1.18;
	}

	.voga-about-layout {
		display: grid;
		grid-template-columns: minmax(500px, 0.98fr) minmax(560px, 1.02fr);
		align-items: center;
		column-gap: 3.5rem;
	}

	.voga-about-copy .has-xl-font-size {
		font-size: clamp(2.55rem, 3vw, 3.7rem) !important;
		line-height: 1.1;
		max-width: 640px;
	}

	.voga-about-copy .voga-lead,
	.voga-about-copy p:not(.voga-kicker) {
		max-width: 520px;
		font-size: 1rem;
		line-height: 1.78;
	}

	.voga-about-visual .voga-portrait {
		min-height: 440px;
		max-width: 880px;
		margin-left: auto;
	}

	.voga-about-visual .voga-portrait img {
		width: 100%;
		height: 440px;
		object-fit: cover;
	}

	.voga-contact-layout {
		display: grid;
		grid-template-columns: minmax(400px, 0.85fr) minmax(620px, 1.15fr);
		align-items: start;
		column-gap: 3rem;
	}

	.voga-contact-copy .has-xl-font-size {
		font-size: clamp(2.8rem, 3.5vw, 4.1rem) !important;
		line-height: 1.08;
		max-width: 480px;
	}

	.voga-contact-copy p:not(.voga-kicker) {
		max-width: 460px;
		font-size: 1.05rem;
		line-height: 1.76;
	}

	.voga-contact-card-grid {
		display: grid;
		grid-template-columns: minmax(280px, 0.96fr) minmax(280px, 1.04fr);
		align-items: start;
		column-gap: 2.25rem;
	}

	.voga-cta-layout {
		display: grid;
		grid-template-columns: minmax(520px, 1fr) auto;
		align-items: center;
		column-gap: 3rem;
	}

	.voga-cta-layout .has-xl-font-size {
		/* max-width: 540px; */
		font-size: clamp(2.3rem, 3vw, 3.6rem) !important;
		line-height: 1.08;
	}

	.voga-cta {
		padding-top: clamp(3.25rem, 4vw, 4.5rem) !important;
		padding-bottom: clamp(3.25rem, 4vw, 4.5rem) !important;
	}

	.voga-cta p {
		max-width: 420px;
	}

	.voga-cta-layout .wp-block-buttons {
		align-self: center;
	}

	.voga-cta-layout .wp-block-button__link {
		padding-inline: 1.6rem;
	}

	.voga-footer-top {
		display: grid;
		grid-template-columns: minmax(360px, 1.3fr) minmax(170px, 0.65fr) minmax(260px, 0.85fr);
		align-items: start;
		column-gap: 3rem;
	}

	.voga-footer {
		padding-top: clamp(2.75rem, 4vw, 4rem) !important;
		padding-bottom: clamp(2rem, 3vw, 3rem) !important;
	}

	.voga-footer p {
		font-size: 1rem;
	}

	.voga-footer-meta {
		display: grid !important;
		grid-template-columns: 1fr auto;
		align-items: center;
	}
}

@media (min-width: 1600px) {
	.wp-site-blocks .alignwide,
	.wp-block-group.alignwide,
	.wp-block-columns.alignwide {
		width: min(1820px, calc(100vw - 7rem));
		max-width: min(1820px, calc(100vw - 7rem));
	}

	.wp-site-blocks .is-layout-constrained > .alignwide,
	.wp-site-blocks .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: min(1820px, calc(100vw - 7rem));
	}

	.wp-site-blocks .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull):not(.alignwide)) {
		max-width: min(1280px, calc(100vw - 7rem));
	}

	.voga-section {
		padding-top: clamp(5.5rem, 7vw, 9rem) !important;
		padding-bottom: clamp(5.5rem, 7vw, 9rem) !important;
	}

	.voga-manifesto-layout {
		grid-template-columns: minmax(680px, 1fr) minmax(560px, 0.9fr);
		column-gap: 4rem;
	}

	.voga-services-layout {
		grid-template-columns: minmax(520px, 0.9fr) minmax(940px, 1.1fr);
		column-gap: 4rem;
	}

	.voga-services-cards {
		grid-template-columns: repeat(2, minmax(320px, 1fr));
		gap: 2rem;
	}

	.voga-process-intro {
		grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
		column-gap: 4rem;
	}

	.voga-step-grid {
		grid-template-columns: repeat(4, minmax(280px, 1fr));
		gap: 1.75rem;
	}

	.voga-portfolio-layout {
		grid-template-columns: minmax(520px, 0.86fr) minmax(980px, 1.14fr);
		column-gap: 4rem;
	}

	.voga-insights-intro {
		grid-template-columns: minmax(520px, 0.8fr) minmax(760px, 1.2fr);
		column-gap: 4rem;
	}

	.voga-post-grid {
		grid-template-columns: repeat(3, minmax(320px, 1fr));
		gap: 2rem;
	}

	.voga-about-layout {
		grid-template-columns: minmax(560px, 0.95fr) minmax(680px, 1.05fr);
		column-gap: 4rem;
	}

	.voga-about-copy .has-xl-font-size {
		max-width: 680px;
	}

	.voga-about-copy .voga-lead,
	.voga-about-copy p:not(.voga-kicker) {
		max-width: 560px;
	}

	.voga-about-visual .voga-portrait {
		min-height: 500px;
		max-width: 940px;
	}

	.voga-about-visual .voga-portrait img {
		height: 500px;
	}

	.voga-contact-layout {
		grid-template-columns: minmax(460px, 0.85fr) minmax(760px, 1.15fr);
		column-gap: 4rem;
	}

	.voga-contact-card {
		max-width: 920px;
	}

	.voga-contact-card-grid {
		grid-template-columns: minmax(320px, 0.95fr) minmax(360px, 1.05fr);
		column-gap: 2.25rem;
	}

	.voga-cta-layout {
		grid-template-columns: minmax(660px, 1fr) auto;
		column-gap: 3rem;
	}

	.voga-footer-top {
		grid-template-columns: minmax(420px, 1.35fr) minmax(220px, 0.72fr) minmax(320px, 0.92fr);
		column-gap: 4rem;
	}
}

@media (max-width: 781px) {
	/* WordPress keeps its toolbar fixed above 600px. */
	body.admin-bar header.wp-block-template-part {
		top: 46px;
	}

	body.admin-bar .voga-header {
		top: 0;
	}

	.voga-section {
		padding-top: 3.5rem !important;
		padding-bottom: 3.5rem !important;
	}

	.voga-hero {
		min-height: auto;
	}

	.voga-hero-stage,
	.voga-hero-layout {
		min-height: auto;
	}

	.voga-hero-stage {
		width: 100% !important;
		max-width: 100% !important;
		border-radius: 0;
		overflow: hidden;
	}

	.voga-header-nav-shell {
		gap: 0;
	}

	.voga-hero-photo,
	.voga-hero-photo img {
		min-height: 720px;
	}

	.voga-hero-photo {
		position: absolute;
	}

	.voga-hero-layout {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-top: 2.25rem !important;
		padding-bottom: 4rem !important;
		padding-left: 1.5rem !important;
		padding-right: 1.5rem !important;
		align-items: center;
	}

	.voga-hero-copy .voga-lead {
		font-size: 1rem;
		line-height: 1.65;
	}

	.voga-hero-aside {
		justify-items: stretch;
	}

	.voga-hero .has-2-xl-font-size,
	.voga-hero-stage .has-xl-font-size,
	.voga-services-copy .has-xl-font-size,
	.voga-section .has-xl-font-size {
		line-height: 0.98;
	}

	.voga-process-line::after {
		display: none;
	}

	.voga-logo-cloud {
		grid-template-columns: 1fr;
	}

	.wp-site-blocks .alignwide,
	.wp-block-group.alignwide,
	.wp-block-columns.alignwide,
	.wp-site-blocks .is-layout-constrained > .alignwide,
	.wp-site-blocks .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
	.wp-site-blocks .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull):not(.alignwide)) {
		width: min(100%, calc(100vw - 2rem));
		max-width: min(100%, calc(100vw - 2rem));
	}

	.voga-hero-stage.alignfull,
	.voga-hero-overlay,
	.voga-hero-layout.alignwide {
		width: 100% !important;
		max-width: 100% !important;
	}

	.voga-services-copy .has-xl-font-size,
	.voga-hero-stage .has-xl-font-size,
	.voga-hero .has-2-xl-font-size {
		max-width: none;
	}

	.voga-glass-card,
	.voga-coordinates-card {
		width: 100%;
		margin-block-start: 0;
	}

	.voga-stats-grid {
		grid-template-columns: 1fr;
	}

	.voga-step {
		min-height: auto;
	}

	.voga-logo-chip {
		min-height: 64px;
	}

	.voga-header {
		position: relative;
		top: auto;
		box-shadow: 0 8px 22px rgba(20, 37, 43, 0.08);
		margin-top: 0 !important;
	}

	header.wp-block-template-part {
		position: sticky;
		top: 0;
		margin-top: 0 !important;
	}

	.voga-header > .alignwide {
		gap: 0.75rem;
		padding-top: 0.5rem !important;
		padding-bottom: 0.5rem !important;
		min-height: 72px;
	}

	.voga-header > .alignwide > .wp-block-navigation > .wp-block-navigation__container.is-responsive,
	.voga-header > .alignwide > .wp-block-navigation > .wp-block-navigation__container {
		display: none;
	}

	.voga-header .wp-block-navigation__responsive-container-open {
		display: inline-flex !important;
	}

	.voga-header .wp-block-navigation__responsive-container-open {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.85rem;
		height: 2.85rem;
		background: rgba(255, 255, 255, 0.78);
		color: var(--voga-ink);
		box-shadow: 0 10px 24px rgba(20, 37, 43, 0.08);
	}

	.voga-header .wp-block-navigation__responsive-container {
		position: fixed !important;
		inset: 0 !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100vw !important;
		height: 100dvh !important;
		min-height: 100dvh !important;
		display: none !important;
		padding: 0 !important;
		margin: 0 !important;
		background: rgba(15, 26, 29, 0.68);
		backdrop-filter: blur(18px);
		-webkit-backdrop-filter: blur(18px);
		z-index: 9999;
		overflow-y: auto;
		align-items: stretch;
		justify-content: stretch;
	}

	.voga-header .wp-block-navigation__responsive-container.is-menu-open {
		display: flex !important;
	}

	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open {
		display: flex !important;
	}

	.voga-header .wp-block-navigation__responsive-close {
		display: grid !important;
		grid-template-rows: auto 1fr;
		align-items: stretch;
		width: 100% !important;
		min-height: 100dvh !important;
		padding: 0 !important;
	}

	.voga-header .wp-block-navigation__responsive-dialog {
		width: 100%;
		min-height: 100dvh;
		margin-left: 0;
		margin-top: 0;
		background:
			linear-gradient(180deg, rgba(16, 28, 32, 0.96) 0%, rgba(18, 37, 43, 0.94) 100%);
		color: var(--voga-ink);
		border: 0;
		border-radius: 0;
		box-shadow: none;
		height: 100%;
		padding: calc(1rem + env(safe-area-inset-top)) 1.75rem calc(2.5rem + env(safe-area-inset-bottom));
		max-height: none;
		overflow-y: auto;
		display: grid;
		grid-template-rows: auto 1fr;
	}

	.voga-header .wp-block-navigation__responsive-container-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		align-self: flex-end;
		width: 3.1rem;
		height: 3.1rem;
		margin-left: auto;
		margin-right: 0;
		margin-top: 0.35rem;
		border: 1px solid rgba(255, 243, 227, 0.16);
		background: rgba(255, 255, 255, 0.04);
		color: #fff3e3;
		border-radius: 999px;
		box-shadow: 0 10px 28px rgba(5, 16, 20, 0.22);
	}

	.voga-header .wp-block-navigation__responsive-container-content {
		width: 100% !important;
		height: 100%;
		min-height: 100%;
		padding: 0 0 2rem;
		display: grid;
		align-items: center;
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
		display: flex !important;
		flex-direction: column;
		align-items: stretch;
		justify-content: center;
		width: min(100%, 27rem);
		margin: auto 0;
		padding: 0;
		list-style: none;
		gap: 1.7rem;
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container.is-responsive {
		display: flex !important;
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item,
	.voga-header .wp-block-navigation__responsive-container-content .wp-block-page-list {
		width: 100%;
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
		display: block;
		width: 100%;
		padding: 1.2rem 0 1.05rem;
		font-size: clamp(2.05rem, 6.8vw, 2.55rem);
		font-weight: 500;
		text-align: left;
		color: #fff3e3;
		border-bottom: 1px solid rgba(255, 243, 227, 0.12);
		letter-spacing: -0.035em;
		line-height: 1;
		text-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item:first-child .wp-block-navigation-item__content {
		padding-top: 0;
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item:last-child .wp-block-navigation-item__content {
		border-bottom: 0;
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:hover,
	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:focus-visible {
		color: #ffffff;
	}

	.voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content::after {
		display: none;
	}

	.voga-coordinates-card {
		max-width: 100%;
	}

	.voga-coordinates-label {
		white-space: normal;
		word-break: keep-all;
		overflow-wrap: normal;
		line-height: 1.55;
	}

	.voga-coordinates-copy {
		max-width: 17ch;
	}

	#portfolio.voga-section {
		margin-top: 0 !important;
	}

	#processo.voga-section {
		padding-bottom: 0 !important;
	}

	#processo + #portfolio.voga-section {
		margin-block-start: 0 !important;
		margin-top: 0 !important;
		padding-top: 2.5rem !important;
	}

	.voga-cta {
		padding-top: 3.5rem !important;
		padding-bottom: 3.25rem !important;
	}

	.voga-cta-layout {
		align-items: start !important;
	}

	.voga-cta-layout > .wp-block-column:last-child {
		margin-top: 1rem !important;
	}

	.voga-cta-layout .wp-block-buttons,
	.voga-cta-layout .wp-block-buttons.is-layout-flex {
		justify-content: flex-start;
	}

	.voga-cta-layout .wp-block-button__link {
		width: auto;
	}

	.voga-cta + .wp-block-template-part,
	.voga-cta + footer.wp-block-template-part,
	.voga-cta + .voga-footer {
		margin-top: 0 !important;
		border-top: 0 !important;
	}

	.voga-footer {
		padding-top: 2rem !important;
	}

	.voga-back-to-top {
		right: 1rem;
		bottom: 1rem;
	}

	.voga-back-to-top a {
		width: 2.75rem;
		height: 2.75rem;
	}
}

/* Final desktop/mobile alignment overrides */
.voga-hero {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.voga-hero-stage {
	min-height: calc(100vh - 88px);
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.voga-hero-overlay {
	padding: 0 !important;
}

.voga-hero-layout {
	width: 100% !important;
	max-width: none !important;
	min-height: calc(100vh - 88px);
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-top: clamp(5.15rem, 8.2vh, 6.9rem) !important;
	padding-right: max(2.5rem, calc((100vw - 1280px) / 2)) !important;
	padding-bottom: clamp(5rem, 8vh, 6.5rem) !important;
	padding-left: max(2.5rem, calc((100vw - 1160px) / 2)) !important;
	box-sizing: border-box;
}

.voga-hero-copy {
	padding-right: clamp(0.75rem, 1.2vw, 1.5rem);
}

.voga-hero-aside {
	padding-left: clamp(0.75rem, 1.2vw, 1.5rem);
}

.voga-hero-copy .has-2-xl-font-size {
	margin-top: 0 !important;
}

.voga-hero + .voga-manifesto,
.wp-site-blocks > .voga-hero + .voga-manifesto,
.wp-site-blocks > section.voga-hero + section.voga-manifesto {
	margin-top: 0 !important;
}

.voga-manifesto {
	/* padding-top: clamp(3rem, 5vw, 4.25rem) !important; */
}

.voga-cta {
	padding-top: clamp(4rem, 6vw, 5rem) !important;
	padding-bottom: clamp(4rem, 6vw, 5rem) !important;
}

.voga-cta-layout {
	width: min(1280px, calc(100vw - 5rem)) !important;
	max-width: min(1280px, calc(100vw - 5rem)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	column-gap: clamp(2.5rem, 4vw, 5rem);
}

.voga-cta-layout > .wp-block-column:first-child {
	padding-right: clamp(0.75rem, 1.5vw, 1.5rem);
}

@media (max-width: 781px) {
	.voga-hero-layout {
		width: 100% !important;
		max-width: 100% !important;
		padding-top: 4.75rem !important;
		padding-bottom: 2.75rem !important;
		padding-right: 1.5rem !important;
		padding-left: 1.5rem !important;
	}

	.voga-hero-copy,
	.voga-hero-aside,
	.voga-cta-layout > .wp-block-column:first-child {
		padding-right: 16px !important;
		padding-left: 16px !important;
		
	}

	.voga-manifesto {
		padding-top: 2.5rem !important;
	}

	.voga-cta {
		padding-top: 3.5rem !important;
		padding-bottom: 3.5rem !important;
	}

	.voga-cta-layout {
		width: min(100%, calc(100vw - 3rem)) !important;
		max-width: min(100%, calc(100vw - 3rem)) !important;
	}
}

/* Final mobile hero/header cleanup */
@media (max-width: 781px) {
	html { scroll-padding-top: 6rem; }
	html:has(body.admin-bar) { scroll-padding-top: calc(6rem + 46px); }

	header.wp-block-template-part,
	.voga-header,
	.wp-site-blocks > header.wp-block-template-part + .voga-hero {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	.voga-header > .alignwide {
		width: min(100%, calc(100vw - 1.5rem)) !important;
		max-width: min(100%, calc(100vw - 1.5rem)) !important;
		min-height: 64px !important;
		padding-top: 0.35rem !important;
		padding-bottom: 0.35rem !important;
	}

	.voga-header .wp-block-navigation {
		margin-left: auto;
	}

	.voga-header .wp-block-navigation__responsive-container-open {
		width: 2rem !important;
		height: 2rem !important;
	}

	.voga-header .wp-block-navigation__responsive-container-open svg,
	.voga-header .wp-block-navigation__responsive-container-open svg * {
		stroke: currentColor !important;
		stroke-width: 1.05 !important;
		vector-effect: non-scaling-stroke;
	}

	.voga-hero,
	.voga-hero-stage,
	.voga-hero-stage.alignfull,
	.voga-hero-photo img,
	.voga-hero-overlay {
		border-radius: 0 !important;
	}

	.voga-hero-stage {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		overflow: hidden !important;
		background: #12353d !important;
	}

	.voga-hero-stage.alignfull,
	.voga-hero-overlay {
		width: 100% !important;
		max-width: 100% !important;
	}

	.voga-hero-photo,
	.voga-hero-photo img {
		width: 100% !important;
		min-height: 100% !important;
	}

	.voga-hero-layout {
		width: min(100%, calc(100vw - 3rem)) !important;
		max-width: min(100%, calc(100vw - 3rem)) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-top: 3.5rem !important;
		padding-bottom: 5.5rem !important;
		padding-left: 16px !important;
		padding-right: 16px !important;
		row-gap: 2.25rem;
	}

	.voga-hero-copy > .voga-kicker {
		margin-bottom: 1rem !important;
	}

	.voga-hero-copy > .wp-block-heading {
		margin-bottom: 1.25rem !important;
		line-height: 1.04 !important;
	}

	.voga-hero-copy > .voga-lead {
		margin-bottom: 1.75rem !important;
		line-height: 1.75;
		max-width: 24rem;
	}

	.voga-hero-copy > .wp-block-buttons {
		margin-top: 0 !important;
		margin-bottom: 2rem !important;
		gap: 0.9rem;
	}

	.voga-hero-copy > * + * {
		margin-block-start: 0 !important;
	}

	.voga-hero-copy > .voga-hero-meta {
		margin-top: 0 !important;
	}

	.voga-hero-copy,
	.voga-hero-aside {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.voga-hero-aside {
		gap: 1.5rem;
		padding-bottom: 0.5rem !important;
	}

	.voga-footer .wp-block-navigation {
		gap: 0;
	}

	.voga-footer .wp-block-navigation-item__content,
	.voga-footer p a {
		display: inline-flex;
		align-items: center;
		min-height: 2.9rem;
		padding: 0.4rem 0;
	}

	.voga-footer p br {
		display: block;
		content: "";
		margin-bottom: 0.4rem;
	}
}

/* On phones the admin toolbar scrolls away; the site header stays at the viewport edge. */
@media (max-width: 600px) {
	body.admin-bar header.wp-block-template-part { top: 0; }
	html:has(body.admin-bar) { scroll-padding-top: 6rem; }
}

/* Definitive mobile menu overlay overrides */
@media (max-width: 781px) {
	html.has-modal-open .voga-header .wp-block-navigation__responsive-container,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open {
		position: fixed !important;
		inset: 0 !important;
		width: 100vw !important;
		height: 100dvh !important;
		min-height: 100dvh !important;
		display: flex !important;
		align-items: stretch !important;
		justify-content: stretch !important;
		padding: 0 !important;
		margin: 0 !important;
		background: var(--voga-mobile-menu-overlay) !important;
		backdrop-filter: blur(14px) !important;
		-webkit-backdrop-filter: blur(14px) !important;
		z-index: 99999 !important;
		overflow: hidden !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-close,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-close,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-close {
		display: grid !important;
		grid-template-rows: auto 1fr !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 100dvh !important;
		padding: 0 !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-dialog,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-dialog,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-dialog {
		display: grid !important;
		grid-template-rows: auto 1fr !important;
		position: relative !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 100dvh !important;
		margin: 0 !important;
		padding: calc(1rem + env(safe-area-inset-top)) 1.75rem calc(2rem + env(safe-area-inset-bottom)) !important;
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		background: var(--voga-mobile-menu-dialog) !important;
		overflow: hidden !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-close,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-close,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-close {
		display: inline-grid !important;
		place-items: center !important;
		position: absolute !important;
		top: calc(env(safe-area-inset-top) + 0.35rem) !important;
		right: 0.75rem !important;
		width: 2rem !important;
		min-width: 2rem !important;
		height: 2rem !important;
		min-height: 2rem !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 1px solid var(--voga-control-border) !important;
		border-radius: 999px !important;
		background: var(--voga-panel-bg-strong) !important;
		color: var(--voga-control-text) !important;
		box-shadow: none !important;
		margin-top: 11px !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-close svg,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-close svg,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-close svg {
		width: 14px !important;
		height: 14px !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-close svg *,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-close svg *,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-close svg * {
		stroke: currentColor !important;
		stroke-width: 1.05 !important;
		vector-effect: non-scaling-stroke;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content {
		/* display: grid !important; */
		place-items: center !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
		padding: 96px 1.1rem 4vh !important;
		overflow: hidden !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		align-items: center !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: auto !important;
		padding: 0 !important;
		gap: 2.32rem !important;
		list-style: none !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
		width: 100% !important;
		display: flex !important;
		justify-content: center !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: fit-content !important;
		max-width: 100% !important;
		min-height: 2.95rem !important;
		padding: 0.38rem 0.75rem !important;
		margin: 0 auto !important;
		font-family: var(--wp--preset--font-family--display) !important;
		font-size: clamp(1.28rem, 4.5vw, 1.66rem) !important;
		font-weight: 500 !important;
		line-height: 1.08 !important;
		letter-spacing: 0.01em !important;
		text-align: center !important;
		color: var(--voga-mobile-menu-text) !important;
		border-bottom: 0 !important;
		text-shadow: none !important;
		transition:
			color 0.24s ease,
			transform 0.24s ease,
			opacity 0.24s ease,
			background-color 0.24s ease !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item:last-child .wp-block-navigation-item__content,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item:last-child .wp-block-navigation-item__content,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item:last-child .wp-block-navigation-item__content {
		border-bottom: 0 !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:hover,
	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:focus-visible,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:hover,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:focus-visible,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:hover,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:focus-visible {
		color: #ffffff !important;
		transform: translateY(-1px) !important;
		opacity: 1 !important;
	}

	html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:active,
	body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:active,
	.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:active {
		transform: translateY(0) !important;
	}

html.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content::after,
body.has-modal-open .voga-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content::after,
.voga-header .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content::after {
		display: none !important;
	}
}

html[data-voga-theme="dark"] body {
	background:
		radial-gradient(circle at top left, rgba(244, 124, 92, 0.14), transparent 24%),
		radial-gradient(circle at top right, rgba(0, 124, 137, 0.14), transparent 28%),
		linear-gradient(180deg, #0d1518 0%, #10181b 100%);
	color: var(--voga-page-text);
}

html[data-voga-theme="dark"] .voga-hero-stage {
	--voga-hero-overlay-primary: linear-gradient(90deg, rgba(10, 26, 31, 0.82) 0%, rgba(10, 26, 31, 0.66) 34%, rgba(10, 26, 31, 0.24) 62%, rgba(10, 26, 31, 0.56) 100%);
	--voga-hero-overlay-secondary: linear-gradient(180deg, rgba(7, 20, 25, 0.12) 0%, rgba(7, 20, 25, 0.38) 100%);
	--voga-hero-title: #fff3e3;
	--voga-hero-body: rgba(255, 243, 227, 0.92);
	--voga-hero-outline: rgba(255, 243, 227, 0.72);
	--voga-hero-outline-hover: rgba(255, 243, 227, 0.96);
	--voga-hero-outline-bg: rgba(255, 255, 255, 0.04);
	--voga-hero-outline-bg-hover: rgba(255, 255, 255, 0.12);
	--voga-hero-card-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.07) 100%);
	--voga-hero-card-border: rgba(255, 243, 227, 0.34);
	--voga-hero-card-shadow: 0 22px 44px rgba(9, 25, 31, 0.18);
	--voga-hero-kicker: rgba(111, 175, 142, 0.92);
	--voga-hero-marquee: rgba(255, 243, 227, 0.78);
	--voga-hero-marquee-border: rgba(255, 255, 255, 0.16);
}

html[data-voga-theme="dark"] .voga-header .wp-block-site-title,
html[data-voga-theme="dark"] .voga-header .wp-block-site-title a,
html[data-voga-theme="dark"] .voga-header .wp-block-navigation-item__content,
html[data-voga-theme="dark"] .voga-header .wp-block-navigation-item__content:visited,
html[data-voga-theme="dark"] .voga-header .wp-block-navigation-submenu__toggle {
	color: rgba(245, 234, 219, 0.94) !important;
}

html[data-voga-theme="dark"] .voga-header .wp-block-navigation-item__content:hover,
html[data-voga-theme="dark"] .voga-header .wp-block-navigation-item__content:focus-visible {
	color: var(--voga-sand) !important;
}

html[data-voga-theme="dark"] .voga-utility-bar {
	border-left-color: rgba(111, 175, 142, 0.18);
}

html[data-voga-theme="dark"] .voga-utility-group {
	border-width: 1px;
	border-color: rgba(111, 175, 142, 0.2);
	background: rgba(18, 34, 40, 0.18);
	box-shadow: none;
}

html[data-voga-theme="dark"] .voga-theme-switcher {
	border-width: 1px;
}

html[data-voga-theme="dark"] .voga-language-switcher__link.is-current,
html[data-voga-theme="dark"] .voga-language-switcher__link.is-current:hover,
html[data-voga-theme="dark"] .voga-language-switcher__link.is-current:focus-visible,
html[data-voga-theme="dark"] .voga-language-switcher__link.is-current:active,
html[data-voga-theme="dark"] .voga-language-switcher__link[aria-current="true"],
html[data-voga-theme="dark"] .voga-language-switcher__link[aria-current="true"]:hover,
html[data-voga-theme="dark"] .voga-language-switcher__link[aria-current="true"]:focus-visible,
html[data-voga-theme="dark"] .voga-language-switcher__link[aria-current="true"]:active {
	background: rgba(52, 79, 83, 0.92);
	color: #fff8ef !important;
}

html[data-voga-theme="dark"] .voga-section:not(.voga-hero):not(.voga-about):not(.voga-cta),
html[data-voga-theme="dark"] .voga-manifesto,
html[data-voga-theme="dark"] .voga-process,
html[data-voga-theme="dark"] .voga-contact,
html[data-voga-theme="dark"] #servicos.voga-section,
html[data-voga-theme="dark"] #insights.voga-section {
	background: linear-gradient(180deg, rgba(16, 24, 27, 0.98) 0%, rgba(18, 30, 35, 0.96) 100%) !important;
	color: var(--voga-page-text) !important;
}

html[data-voga-theme="dark"] .voga-manifesto .wp-block-heading,
html[data-voga-theme="dark"] .voga-manifesto p,
html[data-voga-theme="dark"] .voga-process .wp-block-heading,
html[data-voga-theme="dark"] .voga-process p,
html[data-voga-theme="dark"] #servicos.voga-section .wp-block-heading,
html[data-voga-theme="dark"] #servicos.voga-section p,
html[data-voga-theme="dark"] #insights.voga-section .wp-block-heading,
html[data-voga-theme="dark"] #insights.voga-section p,
html[data-voga-theme="dark"] .voga-contact .wp-block-heading,
html[data-voga-theme="dark"] .voga-contact p {
	color: var(--voga-page-text);
}

html[data-voga-theme="dark"] .voga-kicker {
	color: rgba(111, 175, 142, 0.92);
}

html[data-voga-theme="dark"] .voga-card,
html[data-voga-theme="dark"] .voga-step,
html[data-voga-theme="dark"] .voga-post,
html[data-voga-theme="dark"] .voga-contact-card,
html[data-voga-theme="dark"] .voga-stat,
html[data-voga-theme="dark"] .voga-logo-panel {
	background: linear-gradient(180deg, rgba(20, 35, 41, 0.96) 0%, rgba(16, 29, 34, 0.94) 100%) !important;
	border-color: rgba(111, 175, 142, 0.18);
	box-shadow: 0 28px 80px rgba(4, 10, 13, 0.34);
	color: var(--voga-page-text);
}

html[data-voga-theme="dark"] .voga-card h3,
html[data-voga-theme="dark"] .voga-step h3,
html[data-voga-theme="dark"] .voga-post h3,
html[data-voga-theme="dark"] .voga-contact-card h3,
html[data-voga-theme="dark"] .voga-stat strong,
html[data-voga-theme="dark"] .voga-portfolio-content blockquote p,
html[data-voga-theme="dark"] .voga-portfolio-content cite {
	color: var(--voga-page-text);
}

html[data-voga-theme="dark"] .voga-logo-chip {
	border-color: rgba(111, 175, 142, 0.24);
	background: rgba(255, 255, 255, 0.05);
	color: var(--voga-sand);
}

html[data-voga-theme="dark"] .voga-process-line::after {
	border-top-color: rgba(111, 175, 142, 0.42);
}

html[data-voga-theme="dark"] .voga-contact {
	background: linear-gradient(180deg, rgba(14, 22, 26, 0) 0%, rgba(18, 34, 40, 0.82) 100%) !important;
}

html[data-voga-theme="dark"] .voga-contact-card {
	background: linear-gradient(180deg, rgba(18, 33, 39, 0.98) 0%, rgba(15, 28, 33, 0.96) 100%) !important;
	border-color: rgba(111, 175, 142, 0.16);
}

html[data-voga-theme="dark"] .voga-form-field {
	border-color: rgba(111, 175, 142, 0.18);
	background: rgba(255, 255, 255, 0.04);
}

html[data-voga-theme="dark"] .voga-form-label {
	color: rgba(111, 175, 142, 0.9);
}

html[data-voga-theme="dark"] .voga-form-input,
html[data-voga-theme="dark"] .voga-form-meta,
html[data-voga-theme="dark"] .voga-contact-note {
	color: rgba(245, 234, 219, 0.74);
}

html[data-voga-theme="dark"] .voga-about {
	background: linear-gradient(135deg, #12353d 0%, #0f272d 100%) !important;
}

html[data-voga-theme="dark"] .voga-cta {
	background: linear-gradient(135deg, #457B9D 0%, #1D3557 100%) !important;
}

html[data-voga-theme="dark"] .voga-footer {
	background: linear-gradient(180deg, #0c1417 0%, #10181b 100%) !important;
}

html[data-voga-theme="dark"] .wp-block-button.is-style-outline .wp-block-button__link,
html[data-voga-theme="dark"] .wp-block-button.is-style-outline > .wp-element-button {
	border-color: rgba(111, 175, 142, 0.34);
	color: var(--voga-page-text);
	background: rgba(255, 255, 255, 0.03);
}

html[data-voga-theme="dark"] .wp-block-button.is-style-outline .wp-block-button__link:hover,
html[data-voga-theme="dark"] .wp-block-button.is-style-outline .wp-block-button__link:focus-visible,
html[data-voga-theme="dark"] .wp-block-button.is-style-outline > .wp-element-button:hover,
html[data-voga-theme="dark"] .wp-block-button.is-style-outline > .wp-element-button:focus-visible {
	background: rgba(111, 175, 142, 0.1);
	border-color: rgba(111, 175, 142, 0.54);
}

html[data-voga-theme="dark"] .voga-header .wp-block-navigation__responsive-container-open {
	background: rgba(18, 34, 40, 0.86) !important;
	color: rgba(245, 234, 219, 0.96) !important;
	border-width: 1px !important;
}

html[data-voga-theme="dark"] .voga-header .wp-block-navigation__responsive-container-open:hover,
html[data-voga-theme="dark"] .voga-header .wp-block-navigation__responsive-container-open:focus-visible {
	background: rgba(24, 44, 51, 0.92) !important;
}

/* Direction field hero */
.voga-hero-abstract { position: relative; min-height: min(720px, 78vh); overflow: hidden; background: #fff8ef; }
.voga-hero-stage:not(.voga-hero-abstract) { position: relative; overflow: hidden; background: #fff8ef; }
.voga-hero-stage:not(.voga-hero-abstract)::after { content: ""; position: absolute; inset: -20%; z-index: 1; opacity: .36; pointer-events: none; background: repeating-radial-gradient(ellipse at 74% 42%, transparent 0 78px, rgba(0,124,137,.22) 80px 81px, transparent 83px 138px); transform: rotate(-12deg); animation: voga-orbit-drift 18s ease-in-out infinite alternate; }
.voga-hero-stage:not(.voga-hero-abstract) .voga-hero-photo { display: none !important; }
.voga-hero-stage:not(.voga-hero-abstract) .voga-hero-overlay { position: relative; z-index: 2; }
.voga-display, .wp-block-heading, .voga-card h3 { font-weight: 500 !important; }
.voga-hero-abstract::before { content: ""; position: absolute; inset: 0; background: #fff8ef; }
.voga-hero-abstract::after { content: ""; position: absolute; inset: -20%; opacity: .32; background-image: linear-gradient(115deg, transparent 0 48%, rgba(0,124,137,.18) 48.2% 48.5%, transparent 48.7%), linear-gradient(25deg, transparent 0 62%, rgba(244,124,92,.2) 62.2% 62.5%, transparent 62.7%); transform: rotate(-8deg); }
.voga-direction-field { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.voga-direction-field::before { content: ""; position: absolute; left: 8%; right: 8%; top: 42%; height: 18%; border-top: 1px solid rgba(0,124,137,.38); border-radius: 50%; filter: blur(.2px); opacity: .8; animation: voga-current-flow 7s ease-in-out infinite alternate; }
.voga-direction-field::after { content: ""; position: absolute; left: 14%; right: 14%; top: 46%; height: 24%; border-top: 1px solid rgba(244,124,92,.28); border-radius: 50%; opacity: .7; animation: voga-horizon-swell 10s ease-in-out -3s infinite alternate-reverse; }
.voga-direction-field::before, .voga-direction-field::after { display: none; }
.voga-points-canvas { display: none !important; }
.voga-wave-lines-canvas { position: absolute; inset: -8%; z-index: 2; width: 116%; height: 116%; opacity: .98; mix-blend-mode: multiply; transform-origin: 45% 75%; animation: voga-wave-northeast 6s linear infinite; }
.voga-points-canvas, .voga-wave-lines-canvas { display: none !important; }
.voga-orbit { position: absolute; left: 58%; top: 18%; width: 42vw; height: 42vw; max-width: 620px; max-height: 620px; border: 1px solid rgba(0,124,137,.22); border-radius: 50%; transform: rotate(-24deg); animation: voga-orbit-drift 18s ease-in-out infinite alternate; }
.voga-orbit-two { left: 64%; top: 28%; width: 29vw; height: 29vw; border-color: rgba(244,124,92,.34); animation-duration: 14s; animation-delay: -4s; }
.voga-orbit-three { left: 70%; top: 40%; width: 16vw; height: 16vw; border-color: rgba(111,175,142,.5); animation-duration: 11s; animation-delay: -2s; }
.voga-direction-node { position: absolute; width: 12px; height: 12px; border-radius: 50%; background: var(--voga-coral); box-shadow: 0 0 0 8px rgba(244,124,92,.12); animation: voga-node-pulse 4s ease-in-out infinite; }
.voga-node-one { left: 79%; top: 31%; }.voga-node-two { left: 68%; top: 62%; background: var(--voga-blue); animation-delay: -1.5s; }.voga-node-three { left: 88%; top: 68%; background: var(--voga-green); animation-delay: -2.5s; }
.voga-direction-arrow { position: absolute; left: 84%; top: 48%; color: var(--voga-coral); font-size: clamp(3rem, 7vw, 7rem); font-weight: 300; transform: rotate(-12deg); animation: voga-arrow-float 5s ease-in-out infinite; }
.voga-hero-overlay { position: relative; z-index: 2; min-height: min(720px, 78vh); display: flex; align-items: center; }
.voga-hero-copy > *, .voga-hero-aside > * { animation: voga-hero-enter .8s cubic-bezier(.2,.8,.2,1) both; }
.voga-hero-copy > .voga-kicker { letter-spacing: .24em; }
.voga-hero-copy > .wp-block-heading { max-width: 8ch; letter-spacing: -.055em; animation: voga-hero-enter .8s cubic-bezier(.2,.8,.2,1) both !important; }
.voga-hero-copy > .voga-lead { max-width: 34rem; font-size: clamp(1.1rem, 1.7vw, 1.45rem); line-height: 1.45; }
.voga-hero-copy > .wp-block-buttons { margin-top: 2rem; }
.voga-hero-aside { perspective: 900px; }
.voga-hero-aside > * { animation: voga-card-float 7s ease-in-out infinite; }
.voga-hero-aside > *:nth-child(2) { animation-delay: -3.2s; }
.voga-hero-aside > * { animation: none !important; }
.voga-hero-note { transform: none !important; }
.voga-glass-card { backdrop-filter: blur(18px); border: 1px solid rgba(255,255,255,.34); box-shadow: 0 24px 70px rgba(31,42,46,.14); }
.voga-hero-abstract::before { background: #fff8ef; animation: none !important; }
.voga-hero-abstract::before { animation: none !important; }
@keyframes voga-title-reveal { from { opacity: 0; clip-path: inset(0 0 100% 0); transform: translateY(24px); } to { opacity: 1; clip-path: inset(0 0 0 0); transform: translateY(0); } }
@keyframes voga-card-float { 0%,100% { transform: translateY(0) rotate(2deg); } 50% { transform: translateY(-9px) rotate(1deg); } }
@keyframes voga-hero-atmosphere { from { background-position: 0% 50%; } to { background-position: 100% 46%; } }
html[data-voga-theme="dark"] .voga-hero-abstract::before { background: #10181b; }
.voga-hero-copy > *:nth-child(2) { animation-delay: .08s; }.voga-hero-copy > *:nth-child(3) { animation-delay: .16s; }.voga-hero-copy > *:nth-child(4) { animation-delay: .24s; }.voga-hero-copy > *:nth-child(5) { animation-delay: .32s; }
.voga-direction-card { transform: rotate(2deg); }.voga-hero-note { transform: rotate(-2deg); }
.voga-direction-number { margin: .8rem 0; color: var(--voga-coral); font-size: clamp(3rem, 7vw, 6rem); font-weight: 700; line-height: .85; letter-spacing: -.08em; }
@keyframes voga-orbit-drift { from { transform: rotate(-24deg) translate3d(-8px, 4px, 0); } to { transform: rotate(-16deg) translate3d(14px, -12px, 0); } }
@keyframes voga-node-pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.35); } }
@keyframes voga-arrow-float { 0%,100% { transform: translate(0,0) rotate(-12deg); } 50% { transform: translate(8px,-10px) rotate(-8deg); } }
@keyframes voga-current-flow { 0% { transform: translate3d(-4%, 0, 0) scaleY(.72) rotate(-1deg); } 50% { transform: translate3d(2%, 9px, 0) scaleY(1.16) rotate(1deg); } 100% { transform: translate3d(6%, -3px, 0) scaleY(.9) rotate(0deg); } }
@keyframes voga-wave-northeast { 0% { transform: scaleY(1.42) translate3d(-18px, 22px, 0) rotate(-.8deg); } 50% { transform: scaleY(1.42) translate3d(2px, -4px, 0) rotate(.2deg); } 100% { transform: scaleY(1.42) translate3d(24px, -32px, 0) rotate(.8deg); } }
@keyframes voga-hero-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 780px) { .voga-hero-abstract, .voga-hero-overlay { min-height: 760px; }.voga-orbit { left: 35%; top: 48%; width: 85vw; height: 85vw; }.voga-orbit-two { left: 50%; top: 56%; width: 58vw; height: 58vw; }.voga-orbit-three { left: 62%; top: 64%; width: 32vw; height: 32vw; }.voga-direction-arrow { left: 72%; top: 62%; }.voga-hero-overlay { align-items: flex-start; padding-top: 5rem; }.voga-hero-aside { margin-top: 2rem; } }
html[data-voga-theme="dark"] .voga-points-canvas { opacity: 1; mix-blend-mode: screen; }
html[data-voga-theme="dark"] .voga-wave-lines-canvas { opacity: 1; mix-blend-mode: screen; }
@media (prefers-reduced-motion: reduce) { .voga-hero-copy > *, .voga-hero-aside > *, .voga-orbit, .voga-direction-node, .voga-direction-arrow, .voga-direction-field::before, .voga-direction-field::after, .voga-wave-lines-canvas, .voga-hero-abstract::before { animation: none !important; } .voga-points-canvas { opacity: .55; } }

/* Theme and hero cleanup */
.voga-brand,
.voga-brand:hover,
.voga-brand:focus-visible,
.voga-brand:active { width: auto; gap: .18em; color: #14252b; font-family: Helvetica, Arial, sans-serif; font-size: clamp(1.15rem, 1.7vw, 1.55rem); font-weight: 400; letter-spacing: -.045em; text-decoration: none; }
.voga-brand-word { display: inline-block; white-space: nowrap; }
.voga-brand-mark { display: inline-block; position: relative; width: clamp(170px, 13vw, 220px); height: 1.5em; overflow: hidden; vertical-align: middle; }
.voga-brand-mark img { position: absolute; left: 0; width: clamp(190px, 18vw, 250px); max-width: none; height: auto; image-rendering: auto; transform: translateX(-48%); }
.voga-brand-dark { display: none !important; }
html[data-voga-theme="dark"] .voga-brand-light { display: none !important; }
html[data-voga-theme="dark"] .voga-brand-dark { display: block !important; }
html[data-voga-theme="dark"] .voga-brand { color: #fff !important; }
.voga-hero-stage::after,
.voga-hero-stage:not(.voga-hero-abstract)::after,
.voga-hero-abstract::after,
.voga-orbit,
.voga-orbit-two,
.voga-orbit-three,
.voga-hero-photo,
.voga-hero-photo img {
	display: none !important;
}
.voga-hero-stage,
.voga-hero-abstract {
	background-image: none !important;
}
.voga-hero-copy > .voga-lead {
	color: var(--voga-hero-body, #233238) !important;
}
html[data-voga-theme="dark"] .voga-hero-stage,
html[data-voga-theme="dark"] .voga-hero-abstract {
	background: #10181b !important;
	background-image: none !important;
}
html[data-voga-theme="dark"] .voga-hero-stage::before,
html[data-voga-theme="dark"] .voga-hero-stage::after,
html[data-voga-theme="dark"] .voga-hero-abstract::before,
html[data-voga-theme="dark"] .voga-hero-abstract::after {
	background: transparent !important;
	opacity: 0 !important;
}
html[data-voga-theme="dark"] .voga-hero-copy .wp-block-heading,
html[data-voga-theme="dark"] .voga-hero-copy p {
	color: var(--voga-hero-title) !important;
}
html[data-voga-theme="dark"] .voga-hero-copy .voga-lead {
	color: var(--voga-hero-body) !important;
}
@media (max-width: 780px) {
	html:not([data-voga-theme="dark"]) .voga-hero-copy,
	html:not([data-voga-theme="dark"]) .voga-hero-copy p,
	html:not([data-voga-theme="dark"]) .voga-hero-copy .voga-lead {
		color: #233238 !important;
	}
	.voga-brand { width: 148px; }
	.voga-brand-mark { width: 170px !important; min-width: 170px; height: 1.5em; }
}

/* Premium editorial finish */
:root {
	--voga-content-width: 1180px;
	--voga-section-space: clamp(4.5rem, 9vw, 8rem);
}
.voga-section {
	position: relative;
	padding-top: var(--voga-section-space);
	padding-bottom: var(--voga-section-space);
}
.voga-section > .alignwide,
.voga-section > .alignfull > * {
	max-width: var(--voga-content-width);
}
.voga-section .wp-block-heading {
	letter-spacing: -.035em;
	line-height: 1.08;
}
.voga-header {
	box-shadow: 0 1px 0 rgba(22, 38, 43, .08);
	backdrop-filter: blur(14px);
}
.voga-header .wp-block-navigation-item__content {
	font-size: .86rem;
	letter-spacing: .01em;
}
@media (min-width: 782px) {
	.voga-header .wp-block-navigation-item__content {
		font-size: 1rem;
	}
}
.voga-header .voga-nav-cta .wp-block-navigation-item__content {
	box-shadow: 0 8px 20px rgba(244, 124, 92, .18);
	transition: transform .2s ease, box-shadow .2s ease;
}
.voga-header .voga-nav-cta .wp-block-navigation-item__content:hover,
.voga-header .voga-nav-cta .wp-block-navigation-item__content:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 12px 26px rgba(244, 124, 92, .26);
}
.voga-services-cards > .wp-block-heading {
	max-width: 18ch;
	font-size: clamp(2rem, 4vw, 3.25rem);
}
#servicos .voga-service-grid .voga-card {
	border: 1px solid rgba(22, 38, 43, .1);
	border-top-width: 3px;
	box-shadow: 0 18px 40px rgba(22, 38, 43, .055);
}
#servicos .voga-service-grid .voga-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 24px 54px rgba(22, 38, 43, .1);
}
.voga-cta {
	border-radius: 2rem;
	box-shadow: 0 20px 48px rgba(22, 38, 43, .08);
}
@media (max-width: 780px) {
	.voga-section { padding-top: 4rem; padding-bottom: 4rem; }
	.voga-header { box-shadow: 0 1px 0 rgba(22, 38, 43, .12); }
	.voga-services-cards > .wp-block-heading { max-width: 15ch; }
}

/* Manifesto metrics: balanced internal rhythm across all cards. */
.voga-stats-grid {
	grid-auto-rows: minmax(13.5rem, 1fr);
	align-items: stretch;
}
.voga-stats-grid .voga-stat {
	min-height: 0;
	padding: clamp(1.35rem, 2.2vw, 2rem);
	gap: 0;
	border-radius: 1.45rem;
	border: 1px solid rgba(22, 38, 43, .08);
}
.voga-stats-grid .voga-stat .voga-kicker {
	margin-bottom: 1.25rem;
}
.voga-stats-grid .voga-stat strong {
	line-height: .95;
	margin-bottom: 1rem;
}
.voga-stats-grid .voga-stat p {
	margin-top: .25rem;
	line-height: 1.45;
}
@media (max-width: 780px) {
	.voga-stats-grid { grid-auto-rows: auto; }
	.voga-stats-grid .voga-stat { min-height: 12rem; }
}

/* Navigation alive: unified scroll-storytelling layer. */
.voga-hero {
	--voga-scroll: 0;
	--voga-pointer-x: 0;
	--voga-pointer-y: 0;
	position: relative;
	min-height: 130vh;
	background: #d8ece9;
}
.voga-hero-stage.voga-hero-abstract {
	position: sticky !important;
	top: 0;
	min-height: 100vh !important;
	height: 100vh;
	overflow: hidden;
	background:
	radial-gradient(circle at 76% 26%, rgba(123, 215, 222, .28), transparent 28%),
	linear-gradient(180deg, #fff6eb 0%, #f6eee2 40%, #d8ece9 84%, #d8ece9 100%) !important;
}
.voga-hero-stage::before,
.voga-hero-stage::after,
.voga-hero-abstract::before,
.voga-hero-abstract::after,
.voga-hero-photo,
.voga-hero-photo img { display: none !important; }
.voga-direction-field { position: absolute; inset: 0; z-index: 2; overflow: hidden; pointer-events: none; }
.voga-tide-map { display: none !important; }
.voga-direction-field .voga-compass-rose, .voga-direction-field .voga-coordinate, .voga-direction-field .voga-route-line { z-index: 2; }
.voga-process-line { --voga-process-progress: 0; }
.voga-process-line::before { transform-origin: left center; transform: scaleX(var(--voga-process-progress)); transition: transform .1s linear; }
[data-voga-reveal] { will-change: transform, opacity; }
@media (max-width: 780px), (prefers-reduced-motion: reduce) { [data-voga-reveal] { opacity: 1 !important; transform: none !important; } }
.voga-tide-map path:nth-child(3n) { stroke: #0e789e; opacity: .78; }.voga-tide-map path:nth-child(4n) { stroke: #0c6c91; opacity: .7; }
.voga-tide-map path:nth-child(2n) { transform: translate(-22px, 2px); }
.voga-tide-map path:nth-child(3n) { transform: translate(31px, -3px); }
.voga-tide-map path:nth-child(5n) { transform: translate(-14px, 5px); }
.voga-tide-map path:nth-child(7n) { transform: translate(19px, -2px); }
.voga-tide-map .voga-tide-shape {
	stroke: none !important;
	transform: scaleY(.9) !important;
	transform-box: fill-box;
	transform-origin: center bottom;
}
.voga-tide-map .voga-tide-shape-one { fill: rgba(7, 95, 146, .82); }
.voga-tide-map .voga-tide-shape-two { fill: rgba(12, 119, 158, .72); }
.voga-tide-map .voga-tide-shape-three { fill: rgba(44, 159, 183, .6); }
.voga-tide-map .voga-tide-shape-four { fill: rgba(109, 201, 207, .52); }
.voga-tide-map-echo-one { opacity: .28; transform: translate3d(96px, 10px, 0) scale(1.012); }
.voga-tide-map-echo-two { opacity: .2; transform: translate3d(-112px, 20px, 0) scale(1.024); }
.voga-route-line { display: none !important; }
.voga-globe { position: absolute; width: clamp(16rem, 31vw, 33rem); right: clamp(-5rem, 2vw, 2rem); top: 12%; overflow: visible; fill: none; stroke: rgba(0, 72, 108, .56); stroke-width: 1.1; transform: rotate(calc(-11deg + var(--voga-scroll) * 30deg)) translate3d(calc(var(--voga-pointer-x) * 22px), calc(var(--voga-pointer-y) * 18px), 0); transition: transform .1s linear; }
.voga-globe > circle, .voga-globe ellipse, .voga-globe path { fill: none !important; }.voga-globe .voga-route { stroke: #f47c5c; stroke-width: 2; }.voga-globe g > circle { fill: #007c89 !important; stroke: #f7f0e7; stroke-width: 1.5; }
.voga-compass-rose { position: absolute; width: clamp(15rem, 29vw, 30rem); right: clamp(-4rem, 3vw, 3rem); top: 9%; height: auto; object-fit: contain; opacity: .9; filter: invert(28%) sepia(29%) saturate(1284%) hue-rotate(144deg) brightness(88%) contrast(92%); transform: rotate(calc(-8deg + var(--voga-scroll) * 22deg)) translate3d(calc(var(--voga-pointer-x) * 18px), calc(var(--voga-pointer-y) * 14px), 0); transition: transform .1s linear; }
.voga-coordinate { position: absolute; color: rgba(0, 74, 84, .74); font-family: var(--wp--preset--font-family--mono, monospace); font-size: .68rem; letter-spacing: .16em; opacity: calc(.78 - var(--voga-scroll) * .38); transition: opacity .24s ease-out, transform .14s linear; }
.voga-coordinate-one { right: 9%; top: 15%; transform: translateY(calc(var(--voga-scroll) * -80px)); }
.voga-coordinate-two { left: 61%; bottom: 17%; color: rgba(244, 124, 92, .9); transform: translateY(calc(var(--voga-scroll) * 44px)); }
.voga-direction-node { position: absolute; width: 10px; height: 10px; border-radius: 50%; background: #f47c5c; box-shadow: 0 0 0 8px rgba(244, 124, 92, .14); }
.voga-node-one { left: 67%; top: 35%; }.voga-node-two { left: 79%; top: 62%; background: #007c89; box-shadow: 0 0 0 8px rgba(0, 124, 137, .13); }.voga-node-three { left: 55%; top: 74%; background: #6faf8e; box-shadow: 0 0 0 8px rgba(111, 175, 142, .14); }
.voga-route-line { position: absolute; width: 46%; height: 32%; left: 52%; top: 43%; border-top: 1px dashed rgba(0, 124, 137, .66); border-radius: 52% 0 0; transform: rotate(-19deg) scaleX(calc(.58 + var(--voga-scroll) * .42)); transform-origin: left center; }
.voga-hero-overlay { position: relative; z-index: 3; min-height: 100vh !important; display: flex; align-items: center; }
.voga-hero-copy, .voga-hero-aside { transition: opacity .18s linear, transform .18s linear; }
.voga-hero-copy { opacity: calc(1 - var(--voga-scroll) * .38); transform: translateY(calc(var(--voga-scroll) * -48px)); }
.voga-hero-aside { opacity: calc(1 - var(--voga-scroll) * .52); transform: translate3d(calc(var(--voga-scroll) * 54px), calc(var(--voga-scroll) * -18px), 0); }
.voga-hero-copy > *, .voga-hero-aside > * { animation: voga-navigate-in .85s cubic-bezier(.2,.8,.2,1) both !important; }
.voga-hero-copy > *:nth-child(2) { animation-delay: .09s !important; }.voga-hero-copy > *:nth-child(3) { animation-delay: .18s !important; }.voga-hero-copy > *:nth-child(4) { animation-delay: .27s !important; }.voga-hero-copy > *:nth-child(5) { animation-delay: .36s !important; }
.voga-glass-card { background: linear-gradient(135deg, rgba(255,255,255,.54), rgba(246, 253, 251, .2)) !important; border: 1px solid rgba(0, 89, 99, .16) !important; box-shadow: 0 24px 60px rgba(13, 73, 80, .11) !important; backdrop-filter: blur(14px); }
.voga-direction-number { color: #f47c5c; }
@keyframes voga-navigate-in { from { opacity: 0; transform: translateY(1.25rem); } to { opacity: 1; transform: translateY(0); } }

.voga-section:not(.voga-hero) { overflow: hidden; }
.voga-section:not(.voga-hero)::after { display: none !important; }
.voga-section > * { position: relative; z-index: 1; }

/* Keep the same content rail on the front end and inside Gutenberg. */
.voga-section > .alignwide,
.voga-section > .wp-block-group.alignwide,
.voga-section > .alignfull > .alignwide,
.voga-section > .alignfull > .wp-block-group.alignwide,
.editor-styles-wrapper .voga-section > .alignwide,
.editor-styles-wrapper .voga-section > .wp-block-group.alignwide,
.editor-styles-wrapper .voga-section > .alignfull > .alignwide,
.editor-styles-wrapper .voga-section > .alignfull > .wp-block-group.alignwide {
	box-sizing: border-box;
	width: min(1680px, calc(100% - 5rem));
	max-width: min(1680px, calc(100% - 5rem));
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Prevent the editorial grids from becoming narrower or shifting right in the editor. */
.voga-manifesto-layout,
.voga-process-intro,
.voga-about-layout,
.editor-styles-wrapper .voga-manifesto-layout,
.editor-styles-wrapper .voga-process-intro,
.editor-styles-wrapper .voga-about-layout {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.voga-manifesto-layout > .wp-block-column,
.voga-process-intro > .wp-block-column,
.voga-about-layout > .wp-block-column,
.editor-styles-wrapper .voga-manifesto-layout > .wp-block-column,
.editor-styles-wrapper .voga-process-intro > .wp-block-column,
.editor-styles-wrapper .voga-about-layout > .wp-block-column {
	min-width: 0;
}

/* Gutenberg does not run the front-end reveal script; keep all content visible while editing. */
.editor-styles-wrapper .voga-reveal-ready > .alignwide,
.editor-styles-wrapper .voga-reveal-ready > .wp-block-group.alignwide,
.editor-styles-wrapper .voga-reveal-ready > .alignfull > *,
.editor-styles-wrapper .voga-reveal-ready > .wp-block-group.alignfull > * {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

.editor-styles-wrapper [data-voga-reveal],
.editor-styles-wrapper .voga-hero-copy,
.editor-styles-wrapper .voga-hero-aside {
	opacity: 1 !important;
	transform: none !important;
}
.voga-reveal-ready > .alignwide, .voga-reveal-ready > .wp-block-group.alignwide { opacity: 0; transform: translateY(1.5rem); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
.voga-reveal-ready.is-revealed > .alignwide, .voga-reveal-ready.is-revealed > .wp-block-group.alignwide { opacity: 1; transform: none; }
html[data-voga-theme="dark"] .voga-hero-stage.voga-hero-abstract { background: radial-gradient(circle at 76% 28%, rgba(18, 141, 150, .22), transparent 28%), linear-gradient(180deg, #121e23 0%, #0b3640 46%, #07515d 82%, #07515d 100%) !important; }
html[data-voga-theme="dark"] .voga-hero { background: #07515d; }
html[data-voga-theme="dark"] .voga-tide-map { stroke: #5ee7e1; opacity: .52; } html[data-voga-theme="dark"] .voga-tide-map-echo-one { opacity: .32; } html[data-voga-theme="dark"] .voga-tide-map-echo-two { opacity: .24; } html[data-voga-theme="dark"] .voga-globe { stroke: rgba(132, 233, 227, .58); } html[data-voga-theme="dark"] .voga-coordinate { color: rgba(220, 250, 245, .7); }
html[data-voga-theme="dark"] .voga-tide-map .voga-tide-shape-one { fill: rgba(5, 34, 40, .97); }
html[data-voga-theme="dark"] .voga-tide-map .voga-tide-shape-two { fill: rgba(8, 43, 49, .91); }
html[data-voga-theme="dark"] .voga-tide-map .voga-tide-shape-three { fill: rgba(12, 50, 55, .83); }
html[data-voga-theme="dark"] .voga-tide-map .voga-tide-shape-four { fill: rgba(18, 58, 62, .74); }
@media (max-width: 780px) { .voga-hero { min-height: auto; }.voga-hero-stage.voga-hero-abstract { position: relative !important; height: auto; min-height: 48rem !important; }.voga-hero-overlay { min-height: 48rem !important; align-items: flex-start; padding-top: 5rem; }.voga-globe { width: 21rem; right: -7rem; top: 35%; opacity: .56; }.voga-coordinate-two { display: none; }.voga-hero-copy, .voga-hero-aside { opacity: 1; transform: none; }.voga-route-line { left: 43%; top: 61%; width: 66%; }.voga-section:not(.voga-hero)::after { width: 18rem; height: 18rem; right: -10rem; bottom: -11rem; } }
@media (prefers-reduced-motion: reduce) { .voga-hero { min-height: auto; }.voga-hero-stage.voga-hero-abstract { position: relative !important; height: auto; min-height: 46rem !important; }.voga-hero-copy, .voga-hero-aside { opacity: 1; transform: none; }.voga-hero-copy > *, .voga-hero-aside > * { animation: none !important; }.voga-reveal-ready > .alignwide, .voga-reveal-ready > .wp-block-group.alignwide { opacity: 1; transform: none; transition: none; } }

/* Staging home adjustments. */
.voga-hero-layout { justify-content: flex-start; }
.voga-hero-copy { flex-basis: min(100%, 48rem) !important; }
.voga-stats-grid .voga-stat { display: flex; flex-direction: column; justify-content: flex-start; }
.voga-stats-grid .voga-stat .voga-kicker { margin-bottom: .65rem; }
.voga-stats-grid .voga-stat strong { margin-bottom: .45rem; }
.voga-stats-grid .voga-stat p { margin: 0; }
.voga-case { padding: clamp(4rem, 8vw, 8rem) 1.5rem; background: #f1faee; color: #1d3557; }
.voga-case-inner { max-width: 1160px; margin-inline: auto; }
.voga-case-header { max-width: 760px; margin-bottom: 3rem; }
.voga-case-header h2 { font-family: var(--voga-font-display); font-size: clamp(2.5rem, 5vw, 5rem); line-height: 1.05; margin: .7rem 0 1.2rem; }
.voga-case-header > p:last-child { font-size: clamp(1.1rem, 1.7vw, 1.35rem); line-height: 1.6; }
.voga-case-steps { display: grid; gap: 1.5rem; }
.voga-case-step { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(1.5rem, 5vw, 5rem); padding: clamp(1.5rem, 4vw, 3rem); border-radius: 1.5rem; background: #fff; }
.voga-case-step > div { max-width: 33rem; }
.voga-case-index { font-family: var(--voga-font-display); font-weight: 700; letter-spacing: .12em; font-size: .82rem; color: #007c89; }
.voga-case-step p, .voga-case-step li { font-size: 1.12rem; line-height: 1.6; }
.voga-case-step ul { padding-left: 1.2rem; }
.voga-case-step li + li { margin-top: .8rem; }
.voga-case-step figure { margin: 0; }
.voga-case-step img { display: block; width: 100%; height: auto; border-radius: 1rem; }
.voga-case-step blockquote { margin: 1.5rem 0 0; padding-left: 1.25rem; border-left: 3px solid #007c89; }
.voga-case-step blockquote p { font-size: .98rem; }
.voga-client-flip { position: relative; min-height: 9rem; perspective: 800px; }
.voga-client-logo { position: absolute; inset: 0; display: grid; place-items: center; opacity: 0; visibility: hidden; transform: rotateY(-90deg); transition: transform .55s ease, opacity .55s ease, visibility .55s; }
.voga-client-logo.is-active { opacity: 1; visibility: visible; transform: rotateY(0); }
.voga-logo-placeholder { display: grid; place-items: center; width: 100%; min-height: 8rem; padding: 1rem; border: 1px dashed currentColor; border-radius: .8rem; font-size: .9rem; text-align: center; }
@media (max-width: 780px) { .voga-case-step { grid-template-columns: 1fr; }.voga-case-header { margin-bottom: 2rem; } }
@media (prefers-reduced-motion: reduce) { .voga-client-logo { transition: none; transform: none; } }

/* LineScaping accents beyond the hero, without changing the content structure. */
#servicos .voga-service-grid .voga-card { position: relative; overflow: hidden; border-radius: 0 !important; border-top-width: 2px; background: linear-gradient(145deg, rgba(255,255,255,.8), rgba(239,248,245,.62)) !important; }
#servicos .voga-service-grid .voga-card::after { content: ''; position: absolute; width: 135%; height: 5.5rem; left: -18%; bottom: -3.75rem; opacity: .35; pointer-events: none; background: repeating-radial-gradient(ellipse at 45% 115%, transparent 0 9px, rgba(0, 124, 137, .35) 10px 11px, transparent 12px 17px); transform: rotate(-3deg); }
#servicos .voga-service-grid .voga-card > * { position: relative; z-index: 1; }
.voga-process-line { position: relative; }
.voga-process-line::before { content: ''; position: absolute; z-index: 0; left: 4%; right: 4%; top: 2.25rem; border-top: 1px dashed rgba(0, 124, 137, .46); }
.voga-process-line .voga-step { position: relative; z-index: 1; border-radius: 0 !important; border-top: 0; box-shadow: 0 14px 30px rgba(11, 71, 79, .06); }
.voga-process-line .voga-step::before { content: ''; display: block; width: .6rem; height: .6rem; margin-bottom: 1rem; border-radius: 50%; background: var(--voga-coral); box-shadow: 0 0 0 .35rem rgba(244,124,92,.12); }
.voga-cta { border-radius: 0 !important; }
@media (max-width: 780px) { .voga-process-line::before { display: none; } #servicos .voga-service-grid .voga-card { border-radius: 0 !important; } }

/* Let the tide field dissolve into the warm sand of the following section. */
.voga-hero-stage.voga-hero-abstract::after {
	display: block !important;
	content: '';
	position: absolute;
	inset: auto 0 0;
	z-index: 1;
	height: 34%;
	pointer-events: none;
	background: linear-gradient(to bottom, rgba(255,248,239,0), #fff8ef 92%) !important;
	opacity: 1 !important;
	transform: none !important;
	background-image: linear-gradient(to bottom, rgba(255,248,239,0), #fff8ef 92%) !important;
}
.voga-direction-field .voga-tide-map { mask-image: linear-gradient(to bottom, #000 0 50%, rgba(0,0,0,.88) 68%, rgba(0,0,0,.42) 85%, transparent 100%); }
html[data-voga-theme="dark"] .voga-hero-stage.voga-hero-abstract::after { background: linear-gradient(to bottom, rgba(16,24,27,0), #10181b 92%) !important; }

/* Merge the hero into the first section, in both colour modes. */
.voga-hero-stage.voga-hero-abstract::after { height: 82%; background: linear-gradient(to bottom, rgba(216,236,233,0), rgba(216,236,233,.72) 62%, #d8ece9 100%) !important; }
.voga-manifesto { background: #d8ece9 !important; }
html[data-voga-theme="dark"] .voga-hero-stage.voga-hero-abstract::after { background: linear-gradient(to bottom, rgba(7,81,93,0), rgba(7,81,93,.72) 62%, #07515d 100%) !important; }
html[data-voga-theme="dark"] .voga-section.voga-manifesto:not(.voga-hero):not(.voga-about):not(.voga-cta) { background: #07515d !important; }

/* The form lives exclusively on the dedicated contact page. */
body.home .voga-contact { display: none !important; }

/* Keep the desktop header on the same horizontal grid as the page sections. */
@media (min-width: 782px) {
	.voga-header > .alignwide {
		width: min(var(--voga-content-width), calc(100vw - 5rem)) !important;
		max-width: min(var(--voga-content-width), calc(100vw - 5rem)) !important;
		margin-inline: auto !important;
	}
}

/* Final palette and motion overrides for legacy inline pattern styles. */
.voga-manifesto { background-color: #F1FAEE !important; }
.voga-about { background-color: #457B9D !important; color: #F1FAEE !important; }
.voga-portfolio, .voga-footer { background-color: #1D3557 !important; color: #F1FAEE !important; }
.voga-process { background: linear-gradient(135deg, #F1FAEE 0%, #F1FAEE 40%, #A8DADC 100%) !important; }
.voga-cta {
	background: #A8DADC !important;
	background-color: #A8DADC !important;
	color: #1D3557 !important;
}
.voga-cta .wp-block-heading,
.voga-cta p,
.voga-cta .voga-kicker {
	color: #1D3557 !important;
}
.voga-cta .wp-block-button__link {
	background: #1D3557 !important;
	color: #F1FAEE !important;
}
html[data-voga-theme="dark"] .voga-cta {
	background: linear-gradient(135deg, #457B9D 0%, #1D3557 100%) !important;
	color: #F1FAEE !important;
}
html[data-voga-theme="dark"] .voga-cta .wp-block-heading,
html[data-voga-theme="dark"] .voga-cta p,
html[data-voga-theme="dark"] .voga-cta .voga-kicker {
	color: #F1FAEE !important;
}
html[data-voga-theme="dark"] .voga-cta .wp-block-button__link {
	background: #F1FAEE !important;
	color: #1D3557 !important;
}
.voga-about .wp-block-button__link { border-color: #F1FAEE !important; color: #F1FAEE !important; }
.voga-footer a, .voga-footer .wp-block-site-title { color: #F1FAEE !important; }

html[data-voga-theme="dark"] #instagram .wp-block-heading,
html[data-voga-theme="dark"] #instagram p:not(.voga-kicker),
html[data-voga-theme="dark"] #instagram a {
	color: #F1FAEE !important;
}

/* Services content rhythm: duration, offer and long-form description. */
#servicos .voga-services-intro { max-width: 42rem; margin: 1rem 0 2.8rem; font-size: clamp(1.05rem, 1.5vw, 1.25rem); color: color-mix(in srgb, var(--voga-ink) 76%, transparent); }
#servicos .voga-service-grid { align-items: start !important; gap: clamp(1rem, 2vw, 1.5rem); }
#servicos .voga-card { align-self: start !important; min-height: 31rem; height: auto; padding: clamp(2rem, 3vw, 3rem); border-top-width: 4px; border-top-color: var(--voga-coral); }
#servicos .voga-card:nth-child(2) { border-top-color: var(--voga-blue); }
#servicos .voga-card:nth-child(3) { border-top-color: var(--voga-deep); }
#servicos .voga-service-duration { margin: 0 0 2.7rem; color: var(--voga-blue); font-family: var(--voga-font-display); font-size: .9rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
#servicos .voga-card:nth-child(3) .voga-service-duration { color: var(--voga-coral); }
#servicos .voga-card .voga-kicker { margin-bottom: .45rem; }
#servicos .voga-card h3 { margin: 0 0 1.4rem; color: var(--voga-deep); font-size: clamp(1.55rem, 2.3vw, 2.15rem); line-height: 1.08; }
#servicos .voga-service-description { margin: 0; max-width: 34rem; line-height: 1.82; }
#servicos .voga-service-action { margin-top: 2rem; }
#servicos .voga-contact-note { max-width: 56rem; margin-top: 2rem; font-size: .92rem; color: color-mix(in srgb, var(--voga-ink) 70%, transparent); }
#servicos .voga-service-card { display: flex; flex-direction: column; min-height: 31rem; }
#servicos .voga-service-card h3 { min-height: 2.2em; }
#servicos .voga-service-description { min-height: 6.5rem; font-size: 1rem; }
#servicos .voga-service-expand { width: 100%; box-sizing: border-box; margin-top: 1.75rem; border-top: 1px solid color-mix(in srgb, var(--voga-blue) 25%, transparent); }
#servicos .voga-service-expand summary { position: relative; display: block; width: 100%; box-sizing: border-box; padding: 1rem 3rem .35rem 0; color: var(--voga-blue); cursor: pointer; font-family: var(--voga-font-display); font-size: .92rem; font-weight: 600; list-style: none; }
#servicos .voga-service-expand summary::-webkit-details-marker { display: none; }
#servicos .voga-service-expand summary span { position: absolute; top: .72rem; right: 0; display: grid; place-items: center; width: 1.45rem; height: 1.45rem; border: 1px solid currentColor; border-radius: 50%; color: inherit; font-size: 0; line-height: 1; transition: background-color .2s ease, color .2s ease; }
#servicos .voga-service-expand summary span::before,
#servicos .voga-service-expand summary span::after { content: ''; position: absolute; width: .6rem; height: 1.5px; border-radius: 99px; background: currentColor; transition: transform .2s ease; }
#servicos .voga-service-expand summary span::after { transform: rotate(90deg); }
#servicos .voga-service-expand[open] summary span { color: var(--voga-sand); background: var(--voga-blue); }
#servicos .voga-service-expand[open] summary span::before { transform: rotate(45deg); }
#servicos .voga-service-expand[open] summary span::after { transform: rotate(135deg); }
#servicos .voga-service-expand__content { padding: .95rem 0 .25rem; }
#servicos .voga-service-list { display: grid; gap: 1rem; margin: 0; padding: 0; list-style: none; }
#servicos .voga-service-list li { position: relative; margin: 0; padding-left: 1.35rem; font-size: .94rem; line-height: 1.72; }
#servicos .voga-service-list li::before { content: ''; position: absolute; top: .54em; left: 0; width: .46rem; height: .46rem; border: 1px solid var(--voga-blue); border-radius: 50%; background: var(--voga-sand); box-shadow: 0 0 0 3px color-mix(in srgb, var(--voga-light) 35%, transparent); }
#servicos .voga-service-card:nth-child(3) .voga-service-list li::before { border-color: var(--voga-coral); }
#servicos .voga-service-action { margin-top: auto; padding-top: 1.5rem; }
html[data-voga-theme="dark"] #servicos .voga-card {
	background: linear-gradient(145deg, rgba(69,123,157,.42), rgba(29,53,87,.96)) !important;
	border-color: rgba(168,218,220,.24) !important;
	box-shadow: 0 20px 48px rgba(4,16,32,.32) !important;
}
html[data-voga-theme="dark"] #servicos .voga-card h3,
html[data-voga-theme="dark"] #servicos .voga-service-description,
html[data-voga-theme="dark"] #servicos .voga-service-list li { color: #F1FAEE !important; }
html[data-voga-theme="dark"] #servicos .voga-service-duration,
html[data-voga-theme="dark"] #servicos .voga-service-expand summary { color: #A8DADC !important; }
html[data-voga-theme="dark"] #servicos .voga-service-expand { border-color: rgba(168,218,220,.3); }
html[data-voga-theme="dark"] #servicos .voga-service-list li::before { background: #1D3557; border-color: #A8DADC; box-shadow: 0 0 0 3px rgba(168,218,220,.09); }
html[data-voga-theme="dark"] #servicos .voga-contact-note { color: rgba(241,250,238,.78); }
@media (max-width: 781px) {
	#servicos .voga-card { min-height: 0; padding: 1.65rem; }
	#servicos .voga-service-duration { margin-bottom: 1.5rem; }
	#servicos .voga-service-description { min-height: 0; line-height: 1.72; }
	#servicos .voga-service-card { min-height: auto; }
	#servicos .voga-service-card h3 { min-height: 0; }
}

/* Abstract navigation field: depth, tide and coordinates without literal imagery. */
.voga-hero-stage.voga-hero-abstract {
	min-height: min(860px, calc(100svh - 72px));
	background:
		radial-gradient(ellipse at 76% 27%, rgba(168,218,220,.42) 0%, transparent 25%),
		radial-gradient(circle at 14% 86%, rgba(230,57,70,.18) 0%, transparent 24%),
		linear-gradient(118deg, #f1faee 0%, #d9eff0 31%, #a8dadc 58%, #457b9d 79%, #1d3557 100%) !important;
}
.voga-hero-stage.voga-hero-abstract::before {
	background:
		repeating-linear-gradient(135deg, transparent 0 68px, rgba(29,53,87,.1) 69px, transparent 70px),
		linear-gradient(180deg, transparent 63%, rgba(29,53,87,.2) 100%) !important;
	opacity: .68 !important;
}
.voga-hero-stage.voga-hero-abstract::after {
	background: linear-gradient(to bottom, transparent 54%, rgba(29,53,87,.1) 72%, rgba(29,53,87,.56) 100%) !important;
}
.voga-hero-copy .voga-display,
.voga-hero-copy .voga-lead,
.voga-hero-copy .voga-kicker { color: var(--voga-deep) !important; text-shadow: 0 1px 1px rgba(241,250,238,.35); }
.voga-hero-copy .voga-lead { max-width: 38rem; }
.voga-hero .voga-glass-card { background: rgba(241,250,238,.5) !important; border-color: rgba(29,53,87,.12) !important; }
html[data-voga-theme="dark"] .voga-hero-stage.voga-hero-abstract {
	background: linear-gradient(118deg, #1d3557 0%, #1d3557 48%, #457b9d 100%) !important;
}
html[data-voga-theme="dark"] .voga-hero-copy .voga-display,
html[data-voga-theme="dark"] .voga-hero-copy .voga-lead,
html[data-voga-theme="dark"] .voga-hero-copy .voga-kicker { color: #F1FAEE !important; text-shadow: none; }

/* Keep backgrounds clean: the navigation system uses depth and horizon, not diagonal guides. */
.voga-section:not(.voga-hero)::before { display: none !important; }
.voga-hero-stage.voga-hero-abstract::before {
	background:
		radial-gradient(34rem 28rem at calc(70% + var(--voga-pointer-x) * 11%) calc(36% + var(--voga-pointer-y) * 8%), rgba(241,250,238,.34), transparent 66%),
		linear-gradient(180deg, transparent 63%, rgba(29,53,87,.2) 100%) !important;
	transition: background-position .45s cubic-bezier(.2,.8,.2,1);
}

/* Immersive, but restrained: a cursor-responsive light current replaces literal imagery. */
.voga-hero-stage.voga-hero-abstract {
	background-position:
		calc(50% + var(--voga-pointer-x) * -14px) calc(50% + var(--voga-pointer-y) * -10px),
		calc(50% + var(--voga-pointer-x) * 10px) calc(50% + var(--voga-pointer-y) * 8px),
		center !important;
	transition: background-position .5s cubic-bezier(.2,.8,.2,1);
}

@media (hover: hover) and (pointer: fine) {
	#servicos .voga-service-card {
		--voga-card-x: 0;
		--voga-card-y: 0;
		transform: perspective(1000px) rotateX(calc(var(--voga-card-y) * -1.15deg)) rotateY(calc(var(--voga-card-x) * .9deg)) translateY(-2px);
		transition: transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease;
		will-change: transform;
	}
	#servicos .voga-service-card:hover {
		box-shadow: 0 30px 64px rgba(29,53,87,.16) !important;
	}
}

@media (max-width: 781px), (prefers-reduced-motion: reduce) {
	.voga-hero-stage.voga-hero-abstract { transition: none; }
	#servicos .voga-service-card { transform: none !important; }
}
@media (max-width: 781px) {
	.voga-hero-stage.voga-hero-abstract { min-height: 760px; background: linear-gradient(145deg, #f1faee 0%, #a8dadc 55%, #457b9d 79%, #1d3557 100%) !important; }
	html[data-voga-theme="dark"] .voga-hero-stage.voga-hero-abstract { background: linear-gradient(145deg, #1d3557 0%, #457b9d 100%) !important; }
}

/* Case study: a readable three-act story with one visual per decision. */
#caso.voga-case {
	--case-ink: #193449;
	--case-muted: #435f6c;
	--case-accent: #087b83;
	--case-surface: #ffffff;
	background: linear-gradient(180deg, #eaf5f2 0%, #f5f8f3 55%, #e9f2ef 100%) !important;
	color: var(--case-ink) !important;
}
#caso .voga-case-inner { max-width: 1200px; }
#caso .voga-case-header { width: 100%; max-width: none !important; margin: 0 0 clamp(2.5rem, 5vw, 4rem) !important; }
#caso .voga-case-header > * { width: 100%; max-width: none !important; margin-inline: 0 !important; text-align: left; }
#caso .voga-case-header .voga-kicker { color: var(--case-accent) !important; font-weight: 700; }
#caso .voga-case-header h2 {
	margin: .8rem 0 1.5rem;
	color: var(--case-ink) !important;
	font-size: clamp(3rem, 3.8vw, 4.5rem) !important;
	font-weight: 400;
	line-height: 1.12;
	letter-spacing: -.025em;
}
#caso .voga-case-header > p:last-child { color: var(--case-muted) !important; }
@media (max-width: 1023px) {
	#caso .voga-case-header h2 { font-size: clamp(2rem, 3vw, 3.6rem) !important; line-height: 1.06; }
}
#caso .voga-case-steps {
	--case-rail-gutter: clamp(2.5rem, 4vw, 3.5rem);
	position: relative;
	width: 100%;
	max-width: none !important;
	margin-inline: 0 !important;
	gap: 0;
	padding-left: var(--case-rail-gutter);
}
#caso .voga-case-steps::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 2px; background: linear-gradient(transparent, var(--case-accent) 8%, var(--case-accent) 92%, transparent); opacity: .6; }
#caso .voga-case-step {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(14rem, .8fr);
	width: 100%;
	max-width: none !important;
	margin-inline: 0 !important;
	min-height: 0;
	gap: clamp(1.5rem, 4vw, 3.5rem);
	padding: clamp(2rem, 4vw, 3.5rem) 0;
	border: 0;
	border-bottom: 1px solid rgba(8, 123, 131, .22);
	border-radius: 0;
	background: transparent !important;
	box-shadow: none;
}
#caso .voga-case-step::before { content: ''; position: absolute; top: clamp(2.3rem, 4vw, 3.8rem); left: calc(-1 * var(--case-rail-gutter) - .4rem); width: .9rem; height: .9rem; border: 2px solid var(--case-accent); border-radius: .15rem; background: var(--case-surface); transform: rotate(45deg); }
#caso .voga-case-step:last-child { border-bottom: 0; }
#caso .voga-case-step:nth-child(2) { grid-template-columns: minmax(0, 1fr); }
#caso .voga-case-step:nth-child(2) > div, #caso .voga-case-step:nth-child(2) figure { order: initial; }
#caso .voga-case-index { display: inline-block; margin: 0; padding: 0; border-radius: 0; background: transparent; color: var(--case-accent) !important; font-size: .78rem; }
#caso .voga-case-step-title { margin: .75rem 0 0; color: var(--case-ink) !important; font-family: var(--voga-font-display); font-size: clamp(1.15rem, 1.55vw, 1.5rem); font-weight: 400; line-height: 1.45; }
#caso .voga-case-step:nth-child(2) .voga-case-step-copy {
	display: grid;
	width: 100%;
	max-width: none !important;
	grid-template-columns: minmax(0, 1fr) minmax(14rem, .8fr);
	grid-template-rows: auto auto 1fr;
	column-gap: clamp(1.5rem, 4vw, 3.5rem);
	row-gap: 1rem;
}
#caso .voga-case-step:nth-child(2) .voga-case-index { grid-column: 1; grid-row: 1; }
#caso .voga-case-step:nth-child(2) .voga-case-step-title { grid-column: 1; grid-row: 2; align-self: start; }
#caso .voga-case-step:nth-child(2) .voga-case-step-placeholder { grid-column: 1; grid-row: 3; }
#caso .voga-case-step:nth-child(2) .voga-case-metric:nth-child(4) { grid-column: 2; grid-row: 1 / 3; }
#caso .voga-case-step:nth-child(2) .voga-case-metric:nth-child(5) { grid-column: 2; grid-row: 3; }
#caso .voga-case-step:nth-child(2) .voga-case-index {
	justify-self: start;
	width: 100%;
	max-width: none !important;
	margin-inline: 0 !important;
	text-align: left !important;
}
#caso .voga-case-metric {
	box-sizing: border-box;
	display: grid;
	width: 100%;
	min-width: 0;
	grid-template-columns: minmax(0, 1fr) auto;
	align-content: center;
	align-items: center;
	column-gap: .8rem;
	margin: .5rem 0 0;
	padding: clamp(1.1rem, 1.7vw, 1.5rem);
	border: 1px solid rgba(8, 123, 131, .18);
	border-radius: 1rem;
	background: linear-gradient(145deg, rgba(255, 255, 255, .72), rgba(8, 123, 131, .07));
	box-shadow: 0 12px 28px rgba(13, 54, 64, .055);
	color: var(--case-muted) !important;
	text-align: left;
}
#caso .voga-case-metric > * { width: 100%; max-width: none !important; margin-inline: 0 !important; text-align: left; }
#caso .voga-case-metric-label {
	grid-column: 1;
	margin-block: 0 !important;
	color: var(--case-muted) !important;
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .1em;
	line-height: 1.3;
	text-transform: uppercase;
}
#caso .voga-case-metric-value {
	grid-column: 2;
	margin-block: 0 !important;
	color: var(--case-accent) !important;
	font-family: var(--voga-font-display);
	font-size: clamp(2.3rem, 3.2vw, 3.2rem);
	font-weight: 400;
	letter-spacing: -.055em;
	line-height: 1;
}
#caso .voga-case-metric-copy {
	grid-column: 1 / -1;
	margin-block: .75rem 0 !important;
	padding-top: .7rem;
	border-top: 1px solid rgba(8, 123, 131, .18);
	color: var(--case-muted) !important;
	font-size: .91rem;
	line-height: 1.5;
}
#caso .voga-case-step-placeholder {
	max-width: 34rem;
	margin: 1rem 0 0 !important;
	color: var(--case-muted) !important;
	font-size: .94rem;
	line-height: 1.6;
}
#caso .voga-case-step ul { margin: 1rem 0 0; padding: 0; list-style: none; }
#caso .voga-case-step li { margin-left: 0; padding-left: 0; color: var(--case-muted) !important; text-align: left; }
#caso .voga-case-step li { font-size: 1rem; line-height: 1.55; }
#caso .voga-case-step li strong { display: inline-block; margin-inline: .1rem; color: var(--case-accent); font-size: 1.15em; line-height: 1; }
#caso .voga-case-step figure { overflow: hidden; width: 100%; max-width: 28rem; margin: 0; border-radius: .65rem; background: #dce9e7; }
#caso .voga-case-step:nth-child(3) figure { width: 100%; max-width: none; justify-self: stretch; margin-inline: 0 !important; }
#caso .voga-case-step figure img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 0; }
#caso .voga-case-step blockquote { margin-top: 1.5rem; padding: .25rem 0 .25rem 1.25rem; border-left: 3px solid var(--case-accent); }
#caso .voga-case-step blockquote p { color: var(--case-muted) !important; font-family: inherit; font-size: .98rem; font-weight: 400; }
#caso .voga-case-step blockquote p + p { margin-top: 1rem; }
#caso .voga-case-step blockquote strong { color: var(--case-ink); }
html[data-voga-theme="dark"] #caso.voga-case {
	--case-ink: #f1faee;
	--case-muted: #c3d9d8;
	--case-accent: #89d4ca;
	--case-surface: #182b32;
	background: linear-gradient(180deg, #101b20 0%, #14272e 55%, #101b20 100%) !important;
}
html[data-voga-theme="dark"] #caso .voga-case-step { border-color: rgba(137, 212, 202, .2); box-shadow: none; }
html[data-voga-theme="dark"] #caso .voga-case-index { background: transparent; color: #a5e6dd !important; }
html[data-voga-theme="dark"] #caso .voga-case-step::before { background: #14272e; border-color: #a5e6dd; }
html[data-voga-theme="dark"] #caso .voga-case-metric { border-color: rgba(137, 212, 202, .22); border-top-color: var(--case-accent); background: rgba(137, 212, 202, .075); }
html[data-voga-theme="dark"] #caso .voga-case-metric-copy { border-top-color: rgba(137, 212, 202, .22); }
@media (max-width: 780px) {
	#caso.voga-case { padding-inline: 1rem; }
	#caso .voga-case-inner { width: 100% !important; max-width: none; margin-inline: 0; }
	#caso .voga-case-steps { --case-rail-gutter: 2rem; }
	#caso .voga-case-steps::before { left: .45rem; }
	#caso .voga-case-step { grid-template-columns: 1fr; gap: 1.25rem; padding: 1.75rem 0; }
	#caso .voga-case-step::before { top: 2rem; left: -1.95rem; width: .7rem; height: .7rem; }
	#caso .voga-case-step figure { width: 100%; max-width: none; }
	#caso .voga-case-step figure img { aspect-ratio: 16 / 10; }
	#caso .voga-case-step:nth-child(2) .voga-case-step-copy { grid-template-columns: 1fr; }
	#caso .voga-case-step:nth-child(2) .voga-case-step-copy > * { grid-column: 1 !important; grid-row: auto !important; }
}

/* Use the Case Real heading rhythm across the Home. */
#servicos > .alignwide { width: min(1200px, calc(100vw - 5rem)); max-width: 1200px; }
#servicos > .alignwide > .voga-kicker,
.voga-process-intro > .wp-block-column:first-child > .voga-kicker,
.voga-cta-layout > .wp-block-column:first-child > .voga-kicker {
	margin: 0 !important;
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.6;
}
#caso .voga-case-header h2,
.editor-styles-wrapper .voga-case-header h2,
#servicos > .alignwide > h2,
.voga-process-intro > .wp-block-column:first-child > h2,
.voga-cta-layout > .wp-block-column:first-child > h2 {
	margin-top: .8rem !important;
	color: inherit;
	font-size: clamp(3rem, 3.8vw, 4.5rem) !important;
	font-weight: 400 !important;
	line-height: 1.12;
	letter-spacing: -.025em;
	text-wrap: balance;
}
#servicos > .alignwide > h2,
.voga-cta-layout > .wp-block-column:first-child > h2 { margin-bottom: 1.5rem !important; }
.voga-process-intro > .wp-block-column:first-child > h2 { margin-bottom: 0 !important; }
#servicos .voga-services-intro {
	width: 100%;
	max-width: none;
	margin: 0 0 clamp(2.5rem, 5vw, 4rem) !important;
	font-size: 1.35rem;
	line-height: 1.6;
}
.voga-process-intro > .wp-block-column:last-child > p,
.voga-cta-layout > .wp-block-column:first-child > p:last-child {
	font-size: 1.35rem;
	line-height: 1.6;
}
.voga-process-intro { margin-bottom: clamp(2.5rem, 5vw, 4rem) !important; }
.voga-cta-layout > .wp-block-column:first-child > p:last-child {
	margin: 0 !important;
	max-width: none;
	text-wrap: balance;
}
@media (max-width: 1023px) {
	#caso .voga-case-header h2,
	.editor-styles-wrapper .voga-case-header h2,
	#servicos > .alignwide > h2,
	.voga-process-intro > .wp-block-column:first-child > h2,
	.voga-cta-layout > .wp-block-column:first-child > h2 {
		font-size: clamp(2rem, 3vw, 3.6rem) !important;
		line-height: 1.06;
	}
}
@media (max-width: 780px) {
	#servicos > .alignwide { width: calc(100% - 2rem); max-width: none; }
	#servicos .voga-services-intro,
	.voga-process-intro > .wp-block-column:last-child > p,
	.voga-cta-layout > .wp-block-column:first-child > p:last-child { font-size: 1rem; line-height: 1.6; }
}

/* Processo: fill the same 1200px content rail as Serviços and Caso Real. */
.voga-process > .alignwide,
.editor-styles-wrapper .voga-process > .alignwide {
	width: min(1200px, calc(100% - 5rem)) !important;
	max-width: 1200px !important;
	margin-inline: auto !important;
}
.voga-process > .alignwide > .voga-process-intro,
.voga-process > .alignwide > .voga-step-grid,
.editor-styles-wrapper .voga-process > .alignwide > .voga-process-intro,
.editor-styles-wrapper .voga-process > .alignwide > .voga-step-grid {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
}
.voga-process > .alignwide > .voga-process-intro,
.editor-styles-wrapper .voga-process > .alignwide > .voga-process-intro {
	display: block !important;
}
.voga-process-intro > .wp-block-column,
.editor-styles-wrapper .voga-process-intro > .wp-block-column {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}
.voga-process-intro > .wp-block-column:first-child > .voga-kicker,
.voga-process-intro > .wp-block-column:first-child > h2,
.editor-styles-wrapper .voga-process-intro > .wp-block-column:first-child > .voga-kicker,
.editor-styles-wrapper .voga-process-intro > .wp-block-column:first-child > h2 {
	width: 100% !important;
	max-width: none !important;
}
.voga-process-intro > .wp-block-column:first-child > h2 { margin-bottom: 1.5rem !important; }
.voga-process-intro > .wp-block-column:last-child > p,
.editor-styles-wrapper .voga-process-intro > .wp-block-column:last-child > p {
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
}
.voga-process > .alignwide > .voga-step-grid,
.editor-styles-wrapper .voga-process > .alignwide > .voga-step-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)) !important;
}
@media (max-width: 780px) {
	.voga-process > .alignwide,
	.editor-styles-wrapper .voga-process > .alignwide {
		width: calc(100% - 2rem) !important;
		max-width: none !important;
	}
}

/* Match the headings in the two-column Clientes and Bel sections. */
#clientes .voga-portfolio-copy > .voga-kicker,
.editor-styles-wrapper .voga-portfolio-copy > .voga-kicker,
.voga-about-copy > .voga-kicker {
	margin: 0 !important;
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.6;
}
#clientes .voga-portfolio-copy > h2,
.editor-styles-wrapper .voga-portfolio-copy > h2,
.voga-about-copy > h2.has-xl-font-size {
	margin: .8rem 0 1.5rem !important;
	font-size: clamp(3rem, 3.8vw, 4.5rem) !important;
	font-weight: 400 !important;
	line-height: 1.12;
	letter-spacing: -.025em;
}
#clientes .voga-portfolio-copy > h2 + p,
.editor-styles-wrapper .voga-portfolio-copy > h2 + p,
.voga-about-copy > h2 + p {
	margin: 0 !important;
	font-size: 1.35rem;
	line-height: 1.6;
}
@media (max-width: 1023px) {
	#clientes .voga-portfolio-copy > h2,
	.editor-styles-wrapper .voga-portfolio-copy > h2,
	.voga-about-copy > h2.has-xl-font-size { font-size: clamp(2rem, 3vw, 3.6rem) !important; line-height: 1.06; }
}
@media (max-width: 780px) {
	#clientes .voga-portfolio-copy > h2,
	.editor-styles-wrapper .voga-portfolio-copy > h2,
	.voga-about-copy > h2.has-xl-font-size { width: 100% !important; max-width: none !important; }
	#clientes .voga-portfolio-copy > h2 + p,
	.editor-styles-wrapper .voga-portfolio-copy > h2 + p,
	.voga-about-copy > h2 + p { font-size: 1rem; }
}

/* The editor does not keep the front-end #caso anchor on the block wrapper. */
.editor-styles-wrapper .voga-case-inner {
	width: min(1200px, calc(100% - 5rem)) !important;
	max-width: 1200px !important;
	margin-inline: auto !important;
}
.editor-styles-wrapper .voga-case-header {
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 clamp(2.5rem, 5vw, 4rem) !important;
}
.editor-styles-wrapper .voga-case-header > * {
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
	text-align: left;
}
.editor-styles-wrapper .voga-case-header .voga-kicker { font-weight: 700; }
.editor-styles-wrapper .voga-case-header h2 { margin-bottom: 1.5rem !important; }

/* Client artwork and the three previous-experience brands. */
#clientes .voga-portfolio-content,
#clientes .voga-logo-panel { min-width: 0; }
.voga-client-logo { padding: 1rem .25rem; }
.voga-brand-image { display: block; width: 100%; max-width: 15rem; height: 5rem; object-fit: contain; margin-inline: auto; }
.voga-brand-house-shine { max-width: 12rem; }
.voga-experience-logos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; gap: clamp(.75rem, 2vw, 1.5rem); min-height: 9rem; }
.voga-experience-logo { min-width: 0; }
.voga-experience-logo .voga-brand-image { height: 3rem; }
@media (max-width: 781px) {
 #clientes .voga-portfolio-content > .wp-block-columns { gap: 1.25rem; }
 #clientes .voga-logo-panel { padding: 1.25rem; }
 .voga-client-flip, .voga-experience-logos { min-height: 7rem; }
 .voga-experience-logos { gap: 1.25rem; }
 .voga-experience-logo .voga-brand-image { height: 3.5rem; max-width: 7rem; }
}

/* Editorial testimonials: dedicated row, brand header and generous quote space. */
#clientes .voga-portfolio-layout { display: grid; grid-template-columns: minmax(0, 38fr) minmax(0, 62fr); gap: 2rem; }
#clientes .voga-portfolio-layout > .wp-block-column { flex-basis: auto !important; }
#clientes .voga-portfolio-content { display: contents; }
#clientes .voga-portfolio-content > .wp-block-columns { margin: 0; min-width: 0; }
#clientes .voga-portfolio-content > .wp-block-columns:has(.voga-testimonial) { grid-column: 1 / -1; gap: 1.5rem; margin-top: 1rem; }
#clientes .wp-block-column:has(> .voga-testimonial) { display: flex; min-width: 0; }
#clientes .voga-testimonial { box-sizing: border-box; display: flex; flex-direction: column; width: 100%; margin: 0; padding: clamp(1.5rem, 3vw, 2.5rem); border: 1px solid rgba(255,243,227,.14); border-radius: 1.5rem; background: #f1ede5; color: #1f2a2e; box-shadow: none; }
.voga-testimonial-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.voga-testimonial-tag { display: inline-flex; border: 1px solid rgba(31,42,46,.16); padding: .5rem .85rem; border-radius: 99px; font-size: .75rem; line-height: 1.2; }
.voga-testimonial-mark { display: block; margin-top: 1.25rem; height: 3rem; font: 5rem/1 Georgia, serif; color: #007c89; }
#clientes .voga-testimonial > p { font-size: clamp(1.35rem, 2.35vw, 2rem); font-weight: 400; line-height: 1.25; letter-spacing: -.035em; max-width: 26ch; margin: .5rem 0 2.5rem; }
#clientes .voga-testimonial cite { display: flex; flex-direction: column; gap: .35rem; margin-top: auto; padding-left: 1rem; border-left: 2px solid #007c89; font-style: normal; }
.voga-testimonial-brand { font-size: .875rem; font-weight: 600; }
.voga-testimonial-status { font-size: .7rem; color: #566267; line-height: 1.5; }
@media (max-width: 781px) {
 #clientes .voga-portfolio-layout { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
 #clientes .voga-portfolio-content > .wp-block-columns:has(.voga-testimonial) { margin-top: .5rem; gap: 1rem; }
 #clientes .voga-testimonial { border-radius: 1.25rem; }
 #clientes .voga-testimonial > p { font-size: 1.55rem; margin-bottom: 2rem; }
}
/* Balance the visual height of the previous-experience wordmarks. */
.voga-experience-logo { display: flex; align-items: center; justify-content: center; min-height: 3.5rem; }
.voga-experience-logo .voga-brand-gnt,
.voga-experience-logo .voga-brand-viva { width: 78%; height: 2.25rem; }
@media (max-width: 781px) {
 .voga-experience-logo .voga-brand-gnt,
 .voga-experience-logo .voga-brand-viva { height: 2.5rem; }
}
/* Keep the three marks at a comparable optical height and even spacing. */
.voga-experience-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(.875rem, 1.5vw, 1.25rem); }
.voga-experience-logo { height: 3rem; min-height: 0; }
.voga-experience-logo .voga-brand-image { width: 100%; height: 2rem; max-width: 6.5rem; }
.voga-experience-logo .voga-brand-gnt { width: 76%; height: 2rem; max-width: 5rem; }
.voga-experience-logo .voga-brand-viva { width: 76%; height: 2rem; max-width: 5rem; }
@media (max-width: 781px) {
 .voga-experience-logos { gap: 1rem; }
 .voga-experience-logo .voga-brand-image { height: 2rem; }
 .voga-experience-logo .voga-brand-gnt,
 .voga-experience-logo .voga-brand-viva { height: 2rem; }
}
/* Fill the introduction column with two balanced credential bands. */
#clientes .voga-portfolio-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); column-gap: clamp(2rem, 5vw, 5rem); row-gap: 2rem; }
#clientes .voga-portfolio-content > .wp-block-columns:not(:has(.voga-testimonial)) { display: grid; grid-template-columns: minmax(0, 1fr); align-self: stretch; gap: 1rem; }
#clientes .voga-portfolio-content > .wp-block-columns:not(:has(.voga-testimonial)) > .wp-block-column { display: flex; min-width: 0; }
#clientes .voga-logo-panel { display: grid; grid-template-columns: minmax(7rem, .8fr) minmax(0, 2fr); align-items: center; gap: 1.5rem; width: 100%; padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid rgba(255,243,227,.08); }
#clientes .voga-logo-panel > .voga-kicker { margin: 0; font-size: .7rem; line-height: 1.6; }
#clientes .voga-logo-panel > .voga-client-flip,
#clientes .voga-logo-panel > .voga-experience-logos { width: 100%; margin: 0; min-height: 6rem; }
#clientes .voga-portfolio-content > .wp-block-columns:has(.voga-testimonial) { margin-top: 0; }
@media (max-width: 1000px) and (min-width: 782px) {
 #clientes .voga-logo-panel { grid-template-columns: minmax(0, 1fr); gap: .5rem; }
}
@media (max-width: 781px) {
 #clientes .voga-portfolio-layout { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
 #clientes .voga-logo-panel { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto minmax(5rem, 1fr); gap: .75rem; padding: 1.25rem; }
 #clientes .voga-logo-panel > .voga-client-flip,
 #clientes .voga-logo-panel > .voga-experience-logos { min-height: 5rem; }
 #clientes .voga-client-logo { box-sizing: border-box; padding: 0; }
}
#clientes .voga-logo-panel { box-sizing: border-box; }
#clientes .voga-portfolio-content > .wp-block-columns:not(:has(.voga-testimonial)) { grid-template-rows: repeat(2, minmax(0, 1fr)); }
/* Align both credential labels to the same left edge inside their grid cell. */
#clientes .voga-logo-panel > .voga-kicker { justify-self: stretch; width: 100%; max-width: none; margin-inline: 0; text-align: left; }
/* Keep pale testimonial surfaces readable in either theme. */
html[data-voga-theme] #clientes .voga-testimonial { background: #f1ede5; color: #1d3557; }
html[data-voga-theme] #clientes .voga-testimonial > p,
html[data-voga-theme] #clientes .voga-testimonial cite,
html[data-voga-theme] #clientes .voga-testimonial-brand,
html[data-voga-theme] #clientes .voga-testimonial-tag { color: #1d3557 !important; }
html[data-voga-theme] #clientes .voga-testimonial-status { color: #566267 !important; }
html[data-voga-theme] #clientes .voga-testimonial-mark { color: #007c89 !important; }
/* Inverse testimonials sit one tone above the dark credentials section. */
html[data-voga-theme] #clientes .voga-testimonial { background: #293b40; color: #f1faee; border-color: rgba(168,218,220,.16); }
html[data-voga-theme] #clientes .voga-testimonial > p,
html[data-voga-theme] #clientes .voga-testimonial cite,
html[data-voga-theme] #clientes .voga-testimonial-brand,
html[data-voga-theme] #clientes .voga-testimonial-tag { color: #f1faee !important; }
html[data-voga-theme] #clientes .voga-testimonial-tag { border-color: rgba(168,218,220,.25); }
html[data-voga-theme] #clientes .voga-testimonial-status { color: #bdd0d0 !important; }
html[data-voga-theme] #clientes .voga-testimonial-mark { color: #a8dadc !important; }
html[data-voga-theme] #clientes .voga-testimonial cite { border-left-color: #a8dadc; }

/* Vertical rhythm for the top-level sections of the homepage. */
.home .wp-block-post-content {
	--voga-home-section-space: clamp(5rem, 10.5vw, 10rem);
}

.home .wp-block-post-content > :is(.voga-section:not(.voga-hero), .voga-about, .voga-cta, .voga-contact-section) {
	padding-block: var(--voga-home-section-space) !important;
}

.home .wp-block-post-content > .voga-manifesto {
	--voga-home-section-space: clamp(5rem, 10vw, 9rem);
}

.home .voga-hero .voga-hero-stage.voga-hero-abstract {
	height: auto;
}

.home .voga-hero .voga-hero-overlay {
	box-sizing: border-box;
}

.home .voga-hero .voga-hero-layout {
	padding-block: clamp(6rem, 10vh, 8rem) clamp(8rem, 15vh, 11rem) !important;
}

@media (max-width: 781px) {
	.home .voga-hero .voga-hero-layout {
		padding-block: 5rem 6.5rem !important;
	}
}

/* Shared reading rhythm within each section. */
:is(.voga-section, .voga-about, .voga-cta) {
	--voga-copy-space: clamp(1.25rem, 2vw, 1.75rem);
	--voga-content-space: clamp(2.5rem, 5vw, 4.5rem);
}
:is(.voga-section, .voga-about, .voga-cta) p:not(.voga-kicker):not(.voga-case-metric-value),
:is(.voga-section, .voga-about, .voga-cta) li {
	line-height: 1.75;
}
:is(.voga-section, .voga-about, .voga-cta) :is(h1, h2, .voga-display) {
	line-height: 1.2 !important;
}
:is(.voga-section, .voga-about, .voga-cta) h3 {
	line-height: 1.3 !important;
}
:is(.voga-section, .voga-about, .voga-cta) .voga-kicker {
	line-height: 1.6;
}
:is(.voga-section, .voga-about, .voga-cta) .voga-kicker + :is(h1, h2, h3) {
	margin-top: 1.25rem !important;
}
:is(.voga-section, .voga-about, .voga-cta) :is(h1, h2, h3) + p {
	margin-top: var(--voga-copy-space) !important;
}
:is(.voga-section, .voga-about, .voga-cta) p + p {
	margin-top: var(--voga-copy-space);
}
.voga-hero-copy > .wp-block-buttons,
.voga-about-copy > .wp-block-buttons,
.voga-contact-copy > .wp-block-buttons {
	margin-top: clamp(2rem, 3vw, 2.75rem) !important;
}
#servicos .voga-services-intro {
	margin-bottom: var(--voga-content-space);
}
#servicos .voga-service-grid {
	gap: clamp(1.5rem, 2.5vw, 2rem);
}
#servicos .voga-service-grid .voga-card {
	padding: clamp(1.75rem, 2.5vw, 2.5rem) !important;
}
#servicos .voga-service-grid .voga-card > p:not(.voga-kicker) {
	line-height: 1.8;
}
#servicos .voga-service-grid .voga-card h3 {
	margin-bottom: 1.5rem;
}
#servicos .voga-service-expand summary {
	padding-block: 1.25rem .75rem;
	line-height: 1.6;
}
#servicos .voga-service-expand summary span { top: 1.25rem; }
#servicos .voga-service-expand__content { padding-block: 1.25rem .5rem; }
#servicos .voga-service-list li,
#servicos .voga-service-grid .voga-card details li { line-height: 1.75; }
.voga-process-intro,
#caso .voga-case-header {
	margin-bottom: var(--voga-content-space) !important;
}
.voga-step-grid { gap: clamp(1.5rem, 2.5vw, 2rem); }
.voga-step { padding: clamp(1.5rem, 2.2vw, 2rem) !important; }
@media (prefers-reduced-motion: no-preference) {
	.voga-step-grid .voga-step-reveal {
		transition: opacity 420ms ease-out, translate 420ms ease-out;
		transition-delay: var(--voga-step-delay, 0ms);
	}

	.voga-step-grid .voga-step-awaiting:not(:focus-within) {
		opacity: 0;
		translate: 0 1.25rem;
	}
}
.voga-step > h3 { margin-bottom: 1.25rem; }
#caso .voga-case-step-title { margin-top: 1.25rem; line-height: 1.55; }
#caso .voga-case-step-placeholder { margin-top: 1.5rem !important; }
#caso .voga-case-step li + li { margin-top: .75rem; }
#caso .voga-case-step blockquote { margin-top: 2rem; }
#caso .voga-case-metric { padding: clamp(1.5rem, 2vw, 2rem); }
#caso .voga-case-metric-copy { margin-top: 1rem !important; padding-top: 1rem; }
#clientes .voga-portfolio-layout { row-gap: var(--voga-content-space); }
#clientes .voga-portfolio-content > .wp-block-columns:has(.voga-testimonial) {
	gap: clamp(1.5rem, 2.5vw, 2rem);
}
#clientes .voga-testimonial > p { line-height: 1.5; margin-top: 1.25rem; }
#clientes .voga-testimonial cite { gap: .65rem; line-height: 1.6; }

@media (max-width: 781px) {
	:is(.voga-section, .voga-about, .voga-cta) {
		--voga-copy-space: 1.25rem;
		--voga-content-space: 2.75rem;
	}
	#servicos .voga-service-grid .voga-card { padding: 1.75rem !important; }
	#caso .voga-case-step { gap: 1.75rem; padding-block: 2.25rem; }
	#caso .voga-case-step::before { top: 2.5rem; }
}

/* Mobile navigation: a centered, bounded list with a distinct primary action. */
@media (max-width: 781px) {
 html.has-modal-open .voga-back-to-top,
 body:has(.voga-header .is-menu-open) .voga-back-to-top { display: none !important; }

 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column;
  padding: calc(4.5rem + env(safe-area-inset-top)) 1.75rem calc(3rem + env(safe-area-inset-bottom)) !important;
  overflow-y: auto !important;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
  box-sizing: border-box;
  display: flex !important;
  flex: 1 0 auto;
  align-items: center !important;
  justify-content: center !important;
  height: auto !important;
  padding: 1rem 0 !important;
  overflow: visible !important;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
  max-width: 22rem !important;
  gap: 0 !important;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item:not(.voga-nav-cta) {
  box-sizing: border-box;
  margin: 0 !important;
  padding: 0 !important;
  align-items: center !important;
  border-bottom: 1px solid color-mix(in srgb, var(--voga-mobile-menu-text) 16%, transparent);
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
  box-sizing: border-box;
  width: 100% !important;
  min-height: 4.25rem !important;
  padding: 1rem !important;
  font-family: var(--voga-font-display) !important;
  font-size: clamp(1.25rem, 5vw, 1.65rem) !important;
  line-height: 1.3 !important;
  letter-spacing: -.02em !important;
  border-radius: .5rem;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:is(:hover, :focus-visible) {
  color: var(--voga-mobile-menu-text) !important;
  background: color-mix(in srgb, var(--voga-mobile-menu-text) 7%, transparent) !important;
  transform: none !important;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .voga-nav-cta {
  margin-top: 2rem !important;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .voga-nav-cta .wp-block-navigation-item__content {
  gap: .75rem;
  min-height: 3.75rem !important;
  padding: 1rem 1.5rem !important;
  border: 1px solid #1d3557 !important;
  border-radius: 999px !important;
  background: #1d3557 !important;
  color: #f1faee !important;
  font-size: 1.0625rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  box-shadow: 0 8px 24px rgba(29,53,87,.16) !important;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .voga-nav-cta .wp-block-navigation-item__content::before {
  content: '\2197';
  font-size: 1.3em;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .voga-nav-cta .wp-block-navigation-item__content:is(:hover, :focus-visible) {
  background: #294b73 !important;
  color: #fff !important;
 }
 html.has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
  width: 2.75rem !important;
  height: 2.75rem !important;
  top: calc(1rem + env(safe-area-inset-top)) !important;
  right: 1.25rem !important;
  margin-top: 0 !important;
 }
}
@media (max-width: 781px) {
 html[data-voga-theme="dark"].has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .voga-nav-cta .wp-block-navigation-item__content {
  background: #f1faee !important;
  border-color: #f1faee !important;
  color: #1d3557 !important;
 }
 html[data-voga-theme="dark"].has-modal-open .voga-header .wp-block-navigation__responsive-container.is-menu-open .voga-nav-cta .wp-block-navigation-item__content:is(:hover, :focus-visible) { background: #a8dadc !important; }
}

/* A small filled milestone follows the reading position on the case rail. */
#caso .voga-case-steps.has-scroll-marker::after {
 content: '';
 position: absolute;
 z-index: 2;
 top: 0;
 left: 1px;
 width: .8rem;
 height: .8rem;
 border-radius: 50%;
 background: var(--case-accent);
 box-shadow: 0 0 0 .3rem var(--case-surface), 0 0 0 .4rem color-mix(in srgb, var(--case-accent) 25%, transparent);
 transform: translate(-50%, calc(var(--case-marker-y, 0px) - 50%));
 pointer-events: none;
}
@media (max-width: 781px) {
 #caso .voga-case-steps.has-scroll-marker::after { left: calc(.45rem + 1px); width: .65rem; height: .65rem; }
}
@media (prefers-reduced-motion: reduce) {
 #caso .voga-case-steps.has-scroll-marker::after { display: none; }
}

/* Rounded stops and a soft magnetic arrival at each case milestone. */
#caso .voga-case-step::before { border-radius: 50%; transform: none; }
#caso .voga-case-steps.has-scroll-marker::after { transition: transform .28s cubic-bezier(.2, .65, .3, 1); }
@media (prefers-reduced-motion: reduce) {
 #caso .voga-case-steps.has-scroll-marker::after { transition: none; }
}

/* Share the exact rail axis with the moving dot, including on narrow screens. */
#caso .voga-case-step::before {
 left: calc(-1 * var(--case-rail-gutter) + 1px);
 transform: translateX(-50%);
}
@media (max-width: 781px) {
 #caso .voga-case-step::before { left: calc(-1 * var(--case-rail-gutter) + .45rem + 1px); }
}

/* More breathing room in the three long descriptions. */
.voga-about .voga-about-copy > p:not(.voga-kicker) {
 line-height: 1.95 !important;
}
.voga-footer .voga-footer-top > .wp-block-column:first-child > p:not(.voga-footer-signature):not(.wp-block-site-title) {
 line-height: 1.95;
 margin-top: 1.5rem;
}
.voga-footer .voga-footer-top > .wp-block-column:first-child > .voga-footer-signature {
 margin-top: 1.5rem;
}
#caso .voga-case-step blockquote p {
 line-height: 1.95 !important;
}
#caso .voga-case-step blockquote p + p {
 margin-top: 1.75rem;
}

/* Each service card follows its own accordion height. */
#servicos .voga-service-grid .voga-card {
 align-self: start !important;
 display: flex;
 flex-direction: column;
 height: auto;
}
#servicos .voga-service-grid .voga-card > .wp-block-buttons,
#servicos .voga-service-grid .voga-card > .voga-service-action {
 margin-top: auto !important;
 padding-top: 2rem;
}
#servicos .voga-service-grid .wp-block-button { width: 100%; }
#servicos .voga-service-grid .wp-element-button {
 box-sizing: border-box;
 display: flex;
 width: 100%;
 min-height: 3.5rem;
 justify-content: center;
 padding: .9rem 1rem;
 white-space: normal;
 text-align: center;
 font-size: .9rem;
 line-height: 1.4;
 font-weight: 600;
 border: 1px solid var(--voga-deep);
 border-radius: .75rem;
 background: var(--voga-deep);
 color: #f1faee;
 box-shadow: 0 6px 18px rgba(29,53,87,.12);
}
#servicos .voga-service-grid .wp-element-button:hover {
 background: #294b73;
 box-shadow: 0 10px 24px rgba(29,53,87,.2);
}
#servicos .voga-service-grid details {
 box-sizing: border-box;
 margin-top: 1.75rem;
 border-top: 1px solid color-mix(in srgb, var(--voga-page-text) 20%, transparent);
 border-bottom: 1px solid color-mix(in srgb, var(--voga-page-text) 20%, transparent);
}
#servicos .voga-service-grid details summary {
 box-sizing: border-box;
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 1rem;
 min-height: 3.75rem;
 padding: 1rem 0;
 list-style: none;
 font-size: .9rem;
 font-weight: 600;
 line-height: 1.5;
 color: var(--voga-page-text);
 cursor: pointer;
}
#servicos .voga-service-grid details summary::-webkit-details-marker { display: none; }
#servicos .voga-service-grid details summary::after {
 content: '';
 box-sizing: border-box;
 display: grid;
 place-items: center;
 flex: 0 0 1.75rem;
 height: 1.75rem;
 border: 1px solid color-mix(in srgb, var(--voga-page-text) 30%, transparent);
 border-radius: 50%;
 background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor);
 background-size: 10px 1.5px, 1.5px 10px;
 background-position: center;
 background-repeat: no-repeat;
 transform-origin: center;
 transition: transform .42s ease-in-out, background-color .25s;
}
#servicos .voga-service-grid details[open] summary::after { transform: rotate(45deg); }
#servicos .voga-service-grid details summary > span { display: none; }
#servicos .voga-service-grid details summary:focus-visible { outline: 2px solid var(--voga-blue); outline-offset: 4px; }
#servicos .voga-service-grid details > :not(summary) { margin-block: .5rem 1.5rem; }
#servicos .voga-service-grid details ul { display: grid; gap: 1rem; }
html[data-voga-theme="dark"] #servicos .voga-service-grid .wp-element-button { background: #a8dadc; color: #1d3557; border-color: #a8dadc; }
@media (prefers-reduced-motion: reduce) {
 #servicos .voga-service-grid details summary::after { transition: none; }
}

/* Keep each independent accordion aligned to the full inner card width. */
#servicos .voga-service-grid .voga-card > details {
 width: 100% !important;
 max-width: none !important;
 align-self: stretch;
 flex-shrink: 0;
}
#servicos .voga-service-grid .voga-card > details > summary {
 width: 100% !important;
 max-width: none !important;
}
#servicos .voga-service-grid .voga-card > details > summary::after { margin-left: auto; }
