/* Vetech Widgets — base isolada. Tudo vive sob .vtw para não vazar para o tema. */
.vtw {
	--vtw-ink: #020d24;
	--vtw-orange: #fe6202;
	--vtw-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
	box-sizing: border-box;
	font-family: "Vetech TT Lakes", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	text-align: left;
	-webkit-text-size-adjust: 100%;
}
.vtw *, .vtw *::before, .vtw *::after { box-sizing: border-box; }
.vtw :where(h1, h2, h3, h4, p, figure, ul, ol) { margin: 0; padding: 0; }
.vtw :where(ul, ol) { list-style: none; }
.vtw :where(a) { color: inherit; text-decoration: none; background: none; }
.vtw :where(img) { display: block; max-width: 100%; height: auto; border: 0; border-radius: 0; box-shadow: none; }
.vtw :where(svg) { display: block; flex: 0 0 auto; }
.vtw :where(button) { margin: 0; font: inherit; text-transform: none; letter-spacing: inherit; cursor: pointer; }
.vtw :where(a, button):focus-visible { outline: 2px solid var(--vtw-orange); outline-offset: 4px; box-shadow: 0 0 0 5px rgba(254, 98, 2, 0.18); }

/* Seção completa (widgets 3 e 5): largura/margem do conteúdo e fundo de ponta a ponta. */
.vtw-frame { --vtw-max: 1180px; --vtw-gutter: 24px; position: relative; padding: 96px 0; }
.vtw-frame.is-bleed { box-shadow: 0 0 0 100vmax var(--vtw-bg, transparent); clip-path: inset(0 -100vmax); }
.vtw-frame .vtw-shell { width: min(var(--vtw-max), calc(100% - 2 * var(--vtw-gutter))); margin: 0 auto; }
@media (max-width: 680px) {
	.vtw-frame { --vtw-gutter: 16px; padding: 80px 0; }
}
