/*
Theme Name: Solo Brasileiro Containers
Theme URI: https://solobrasileiro.com/containers/
Description: Tema filho Twenty Twenty exclusivo da Solo Brasileiro para o site e subsites de containers, com navegação, home, identidade visual e coberturas contextuais.
Author: Solo Brasileiro
Template: twentytwenty
Version: 5.0.0
Text Domain: twentytwenty-child
*/

:root {
	--sb-black: #0b0d0e;
	--sb-charcoal: #171a1c;
	--sb-text: #24282a;
	--sb-muted: #657074;
	--sb-line: #e4e8e9;
	--sb-light: #f5f7f7;
	--sb-white: #ffffff;
	--sb-cyan: #83d8ff;
	--sb-cyan-dark: #0878b8;
	--sb-teal: #68c6f5;
	--sb-content: 1040px;
	--sb-shell: 1320px;
}

html { scroll-behavior: smooth; }
body {
	margin: 0;
	color: var(--sb-text);
	background: var(--sb-white);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif !important;
	font-size: 17px;
	line-height: 1.72;
	-webkit-font-smoothing: antialiased;
}
body, button, input, select, textarea { letter-spacing: 0; }
h1, h2, h3, h4, h5, h6 {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif !important;
	color: var(--sb-black);
	font-weight: 750;
	letter-spacing: -0.025em;
	line-height: 1.16;
}
a { color: var(--sb-cyan-dark); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover, a:focus { color: var(--sb-black); }

/* Header */
.sb-site-header {
	position: relative;
	z-index: 100;
	width: 100%;
	background: rgba(255,255,255,.98);
	border-bottom: 1px solid var(--sb-line);
}
.sb-header-inner {
	max-width: var(--sb-shell);
	min-height: 84px;
	margin: 0 auto;
	padding: 0 28px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 36px;
}
.sb-brand { display: inline-flex; width: 225px; flex: 0 0 auto; }
.sb-brand img { display: block; width: 100%; height: auto; }
.sb-primary-nav { margin-left: auto; }
.sb-primary-menu, .sb-primary-menu ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.sb-primary-menu { display: flex; align-items: center; gap: 4px; }
.sb-primary-menu > li { position: relative; margin: 0; }
.sb-primary-menu > li > a {
	display: block;
	padding: 31px 13px;
	color: var(--sb-black) !important;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .035em;
	text-decoration: none;
	text-transform: uppercase;
}
.sb-primary-menu > li > a:hover,
.sb-primary-menu > li.current-menu-item > a,
.sb-primary-menu > li.current-menu-ancestor > a { color: var(--sb-cyan-dark) !important; }
.sb-primary-menu .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 260px;
	padding: 10px;
	background: var(--sb-white);
	border: 1px solid var(--sb-line);
	box-shadow: 0 16px 40px rgba(0,0,0,.12);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: .18s ease;
}
.sb-primary-menu li:hover > .sub-menu,
.sb-primary-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.sb-primary-menu .sub-menu a {
	display: block;
	padding: 10px 12px;
	color: var(--sb-text) !important;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}
.sb-primary-menu .sub-menu a:hover { background: var(--sb-light); color: var(--sb-black) !important; }
.sb-menu-toggle { display: none; background: none; border: 0; padding: 10px; cursor: pointer; }
.sb-menu-toggle span:not(.screen-reader-text) { display: block; width: 25px; height: 2px; margin: 5px 0; background: var(--sb-light); }

/* Single post: cobertura única */
.sb-cover {
	position: relative;
	min-height: 660px;
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	background: var(--sb-black);
}
.sb-cover-background {
	position: absolute;
	inset: 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var(--sb-white);
}
.sb-cover-overlay { position: absolute; inset: 0; background: rgba(255,255,255,.50); }
.sb-cover-inner {
	position: relative;
	z-index: 2;
	width: min(100% - 56px, var(--sb-shell));
	margin: 0 auto;
	padding: 110px 0 86px;
}
.sb-cover-kicker {
	display: inline-flex;
	align-items: center;
	margin-bottom: 20px;
	padding: 8px 14px;
	background: var(--sb-teal);
	border-radius: 999px;
	color: var(--sb-black);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: .055em;
	text-transform: uppercase;
	box-shadow: 0 2px 8px rgba(0,0,0,.08);
}
.sb-cover-kicker a { color: var(--sb-black) !important; font-weight: 800; text-decoration: none; }
.sb-cover-title {
	max-width: 1000px;
	margin: 0;
	color: var(--sb-black) !important;
	font-size: clamp(40px, 4.6vw, 64px);
	font-weight: 800;
	letter-spacing: -.035em;
	text-wrap: balance;
}
.sb-content-wrap { width: min(100% - 48px, var(--sb-content)); margin: 0 auto; padding: 72px 0 88px; }
.sb-entry-content { max-width: none !important; width: 100%; margin: 0 !important; font-size: 18px; }
.sb-entry-content > * { max-width: 100% !important; }
.sb-entry-content p { margin: 0 0 1.45em; }
.sb-entry-content h2 { margin: 2.2em 0 .72em; font-size: clamp(28px, 3vw, 38px); }
.sb-entry-content h3 { margin: 1.9em 0 .65em; font-size: clamp(23px, 2.4vw, 30px); }
.sb-entry-content h4 { font-size: 21px; }
.sb-entry-content ul, .sb-entry-content ol { margin-bottom: 1.6em; }
.sb-entry-content img { max-width: 100%; height: auto; border-radius: 3px; }
.sb-entry-content table { width: 100%; border-collapse: collapse; font-size: 16px; }
.sb-entry-content th, .sb-entry-content td { padding: 13px 15px; border: 1px solid var(--sb-line); }
.sb-entry-content th { background: var(--sb-light); font-weight: 750; }
.sb-entry-content blockquote { margin: 2em 0; padding: 8px 0 8px 24px; border-left: 4px solid var(--sb-cyan); color: #41494c; }

/* Remove elementos redundantes do Twenty Twenty nos posts */
.sb-single-post .post-meta-single,
.sb-single-post .post-meta-edit-link-wrapper,
.sb-single-post .pagination-single,
.sb-single-post .entry-categories-inner { display: none !important; }

/* Footer */
.sb-site-footer {
	background: #000000;
	color: #ffffff;
	border-top: 4px solid var(--sb-teal);
}
.sb-footer-main {
	max-width: var(--sb-shell);
	margin: 0 auto;
	padding: 64px 28px 48px;
	display: grid;
	grid-template-columns: 1.35fr 1fr 1fr 1fr;
	gap: 48px;
}
.sb-footer-brand img { width: 220px; height: auto; filter: brightness(0) invert(1); opacity: .94; }
.sb-footer-brand p { max-width: 330px; margin: 22px 0 0; color: rgba(255,255,255,.78); font-size: 14px; line-height: 1.7; }
.sb-footer-col h2 {
	margin: 0 0 20px;
	padding-bottom: 10px;
	color: var(--sb-white);
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	border-bottom: 2px solid var(--sb-teal);
}
.sb-footer-menu { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.sb-footer-menu li {
	margin: 0 0 7px !important;
	color: rgba(255,255,255,.74);
	font-size: 14px;
}
.sb-footer-menu a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 5px 0;
	color: #ffffff !important;
	font-weight: 700;
	line-height: 1.45;
	text-decoration: none;
	transition: color .18s ease, transform .18s ease;
}
.sb-footer-menu a::before {
	content: "";
	width: 7px;
	height: 7px;
	flex: 0 0 7px;
	border-radius: 50%;
	background: var(--sb-teal);
	transition: transform .18s ease, background-color .18s ease;
}
.sb-footer-menu a:hover,
.sb-footer-menu a:focus {
	color: var(--sb-teal) !important;
	transform: translateX(3px);
}
.sb-footer-menu a:hover::before,
.sb-footer-menu a:focus::before { transform: scale(1.25); }
.sb-footer-menu a:focus-visible {
	outline: 2px solid var(--sb-teal);
	outline-offset: 4px;
	border-radius: 2px;
}
.sb-footer-bottom {
	border-top: 1px solid rgba(255,255,255,.16);
	padding: 24px 28px;
	text-align: center;
	background: #000000;
}
.sb-footer-bottom p { margin: 0; color: rgba(255,255,255,.68); font-size: 12px; line-height: 1.6; }

/* Twenty Twenty/home compatibility */
.header-titles .site-description { display: none; }
.home-custom-full .entry-header { display: none !important; }

@media (min-width: 1200px) {
	.sb-cover { min-height: 720px; }
	.sb-cover-background {
		inset: 0;
		background-size: cover;
		background-position: center center;
	}
	.sb-cover-inner { padding: 150px 0 104px; }
}

@media (max-width: 1000px) {
	.sb-header-inner { min-height: 72px; }
	.sb-brand { width: 190px; }
	.sb-menu-toggle { display: block; }
	.sb-primary-nav { position: absolute; top: 100%; left: 0; right: 0; display: none; margin: 0; padding: 8px 20px 20px; background: var(--sb-white); border-bottom: 1px solid var(--sb-line); box-shadow: 0 12px 22px rgba(0,0,0,.08); }
	.sb-primary-nav.is-open { display: block; }
	.sb-primary-menu { display: block; }
	.sb-primary-menu > li > a { padding: 12px 8px; }
	.sb-primary-menu .sub-menu { position: static; min-width: 0; margin-left: 14px; padding: 0 0 6px; border: 0; box-shadow: none; opacity: 1; visibility: visible; transform: none; }
	.sb-footer-main { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 700px) {
	body { font-size: 16px; }
	.sb-header-inner { padding: 0 18px; }
	.sb-brand { width: 170px; }
	.sb-cover { min-height: 460px; }
	.sb-cover-inner { width: min(100% - 36px, var(--sb-shell)); padding: 72px 0 52px; }
	.sb-cover-title { font-size: clamp(34px, 10vw, 48px); }
	.sb-content-wrap { width: min(100% - 36px, var(--sb-content)); padding: 52px 0 64px; }
	.sb-entry-content { font-size: 17px; line-height: 1.7; }
	.sb-footer-main { grid-template-columns: 1fr; gap: 34px; padding: 48px 20px 38px; }
	.sb-footer-bottom { padding: 20px; }
}

/* Footer SOLO BRASILEIRO — override definitivo do Twenty Twenty */
#site-footer.sb-site-footer,
body #site-footer.sb-site-footer,
body:not(.overlay-header) #site-footer.sb-site-footer {
	background: #000000 !important;
	background-color: #000000 !important;
	color: #ffffff !important;
}
#site-footer.sb-site-footer .sb-footer-main,
#site-footer.sb-site-footer .sb-footer-brand,
#site-footer.sb-site-footer .sb-footer-col,
#site-footer.sb-site-footer .sb-footer-bottom {
	background-color: #000000 !important;
	color: #ffffff !important;
}
#site-footer.sb-site-footer .sb-footer-col h2 {
	color: #ffffff !important;
}
#site-footer.sb-site-footer .sb-footer-menu,
#site-footer.sb-site-footer .sb-footer-menu li,
#site-footer.sb-site-footer .sb-footer-menu a,
#site-footer.sb-site-footer .sb-footer-menu a:visited {
	color: #ffffff !important;
}
#site-footer.sb-site-footer .sb-footer-menu a:hover,
#site-footer.sb-site-footer .sb-footer-menu a:focus {
	color: var(--sb-teal) !important;
}
#site-footer.sb-site-footer .sb-footer-brand p {
	color: rgba(255,255,255,.82) !important;
}
#site-footer.sb-site-footer .sb-footer-bottom p {
	color: rgba(255,255,255,.74) !important;
}

/* =========================================================
   SOLO BRASILEIRO UI POLISH — inspirado em interfaces premium,
   com microinterações leves e sem dependências externas.
   ========================================================= */

::selection {
	background: var(--sb-teal);
	color: var(--sb-black);
}

/* Cabeçalho com profundidade sutil e comportamento premium */
.sb-site-header {
	position: sticky;
	top: 0;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	box-shadow: 0 1px 0 rgba(0,0,0,.05);
	transition: box-shadow .25s ease, background-color .25s ease;
}
.sb-brand img {
	transition: transform .28s ease, opacity .28s ease;
}
.sb-brand:hover img,
.sb-brand:focus-visible img {
	transform: translateY(-1px) scale(1.015);
	opacity: .92;
}
.sb-primary-menu > li > a {
	position: relative;
	transition: color .22s ease;
}
.sb-primary-menu > li > a::after {
	content: "";
	position: absolute;
	left: 13px;
	right: 13px;
	bottom: 22px;
	height: 2px;
	background: var(--sb-teal);
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform .25s ease;
}
.sb-primary-menu > li > a:hover::after,
.sb-primary-menu > li.current-menu-item > a::after,
.sb-primary-menu > li.current-menu-ancestor > a::after {
	transform: scaleX(1);
	transform-origin: left center;
}

/* Dropdown com entrada mais elegante */
.sb-primary-menu .sub-menu {
	border-radius: 10px;
	box-shadow: 0 22px 55px rgba(0,0,0,.14);
	transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
}
.sb-primary-menu .sub-menu a {
	border-radius: 7px;
	transition: background-color .2s ease, color .2s ease, padding-left .2s ease;
}
.sb-primary-menu .sub-menu a:hover {
	padding-left: 16px;
	background: rgba(102,205,208,.16);
}

/* Hero: efeito Ken Burns contínuo, independente de hover */
.sb-cover-background {
	transform: scale(1.035) translate3d(0, 0, 0);
	transform-origin: center center;
	will-change: transform;
	animation: sb-cover-kenburns 18s ease-in-out infinite alternate;
}
@keyframes sb-cover-kenburns {
	0% { transform: scale(1.035) translate3d(-0.6%, -0.25%, 0); }
	50% { transform: scale(1.075) translate3d(0.35%, 0.2%, 0); }
	100% { transform: scale(1.115) translate3d(0.75%, -0.15%, 0); }
}
.sb-cover::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--sb-teal), transparent);
	opacity: .9;
	z-index: 3;
}
.sb-cover-kicker {
	border: 1px solid rgba(0,0,0,.08);
	box-shadow: 0 8px 24px rgba(0,0,0,.10);
	transition: transform .22s ease, box-shadow .22s ease;
}
.sb-cover-kicker:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(0,0,0,.14);
}
.sb-cover-title {
	text-shadow: 0 1px 0 rgba(255,255,255,.35);
}


/* Revelação editorial no scroll: subtítulos e parágrafos selecionados */
.sb-entry-content .sb-reveal {
	opacity: 0;
	transform: translate3d(-46px, 0, 0);
	transition:
		opacity .72s cubic-bezier(.2,.7,.2,1) var(--sb-reveal-delay, 0ms),
		transform .82s cubic-bezier(.2,.7,.2,1) var(--sb-reveal-delay, 0ms);
	will-change: opacity, transform;
}
.sb-entry-content .sb-reveal.sb-reveal-paragraph {
	transform: translate3d(-30px, 0, 0);
}
.sb-entry-content .sb-reveal.is-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

/* Conteúdo editorial */
.sb-entry-content h2,
.sb-entry-content h3 {
	position: relative;
}
.sb-entry-content h2::after {
	content: "";
	display: block;
	width: 58px;
	height: 3px;
	margin-top: 14px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--sb-teal), var(--sb-cyan-dark));
}

.sb-entry-content a:not(.wp-block-button__link) {
	background-image: linear-gradient(var(--sb-teal), var(--sb-teal));
	background-position: 0 100%;
	background-repeat: no-repeat;
	background-size: 100% 1px;
	transition: background-size .2s ease, color .2s ease;
	text-decoration: none;
}
.sb-entry-content a:not(.wp-block-button__link):hover {
	background-size: 100% 3px;
	color: var(--sb-black);
}

/* Imagens do conteúdo com acabamento de card premium */
.sb-entry-content figure,
.sb-entry-content .wp-block-image {
	overflow: hidden;
	border-radius: 12px;
}
.sb-entry-content figure img,
.sb-entry-content .wp-block-image img {
	transition: transform .45s cubic-bezier(.2,.6,.2,1), box-shadow .25s ease;
}
.sb-entry-content figure:hover img,
.sb-entry-content .wp-block-image:hover img {
	transform: scale(1.018);
}

/* Botões Gutenberg / CTAs */
.sb-entry-content .wp-block-button__link,
.sb-entry-content .wp-element-button {
	position: relative;
	overflow: hidden;
	border-radius: 999px !important;
	border: 1px solid var(--sb-black) !important;
	background: var(--sb-black) !important;
	color: var(--sb-white) !important;
	font-weight: 800;
	letter-spacing: .01em;
	box-shadow: 0 10px 28px rgba(0,0,0,.12);
	transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, color .22s ease;
}
.sb-entry-content .wp-block-button__link:hover,
.sb-entry-content .wp-element-button:hover {
	transform: translateY(-2px);
	background: var(--sb-teal) !important;
	color: var(--sb-black) !important;
	box-shadow: 0 16px 34px rgba(0,0,0,.16);
}

/* Tabelas mais sofisticadas para especificações técnicas */
.sb-entry-content table {
	overflow: hidden;
	border-radius: 10px;
	box-shadow: 0 8px 30px rgba(0,0,0,.05);
}
.sb-entry-content tbody tr {
	transition: background-color .18s ease;
}
.sb-entry-content tbody tr:hover {
	background: rgba(102,205,208,.09);
}
.sb-entry-content th {
	background: var(--sb-black);
	color: var(--sb-white);
}

/* Blocos de citação / informação */
.sb-entry-content blockquote {
	position: relative;
	padding: 22px 24px 22px 28px;
	border-left: 4px solid var(--sb-teal);
	border-radius: 0 10px 10px 0;
	background: linear-gradient(90deg, rgba(102,205,208,.12), rgba(102,205,208,.025));
}

/* Rodapé com interação mais elegante */
.sb-footer-col h2 {
	position: relative;
	border-bottom-color: rgba(102,205,208,.35);
}
.sb-footer-col h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 54px;
	height: 2px;
	background: var(--sb-teal);
}
.sb-footer-menu a {
	transition: color .2s ease, transform .2s ease, text-shadow .2s ease;
}
.sb-footer-menu a:hover,
.sb-footer-menu a:focus {
	text-shadow: 0 0 18px rgba(102,205,208,.45);
}

/* Suavização das caixas genéricas do Gutenberg */
.sb-entry-content .wp-block-group.has-background,
.sb-entry-content .wp-block-columns.has-background,
.sb-entry-content .wp-block-cover {
	border-radius: 14px;
	overflow: hidden;
}

/* Performance e acessibilidade */
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.sb-cover-background { animation: none !important; transform: scale(1.035) !important; }
	.sb-entry-content .sb-reveal { opacity: 1 !important; transform: none !important; }
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important;
	}
}

@media (max-width: 782px) {
	.sb-site-header {
		position: relative;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
	}
	.sb-primary-menu > li > a::after { display: none; }
	.sb-cover-background { animation-duration: 20s; }
	.sb-entry-content figure:hover img,
	.sb-entry-content .wp-block-image:hover img { transform: none; }
}

/* =========================================================
   RODAPÉ CINEMÁTICO — movimento automático, leve e contínuo
   ========================================================= */
#site-footer.sb-site-footer {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}
#site-footer.sb-site-footer::before {
	content: "";
	position: absolute;
	inset: -35% -12%;
	z-index: 0;
	pointer-events: none;
	background:
		radial-gradient(circle at 16% 48%, rgba(102,205,208,.16), transparent 24%),
		radial-gradient(circle at 84% 42%, rgba(102,205,208,.10), transparent 22%);
	filter: blur(6px);
	transform: translate3d(-2%,0,0) scale(1.02);
	animation: sb-footer-ambient 16s ease-in-out infinite alternate;
}
#site-footer.sb-site-footer::after {
	content: "";
	position: absolute;
	top: 0;
	left: -28%;
	width: 28%;
	height: 2px;
	z-index: 3;
	pointer-events: none;
	background: linear-gradient(90deg, transparent, var(--sb-teal), #fff, var(--sb-teal), transparent);
	box-shadow: 0 0 16px rgba(102,205,208,.68);
	animation: sb-footer-scan 7.5s cubic-bezier(.45,0,.2,1) infinite;
}
@keyframes sb-footer-ambient {
	0% { transform: translate3d(-2%, -1%, 0) scale(1.02); opacity: .72; }
	50% { transform: translate3d(2%, 1.5%, 0) scale(1.07); opacity: 1; }
	100% { transform: translate3d(4%, -1%, 0) scale(1.03); opacity: .78; }
}
@keyframes sb-footer-scan {
	0%, 8% { transform: translate3d(0,0,0); opacity: 0; }
	14% { opacity: 1; }
	72% { opacity: .95; }
	82%, 100% { transform: translate3d(460%,0,0); opacity: 0; }
}
#site-footer.sb-site-footer .sb-footer-main,
#site-footer.sb-site-footer .sb-footer-bottom {
	position: relative;
	z-index: 1;
}
#site-footer.sb-site-footer .sb-footer-brand,
#site-footer.sb-site-footer .sb-footer-col {
	opacity: 0;
	transform: translate3d(0, 34px, 0);
	transition:
		opacity .7s cubic-bezier(.2,.7,.2,1) var(--sb-footer-delay, 0ms),
		transform .8s cubic-bezier(.2,.7,.2,1) var(--sb-footer-delay, 0ms);
}
#site-footer.sb-site-footer.is-visible .sb-footer-brand,
#site-footer.sb-site-footer.is-visible .sb-footer-col {
	opacity: 1;
	transform: translate3d(0,0,0);
}
#site-footer.sb-site-footer .sb-footer-brand img {
	transition: transform .45s cubic-bezier(.2,.7,.2,1), filter .35s ease;
}
#site-footer.sb-site-footer .sb-footer-brand a:hover img,
#site-footer.sb-site-footer .sb-footer-brand a:focus-visible img {
	transform: translateY(-3px) scale(1.025);
	filter: drop-shadow(0 9px 22px rgba(102,205,208,.18));
}
#site-footer.sb-site-footer .sb-footer-menu a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
#site-footer.sb-site-footer .sb-footer-menu a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 100%;
	height: 1px;
	background: var(--sb-teal);
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform .25s ease;
}
#site-footer.sb-site-footer .sb-footer-menu a:hover::after,
#site-footer.sb-site-footer .sb-footer-menu a:focus-visible::after {
	transform: scaleX(1);
	transform-origin: left center;
}
#site-footer.sb-site-footer .sb-footer-bottom {
	border-top-color: rgba(255,255,255,.12) !important;
}

@media (max-width: 782px) {
	#site-footer.sb-site-footer::before {
		inset: -20% -45%;
		animation-duration: 20s;
	}
	#site-footer.sb-site-footer::after {
		width: 44%;
		animation-duration: 8.5s;
	}
}

@media (prefers-reduced-motion: reduce) {
	#site-footer.sb-site-footer::before,
	#site-footer.sb-site-footer::after { animation: none !important; }
	#site-footer.sb-site-footer .sb-footer-brand,
	#site-footer.sb-site-footer .sb-footer-col { opacity: 1 !important; transform: none !important; }
}


/* =========================================================
   COVER GALERIA v2.9 — slideshow cinematográfico
   ========================================================= */
.sb-cover-media {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	background: var(--sb-black);
}
.sb-cover-media .sb-cover-background {
	inset: -2.5%;
	opacity: 0;
	transform: scale(1.035) translate3d(0,0,0);
	transition: opacity 1.35s cubic-bezier(.4,0,.2,1);
	animation: none;
	will-change: opacity, transform;
}
.sb-cover-media .sb-cover-background.is-active {
	opacity: 1;
	z-index: 2;
	animation: sb-cover-gallery-kenburns 8.5s ease-out both;
}
.sb-cover-media .sb-cover-background:nth-child(even).is-active {
	animation-name: sb-cover-gallery-kenburns-alt;
}
@keyframes sb-cover-gallery-kenburns {
	0% { transform: scale(1.035) translate3d(-.5%, -.25%, 0); }
	100% { transform: scale(1.115) translate3d(.65%, .2%, 0); }
}
@keyframes sb-cover-gallery-kenburns-alt {
	0% { transform: scale(1.04) translate3d(.55%, -.15%, 0); }
	100% { transform: scale(1.12) translate3d(-.65%, .25%, 0); }
}
.sb-cover-overlay { z-index: 1; }
.sb-cover-inner { z-index: 3; }

/* Ícone de porta — somente navegação mobile */
.sb-menu-toggle {
	color: #000 !important;
	line-height: 0;
	border-radius: 10px;
	transition: background-color .2s ease, transform .2s ease;
}
.sb-menu-toggle .sb-door-icon {
	display: block;
	color: #000;
	stroke: currentColor;
}
.sb-menu-toggle:hover,
.sb-menu-toggle:focus-visible {
	background: rgba(102,205,208,.16);
	transform: translateY(-1px);
}
.sb-menu-toggle:focus-visible {
	outline: 2px solid var(--sb-teal);
	outline-offset: 3px;
}
.sb-menu-toggle span:not(.screen-reader-text) { display: none !important; }

@media (prefers-reduced-motion: reduce) {
	.sb-cover-media .sb-cover-background,
	.sb-cover-media .sb-cover-background.is-active {
		animation: none !important;
		transform: scale(1.035) !important;
		transition-duration: .01ms !important;
	}
}

/* =========================================================
   HOME MULTISITE SOLO BRASILEIRO v3.0
   ========================================================= */
.sb-home { overflow: hidden; background: #fff; }
.sb-home-shell { width: min(100% - 56px, var(--sb-shell)); margin-inline: auto; }
.sb-home-section { padding: clamp(82px, 8vw, 132px) 0; }
.sb-home-section-tag { display: inline-block; margin-bottom: 18px; color: var(--sb-cyan-dark); font-size: 12px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.sb-home-section h2 { margin: 0; font-size: clamp(36px, 4.2vw, 64px); line-height: 1.02; letter-spacing: -.045em; }
.sb-home-reveal { opacity: 0; transform: translate3d(-34px, 22px, 0); transition: opacity .8s cubic-bezier(.2,.7,.2,1) var(--sb-reveal-delay,0ms), transform .9s cubic-bezier(.2,.7,.2,1) var(--sb-reveal-delay,0ms); }
.sb-home-reveal.is-visible { opacity: 1; transform: translate3d(0,0,0); }

/* Hero cinematográfico */
.sb-home-hero { position: relative; min-height: min(900px, 88vh); display: flex; align-items: center; isolation: isolate; background: #060808; color: #fff; }
.sb-home-hero-media, .sb-home-hero-slide, .sb-home-hero-shade { position: absolute; inset: 0; }
.sb-home-hero-media { overflow: hidden; z-index: -3; }
.sb-home-hero-slide { background-size: cover; background-position: center; opacity: 0; transform: scale(1.03); transition: opacity 1.4s ease; }
.sb-home-hero-slide.is-active { opacity: 1; animation: sb-home-kenburns 7.2s ease-out both; }
.sb-home-hero-slide:nth-child(even).is-active { animation-name: sb-home-kenburns-alt; }
.sb-home-hero-fallback { background: radial-gradient(circle at 75% 20%, rgba(102,205,208,.25), transparent 32%), linear-gradient(135deg,#101617,#050606); }
@keyframes sb-home-kenburns { from{transform:scale(1.03) translate3d(-.5%,0,0)} to{transform:scale(1.12) translate3d(.7%,-.5%,0)} }
@keyframes sb-home-kenburns-alt { from{transform:scale(1.035) translate3d(.5%,-.2%,0)} to{transform:scale(1.125) translate3d(-.7%,.4%,0)} }
.sb-home-hero-shade { z-index: -2; background: linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.56) 48%, rgba(0,0,0,.20) 75%, rgba(0,0,0,.34) 100%); }
.sb-home-hero-shade::after { content:""; position:absolute; inset:0; background: linear-gradient(180deg,rgba(0,0,0,.08),transparent 55%,rgba(0,0,0,.5)); }
.sb-home-hero-inner { padding: 100px 0; }
.sb-home-eyebrow { margin: 0 0 22px; color: var(--sb-teal); font-size: 13px; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.sb-home-title { max-width: 990px; margin: 0; color: #fff !important; font-size: clamp(52px, 7.1vw, 108px); font-weight: 850; line-height: .94; letter-spacing: -.058em; text-wrap: balance; }
.sb-home-lead { max-width: 760px; margin: 30px 0 0; color: rgba(255,255,255,.9); font-size: clamp(18px,1.6vw,24px); line-height: 1.55; }
.sb-home-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top: 38px; }
.sb-home-btn { display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:0 24px; border:1px solid transparent; border-radius:999px; font-size:14px; font-weight:800; letter-spacing:.035em; text-decoration:none !important; transition:transform .25s ease, background-color .25s ease, border-color .25s ease, color .25s ease, box-shadow .25s ease; }
.sb-home-btn:hover { transform: translateY(-3px); }
.sb-home-btn-primary { background:var(--sb-teal); color:#000 !important; box-shadow:0 12px 34px rgba(102,205,208,.18); }
.sb-home-btn-primary:hover { background:#fff; color:#000 !important; box-shadow:0 16px 40px rgba(255,255,255,.16); }
.sb-home-btn-ghost { border-color:rgba(255,255,255,.5); color:#fff !important; background:rgba(0,0,0,.12); backdrop-filter:blur(7px); }
.sb-home-btn-ghost:hover { background:#fff; border-color:#fff; color:#000 !important; }
.sb-home-scroll { position:absolute; right:28px; bottom:30px; display:flex; align-items:center; gap:10px; color:rgba(255,255,255,.75); font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; writing-mode:vertical-rl; }
.sb-home-scroll span { display:block; width:1px; height:54px; background:linear-gradient(#fff,transparent); animation:sb-scroll-line 1.8s ease-in-out infinite; }
@keyframes sb-scroll-line { 0%,100%{transform:scaleY(.45);transform-origin:top} 50%{transform:scaleY(1)} }

/* Ticker */
.sb-home-ticker { overflow:hidden; background:#000; color:#fff; border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); }
.sb-home-ticker-track { width:max-content; display:flex; align-items:center; gap:28px; padding:18px 0; animation:sb-home-marquee 28s linear infinite; }
.sb-home-ticker span { font-size:12px; font-weight:850; letter-spacing:.12em; white-space:nowrap; }
.sb-home-ticker i { width:7px; height:7px; border-radius:50%; background:var(--sb-teal); box-shadow:0 0 16px rgba(102,205,208,.8); }
@keyframes sb-home-marquee { to{transform:translateX(-50%)} }

/* Intro */
.sb-home-intro { background:#fff; }
.sb-home-intro-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:clamp(48px,8vw,130px); align-items:start; }
.sb-home-sticky-title { position:sticky; top:120px; }
.sb-home-copy { max-width:720px; }
.sb-home-copy p { margin:0 0 24px; color:#4d5659; font-size:18px; }
.sb-home-copy .sb-home-copy-lead { color:var(--sb-black); font-size:clamp(23px,2.2vw,31px); font-weight:650; line-height:1.42; letter-spacing:-.02em; }
.sb-home-text-link { display:inline-flex; align-items:center; gap:10px; margin-top:8px; color:#000 !important; font-size:14px; font-weight:850; text-decoration:none; border-bottom:1px solid #000; padding-bottom:4px; }
.sb-home-text-link span { transition:transform .2s ease; }
.sb-home-text-link:hover span { transform:translateX(5px); }

/* Produtos */
.sb-home-products { background:#0b0d0e; color:#fff; }
.sb-home-products h2 { color:#fff; }
.sb-home-section-head { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(260px,.55fr); gap:60px; align-items:end; margin-bottom:54px; }
.sb-home-section-head > p { margin:0; color:#697477; font-size:16px; }
.sb-home-products .sb-home-section-head > p { color:rgba(255,255,255,.58); }
.sb-home-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.sb-home-product-card { position:relative; min-height:430px; overflow:hidden; border:1px solid rgba(255,255,255,.11); border-radius:18px; color:#fff !important; text-decoration:none !important; background:#15191a; isolation:isolate; }
.sb-home-product-media,.sb-home-product-overlay { position:absolute; inset:0; }
.sb-home-product-media { z-index:-2; background-size:cover; background-position:center; transform:scale(1.03); transition:transform .7s cubic-bezier(.2,.7,.2,1), filter .5s ease; filter:saturate(.8) contrast(1.05); }
.sb-home-product-overlay { z-index:-1; background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.84) 88%); }
.sb-home-product-card::after { content:""; position:absolute; inset:0; border:1px solid transparent; border-radius:18px; transition:border-color .35s ease, box-shadow .35s ease; pointer-events:none; }
.sb-home-product-card:hover::after { border-color:rgba(102,205,208,.72); box-shadow:inset 0 0 0 1px rgba(102,205,208,.12),0 20px 70px rgba(0,0,0,.3); }
.sb-home-product-card:hover .sb-home-product-media { transform:scale(1.095); filter:saturate(1) contrast(1.06); }
.sb-home-product-content { position:absolute; inset:0; display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:end; padding:30px; }
.sb-home-card-index { align-self:start; color:var(--sb-teal); font-size:12px; font-weight:850; letter-spacing:.12em; }
.sb-home-product-content h3 { margin:0 0 10px; color:#fff; font-size:clamp(27px,3vw,42px); letter-spacing:-.035em; }
.sb-home-product-content p { max-width:620px; margin:0; color:rgba(255,255,255,.72); font-size:15px; line-height:1.55; }
.sb-home-card-arrow { display:grid; place-items:center; width:46px; height:46px; border:1px solid rgba(255,255,255,.35); border-radius:50%; font-size:21px; transition:background .25s ease,color .25s ease,transform .25s ease; }
.sb-home-product-card:hover .sb-home-card-arrow { background:var(--sb-teal); color:#000; border-color:var(--sb-teal); transform:rotate(10deg) scale(1.05); }

/* Técnico */
.sb-home-tech { background:#f1f4f4; }
.sb-home-tech-heading { max-width:950px; margin-bottom:58px; }
.sb-home-tech-heading p { max-width:680px; margin:22px 0 0; color:#616b6e; font-size:18px; }
.sb-home-tech-list { border-top:1px solid #cfd6d7; }
.sb-home-tech-row { display:grid; grid-template-columns:70px minmax(180px,.65fr) minmax(0,1.35fr); gap:34px; padding:32px 0; border-bottom:1px solid #cfd6d7; align-items:start; transition:padding .25s ease,background .25s ease; }
.sb-home-tech-row:hover { padding-left:16px; padding-right:16px; background:rgba(255,255,255,.62); }
.sb-home-tech-number { color:var(--sb-cyan-dark); font-size:12px; font-weight:850; letter-spacing:.1em; }
.sb-home-tech-row h3 { margin:0; font-size:24px; }
.sb-home-tech-row p { margin:0; color:#586164; font-size:16px; }
.sb-home-tech-note { max-width:900px; margin:26px 0 0; color:#758083; font-size:13px; }

/* Cinematic */
.sb-home-cinematic { position:relative; min-height:680px; display:flex; align-items:flex-end; overflow:hidden; isolation:isolate; background:#000; }
.sb-home-cinematic-bg,.sb-home-cinematic-shade { position:absolute; inset:0; }
.sb-home-cinematic-bg { z-index:-2; background-image:var(--sb-cinematic-image); background-size:cover; background-position:center; animation:sb-cinematic-zoom 18s ease-in-out infinite alternate; }
@keyframes sb-cinematic-zoom { from{transform:scale(1.02) translate3d(-.5%,0,0)} to{transform:scale(1.12) translate3d(.8%,-.5%,0)} }
.sb-home-cinematic-shade { z-index:-1; background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.82)); }
.sb-home-cinematic-content { padding:90px 0; }
.sb-home-cinematic-content h2 { max-width:920px; margin:0 0 34px; color:#fff; font-size:clamp(42px,6vw,82px); line-height:.98; }

/* Setores */
.sb-home-sector-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--sb-line); border-left:1px solid var(--sb-line); }
.sb-home-sector { min-height:135px; display:flex; align-items:flex-end; padding:24px; border-right:1px solid var(--sb-line); border-bottom:1px solid var(--sb-line); color:#171a1c; font-size:18px; font-weight:750; transition:background .25s ease,color .25s ease,transform .25s ease; }
.sb-home-sector:hover { background:#000; color:#fff; transform:translateY(-3px); }

/* Insights */
.sb-home-insights { background:#f6f8f8; }
.sb-home-insight-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.sb-home-insight-card { background:#fff; border:1px solid #e2e7e8; border-radius:16px; overflow:hidden; transition:transform .3s ease,box-shadow .3s ease; }
.sb-home-insight-card:hover { transform:translateY(-7px); box-shadow:0 22px 55px rgba(0,0,0,.09); }
.sb-home-insight-media { display:block; aspect-ratio:16/10; background:#dbe1e2 center/cover no-repeat; transition:transform .5s ease; }
.sb-home-insight-body { padding:25px; }
.sb-home-insight-body > span { color:var(--sb-cyan-dark); font-size:11px; font-weight:800; letter-spacing:.1em; }
.sb-home-insight-body h3 { margin:10px 0 12px; font-size:24px; }
.sb-home-insight-body h3 a { color:#111 !important; text-decoration:none; }
.sb-home-insight-body p { margin:0; color:#667174; font-size:14px; }

/* CTA */
.sb-home-cta { padding:clamp(72px,8vw,118px) 0; background:#000; color:#fff; }
.sb-home-cta-inner { display:flex; align-items:end; justify-content:space-between; gap:50px; }
.sb-home-cta h2 { max-width:850px; margin:0; color:#fff; font-size:clamp(40px,5.5vw,78px); line-height:.98; letter-spacing:-.045em; }

@media (max-width: 980px) {
  .sb-home-hero { min-height:760px; }
  .sb-home-intro-grid,.sb-home-section-head { grid-template-columns:1fr; gap:36px; }
  .sb-home-sticky-title { position:static; }
  .sb-home-product-grid { grid-template-columns:1fr; }
  .sb-home-tech-row { grid-template-columns:50px 1fr; }
  .sb-home-tech-row p { grid-column:2; }
  .sb-home-sector-grid { grid-template-columns:repeat(2,1fr); }
  .sb-home-insight-grid { grid-template-columns:1fr 1fr; }
  .sb-home-cta-inner { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 700px) {
  .sb-home-shell { width:min(100% - 36px,var(--sb-shell)); }
  .sb-home-section { padding:72px 0; }
  .sb-home-hero { min-height:680px; }
  .sb-home-hero-inner { padding:82px 0 110px; }
  .sb-home-title { font-size:clamp(44px,14vw,68px); }
  .sb-home-lead { font-size:18px; }
  .sb-home-scroll { display:none; }
  .sb-home-product-card { min-height:390px; }
  .sb-home-product-content { grid-template-columns:1fr auto; padding:23px; }
  .sb-home-card-index { grid-column:1 / -1; }
  .sb-home-product-content p { display:none; }
  .sb-home-tech-row { grid-template-columns:42px 1fr; gap:16px; }
  .sb-home-tech-row:hover { padding-left:0; padding-right:0; }
  .sb-home-cinematic { min-height:560px; }
  .sb-home-sector-grid { grid-template-columns:1fr; }
  .sb-home-sector { min-height:92px; }
  .sb-home-insight-grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .sb-home-reveal { opacity:1 !important; transform:none !important; }
  .sb-home-hero-slide.is-active,.sb-home-cinematic-bg,.sb-home-ticker-track,.sb-home-scroll span { animation:none !important; }
}


/* =========================================================
   HOME + MOBILE + FOOTER REFINEMENT v3.1
   ========================================================= */

/* Galeria editorial de produtos reais */
.sb-home-showcase { padding: 18px; background:#0b0d0e; }
.sb-home-showcase-grid { width:min(100%,1560px); margin:0 auto; display:grid; grid-template-columns:1.4fr .8fr .8fr; gap:18px; }
.sb-home-showcase-item { position:relative; min-height:420px; margin:0; overflow:hidden; border-radius:18px; background:#15191a; isolation:isolate; }
.sb-home-showcase-item img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; transform:scale(1.02); filter:saturate(.92) contrast(1.04); transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .5s ease; }
.sb-home-showcase-item::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.72)); pointer-events:none; }
.sb-home-showcase-item:hover img { transform:scale(1.09); filter:saturate(1.05) contrast(1.06); }
.sb-home-showcase-item figcaption { position:absolute; left:24px; bottom:22px; z-index:2; color:#fff; font-size:13px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.sb-home-showcase-item figcaption::before { content:""; display:inline-block; width:22px; height:2px; margin:0 10px 4px 0; background:var(--sb-teal); }

/* Atendimento nacional */
.sb-home-national { background:#081012; color:#fff; }
.sb-home-national-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(44px,7vw,110px); align-items:center; }
.sb-home-national h2 { color:#fff; max-width:720px; }
.sb-home-national p { max-width:620px; margin:26px 0 34px; color:rgba(255,255,255,.72); font-size:18px; }
.sb-home-national-media { position:relative; border-radius:22px; overflow:hidden; box-shadow:0 28px 80px rgba(0,0,0,.35); }
.sb-home-national-media::after { content:""; position:absolute; inset:0; border:1px solid rgba(102,205,208,.28); border-radius:inherit; pointer-events:none; }
.sb-home-national-media img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }

/* O footer nunca fica invisível se JS, cache ou minificação falhar. */
#site-footer.sb-site-footer .sb-footer-brand,
#site-footer.sb-site-footer .sb-footer-col {
    opacity:1 !important;
    transform:none !important;
}
#site-footer.sb-site-footer.is-visible .sb-footer-brand,
#site-footer.sb-site-footer.is-visible .sb-footer-col {
    animation:sb-footer-enter .72s cubic-bezier(.2,.7,.2,1) both;
    animation-delay:var(--sb-footer-delay,0ms);
}
@keyframes sb-footer-enter {
    from { opacity:0; transform:translate3d(0,26px,0); }
    to { opacity:1; transform:translate3d(0,0,0); }
}
#site-footer.sb-site-footer .sb-footer-menu { display:block !important; visibility:visible !important; opacity:1 !important; }
#site-footer.sb-site-footer .sb-footer-menu li { display:block !important; opacity:1 !important; }
#site-footer.sb-site-footer .sb-footer-menu a { display:inline-flex !important; color:#fff !important; font-weight:780 !important; font-size:15px; }

/* Mobile: marca e navegação mais presentes */
@media (max-width:1000px) {
    .sb-header-inner { min-height:88px; padding:0 22px; }
    .sb-brand { width:230px; max-width:68vw; }
    .sb-menu-toggle { width:52px; height:52px; display:grid; place-items:center; padding:8px; flex:0 0 auto; }
    .sb-menu-toggle .sb-door-icon { width:34px; height:34px; stroke-width:1.9; }
    .sb-primary-nav { padding:14px 22px 24px; }
    .sb-primary-menu > li > a { padding:15px 10px; font-size:16px; font-weight:800; letter-spacing:.025em; }
    .sb-primary-menu .sub-menu a { padding:11px 10px; font-size:15px; font-weight:700; }
}
@media (max-width:700px) {
    body { font-size:17px; }
    .sb-header-inner { min-height:92px; padding:0 16px; }
    .sb-brand { width:240px; max-width:72vw; }
    .sb-menu-toggle { width:50px; height:50px; }
    .sb-menu-toggle .sb-door-icon { width:35px; height:35px; }
    .sb-primary-nav { padding:12px 16px 24px; }
    .sb-primary-menu > li > a { padding:16px 8px; font-size:17px; }
    .sb-primary-menu .sub-menu { margin-left:10px; }
    .sb-primary-menu .sub-menu a { font-size:16px; line-height:1.35; }
    .sb-home-title { font-size:clamp(46px,14.5vw,70px); }
    .sb-home-lead { font-size:19px; line-height:1.55; }
    .sb-home-section h2 { font-size:clamp(35px,10vw,50px); }
    .sb-home-copy p,.sb-home-tech-row p,.sb-home-section-head > p { font-size:17px; }
    .sb-home-showcase { padding:10px; }
    .sb-home-showcase-grid { grid-template-columns:1fr; gap:10px; }
    .sb-home-showcase-item { min-height:300px; border-radius:14px; }
    .sb-home-national-grid { grid-template-columns:1fr; }
    .sb-home-national-media { order:-1; }
    #site-footer.sb-site-footer .sb-footer-main { gap:42px; padding:58px 22px 44px; }
    #site-footer.sb-site-footer .sb-footer-brand img { width:245px; max-width:82vw; }
    #site-footer.sb-site-footer .sb-footer-brand p { font-size:15px; }
    #site-footer.sb-site-footer .sb-footer-col h2 { font-size:19px; margin-bottom:18px; }
    #site-footer.sb-site-footer .sb-footer-menu a { font-size:16px !important; padding:4px 0; }
    #site-footer.sb-site-footer .sb-footer-menu li { margin-bottom:10px !important; }
}

/* =========================================================
   SOLO BRASILEIRO CONTAINERS v4.0
   Identidade céu + navegação multisite — override final
   Mantém as animações e microinterações da versão anterior.
   ========================================================= */
:root {
    --sb-sky-050:#f8fcff;
    --sb-sky-100:#eef9ff;
    --sb-sky-200:#dff3ff;
    --sb-sky-300:#c8ebff;
    --sb-sky-500:#69c5f5;
    --sb-blue-700:#0878b8;
    --sb-blue-900:#123a55;
    --sb-footer-text:#24465c;
}

/* Header claro, com leve alusão de céu e vidro */
.sb-site-header {
    position:sticky;
    top:0;
    z-index:1000;
    background:
        radial-gradient(circle at 8% -30%, rgba(105,197,245,.24), transparent 34%),
        radial-gradient(circle at 88% -40%, rgba(182,229,255,.42), transparent 38%),
        linear-gradient(135deg, rgba(255,255,255,.99) 0%, rgba(244,251,255,.98) 46%, rgba(225,245,255,.98) 100%);
    border-bottom:1px solid rgba(8,120,184,.16);
    box-shadow:0 10px 34px rgba(31,91,125,.07);
    backdrop-filter:saturate(125%) blur(14px);
    -webkit-backdrop-filter:saturate(125%) blur(14px);
}
body.admin-bar .sb-site-header { top:32px; }
.sb-header-utility {
    border-bottom:1px solid rgba(8,120,184,.10);
    background:linear-gradient(90deg,rgba(255,255,255,.75),rgba(222,244,255,.82),rgba(255,255,255,.78));
    color:#3b5f75;
}
.sb-header-utility-inner {
    width:min(100% - 56px,var(--sb-shell));
    min-height:31px;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    font-size:11px;
    font-weight:750;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.sb-header-utility-links { display:flex; align-items:center; gap:16px; }
.sb-header-utility a { color:var(--sb-blue-700) !important; text-decoration:none; }
.sb-header-utility a:hover,.sb-header-utility a:focus { color:#0c3e5d !important; }
.sb-header-inner { min-height:88px; }
.sb-brand { width:250px; max-width:36vw; }
.sb-brand img { filter:none; }
.sb-primary-menu > li > a { color:#17384e !important; }
.sb-primary-menu > li > a:hover,
.sb-primary-menu > li.current-menu-item > a,
.sb-primary-menu > li.current-menu-ancestor > a { color:var(--sb-blue-700) !important; }
.sb-primary-menu > li > a::after { background:linear-gradient(90deg,#8bdcff,var(--sb-blue-700)); }
.sb-primary-menu .sub-menu {
    background:linear-gradient(145deg,#fff 0%,#f8fcff 68%,#e8f7ff 100%);
    border-color:rgba(8,120,184,.14);
    box-shadow:0 20px 50px rgba(22,83,118,.14);
}
.sb-primary-menu .sub-menu a { color:#23485f !important; border-radius:8px; }
.sb-primary-menu .sub-menu a:hover { background:rgba(105,197,245,.14); color:#075f94 !important; }
.sb-primary-menu > .sb-menu-services > .sub-menu,
.sb-primary-menu > li.menu-item-has-children:first-of-type > .sub-menu {
    width:min(780px,86vw);
    display:grid;
    grid-template-columns:repeat(3,minmax(190px,1fr));
    gap:3px 10px;
    padding:16px;
}
.sb-primary-menu > li:last-child > a {
    margin-left:7px;
    padding:12px 18px;
    border:1px solid rgba(8,120,184,.22);
    border-radius:999px;
    background:linear-gradient(135deg,#eaf8ff,#cceeff);
    box-shadow:0 6px 18px rgba(8,120,184,.08);
}
.sb-primary-menu > li:last-child > a:hover { background:#d9f3ff; }
.sb-menu-toggle { color:#153f5b !important; }
.sb-menu-toggle .sb-door-icon { color:#153f5b; }
.sb-menu-toggle:hover,.sb-menu-toggle:focus-visible { background:rgba(105,197,245,.18); }

/* Grade completa de serviços — editorial no desktop, limpa no mobile */
.sb-home-product-grid.sb-home-product-grid-all { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sb-home-product-grid-all .sb-home-product-card { min-height:390px; }
.sb-home-product-grid-all .sb-home-product-content h3 { font-size:clamp(24px,2.15vw,35px); }
.sb-home-product-grid-all .sb-home-product-content { gap:18px; padding:26px; }

/* Rodapé branco/azul-céu mantendo o movimento cinematográfico original */
#site-footer.sb-site-footer,
body #site-footer.sb-site-footer,
body:not(.overlay-header) #site-footer.sb-site-footer {
    background:
        radial-gradient(circle at 8% 10%,rgba(105,197,245,.22),transparent 30%),
        radial-gradient(circle at 88% 12%,rgba(199,236,255,.58),transparent 34%),
        linear-gradient(140deg,#ffffff 0%,#f3fbff 45%,#dff3ff 100%) !important;
    background-color:#f5fbff !important;
    color:var(--sb-footer-text) !important;
    border-top:1px solid rgba(8,120,184,.18);
}
#site-footer.sb-site-footer .sb-footer-main,
#site-footer.sb-site-footer .sb-footer-brand,
#site-footer.sb-site-footer .sb-footer-col,
#site-footer.sb-site-footer .sb-footer-bottom {
    background:transparent !important;
    background-color:transparent !important;
    color:var(--sb-footer-text) !important;
}
#site-footer.sb-site-footer::before {
    background:
        radial-gradient(circle at 16% 48%,rgba(105,197,245,.20),transparent 25%),
        radial-gradient(circle at 84% 42%,rgba(8,120,184,.08),transparent 24%);
    filter:blur(5px);
}
#site-footer.sb-site-footer::after {
    background:linear-gradient(90deg,transparent,#91dcff,#0878b8,#91dcff,transparent);
    box-shadow:0 0 18px rgba(105,197,245,.48);
}
#site-footer.sb-site-footer .sb-footer-brand img {
    width:260px;
    max-width:100%;
    filter:none !important;
    opacity:1;
}
#site-footer.sb-site-footer .sb-footer-brand p { color:#4d6879 !important; }
#site-footer.sb-site-footer .sb-footer-col h2 {
    color:#133d59 !important;
    border-bottom-color:#8bdcff;
}
#site-footer.sb-site-footer .sb-footer-menu,
#site-footer.sb-site-footer .sb-footer-menu li { color:#496778 !important; }
#site-footer.sb-site-footer .sb-footer-menu a,
#site-footer.sb-site-footer .sb-footer-menu a:visited {
    color:#155f8d !important;
    font-weight:760 !important;
}
#site-footer.sb-site-footer .sb-footer-menu a::before { background:#68c6f5; }
#site-footer.sb-site-footer .sb-footer-menu a::after { background:#0878b8; }
#site-footer.sb-site-footer .sb-footer-menu a:hover,
#site-footer.sb-site-footer .sb-footer-menu a:focus { color:#083e60 !important; }
#site-footer.sb-site-footer .sb-footer-bottom {
    border-top:1px solid rgba(8,120,184,.14) !important;
}
#site-footer.sb-site-footer .sb-footer-bottom p { color:#557183 !important; }
#site-footer.sb-site-footer .sb-footer-bottom a { color:#0a608f !important; text-decoration:none; }
#site-footer.sb-site-footer .sb-footer-bottom a:hover { color:#073d5c !important; }
.sb-footer-contact-chips { display:flex; flex-wrap:wrap; gap:9px; margin-top:20px; }
.sb-footer-contact-chips a {
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:8px 13px;
    border:1px solid rgba(8,120,184,.17);
    border-radius:999px;
    background:rgba(255,255,255,.66);
    color:#0a608f !important;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
    box-shadow:0 5px 18px rgba(8,120,184,.05);
}
.sb-footer-contact-chips a:hover { background:#fff; transform:translateY(-1px); }
.sb-footer-rights { margin-top:7px !important; font-size:11px !important; }

/* CTAs herdados recebem a paleta nova sem perder os efeitos */
.cta-btn,.exit-btn { background:#8bdcff !important; border-color:#0a608f !important; color:#082f48 !important; }
.magic-ball { border-color:#8bdcff !important; }

@media (max-width:1200px) {
    .sb-home-product-grid.sb-home-product-grid-all { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .sb-primary-menu > .sb-menu-services > .sub-menu,
    .sb-primary-menu > li.menu-item-has-children:first-of-type > .sub-menu { width:min(670px,88vw); grid-template-columns:repeat(2,minmax(190px,1fr)); }
}
@media (max-width:1000px) {
    .sb-site-header { position:sticky; }
    .sb-header-utility-inner { width:min(100% - 36px,var(--sb-shell)); }
    .sb-primary-nav {
        background:linear-gradient(180deg,#fff,#edf9ff);
        border-bottom-color:rgba(8,120,184,.14);
    }
    .sb-primary-menu > .sb-menu-services > .sub-menu,
    .sb-primary-menu > li.menu-item-has-children:first-of-type > .sub-menu {
        width:auto;
        display:block;
        padding:0 0 6px;
    }
    .sb-primary-menu > li:last-child > a { margin-left:0; display:inline-block; }
}
@media (max-width:782px) {
    body.admin-bar .sb-site-header { top:46px; }
    .sb-site-header { backdrop-filter:saturate(120%) blur(9px); -webkit-backdrop-filter:saturate(120%) blur(9px); }
}
@media (max-width:700px) {
    .sb-header-utility-inner { width:min(100% - 30px,var(--sb-shell)); min-height:36px; justify-content:center; }
    .sb-header-utility-inner > span { display:none; }
    .sb-header-utility-links { width:100%; justify-content:space-between; }
    .sb-brand { width:232px; max-width:72vw; }
    .sb-home-product-grid.sb-home-product-grid-all { grid-template-columns:1fr; }
    .sb-home-product-grid-all .sb-home-product-card { min-height:370px; }
}
@media (max-width:600px) {
    body.admin-bar .sb-site-header { top:0; }
}



/* =========================================================
   SOLO BRASILEIRO CONTAINERS v4.1
   Tema mais claro — remove blocos escuros e inverte a lógica
   de contraste mantendo elegância, profundidade e coerência.
   ========================================================= */
:root {
    --sb-surface-0:#ffffff;
    --sb-surface-1:#fbfeff;
    --sb-surface-2:#f2f9fd;
    --sb-surface-3:#e7f4fb;
    --sb-surface-4:#d8edf8;
    --sb-ink-1:#0f2230;
    --sb-ink-2:#24485f;
    --sb-ink-3:#4f6c7d;
    --sb-line-soft:rgba(12,97,143,.14);
}

body { background:linear-gradient(180deg,#ffffff 0%, #fbfeff 38%, #f6fbff 100%); color:var(--sb-ink-2); }
h1,h2,h3,h4,h5,h6 { color:var(--sb-ink-1); }
a:hover,a:focus { color:#083e60; }

/* Header ainda mais claro */
.sb-site-header {
    background:
        radial-gradient(circle at 12% -40%, rgba(105,197,245,.20), transparent 34%),
        radial-gradient(circle at 88% -50%, rgba(197,235,255,.38), transparent 36%),
        linear-gradient(135deg, rgba(255,255,255,.995) 0%, rgba(248,252,255,.99) 52%, rgba(232,247,255,.98) 100%);
    box-shadow:0 12px 34px rgba(22,83,118,.06);
}
.sb-header-inner { min-height:90px; }
.sb-primary-menu > li > a { color:#15384d !important; }
.sb-primary-menu .sub-menu { background:linear-gradient(150deg,#fff 0%,#fbfeff 48%,#eef8fd 100%); }
.sb-menu-toggle span:not(.screen-reader-text) { background:#163b53; }

/* Conteúdo singular com aparência clara */
.sb-cover { background:var(--sb-surface-2); }
.sb-cover-overlay { background:linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.58) 100%); }
.sb-cover-title, .sb-cover-kicker, .sb-cover-kicker a { color:var(--sb-ink-1) !important; }
.sb-cover-kicker { background:#d9f1ff; border-color:rgba(8,120,184,.10); }
.sb-content-wrap { background:transparent; }
.sb-entry-content blockquote { color:var(--sb-ink-2); }
.sb-entry-content th { background:linear-gradient(180deg,#f0f9ff,#dceef9); color:var(--sb-ink-1); }
.sb-entry-content .wp-block-button__link,
.sb-entry-content .wp-element-button {
    border-color:#0a608f !important;
    background:linear-gradient(135deg,#0a608f,#1d89c4) !important;
    color:#ffffff !important;
    box-shadow:0 12px 28px rgba(8,120,184,.14);
}
.sb-entry-content .wp-block-button__link:hover,
.sb-entry-content .wp-element-button:hover {
    background:linear-gradient(135deg,#8bdcff,#dff5ff) !important;
    color:#082f48 !important;
}

/* HERO e seções da home: trocar preto por branco */
.sb-home-hero {
    background:linear-gradient(180deg,#f8fdff 0%,#f0f9fd 52%,#e7f4fb 100%);
    color:var(--sb-ink-1);
}
.sb-home-hero-shade {
    background:linear-gradient(90deg, rgba(255,255,255,.92) 0%, rgba(248,252,255,.78) 42%, rgba(236,248,255,.50) 68%, rgba(228,244,252,.62) 100%);
}
.sb-home-hero-shade::after {
    background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.10) 46%, rgba(229,244,251,.56));
}
.sb-home-eyebrow { color:#0a608f; }
.sb-home-title { color:var(--sb-ink-1) !important; text-shadow:none; }
.sb-home-lead { color:#335468; }
.sb-home-btn-primary {
    background:linear-gradient(135deg,#8bdcff,#cceeff);
    color:#0a2f48 !important;
    box-shadow:0 14px 34px rgba(8,120,184,.12);
}
.sb-home-btn-primary:hover {
    background:#ffffff;
    color:#083e60 !important;
    box-shadow:0 16px 40px rgba(8,120,184,.14);
}
.sb-home-btn-ghost {
    border-color:rgba(8,120,184,.22);
    color:#0d486c !important;
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(8px);
}
.sb-home-btn-ghost:hover { background:#dff5ff; border-color:#8bdcff; color:#082f48 !important; }
.sb-home-scroll { color:#4f6c7d; }
.sb-home-scroll span { background:linear-gradient(#77cfff,transparent); }
.sb-home-ticker {
    background:linear-gradient(90deg,#ffffff 0%,#f5fbff 40%,#eaf7fe 100%);
    color:#16384f;
    border-top:1px solid rgba(8,120,184,.10);
    border-bottom:1px solid rgba(8,120,184,.10);
}

.sb-home-products,
.sb-home-showcase,
.sb-home-national,
.sb-home-cta,
.sb-home-cinematic {
    background:linear-gradient(180deg,#fbfeff 0%,#f2f9fd 50%,#e7f4fb 100%);
    color:var(--sb-ink-1);
}
.sb-home-products h2,
.sb-home-national h2,
.sb-home-cta h2,
.sb-home-cinematic-content h2 { color:var(--sb-ink-1); }
.sb-home-products .sb-home-section-head > p,
.sb-home-national p,
.sb-home-cinematic-content p { color:#4f6c7d; }

.sb-home-product-card {
    background:#ffffff;
    color:var(--sb-ink-1) !important;
    border:1px solid rgba(8,120,184,.12);
    box-shadow:0 16px 42px rgba(16,69,99,.06);
}
.sb-home-product-overlay {
    background:linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,.18) 44%, rgba(248,252,255,.96) 100%);
}
.sb-home-product-card::before {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg, rgba(255,255,255,.20), rgba(255,255,255,.05));
    z-index:-1;
}
.sb-home-product-card:hover::after { box-shadow:inset 0 0 0 1px rgba(102,205,208,.18),0 22px 65px rgba(8,120,184,.12); }
.sb-home-card-index { color:#0a608f; }
.sb-home-product-content h3 { color:var(--sb-ink-1); }
.sb-home-product-content p { color:#4f6c7d; }
.sb-home-card-arrow {
    border-color:rgba(8,120,184,.24);
    background:rgba(255,255,255,.76);
    color:#0a608f;
}
.sb-home-product-card:hover .sb-home-card-arrow { background:#8bdcff; color:#082f48; border-color:#8bdcff; }

.sb-home-tech { background:#f5fbff; }
.sb-home-tech-row:hover { background:rgba(255,255,255,.92); }

.sb-home-cinematic { min-height:640px; }
.sb-home-cinematic-shade {
    background:linear-gradient(180deg, rgba(255,255,255,.16) 0%, rgba(244,251,255,.64) 48%, rgba(236,247,253,.92) 100%);
}
.sb-home-cinematic-bg { filter:saturate(.98) brightness(1.02); }

.sb-home-showcase { padding:18px; }
.sb-home-showcase-item {
    background:#ffffff;
    box-shadow:0 18px 46px rgba(16,69,99,.07);
    border:1px solid rgba(8,120,184,.10);
}
.sb-home-showcase-item::after { background:linear-gradient(180deg,transparent 48%,rgba(245,251,255,.92)); }
.sb-home-showcase-item figcaption { color:#113750; text-shadow:0 1px 0 rgba(255,255,255,.65); }

.sb-home-sector:hover { background:#eaf7fe; color:#0c3e5d; transform:translateY(-3px); }

.sb-home-insights { background:#f8fcff; }

.sb-home-national p { color:#557183; }
.sb-home-national-media {
    box-shadow:0 26px 65px rgba(8,120,184,.10);
    border:1px solid rgba(8,120,184,.08);
    background:#ffffff;
}

.sb-home-cta-inner {
    padding:32px;
    border:1px solid rgba(8,120,184,.14);
    border-radius:26px;
    background:rgba(255,255,255,.72);
    box-shadow:0 18px 44px rgba(8,120,184,.08);
}

/* Footer 100% claro */
.sb-site-footer,
#site-footer.sb-site-footer,
body #site-footer.sb-site-footer,
body:not(.overlay-header) #site-footer.sb-site-footer,
body #site-footer,
#site-footer {
    background:
        radial-gradient(circle at 10% 14%,rgba(105,197,245,.18),transparent 28%),
        radial-gradient(circle at 90% 12%,rgba(199,236,255,.46),transparent 30%),
        linear-gradient(140deg,#ffffff 0%,#f6fbff 42%,#e5f5ff 100%) !important;
    background-color:#f8fcff !important;
    color:#23485f !important;
    border-top:1px solid rgba(8,120,184,.14) !important;
}
.sb-site-footer .sb-footer-main,
.sb-site-footer .sb-footer-bottom,
#site-footer.sb-site-footer .sb-footer-main,
#site-footer.sb-site-footer .sb-footer-bottom {
    background:transparent !important;
    color:#23485f !important;
}
.sb-site-footer .sb-footer-brand img { filter:none !important; }
.sb-site-footer .sb-footer-brand p,
#site-footer.sb-site-footer .sb-footer-brand p { color:#5a7586 !important; }
.sb-site-footer .sb-footer-col h2,
#site-footer.sb-site-footer .sb-footer-col h2 { color:#133d59 !important; }
.sb-site-footer .sb-footer-menu li,
.sb-site-footer .sb-footer-menu a,
#site-footer.sb-site-footer .sb-footer-menu li,
#site-footer.sb-site-footer .sb-footer-menu a,
#site-footer.sb-site-footer .sb-footer-menu a:visited {
    color:#155f8d !important;
}
.sb-site-footer .sb-footer-menu a:hover,
.sb-site-footer .sb-footer-menu a:focus,
#site-footer.sb-site-footer .sb-footer-menu a:hover,
#site-footer.sb-site-footer .sb-footer-menu a:focus {
    color:#083e60 !important;
    text-shadow:none;
}
.sb-site-footer .sb-footer-bottom,
#site-footer.sb-site-footer .sb-footer-bottom {
    border-top:1px solid rgba(8,120,184,.12) !important;
}
.sb-site-footer .sb-footer-bottom p,
#site-footer.sb-site-footer .sb-footer-bottom p { color:#557183 !important; }

/* Mobile */
@media (max-width:1000px) {
    .sb-primary-nav { background:linear-gradient(180deg,#ffffff,#eff9ff); }
}
@media (max-width:700px) {
    .sb-home-hero { min-height:650px; }
    .sb-home-cinematic { min-height:520px; }
    .sb-home-cta-inner { padding:24px; border-radius:20px; }
}


/* =========================================================
   SOLO BRASILEIRO CONTAINERS v4.1.1
   Ajuste visual: mistura de (1) elegância/luxo com
   (2) linguagem de containers premium.
   Mantém base clara, mas com acentos metálicos refinados.
   ========================================================= */
:root {
    --sb-premium-navy:#143449;
    --sb-premium-steel:#5b7483;
    --sb-premium-silver:#d8e6ef;
    --sb-premium-ice:#f7fbfd;
    --sb-premium-glow:#ecf7fd;
    --sb-premium-accent:#78cbed;
    --sb-premium-accent-2:#2d94c6;
}

body {
    background:
        radial-gradient(circle at 12% -15%, rgba(120,203,237,.10), transparent 28%),
        radial-gradient(circle at 86% -8%, rgba(215,233,243,.26), transparent 32%),
        linear-gradient(180deg,#ffffff 0%, #fbfdfe 34%, #f6fbfd 100%);
}

/* Header com linguagem corporativa premium */
.sb-site-header {
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,252,254,.98)),
        linear-gradient(90deg, rgba(120,203,237,.06), rgba(255,255,255,0) 26%, rgba(216,230,239,.18) 100%);
    border-bottom:1px solid rgba(20,52,73,.08);
    box-shadow:0 14px 38px rgba(20,52,73,.05);
}
.sb-header-utility {
    background:linear-gradient(90deg, #f9fcfe 0%, #eef7fb 50%, #f9fcfe 100%);
}
.sb-primary-menu > li > a {
    font-weight: 760;
    letter-spacing:.045em;
}
.sb-primary-menu > li > a::after {
    height:1.5px;
    background:linear-gradient(90deg,var(--sb-premium-accent),var(--sb-premium-accent-2));
}
.sb-primary-menu > li:last-child > a {
    background:linear-gradient(135deg,#f7fbfd,#e3f3fb);
    border-color:rgba(45,148,198,.18);
    box-shadow:0 8px 20px rgba(45,148,198,.08);
}

/* Tipografia e seção com mais elegância */
.sb-home-section-tag,
.sb-home-eyebrow,
.sb-home-card-index,
.sb-home-insight-body > span,
.sb-home-tech-number {
    letter-spacing:.16em;
    color:var(--sb-premium-accent-2);
}
.sb-home-section h2,
.sb-home-title,
.sb-home-cta h2,
.sb-home-cinematic-content h2,
.sb-home-product-content h3,
.sb-home-insight-body h3,
.sb-home-tech-row h3 {
    color:var(--sb-premium-navy);
}

/* Hero mais premium sem ficar pesado */
.sb-home-hero {
    background:
        linear-gradient(180deg,#fbfdfe 0%,#f2f9fc 56%,#edf6fb 100%);
}
.sb-home-hero-shade {
    background:linear-gradient(90deg, rgba(255,255,255,.95) 0%, rgba(249,252,253,.82) 40%, rgba(241,248,252,.56) 74%, rgba(234,244,250,.68) 100%);
}
.sb-home-title {
    text-shadow: 0 1px 0 rgba(255,255,255,.55);
}
.sb-home-lead {
    color:#496171;
    max-width:780px;
}

/* Botões com cara de marca premium */
.sb-home-btn,
.sb-entry-content .wp-block-button__link,
.sb-entry-content .wp-element-button {
    font-weight:800;
    letter-spacing:.04em;
}
.sb-home-btn-primary,
.sb-entry-content .wp-block-button__link,
.sb-entry-content .wp-element-button {
    background:linear-gradient(135deg,#143449 0%, #246181 100%) !important;
    border-color:#143449 !important;
    color:#ffffff !important;
    box-shadow:0 14px 32px rgba(20,52,73,.14);
}
.sb-home-btn-primary:hover,
.sb-entry-content .wp-block-button__link:hover,
.sb-entry-content .wp-element-button:hover {
    background:linear-gradient(135deg,#8fd8f3,#dff4fb) !important;
    color:#133449 !important;
    border-color:#78cbed !important;
}
.sb-home-btn-ghost {
    background:rgba(255,255,255,.82);
    border-color:rgba(20,52,73,.12);
    color:#1e495f !important;
}
.sb-home-btn-ghost:hover {
    background:#ffffff;
    border-color:rgba(45,148,198,.25);
}

/* Cards com refinamento premium e coerência visual */
.sb-home-products,
.sb-home-showcase,
.sb-home-national,
.sb-home-cta,
.sb-home-cinematic {
    background:
        linear-gradient(180deg,#fbfdfe 0%, #f5fafc 48%, #edf6fb 100%);
}
.sb-home-product-card,
.sb-home-showcase-item,
.sb-home-insight-card,
.sb-home-national-media,
.sb-home-cta-inner {
    border:1px solid rgba(20,52,73,.08);
    box-shadow:
        0 10px 24px rgba(20,52,73,.04),
        0 24px 56px rgba(45,148,198,.06);
}
.sb-home-product-card {
    border-radius:22px;
    overflow:hidden;
}
.sb-home-showcase-item,
.sb-home-insight-card { position:relative; }
.sb-home-product-card::after,
.sb-home-showcase-item::before,
.sb-home-insight-card::before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    border-radius:inherit;
    background:linear-gradient(180deg, rgba(255,255,255,.22), transparent 32%, rgba(120,203,237,.03) 100%);
}
.sb-home-product-media,
.sb-home-showcase-item img,
.sb-home-insight-media {
    filter:saturate(.96) contrast(1.02);
}
.sb-home-product-overlay {
    background:linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,.10) 36%, rgba(249,252,253,.82) 76%, rgba(247,251,253,.96) 100%);
}
.sb-home-product-content {
    padding:28px;
}
.sb-home-product-content p,
.sb-home-insight-body p,
.sb-home-tech-row p,
.sb-home-section-head > p,
.sb-home-national p,
.sb-home-copy p {
    color:#5a7483;
}
.sb-home-card-arrow {
    width:50px;
    height:50px;
    background:linear-gradient(135deg,#ffffff,#eef7fb);
    border-color:rgba(45,148,198,.18);
    color:#1f5d80;
}
.sb-home-product-card:hover .sb-home-card-arrow {
    background:linear-gradient(135deg,#143449,#246181);
    color:#ffffff;
    border-color:#143449;
}

/* Showcase e setor com visual de portfólio premium */
.sb-home-showcase-item figcaption {
    background:rgba(255,255,255,.68);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding:12px 16px;
    border-radius:999px;
    left:18px;
    bottom:18px;
    font-size:11px;
    color:#143449;
    box-shadow:0 10px 24px rgba(20,52,73,.08);
}
.sb-home-showcase-item figcaption::before {
    width:18px;
    background:linear-gradient(90deg,var(--sb-premium-accent),var(--sb-premium-accent-2));
}
.sb-home-sector {
    background:rgba(255,255,255,.46);
}
.sb-home-sector:hover {
    background:linear-gradient(135deg,#f7fbfd,#e9f5fb);
    box-shadow:inset 0 0 0 1px rgba(45,148,198,.10);
}

/* Bloco técnico mais corporativo */
.sb-home-tech {
    background:linear-gradient(180deg,#f6fbfd 0%, #eff8fc 100%);
}
.sb-home-tech-list {
    border-top-color:rgba(20,52,73,.10);
}
.sb-home-tech-row {
    border-bottom-color:rgba(20,52,73,.10);
}
.sb-home-tech-row:hover {
    background:rgba(255,255,255,.88);
    box-shadow:0 10px 26px rgba(20,52,73,.03);
}

/* Cinematic e CTA mantêm impacto, mas mais sofisticados */
.sb-home-cinematic-shade {
    background:linear-gradient(180deg, rgba(255,255,255,.10) 0%, rgba(244,250,252,.60) 48%, rgba(235,244,249,.92) 100%);
}
.sb-home-cta-inner {
    background:linear-gradient(135deg, rgba(255,255,255,.80), rgba(242,249,252,.92));
    border-radius:28px;
}

/* Footer claro e refinado */
.sb-site-footer,
#site-footer.sb-site-footer,
body #site-footer.sb-site-footer {
    background:
        radial-gradient(circle at 8% 12%, rgba(120,203,237,.14), transparent 24%),
        radial-gradient(circle at 88% 14%, rgba(216,230,239,.46), transparent 28%),
        linear-gradient(140deg,#ffffff 0%,#f8fcfe 44%,#edf6fb 100%) !important;
    border-top:1px solid rgba(20,52,73,.08) !important;
}
.sb-site-footer .sb-footer-col h2,
#site-footer.sb-site-footer .sb-footer-col h2 {
    border-bottom-color:rgba(120,203,237,.55);
}
.sb-site-footer .sb-footer-menu a,
#site-footer.sb-site-footer .sb-footer-menu a {
    letter-spacing:.01em;
}
.sb-footer-contact-chips a {
    background:linear-gradient(135deg,#ffffff,#f2f9fc);
    border-color:rgba(20,52,73,.10);
    box-shadow:0 8px 20px rgba(20,52,73,.05);
}
.sb-footer-contact-chips a:hover {
    background:#ffffff;
    box-shadow:0 12px 24px rgba(45,148,198,.08);
}

@media (max-width:700px) {
    .sb-home-product-content { padding:24px; }
    .sb-home-showcase-item figcaption { left:14px; right:14px; width:max-content; max-width:calc(100% - 28px); }
    .sb-home-cta-inner { border-radius:22px; }
}


/* =========================================================
   SOLO BRASILEIRO v4.1.2 — hamburger refinado
   Alteração isolada: somente o ícone/botão do menu mobile.
   ========================================================= */
.sb-menu-toggle {
    width:50px;
    height:50px;
    padding:0;
    display:none;
    place-items:center;
    border:1px solid rgba(20,52,73,.10);
    border-radius:15px;
    background:rgba(255,255,255,.58);
    color:#153f5b !important;
    box-shadow:0 7px 18px rgba(20,52,73,.055);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.sb-menu-toggle .sb-hamburger-icon {
    display:block;
    width:29px;
    height:29px;
    overflow:visible;
}
.sb-menu-toggle .sb-hamburger-line {
    fill:none;
    stroke:currentColor;
    stroke-width:1.85;
    stroke-linecap:round;
    vector-effect:non-scaling-stroke;
    transform-box:fill-box;
    transform-origin:center;
    transition:transform .28s cubic-bezier(.2,.75,.25,1),opacity .18s ease;
}
.sb-menu-toggle:hover,
.sb-menu-toggle:focus-visible {
    background:rgba(255,255,255,.92);
    border-color:rgba(45,148,198,.22);
    box-shadow:0 10px 24px rgba(20,52,73,.09);
    transform:translateY(-1px);
}
.sb-menu-toggle:focus-visible {
    outline:2px solid rgba(120,203,237,.78);
    outline-offset:3px;
}
.sb-menu-toggle[aria-expanded="true"] .sb-hamburger-line-top {
    transform:translateY(6px) rotate(45deg);
}
.sb-menu-toggle[aria-expanded="true"] .sb-hamburger-line-middle {
    opacity:0;
    transform:scaleX(.35);
}
.sb-menu-toggle[aria-expanded="true"] .sb-hamburger-line-bottom {
    transform:translateY(-6px) rotate(-45deg);
}
@media (max-width:1000px) {
    .sb-menu-toggle { display:grid; width:50px; height:50px; }
}
@media (max-width:700px) {
    .sb-menu-toggle { width:48px; height:48px; border-radius:14px; }
    .sb-menu-toggle .sb-hamburger-icon { width:28px; height:28px; }
}


/* =========================================================
   SOLO BRASILEIRO v4.1.3 — fotos +5% mais visíveis
   Reduz somente os véus claros sobre imagens, preservando
   contraste, tipografia, layout e todas as animações.
   ========================================================= */
.sb-cover-overlay {
    background:linear-gradient(180deg, rgba(255,255,255,.17) 0%, rgba(255,255,255,.53) 100%);
}
.sb-home-hero-shade {
    background:linear-gradient(90deg, rgba(255,255,255,.90) 0%, rgba(249,252,253,.77) 40%, rgba(241,248,252,.51) 74%, rgba(234,244,250,.63) 100%);
}
.sb-home-hero-shade::after {
    background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.05) 46%, rgba(229,244,251,.51));
}
.sb-home-product-overlay {
    background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.05) 36%, rgba(249,252,253,.77) 76%, rgba(247,251,253,.91) 100%);
}
.sb-home-product-card::after,
.sb-home-showcase-item::before,
.sb-home-insight-card::before {
    background:linear-gradient(180deg, rgba(255,255,255,.17), transparent 32%, rgba(120,203,237,.03) 100%);
}
.sb-home-cinematic-shade {
    background:linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(244,250,252,.55) 48%, rgba(235,244,249,.87) 100%);
}

/* YouTube oficial no rodapé */
.sb-footer-social-link {
    gap:8px;
}
.sb-footer-social-link svg {
    width:18px;
    height:18px;
    flex:0 0 18px;
    display:block;
    fill:currentColor;
}

/* Containers 5.0 — accessible, content-first refinements. */
:root { --sb-shell:1280px; }
*, *::before, *::after { box-sizing:border-box; }
[id] { scroll-margin-top:145px; }
.sb-skip-link { position:fixed; left:16px; top:-100px; z-index:9999; padding:12px 20px; background:#fff; color:#143449; box-shadow:0 4px 16px #0003; }
.sb-skip-link:focus { top:12px; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #0878b8; outline-offset:5px; }
.sb-text-brand { display:flex; flex-direction:column; text-decoration:none; line-height:1.2; color:#143449; }
.sb-text-brand strong { font-size:21px; letter-spacing:-.045em; white-space:nowrap; }
.sb-text-brand strong span { color:#0878b8; }
.sb-text-brand small { margin-top:7px; font-size:11px; letter-spacing:.3em; font-weight:700; }
.sb-brand,.sb-footer-brand > a { text-decoration:none; }
.sb-brand img { max-height:76px; object-fit:contain; object-position:left center; }
.sb-header-inner { gap:20px; }
.sb-brand { width:230px; }
.sb-primary-menu > li > a { font-size:12px; padding-inline:10px; }
.sb-primary-menu .sub-menu { max-height:70vh; overflow-y:auto; }
.sb-home-title { max-width:1000px; font-size:clamp(46px,6.4vw,90px); line-height:1.03; letter-spacing:-.055em; overflow-wrap:anywhere; }
.sb-home-hero { min-height:660px; }
.sb-home-hero-inner { padding-block:90px; }
.sb-home-hero-shade { background:linear-gradient(90deg,rgba(255,255,255,.97),rgba(249,252,253,.88) 45%,rgba(241,248,252,.40) 100%); }
.sb-home-hero-fallback { background:repeating-linear-gradient(90deg,#e0eaf0 0,#e0eaf0 36px,#d4e0e8 37px,#eef4f7 42px); }
.sb-home-lead { max-width:750px; }
.sb-home-btn { gap:12px; min-height:52px; white-space:normal; text-align:center; }
.sb-hero-note { max-width:680px; margin:24px 0 0; font-size:13px; line-height:1.8; color:#365163; }
.sb-motion-toggle { position:absolute; right:24px; bottom:24px; padding:10px 16px; border-radius:30px; border:1px solid #abc6d5; background:#fffffff2; color:#143449; font-size:12px; font-weight:700; text-transform:none; }
.sb-motion-toggle[hidden] { display:none; }
.sb-motion-paused .sb-home-hero-slide,.sb-motion-paused .sb-cover-background { animation-play-state:paused !important; }
.sb-container-strip { background:#143449; color:#fff; }
.sb-container-strip .sb-home-shell { display:flex; justify-content:space-between; gap:20px; padding-block:21px; }
.sb-container-strip span { font-size:12px; letter-spacing:.035em; }
.sb-home-section { padding-block:clamp(60px,6vw,100px); }
.sb-home-section h2 { font-size:clamp(32px,3.6vw,52px); line-height:1.09; }
.sb-home-section-tag,.sb-home-eyebrow { color:#16678f; }
.sb-home-reveal,.sb-entry-content .sb-reveal,.sb-entry-content .sb-reveal.sb-reveal-paragraph { opacity:1; transform:none; }
/* Animate only once observed; content stays readable if scripts fail. */
.sb-home-reveal.is-visible,.sb-entry-content .sb-reveal.is-visible { animation:sb-container-enter .65s ease both; }
@keyframes sb-container-enter { from { transform:translateY(18px); } to { transform:translateY(0); } }
.sb-container-gallery { background:#f0f6f9; }
.sb-container-gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.sb-container-photo { margin:0; overflow:hidden; background:#e1eaf0; border:1px solid #cbdce6; border-radius:15px; }
.sb-container-photo a { display:block; height:100%; }
.sb-container-photo img { display:block; width:100%; height:100%; aspect-ratio:4/3; object-fit:contain; background:#fff; transition:transform .4s ease; }
.sb-container-photo:hover img { transform:scale(1.025); }
.sb-gallery-empty { padding:32px; border:1px dashed #abc2cf; border-radius:16px; background:#fff; }
.sb-gallery-empty p { margin:0 0 12px; }
.sb-home-editorial { background:#fff; }
.sb-home-editorial .sb-entry-content { max-width:1040px !important; margin-inline:auto !important; }
.sb-home-editorial .sb-entry-content > :first-child { margin-top:0; }
.sb-home-editorial .sb-entry-content h2 { font-size:clamp(28px,3vw,40px); }
.sb-home-editorial iframe { max-width:100%; }
.sb-home-product-grid-all .sb-home-product-card { min-height:320px; }
.sb-home-product-grid-all .sb-home-product-content { position:relative; min-height:320px; grid-template-columns:1fr auto; gap:16px; padding:26px; }
.sb-home-card-index { grid-column:1/-1; }
.sb-home-product-grid-all .sb-home-product-content h3 { font-size:28px; line-height:1.15; overflow-wrap:anywhere; }
.sb-home-product-content p { display:block; font-size:15px; color:#365365; }
.sb-home-product-overlay { background:linear-gradient(180deg,#ffffffe0 0%,#ffffffbb 35%,#fffffffa 80%); }
.sb-product-text-only { background:linear-gradient(135deg,#fff,#edf5f9); }
.sb-product-text-only::before { inset:auto 0 0; height:5px; background:linear-gradient(90deg,#72b6d3,#143449); z-index:0; }
.sb-home-products .sb-home-text-link { margin-top:30px; }
.sb-home-sector { min-height:115px; }
.sb-quote-grid { display:grid; grid-template-columns:1fr .9fr; gap:clamp(32px,6vw,90px); align-items:center; }
.sb-quote-checklist { background:#fff; border:1px solid #cbdce6; border-radius:22px; padding:36px; box-shadow:0 20px 50px #14344908; }
.sb-quote-checklist h3 { margin:0 0 24px; font-size:26px; }
.sb-quote-checklist ul { margin:0; padding-left:20px; }
.sb-quote-checklist li { margin:0 0 14px; font-size:16px; }
.sb-quote-checklist p { font-size:13px; margin:24px 0 0; }
.sb-faq-list details { border-bottom:1px solid #cfdee6; }
.sb-faq-list details:first-child { border-top:1px solid #cfdee6; }
.sb-faq-list summary { cursor:pointer; font-size:19px; font-weight:700; padding:24px 0; color:#143449; }
.sb-faq-list p { margin:0 0 24px; font-size:16px; color:#496171; }
.sb-home-cta h2 { font-size:clamp(32px,4vw,56px); line-height:1.1; }
.sb-home-cta .sb-home-btn { flex-shrink:0; }
.sb-cover-media { background:linear-gradient(135deg,#dbe9f1,#f1f7fa); }
.sb-cover-overlay { z-index:3; background:linear-gradient(180deg,#ffffff66,#ffffffea); }
.sb-cover-inner { z-index:4; }
.sb-cover-title { overflow-wrap:anywhere; }
.sb-entry-content { overflow-wrap:anywhere; }
.sb-entry-content table { display:block; overflow-x:auto; }
@media (max-width:1100px) { .sb-header-inner { gap:14px; } .sb-primary-menu > li > a { padding-inline:7px; font-size:11px; } }
@media (max-width:1000px) {
 .sb-header-inner { flex-wrap:wrap; }
 .sb-brand { max-width:calc(100% - 75px); }
 .sb-primary-menu > li > a { font-size:16px; padding:14px 8px; }
 .sb-menu-toggle { display:none; }
 .sb-menu-ready .sb-menu-toggle { display:grid; }
 .sb-primary-nav { display:block; position:static; width:100%; box-shadow:none; }
 .sb-menu-ready .sb-primary-nav { display:none; position:absolute; max-height:calc(100dvh - 140px); overflow-y:auto; }
 .sb-menu-ready .sb-primary-nav.is-open { display:block; }
 .sb-container-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sb-quote-grid { grid-template-columns:1fr; }
 .sb-home-title { max-width:800px; }
}
@media (max-width:700px) {
 [id] { scroll-margin-top:135px; }
 .sb-text-brand strong { font-size:19px; }
 .sb-header-inner { min-height:78px; }
 .sb-home-hero { min-height:590px; }
 .sb-home-hero-inner { padding-block:64px 92px; }
 .sb-home-title { font-size:clamp(40px,11vw,62px); }
 .sb-home-lead { font-size:18px; }
 .sb-home-hero-shade { background:linear-gradient(90deg,#fffffff2,#f8fcffe6 65%,#f8fcffc9); }
 .sb-home-actions { gap:10px; }
 .sb-home-btn { padding-inline:20px; font-size:13px; }
 .sb-container-strip .sb-home-shell { flex-direction:column; gap:8px; padding-block:18px; }
 .sb-container-gallery-grid { gap:10px; }
 .sb-container-photo { border-radius:10px; }
 .sb-home-section-head { margin-bottom:32px; }
 .sb-home-product-grid-all .sb-home-product-card,.sb-home-product-grid-all .sb-home-product-content { min-height:280px; }
 .sb-home-product-content p { display:block; }
 .sb-quote-checklist { padding:25px; }
 .sb-home-sector-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sb-home-sector { padding:16px; font-size:16px; }
 .sb-home-cta-inner { gap:28px; }
 .sb-entry-content { font-size:17px; }
}
@media (max-width:380px) { .sb-container-gallery-grid { grid-template-columns:1fr; } .sb-home-actions { flex-direction:column; align-items:stretch; } }
@media (prefers-reduced-motion:reduce) { .sb-home-reveal.is-visible,.sb-entry-content .sb-reveal.is-visible { animation:none !important; } }
.sb-cover .sb-motion-toggle { z-index:5; }
.sb-home-specialized .sb-home-product-grid-all { grid-template-columns:1fr; }
.sb-home-specialized .sb-home-product-grid-all .sb-home-product-content { min-height:280px; }
.sb-home-specialized .sb-home-product-content p { max-width:850px; }
