:root {
	--vlr-product-bg: var(--vlr-color-bg);
	--vlr-product-surface: var(--vlr-color-surface);
	--vlr-product-ink: var(--vlr-color-ink);
	--vlr-product-muted: var(--vlr-color-muted);
	--vlr-product-line: var(--vlr-color-line);
	--vlr-product-accent: var(--vlr-color-accent);
	--vlr-product-accent-strong: var(--vlr-color-accent-strong);
	--vlr-product-green: var(--vlr-color-green);
	--vlr-product-green-2: var(--vlr-color-green-2);
	--vlr-product-cool: var(--vlr-color-cool);
	--vlr-product-warm: var(--vlr-color-warm);
	--vlr-product-neutral: var(--vlr-color-neutral);
	--vlr-product-dark: var(--vlr-color-dark);
	--vlr-product-shadow: var(--vlr-shadow-card);
	--vlr-product-radius-lg: var(--vlr-radius-lg);
	--vlr-product-radius-md: var(--vlr-radius-md);
	--vlr-product-font-display: var(--vlr-brand-font-display);
	--vlr-product-font-body: var(--vlr-brand-font-body);
	--vlr-product-font-ui: var(--vlr-brand-font-ui);
}

body {
	background: var(--vlr-product-bg);
	color: var(--vlr-product-ink);
	font-family: var(--vlr-product-font-body);
	margin: 0;
}

.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.separate-containers .paging-navigation,
.one-container .site-content,
.inside-page-header {
	padding: 0 !important;
}

.site-content,
.content-area,
.site-main,
#main {
	background: transparent;
	margin: 0 !important;
	padding: 0 !important;
}

#right-sidebar,
#left-sidebar {
	display: none !important;
}

#primary,
.content-area {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

#page,
.site {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.inside-article {
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 0 !important;
}

.entry-header,
.entry-title {
	display: none !important;
}

.entry-content > .wp-block-group.vlr-product-page {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.entry-content {
	margin: 0 !important;
	padding: 0 !important;
}

.entry-content > .wp-block-group {
	margin-block-start: 0;
	margin-block-end: 0;
}

.entry-content > *:first-child,
.vlr-product-page > *:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.entry-content > *:last-child,
.vlr-product-page > *:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.vlr-product-page {
	margin: 0 !important;
	padding: 0 !important;
}

:root {
	--vlr-product-hero-bg:
		radial-gradient(circle at 74% 16%, color-mix(in oklab, var(--vlr-color-hero-highlight) 12%, transparent), transparent 28%),
		radial-gradient(circle at 18% 18%, color-mix(in oklab, var(--vlr-color-green) 4.5%, transparent), transparent 26%),
		linear-gradient(180deg, rgba(255,255,255,0.28), rgba(255,255,255,0) 18%),
		linear-gradient(135deg, var(--vlr-color-hero-start) 0%, var(--vlr-color-hero-mid) 44%, var(--vlr-color-hero-end) 100%);
}

.vlr-product-page > .wp-block-group:last-child,
.vlr-product-page > .wp-block-group:last-child > .wp-block-group__inner-container {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.site-footer,
.footer-widgets,
.site-info {
	margin-top: 0 !important;
}

.site-main,
.content-area,
#primary,
.site-content,
.inside-article,
.entry-content,
.vlr-product-page {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.vlr-product-page > .wp-block-group__inner-container,
.vlr-product-page .wp-block-group__inner-container {
	max-width: none !important;
	padding: 0 !important;
}

/*
 * Último bloco (muitas vezes a CTA): Gutenberg aplica margin-block-end; cria faixa clara
 * acima do rodapé.
 */
.vlr-product-page > .wp-block-group__inner-container > *:last-child {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}

/* CTA final: .vlr-home-cta + .vlr-cta-box (partilhado com Home); estáticos unificados abaixo com .vlr-product-cta-box.
 * Sem margin-top — evitava "faixa branca" (fundo do .inside-article) entre a secção anterior e a CTA. */

.vlr-product-shell {
	max-width: var(--vlr-container-max);
	margin-inline: auto;
	padding-inline: var(--vlr-gutter-desktop);
}

.vlr-product-hero > .wp-block-group__inner-container,
.vlr-product-logo-band > .wp-block-group__inner-container,
.vlr-product-section > .wp-block-group__inner-container,
.vlr-home-section > .wp-block-group__inner-container,
.vlr-product-cta > .wp-block-group__inner-container {
	width: 100%;
	max-width: none !important;
}

.vlr-product-hero {
	padding: var(--vlr-product-hero-space-desktop) 0 24px;
	background: var(--vlr-product-hero-bg);
	border-bottom: 1px solid rgba(18, 58, 63, 0.06);
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.vlr-product-hero-grid,
.vlr-product-section-head,
.vlr-product-cards {
	gap: 32px;
}

.vlr-product-hero-grid {
	/* flex-start: evita “vazio” por baixo do texto quando a coluna do formulário é mais alta */
	align-items: flex-start;
	gap: 44px;
}

.vlr-product-hero-grid > .wp-block-column:first-child {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	max-width: 690px;
}

.vlr-product-kicker {
	margin: 0 0 16px;
	font-family: var(--vlr-product-font-ui);
	font-size: var(--vlr-text-kicker);
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--vlr-product-green-2);
}

.vlr-product-hero .vlr-section-kicker {
	margin: 0 0 16px;
	font-family: var(--vlr-product-font-ui);
	font-size: var(--vlr-text-kicker);
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--vlr-product-green-2);
}

.vlr-product-title,
.vlr-product-section-title,
.vlr-product-form-title,
.vlr-product-cta-title {
	margin: 0;
	font-family: var(--vlr-product-font-display);
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.06;
	hyphens: none;
	-webkit-hyphens: none;
	text-wrap: balance;
	color: var(--vlr-product-ink);
}

.vlr-product-title {
	font-size: clamp(1.86rem, 2.35vw, 2.68rem);
	max-width: 19.5ch;
	text-align: left;
}

.vlr-product-lead,
.vlr-product-text,
.vlr-product-cta-text {
	margin: 20px 0 0;
	font-family: var(--vlr-product-font-body);
	font-size: var(--vlr-text-body);
	line-height: 1.72;
	color: var(--vlr-product-muted);
	max-width: 58ch;
}

.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-kicker,
.vlr-product-hero-grid > .wp-block-column:first-child .vlr-section-kicker,
.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-title,
.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-lead,
.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-bullets,
.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-chip-row,
.vlr-product-hero-grid > .wp-block-column:first-child .wp-block-buttons {
	width: 100%;
	text-align: left;
	align-self: flex-start;
}

.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-title:last-child,
.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-title:only-child {
	max-width: 16ch;
}

.vlr-product-bullets {
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 12px;
}

.vlr-product-bullets li {
	position: relative;
	padding-left: 18px;
	line-height: 1.65;
	color: var(--vlr-product-muted);
}

.vlr-product-bullets li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.62em;
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--vlr-product-accent);
}

.vlr-product-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
	justify-content: flex-start;
	align-items: center;
	max-width: 560px;
}

.vlr-product-chip-row > .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	max-width: 560px;
}

.vlr-product-chip {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
	padding: 10px 16px 10px 34px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(18, 58, 63, 0.08);
	font-family: var(--vlr-product-font-ui);
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.2;
	color: #203f44;
	position: relative;
	box-shadow: 0 10px 24px rgba(17, 20, 18, 0.05);
	min-width: 0;
	min-height: 46px;
	text-align: left;
}

.vlr-product-chip::before {
	content: "→";
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 0.8rem;
	color: var(--vlr-product-accent-strong);
}

.vlr-product-hero-aside {
	display: grid;
	gap: 18px;
	align-content: start;
	padding: 18px;
	border-radius: 28px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(255, 250, 244, 0.92));
	border: 1px solid rgba(18, 58, 63, 0.08);
	box-shadow: 0 20px 48px rgba(17, 20, 18, 0.08);
}

.vlr-product-hero-visual {
	display: block;
	position: relative;
	min-height: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	border-radius: 0;
}

.vlr-product-hero-visual > .wp-block-group__inner-container {
	position: relative;
	min-height: 0;
	height: auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 18px;
	width: 100%;
}

.vlr-product-hero-visual .wp-block-image,
.vlr-product-hero-visual .vlr-product-hero-image,
.vlr-product-hero-visual img {
	display: none !important;
}

.vlr-product-floating-note {
	display: none;
}

.vlr-product-floating-note > .wp-block-group__inner-container {
	max-width: none !important;
	padding: 0 !important;
}

.vlr-product-note-title {
	margin: 0;
	font-family: var(--vlr-product-font-display);
	font-size: clamp(1.45rem, 1.1vw + 1.15rem, 1.9rem);
	line-height: 0.98;
	color: var(--vlr-product-ink);
	text-wrap: balance;
}

.vlr-product-note-text {
	margin: 10px 0 0;
	font-family: var(--vlr-product-font-ui);
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.45;
	color: #234f54;
}

.vlr-product-hero-badge {
	position: relative;
	left: auto;
	top: auto;
	margin: 0 0 14px 14px;
	padding: 14px 16px;
	border-radius: 18px;
	background: rgba(255, 250, 244, 0.95);
	border: 1px solid rgba(18, 58, 63, 0.08);
	box-shadow: 0 14px 30px rgba(17, 20, 18, 0.08);
	max-width: 210px;
	z-index: 2;
}

.vlr-product-hero-badge p {
	margin: 0;
}

.vlr-product-hero-badge p + p {
	margin-top: 6px;
	font-family: var(--vlr-product-font-ui);
	font-size: 0.78rem;
	font-weight: 700;
	color: #204f55;
	line-height: 1.45;
}

.vlr-product-hero-badge strong {
	display: block;
	font-family: var(--vlr-product-font-display);
	font-size: 0.98rem;
	line-height: 1.08;
	color: var(--vlr-product-ink);
}

.vlr-product-hero-form {
	position: relative;
	z-index: 2;
	margin-top: 0;
	padding-inline: 0;
	display: block !important;
	width: 100%;
}

.vlr-product-hero-form > .wp-block-group__inner-container {
	max-width: 100% !important;
	padding: 0 !important;
}

.vlr-product-page .wp-block-buttons {
	margin-top: 28px;
	gap: 12px;
	justify-content: flex-start;
}

.vlr-product-hero-grid > .wp-block-column:first-child .wp-block-buttons {
	margin-top: 16px;
	display: flex;
	width: auto;
}

.vlr-product-hero-grid > .wp-block-column:first-child .wp-block-buttons .wp-block-button {
	width: auto;
	flex: 0 0 auto;
}

.vlr-product-hero-grid > .wp-block-column:first-child .wp-block-button__link {
	width: auto;
	min-width: 140px;
	justify-content: center;
}

.vlr-product-hero-detail {
	width: 100%;
	max-width: 620px;
	margin-top: 24px;
}

.vlr-product-hero-detail > .wp-block-group__inner-container {
	display: grid;
	gap: 18px;
}

.vlr-product-hero-detail-intro {
	margin: 0;
	font-family: var(--vlr-product-font-body);
	font-size: 1rem;
	font-style: italic;
	line-height: 1.6;
	color: #344447;
}

.vlr-product-hero-detail-item {
	margin: 0;
	font-family: var(--vlr-product-font-body);
	font-size: 1rem;
	line-height: 1.6;
	color: var(--vlr-product-muted);
}

.vlr-product-hero-detail-item strong {
	display: block;
	margin-bottom: 4px;
	font-family: var(--vlr-product-font-ui);
	font-size: 1.02rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--vlr-product-ink);
}

.vlr-product-hero-detail-note {
	margin: 0;
	font-family: var(--vlr-product-font-body);
	font-size: 0.98rem;
	line-height: 1.66;
	color: #48575a;
}

.vlr-product-page .wp-block-button__link {
	min-height: 52px;
	padding: 14px 24px;
	border-radius: 14px;
	border: 1px solid transparent;
	background: var(--vlr-product-accent);
	color: #1d160e;
	font-family: var(--vlr-product-font-ui);
	font-size: 0.97rem;
	font-weight: 700;
	line-height: 1.2;
}

.vlr-product-page .wp-block-button__link:hover {
	background: var(--vlr-product-accent-strong);
	color: #1d160e;
}

.vlr-product-page .is-style-outline > .wp-block-button__link,
.vlr-product-page .wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	border-color: rgba(29, 26, 22, 0.22);
	color: var(--vlr-product-ink);
}

.vlr-product-page .is-style-outline > .wp-block-button__link:hover,
.vlr-product-page .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: rgba(29, 26, 22, 0.05);
	border-color: rgba(29, 26, 22, 0.28);
	color: var(--vlr-product-ink);
}

.vlr-product-page .wp-block-button__link,
.vlr-product-page .wp-block-button__link:visited {
	text-decoration: none;
}

.vlr-product-media-card {
	overflow: hidden;
	border-radius: var(--vlr-product-radius-lg);
	border: 1px solid var(--vlr-product-line);
	box-shadow: var(--vlr-product-shadow);
	background: var(--vlr-product-surface);
}

.vlr-product-page img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 24px;
}

.vlr-product-media-card img {
	border-radius: 0;
}

.vlr-product-note {
	margin: 16px 0 0;
	font-family: var(--vlr-product-font-ui);
	font-size: 0.88rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: #234f54;
}

.vlr-product-form-card,
.vlr-product-card,
.vlr-product-faq-card,
.vlr-product-contact-card {
	background: var(--vlr-product-surface);
	border: 1px solid var(--vlr-product-line);
	border-radius: var(--vlr-product-radius-md);
	box-shadow: var(--vlr-product-shadow);
}

.vlr-product-form-card {
	padding: 28px;
	background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(255,252,247,0.96) 100%);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	border-radius: 26px;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	box-shadow: 0 16px 34px rgba(17, 20, 18, 0.07);
	border-color: rgba(18, 58, 63, 0.07);
}

/*
 * Coluna única: título + texto + .vlr-product-form-wrap empilhados.
 * Evita títulos longos presos em faixa estreita (ex.: 1 caractere por linha) quando o
 * inner do Gutenberg herda layout em linha ou max-width em ch aperta demais o bloco.
 */
.vlr-product-form-card > .wp-block-group__inner-container,
.wp-block-group__inner-container:has(> .vlr-product-form-wrap) {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: 100%;
	min-width: 0;
}

.vlr-product-form-card .vlr-product-form-title,
.vlr-product-form-card h3.vlr-product-form-title,
.wp-block-group__inner-container:has(> .vlr-product-form-wrap) > .vlr-product-form-title {
	max-width: none !important;
	width: 100%;
	min-width: 0;
	text-wrap: wrap;
}

.vlr-product-form-card .vlr-product-form-text,
.wp-block-group__inner-container:has(> .vlr-product-form-wrap) > .vlr-product-form-text {
	max-width: none;
	width: 100%;
	min-width: 0;
}

.vlr-product-form-card .vlr-product-form-wrap,
.wp-block-group__inner-container > .vlr-product-form-wrap {
	width: 100%;
	min-width: 0;
	align-self: stretch;
}

.vlr-product-hero-grid > .wp-block-column:last-child {
	display: flex !important;
	justify-content: flex-start;
	align-items: flex-start;
}

.vlr-product-hero-grid > .wp-block-column:last-child .vlr-product-form-card {
	max-width: 430px;
	width: 100%;
	margin-top: 18px;
}

.vlr-product-form-text {
	margin: 14px 0 0;
	color: var(--vlr-product-muted);
	line-height: 1.7;
	font-size: var(--vlr-text-small);
	max-width: 34ch;
}

.vlr-product-form-wrap {
	margin-top: 20px;
}

/*
 * Fluent Forms: estilos aplicam com .vlr-product-form-wrap (padrão contato) ou com o shortcode
 * directamente dentro de .vlr-product-page (ex.: páginas de produto sem o wrapper).
 */
.vlr-product-form-wrap .fluentform,
.vlr-product-page .fluentform {
	margin: 0;
}

.vlr-product-form-wrap .ff-el-group,
.vlr-product-form-wrap .ff-t-cell,
.vlr-product-page .fluentform .ff-el-group,
.vlr-product-page .fluentform .ff-t-cell {
	margin-bottom: 14px;
}

.vlr-product-page .fluentform fieldset {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.vlr-product-form-wrap .ff-el-input--label label,
.vlr-product-form-wrap .ff-el-form-control,
.vlr-product-form-wrap .ff_t_c,
.vlr-product-form-wrap .ff-btn,
.vlr-product-form-wrap .ff-btn-submit,
.vlr-product-page .fluentform .ff-el-input--label label,
.vlr-product-page .fluentform .ff-el-form-control,
.vlr-product-page .fluentform .ff_t_c,
.vlr-product-page .fluentform .ff-btn,
.vlr-product-page .fluentform .ff-btn-submit {
	font-family: var(--vlr-product-font-body);
}

.vlr-product-form-wrap .ff-el-input--label label,
.vlr-product-page .fluentform .ff-el-input--label label {
	font-size: 0.9rem;
	font-weight: 700;
	color: var(--vlr-product-ink);
	margin-bottom: 6px;
}

.vlr-product-form-wrap input[type="text"],
.vlr-product-form-wrap input[type="email"],
.vlr-product-form-wrap input[type="tel"],
.vlr-product-form-wrap input[type="number"],
.vlr-product-form-wrap input[type="url"],
.vlr-product-form-wrap input[type="date"],
.vlr-product-form-wrap select,
.vlr-product-form-wrap textarea,
.vlr-product-page .fluentform input[type="text"],
.vlr-product-page .fluentform input[type="email"],
.vlr-product-page .fluentform input[type="tel"],
.vlr-product-page .fluentform input[type="number"],
.vlr-product-page .fluentform input[type="url"],
.vlr-product-page .fluentform input[type="date"],
.vlr-product-page .fluentform select,
.vlr-product-page .fluentform textarea {
	min-height: 52px;
	border-radius: 14px;
	border: 1px solid rgba(18, 58, 63, 0.14);
	background: #fffdf9;
	padding: 12px 14px;
	box-shadow: none;
}

.vlr-product-form-wrap textarea,
.vlr-product-page .fluentform textarea {
	min-height: 120px;
}

.vlr-product-form-wrap .ff-btn-submit,
.vlr-product-form-wrap .ff-btn,
.vlr-product-page .fluentform .ff-btn-submit,
.vlr-product-page .fluentform .ff-btn {
	width: 100%;
	min-height: 52px;
	border-radius: 14px;
	border: 0;
	background: var(--vlr-product-accent);
	color: #1d160e;
	font-size: 0.98rem;
	font-weight: 700;
}

.vlr-product-form-wrap .ff-btn-submit:hover,
.vlr-product-form-wrap .ff-btn:hover,
.vlr-product-page .fluentform .ff-btn-submit:hover,
.vlr-product-page .fluentform .ff-btn:hover {
	background: var(--vlr-product-accent-strong);
	color: #1d160e;
}

/*
 * Reforço no cartão do hero: mesma cadência que Contato / outras páginas de produto,
 * mesmo quando o Fluent Forms carrega regras mais específicas ou formulários diferentes.
 */
.vlr-product-page .vlr-product-form-card .fluentform .ff-el-group,
.vlr-product-page .vlr-product-form-card .fluentform .ff-t-cell {
	margin-bottom: 12px !important;
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-el-input--label label {
	font-size: 0.84rem !important;
	font-weight: 700 !important;
	color: var(--vlr-product-ink) !important;
	margin-bottom: 5px !important;
	letter-spacing: 0.01em;
}

.vlr-product-page .vlr-product-form-card .fluentform input[type="text"],
.vlr-product-page .vlr-product-form-card .fluentform input[type="email"],
.vlr-product-page .vlr-product-form-card .fluentform input[type="tel"],
.vlr-product-page .vlr-product-form-card .fluentform input[type="number"],
.vlr-product-page .vlr-product-form-card .fluentform input[type="url"],
.vlr-product-page .vlr-product-form-card .fluentform input[type="date"],
.vlr-product-page .vlr-product-form-card .fluentform select,
.vlr-product-page .vlr-product-form-card .fluentform textarea {
	min-height: 46px;
	border-radius: 12px;
	border: 1px solid rgba(18, 58, 63, 0.14);
	background: #fffdf9;
	padding: 10px 12px;
	box-shadow: none;
	font-family: var(--vlr-product-font-body);
	font-size: 0.95rem;
}

.vlr-product-page .vlr-product-form-card .fluentform input::placeholder,
.vlr-product-page .vlr-product-form-card .fluentform textarea::placeholder {
	color: rgba(53, 68, 64, 0.62);
}

.vlr-product-page .vlr-product-form-card .fluentform input:focus,
.vlr-product-page .vlr-product-form-card .fluentform select:focus,
.vlr-product-page .vlr-product-form-card .fluentform textarea:focus {
	outline: none;
	border-color: rgba(242, 148, 34, 0.65);
	box-shadow: 0 0 0 4px rgba(242, 148, 34, 0.12);
	background: #ffffff;
}

.vlr-product-page .vlr-product-form-card .fluentform select {
	appearance: none;
	background-image:
		linear-gradient(45deg, transparent 50%, rgba(18, 58, 63, 0.72) 50%),
		linear-gradient(135deg, rgba(18, 58, 63, 0.72) 50%, transparent 50%);
	background-position:
		calc(100% - 18px) calc(50% - 2px),
		calc(100% - 12px) calc(50% - 2px);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
	padding-right: 42px;
}

.vlr-product-page .vlr-product-form-card .fluentform textarea {
	min-height: 108px;
	resize: vertical;
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-el-group {
	background: rgba(255, 255, 255, 0.54);
	padding: 0;
	border-radius: 0;
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-btn-submit,
.vlr-product-page .vlr-product-form-card .fluentform .ff-btn {
	width: 100%;
	min-height: 46px;
	border-radius: 12px;
	border: 0;
	background: var(--vlr-product-accent);
	color: #ffffff;
	font-size: 0.98rem;
	font-weight: 700;
	font-family: var(--vlr-product-font-body);
	letter-spacing: 0.01em;
	transition:
		transform 160ms ease,
		box-shadow 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease;
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-btn-submit:not(.ff_btn_no_style),
.vlr-product-page .vlr-product-form-card .fluentform .ff-btn:not(.ff_btn_no_style) {
	background: var(--vlr-product-accent) !important;
	border-color: var(--vlr-product-accent) !important;
	color: #ffffff !important;
	box-shadow: 0 12px 22px rgba(242, 148, 34, 0.16);
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-btn-submit:hover,
.vlr-product-page .vlr-product-form-card .fluentform .ff-btn:hover {
	background: var(--vlr-product-accent-strong);
	color: #ffffff;
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-btn-submit:not(.ff_btn_no_style):hover,
.vlr-product-page .vlr-product-form-card .fluentform .ff-btn:not(.ff_btn_no_style):hover {
	background: var(--vlr-product-accent-strong) !important;
	border-color: var(--vlr-product-accent-strong) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-btn-submit:focus-visible,
.vlr-product-page .vlr-product-form-card .fluentform .ff-btn:focus-visible {
	outline: none;
	box-shadow:
		0 0 0 4px rgba(242, 148, 34, 0.14),
		0 12px 22px rgba(242, 148, 34, 0.16);
}

.vlr-product-page .vlr-product-form-card .fluentform .ff_submit_btn_wrapper {
	margin-top: 8px;
}


.vlr-product-page .vlr-product-form-card .fluentform .text-danger,
.vlr-product-page .vlr-product-form-card .fluentform .error,
.vlr-product-page .vlr-product-form-card .fluentform .ff-el-is-error .error,
.vlr-product-page .vlr-product-form-card .fluentform .ff-el-is-error .text-danger {
	display: block;
	margin-top: 6px;
	color: #9f3f27 !important;
	font-size: 0.84rem;
	line-height: 1.45;
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-el-is-error input,
.vlr-product-page .vlr-product-form-card .fluentform .ff-el-is-error select,
.vlr-product-page .vlr-product-form-card .fluentform .ff-el-is-error textarea {
	border-color: rgba(198, 88, 51, 0.5) !important;
	box-shadow: 0 0 0 4px rgba(198, 88, 51, 0.08);
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-message-success {
	border-radius: 16px;
	border: 1px solid rgba(30, 110, 74, 0.16);
	background: rgba(240, 249, 244, 0.92);
	color: #1f5c42;
	font-size: 0.95rem;
	line-height: 1.6;
	padding: 14px 16px;
}

.vlr-product-page .vlr-product-form-card .fluentform .ff-message-success p:last-child {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.vlr-product-form-card {
		padding: 22px;
		border-radius: 22px;
	}

	.vlr-product-page .vlr-product-form-card .fluentform .ff-el-group,
	.vlr-product-page .vlr-product-form-card .fluentform .ff-t-cell {
		margin-bottom: 14px !important;
	}
}

/* Fallback sem depender da classe no body (algumas páginas de produto não carregam .vlr-product-page). */
.vlr-product-form-card .fluentform .ff-el-group,
.vlr-product-form-card .fluentform .ff-t-cell {
	margin-bottom: 12px !important;
}

.vlr-product-form-card .fluentform .ff-el-input--label label {
	font-size: 0.84rem !important;
	margin-bottom: 5px !important;
}

.vlr-product-form-card .fluentform input[type="text"],
.vlr-product-form-card .fluentform input[type="email"],
.vlr-product-form-card .fluentform input[type="tel"],
.vlr-product-form-card .fluentform input[type="number"],
.vlr-product-form-card .fluentform input[type="url"],
.vlr-product-form-card .fluentform input[type="date"],
.vlr-product-form-card .fluentform select,
.vlr-product-form-card .fluentform textarea {
	min-height: 46px;
	border-radius: 12px;
	padding: 10px 12px;
	font-size: 0.95rem;
}

.vlr-product-form-card .fluentform .ff_submit_btn_wrapper .ff-btn-submit,
.vlr-product-form-wrap .fluentform .ff_submit_btn_wrapper .ff-btn-submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
}

@media (min-width: 768px) {
	/* Grid em 2 colunas (viewport ≥768px). Cartões estreitos também usam o grid. */
	.vlr-product-form-card .fluentform fieldset,
	.vlr-product-form-wrap .fluentform fieldset {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 12px;
		row-gap: 0;
		/*
		 * Alinha a base de cada .ff-el-group na linha do grid: labels com 1 ou 2 linhas
		 * deixam de deslocar o input vizinho (ex.: viajantes vs idade do mais velho).
		 */
		align-items: end;
	}

	.vlr-product-form-card .fluentform .ff-el-input--label label,
	.vlr-product-form-wrap .fluentform .ff-el-input--label label {
		text-wrap: balance;
	}

	/* Seguro Auto (10): Nome+Whats | E-mail (linha inteira, logo abaixo) | Placa+CEP | Ano+Uso | Modelo | Mensagem | Enviar */
	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
		grid-row: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
		grid-row: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(input[name="email"]) {
		grid-column: 1 / -1;
		grid-row: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(input[name="placa_veiculo"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(input[name="placa_veiculo"]) {
		grid-column: 1;
		grid-row: 3;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(input[name="cep_pernoite"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(input[name="cep_pernoite"]) {
		grid-column: 2;
		grid-row: 3;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(input[name="ano_fabricacao"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(input[name="ano_fabricacao"]) {
		grid-column: 1;
		grid-row: 4;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(select[name="uso_veiculo"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(select[name="uso_veiculo"]) {
		grid-column: 2;
		grid-row: 4;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(input[name="modelo_veiculo"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(input[name="modelo_veiculo"]) {
		grid-column: 1 / -1;
		grid-row: 5;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff-el-group:has(textarea[name="mensagem"]) {
		grid-column: 1 / -1;
		grid-row: 6;
	}

	.vlr-product-form-card .fluentform_wrapper_10 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_10 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
		grid-row: 7;
	}

	/* Plano de Saúde (11) */
	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_11 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(select[name="tipo_contratacao"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(select[name="tipo_contratacao"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(select[name="faixa_etaria_titular"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(select[name="faixa_etaria_titular"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(input[name="qtd_vidas"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(input[name="qtd_vidas"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(input[name="cidade_ou_cep"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(input[name="cidade_ou_cep"]) {
		grid-column: 2;
	}

	/* Plano de Saúde Empresarial (12) */
	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_12 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="nome_empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="nome_empresa"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="cnpj_empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="cnpj_empresa"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="cep_empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="cep_empresa"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="qtd_vidas"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="qtd_vidas"]) {
		grid-column: 2;
	}

	/* Consórcio (13) */
	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_13 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	/* Consórcio: selects longos — cada um em linha inteira (evita label apertado em 2 colunas). */
	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(select[name="objetivo_consorcio"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(select[name="objetivo_consorcio"]) {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(select[name="faixa_credito"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(select[name="faixa_credito"]),
	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(input[name="faixa_credito"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(input[name="faixa_credito"]) {
		grid-column: 1 / -1;
	}

	/* Seguro de Vida (14) */
	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_14 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(input[name="data_nascimento_titular"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(input[name="data_nascimento_titular"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(select[name="possui_dependentes"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(select[name="possui_dependentes"]) {
		grid-column: 2;
	}

	/* Seguro Residencial (15) */
	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_15 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(select[name="tipo_imovel"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(select[name="tipo_imovel"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(input[name="cep_imovel"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(input[name="cep_imovel"]) {
		grid-column: 2;
	}

	/* Seguro Viagem (16) */
	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_16 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(select[name="tipo_destino"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(select[name="tipo_destino"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="destino_viagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="destino_viagem"]) {
		grid-column: 2;
	}

	/* Viagem: labels longos — cada um em linha inteira */
	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="qtd_viajantes"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="qtd_viajantes"]),
	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(select[name="qtd_viajantes"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(select[name="qtd_viajantes"]) {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="idade_mais_velho"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="idade_mais_velho"]) {
		grid-column: 1 / -1;
	}

	/* Seguro Fiança (17) */
	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_17 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(select[name="finalidade_fianca"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(select[name="finalidade_fianca"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(input[name="valor_aluguel"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(input[name="valor_aluguel"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(input[name="cep_imovel"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(input[name="cep_imovel"]) {
		grid-column: 1 / -1;
	}

	/* Seguro Empresarial (18) */
	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_18 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="nome_empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="nome_empresa"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="segmento_atuacao"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="segmento_atuacao"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="cep_empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="cep_empresa"]) {
		grid-column: 1 / -1;
	}

	/* Frota (19) */
	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_19 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="nome_empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="nome_empresa"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="cnpj_empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="cnpj_empresa"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="qtd_veiculos"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="qtd_veiculos"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="tipos_veiculos"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="tipos_veiculos"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="cep_pernoite_frota"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="cep_pernoite_frota"]) {
		grid-column: 1 / -1;
	}

	/* RC (20) */
	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_20 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	/* RC: tipo + atividade — labels longos, cada um em linha inteira */
	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(select[name="tipo_rc"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(select[name="tipo_rc"]),
	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(input[name="tipo_rc"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(input[name="tipo_rc"]) {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(input[name="atividade_segmento"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(input[name="atividade_segmento"]) {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(select[name="faturamento_anual"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(select[name="faturamento_anual"]) {
		grid-column: 1 / -1;
	}

	/* Home CTA (21) */
	.vlr-product-form-card .fluentform_wrapper_21 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_21 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_21 .ff-el-group:has(select[name="assunto"]),
	.vlr-product-form-card .fluentform_wrapper_21 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_21 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff-el-group:has(select[name="assunto"]),
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	/* Seguro Garantia (22): após Nome (linha 1) e Whats|e-mail (linha 2) do bloco comum, linhas fixas para emparelhar bem. */
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 2;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_22 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="empresa"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="empresa"]) {
		grid-column: 1;
		grid-row: 3;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="cnpj"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="cnpj"]) {
		grid-column: 2;
		grid-row: 3;
	}

	/* Modalidade e objeto/observações — linha inteira cada um */
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(select[name="modalidade"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(select[name="modalidade"]),
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="modalidade"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="modalidade"]) {
		grid-column: 1 / -1;
		grid-row: 4;
	}

	/* Segurado/contratante | Vigência/prazo — mesma linha (DOM tem valores entre os dois) */
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(select[name="segurado_contratante"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(select[name="segurado_contratante"]),
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="segurado_contratante"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="segurado_contratante"]) {
		grid-column: 1;
		grid-row: 5;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="valor_contrato"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="valor_contrato"]) {
		grid-column: 1;
		grid-row: 6;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="valor_garantia"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="valor_garantia"]) {
		grid-column: 2;
		grid-row: 6;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="vigencia_prazo"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="vigencia_prazo"]) {
		grid-column: 2;
		grid-row: 5;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="objeto_documentos"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="objeto_documentos"]),
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(textarea[name="objeto_documentos"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(textarea[name="objeto_documentos"]) {
		grid-column: 1 / -1;
		grid-row: 7;
	}

	.vlr-product-form-card .fluentform_wrapper_22 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
		grid-row: 8;
	}

	/* Seguro Moto (7): mensagem + enviar em linha inteira (nome / Whats / e-mail no bloco comum abaixo). */
	.vlr-product-form-card .fluentform_wrapper_7 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-card .fluentform_wrapper_7 .ff_submit_btn_wrapper,
	.vlr-product-form-wrap .fluentform_wrapper_7 .ff-el-group:has(textarea[name="mensagem"]),
	.vlr-product-form-wrap .fluentform_wrapper_7 .ff_submit_btn_wrapper {
		grid-column: 1 / -1;
	}

	/*
	 * Formulários 7 e 11–22: 1ª linha = Nome (largura total); 2ª = WhatsApp | E-mail.
	 * (O auto, formulário 10, tem regras próprias acima.)
	 */
	.vlr-product-form-card .fluentform_wrapper_7 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_7 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_21 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="nome"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="nome"]) {
		grid-column: 1 / -1;
	}

	.vlr-product-form-card .fluentform_wrapper_7 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_7 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_21 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="whatsapp"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="whatsapp"]) {
		grid-column: 1;
	}

	.vlr-product-form-card .fluentform_wrapper_7 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_7 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_11 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_11 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_12 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_12 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_13 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_13 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_14 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_14 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_15 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_15 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_16 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_16 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_17 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_17 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_18 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_18 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_19 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_19 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_20 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_20 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_21 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_21 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-card .fluentform_wrapper_22 .ff-el-group:has(input[name="email"]),
	.vlr-product-form-wrap .fluentform_wrapper_22 .ff-el-group:has(input[name="email"]) {
		grid-column: 2;
	}
}

.vlr-product-section {
	padding: 90px 0;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.vlr-product-section.is-cool {
	background:
		linear-gradient(180deg, rgba(255,255,255,0.32), rgba(255,255,255,0) 18%),
		var(--vlr-product-cool);
}

.vlr-product-section.is-cool .vlr-product-shell {
	background:
		radial-gradient(circle at top right, rgba(250, 143, 36, 0.08), transparent 34%),
		linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(247,245,242,0.98) 100%);
	border: 1px solid rgba(17, 17, 17, 0.06);
	border-radius: 28px;
	box-shadow: 0 22px 50px rgba(17, 20, 18, 0.08);
	padding: 34px;
}

.vlr-product-section.is-warm {
	background:
		linear-gradient(180deg, rgba(255,255,255,0.2), rgba(255,255,255,0) 16%),
		var(--vlr-product-warm);
}

.vlr-product-section.is-plain {
	background:
		linear-gradient(180deg, rgba(255,255,255,0.18), rgba(255,255,255,0) 14%),
		var(--vlr-product-neutral);
}

.vlr-product-section + .vlr-product-section {
	border-top: 1px solid rgba(18, 58, 63, 0.05);
}

/* Secção FAQ: remove o separador `+ .vlr-product-section` que desenhava uma linha no topo da secção inteira. */
.vlr-product-section + .vlr-product-section:has(.vlr-product-faq-accordion),
.vlr-product-section + .vlr-product-section:has(.vlr-product-faq-head) {
	border-top: none !important;
}

.vlr-product-section-title {
	font-size: clamp(1.56rem, 1.62vw, 1.88rem);
	max-width: 22ch;
}

.vlr-product-form-title,
.vlr-product-cta-title {
	font-size: clamp(1.56rem, 1.62vw, 1.88rem);
	max-width: 22ch;
}

.vlr-product-card {
	padding: 24px;
	height: 100%;
	background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(255,251,246,0.94));
}

.vlr-product-card > .wp-block-group__inner-container {
	display: flex;
	flex-direction: column;
	height: 100%;
	gap: 0;
}

.vlr-product-card-title {
	margin: 0;
	font-family: var(--vlr-product-font-display);
	font-size: 1.24rem;
	line-height: 1.2;
	color: var(--vlr-product-green);
}

.vlr-product-card-text {
	margin: 12px 0 0;
	color: var(--vlr-product-muted);
	line-height: 1.72;
	font-size: var(--vlr-text-small);
}

/*
 * Cartões em grelha (passos 1–3, mini-cards, prova social): o h3 global usa text-wrap: balance,
 * o que quebra linhas cedo e deixa muito espaço vazio à direita. Aqui usamos wrap normal e
 * largura total; min-width: 0 nas colunas evita o mínimo intrínseco do flex apertar o texto.
 */
.vlr-product-page .vlr-product-card-title,
.vlr-product-page .vlr-product-mini-card .vlr-product-card-title {
	text-wrap: wrap;
	max-width: none;
	width: 100%;
	box-sizing: border-box;
}

.vlr-product-page .vlr-product-card-text,
.vlr-product-page .vlr-product-mini-card .vlr-product-card-text {
	text-wrap: wrap;
	max-width: none;
	width: 100%;
	box-sizing: border-box;
}

.vlr-product-page .vlr-product-cards.wp-block-columns > .wp-block-column,
.vlr-product-page .vlr-product-proof-grid.wp-block-columns > .wp-block-column {
	min-width: 0;
}

/*
 * Tabela de preços (Plano de saúde MEI/PME): após “Como comparar”; scroll horizontal em ecrãs estreitos.
 */
.vlr-product-page .vlr-product-pricing {
	margin-top: clamp(44px, 5vw, 68px);
	padding-top: clamp(28px, 3.5vw, 44px);
	border-top: 1px solid rgba(18, 58, 63, 0.08);
}

/* Quando a tabela vem logo após os cards, cria separação de seção mais evidente. */
.vlr-product-page .vlr-product-cards + .vlr-product-pricing {
	margin-top: clamp(72px, 8vw, 112px);
	padding-top: clamp(34px, 4vw, 52px);
}

.vlr-product-page .vlr-product-pricing > .wp-block-group__inner-container > .vlr-product-section-title {
	max-width: none;
	width: 100%;
	text-wrap: wrap;
}

.vlr-product-page .vlr-product-pricing > .wp-block-group__inner-container > .vlr-product-text {
	margin-top: 12px;
	margin-bottom: 0;
	max-width: none;
	width: 100%;
	text-wrap: wrap;
}

/* Nota final após a tabela: respiro em relação ao cartão da grelha (tablet/telemóvel). */
.vlr-product-page .vlr-product-pricing figure.vlr-product-price-table + .vlr-product-text {
	margin-top: clamp(16px, 2.8vw, 22px);
	padding-top: 2px;
}

/* Evita largura “constrained” do tema/Gutenberg — a tabela deve usar toda a faixa do .vlr-product-shell. */
.vlr-product-page .vlr-product-pricing > .wp-block-group__inner-container {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
}

/*
 * WP is-layout-constrained: filhos diretos ganham max-width ≈ content-size + margin auto.
 * O figure da tabela ficava mais estreito que o cartão — espaço branco à direita da grelha.
 */
.vlr-product-page .vlr-product-pricing .wp-block-group__inner-container.is-layout-constrained > figure.wp-block-table.vlr-product-price-table,
.vlr-product-page .vlr-product-pricing .wp-block-group__inner-container.wp-block-group-is-layout-constrained > figure.wp-block-table.vlr-product-price-table {
	max-width: none !important;
	width: 100% !important;
	margin-inline: 0 !important;
}

.vlr-product-page .vlr-product-pricing .wp-block-table {
	margin-top: 20px;
	margin-bottom: 0;
	margin-left: 0;
	margin-right: 0;
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow-x: auto;
	overflow-y: visible;
	-webkit-overflow-scrolling: touch;
	padding: 0;
	border-radius: var(--vlr-product-radius-md);
	border: 0;
	/* Contorno por sombra: evita faixa entre “border-box” do cartão e o thead no canto arredondado. */
	box-shadow:
		var(--vlr-product-shadow),
		0 0 0 1px var(--vlr-product-line);
	/* Opaco: rgba deixava ver o fundo creme da página em faixa fina junto ao raio / ao thead. */
	background: #fff;
}

/* Desktop/tablet: tabela cabe na largura — esconde anti-alias entre raio do cartão e thead (sem matar scroll em mobile). */
@media (min-width: 768px) {
	.vlr-product-page .vlr-product-pricing .wp-block-table.vlr-product-price-table {
		overflow: hidden;
		padding: 0 0 4px;
	}
}

.vlr-product-page .vlr-product-pricing figure.wp-block-table.vlr-product-price-table {
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	margin-inline: 0 !important;
	box-sizing: border-box;
}

/*
 * Largura total no cartão branco: layout fixo reparte as 7 colunas; sem isto a grelha pode ficar mais estreita que o figure.
 */
.vlr-product-page .vlr-product-price-table table,
.vlr-product-page .vlr-product-price-table table.has-fixed-layout {
	width: 100% !important;
	min-width: 100% !important;
	table-layout: fixed !important;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 0;
	font-family: var(--vlr-product-font-body);
	font-size: clamp(0.78rem, 1.05vw, 0.9rem);
	text-wrap: wrap;
	box-sizing: border-box;
}

/*
 * Core WP (wp-block-table): thead { border-bottom: 3px solid } sem cor → linha cinzenta entre cabeçalho e corpo.
 */
.vlr-product-page .vlr-product-price-table thead {
	border-bottom: none !important;
}

.vlr-product-page .vlr-product-price-table tfoot {
	border-top: none !important;
}

/*
 * Cantos superiores: não definir radius nos th — com overflow:hidden no cartão o cabeçalho corta num único arco natural.
 * Radius nos th criava uma “linha” extra / costura sobre o gradiente escuro.
 */
.vlr-product-page .vlr-product-price-table th,
.vlr-product-page .vlr-product-price-table td {
	padding: 12px 10px;
	text-align: center;
	vertical-align: middle;
	border: 1px solid rgba(18, 58, 63, 0.1);
}

.vlr-product-page .vlr-product-price-table thead th {
	background: linear-gradient(180deg, #1a3340 0%, #152a30 100%);
	color: #fff;
	font-weight: 700;
	font-family: var(--vlr-product-font-ui);
	font-size: 0.72rem;
	letter-spacing: 0.03em;
	border-color: rgba(255, 255, 255, 0.12);
}

/* Primeira linha encostada ao topo interior — sem micro-espaço nem borda dupla no vértice. */
.vlr-product-page .vlr-product-price-table thead tr:first-child th {
	border-top: none;
	background-clip: padding-box;
}

.vlr-product-page .vlr-product-price-table thead tr:first-child th:first-child {
	border-left: none;
}

.vlr-product-page .vlr-product-price-table thead tr:first-child th:last-child {
	border-right: none;
}

.vlr-product-page .vlr-product-price-table tbody tr:nth-child(odd) {
	background: rgba(18, 58, 63, 0.035);
}

.vlr-product-page .vlr-product-price-table tbody tr:nth-child(even) {
	background: #fff;
}

.vlr-product-page .vlr-product-price-table tbody td:first-child {
	font-weight: 700;
	color: var(--vlr-product-green);
	background: rgba(250, 143, 36, 0.07);
}

@media (max-width: 767px) {
	/* style.css força display:block nas tabelas para scroll — aqui mantemos display:table para a grelha repartir 100%. O scroll fica no figure.wp-block-table (overflow-x). */
	.vlr-product-page .vlr-product-price-table table,
	.vlr-product-page .vlr-product-price-table table.has-fixed-layout {
		display: table !important;
		min-width: 720px !important;
		width: max(100%, 720px) !important;
	}

	.vlr-product-page .vlr-product-price-table th,
	.vlr-product-page .vlr-product-price-table td {
		padding: 9px 6px;
		font-size: 0.76rem;
	}

	.vlr-product-page .vlr-product-price-table thead th {
		font-size: 0.65rem;
	}

	.vlr-product-page .vlr-product-pricing .wp-block-table {
		padding: 0 0 12px !important;
		box-sizing: border-box !important;
	}
}

/*
 * Tablet e telemóvel largo (640–1024): sem min-width rígido na tabela; layout fixo + tipo legível sem scroll na maioria dos iPads.
 */
@media (min-width: 640px) and (max-width: 1024px) {
	.vlr-product-page .vlr-product-pricing .wp-block-table {
		padding: 0 0 12px !important;
		box-sizing: border-box !important;
		/* Grelha cabe na largura: hidden elimina faixa junto ao raio (conflitava com overflow-x:auto). */
		overflow: hidden !important;
	}

	.vlr-product-page .vlr-product-price-table {
		max-width: 100% !important;
		width: 100% !important;
	}

	.vlr-product-page .vlr-product-price-table table {
		min-width: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		table-layout: fixed !important;
		font-size: clamp(0.68rem, 1.45vw, 0.82rem) !important;
	}

	.vlr-product-page .vlr-product-price-table th,
	.vlr-product-page .vlr-product-price-table td {
		padding: 9px 6px !important;
		line-height: 1.3 !important;
		overflow-wrap: break-word !important;
		word-break: normal !important;
		hyphens: none !important;
		box-sizing: border-box !important;
	}

	.vlr-product-page .vlr-product-price-table thead th {
		font-size: clamp(0.58rem, 1.25vw, 0.7rem) !important;
		line-height: 1.25 !important;
		letter-spacing: 0.02em !important;
	}

	.vlr-product-page .vlr-product-price-table tbody td:first-child,
	.vlr-product-page .vlr-product-price-table thead th:first-child {
		width: 12%;
		min-width: 0;
	}
}

.vlr-product-logo-band {
	background:
		linear-gradient(180deg, rgba(255,255,255,0.26), rgba(255,255,255,0) 24%),
		linear-gradient(180deg, #f4ede2 0%, #f1eadf 100%);
	padding: 26px 0 52px;
	margin-top: 2px;
	border-top: 1px solid rgba(18, 58, 63, 0.06);
	border-bottom: 1px solid rgba(18, 58, 63, 0.05);
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.vlr-home-logos-band {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.2), var(--vlr-home-band, #f4ead9));
	padding: var(--vlr-logos-band-padding-top, 24px) 0 var(--vlr-logos-band-padding-bottom, 56px);
	margin-top: 2px;
	border-top: 1px solid rgba(18, 58, 63, 0.06);
	border-bottom: 1px solid rgba(18, 58, 63, 0.05);
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.vlr-home-logos-band .vlr-home-shell {
	max-width: var(--vlr-container-max);
	margin-inline: auto;
	padding-inline: var(--vlr-gutter-desktop);
}

/* Força ordem vertical: título, esteira, texto explicativo */
.vlr-home-logos-band .vlr-home-shell > .wp-block-group__inner-container {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
}

.vlr-home-logos-band .vlr-section-kicker {
	margin-bottom: 14px;
	text-align: center;
	color: #204f55;
	font-family: var(--vlr-product-font-ui);
	font-size: var(--vlr-text-kicker);
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.vlr-home-logos-band .vlr-product-logos-note {
	margin: 18px auto 0;
	max-width: 72ch;
	display: block !important;
	width: 100%;
	text-align: center;
	color: #4d5c5f;
}

.vlr-home-logos-grid {
	max-width: none !important;
	width: 100%;
	display: block !important;
	overflow: hidden;
	position: relative;
	isolation: isolate;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, 0.95) 7%, #000 14%, #000 86%, rgba(0, 0, 0, 0.95) 93%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, 0.95) 7%, #000 14%, #000 86%, rgba(0, 0, 0, 0.95) 93%, transparent 100%);
}

.vlr-home-logos-grid > .wp-block-group__inner-container {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
}

.vlr-home-logos-marquee {
	display: flex;
	width: 100%;
	max-width: 100%;
	min-height: 88px;
	overflow: hidden;
	align-items: center;
}

.vlr-home-logos-track {
	display: flex;
	align-items: center;
	gap: 26px;
	width: max-content;
	padding-right: 26px;
	will-change: transform;
	animation: vlr-home-marquee var(--vlr-logos-marquee-duration-product, var(--vlr-logos-marquee-duration-home, var(--vlr-logos-marquee-duration, 28s))) linear infinite;
}

.vlr-home-logos-marquee:hover .vlr-home-logos-track {
	animation-play-state: paused;
}

.vlr-logo-item {
	margin: 0;
	padding: 12px 20px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(18, 58, 63, 0.08);
	min-width: 178px;
	flex: 0 0 178px;
	box-shadow: 0 10px 24px rgba(17, 20, 18, 0.04);
}

.vlr-logo-item img {
	width: 100%;
	height: 28px;
	object-fit: contain;
	filter: none;
	opacity: 0.92;
}

.vlr-product-logo-band .vlr-product-shell {
	overflow: hidden;
	position: relative;
	isolation: isolate;
	padding-block: 0;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, 0.95) 7%, #000 14%, #000 86%, rgba(0, 0, 0, 0.95) 93%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, 0.95) 7%, #000 14%, #000 86%, rgba(0, 0, 0, 0.95) 93%, transparent 100%);
}

.vlr-product-logo-grid {
	max-width: none !important;
	width: 100%;
}

.vlr-product-logo-grid > .wp-block-group__inner-container {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
}

.vlr-product-logo-band .vlr-product-kicker {
	margin-bottom: 16px;
	text-align: center;
}

.vlr-product-logos-marquee {
	display: flex;
	width: max-content;
	flex-wrap: nowrap;
	will-change: transform;
	animation: vlr-product-marquee 22s linear infinite;
}

.vlr-product-logos-marquee > .wp-block-group__inner-container {
	display: flex;
	width: max-content;
	flex-wrap: nowrap;
}

.vlr-product-logos-track {
	display: flex;
	align-items: center;
	gap: 30px;
	flex-wrap: nowrap;
	flex-shrink: 0;
	padding-right: 30px;
}

.vlr-product-logos-track > .wp-block-group__inner-container {
	display: flex;
	align-items: center;
	gap: 30px;
	flex-wrap: nowrap;
}

.vlr-product-logo-card,
.vlr-product-mini-card {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 13px 22px;
	border: 1px solid rgba(18, 58, 63, 0.08);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	min-width: 188px;
	flex: 0 0 188px;
	box-shadow: 0 10px 24px rgba(17, 20, 18, 0.04);
}

.vlr-product-logo-card img {
	max-width: 128px;
	max-height: 38px;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: saturate(0.92);
}

.vlr-product-mini-card {
	justify-content: flex-start;
	padding: 22px 20px;
	min-width: 0;
	border-radius: 18px;
	box-shadow: 0 12px 28px rgba(17, 20, 18, 0.04);
	background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,251,246,0.92));
}

.vlr-product-mini-card .wp-block-group__inner-container {
	width: 100%;
}

.vlr-product-mini-card .vlr-product-card-title {
	font-size: 1.1rem;
}

.vlr-product-mini-stack {
	display: grid;
	gap: 18px;
}

.vlr-product-mini-stack > .wp-block-group__inner-container {
	display: grid;
	gap: 18px;
}

.vlr-product-mini-eyebrow {
	margin: 0 0 10px;
	font-family: var(--vlr-product-font-ui);
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #3e666b;
}

.vlr-product-insight-panel {
	margin-top: 24px;
	padding: 36px 42px 38px;
	border-radius: 28px;
	background:
		radial-gradient(circle at 12% 18%, rgba(250, 143, 36, 0.1), transparent 28%),
		radial-gradient(circle at right top, rgba(247, 142, 47, 0.12), transparent 32%),
		linear-gradient(135deg, #17181c 0%, #241f1a 100%);
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 24px 56px rgba(17, 20, 18, 0.16);
	position: relative;
	overflow: hidden;
}

.vlr-product-insight-panel > .wp-block-group__inner-container {
	max-width: 820px !important;
	position: relative;
	padding-left: 26px !important;
}

.vlr-product-insight-panel > .wp-block-group__inner-container::before {
	content: "";
	position: absolute;
	left: 0;
	top: 2px;
	bottom: 2px;
	width: 4px;
	border-radius: 999px;
	background: linear-gradient(180deg, #f78e2f 0%, #ffd2a3 100%);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.vlr-product-insight-panel .vlr-product-kicker {
	color: rgba(255, 244, 229, 0.78);
	margin-bottom: 16px;
	font-size: 0.74rem;
	letter-spacing: 0.11em;
}

.vlr-product-insight-panel,
.vlr-product-insight-panel p,
.vlr-product-insight-panel .vlr-product-card-title,
.vlr-product-insight-panel .vlr-product-section-title,
.vlr-product-insight-panel .vlr-product-text {
	color: #f7f1e8 !important;
}

.vlr-product-insight-text {
	margin: 0;
	font-family: var(--vlr-product-font-display);
	font-size: clamp(1.62rem, 1.7vw, 2.05rem);
	font-weight: 600;
	line-height: 1.34;
	letter-spacing: -0.035em;
	color: #f7f1e8;
	max-width: 24ch;
	text-wrap: balance;
}

.vlr-product-profile-layout,
.vlr-product-proof-grid {
	gap: 28px;
}

.vlr-product-profile-layout > .wp-block-column:first-child {
	padding-right: 18px;
}

.vlr-product-profile-layout > .wp-block-column:last-child {
	display: flex;
	align-items: stretch;
}

.vlr-product-proof-grid .vlr-product-mini-card,
.vlr-product-profile-layout .vlr-product-mini-card {
	height: 100%;
}

.vlr-product-proof-grid .vlr-product-mini-card {
	padding: 24px 22px;
}

.vlr-product-split-card {
	padding: 32px;
	border-radius: var(--vlr-product-radius-lg);
	border: 1px solid var(--vlr-product-line);
	background: linear-gradient(135deg, rgba(255,255,255,0.86) 0%, rgba(255,249,242,0.94) 100%);
	box-shadow: var(--vlr-product-shadow);
}

.vlr-product-split-card .wp-block-columns {
	align-items: center;
	gap: 28px;
}

.vlr-product-media-split {
	display: grid !important;
	grid-template-columns: minmax(320px, 0.95fr) minmax(360px, 1.05fr);
	align-items: center !important;
	gap: 24px;
}

.vlr-product-media-split > .wp-block-column {
	min-width: 0;
}

.vlr-product-media-split > .wp-block-column:first-child {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.vlr-product-media-split > .wp-block-column:last-child {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	max-width: 680px;
	padding: 8px 6px 8px 10px;
}

.vlr-product-split-card .wp-block-image {
	margin: 0;
}

.vlr-product-split-card img {
	border-radius: 22px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.vlr-product-media-split .vlr-product-media-card {
	width: 100%;
	max-width: 100%;
	margin: 0;
	border-radius: 26px;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.vlr-product-media-split .vlr-product-media-card img,
.vlr-product-media-split .wp-block-image img {
	width: 100%;
	aspect-ratio: 0.95 / 1;
	object-fit: cover;
	border-radius: 24px;
}

.vlr-product-media-split .vlr-product-kicker {
	margin-bottom: 10px;
	font-size: 0.76rem;
	letter-spacing: 0.08em;
}

.vlr-product-media-split .vlr-product-section-title {
	max-width: 21ch;
	margin-bottom: 0;
	text-align: left;
	font-size: clamp(1.54rem, 1.58vw, 1.82rem);
	line-height: 1.05;
	letter-spacing: -0.035em;
}

.vlr-product-media-split .vlr-product-text {
	max-width: 44ch;
	margin-top: 18px;
	text-align: left;
	font-size: 1rem;
	line-height: 1.65;
}

.vlr-product-media-split .vlr-product-list-checks {
	max-width: 34rem;
	margin-top: 20px;
	padding-left: 0;
	text-align: left;
	display: grid;
	gap: 12px;
}

.vlr-product-media-split .vlr-product-list-checks li {
	padding-left: 28px;
	line-height: 1.6;
	font-size: 0.98rem;
}

.vlr-product-list-checks {
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 14px;
}

.vlr-product-list-checks li {
	position: relative;
	padding-left: 26px;
	line-height: 1.7;
	color: var(--vlr-product-muted);
	font-size: var(--vlr-text-small);
}

.vlr-product-list-checks li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.38em;
	width: 14px;
	height: 14px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--vlr-product-accent) 0%, #ffd4a3 100%);
	box-shadow: inset 0 0 0 3px rgba(255,255,255,0.7);
}

.vlr-product-step {
	display: inline-flex;
	width: 36px;
	height: 36px;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: rgba(250, 143, 36, 0.14);
	color: var(--vlr-product-accent-strong);
	font-family: var(--vlr-product-font-ui);
	font-size: 0.92rem;
	font-weight: 800;
	margin-bottom: 14px;
	box-shadow: inset 0 0 0 1px rgba(250, 143, 36, 0.1);
}

/* FAQ acordeão (.vlr-product-faq-*): estilos globais em faq-accordion-global.css */

/* Faixa neutra + cartão escuro: partilhado com .vlr-home-cta / .vlr-cta-box (home e páginas de produto). */
.vlr-product-cta {
	padding: clamp(48px, 6vw, 88px) 0;
	background: var(--vlr-product-bg);
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

/* Mesma faixa neutra; padding vertical vem de .vlr-home-section.vlr-home-cta (style.css). */
.vlr-home-cta {
	padding: 0;
	/* Alinhado ao body da página (.vlr-product-bg = --vlr-color-bg). */
	background: var(--vlr-product-bg);
	width: 100vw;
	margin: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

/*
 * CTA em páginas de produto: o Gutenberg (has-background, paleta) pode sobrepor o fundo
 * da faixa; forçamos o mesmo canvas do body. Secções interiores sem segundo “quadrado” de cor.
 */
.vlr-product-page .vlr-home-section.vlr-home-cta,
.vlr-product-page .alignfull.vlr-home-section.vlr-home-cta {
	background: var(--vlr-product-bg) !important;
	background-color: var(--vlr-product-bg) !important;
}

.vlr-product-page .vlr-home-cta > .wp-block-group__inner-container,
.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell {
	background: transparent !important;
}

.vlr-product-cta-box {
	padding: 36px;
	border-radius: var(--vlr-product-radius-lg);
	background:
		radial-gradient(circle at top right, rgba(250, 143, 36, 0.14), transparent 24%),
		linear-gradient(135deg, #17181c 0%, #241f1a 100%);
	color: #fff7f1;
}

/* CTA com classes da home: referência — charcoal, glow, colunas centradas, largura do shell. */
.vlr-home-cta .vlr-cta-box {
	max-width: none;
	width: 100%;
	margin-inline: 0;
	padding: clamp(44px, 5vw, 56px) clamp(40px, 4vw, 52px);
	border-radius: 22px;
	background:
		/* Ligeiramente mais suave que 0,12: reduz a sensação de “arco claro” no topo. */
		radial-gradient(circle at 100% 0%, rgba(245, 130, 32, 0.08), transparent 36%),
		linear-gradient(155deg, #2d2621 0%, #252019 48%, #1a1512 100%);
	color: #fff;
	/* Sombra mais contida: menos neblina em creme por baixo / nas bordas. */
	box-shadow: 0 10px 36px rgba(10, 8, 7, 0.28);
	gap: clamp(28px, 4vw, 44px);
	align-items: flex-start;
}

@media (min-width: 901px) {
	.vlr-home-cta .vlr-cta-box.wp-block-columns > .wp-block-column:nth-child(1) {
		flex-basis: 65% !important;
	}

	.vlr-home-cta .vlr-cta-box.wp-block-columns > .wp-block-column:nth-child(2) {
		flex-basis: 35% !important;
	}
}

.vlr-home-cta .wp-block-columns.vlr-cta-box {
	column-gap: clamp(28px, 3.5vw, 40px) !important;
	row-gap: 24px;
	align-items: flex-start !important;
}

@media (min-width: 641px) {
	.vlr-home-cta .vlr-home-actions {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		gap: 12px !important;
		margin-top: 28px;
	}

	.vlr-home-cta .vlr-home-actions .wp-block-button,
	.vlr-home-cta .vlr-home-actions .wp-block-button__link {
		width: auto !important;
	}
}

.vlr-product-cta-box .vlr-product-kicker,
.vlr-product-cta-box .vlr-product-cta-title,
.vlr-product-cta-box .vlr-product-cta-text {
	color: #fff7f1;
}

.vlr-product-cta-box .vlr-product-kicker {
	opacity: 0.78;
}

.vlr-product-contact-card {
	padding: 22px;
	background: rgba(255, 247, 241, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 18px;
	box-shadow: none;
}

.vlr-home-cta .vlr-cta-contact-card {
	padding: 22px 24px;
	background: var(--vlr-product-cta-contact-bg, #3b3026);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
	box-shadow: none;
}

.vlr-home-cta .vlr-cta-contact-card strong {
	font-weight: 700;
	color: var(--vlr-product-cta-contact-text, #ffffff);
}

.vlr-product-contact-card p {
	margin: 0 0 16px;
	color: #fff7f1;
	line-height: 1.7;
}

.vlr-home-cta .vlr-cta-contact-card p {
	margin: 0 0 16px;
	color: var(--vlr-product-cta-contact-text, #ffffff);
	line-height: 1.65;
}

.vlr-product-contact-card p:last-child,
.vlr-home-cta .vlr-cta-contact-card p:last-child {
	margin-bottom: 0;
}

.vlr-product-contact-card a {
	color: #fff7f1;
	text-decoration: none;
}

.vlr-home-cta .vlr-cta-contact-card a {
	color: var(--vlr-product-cta-link, #ffffff);
	text-decoration: none;
}

.vlr-home-cta .vlr-cta-contact-card a:hover,
.vlr-home-cta .vlr-cta-contact-card a:focus-visible {
	color: var(--vlr-product-cta-link-hover, #F78E2F);
}

/*
 * Páginas de produto: cores da CTA vêm do Personalizar (:root em asset-loader).
 * Sobrepõe os estáticos acima sem o antigo seletor * (que impedia o match da referência).
 */
.vlr-product-page .vlr-home-cta .vlr-cta-title {
	color: var(--vlr-product-cta-title, #ffffff) !important;
}

.vlr-product-page .vlr-home-cta .vlr-cta-text {
	color: var(--vlr-product-cta-text, rgba(255, 255, 255, 0.78)) !important;
}

.vlr-product-page .vlr-home-cta .vlr-cta-contact-card {
	background: var(--vlr-product-cta-contact-bg, rgba(255, 255, 255, 0.05)) !important;
}

.vlr-product-page .vlr-home-cta .vlr-cta-contact-card p,
.vlr-product-page .vlr-home-cta .vlr-cta-contact-card a:not(.wp-block-button__link) {
	color: var(--vlr-product-cta-contact-text, rgba(255, 255, 255, 0.92)) !important;
}

.vlr-product-page .vlr-home-cta .vlr-cta-contact-card strong {
	color: var(--vlr-product-cta-contact-text, #ffffff) !important;
}

.vlr-product-page .vlr-home-cta .vlr-cta-contact-card a:not(.wp-block-button__link):hover,
.vlr-product-page .vlr-home-cta .vlr-cta-contact-card a:not(.wp-block-button__link):focus-visible {
	color: var(--vlr-product-cta-link-hover, #f58220) !important;
}

/*
 * Largura como o FAQ: em seguro-residencial o .velociraptor-container (1200/1250px) + inner
 * is-layout-constrained ficava mais estreito que .vlr-product-shell (var(--vlr-container-max)).
 */
.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell {
	max-width: var(--vlr-container-max) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--vlr-gutter-desktop) !important;
	padding-right: var(--vlr-gutter-desktop) !important;
	width: 100%;
	box-sizing: border-box;
}

.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell > .wp-block-group__inner-container.is-layout-constrained,
.vlr-product-page .vlr-home-cta .vlr-cta-contact-card > .wp-block-group__inner-container.is-layout-constrained {
	max-width: none !important;
	width: 100% !important;
}

@media (min-width: 641px) {
	.vlr-product-page .vlr-home-cta .vlr-home-actions.is-layout-flex {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		gap: 12px !important;
	}

	.vlr-product-page .vlr-home-cta .vlr-home-actions .wp-block-button,
	.vlr-product-page .vlr-home-cta .vlr-home-actions .wp-block-button__link {
		width: auto !important;
	}
}

.vlr-product-section-head {
	align-items: start;
}

.vlr-product-section-head .wp-block-column:last-child .vlr-product-text {
	margin-top: 6px;
}

@media (min-width: 1025px) {
	.vlr-product-hero-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(390px, 430px);
		align-items: start;
		column-gap: 28px;
		row-gap: 0;
	}

	.vlr-product-hero-grid > .wp-block-column {
		margin: 0 !important;
		min-width: 0;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child {
		max-width: none;
	}

	.vlr-product-hero-grid > .wp-block-column:last-child {
		display: flex !important;
		justify-content: flex-start;
		align-items: flex-start;
	}

	.vlr-product-hero-grid > .wp-block-column:last-child .vlr-product-form-card {
		max-width: 430px;
		width: 100%;
		margin-left: 0;
		margin-top: 18px;
	}
}

@media (max-width: 1024px) {
	.vlr-product-shell {
		padding-inline: var(--vlr-gutter-tablet);
	}

	.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell {
		padding-inline: var(--vlr-gutter-tablet) !important;
	}

	.vlr-product-profile-layout,
	.vlr-product-proof-grid {
		gap: 22px;
	}

	.vlr-product-hero-grid,
	.vlr-product-section-head,
	.vlr-product-cards {
		flex-direction: column !important;
	}

	.vlr-product-split-card .wp-block-columns,
	.vlr-product-logo-grid,
	.vlr-product-media-split {
		flex-direction: column !important;
	}

	/*
	 * Cartão imagem + texto: em base é CSS grid — flex-direction acima não empilha.
	 * Sem isto a foto mantém max-width antigo e fica “buraco” à direita no tablet.
	 */
	.vlr-product-page .vlr-product-media-split {
		display: flex !important;
		flex-direction: column !important;
		grid-template-columns: none !important;
		align-items: stretch !important;
		gap: clamp(18px, 3vw, 26px) !important;
	}

	.vlr-product-page .vlr-product-media-split > .wp-block-column {
		flex-basis: auto !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
	}

	.vlr-product-page .vlr-product-media-split > .wp-block-column:last-child {
		max-width: none !important;
		padding: 0 !important;
	}

	.vlr-product-page .vlr-product-media-split .vlr-product-media-card {
		max-width: none !important;
		width: 100% !important;
	}

	.vlr-product-page .vlr-product-media-split .vlr-product-media-card img,
	.vlr-product-page .vlr-product-media-split .wp-block-image img {
		width: 100% !important;
	}

	.vlr-product-hero-form {
		margin-top: -18px;
		padding-inline: var(--vlr-gutter-desktop) var(--vlr-gutter-mobile);
	}

	.vlr-product-section {
		padding: var(--vlr-section-space-tablet) 0;
	}
}

@media (max-width: 767px) {
	.vlr-product-shell {
		padding-inline: var(--vlr-gutter-mobile);
	}

	/*
	 * Apenas mobile: cartão editorial (imagem + texto) mais largo — gutters laterais menores.
	 */
	.vlr-product-page .vlr-product-shell:has(.vlr-product-split-card) {
		padding-inline: 10px !important;
		max-width: min(var(--vlr-inner-product-content-max, var(--vlr-container-max)), calc(100vw - 20px)) !important;
	}

	.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell {
		padding-inline: var(--vlr-gutter-mobile) !important;
	}

	.vlr-product-insight-panel {
		padding: 24px 20px 26px;
	}

	.vlr-product-insight-text {
		font-size: 1.3rem;
		max-width: none;
	}

	.vlr-product-insight-panel > .wp-block-group__inner-container {
		padding-left: 18px !important;
	}

	.vlr-product-insight-panel .vlr-product-kicker {
		margin-bottom: 12px;
	}

	.vlr-product-hero {
		padding: var(--vlr-product-hero-space-mobile) 0 14px;
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.vlr-home-logos-band {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.vlr-home-logos-band .vlr-home-shell {
		padding-inline: var(--vlr-gutter-mobile);
	}

	.vlr-logo-item {
		padding: 11px 14px;
		min-width: 152px;
	}

	.vlr-logo-item img {
		height: 22px;
	}

	.vlr-product-logo-band,
	.vlr-product-section,
	.vlr-product-cta {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.vlr-product-hero-grid {
		display: flex;
		flex-direction: column;
		gap: 16px;
	}

	.vlr-product-hero-grid > .wp-block-column {
		display: block !important;
		flex-basis: 100% !important;
	}

	.vlr-product-hero-grid > .wp-block-column:last-child {
		display: flex !important;
		flex-direction: column;
		gap: 18px;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child {
		display: flex !important;
		flex-direction: column;
		align-items: flex-start;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-kicker,
	.vlr-product-hero-grid > .wp-block-column:first-child .vlr-section-kicker {
		order: 1;
		margin-bottom: 8px;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-title {
		order: 2;
		font-size: var(--vlr-title-mobile);
		line-height: var(--vlr-title-mobile-line-safe);
		max-width: none;
		width: 100%;
	}

	.vlr-product-form-card,
	.vlr-product-card,
	.vlr-product-faq-card,
	.vlr-product-contact-card,
	.vlr-home-cta .vlr-cta-contact-card {
		padding: calc(var(--vlr-card-padding-mobile) + 2px) var(--vlr-card-padding-mobile);
		border-radius: 18px;
	}

	.vlr-product-section {
		padding: 56px 0;
	}

	.vlr-product-cta-box {
		padding: calc(var(--vlr-cta-padding-mobile) + 6px) var(--vlr-cta-padding-mobile);
		border-radius: 22px;
	}

	.vlr-home-cta .vlr-cta-box {
		max-width: 100%;
		padding: calc(var(--vlr-cta-padding-mobile) + 8px) var(--vlr-cta-padding-mobile);
		border-radius: 20px;
	}

	.vlr-home-cta .vlr-home-actions {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.vlr-home-cta .vlr-home-actions .wp-block-button,
	.vlr-home-cta .vlr-home-actions .wp-block-button__link {
		width: 100% !important;
	}

	.vlr-product-logo-card,
	.vlr-product-mini-card,
	.vlr-product-split-card {
		padding: var(--vlr-card-padding-mobile);
	}

	.vlr-product-hero-aside {
		gap: 12px;
		display: grid;
		padding: 12px;
		border-radius: 22px;
	}

	.vlr-product-hero-form {
		margin-top: 0;
		padding-inline: 0;
	}

	.vlr-product-hero-badge {
		left: auto;
		right: auto;
		top: auto;
		margin: 0 0 12px 10px;
		max-width: 184px;
		padding: 12px 13px;
	}

	.vlr-product-hero-visual img {
		display: none !important;
	}

	.vlr-product-hero-visual {
		display: block;
		min-height: 0;
		border-radius: 0;
	}

	.vlr-product-hero-badge strong {
		font-size: 0.88rem;
	}

	.vlr-product-form-card {
		border-radius: 24px;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}

	.vlr-product-hero-aside .vlr-product-hero-visual {
		order: 1;
	}

	.vlr-product-hero-aside .vlr-product-hero-form {
		order: 2;
		margin-top: 12px;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-lead {
		order: 5;
		margin-top: 16px;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-bullets {
		order: 6;
		margin-top: 16px;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-chip-row {
		order: 7;
		margin-top: 16px;
		max-width: none;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .vlr-product-chip-row > .wp-block-group__inner-container {
		max-width: none;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .wp-block-buttons {
		order: 8;
		margin-top: 18px;
		flex-direction: column;
		align-items: stretch;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child .wp-block-buttons .wp-block-button {
		width: 100%;
	}

	.vlr-product-hero-detail {
		order: 9;
		margin-top: 18px;
		max-width: none;
	}

	.vlr-product-page .wp-block-button__link {
		width: 100%;
		justify-content: center;
		min-height: 50px;
		padding: 14px 18px;
		border-radius: 10px;
	}

	.vlr-product-cards {
		gap: 14px;
	}

	.vlr-product-profile-layout,
	.vlr-product-proof-grid {
		gap: 14px;
	}

	.vlr-product-profile-layout > .wp-block-column:first-child {
		padding-right: 0;
	}

	.vlr-product-mini-stack,
	.vlr-product-mini-stack > .wp-block-group__inner-container {
		gap: 14px;
	}

	.vlr-product-card-title {
		font-size: 1.06rem;
	}

	.vlr-product-card-text {
		margin-top: 10px;
	}

	.vlr-product-split-card .wp-block-columns {
		gap: 20px;
		display: flex;
		flex-direction: column;
	}

	.vlr-product-media-split {
		display: flex !important;
		flex-direction: column !important;
		gap: 18px;
	}

	.vlr-product-section.is-cool .vlr-product-shell {
		padding: calc(var(--vlr-card-padding-mobile) + 4px);
		border-radius: 22px;
	}

	.vlr-product-page .vlr-product-section.is-cool .vlr-product-shell:has(.vlr-product-split-card) {
		padding: calc(var(--vlr-card-padding-mobile) + 2px) clamp(14px, 4vw, 18px) !important;
		border-radius: 22px;
		overflow: hidden;
	}

	.vlr-product-media-split > .wp-block-column:first-child,
	.vlr-product-media-split > .wp-block-column:last-child {
		width: 100%;
		max-width: none;
		padding-block: 0;
		display: contents;
	}

	.vlr-product-media-split,
	.vlr-product-media-split > .wp-block-column,
	.vlr-product-media-split .wp-block-group,
	.vlr-product-media-split .wp-block-group__inner-container {
		text-align: left !important;
		justify-items: start;
		align-items: flex-start !important;
	}

	.vlr-product-media-split .vlr-product-media-card {
		max-width: none;
		order: 3;
	}

	.vlr-product-media-split .vlr-product-media-card img,
	.vlr-product-media-split .wp-block-image img {
		aspect-ratio: 1.02 / 1;
		border-radius: 20px;
	}

	.vlr-product-media-split .wp-block-image {
		order: 3;
		margin: 8px 0 2px;
	}

	.vlr-product-media-split .vlr-product-section-title,
	.vlr-product-media-split .vlr-product-text,
	.vlr-product-media-split .vlr-product-list-checks {
		max-width: none;
	}

	.vlr-product-media-split .vlr-product-kicker {
		order: 1;
		margin-bottom: 8px;
		font-size: 0.78rem;
		letter-spacing: 0.06em;
		text-align: left !important;
		width: 100%;
		align-self: flex-start;
	}

	.vlr-product-media-split .vlr-product-section-title {
		order: 2;
		font-size: var(--vlr-title-mobile);
		line-height: var(--vlr-title-mobile-line-safe);
		max-width: none;
		width: 100%;
		text-align: left;
		align-self: flex-start;
	}

	.vlr-product-split-card .vlr-product-section-title {
		font-size: var(--vlr-title-mobile);
		line-height: var(--vlr-title-mobile-line-safe);
		max-width: none;
		width: 100%;
		text-align: left;
		align-self: flex-start;
	}

	.vlr-product-section-title,
	.vlr-product-form-title,
	.vlr-product-cta-title {
		max-width: none;
		width: 100%;
		font-size: var(--vlr-title-mobile);
		line-height: var(--vlr-title-mobile-line-safe);
	}

	.vlr-product-media-split .vlr-product-text {
		order: 4;
		margin-top: 14px;
		line-height: 1.68;
	}

	.vlr-product-media-split .vlr-product-list-checks {
		order: 5;
		margin-top: 14px;
	}

	.vlr-product-split-card img {
		aspect-ratio: 1.08;
	}

	.vlr-product-split-card .wp-block-columns > .wp-block-column {
		display: contents;
	}

	.vlr-product-split-card .vlr-product-kicker {
		order: 1;
		margin-bottom: 8px;
	}

	.vlr-product-split-card .vlr-product-section-title {
		order: 2;
		margin-bottom: 0;
	}

	.vlr-product-split-card .vlr-product-media-card,
	.vlr-product-split-card .wp-block-image {
		order: 3;
		margin: 14px 0 2px;
	}

	.vlr-product-split-card .vlr-product-text {
		order: 4;
		margin-top: 16px;
	}

	.vlr-product-split-card .vlr-product-list-checks {
		order: 5;
		margin-top: 16px;
	}

	.vlr-product-split-card .vlr-product-media-card img,
	.vlr-product-split-card .wp-block-image img {
		border-radius: 24px;
		aspect-ratio: 1.04;
	}

	.vlr-product-section-head {
		gap: 12px;
	}

	.vlr-product-cta-box,
	.vlr-home-cta .vlr-cta-box {
		gap: 18px;
	}

	.vlr-product-contact-card p,
	.vlr-home-cta .vlr-cta-contact-card p {
		margin-bottom: 12px;
	}

	.vlr-product-logos-marquee {
		animation-duration: 18s;
	}

	.vlr-product-logo-card {
		min-width: 168px;
		flex-basis: 168px;
	}
}

/* iPad mini retrato (~744px): hero de produto em duas colunas em vez de empilhar como telefone */
@media (min-width: 720px) and (max-width: 767px) {
	.vlr-product-hero-grid {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
		gap: clamp(16px, 2.5vw, 24px) !important;
	}

	.vlr-product-hero-grid > .wp-block-column {
		flex-basis: auto !important;
		display: flex !important;
	}

	.vlr-product-hero-grid > .wp-block-column:first-child {
		flex: 1 1 52% !important;
		max-width: 52% !important;
		min-width: 0 !important;
	}

	.vlr-product-hero-grid > .wp-block-column:last-child {
		flex: 1 1 48% !important;
		max-width: 48% !important;
		min-width: 0 !important;
	}

	.vlr-home-logos-band .vlr-home-shell {
		padding-inline: var(--vlr-gutter-tablet, 22px) !important;
	}
}

/*
 * Páginas internas por seção (Customizer)
 * Controles por bloco para páginas de produto/captação.
 */
.vlr-product-page .vlr-product-hero {
	padding-top: var(--vlr-inner-product-hero-pt, var(--vlr-product-hero-space-desktop)) !important;
	padding-bottom: var(--vlr-inner-product-hero-pb, 24px) !important;
}

.vlr-product-page .vlr-product-hero .vlr-product-shell,
.vlr-product-page .vlr-product-hero .velociraptor-container.vlr-home-shell {
	max-width: min(var(--vlr-inner-product-hero-max, var(--vlr-container-max)), calc(100vw - 2 * var(--vlr-gutter-desktop))) !important;
	margin-inline: auto !important;
}

.vlr-product-page .vlr-product-logo-band {
	padding-top: var(--vlr-inner-product-logos-pt, var(--vlr-logos-band-padding-top, 24px)) !important;
	padding-bottom: var(--vlr-inner-product-logos-pb, var(--vlr-logos-band-padding-bottom, 56px)) !important;
}

.vlr-product-page .vlr-product-logo-band .vlr-product-shell {
	max-width: min(var(--vlr-inner-product-logos-max, var(--vlr-container-max)), calc(100vw - 2 * var(--vlr-gutter-desktop))) !important;
	margin-inline: auto !important;
}

.vlr-product-page .vlr-product-section {
	padding-top: var(--vlr-inner-product-content-pt, var(--vlr-section-space-desktop)) !important;
	padding-bottom: var(--vlr-inner-product-content-pb, var(--vlr-section-space-desktop)) !important;
}

.vlr-product-page .vlr-product-section .vlr-product-shell {
	max-width: min(var(--vlr-inner-product-content-max, var(--vlr-container-max)), calc(100vw - 2 * var(--vlr-gutter-desktop))) !important;
	margin-inline: auto !important;
}

.vlr-product-page .vlr-home-cta.vlr-home-section {
	padding-top: var(--vlr-inner-product-cta-pt, var(--vlr-section-space-desktop)) !important;
	padding-bottom: var(--vlr-inner-product-cta-pb, var(--vlr-section-space-desktop)) !important;
}

.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell {
	max-width: min(var(--vlr-inner-product-cta-max, var(--vlr-container-max)), calc(100vw - 2 * var(--vlr-gutter-desktop))) !important;
	margin-inline: auto !important;
}

@media (max-width: 1024px) {
	.vlr-product-page .vlr-product-hero .vlr-product-shell,
	.vlr-product-page .vlr-product-hero .velociraptor-container.vlr-home-shell,
	.vlr-product-page .vlr-product-logo-band .vlr-product-shell,
	.vlr-product-page .vlr-product-section .vlr-product-shell,
	.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell {
		max-width: min(100%, calc(100vw - 2 * var(--vlr-gutter-tablet))) !important;
	}
}

@media (max-width: 767px) {
	.vlr-product-page .vlr-product-hero .vlr-product-shell,
	.vlr-product-page .vlr-product-hero .velociraptor-container.vlr-home-shell,
	.vlr-product-page .vlr-product-logo-band .vlr-product-shell,
	.vlr-product-page .vlr-product-section .vlr-product-shell,
	.vlr-product-page .vlr-home-cta .velociraptor-container.vlr-home-shell {
		max-width: min(100%, calc(100vw - 2 * var(--vlr-gutter-mobile))) !important;
	}
}

/*
 * Cartão editorial: no WP as colunas empilham até 781px (não só 767). O reset global
 * `.vlr-product-page .wp-block-group__inner-container { padding:0 !important }` deixa o texto colado
 * ao fundo do cartão — padding explícito no grupo + inner com especificidade superior.
 */
@media (max-width: 781px) {
	div.wp-block-group.vlr-product-split-card {
		padding-left: max(22px, env(safe-area-inset-left)) !important;
		padding-right: max(22px, env(safe-area-inset-right)) !important;
		padding-top: calc(var(--vlr-card-padding-mobile) + 10px) !important;
		padding-bottom: calc(var(--vlr-card-padding-mobile) + 10px) !important;
		box-sizing: border-box !important;
	}

	div.wp-block-group.vlr-product-split-card > .wp-block-group__inner-container {
		padding-left: max(12px, env(safe-area-inset-left)) !important;
		padding-right: max(12px, env(safe-area-inset-right)) !important;
		box-sizing: border-box !important;
	}

	.vlr-product-page .vlr-product-section.is-cool .vlr-product-shell:has(.vlr-product-split-card) {
		padding-left: max(18px, env(safe-area-inset-left)) !important;
		padding-right: max(18px, env(safe-area-inset-right)) !important;
	}
}

@keyframes vlr-product-marquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}
