/*
Theme Name: Leve Child · E3
Theme URI: https://example.com/leve
Author: E3 Comércio de Insumos
Description: Tema filho do Leve para a E3 Comércio de Insumos para Construção Civil. Landing da Pá Carregadeira Acoplável montada com blocos comuns do WordPress (sem construtor de páginas): seções prontas em "E3: Seções da Pá Carregadeira", cabeçalho e rodapé editáveis no Editor do site e contatos em Aparência › Personalizar › E3 · Contatos.
Template: leve
Requires at least: 6.6
Requires PHP: 7.4
Version: 3.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: leve-child-e3
Update URI: false
*/

/* ==========================================================================
   Tokens da marca
   ========================================================================== */
:root {
	--e3-navy: #031130;
	--e3-navy-2: #071a45;
	--e3-blue: #185DF1;
	--e3-blue-2: #4f86ff;
	--e3-blue-soft: #e3ecfd;
	--e3-light: #F3F7FE;
	--e3-ink: #0B0D12;
	--e3-ink-2: #2a3550;
	--e3-muted: #5d6a86;
	--e3-silver: #B7BDC7;
	--e3-line: #dbe3f1;
	--e3-on-dark: #eef3ff;
	--e3-on-dark-2: #a9b6d3;
	--e3-glass-b: rgba(255, 255, 255, .14);
	--e3-r: 18px;
	--e3-hh: 78px; /* altura do cabeçalho */
	--e3-check: url("assets/icons/check-azul.svg");
	--e3-seta: url("assets/icons/seta.svg");
}

body {
	-webkit-font-smoothing: antialiased;
	overflow-x: clip;
}

/* Seções de largura total encostadas umas nas outras (sem faixa branca entre elas) */
.wp-block-post-content > .alignfull,
.is-root-container > .alignfull {
	margin-block: 0;
}

/* ==========================================================================
   Cabeçalho (parts/header.html)
   ========================================================================== */
.wp-site-blocks > header.wp-block-template-part {
	background: rgba(3, 17, 48, .94);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	box-shadow: none;
	color: #fff;
	transition: background .3s;
}

.wp-site-blocks > header.wp-block-template-part.e3-rolou {
	background: rgba(3, 17, 48, .86);
	box-shadow: 0 10px 30px -20px rgba(0, 0, 0, .8);
}

/* Com o menu aberto, o desfoque sai: senão o menu (tela cheia) fica preso dentro do cabeçalho */
.wp-site-blocks > header.wp-block-template-part:has(.is-menu-open) {
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	background: var(--e3-navy);
}

.e3-header .e3-logo img {
	height: auto;
}

.e3-header .e3-menu {
	color: var(--e3-on-dark-2);
}

.e3-header .e3-menu .wp-block-navigation-item__content {
	color: var(--e3-on-dark-2);
	transition: color .2s;
}

.e3-header .e3-menu .wp-block-navigation-item__content:hover,
.e3-header .e3-menu .wp-block-navigation-item__content:focus {
	color: #fff;
	text-decoration: none;
}

.e3-header .e3-menu .wp-block-navigation__responsive-container-open,
.e3-header .e3-menu .wp-block-navigation__responsive-container-close {
	color: #fff;
}

.e3-header .e3-menu .wp-block-navigation__responsive-container-open svg {
	width: 30px;
	height: 30px;
}

/* "Solicitar orçamento" dentro do menu: só no menu aberto (celular/tablet) */
.e3-header .e3-menu .e3-menu-orcamento {
	display: none;
}

.e3-header .e3-menu .is-menu-open .e3-menu-orcamento {
	display: block;
	margin-top: 1rem;
}

.e3-header .e3-menu .is-menu-open .e3-menu-orcamento .wp-block-navigation-item__content {
	display: inline-block;
	padding: 1rem 1.5rem;
	border-radius: 12px;
	background: var(--e3-blue);
	color: #fff;
	font-size: 1rem;
	font-family: Barlow, Arial, sans-serif;
	font-weight: 700;
	letter-spacing: .08em;
}

.e3-header .e3-menu .wp-block-navigation__responsive-container.is-menu-open {
	padding: 28px max(24px, env(safe-area-inset-right)) 28px max(24px, env(safe-area-inset-left)) !important;
}

.e3-header .e3-menu .is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 48px;
}

.e3-header .e3-menu .is-menu-open .wp-block-navigation-item {
	font-family: "Barlow Condensed", Arial, sans-serif;
	font-weight: 700;
	letter-spacing: .04em;
}

.e3-header .e3-menu .is-menu-open .wp-block-navigation-item__content {
	color: #fff;
}

.e3-header-cta .wp-block-button__link {
	padding: .85rem 1.3rem;
	font-size: .8125rem;
	box-shadow: 0 10px 30px -10px rgba(24, 93, 241, .8);
}

/* Tablet: menu vira "hambúrguer" antes de faltar espaço (o padrão do WordPress é só abaixo de 600px) */
@media (min-width: 600px) and (max-width: 1080px) {
	.e3-header .e3-menu .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}

	.e3-header .e3-menu .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none;
	}
}

/* Celular (layout v2): 84px, logo de 56px centralizada, menu à direita, sem botão no topo */
@media (max-width: 600px) {
	:root {
		--e3-hh: 84px;
	}

	.e3-header {
		padding-top: 14px !important;
		padding-bottom: 14px !important;
	}

	.e3-header .e3-header-in {
		display: grid;
		grid-template-columns: 46px 1fr 46px;
		align-items: center;
		gap: 8px;
	}

	.e3-header .e3-logo {
		grid-column: 2;
		justify-self: center;
	}

	.e3-header .e3-logo img {
		height: 56px !important;
		width: auto !important;
		max-width: 100%;
	}

	.e3-header .e3-header-nav {
		grid-column: 3;
		justify-self: end;
	}

	.e3-header .e3-header-cta {
		display: none;
	}
}

/* ==========================================================================
   Base das seções da landing
   ========================================================================== */
.e3-sec {
	padding-top: clamp(80px, 10vw, 128px);
	padding-bottom: clamp(80px, 10vw, 128px);
}

.e3-dark {
	background: var(--e3-navy);
	color: var(--e3-on-dark);
}

.e3-light {
	background: var(--e3-light);
	color: var(--e3-ink);
}

.e3-white {
	background: #fff;
	color: var(--e3-ink);
}

.e3-sec h2,
.e3-como h2 {
	font-size: clamp(34px, 4.6vw, 56px);
	line-height: .98;
	text-wrap: balance;
}

.e3-light h2,
.e3-white h2 {
	color: var(--e3-navy);
}

.e3-dark h2,
.e3-dark h3 {
	color: inherit;
}

.e3-sec h3,
.e3-como h3 {
	font-size: 22px;
}

.e3-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font: 600 13px/1 Barlow, Arial, sans-serif;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--e3-blue);
}

.e3-eyebrow::before {
	content: "";
	width: 28px;
	height: 2px;
	background: currentColor;
}

.e3-dark .e3-eyebrow {
	color: var(--e3-blue-2);
}

.e3-lead {
	font-size: 19px;
	line-height: 1.6;
	color: var(--e3-muted);
	max-width: 60ch;
}

.e3-dark .e3-lead {
	color: var(--e3-on-dark-2);
}

/* Cabeçalho de seção (rótulo + título + texto) */
.e3-sec .e3-head {
	margin-bottom: clamp(40px, 5vw, 64px);
}

.e3-sec .e3-head > * {
	margin-block: 0;
}

.e3-sec .e3-head > * + * {
	margin-block-start: 18px;
}

.e3-sec .e3-head + * {
	margin-block-start: 0;
}

.e3-head.e3-center {
	text-align: center;
}

.e3-head.e3-center .e3-lead {
	margin-inline: auto;
}

/* Coluna de texto: rótulo, título e texto */
.e3-txt > .e3-eyebrow + h2 {
	margin-top: 16px;
}

.e3-txt > h2 + * {
	margin-top: 20px;
}

/* Botões */
.e3-sec .wp-block-button:not(.is-style-outline) > .wp-block-button__link,
.e3-btn-pri {
	box-shadow: 0 10px 30px -10px rgba(24, 93, 241, .8), inset 0 1px 0 rgba(255, 255, 255, .25);
}

.e3-sec .wp-block-button:not(.is-style-outline) > .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.e3-sec .wp-block-button:not(.is-style-outline) > .wp-block-button__link::after {
	content: "";
	width: 18px;
	height: 18px;
	flex: none;
	background: currentColor;
	-webkit-mask: var(--e3-seta) center / contain no-repeat;
	mask: var(--e3-seta) center / contain no-repeat;
}

.e3-sec .wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover {
	transform: translateY(-2px);
}

.e3-dark .wp-block-button.is-style-outline > .wp-block-button__link {
	background: rgba(255, 255, 255, .06);
	color: #fff;
	border-color: rgba(255, 255, 255, .24);
	border-width: 1px;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.e3-dark .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: rgba(255, 255, 255, .12);
	border-color: rgba(255, 255, 255, .4);
	color: #fff;
}

.e3-ctas {
	gap: 12px;
}

/* Fotos */
.e3-photo {
	position: relative;
	margin: 0;
	border-radius: var(--e3-r);
	overflow: hidden;
	background: #dfe5ef;
	box-shadow: 0 30px 60px -34px rgba(3, 17, 48, .55);
}

.e3-photo img {
	display: block;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
}

.e3-photo::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18);
	background: linear-gradient(180deg, transparent 58%, rgba(3, 17, 48, .5));
	pointer-events: none;
}

.e3-photo figcaption {
	position: absolute;
	left: 16px;
	bottom: 16px;
	z-index: 2;
	margin: 0;
	padding: 8px 12px;
	border-radius: 10px;
	background: rgba(3, 17, 48, .6);
	border: 1px solid rgba(255, 255, 255, .18);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: #fff;
	font: 600 12px/1.2 Barlow, Arial, sans-serif;
	letter-spacing: .12em;
	text-transform: uppercase;
	text-align: left;
}

.e3-r-169 {
	aspect-ratio: 900 / 506;
}

.e3-r-43 {
	aspect-ratio: 4 / 3;
}

/* Ícone em quadrado azul (cartões) */
.e3-ic {
	width: 52px;
	height: 52px;
	margin: 0;
	border-radius: 14px;
	display: grid;
	place-items: center;
	background: linear-gradient(160deg, var(--e3-blue), #0d3fae);
	box-shadow: 0 12px 24px -12px rgba(24, 93, 241, .9), inset 0 1px 0 rgba(255, 255, 255, .3);
}

.e3-ic img {
	width: 26px !important;
	height: 26px !important;
}

/* ==========================================================================
   Hero
   ========================================================================== */
.e3-hero {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(1100px 600px at 78% 38%, rgba(24, 93, 241, .32), transparent 60%),
		radial-gradient(700px 500px at 10% 100%, rgba(24, 93, 241, .16), transparent 60%),
		linear-gradient(180deg, #020c25 0%, var(--e3-navy) 60%, #04163d 100%);
}

.e3-sec.e3-hero {
	padding-top: clamp(48px, 7vw, 96px);
	padding-bottom: clamp(120px, 12vw, 170px);
}

.e3-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(183, 189, 199, .06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(183, 189, 199, .06) 1px, transparent 1px);
	background-size: 64px 64px;
	-webkit-mask-image: radial-gradient(ellipse at 60% 40%, #000 20%, transparent 75%);
	mask-image: radial-gradient(ellipse at 60% 40%, #000 20%, transparent 75%);
	pointer-events: none;
}

.e3-hero::after {
	content: "";
	position: absolute;
	left: -10%;
	right: -10%;
	bottom: -1px;
	height: 220px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 220' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%23185DF1' stop-opacity='0'/%3E%3Cstop offset='.55' stop-color='%234f86ff' stop-opacity='.9'/%3E%3Cstop offset='1' stop-color='%23B7BDC7' stop-opacity='.2'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 200C360 120 760 40 1440 70' fill='none' stroke='url(%23g)' stroke-width='2'/%3E%3Cpath d='M0 214C380 150 780 80 1440 110' fill='none' stroke='url(%23g)' stroke-width='1' opacity='.5'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat;
	pointer-events: none;
}

.e3-hero > * {
	position: relative;
	z-index: 1;
}

.wp-block-columns.e3-hero-in {
	gap: clamp(32px, 5vw, 72px);
	align-items: center;
}

.e3-hero-txt > * {
	margin-block: 0;
}

.e3-hero h1 {
	margin: 22px 0 !important;
	font-size: clamp(44px, 5.8vw, 80px);
	line-height: .92;
	text-wrap: balance;
	color: transparent;
	background: linear-gradient(180deg, #fff 10%, #9fc0ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
}

.e3-hero h1 strong {
	font-weight: inherit;
	color: var(--e3-blue-2);
	-webkit-text-fill-color: var(--e3-blue-2);
}

.e3-hero .e3-lead {
	font-size: 20px;
}

.e3-hero .e3-ctas {
	margin-top: 34px !important;
}

.e3-ticks {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 22px;
	margin: 34px 0 0 !important;
	padding: 0;
	list-style: none;
	font: 600 14px/1.2 Barlow, Arial, sans-serif;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--e3-on-dark);
}

.e3-ticks li {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.e3-ticks li::before {
	content: "";
	width: 18px;
	height: 18px;
	flex: none;
	background: var(--e3-blue-2);
	-webkit-mask: var(--e3-check) center / contain no-repeat;
	mask: var(--e3-check) center / contain no-repeat;
}

.e3-shot {
	position: relative;
	border-radius: 22px;
	padding: 8px;
	background: linear-gradient(160deg, rgba(255, 255, 255, .22), rgba(255, 255, 255, .04) 40%, rgba(24, 93, 241, .35));
	box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .8), 0 0 0 1px rgba(255, 255, 255, .06);
}

.e3-shot > * {
	margin: 0 !important;
}

.e3-shot-img {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 812 / 599;
	background: #06183f;
}

.e3-shot-img img {
	display: block;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	transform: scale(1.04);
	will-change: transform;
}

.e3-shot-img::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(200deg, transparent 50%, rgba(3, 17, 48, .55));
	pointer-events: none;
}

.e3-tag {
	position: absolute;
	z-index: 2;
	padding: 12px 16px;
	border-radius: 14px;
	background: rgba(6, 20, 58, .62);
	border: 1px solid var(--e3-glass-b);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	color: #fff;
	box-shadow: 0 20px 40px -20px rgba(0, 0, 0, .7);
}

.e3-tag > * {
	margin: 0 !important;
}

.e3-tag-title {
	font: 800 26px/1 "Barlow Condensed", Arial, sans-serif;
	letter-spacing: .02em;
}

.e3-tag-1 .e3-tag-title {
	font: 600 13px/1.25 Barlow, Arial, sans-serif;
	letter-spacing: .04em;
}

.e3-tag-sub {
	color: var(--e3-on-dark-2);
	font: 600 12px/1.3 Barlow, Arial, sans-serif;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.e3-tag-1 {
	left: -22px;
	bottom: 34px;
	padding-left: 38px;
}

.e3-tag-1::before {
	content: "";
	position: absolute;
	left: 16px;
	top: 50%;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	border-radius: 50%;
	background: #35d07f;
	box-shadow: 0 0 0 4px rgba(53, 208, 127, .2);
}

.e3-tag-2 {
	right: -14px;
	top: 28px;
}

/* ==========================================================================
   Faixa de números
   ========================================================================== */
.e3-numeros {
	display: flow-root; /* a faixa sobe sobre o banner sem arrastar o fundo da seção */
	position: relative;
	z-index: 2;
}

.e3-numeros .e3-stats {
	position: relative;
	z-index: 3;
	margin-top: clamp(-96px, -8vw, -70px);
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 30px 60px -30px rgba(3, 17, 48, .45), 0 0 0 1px rgba(3, 17, 48, .04);
	overflow: hidden;
}

.e3-stats > .e3-stat {
	position: relative;
	margin: 0;
	padding: 28px 28px 26px;
	display: grid;
	gap: 6px;
	align-content: start;
}

.e3-stat > * {
	margin: 0 !important;
}

.e3-stat + .e3-stat::before {
	content: "";
	position: absolute;
	left: 0;
	top: 24px;
	bottom: 24px;
	width: 1px;
	background: var(--e3-line);
}

.e3-stat-valor {
	font: 800 clamp(34px, 3.6vw, 46px)/1 "Barlow Condensed", Arial, sans-serif;
	color: var(--e3-navy);
	letter-spacing: .01em;
}

.e3-stat-valor em {
	font-style: normal;
	font-size: .5em;
	color: var(--e3-blue);
	margin-left: 2px;
}

.e3-stat-legenda {
	font: 600 13px/1.3 Barlow, Arial, sans-serif;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--e3-muted);
}

/* ==========================================================================
   O Produto
   ========================================================================== */
.e3-sec.e3-produto {
	padding-top: clamp(72px, 9vw, 120px);
}

.wp-block-columns.e3-split {
	gap: clamp(36px, 6vw, 84px);
}

.e3-prod-media {
	position: relative;
}

.e3-prod-media > * {
	margin-block: 0 !important;
}

.e3-spec {
	position: absolute;
	right: -18px;
	bottom: -26px;
	z-index: 3;
	display: grid;
	gap: 4px;
	padding: 18px 22px;
	border-radius: 16px;
	background: var(--e3-navy);
	color: #fff;
	box-shadow: 0 24px 50px -24px rgba(3, 17, 48, .8);
}

.e3-spec > * {
	margin: 0 !important;
}

.e3-spec-valor {
	font: 800 40px/1 "Barlow Condensed", Arial, sans-serif;
}

.e3-spec-legenda {
	font: 600 12px/1.2 Barlow, Arial, sans-serif;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--e3-on-dark-2);
}

.e3-checks {
	list-style: none;
	padding: 0;
	margin: 30px 0 0 !important;
	display: grid;
	gap: 14px;
}

.e3-checks li {
	position: relative;
	margin: 0;
	padding-left: 40px;
	color: var(--e3-ink-2);
}

.e3-checks li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 28px;
	height: 28px;
	border-radius: 8px;
	background: var(--e3-blue-soft) var(--e3-check) center / 18px no-repeat;
}

.e3-checks strong {
	color: var(--e3-navy);
	font-weight: 700;
}

.e3-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	padding: 0;
	margin: 28px 0 0 !important;
}

.e3-chips li {
	margin: 0;
	padding: 8px 14px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid var(--e3-line);
	font: 600 13px/1 Barlow, Arial, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--e3-ink-2);
}

/* ==========================================================================
   Benefícios
   ========================================================================== */
.e3-beneficios {
	position: relative;
	background: radial-gradient(900px 500px at 100% 0%, rgba(24, 93, 241, .22), transparent 60%), var(--e3-navy);
}

.e3-bgrid {
	counter-reset: e3card;
}

.e3-card {
	position: relative;
	counter-increment: e3card;
	display: grid;
	gap: 14px;
	align-content: start;
	min-width: 0;
	padding: 30px 28px;
	border-radius: var(--e3-r);
	background: linear-gradient(160deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .02));
	border: 1px solid rgba(255, 255, 255, .1);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	transition: transform .3s, border-color .3s, background .3s;
}

.e3-card > * {
	margin: 0 !important;
}

.e3-card::after {
	content: counter(e3card, decimal-leading-zero);
	position: absolute;
	right: 24px;
	top: 22px;
	font: 700 14px/1 "Barlow Condensed", Arial, sans-serif;
	letter-spacing: .14em;
	color: rgba(183, 189, 199, .45);
}

.e3-card:hover {
	transform: translateY(-4px);
	border-color: rgba(79, 134, 255, .5);
	background: linear-gradient(160deg, rgba(79, 134, 255, .14), rgba(255, 255, 255, .02));
}

.e3-card h3 {
	color: #fff;
}

.e3-card p {
	color: var(--e3-on-dark-2);
	font-size: 16px;
}

/* ==========================================================================
   Como funciona (3D)
   ========================================================================== */
.e3-como {
	position: relative;
	padding-top: clamp(80px, 10vw, 128px);
	padding-bottom: clamp(80px, 10vw, 128px);
	background: linear-gradient(180deg, var(--e3-navy) 0%, #020b22 100%);
}

.wp-block-columns.e3-how {
	position: relative;
	gap: clamp(24px, 4vw, 56px);
}

.e3-how::before {
	content: "";
	position: absolute;
	inset: -10% -20%;
	background: radial-gradient(700px 520px at 70% 55%, rgba(24, 93, 241, .28), transparent 65%);
	pointer-events: none;
}

.e3-how > .wp-block-column {
	position: relative;
	min-width: 0;
}

.e3-how-txt > * {
	margin-block: 0;
}

.e3-how-txt > .e3-eyebrow + h2 {
	margin: 16px 0 26px;
}

.e3-how h2 {
	font-size: clamp(34px, 4.2vw, 54px);
}

.e3-steps {
	display: grid;
	gap: 10px;
	counter-reset: e3step;
}

.e3-steps > .e3-step {
	margin: 0;
}

.e3-step {
	position: relative;
	counter-increment: e3step;
	display: grid;
	grid-template-columns: 44px 1fr;
	column-gap: 16px;
	padding: 16px 18px;
	border-radius: 16px;
	border: 1px solid transparent;
	transition: background .4s, border-color .4s, opacity .4s;
}

.e3-step::before {
	content: counter(e3step);
	grid-column: 1;
	grid-row: 1 / span 2;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	display: grid;
	place-items: center;
	font: 800 20px/1 "Barlow Condensed", Arial, sans-serif;
	border: 1px solid rgba(255, 255, 255, .2);
	color: var(--e3-on-dark-2);
	transition: .4s;
}

.e3-step > * {
	grid-column: 2;
	margin: 0 !important;
}

.e3-step h3 {
	font-size: 21px;
	margin-bottom: 4px !important;
}

.e3-step p {
	color: var(--e3-on-dark-2);
	font-size: 15.5px;
	line-height: 1.5;
}

.e3-step.is-ativo {
	background: rgba(255, 255, 255, .06);
	border-color: rgba(255, 255, 255, .12);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.e3-step.is-ativo::before {
	background: var(--e3-blue);
	border-color: var(--e3-blue);
	color: #fff;
	box-shadow: 0 10px 24px -10px rgba(24, 93, 241, 1);
}

.e3-stepdesc {
	display: none;
	margin: 0;
	font-size: 14.5px;
	line-height: 1.45;
	color: var(--e3-on-dark-2);
	min-height: 3em;
}

.e3-meter {
	margin-top: 18px;
	padding: 16px 18px;
	border-radius: 16px;
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(255, 255, 255, .1);
	display: grid;
	gap: 10px;
}

.e3-meter-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	font: 600 12px/1 Barlow, Arial, sans-serif;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--e3-on-dark-2);
}

.e3-meter-row b {
	color: #fff;
	font-weight: 700;
}

.e3-meter-bar {
	position: relative;
	height: 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .08);
	overflow: hidden;
}

.e3-meter-bar i {
	position: absolute;
	inset: 0 auto 0 0;
	width: 0;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--e3-blue), #8fb3ff);
}

.e3-meter-ticks {
	display: flex;
	justify-content: space-between;
	font: 500 11px/1 Barlow, Arial, sans-serif;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: rgba(169, 182, 211, .7);
}

.e3-stage {
	position: relative;
	height: min(68vh, 620px);
	min-height: 320px;
	border-radius: 24px;
	overflow: hidden;
	background: radial-gradient(ellipse at 50% 30%, rgba(79, 134, 255, .16), transparent 70%), linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .01));
	border: 1px solid rgba(255, 255, 255, .1);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 40px 80px -40px rgba(0, 0, 0, .9);
}

.e3-stage canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.e3-hud {
	position: absolute;
	left: 18px;
	top: 16px;
	right: 18px;
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font: 600 11px/1 Barlow, Arial, sans-serif;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--e3-on-dark-2);
	pointer-events: none;
}

.e3-hud b {
	color: #fff;
}

.e3-hint {
	position: absolute;
	left: 50%;
	bottom: 16px;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 8px;
	font: 600 11px/1 Barlow, Arial, sans-serif;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--e3-on-dark-2);
	transition: opacity .4s;
	pointer-events: none;
	white-space: nowrap;
}

.e3-hint i {
	width: 16px;
	height: 24px;
	border: 1.5px solid currentColor;
	border-radius: 8px;
	position: relative;
}

.e3-hint i::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 5px;
	width: 2px;
	height: 5px;
	margin-left: -1px;
	background: currentColor;
	border-radius: 2px;
	animation: e3wheel 1.6s infinite;
}

@keyframes e3wheel {
	0% { opacity: 0; transform: translateY(0); }
	40% { opacity: 1; }
	100% { opacity: 0; transform: translateY(7px); }
}

.e3-nogl {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
}

.e3-nogl img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .9;
}

.e3-nogl span {
	position: absolute;
	bottom: 14px;
	left: 14px;
	right: 14px;
	text-align: center;
	font-size: 13px;
	color: var(--e3-on-dark-2);
}

/* Modo animado (ativado pelo landing.js no site; no editor a seção fica estática) */
.e3-como.e3-como--live {
	height: 340vh;
	padding-top: 0;
	padding-bottom: 0;
}

.e3-como--live .wp-block-columns.e3-how {
	position: sticky;
	top: var(--e3-hh);
	height: calc(100vh - var(--e3-hh));
	height: calc(100svh - var(--e3-hh));
	margin-block: 0;
	align-items: center;
}

.admin-bar .e3-como--live .wp-block-columns.e3-how {
	top: calc(var(--e3-hh) + 32px);
	height: calc(100svh - var(--e3-hh) - 32px);
}

.e3-como--live .e3-step {
	opacity: .45;
}

.e3-como--live .e3-step.is-ativo {
	opacity: 1;
}

/* ==========================================================================
   Aplicações
   ========================================================================== */
.e3-app {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	border-radius: var(--e3-r);
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--e3-line);
	box-shadow: 0 20px 40px -32px rgba(3, 17, 48, .5);
	transition: transform .3s, box-shadow .3s;
}

.e3-app:hover {
	transform: translateY(-4px);
	box-shadow: 0 30px 50px -30px rgba(3, 17, 48, .55);
}

.e3-app > * {
	margin: 0 !important;
}

.e3-app-img {
	position: relative;
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

.e3-app-img img {
	display: block;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	transition: transform .6s;
}

.e3-app:hover .e3-app-img img {
	transform: scale(1.05);
}

.e3-app-img::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(3, 17, 48, 0) 45%, rgba(3, 17, 48, .6)), linear-gradient(0deg, rgba(24, 93, 241, .08), rgba(24, 93, 241, .08));
	mix-blend-mode: multiply;
}

/* O ícone fica na divisa entre a foto (16:10 = 62,5% da largura) e o texto */
.e3-app > .e3-ic {
	position: absolute;
	left: 16px;
	top: 0;
	z-index: 3;
	width: 48px;
	height: 48px;
	margin-top: calc(62.5% - 24px) !important;
	background: var(--e3-blue);
	border: 3px solid #fff;
	box-shadow: 0 10px 24px -8px rgba(24, 93, 241, .9);
}

.e3-app > .e3-ic img {
	width: 24px !important;
	height: 24px !important;
}

.e3-app > h3 {
	padding: 34px 20px 0;
	color: var(--e3-navy);
}

.e3-app > p {
	padding: 8px 20px 24px;
	color: var(--e3-muted);
	font-size: 15.5px;
	line-height: 1.5;
}

/* ==========================================================================
   Ficha técnica
   ========================================================================== */
.wp-block-columns.e3-ficha-in {
	gap: clamp(28px, 4vw, 56px);
}

.e3-fphoto {
	position: relative;
}

.e3-fphoto > * {
	margin-block: 0 !important;
}

.e3-badge {
	position: absolute;
	z-index: 2;
	display: grid;
	gap: 4px;
	padding: 14px 18px;
	border-radius: 14px;
	background: rgba(3, 17, 48, .62);
	border: 1px solid rgba(255, 255, 255, .2);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	color: #fff;
	box-shadow: 0 20px 40px -20px rgba(3, 17, 48, .8);
}

.e3-badge > * {
	margin: 0 !important;
}

.e3-badge-valor {
	font: 800 30px/1 "Barlow Condensed", Arial, sans-serif;
}

.e3-badge-legenda {
	font: 600 11.5px/1 Barlow, Arial, sans-serif;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--e3-on-dark-2);
}

.e3-badge-1 {
	left: 18px;
	top: 18px;
}

.e3-badge-2 {
	right: 18px;
	bottom: 18px;
	background: rgba(24, 93, 241, .78);
}

.e3-badge-2 .e3-badge-legenda {
	color: #e6eeff;
}

.e3-ficha-dados > * {
	margin-block: 0;
}

.e3-tbl {
	border-radius: var(--e3-r);
	overflow: hidden;
	border: 1px solid var(--e3-line);
	background: #fff;
}

.e3-tbl > * {
	margin: 0 !important;
}

.e3-tbl-titulo {
	padding: 18px 20px;
	background: var(--e3-navy);
	color: #fff;
	font: 700 18px/1 "Barlow Condensed", Arial, sans-serif;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.e3-tbl .wp-block-table table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15.5px;
}

.e3-tbl .wp-block-table td,
.e3-tbl .wp-block-table th {
	padding: 13px 20px;
	text-align: left;
	vertical-align: top;
	line-height: 1.45;
	border: 0;
	border-top: 1px solid var(--e3-line);
}

.e3-tbl .wp-block-table tr:first-child td {
	border-top: 0;
}

.e3-tbl .wp-block-table td:first-child {
	width: 44%;
	font-weight: 600;
	color: var(--e3-muted);
}

.e3-tbl .wp-block-table td + td {
	font-weight: 700;
	color: var(--e3-navy);
}

.e3-tbl .wp-block-table tr:nth-child(even) {
	background: #f8faff;
}

.e3-safety {
	margin-top: 16px !important;
	display: grid;
	grid-template-columns: 36px 1fr;
	gap: 12px;
	align-items: start;
	padding: 14px 16px;
	border-radius: 14px;
	background: var(--e3-blue-soft);
	color: var(--e3-ink-2);
	font-size: 14.5px;
	line-height: 1.5;
}

.e3-safety > * {
	margin: 0 !important;
}

.e3-safety-ic {
	width: 36px;
	height: 36px;
	padding: 7px;
	border-radius: 10px;
	background: #fff;
}

.e3-safety-ic img {
	width: 22px !important;
	height: 22px !important;
}

.e3-safety strong {
	color: var(--e3-navy);
}

/* ==========================================================================
   Diferenciais
   ========================================================================== */
.e3-diferenciais {
	background: radial-gradient(800px 400px at 0% 100%, rgba(24, 93, 241, .2), transparent 60%), var(--e3-navy-2);
}

.wp-block-columns.e3-difs {
	gap: 0;
	border-top: 1px solid rgba(255, 255, 255, .12);
}

.e3-dif {
	display: grid;
	gap: 14px;
	align-content: start;
	padding: 34px 30px 8px 0;
}

.e3-dif > * {
	margin: 0 !important;
}

.e3-dif + .e3-dif {
	padding-left: 30px;
	border-left: 1px solid rgba(255, 255, 255, .12);
}

.e3-kicker {
	font: 800 15px/1 "Barlow Condensed", Arial, sans-serif;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--e3-blue-2);
}

.e3-dif p:not(.e3-kicker) {
	color: var(--e3-on-dark-2);
	font-size: 16px;
}

.e3-quote {
	margin-top: clamp(56px, 7vw, 88px) !important;
	padding: clamp(28px, 4vw, 48px);
	border-radius: 24px;
	background: linear-gradient(120deg, rgba(24, 93, 241, .22), rgba(255, 255, 255, .04));
	border: 1px solid rgba(255, 255, 255, .12);
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 28px;
	align-items: center;
}

.e3-quote > *,
.e3-quote-txt > * {
	margin: 0 !important;
}

.e3-quote-ic img {
	width: 56px !important;
	height: 56px !important;
}

.e3-quote-frase {
	font: 700 clamp(26px, 3.4vw, 42px)/1.05 "Barlow Condensed", Arial, sans-serif;
	text-transform: uppercase;
	color: #fff;
	text-wrap: balance;
}

.e3-quote-txt > p:not(.e3-quote-frase) {
	margin-top: 12px !important;
	color: var(--e3-on-dark-2);
}

/* ==========================================================================
   Orçamento: contatos e formulário
   ========================================================================== */
.wp-block-columns.e3-quote-grid {
	gap: clamp(28px, 5vw, 64px);
	align-items: flex-start;
}

.e3-contatos {
	display: grid;
	gap: 12px;
	margin-top: 32px;
}

.e3-ct {
	display: grid;
	grid-template-columns: 48px 1fr auto;
	gap: 14px;
	align-items: center;
	padding: 14px 16px;
	border-radius: 14px;
	background: #fff;
	border: 1px solid var(--e3-line);
}

.e3-ct-ic {
	width: 48px;
	height: 48px;
	border-radius: 12px;
	display: grid;
	place-items: center;
	background: var(--e3-blue-soft);
	color: var(--e3-blue);
}

.e3-ct-ic svg {
	width: 22px;
	height: 22px;
}

.e3-ct small {
	display: block;
	margin-bottom: 6px;
	font: 600 11.5px/1 Barlow, Arial, sans-serif;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--e3-muted);
}

.e3-ct-v {
	font-weight: 700;
	color: var(--e3-navy);
	word-break: break-word;
	user-select: all;
}

.e3-ct-v.is-vazio {
	color: #9aa6bf;
	font-weight: 600;
	user-select: auto;
}

.e3-copy {
	border: 1px solid var(--e3-line);
	background: var(--e3-light);
	color: var(--e3-ink-2);
	border-radius: 8px;
	padding: 8px 10px;
	font: 600 12px/1 Barlow, Arial, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
	cursor: pointer;
}

.e3-copy[disabled] {
	opacity: .4;
	cursor: default;
}

.e3-form {
	background: #fff;
	border-radius: 22px;
	padding: clamp(22px, 3.5vw, 36px);
	border: 1px solid var(--e3-line);
	box-shadow: 0 30px 60px -40px rgba(3, 17, 48, .55);
	color: var(--e3-ink);
}

.e3-form h3 {
	margin: 0 0 6px;
	color: var(--e3-navy);
	font-size: 26px;
}

.e3-form-sub {
	margin: 0 0 22px;
	color: var(--e3-muted);
	font-size: 15px;
}

.e3-fgrid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.e3-fgrid .e3-full {
	grid-column: 1 / -1;
}

.e3-field {
	display: grid;
	gap: 7px;
	min-width: 0;
}

.e3-field label,
.e3-field .e3-label {
	font: 600 12px/1 Barlow, Arial, sans-serif;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--e3-ink-2);
}

.e3-field input,
.e3-field textarea {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
	font: 500 16px/1.4 Barlow, Arial, sans-serif;
	color: var(--e3-ink);
	background: var(--e3-light);
	border: 1px solid var(--e3-line);
	border-radius: 10px;
	padding: 13px 14px;
	transition: border-color .2s, background .2s;
}

.e3-field input:focus,
.e3-field textarea:focus {
	border-color: var(--e3-blue);
	background: #fff;
	outline: none;
	box-shadow: 0 0 0 4px rgba(24, 93, 241, .12);
}

.e3-field input.is-erro {
	border-color: #d64545;
}

.e3-field textarea {
	resize: vertical;
	min-height: 96px;
}

.e3-seg {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.e3-seg label {
	position: relative;
	flex: 1;
	min-width: 140px;
	cursor: pointer;
	letter-spacing: 0;
}

.e3-seg input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.e3-seg span {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 12px;
	border-radius: 10px;
	border: 1px solid var(--e3-line);
	background: var(--e3-light);
	font: 600 14px/1.1 Barlow, Arial, sans-serif;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--e3-ink-2);
	transition: .2s;
	text-align: center;
}

.e3-seg input:checked + span {
	background: var(--e3-navy);
	border-color: var(--e3-navy);
	color: #fff;
}

.e3-seg input:focus-visible + span {
	outline: 2px solid var(--e3-blue);
	outline-offset: 2px;
}

.e3-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 0 26px;
	border-radius: 12px;
	border: 1px solid transparent;
	font: 700 15px/1 Barlow, Arial, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: transform .2s, background .2s, border-color .2s, color .2s;
}

.e3-btn svg {
	width: 18px;
	height: 18px;
	flex: none;
}

.e3-btn-pri {
	background: var(--e3-blue);
	color: #fff;
}

.e3-btn-pri:hover {
	background: #2a6cff;
	color: #fff;
	transform: translateY(-2px);
}

.e3-btn-line {
	background: transparent;
	color: var(--e3-navy);
	border-color: var(--e3-silver);
}

.e3-btn-line:hover {
	border-color: var(--e3-blue);
	color: var(--e3-blue);
}

.e3-form .e3-form-body > .e3-btn {
	width: 100%;
	margin-top: 18px;
}

.e3-form-legal {
	margin: 12px 0 0;
	font-size: 13px;
	color: var(--e3-muted);
	text-align: center;
}

.e3-form-done {
	display: grid;
	gap: 14px;
}

.e3-form-done[hidden] {
	display: none;
}

.e3-ok {
	display: flex;
	gap: 12px;
	align-items: center;
	color: var(--e3-navy);
}

.e3-ok h3 {
	margin: 0;
}

.e3-ok p {
	margin: 4px 0 0;
	color: var(--e3-muted);
	font-size: 15px;
}

.e3-ok svg {
	width: 36px;
	height: 36px;
	color: #1f9d5c;
	flex: none;
}

.e3-form-done pre {
	margin: 0;
	white-space: pre-wrap;
	word-break: break-word;
	background: var(--e3-light);
	border: 1px solid var(--e3-line);
	border-radius: 12px;
	padding: 14px;
	font: 500 14.5px/1.5 Barlow, Arial, sans-serif;
	color: var(--e3-ink-2);
}

.e3-acts {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.e3-acts .e3-btn {
	flex: 1;
}

.e3-warn {
	margin: 0;
	font-size: 14px;
	color: #8a5a00;
	background: #fff6dc;
	border: 1px solid #f3dd9b;
	border-radius: 10px;
	padding: 10px 12px;
}

/* ==========================================================================
   Sobre a E3
   ========================================================================== */
.wp-block-columns.e3-about {
	gap: clamp(32px, 5vw, 72px);
}

.e3-about .e3-txt > p:not(.e3-eyebrow) {
	color: var(--e3-ink-2);
	margin-top: 16px;
	max-width: 62ch;
}

.e3-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style: none;
	padding: 0;
	margin: 26px 0 0 !important;
}

.e3-pills li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 10px 14px;
	border-radius: 12px;
	background: var(--e3-light);
	border: 1px solid var(--e3-line);
	font: 600 13px/1 Barlow, Arial, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--e3-navy);
}

.e3-pills li::before {
	content: "";
	width: 16px;
	height: 16px;
	background: var(--e3-check) center / contain no-repeat;
}

.e3-about .e3-ctas {
	margin-top: 30px !important;
}

.e3-logo-card {
	position: relative;
	border-radius: 24px;
	padding: clamp(28px, 4vw, 48px);
	background: linear-gradient(160deg, #ffffff, #eef3fc);
	border: 1px solid var(--e3-line);
	box-shadow: 0 40px 70px -44px rgba(3, 17, 48, .6);
}

.e3-logo-card > * {
	margin-block: 0 !important;
}

.e3-logo-card .wp-block-image img {
	width: 100%;
	height: auto;
	mix-blend-mode: multiply;
}

.e3-partner {
	margin-top: 22px !important;
	padding-top: 18px;
	border-top: 1px solid var(--e3-line);
	gap: 10px;
	font: 600 12px/1.3 Barlow, Arial, sans-serif;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--e3-muted);
}

.e3-partner p {
	margin: 0;
}

.e3-partner strong {
	color: var(--e3-navy);
}

/* ==========================================================================
   Rodapé (parts/footer.html)
   ========================================================================== */
.e3-footer {
	background: #020a1f;
	color: var(--e3-on-dark-2);
	font-size: 15px;
}

.wp-block-columns.e3-footer-cols {
	gap: 32px;
	margin-bottom: 0;
}

.e3-footer-marca > * {
	margin-block: 0;
}

.e3-footer-marca p {
	margin-top: 16px !important;
	max-width: 40ch;
}

.e3-footer .e3-footer-titulo {
	margin: 0 0 14px;
	font: 700 14px/1 Barlow, Arial, sans-serif;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #fff;
}

.e3-footer-menu {
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}

.e3-footer a,
.e3-footer-menu .wp-block-navigation-item__content {
	color: var(--e3-on-dark-2);
	text-decoration: none;
}

.e3-footer a:hover,
.e3-footer-menu .wp-block-navigation-item__content:hover {
	color: #fff;
	text-decoration: none;
}

.e3-contatos-lista {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 10px;
}

.e3-contatos-lista li {
	margin: 0;
}

.e3-footer-legal {
	margin-top: 36px !important;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, .08);
	gap: 10px;
	font-size: 13px;
}

.e3-footer-legal p {
	margin: 0;
}

.e3-footer-legal strong {
	color: #fff;
}

/* ==========================================================================
   Animação de entrada (classes colocadas pelo landing.js)
   ========================================================================== */
.e3-rv {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .8s cubic-bezier(.2, .7, .2, 1), transform .8s cubic-bezier(.2, .7, .2, 1);
}

.e3-rv.e3-in {
	opacity: 1;
	transform: none;
}

/* Elementos posicionados (cartões com hover) mantêm a animação de hover depois de entrar */
.e3-card.e3-rv.e3-in,
.e3-app.e3-rv.e3-in {
	transition: opacity .8s cubic-bezier(.2, .7, .2, 1), transform .3s, border-color .3s, background .3s, box-shadow .3s;
}

@media (prefers-reduced-motion: reduce) {
	.e3-rv {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.e3-hint i::after {
		animation: none;
	}
}

/* ==========================================================================
   Responsivo
   ========================================================================== */
@media (min-width: 782px) {
	.e3-split > .wp-block-column:first-child { flex-grow: 1.1; }
	.e3-quote-grid > .wp-block-column:first-child { flex-grow: .9; }
	.e3-quote-grid > .wp-block-column:last-child { flex-grow: 1.1; }
	.e3-about > .wp-block-column:first-child { flex-grow: 1.2; }
	.e3-about > .wp-block-column:last-child { flex-grow: .8; }
	.e3-how > .wp-block-column:first-child { flex-grow: .82; }
	.e3-how > .wp-block-column:last-child { flex-grow: 1.18; }
}

@media (max-width: 1080px) {
	.wp-block-columns.e3-ficha-in {
		flex-wrap: wrap !important;
	}

	.wp-block-columns.e3-ficha-in > .wp-block-column {
		flex-basis: 100% !important;
	}
}

@media (max-width: 960px) {
	.wp-block-columns.e3-hero-in,
	.wp-block-columns.e3-split,
	.wp-block-columns.e3-quote-grid,
	.wp-block-columns.e3-about,
	.wp-block-columns.e3-how {
		flex-wrap: wrap !important;
	}

	.wp-block-columns.e3-hero-in > .wp-block-column,
	.wp-block-columns.e3-split > .wp-block-column,
	.wp-block-columns.e3-quote-grid > .wp-block-column,
	.wp-block-columns.e3-about > .wp-block-column,
	.wp-block-columns.e3-how > .wp-block-column {
		flex-basis: 100% !important;
	}

	.e3-tag-1 { left: 10px; }
	.e3-tag-2 { right: 10px; }

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

	.e3-stat:nth-child(3)::before {
		display: none;
	}

	.e3-stat:nth-child(n+3) {
		border-top: 1px solid var(--e3-line);
	}

	.e3-spec { right: 12px; }

	/* Como funciona (animado) no celular/tablet: passos compactos em 3 colunas e o 3D embaixo */
	.e3-como--live .wp-block-columns.e3-how {
		align-items: flex-start;
		align-content: flex-start;
		padding-top: 12px;
		gap: 12px;
	}

	.e3-como--live .e3-how h2 {
		font-size: 30px;
	}

	.e3-como--live .e3-how-txt > .e3-eyebrow {
		display: none;
	}

	.e3-como--live .e3-how-txt > .e3-eyebrow + h2 {
		margin: 8px 0 12px;
	}

	.e3-como--live .e3-steps {
		grid-template-columns: repeat(3, 1fr);
		gap: 6px;
	}

	.e3-como--live .e3-step {
		grid-template-columns: 1fr;
		row-gap: 8px;
		padding: 10px;
	}

	.e3-como--live .e3-step::before {
		grid-row: auto;
		width: 32px;
		height: 32px;
		font-size: 16px;
		border-radius: 9px;
	}

	.e3-como--live .e3-step > * {
		grid-column: 1;
	}

	.e3-como--live .e3-step h3 {
		font-size: 15px;
		margin: 0 !important;
	}

	.e3-como--live .e3-step p {
		display: none;
	}

	.e3-como--live .e3-stepdesc {
		display: block;
		margin-top: 8px;
	}

	.e3-como--live .e3-meter {
		margin-top: 8px;
		padding: 10px 12px;
		gap: 8px;
	}

	.e3-como--live .e3-meter-ticks {
		display: none;
	}

	.e3-como--live .e3-stage {
		height: calc(100svh - var(--e3-hh) - 270px);
		min-height: 280px;
	}
}

@media (max-width: 781px) {
	.e3-dif,
	.e3-dif + .e3-dif {
		padding: 28px 0;
		border-left: 0;
	}

	.e3-dif + .e3-dif {
		border-top: 1px solid rgba(255, 255, 255, .12);
	}
}

@media (max-width: 600px) {
	body {
		font-size: 16px;
	}

	.e3-hero h1 {
		font-size: 40px;
	}

	.e3-hero .e3-lead {
		font-size: 18px;
	}

	.e3-tag {
		padding: 10px 12px;
	}

	.e3-tag-1 {
		padding-left: 34px;
	}

	.e3-tag-1::before {
		left: 13px;
	}

	.e3-tag-2 {
		display: none;
	}

	.e3-stats > .e3-stat {
		padding: 20px 18px;
	}

	.e3-fgrid {
		grid-template-columns: 1fr;
	}

	.e3-quote {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.e3-quote-ic img {
		width: 40px !important;
		height: 40px !important;
	}

	.e3-ct {
		grid-template-columns: 44px 1fr;
	}

	.e3-ct .e3-copy {
		grid-column: 2;
		justify-self: start;
	}

	/* Layout v2 do designer: títulos, textos de introdução e botões centralizados;
	   cartões, listas, tabela e formulário continuam alinhados à esquerda. */
	.e3-hero-txt,
	.e3-head,
	.e3-how-txt > h2,
	.e3-txt > h2,
	.e3-txt > .e3-lead,
	.e3-about .e3-txt > p {
		text-align: center;
	}

	.e3-eyebrow {
		display: flex;
		justify-content: center;
		text-align: center;
	}

	.e3-eyebrow::before {
		display: none;
	}

	.e3-hero .e3-lead,
	.e3-head .e3-lead,
	.e3-txt > .e3-lead,
	.e3-about .e3-txt > p {
		margin-inline: auto;
	}

	.e3-hero .e3-ctas,
	.e3-about .e3-ctas {
		justify-content: center;
	}

	.e3-ticks,
	.e3-pills {
		justify-content: center;
	}

	.e3-photo figcaption {
		top: 12px;
		bottom: auto;
	}

	.e3-spec {
		padding: 12px 16px;
		bottom: -20px;
	}

	.e3-spec-valor {
		font-size: 30px;
	}
}
