/* #####################################
########################################

	Theme name: SMS
	Theme URI: 
	Description: Este tema foi desenvolvido de forma exclusiva.

	Code: Gabriel Amarante | https://gabrielfreelancer.com.br
	Author: Cadmo Studio
	Author URI: https://cadmostudio.com.br

	Version: MK.05.2025

########################################
##################################### */

@charset "UTF-8";

/* ######
   Básicos
############ */

* {
	outline: none;
}

html {
	scroll-behavior: smooth;
}

html,
body {
	margin: 0;
	padding: 0;
}

body {
	color: #606166;
	font-size: 14px;
	font-family: "Manrope", sans-serif;
}

a,
a:hover,
a:focus {
	color: #606166;
	text-decoration: none;
	transition: .3s;
}

a:hover,
a:focus {
	color: #606166;
}

button,
button:hover,
button:focus {
	outline: none;
	cursor: pointer;
}

img {
	display: inline-block;
	max-width: 100%;
	height: auto;
	object-fit: contain;
}

select {
	appearance: none;
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAANCAYAAAC+ct6XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RjBBRUQ1QTQ1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RjBBRUQ1QTU1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGMEFFRDVBMjVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGMEFFRDVBMzVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pk5mU4QAAACUSURBVHjaYmRgYJD6////MwY6AyaGAQIspCieM2cOjKkIxCFA3A0TSElJoZ3FUCANxAeAWA6IOYG4iR5BjWwpCDQCcSnNgxoIVJCDFwnwA/FHWlp8EIpHSKoGgiggLkITewrEcbQO6mVAbAbE+VD+a3IsJTc7FQAxDxD7AbEzEF+jR1DDywtoCr9DbhwzDlRZDRBgACYqHJO9bkklAAAAAElFTkSuQmCC);
	background-repeat: no-repeat;
	background-position: center right;
}

/* ######
   Variáveis
############ */

:root {
	/* Fontes */
	--open-sans: 'Open Sans', sans-serif;
	--bebas-neue: 'Bebas Neue', sans-serif;
	/* Cores */
	--cinza: #888;
}

/* ######
   Classes gerais
############ */

/* box-slide */

.box-slide {
	position: relative;
}

.box-slide .slide-item {
	cursor: initial;
}

/* d-table */

.d-table {
	list-style: none;
	display: table;
	margin: 0;
	padding: 0;
}

.d-table li {
	list-style: none;
	display: table-cell;
	vertical-align: middle;
	margin: 0;
	padding: 0;
}

/* d-center */

.d-center {
	align-items: center;
	display: flex;
	width: 100%;
	min-height: 100%;
}

/* wp-pagenavi */

.wp-pagenavi {
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
	color: #606166;
	font-size: 14px;
	line-height: 20px;
	display: inline-block;
	margin: 0 4px;
	padding: 6px 12px;
	transition: .3s;
	border-radius: 3px;
	border: none;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .1);
	background: #FFF;
}

.wp-pagenavi .current {
	color: #FFF;
	background: #606166;
}

/* box-return */

.box-return {
	position: fixed;
	bottom: 28px;
	right: 28px;
	z-index: 5;
	transition: .3s;
}

.box-return button {
	font-size: 0;
	display: block;
	width: 60px;
	height: 60px;
	border: none;
	border-radius: 50%;
	background: #606166 url('assets/images/icons/arrow-return.svg') no-repeat center 16px;
	background-size: 25px auto;
}

/* ######
   Textos
############ */

/* titulo */

.titulo {
	color: #000;
	font-size: 45px;
	font-weight: 500;
	margin: 0 0 30px;
}

.titulo.branco {
	color: #fff;
}

/* super-titulo */

.super-titulo {
	color: #000;
	font-size: 62px;
	line-height: 68px;
	font-weight: 500;
	margin: 0;
}

.super-titulo.branco {
	color: #fff;
}

/* subtitulo */

.subtitulo {
	color: #000;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	display: block;
	margin: 0 0 30px;
	transform: translateY(-1px);
}

.subtitulo::before {
	content: '';
	display: inline-block;
	width: 9px;
	height: 9px;
	margin: 0 20px 0 0;
	background: #A7B6BD;
}

.subtitulo.medio::before {
	background: #DFDFE7;
}

/* texto */

.texto {
	font-size: 16px;
	line-height: 24px;
}

.texto.cinza {
	color: #9F9F9F;
}

.texto p {
	color: rgba(0, 0, 0, .6);
	margin: 0 0 15px;
}

.texto.cinza p {
	color: #9F9F9F;
}

.texto p:last-child {
	margin: 0;
}

/* ######
   Botões
############ */

.botao {
	color: #0F0F10;
	font-size: 15px;
	font-weight: 500;
	line-height: 38px;
	display: inline-block;
	margin: 0 42px 0 0;
	padding: 0 12px;
	position: relative;
	transition: .3s;
	border-radius: 5px;
	background: #ccc;
}

.botao:hover {
	color: #fff;
	background: #000 !important;
}

.botao::after {
	content: '';
	width: 38px;
	height: 38px;
	position: absolute;
	top: 0;
	right: -41px;
	z-index: 1;
	transition: .3s;
	border-radius: 5px;
	background: #ccc;
}

.botao:hover::after {
	background: #000 !important;
}

.botao::before {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	right: -28px;
	z-index: 2;
	transform: translateY(-50%);
	transition: .3s;
	background: url('assets/images/icons/seta-link.svg') no-repeat center center;
}

.botao:hover::before {
	filter: brightness(0) invert(1);
	transform: translateY(-50%) rotate(45deg);
}

/* cinza */

.botao.cinza,
.botao.cinza::after {
	background: #E6E6E6;
}

/* cinza escuro */

.botao.cinza-escuro,
.botao.cinza-escuro::after {
	background: #A7B6BD;
}

/* preto */

.botao.preto,
.botao.preto::after {
	color: #fff;
	background: #000;
}

.botao.preto::before {
	filter: brightness(0) invert(1);
}

/* branco */

.botao.branco,
.botao.branco::after {
	color: #000;
	background: #fff;
}

.botao.branco:hover {
	color: #FFF;
}

/* link */

.link {
	color: #000;
	font-size: 14px;
	font-weight: 500;
	display: inline-block;
}

.link.branco {
	color: #fff;
}

.link::after {
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	margin: 0 0 -2px 8px;
	transition: .3s;
	background: url('assets/images/icons/seta-link.svg') no-repeat center center;
}

.link.branco::after {
	filter: brightness(0) invert(1);
}

.link:hover::after {
	transform: rotate(45deg);
}

/* link-longo */

.link-longo,
.link-longo:hover {
	color: #000;
	font-size: 14px;
	font-weight: 500;
	display: inline-block;
}

.link-longo::after {
	content: '';
	display: inline-block;
	width: 70px;
	height: 14px;
	margin: 0 0 -3px 8px;
	transition: .3s;
	background: url('assets/images/icons/link-longo.svg') no-repeat center center;
}

.link-longo:hover::after {
	margin: 0 0 -3px 16px;
}

/* ######
   Padrão (Conteúdo)
############ */

.page-template-default #conteudo {
	padding: 60px 0;
	background: #EEE;
}

.page-template-default #conteudo .box-header {
	margin: 0 0 50px;
}

/* ######
   Menu mobile (overlay + drawer)
############ */

@keyframes mobileNavItemIn {
	from {
		opacity: 0;
		transform: translateX(14px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

#mobile.mobile-overlay {
	width: 100%;
	height: 100%;
	position: fixed;
	inset: 0;
	z-index: -1;
	visibility: hidden;
	pointer-events: none;
	opacity: 0;
	transition: opacity .35s ease, visibility .35s ease;
}

#mobile.mobile-overlay.active {
	z-index: 10000;
	visibility: visible;
	pointer-events: auto;
	opacity: 1;
}

#mobile .mobile-backdrop {
	position: absolute;
	inset: 0;
	cursor: pointer;
	background: rgba(15, 15, 16, .45);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	opacity: 0;
	transition: opacity .35s ease;
}

#mobile.active .mobile-backdrop {
	opacity: 1;
}

#mobile .mobile-panel {
	display: flex;
	flex-direction: column;
	width: min(420px, 100%);
	height: 100%;
	max-height: 100dvh;
	position: absolute;
	top: 0;
	right: 0;
	padding: 0;
	box-sizing: border-box;
	border-radius: 0;
	box-shadow: -12px 0 48px rgba(0, 0, 0, .18);
	background: rgba(255, 255, 255, .94);
	backdrop-filter: blur(22px);
	-webkit-backdrop-filter: blur(22px);
	border-left: 1px solid rgba(255, 255, 255, .35);
	transform: translateX(100%);
	transition: transform .42s cubic-bezier(0.22, 1, 0.36, 1);
}

#mobile.active .mobile-panel {
	transform: translateX(0);
}

#mobile .mobile-panel__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;
	padding: 22px 22px 18px;
	border-bottom: 1px solid rgba(0, 0, 0, .06);
}

#mobile .mobile-panel__label {
	color: #000;
	font-size: 12px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	letter-spacing: 0.12em;
}

#mobile .btn-mobile-close {
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 8px;
	background: rgba(0, 0, 0, .05);
	transition: background .25s ease, transform .25s ease;
}

#mobile .btn-mobile-close:hover {
	background: rgba(0, 0, 0, .1);
}

#mobile .btn-mobile-close:active {
	transform: scale(0.96);
}

#mobile .btn-mobile-close__icon {
	display: block;
	width: 18px;
	height: 18px;
	position: relative;
}

#mobile .btn-mobile-close__icon::before,
#mobile .btn-mobile-close__icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 2px;
	border-radius: 1px;
	background: #0f0f10;
	transform-origin: center;
}

#mobile .btn-mobile-close__icon::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

#mobile .btn-mobile-close__icon::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

#mobile .mobile-panel__body {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	padding: 12px 10px 28px 22px;
}

#mobile .mobile-panel__foot {
	flex-shrink: 0;
	padding: 20px 22px 28px;
	border-top: 1px solid rgba(0, 0, 0, .06);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .65) 18%);
	text-align: center;
}

#mobile .mobile-panel__cta {
	max-width: 100%;
	text-align: center;
	box-sizing: border-box;
}

#mobile .mobile-navbar {
	display: block;
	width: 100%;
	padding: 0;
}

#mobile .mobile-navbar ul {
	list-style: none;
	display: block;
	margin: 0;
	padding: 0;
}

#mobile .mobile-navbar li {
	display: block;
	margin: 0;
	padding: 0;
}

#mobile .mobile-navbar>ul>li {
	border-bottom: 1px solid rgba(0, 0, 0, .05);
	opacity: 0;
	transform: translateX(14px);
}

#mobile.active .mobile-navbar>ul>li {
	animation: mobileNavItemIn .48s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

#mobile.active .mobile-navbar>ul>li:nth-child(1) {
	animation-delay: .04s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(2) {
	animation-delay: .08s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(3) {
	animation-delay: .12s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(4) {
	animation-delay: .16s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(5) {
	animation-delay: .2s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(6) {
	animation-delay: .24s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(7) {
	animation-delay: .28s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(8) {
	animation-delay: .32s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(9) {
	animation-delay: .36s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(10) {
	animation-delay: .4s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(11) {
	animation-delay: .44s;
}

#mobile.active .mobile-navbar>ul>li:nth-child(12) {
	animation-delay: .48s;
}

#mobile .mobile-navbar a {
	color: #0f0f10;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.25;
	display: block;
	padding: 16px 8px 16px 0;
	transition: color .25s ease, padding-left .25s ease;
}

#mobile .mobile-navbar a:hover,
#mobile .mobile-navbar a:focus {
	color: #8096a8;
	padding-left: 6px;
}

#mobile .mobile-navbar ul ul {
	margin: 0;
	padding: 0 0 8px 14px;
	border-left: 2px solid rgba(128, 150, 168, .35);
}

#mobile .mobile-navbar ul ul li {
	border-bottom: none;
	opacity: 1;
	transform: none;
	animation: none;
}

#mobile .mobile-navbar ul ul a {
	font-size: 15px;
	font-weight: 500;
	padding: 10px 0;
}

/* Botão hamburger (header) */

.btn-nav-toggle {
	width: 48px;
	height: 48px;
	padding: 0;
	margin: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 10px;
	background: rgba(255, 255, 255, .2);
	transition: background .3s ease, transform .25s ease;
}

.home .btn-nav-toggle {
	background: rgba(255, 255, 255, .22);
}

.home #header.scroll .btn-nav-toggle {
	background: rgba(0, 0, 0, .06);
}

.btn-nav-toggle:hover {
	background: rgba(0, 0, 0, .08);
}

.home .btn-nav-toggle:hover {
	background: rgba(255, 255, 255, .35);
}

.home #header.scroll .btn-nav-toggle:hover {
	background: rgba(0, 0, 0, .1);
}

.btn-nav-toggle:active {
	transform: scale(0.96);
}

.btn-nav-toggle__lines {
	display: block;
	width: 22px;
	height: 14px;
	position: relative;
	border-top: 2px solid #0f0f10;
	border-bottom: 2px solid #0f0f10;
	box-sizing: border-box;
	transition: border-color .3s ease;
}

.btn-nav-toggle__lines::before {
	content: '';
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 2px;
	background: #0f0f10;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -1px;
	transition: transform .35s ease, opacity .25s ease, background .3s ease;
}

.home .btn-nav-toggle__lines {
	border-top-color: #fff;
	border-bottom-color: #fff;
}

.home .btn-nav-toggle__lines::before {
	background: #fff;
}

.home #header.scroll .btn-nav-toggle__lines {
	border-top-color: #0f0f10;
	border-bottom-color: #0f0f10;
}

.home #header.scroll .btn-nav-toggle__lines::before {
	background: #0f0f10;
}

body.menu-mobile-open .btn-nav-toggle__lines {
	border-top-color: transparent;
	border-bottom-color: transparent;
}

body.menu-mobile-open .btn-nav-toggle__lines::before {
	background: #0f0f10;
	transform: rotate(45deg);
}

body.menu-mobile-open .btn-nav-toggle__lines::after {
	content: '';
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 2px;
	background: #0f0f10;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -1px;
	transform: rotate(-45deg);
}

body.menu-mobile-open.home .btn-nav-toggle__lines::before,
body.menu-mobile-open.home .btn-nav-toggle__lines::after {
	background: #0f0f10;
}

/* ######
   Cabeçalho
############ */

#header {
	padding: 18px 0;
	position: sticky;
	top: 0;
	z-index: 5;
	border-bottom: solid 1px rgba(255, 255, 255, .2);
	backdrop-filter: blur(25px);
	background: rgba(255, 255, 255, .1);
}

#header .box-logo a {
	display: inline-block;
	transition: .3s;
}

.home #header .box-logo img {
	filter: brightness(0) invert(1);
}

.home #header.scroll .box-logo img {
	filter: initial;
}

#header .box-nav {
	display: flex;
	flex-direction: row;
	gap: 80px;
	justify-content: end;
}

@media (max-width: 1400px) {
	#header .box-nav {
		gap: 40px;
	}
}

#header .navbar {
	padding: 0;
}

#header .navbar ul {
	list-style: none;
	text-align: right;
	display: flex;
	flex-direction: row;
	gap: 40px;
	width: 100%;
	margin: 0;
	padding: 0;
}

#header .navbar li {
	display: block;
}

#header .navbar li:first-child {
	margin: 0;
}

#header .navbar a {
	color: #000;
	font-size: 15px;
	font-weight: 500;
	display: inline-block;
	transition: .3s;
	cursor: pointer;
}

.home #header .navbar a {
	color: #fff;
}

.home #header.scroll .navbar a {
	color: #000;
}

#header .navbar .btn-solucao a::after {
	content: '';
	display: inline-block;
	width: 10px;
	height: 5px;
	margin: 0 0 0 6px;
	transform: translateY(-2px);
	background: url('assets/images/icons/seta-menu.svg') no-repeat center center;
	background-size: cover;
}

.home #header .navbar .btn-solucao a::after {
	filter: brightness(0) invert(1);
}

.home #header.scroll .navbar .btn-solucao a::after {
	filter: initial;
}

/* Header sobre seção escura (sem .scroll) — universal (todas as páginas) */

#header:not(.scroll) .box-logo img {
	filter: brightness(0) invert(1);
}

#header:not(.scroll) .navbar a {
	color: #fff;
}

#header:not(.scroll) .navbar .btn-solucao a::after {
	filter: brightness(0) invert(1);
}

#header:not(.scroll) .box-nav .botao {
	color: #fff;
	background: rgba(255, 255, 255, .22);
}

#header:not(.scroll) .box-nav .botao::after {
	background: rgba(255, 255, 255, .22);
}

#header:not(.scroll) .box-nav .botao::before {
	filter: brightness(0) invert(1);
}

#header:not(.scroll) .btn-nav-toggle {
	background: rgba(255, 255, 255, .22);
}

#header:not(.scroll) .btn-nav-toggle:hover {
	background: rgba(255, 255, 255, .35);
}

#header:not(.scroll) .btn-nav-toggle__lines {
	border-top-color: #fff;
	border-bottom-color: #fff;
}

#header:not(.scroll) .btn-nav-toggle__lines::before {
	background: #fff;
}

/* ######
   Submenu soluções
############ */

#submenu {
	width: 100%;
	padding: 40px 0;
	position: fixed;
	top: 74px;
	left: 0;
	z-index: 8;
	backdrop-filter: blur(25px);
	background: rgba(255, 255, 255, .1);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .3s ease, visibility .3s ease;
}

#submenu.active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

#submenu .box-grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 18px;
}

#submenu .box-card-info {
	padding: 25px;
	transition: .3s;
	border: solid 1px rgba(255, 255, 255, .2);
	border-radius: 5px;
	background: rgba(255, 255, 255, .2);
}

#submenu .box-card-info:hover {
	background: rgba(214, 227, 233, .7);
}

#submenu .box-card-info span {
	color: #000;
	font-size: 16px;
	font-weight: 500;
	display: block;
	margin: 0 0 10px;
}

#submenu .box-card-info span::before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 10px 0 0;
	transform: translateY(-2px);
	background: #000;
}

#submenu .box-card-info p {
	color: #000;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
	margin: 0;

	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

#submenu .box-card-info p {}

/* ######
   Rodapé
############ */

#footer {
	padding: 100px 0 0;
	overflow: hidden;
	background: #000;
}

#footer .box-contain {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

@media (max-width: 992px) {
	#footer .box-contain {
		text-align: center;
		margin: 0 auto 30px
	}
}

#footer .box-social {
	display: flex;
	flex-direction: row;
	gap: 20px;
	align-items: center;
}

@media (max-width: 992px) {
	#footer .box-social {
		justify-content: center;
	}
}

#footer .box-social p {
	color: #fff;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	margin: 0;
}

#footer .box-social a {
	transition: .3s;
}

#footer .box-social a:hover {
	opacity: .5;
}

#footer .box-title {
	margin: 0 0 30px;
}

#footer .box-title h4 {
	color: #747474;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	margin: 0;
}

#footer .box-links p {
	margin: 0 0 20px;
}

#footer .box-links p:last-child {
	margin: 0;
}

#footer .box-links a {
	color: #747474;
	font-weight: 500;
	transition: .3s;
}

#footer .box-links a:hover {
	color: #fff;
}

#footer .box-contato p {
	color: #747474;
	font-weight: 500;
	line-height: 24px;
	margin: 0 0 15px;
}

#footer .box-contato p:last-child {
	margin: 0;
}

#footer .box-copyright {
	margin: 80px 0 0;
	padding: 20px 0;
	position: relative;
	z-index: 2;
	border-top: solid 1px rgba(255, 255, 255, .13);
	border-bottom: solid 1px rgba(255, 255, 255, .13);
}

#footer .box-copyright-info {
	display: flex;
	gap: 30px;
	align-items: center;
	justify-content: space-between;
}

#footer .box-copyright-info p {
	color: #747474;
	font-size: 14px;
	font-weight: 500;
	margin: 0;
}

#footer .box-copyright-info a {
	color: #747474;
	transition: .3s;
}

#footer .box-copyright-info a:hover {
	color: #fff;
}

#footer .box-copyright-info svg {
	display: inline-block;
	margin: 0 0 0 5px;
	opacity: .5;
	transition: .3s;
}

#footer .box-copyright-info a:hover svg {
	opacity: 1;
}

#footer .box-message {
	padding: 35px 0 0;
}

#footer .box-message img {
	width: 100%;
}

/* ######
   CTA
############ */

#cta {
	padding: 5px 0 0;
	position: relative;
	background: #A7B6BD;
}

.page-template-sobre #cta,
.blog #cta,
.single-solucao #cta,
.page-template-case #cta {
	background: #fff;
}

.page-template-contato #cta {
	display: none;
}

#cta::before {
	content: '';
	display: block;
	width: 100%;
	height: 50%;
	position: absolute;
	bottom: -5px;
	left: 0;
	z-index: 1;
	background: #000;
}

#cta .box-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
	position: relative;
	z-index: 2;
	border-radius: 10px;
	background: #F7F7F7;
}

#cta .box-cta-info {
	padding: 30px 90px;
}

#cta .box-cta-info p {
	max-width: 540px;
}

#cta .box-cta-info a {
	margin: 50px 0 0;
}

#cta .box-cta-video video {
	display: block;
	width: 470px;
	height: 500px;
	border-radius: 10px;
	object-fit: cover;
}

/* ######
   Busca
############ */

#busca .box-form {
	display: flex;
	justify-content: center;
	flex-direction: row;
	gap: 20px;
	padding: 23px 0;
	border-top: solid 1px #E6E6E7;
	border-bottom: solid 1px #E6E6E7;
}

#busca .box-form input,
#busca .box-form select {
	color: #000;
	font-size: 14px;
	width: 345px;
	height: 40px;
	padding: 0 25px;
	border: none;
	border-radius: 40px;
	background-color: #F3F4F6;
}

/* ######
   Contato
############ */

.page-template-contato #contato-hero {
	position: relative;
	padding: 0 0 20px;
	overflow: hidden;
}

.page-template-contato #contato-hero .box-contain {
	padding: 40px;
}

.page-template-contato #contato-hero .box-video {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	border-radius: 8px;
	background: #8096A8;
}

.page-template-contato #contato-hero .box-video video {
	width: 100%;
	height: 100%;
	opacity: .3;
	object-fit: cover;
	border-radius: 8px;
}

.page-template-contato #contato-hero>.container {
	position: relative;
	z-index: 2;
}

.page-template-contato #contato-hero .box-content {
	position: relative;
	z-index: 1;
}

.page-template-contato #contato-hero .box-content h1 {
	color: #fff;
	font-size: 62px;
	font-weight: 500;
	line-height: 1.1;
	max-width: 515px;
	margin: 0 0 30px;
}

.page-template-contato #contato-hero .box-content .descricao {
	color: #fff;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	max-width: 423px;
	margin: 0 0 50px;
}

/* Informações de contato */

.page-template-contato #contato-hero .box-info-contato {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.page-template-contato #contato-hero .box-info-contato .info-item {
	padding: 20px 0;
	border-bottom: solid 1px rgba(255, 255, 255, .2);
}

.page-template-contato #contato-hero .box-info-contato .info-item:first-child {
	padding-top: 0;
}

.page-template-contato #contato-hero .box-info-contato .info-item:last-child {
	border-bottom: none;
}

.page-template-contato #contato-hero .info-item .info-icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	vertical-align: middle;
	margin: 0 8px 0 0;
}

.page-template-contato #contato-hero .info-item .info-texto {
	display: inline-block;
	vertical-align: middle;
}

.page-template-contato #contato-hero .info-item .info-texto strong {
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	display: block;
}

.page-template-contato #contato-hero .info-item .info-texto span {
	color: #F6F6F7;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	display: block;
	margin: 4px 0 0;
}

/* Formulário */

.page-template-contato #contato-hero .box-formulario {
	background: #fff;
	border-radius: 8px;
	padding: 24px;
	position: relative;
	z-index: 1;
}

.page-template-contato #contato-hero .box-formulario .form-group {
	margin: 0 0 20px;
}

.page-template-contato #contato-hero .box-formulario label {
	color: #0F0F10;
	font-size: 14px;
	font-weight: 500;
	line-height: 22px;
	display: block;
	margin: 0 0 8px;
}

.page-template-contato #contato-hero .box-formulario input[type="text"],
.page-template-contato #contato-hero .box-formulario input[type="email"],
.page-template-contato #contato-hero .box-formulario select,
.page-template-contato #contato-hero .box-formulario textarea {
	color: #0F0F10;
	font-size: 16px;
	font-family: "Manrope", sans-serif;
	font-weight: 400;
	line-height: 24px;
	display: block;
	width: 100%;
	padding: 13px;
	border: solid 1px #E2E2E3;
	border-radius: 6px;
	background: #F6F6F7;
	transition: .3s;
	box-sizing: border-box;
}

.page-template-contato #contato-hero .box-formulario input::placeholder,
.page-template-contato #contato-hero .box-formulario textarea::placeholder {
	color: #69686B;
}

.page-template-contato #contato-hero .box-formulario select {
	color: #69686B;
}

.page-template-contato #contato-hero .box-formulario select:valid {
	color: #0F0F10;
}

.page-template-contato #contato-hero .box-formulario input:focus,
.page-template-contato #contato-hero .box-formulario select:focus,
.page-template-contato #contato-hero .box-formulario textarea:focus {
	border-color: #0F0F10;
	outline: none;
}

.page-template-contato #contato-hero .box-formulario textarea {
	min-height: 144px;
	resize: vertical;
}

/* Checkbox */

.page-template-contato #contato-hero .form-check {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 24px;
	padding: 0;
}

.page-template-contato #contato-hero .form-check input[type="checkbox"] {
	width: 18px;
	height: 18px;
	min-width: 18px;
	border: solid 1px #E2E2E3;
	border-radius: 4px;
	appearance: none;
	cursor: pointer;
	margin: 0;
}

.page-template-contato #contato-hero .form-check input[type="checkbox"]:checked {
	background: #0F0F10;
	border-color: #0F0F10;
}

.page-template-contato #contato-hero .form-check label {
	color: #000;
	font-size: 16px;
	font-family: "General Sans", "Manrope", sans-serif;
	font-weight: 500;
	line-height: 24px;
	margin: 0;
	cursor: pointer;
}

.page-template-contato #contato-hero .form-check label a {
	color: #000;
	text-decoration: underline;
}

/* Botão submit */

.page-template-contato #contato-hero .form-submit {
	margin: 0;
}

/* ######
   [ Home ] Capa
############ */

.home #capa {
	margin: -75px 0 0;
	position: relative;
}

.home #capa .box-contain {
	width: 100%;
	position: absolute;
	bottom: 70px;
	left: 0;
	z-index: 1;
}

.home #capa .box-info {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: end;
	gap: 60px;
}

.home #capa .box-info h1 {
	color: #fff;
	font-size: 62px;
	font-weight: normal;
	line-height: 68px;
	width: 575px;
	margin: 0;
}

.home #capa .box-info p {
	color: #fff;
	font-size: 18px;
	line-height: 24px;
	width: 400px;
	margin: 0;
}

.home #capa video {
	width: 100%;
	height: 690px;
	object-fit: cover;
}

/* ######
   [ Home ] Marcas
############ */

.home #marcas {
	padding: 20px 0 25px;
	border-bottom: solid 1px #E2E2E2;
}

.home #marcas .box-lista {
	overflow: hidden;
}

.home #marcas .box-lista .box-track {
	display: flex;
	flex-direction: row;
	align-items: center;
	will-change: transform;
}

.home #marcas .box-lista .slide-item {
	flex-shrink: 0;
	margin: 0 30px;
}

/* ######
   [ Home ] Soluções
############ */

.home #solucoes {
	padding: 100px 0;
}

.home #solucoes .box-titulo .titulo {
	margin: 0;
}

.home #solucoes .box-link {
	text-align: right;
}

.home #solucoes .box-lista {
	margin: 80px 0 0;
}

@media (max-width: 992px) {
	.home #solucoes .box-card {
		margin: 0 0 20px;
	}
}

.home #solucoes .box-card a {
	display: block;
	width: 100%;
	height: 430px;
	position: relative;
	border-radius: 5px;
	overflow: hidden;
	background: #A7B6BD;
}

.home #solucoes .box-card a::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: linear-gradient(0deg, rgba(167, 182, 189, 1) 0%, rgba(189, 167, 167, 0) 100%);
}

.home #solucoes .box-card img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: 0;
	transition: .3s;
	object-fit: cover;
}

.home #solucoes .box-card:hover img {
	opacity: .7;
}

.home #solucoes .box-card h3 {
	color: #000;
	font-size: 22px;
	font-weight: 500;
	position: absolute;
	top: 30px;
	left: 30px;
	right: 30px;
	z-index: 3;
}

.home #solucoes .box-card h3::before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 16px 0 0;
	transform: translateY(-4px);
	background: #000;
}

.home #solucoes .box-card-info {
	position: absolute;
	bottom: -20px;
	left: 30px;
	right: 30px;
	z-index: 3;
	transition: .6s;
}

.home #solucoes .box-card:hover .box-card-info {
	bottom: 30px;
}

.home #solucoes .box-card-info p {
	color: #000;
	font-size: 14px;
	line-height: 24px;
	margin: 0 0 26px;
}

/* ######
   Construção
############ */

#construcao {
	padding: 120px 0 200px;
	background: #000;
}

@media (max-width: 575.98px) {
	#construcao {
		padding: 80px 0 100px;
	}
}

#construcao .box-head {
	margin: 0 0 170px;
}

@media (max-width: 992px) {
	#construcao .box-title {
		margin: 0 0 30px;
	}
}

#construcao .box-title .titulo {
	margin: 0;
}

#construcao .box-info {
	display: flex;
	justify-content: end;
	width: 100%;
}

#construcao .box-info span {
	max-width: 416px;
}
@media (max-width: 992px) {
	#construcao .box-info span {
		max-width: initial;
	}
}

#construcao .box-card {
	width: 535px;
	max-width: 100%;
	margin: 0 0 200px;
	padding: 0 0 40px;
	border-bottom: solid 1px #606166;
}

#construcao .box-card:last-child {
	margin: 0;
}

#construcao .box-card span {
	color: #A7B6BD;
	font-size: 30px;
	font-weight: 500;
	display: block;
	margin: 0 0 25px;
}

#construcao .box-card h3 {
	color: #fff;
	font-size: 22px;
	font-weight: 500;
	margin: 0 0 20px;
}

#construcao .box-card p {
	color: rgba(255, 255, 255, .8);
	font-size: 14px;
	line-height: 22px;
	margin: 0 0 35px;
}

#construcao .box-image {
	position: sticky;
	top: 60px;
}

/* ######
   [ Home ] Complemento
############ */

.home #complemento {
	height: 85vh;
	position: relative;
	background-size: cover;
	background-position: center center;
	background-attachment: fixed;
}

.home #complemento .info-texto {
	color: #fff;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	display: inline-block;
	position: absolute;
	bottom: 34px;
	left: 24px;
	z-index: 1;
}

.home #complemento .info-texto.direita {
	left: initial;
	right: 24px;
}

/* ######
   [ Home ] Consultoria
############ */

.home #consultoria {
	padding: 180px 0;
	background: #E5E5EA;
}

.home #consultoria .box-title h2 {
	color: #000;
	font-size: 62px;
	font-weight: 500;
	margin: 0;
}

.home #consultoria .box-title img {
	display: inline-block;
	margin: 0 10px;
}

.home #consultoria .box-info {
	padding: 0 0 0 40px;
}

.home #consultoria .box-info a {
	margin: 35px 0 0;
}

/* ######
   [ Home ] Números
############ */

.home #numeros {
	padding: 140px 0;
	position: relative;
}

.home #numeros .box-video {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	background: #8096A8;
}

.home #numeros video {
	width: 100%;
	height: 100%;
	opacity: .2;
	object-fit: cover;
}

.home #numeros .box-contain {
	position: relative;
	z-index: 2;
}

.home #numeros .box-info h2 {
	color: #fff;
	font-size: 62px;
	font-weight: 500;
	line-height: 68px;
	margin: 0 0 40px;
}

.home #numeros .box-info p {
	color: #fff;
	font-size: 14px;
	line-height: 22px;
	max-width: 238px;
	margin: 0;
}

.home #numeros .box-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 160px 200px;
}

.home #numeros .box-card {
	text-align: center;
}

.home #numeros .box-card h3 {
	color: #fff;
	font-size: 75px;
	font-weight: normal;
	margin: 0 0 25px;
}

.home #numeros .box-card p {
	color: #fff;
	font-size: 16px;
	max-width: 220px;
	margin: 0 auto;
}

/* ######
   [ Home ] Logo
############ */

.home #logo {
	padding: 30px 0 0;
	background: #E5E5EA;
}

.home #logo .box-lista {
	overflow: hidden;
}

.home #logo .box-lista .box-track {
	display: flex;
	flex-direction: row;
	align-items: center;
	will-change: transform;
}

.home #logo .box-lista .slide-item {
	flex-shrink: 0;
	margin: 0 30px;
}

/* ######
   [ Home ] Inteligência
############ */

.home #inteligencia {
	padding: 0 0 60px;
	overflow: hidden;
	background: #E5E5EA;
}

.home #inteligencia .box-mao {
	will-change: transform;
}

.home #inteligencia .box-mao img {
	width: 50vw;
}

/* Scroll: progressos separados (--intel-mao-p-esq / --intel-mao-p-dir em scripts.js) */
.home #inteligencia .box-mao.esquerda {
	transform: translate(calc((1 - var(--intel-mao-p-esq, 1)) * -18vw),
			calc((1 - var(--intel-mao-p-esq, 1)) * -22vh));
}

.home #inteligencia .box-mao.direita {
	text-align: right;
	transform: translate(calc((1 - var(--intel-mao-p-dir, 1)) * 18vw),
			calc((1 - var(--intel-mao-p-dir, 1)) * 22vh));
}

.home #inteligencia .box-content {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 80px;
}

.home #inteligencia .box-content h2 {
	color: #000;
	font-size: 44px;
	font-weight: 500;
	line-height: 50px;
	max-width: 465px;
	margin: 0;
}

.home #inteligencia .box-content p {
	color: #000;
	font-size: 22px;
	font-weight: 500;
	line-height: 28px;
	max-width: 415px;
	margin: 0;
}

.home #inteligencia .box-info {
	width: calc(100% - 50px);
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	gap: 40px;
	margin: 0 auto;
	padding: 0 0 24px;
	border-bottom: solid 1px rgba(0, 0, 0, .13);
}

.home #inteligencia .box-info p {
	color: #000;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	margin: 0;
}

/* ######
   [ Home ] Sobre
############ */

.home #sobre {
	padding: 180px 0;
}

.home #sobre .box-content h2 {
	font-size: 62px;
	font-weight: 500;
	margin: 0 0 130px;
}

.home #sobre .box-content-info {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 75px;
	padding: 60px 0 0;
	border-top: solid 1px rgba(0, 0, 0, .13);
}

.home #sobre .box-content-info p {
	color: #000;
	font-size: 20px;
	line-height: 30px;
	width: calc(100% - 320px);
	margin: 0;
}

/* ######
   [ Home ] Cases
############ */

.home #cases {
	padding: 140px 0;
	background: #A7B6BD;
	overflow: hidden;
}

.home #cases .box-head {
	margin: 0 0 75px;
}

.home #cases .box-title {
	max-width: 550px;
}

.home #cases .box-title .titulo {
	margin: 0;
}

.home #cases .box-links {
	text-align: right;
}

.home #cases .box-post {
	position: relative;
	border-radius: 5px;
	overflow: hidden;
}

.home #cases .box-post>a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.home #cases .box-post img {
	width: 100%;
	height: 500px;
	object-fit: cover;
}

.home #cases .box-post-info {
	width: 320px;
	max-width: calc(100% - 100px);
	position: absolute;
	bottom: 40px;
	left: 50px;
	z-index: 1;
}

.home #cases .box-post-info a {
	color: #fff;
	font-size: 14px;
	font-weight: normal;
	font-family: "Space Mono", monospace;
	line-height: 1;
	display: inline-block;
	padding: 8px 28px;
	backdrop-filter: blur(20px);
	border-radius: 20px;
	background: rgba(255, 255, 255, .2);
}

.home #cases .box-post-info h3 {
	color: #fff;
	font-size: 22px;
	font-weight: normal;
	line-height: 28px;
	margin: 24px 0 0;
}

.home #cases .box-card {
	width: 465px;
	max-width: 90vw;
	margin: 0 25px 0 0;
	position: relative;
}

.home #cases .box-card>a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.home #cases .box-card img {
	width: 100%;
	height: 300px;
	border-radius: 5px;
	object-fit: cover;
}

.home #cases .box-card-info {
	padding: 30px 20px 0;
}

.home #cases .box-card-info h3 {
	color: #000;
	font-size: 22px;
	line-height: 28px;
	margin: 24px 0 0;
}

.home #cases .box-card-info a {
	color: #000;
	font-size: 14px;
	font-weight: normal;
	font-family: "Space Mono", monospace;
	line-height: 1;
	display: inline-block;
	padding: 8px 28px;
	backdrop-filter: blur(20px);
	border-radius: 20px;
	background: rgba(255, 255, 255, .45);
}

/* Cases — Carrossel que estende até a borda direita */

.home #cases .box-lista-wrapper {
	overflow: visible;
	margin-right: calc(-50vw + 50%);
	padding-right: 0;
}

.home #cases .box-lista {
	overflow: hidden;
}

.home #cases .box-lista .box-track {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	will-change: transform;
}

.home #cases .box-lista .box-card {
	width: 465px;
	min-width: 465px;
	max-width: 90vw;
	margin: 0 25px 0 0;
	flex-shrink: 0;
}

/* ######
   Interna do post/case
############ */

/* Hero */

.single #post-hero {
	padding: 40px 0 0;
}

.single #post-hero .box-meta {
	display: flex;
	flex-direction: row;
	gap: 30px;
	align-items: center;
}

.single #post-hero .box-meta .tag-categoria {
	color: #0F0F10;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	line-height: 21px;
	display: inline-block;
	padding: 10px 21px;
	border-radius: 27px;
	border: solid 1px #ccc;
	background: rgba(255, 255, 255, 0.6);
}

.single #post-hero .box-meta .data {
	color: #8096A8;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	line-height: 21px;
	text-transform: uppercase;
}

.single #post-hero h1.titulo {
	color: #0F0F10;
	font-size: 44px;
	font-weight: 500;
	line-height: 50px;
	margin: 0;
}

.single #post-hero .box-image {
	margin: 40px 0 0;
}

.single #post-hero .box-image img {
	width: 100%;
	height: 500px;
	object-fit: cover;
	border-radius: 10px;
}

/* Conteúdo */

.single #post-content {
	padding: 60px 0 80px;
}

.single #post-content .box-title {
	margin: 0 0 40px;
}

.single #post-content .box-title h1 {
	font-size: 30px;
	margin: 0 0 30px;
}

.single #post-content .box-title .tag-categoria {
	color: #0F0F10;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	line-height: 1;
	display: inline-block;
	padding: 10px 20px;
	border-radius: 27px;
	border: solid 1px #ccc;
	background: rgba(255, 255, 255, 0.6);
}


.single #post-content .box-share {
	border-top: solid 1.5px #0F0F10;
	border-bottom: solid 1.5px #0F0F10;
	padding: 16px 0;
	display: flex;
	flex-direction: row;
	gap: 30px;
	align-items: center;
	position: sticky;
	top: 100px;
}

.single #post-content .box-share .label {
	color: #0F0F10;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	line-height: 21px;
	white-space: nowrap;
}

.single #post-content .box-social-icons {
	display: flex;
	flex-direction: row;
	gap: 20px;
	align-items: center;
}

.single #post-content .box-social-icons a {
	display: inline-flex;
	align-items: center;
	transition: .3s;
}

.single #post-content .box-social-icons a:hover {
	opacity: .5;
}

.single #post-content .box-texto .bloco-texto {
	margin: 0 0 80px;
}

.single #post-content .box-texto .bloco-texto:last-child {
	margin: 0;
}

.single #post-content .box-texto h3 {
	color: #000;
	font-size: 30px;
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 30px;
}

.single #post-content .box-texto p {
	color: #000;
	font-size: 16px;
	line-height: 24px;
	margin: 0;
}

.single #post-content .box-texto .box-image {
	margin: 0 0 80px;
}

.single #post-content .box-texto .box-image img {
	width: 100%;
	border-radius: 20px;
	object-fit: cover;
}

/* Outras Postagens */

.single #outras-postagens {
	padding: 80px 0 100px;
	background: #A7B6BD;
}

.single #outras-postagens .box-head {
	margin: 0 0 75px;
}

.single #outras-postagens .box-titulo {
	max-width: 550px;
}

.single #outras-postagens .box-titulo .subtitulo::before {
	background: #FFF;
}

.single #outras-postagens .box-titulo .titulo {
	margin: 0;
}

.single #outras-postagens .box-link {
	text-align: right;
}

.single #outras-postagens>.container>.titulo {
	font-size: 50px;
	margin: 0 0 60px;
}

.single #outras-postagens .box-post {
	margin: 0 0 30px;
}

@media (max-width: 580px) {
	.single #outras-postagens .box-post {
		margin: 0 0 50px;
	}
}

.single #outras-postagens .box-post a {
	display: block;
}

.single #outras-postagens .box-post a:hover img {
	transform: scale(1.05);
}

.single #outras-postagens .box-post .box-post-image {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}

.single #outras-postagens .box-post .box-post-image img {
	width: 100%;
	height: 288px;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.single #outras-postagens .box-post .tag-categoria {
	color: #000;
	font-size: 15px;
	font-family: "Space Mono", monospace;
	line-height: 1;
	display: inline-block;
	margin: 0 0 24px;
	padding: 8px 20px;
	border-radius: 60px;
	background: rgba(255, 255, 255, 0.46);
	backdrop-filter: blur(12px);
}

.single #outras-postagens .box-post .box-post-info {
	padding: 30px 20px 0;
}

.single #outras-postagens .box-post .box-post-info h3 {
	color: #0F0F10;
	font-size: 22px;
	font-weight: 500;
	line-height: 28px;
	margin: 0;
}

/* ######
   [ Sobre ] Introdução
############ */

.page-template-sobre #introducao {
	padding: 50px 0 0;
}

.page-template-sobre #introducao .box-title {
	margin: 0 0 80px;
}

.page-template-sobre #introducao .box-image {
	padding: 0 0 60px;
	border-bottom: solid 1px rgba(0, 0, 0, .13);
}

.page-template-sobre #introducao .box-image img {
	border-radius: 5px;
}
@media (max-width: 575.98px) {
	.page-template-sobre #introducao .box-image img {
		aspect-ratio: 3/2;
		object-fit: cover;
	}
}

/* ######
   [ Sobre ] Sobre
############ */

.page-template-sobre #sobre {
	padding: 100px 0 0;
}
@media (max-width: 575.98px) {
	.page-template-sobre #sobre {
		padding: 0;
	}
}

.page-template-sobre #sobre .box-grid {
	display: grid;
	gap: 0;
	grid-template-columns: 1fr 1.2fr;
}

.page-template-sobre #sobre .box-content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.page-template-sobre #sobre .box-content .titulo {
	max-width: 530px;
}

.page-template-sobre #sobre .box-content .bloco-texto {
	display: block;
	padding: 60px 0 0;
	border-top: solid 1px rgba(0, 0, 0, .13);
}

.page-template-sobre #sobre .box-content .bloco-texto p {
	font-size: 22px;
	font-weight: 500;
	line-height: 28px;
	max-width: 432px;
	margin: 0;
}
@media (max-width: 992px) {
	.page-template-sobre #sobre .box-content .bloco-texto p {
		max-width: 100%;
	}
}

/* ######
   [ Sobre ] Vídeo
############ */

.page-template-sobre #video {
	padding: 100px 0 0;
	position: relative;
}

.page-template-sobre #video::before {
	content: '';
	display: block;
	width: 100%;
	height: 50%;
	position: absolute;
	bottom: -2px;
	left: 0;
	z-index: -1;
	background: #000;
}

.page-template-sobre #video .box-video a {
	position: relative;
}

.page-template-sobre #video .box-video video {
	width: 100%;
	height: 700px;
	display: block;
	border-radius: 5px;
	object-fit: cover;
}

.page-template-sobre #video .box-video span {
	color: #fff;
	font-size: 18px;
	line-height: 120px;
	text-align: center;
	display: block;
	width: 120px;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	transition: .3s;
	border-radius: 50%;
	backdrop-filter: blur(60px);
	background: rgba(255, 255, 255, .25);
}

.page-template-sobre #video .box-video span:hover {
	transform: translate(-50%, -50%) scale(1.1);
}

.page-template-sobre #video .box-video .item-info {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	padding: 0 0 24px;
	position: absolute;
	bottom: 30px;
	left: 40px;
	right: 40px;
	z-index: 1;
	border-bottom: solid 1px rgba(255, 255, 255, .13);
}

.page-template-sobre #video .box-video .item-info p {
	color: #fff;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	margin: 0;
}

/* ######
   [ Sobre ] Equipe
############ */

.page-template-sobre #equipe {
	padding: 120px 0 160px;
	background: #000;
}
@media (max-width: 575.98px) {
	.page-template-sobre #equipe {
		padding: 80px 0 40px;
	}
}

.page-template-sobre #equipe .box-head {
	margin: 0 0 50px;
}

.page-template-sobre #equipe .box-titulo {
	max-width: 515px;
}
@media (max-width: 992px) {
	.page-template-sobre #equipe .box-titulo {
		max-width: 100%;
	}
}

.page-template-sobre #equipe .box-titulo .titulo {
	margin: 0;
}

.page-template-sobre #equipe .box-texto {
	display: flex;
	justify-content: end;
}
@media (max-width: 992px) {
	.page-template-sobre #equipe .box-texto {
		justify-content: start;
	}
}

.page-template-sobre #equipe .box-texto p {
	color: #fff;
	max-width: 400px;
	margin: 0;
}
@media (max-width: 992px) {
	.page-template-sobre #equipe .box-texto p {
		max-width: 600px;
	}
}

.page-template-sobre #equipe .box-card {
	transition: .3s;
}
@media (max-width: 992px) {
	.page-template-sobre #equipe .box-card {
		margin: 0 0 50px;
	}
}

.page-template-sobre #equipe .box-card:hover {
	transform: translateY(-10px);
}

.page-template-sobre #equipe .box-card img {
	width: 100%;
	aspect-ratio: 450/600;
	object-fit: cover;
	border-radius: 5px;
}

.page-template-sobre #equipe .box-card-info {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 20px;
}

.page-template-sobre #equipe .box-card-info p {
	color: #fff;
	font-size: 16px;
	margin: 30px 0 0;
}

/* ######
   [ Sobre ] Diferente
############ */

.page-template-sobre #diferente {
	padding: 110px 0 140px;
}
@media (max-width: 575.98px) {
	.page-template-sobre #diferente {
		padding: 80px 0;
	}
}

.page-template-sobre #diferente .box-head {
	margin: 0 0 80px;
}
@media (max-width: 575.98px) {
	.page-template-sobre #diferente .box-head {
		margin: 0 0 40px;
	}
}

.page-template-sobre #diferente .box-texto {
	display: flex;
	justify-content: end;
}

.page-template-sobre #diferente .box-texto span {
	max-width: 355px;
}

.page-template-sobre #diferente .box-image {
	margin: 0 0 24px;
}

.page-template-sobre #diferente .box-image img {
	width: 100%;
	object-fit: cover;
	border-radius: 5px;
}

.page-template-sobre #diferente .box-image.principal img {
	aspect-ratio: 600/338;
}

.page-template-sobre #diferente .box-image.coluna img {
	aspect-ratio: 1/1;
}

.page-template-sobre #diferente .box-image.coluna-destaque img {
	aspect-ratio: 560/350;
}

/* ######
   [ Sobre ] Políticas
############ */

.page-template-sobre #politicas {
	margin: 0 0 115px;
	padding: 50px 0 120px;
	position: relative;
	overflow: hidden;
}

.page-template-sobre #politicas .box-image {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: grid;
}

.page-template-sobre #politicas .box-image>img {
	grid-area: 1 / 1;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: scale(1.02);
	transition:
		opacity 0.45s cubic-bezier(0.25, 0.1, 0.25, 1),
		transform 0.45s cubic-bezier(0.25, 0.1, 0.25, 1),
		visibility 0.45s;
}

.page-template-sobre #politicas .box-image>img.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: scale(1);
}

.page-template-sobre #politicas .box-head {
	margin: 0 0 80px;
	padding: 0 0 30px;
	position: relative;
	z-index: 2;
	border-bottom: solid 1px rgba(0, 0, 0, .13);
}

.page-template-sobre #politicas .box-buttons {
	display: flex;
	gap: 15px;
	flex-direction: row;
	justify-content: space-between;
}

.page-template-sobre #politicas .box-buttons button {
	color: #fff;
	font-size: 22px;
	font-weight: 500;
	display: inline-block;
	padding: 0 5px;
	transition: .3s;
	border: none;
	background: transparent;
}

.page-template-sobre #politicas .box-buttons button.ativo {
	color: #000;
}

.page-template-sobre #politicas .box-buttons button::before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 16px 0 0;
	transition: .3s;
	transform: translateY(-4px);
	background: #fff;
}

.page-template-sobre #politicas .box-buttons button.ativo::before {
	background: #000;
}

.page-template-sobre #politicas .box-contain {
	position: relative;
	z-index: 2;
}

.page-template-sobre #politicas .box-info-stack {
	display: grid;
	width: 510px;
	max-width: 100%;
}

.page-template-sobre #politicas .box-info-stack>.box-info {
	grid-area: 1 / 1;
	width: 100%;
	max-width: 100%;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(14px);
	transition:
		opacity 0.45s cubic-bezier(0.25, 0.1, 0.25, 1),
		transform 0.45s cubic-bezier(0.25, 0.1, 0.25, 1),
		visibility 0.45s;
}

.page-template-sobre #politicas .box-info-stack>.box-info.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
	z-index: 1;
}

.page-template-sobre #politicas .box-info {
	padding: 85px 95px 110px;
	border: solid 1px rgba(255, 255, 255, .3);
	border-radius: 5px;
	backdrop-filter: blur(10px);
	background: rgb(50 91 111 / 46%);
}

.page-template-sobre #politicas .box-info h2 {
	margin: 0 0 40px;
}

.page-template-sobre #politicas .box-info ul {
	list-style: square;
	margin: 0;
	padding: 0 0 0 20px;
}
.page-template-sobre #politicas .box-info p ,
.page-template-sobre #politicas .box-info li {
	color: rgba(255, 255, 255, .6);
	max-width: 300px;
}

/* ######
   [ Lista de case ] Introdução
############ */

.page-template-case #introducao {
	padding: 65px 0 0;
}

.page-template-case #introducao .box-texto {
	display: flex;
	justify-content: end;
}

.page-template-case #introducao .box-texto span {
	width: 400px;
}

/* ######
   [ Lista de case ] Números
############ */

.page-template-case #numeros {
	padding: 80px 0 65px;
}

.page-template-case #numeros .box-content {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 40px;
	padding: 240px 75px 75px;
	position: relative;
}

.page-template-case #numeros .box-content img {
	width: 100%;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	object-fit: cover;
	border-radius: 5px;
}

.page-template-case #numeros .box-content-item {
	text-align: center;
	position: relative;
	z-index: 2;
}

.page-template-case #numeros .box-content-item .numeros {
	color: #fff;
	font-size: 75px;
	line-height: 68px;
	display: block;
	margin: 0 0 18px;
}

.page-template-case #numeros .box-content-item p {
	color: #fff;
	font-size: 16px;
	margin: 0;
}

/* ######
   [ Lista de case ] Conteúdo
############ */

.page-template-case #conteudo {
	padding: 50px 0;
}

.page-template-case #conteudo .box-card {
	display: flex;
	flex-direction: row;
	gap: 70px;
	margin: 0 0 60px;
	padding: 30px;
	border: solid 1px rgb(163 163 165 / 27%);
	border-radius: 5px;
}

.page-template-case #conteudo .box-card-image {
	width: 100%;
	position: relative;
}

.page-template-case #conteudo .box-card-image a.link-image {
	display: block;
}

.page-template-case #conteudo .box-card-image a:first-child {
	color: #000;
	font-size: 15px;
	font-family: "Space Mono", monospace;
	line-height: 1;
	display: inline-block;
	padding: 8px 20px;
	position: absolute;
	top: 20px;
	left: 20px;
	z-index: 2;
	border: solid 1px rgba(255, 255, 255, .2);
	border-radius: 30px;
	backdrop-filter: blur(15px);
	background: rgba(255, 255, 255, .25);
}

.page-template-case #conteudo .box-card-image img {
	width: 100%;
	aspect-ratio: 500/450;
	object-fit: cover;
	border-radius: 5px;
}

@media (max-width: 992px) {
	.page-template-case #conteudo .box-card-image img {
		max-height: 350px;
	}
}

.page-template-case #conteudo .box-card-info {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 30px;
	width: 100%;
}

.page-template-case #conteudo .box-card-info h3 {
	color: #000;
	font-size: 22px;
	line-height: 28px;
	margin: 0;
}

.page-template-case #conteudo .box-card-info h4 {
	color: #000;
	font-size: 18px;
	line-height: 28px;
	margin: 0 0 10px;
}

.page-template-case #conteudo .box-card-info p {
	font-size: 14px;
	line-height: 22px;
	margin: 0 0 25px;
}

.page-template-case #conteudo .box-card-info p:last-child {
	margin: 0;
}

.page-template-case #conteudo .box-card-more {
	display: flex;
	gap: 12px;
	justify-content: end;
	flex-direction: column;
	width: 100%;
	max-width: 255px;
}

.page-template-case #conteudo .box-card-more-info {
	padding: 25px;
	transition: .3s;
	border-radius: 20px;
	background: #F3F4F6;
}

.page-template-case #conteudo .box-card:hover .box-card-more-info {
	background: #8096A8;
}

.page-template-case #conteudo .box-card-more-info span {
	color: #8096A8;
	font-size: 22px;
	font-weight: 500;
	line-height: 28px;
	display: block;
	transition: .3s;
}

.page-template-case #conteudo .box-card:hover .box-card-more-info span {
	color: #fff;
}

.page-template-case #conteudo .box-card-more-info p {
	color: #000;
	font-size: 14px;
	line-height: 22px;
	margin: 0;
	transition: .3s;
}

.page-template-case #conteudo .box-card:hover .box-card-more-info p {
	color: #fff;
}

/* ######
   [ Lista do blog ] Introdução
############ */

.blog #introducao {
	padding: 50px 0 65px;
}

.blog #introducao .box-image {
	margin: 0 0 30px;
}

.blog #introducao .box-image img {
	width: 100%;
}

.blog #introducao .box-texto {
	max-width: 500px;
}

/* ######
   [ Lista do blog ] Conteúdo
############ */

.blog #conteudo {
	padding: 80px 0 10px;
}

.blog #conteudo .box-card {
	display: flex;
	flex-direction: row;
	gap: 70px;
	margin: 0 0 80px;
	padding: 0 0 80px;
	border-bottom: solid 1px #E6E6E7;
}

.blog #conteudo .box-card-image {
	width: 100%;
	max-width: 555px;
	position: relative;
}

.blog #conteudo .box-card-image a {
	display: block;
}

.blog #conteudo .box-card-image a:first-child {
	color: #000;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	line-height: 1;
	display: inline-block;
	padding: 8px 20px;
	position: absolute;
	top: 20px;
	left: 20px;
	z-index: 2;
	border: solid 1px rgba(255, 255, 255, .2);
	border-radius: 30px;
	backdrop-filter: blur(15px);
	background: rgba(255, 255, 255, .26);
}

.blog #conteudo .box-card-image img {
	display: block;
	width: 100%;
	aspect-ratio: 555/285;
	object-fit: cover;
	border-radius: 5px;
}

.blog #conteudo .box-card-info {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 20px;
	width: 100%;
}

.blog #conteudo .box-card-info span {
	color: #8096A8;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	display: block;
	margin: 0 0 24px;
}

.blog #conteudo .box-card-info h2 {
	font-size: 30px;
}

.blog #conteudo .box-card-info h2 a {
	color: #000;
}

/* ######
   [ Soluções ] Introdução
############ */

.single-solucao #introducao {
	padding: 60px 0 0;
}

.single-solucao #introducao .box-titulo {
	max-width: 930px;
	margin: 0 0 80px;
}

.single-solucao #introducao .box-info-texto {
	display: flex;
	flex-direction: row;
	justify-content: end;
}

@media (max-width: 575.98px) {
	.single-solucao #introducao .box-info-texto {
		margin: 40px 0 0;
	}
}

.single-solucao #introducao .box-info-texto span {
	max-width: 400px;
}

/* ######
   [ Soluções ] Imagem
############ */

.single-solucao #imagem {
	padding: 50px 0 0;
}

.single-solucao #imagem .box-contain {
	position: relative;
}

.single-solucao #imagem .box-image img {
	width: 100%;
	aspect-ratio: 1390/555;
	object-fit: cover;
	border-radius: 5px;
}

@media (max-width: 580px) {
	.single-solucao #imagem .box-image img {
		aspect-ratio: 300/200;
	}
}

.single-solucao #imagem .box-links {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 10px;
	position: absolute;
	bottom: 0;
	left: 0;
	backdrop-filter: blur(18px);
	background: rgba(115, 115, 115, .57);
}

.single-solucao #imagem .box-links-item {
	text-align: center;
	width: 100%;
	padding: 0 30px;
	border-right: solid 1px rgba(255, 255, 255, .27);
}

@media (max-width: 580px) {
	.single-solucao #imagem .box-links-item {
		text-align: left;
	}
}

.single-solucao #imagem .box-links-item p {
	color: #fff;
	font-size: 13px;
	font-family: "Space Mono", monospace;
	line-height: 1.6;
	text-transform: uppercase;
	margin: 0;
}

.single-solucao #imagem .box-links-item a {
	color: #fff;
	font-size: 18px;
	display: inline-block;
	transition: .3s;
}

.single-solucao #imagem .box-links-item a:hover,
.single-solucao #imagem .box-links-item a.ativo {
	color: #A7B6BD;
}

.single-solucao #imagem .box-links-item a::before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 10px 0 0;
	transform: translateY(-3px);
	transition: .3s;
	background-color: #fff;
}

.single-solucao #imagem .box-links-item a:hover::before,
.single-solucao #imagem .box-links-item a.ativo::before {
	background: #A7B6BD;
}

/* Desktop/Mobile toggle */

.single-solucao #imagem .box-links--mobile {
	display: none;
}

@media (max-width: 991.98px) {
	.single-solucao #imagem .box-links--desktop {
		display: none;
	}

	.single-solucao #imagem .box-links--mobile {
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 12px 16px;
		box-sizing: border-box;
		backdrop-filter: blur(18px);
		background: rgba(115, 115, 115, .57);
		border-radius: 0 0 5px 5px;
	}

	.single-solucao #imagem .box-links--mobile select {
		color: #fff;
		font-size: 16px;
		font-family: "Manrope", sans-serif;
		font-weight: 500;
		width: 100%;
		padding: 10px 14px;
		border: solid 1px rgba(255, 255, 255, .3);
		border-radius: 5px;
		appearance: none;
		cursor: pointer;
		background: rgba(255, 255, 255, .12) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="7" fill="none"><path d="M1 1l5 5 5-5" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat right 14px center;
		background-size: 12px auto;
	}

	.single-solucao #imagem .box-links--mobile select option {
		color: #000;
		background: #fff;
	}
}

/* ######
   [ Soluções ] Sobre
############ */

.single-solucao #sobre {
	padding: 24px 0;
}

.single-solucao #sobre .box-content {
	display: flex;
	flex-direction: row;
	gap: 60px;
	padding: 85px 40px;
	border-radius: 5px;
	background: #A7B6BD;
}

.single-solucao #sobre .box-content h2 {
	color: #fff;
	font-size: 14px;
	font-family: "Space Mono", monospace;
	text-transform: uppercase;
	min-width: 200px;
	margin: 0;
}

.single-solucao #sobre .box-content p {
	color: #fff;
	font-size: 43px;
	font-weight: 500;
	line-height: 50px;
	margin: 0;
}

/* ######
   [ Soluções ] Fluxo
############ */

.single-solucao #fluxo {
	padding: 180px 0;
	background: #DFDFE7;
}

.single-solucao #fluxo .box-head {
	margin: 0 0 70px;
}
@media (max-width: 575.98px) {
	.single-solucao #fluxo .box-head {
		margin: 0 0 30px;
	}
}

.single-solucao #fluxo .box-titulo {
	max-width: 540px;
}

.single-solucao #fluxo .box-titulo .titulo {
	margin: 0;
}

.single-solucao #fluxo .box-card {
	margin: 0 0 24px;
	padding: 40px;
	position: relative;
	border-radius: 5px;
	background: #fff;
}

.single-solucao #fluxo .box-card::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	transition: .3s;
	opacity: 0;
	border-radius: 5px;
	background: linear-gradient(53deg, rgba(167, 182, 189, .05) 0%, rgba(167, 182, 189, .6) 62%);
}

.single-solucao #fluxo .box-card:hover::before {
	opacity: 1;
}

.single-solucao #fluxo .box-card h3 {
	color: #000;
	font-size: 30px;
	font-weight: 500;
	margin: 0 0 80px;
	position: relative;
	z-index: 1;
	transition: .3s;
}

.single-solucao #fluxo .box-card:hover h3 {
	margin-left: 15px;
}

.single-solucao #fluxo .box-card h3 span {
	color: #000;
	font-size: 24px;
	font-weight: 500;
	line-height: 37px;
	text-align: center;
	display: inline-block;
	width: 37px;
	height: 37px;
	margin: 0 15px 0 0;
	border-radius: 50%;
	background: #D9D9D9;
}

.single-solucao #fluxo .box-card p {
	color: #606166;
	font-size: 16px;
	line-height: 24px;
	max-width: 410px;
	margin: 0;
	position: relative;
	z-index: 1;
}

@media (max-width: 992px) {
	.single-solucao #fluxo .box-card p {
		max-width: 100%;
	}
}

/* ######
   [ Soluções ] Agendar
############ */

.single-solucao #agendar {
	padding: 235px 0;
	position: relative;
	background: #8096A8;
}

.single-solucao #agendar video {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	opacity: .2;
	object-fit: cover;
}

.single-solucao #agendar .box-contain {
	width: 100%;
	position: relative;
	z-index: 1;
}

.single-solucao #agendar .box-content {
	text-align: center;
}

.single-solucao #agendar .box-content h2 {
	margin: 0 0 60px;
}

/* ######
   [ Soluções ] Diferenciais
############ */

.single-solucao #diferenciais {
	padding: 130px 0;
}

@media (max-width: 992px) {
	.single-solucao #diferenciais .box-titulo {
		text-align: center;
		margin: 0 0 50px;
	}
}

.single-solucao #diferenciais .box-grid {
	display: flex;
	flex-direction: row;
}

.single-solucao #diferenciais .box-card {
	text-align: center;
	width: 100%;
}

@media (max-width: 580px) {
	.single-solucao #diferenciais .box-card {
		margin: 0 0 35px;
	}
}

.single-solucao #diferenciais .box-card img {
	width: calc(100% + 30px);
	max-width: initial;
	margin: 0 0 0 -15px;
}

@media (max-width: 580px) {
	.single-solucao #diferenciais .box-card img {
		max-width: 250px;
		margin: 0;
	}
}

.single-solucao #diferenciais .box-card-info {
	text-align: center;
	margin: 50px 0 0;
	padding: 0 10px;
	opacity: 0;
	transition: .3s;
}

@media (max-width: 580px) {
	.single-solucao #diferenciais .box-card-info {
		max-width: 320px;
		margin: 20px auto 0;
		opacity: 1;
	}
}

.single-solucao #diferenciais .box-card.ativo .box-card-info {
	opacity: 1;
}

.single-solucao #diferenciais .box-card-info h3 {
	color: #000;
	font-size: 22px;
	font-weight: 500;
	margin: 0 0 18px;
}

/* ######
   [ Soluções ] Faq
############ */

.single-solucao #faq {
	padding: 130px 0;
}

.single-solucao #faq .box-head {
	margin: 0 0 90px;
}
@media (max-width: 992px) {
	.single-solucao #faq .box-head {
		margin: 0 0 15px;
	}
}

.single-solucao #faq .box-content {
	border-bottom: solid 1px #DFDFE7;
}

.single-solucao #faq .faq-item {
	display: grid;
	grid-template-columns: minmax(0, 320px) 1fr 40px;
	gap: 50px;
	align-items: start;
	padding: 35px 30px;
	border-top: solid 1px #DFDFE7;
	cursor: pointer;
	outline: none;
}

.single-solucao #faq .faq-pergunta {
	color: #000;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.3;
}

.single-solucao #faq .faq-resposta {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: max-height .45s cubic-bezier(0.25, 0.1, 0.25, 1), opacity .45s ease;
}

.single-solucao #faq .faq-item.is-open .faq-resposta {
	max-height: 600px;
	opacity: 1;
}

.single-solucao #faq .faq-resposta p {
	color: #606166;
	line-height: 24px;
	margin: 0 0 5px;
}

.single-solucao #faq .faq-resposta p:last-child {
	margin: 0;
}

.single-solucao #faq .faq-toggle {
	position: relative;
	width: 24px;
	height: 24px;
	justify-self: end;
	flex-shrink: 0;
}

.single-solucao #faq .faq-toggle::before,
.single-solucao #faq .faq-toggle::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	background: #000;
	transition: transform .3s ease, opacity .3s ease;
}

.single-solucao #faq .faq-toggle::before {
	width: 20px;
	height: 2px;
	transform: translate(-50%, -50%);
}

.single-solucao #faq .faq-toggle::after {
	width: 2px;
	height: 20px;
	transform: translate(-50%, -50%);
}

.single-solucao #faq .faq-item.is-open .faq-toggle::after {
	transform: translate(-50%, -50%) scaleY(0);
	opacity: 0;
}

/* ######
   Responsivo (layout + tipografia)
############ */

@media (max-width: 1199.98px) {
	#header .box-nav {
		gap: 40px;
	}

	#header .navbar ul {
		gap: 24px;
	}

	#cta .box-cta-info {
		padding: 30px 50px;
	}

	#cta .box-cta-video video {
		width: 380px;
		height: auto;
		min-height: 420px;
	}

	.home #consultoria .box-title h2 {
		font-size: clamp(36px, 4.5vw, 52px);
	}

	#construcao .box-image {
		top: 80px;
	}
}

@media (max-width: 992px) {
	.row>[class*="col-"] {
		min-width: 0;
	}

	.titulo {
		font-size: clamp(28px, 5vw, 38px);
		margin-bottom: 22px;
	}

	.super-titulo {
		font-size: clamp(32px, 6vw, 48px);
		line-height: 1.12;
	}

	.subtitulo {
		margin-bottom: 20px;
	}

	#header {
		padding: 14px 0;
	}

	#header .header-bar {
		width: 100%;
		justify-content: flex-end;
	}

	#submenu {
		top: 68px;
		padding: 24px 0 30px;
		max-height: calc(100dvh - 68px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	#submenu .box-grid {
		flex-wrap: wrap;
		justify-content: stretch;
		gap: 14px;
	}

	#submenu .box-card {
		flex: 1 1 calc(50% - 10px);
		min-width: 200px;
	}

	.home #capa {
		margin-top: -70px;
	}

	.home #capa .box-contain {
		bottom: 36px;
	}

	.home #capa .box-info {
		flex-direction: column;
		align-items: flex-start;
		gap: 24px;
	}

	.home #capa .box-info h1,
	.home #capa .box-info p {
		width: 100%;
		max-width: 100%;
	}

	.home #capa video {
		height: min(70vh, 560px);
	}

	.home #solucoes {
		padding: 60px 0;
	}

	.home #solucoes .box-link {
		text-align: left;
		margin-top: 16px;
	}

	.home #solucoes .box-lista {
		margin-top: 40px;
	}

	.home #solucoes .box-card a {
		height: auto;
		min-height: 360px;
	}

	.home #construcao {
		padding: 80px 0 120px;
	}

	.home #construcao .box-head {
		margin-bottom: 80px;
	}

	.home #construcao .row>[class*="col-"] {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
	}

	#construcao .box-image {
		text-align: center;
		position: relative;
		top: auto;
		margin-top: 40px;
	}

	#construcao .box-card {
		margin-bottom: 100px;
	}

	.home #complemento {
		height: 60vh;
		min-height: 320px;
		background-attachment: scroll;
	}

	.home #consultoria {
		padding: 100px 0;
	}

	.home #consultoria .box-title {
		margin-bottom: 40px;
	}

	.home #consultoria .box-title h2 br {
		display: none;
	}

	#cta .box-cta {
		flex-direction: column;
	}

	#cta .box-cta-info {
		padding: 36px 28px;
		order: 1;
	}

	#cta .box-cta-video {
		width: 100%;
		order: 0;
	}

	#cta .box-cta-video video {
		width: 100%;
		max-width: 100%;
		height: auto;
		min-height: 280px;
		border-radius: 10px 10px 0 0;
	}

	#footer {
		padding-top: 60px;
	}

	#footer .row>[class*="col-"] {
		margin-bottom: 40px;
	}

	#footer .box-copyright-info {
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 16px 24px;
	}

	#busca .box-form input,
	#busca .box-form select {
		width: 100%;
		max-width: 100%;
	}

	.page-template-contato #contato-hero .box-contain {
		padding: 28px 20px;
	}

	.page-template-contato #contato-hero .box-content h1 {
		font-size: clamp(32px, 6vw, 48px);
	}

	.page-template-sobre #introducao .box-title {
		margin: 0 0 30px;
	}
	.page-template-sobre #introducao .box-title .titulo {
		font-size: clamp(26px, 4.5vw, 36px);
	}

	.page-template-sobre #introducao {
		padding: 36px 0 40px;
	}

	.page-template-sobre #sobre .box-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.page-template-sobre #equipe .box-head .row>[class*="col-"],
	.page-template-sobre #equipe .row>[class*="col-"] {
		margin-bottom: 20px;
	}

	.blog #introducao {
		padding: 40px 0 50px;
	}

	.blog #introducao .box-texto {
		max-width: 100%;
	}

	.blog #conteudo {
		padding: 50px 0 0;
	}

	.blog #conteudo .box-card {
		flex-direction: column;
		gap: 28px;
		margin-bottom: 50px;
		padding-bottom: 50px;
	}

	.blog #conteudo .box-card-image img {
		aspect-ratio: 16/10;
	}

	.single-solucao #introducao {
		padding: 40px 0 0;
	}

	.single-solucao #introducao .box-titulo {
		margin-bottom: 40px;
	}

	.single-solucao #introducao .box-info-texto {
		justify-content: flex-start;
	}

	.single-solucao #introducao .box-info-texto span {
		max-width: 100%;
	}

	.single-solucao #imagem {
		padding: 30px 0 0;
	}

	.single-solucao #sobre .box-content {
		flex-direction: column;
		gap: 24px;
		padding: 40px 24px;
	}

	.single-solucao #sobre .box-content p {
		font-size: 26px;
		line-height: 1.3;
	}

	.single-solucao #fluxo {
		padding: 80px 0;
	}

	.single-solucao #fluxo .box-card h3 {
		font-size: 24px;
		margin-bottom: 40px;
	}

	.single-solucao #agendar {
		padding: 120px 0;
	}

	.single-solucao #diferenciais {
		padding: 80px 0;
	}

	.single-solucao #faq {
		padding: 80px 0;
	}

	.single-solucao #faq .faq-item {
		grid-template-columns: 1fr 30px;
		gap: 10px 16px;
		padding: 24px 16px 12px;
	}

	.single-solucao #faq .faq-resposta {
		grid-column: 1 / -1;
	}

	.single-solucao #faq .faq-item.is-open .faq-resposta {
		margin-top: 10px;
	}

	.single-solucao #faq .faq-pergunta {
		font-size: 18px;
	}

	.single-solucao #faq .faq-toggle {
		display: none;
	}

	.page-template-case #conteudo .box-card {
		gap: 30px;
		flex-direction: column;
	}

	.page-template-case #conteudo .box-card-more {
		max-width: 100%;
	}

	.single #post-hero .row {
		flex-direction: column;
		gap: 20px;
	}

	.single #post-content .row>[class*="col-"] {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
	}

	.single #post-content .box-share {
		margin-bottom: 30px;
	}

	.page-template-default #conteudo {
		padding: 40px 0;
	}

	/* --- Construção (#construcao: home + solução) --- */
	#construcao .box-card {
		width: 100%;
		max-width: 100%;
	}

	#construcao .box-head {
		margin-bottom: 48px;
	}

	#construcao .box-info {
		justify-content: flex-start;
	}

	/* --- Home: números --- */
	.home #numeros {
		padding: 48px 0 64px;
	}

	.home #numeros .row.align-items-center>[class*="col-"] {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%;
	}

	.home #numeros .box-info h2 {
		font-size: clamp(28px, 7vw, 44px);
		line-height: 1.15;
		margin-bottom: 20px;
	}

	.home #numeros .box-grid {
		gap: 40px 20px;
	}

	.home #numeros .box-card h3 {
		font-size: clamp(46px, 8vw, 56px);
		margin-bottom: 16px;
	}

	/* --- Home: inteligência (mãos + texto) --- */
	.home #inteligencia .box-content {
		flex-direction: column;
		text-align: center;
		gap: 28px;
	}

	.home #inteligencia .box-content h2,
	.home #inteligencia .box-content p {
		max-width: 100%;
	}

	.home #inteligencia .box-content img {
		max-width: min(260px, 58vw);
		height: auto;
	}

	.home #inteligencia .box-mao img {
		width: min(92vw, 400px);
		margin: 0;
	}

	.home #inteligencia .box-mao.esquerda {
		transform: translate(0,
				calc((1 - var(--intel-mao-p-esq, 1)) * -6vh));
	}

	.home #inteligencia .box-mao.direita {
		transform: translate(0,
				calc((1 - var(--intel-mao-p-dir, 1)) * 6vh));
	}

	.home #inteligencia .box-info {
		width: 100%;
		gap: 12px;
		padding: 24px 12px;
	}

	/* --- Home: sobre --- */
	.home #sobre {
		padding: 80px 0;
	}

	.home #sobre .box-content h2 {
		font-size: clamp(28px, 6vw, 44px);
		margin-bottom: 48px;
	}

	.home #sobre .box-content-info {
		flex-direction: column;
		gap: 28px;
		padding-top: 36px;
		margin: 0 0 60px;
	}

	.home #sobre .box-content-info p {
		width: 100%;
		max-width: 100%;
	}

	/* --- Home: cases + carrossel --- */
	.home #cases {
		padding: 70px 0 80px;
	}

	.home #cases .box-head .row>[class*="col-"] {
		margin-bottom: 12px;
	}

	.home #cases .box-links {
		text-align: left;
		margin-top: 20px;
	}

	.home #cases .box-post img {
		height: auto;
		min-height: 260px;
		aspect-ratio: 16/11;
	}

	.home #cases .box-post-info {
		position: relative;
		left: auto;
		bottom: auto;
		width: 100%;
		max-width: none;
		padding: 20px 16px 24px;
		box-sizing: border-box;
	}

	.home #cases .box-lista-wrapper {
		margin-right: 0;
		padding-right: 0;
		overflow: hidden;
	}

	.home #cases .box-card,
	.home #cases .box-lista .box-card {
		width: calc(50% - 20px);
		min-width: 300px;
	}

	/* --- Home: consultoria (título com imagens inline) --- */
	.home #consultoria .box-title h2 {
		font-size: clamp(34px, 5.5vw, 44px);
		line-height: 1.2;
	}

	.home #consultoria .box-title img {
		max-width: 80px;
		height: auto;
		margin: 0 6px;
		vertical-align: middle;
	}

	.home #consultoria .box-info {
		padding: 20px 0 0;
	}

	.home #complemento .info-texto {
		font-size: 11px;
		left: 16px;
		bottom: 20px;
		max-width: 42%;
	}

	.home #complemento .info-texto.direita {
		right: 16px;
		left: auto;
	}

	/* --- Lista de cases --- */
	.page-template-case #introducao .box-texto {
		justify-content: flex-start;
	}

	.page-template-case #introducao .box-texto span {
		width: 100%;
		max-width: 100%;
	}

	.page-template-case #introducao .row {
		flex-direction: column;
		gap: 16px;
	}

	.page-template-case #numeros .box-content {
		flex-wrap: wrap;
		padding: 48px 20px 40px;
		gap: 60px;
	}

	.page-template-case #numeros .box-content-item {
		width: calc(50% - 30px);
	}

	.page-template-case #numeros .box-content-item .numeros {
		font-size: clamp(46, 12vw, 56px);
		line-height: 1.1;
	}

	/* --- Sobre: galeria + políticas --- */
	.page-template-sobre #diferente .box-head .row {
		gap: 16px;
	}

	.page-template-sobre #diferente .box-texto span {
		width: 100%;
		max-width: 100%;
	}

	.page-template-sobre #politicas .box-buttons {
		gap: 10px;
	}

	.page-template-sobre #politicas .box-buttons button {
		font-size: 18px;
	}

	.page-template-sobre #politicas .box-info {
		padding: 36px 20px 44px;
	}

	.page-template-sobre #politicas .box-info h2 {
		font-size: clamp(32px, 6vw, 36px);
		line-height: 1.15;
	}

	/* --- Solução: fluxo, agendar, FAQ head, outras postagens --- */
	.single-solucao #fluxo .box-head .row>[class*="col-"] {
		margin-bottom: 12px;
	}

	.single-solucao #fluxo .box-card {
		padding: 28px 20px;
	}

	.single-solucao #agendar .box-content h2 {
		font-size: clamp(26px, 6vw, 40px);
		line-height: 1.15;
	}

	.single-solucao #faq .box-head .row>[class*="col-"] {
		margin-bottom: 12px;
	}

	.single #outras-postagens .box-head .row,
	.single-solucao #outras-postagens .box-head .row {
		flex-direction: column;
		align-items: flex-start;
	}

	.single #outras-postagens .box-link,
	.single-solucao #outras-postagens .box-link {
		text-align: left;
		margin-top: 8px;
	}

	.blog #introducao .box-image img {
		max-width: 100%;
		height: auto;
	}

	#cta::before {
		height: 38%;
	}

	.page-404 {
		padding: 80px 0 120px;
		min-height: 55vh;
	}

	.page-404__inner {
		text-align: center;
		max-width: 520px;
		margin: 0 auto;
	}

	.page-404__titulo {
		font-size: clamp(72px, 22vw, 160px);
		line-height: 1;
		font-weight: 500;
		margin: 0 0 16px;
		color: #0f0f10;
	}

	.page-404__texto {
		font-size: 16px;
		line-height: 24px;
		color: #606166;
		margin: 0 0 28px;
	}

	#mobile .mobile-panel {
		width: min(400px, 92vw);
	}

	.home #numeros .box-info {
		text-align: center;
		max-width: 500px;
		margin: 0 auto 50px;
	}
	.home #numeros .box-info p {
		max-width: initial;
	}

	#footer .box-copyright {
		margin: 0;
	}
}

@media (max-width: 767.98px) {

	.link-longo::after {
		width: min(70px, 38vw);
		background-size: 100% auto;
	}

	.home #marcas .box-lista .slide-item {
		margin: 0 18px;
	}

	.home #logo .box-lista .slide-item {
		margin: 0 18px;
	}

	.home #numeros .box-grid {
		grid-template-columns: 1fr 1fr;
		gap: 24px 16px;
	}

	.home #solucoes .box-card h3 {
		left: 20px;
		right: 20px;
		top: 22px;
		font-size: 19px;
	}

	.home #solucoes .box-card-info {
		left: 20px;
		right: 20px;
	}

	.page-template-sobre #video .box-video a {
		min-height: 260px;
	}

	.page-template-case #introducao {
		padding: 40px 0 30px;
	}

	.page-template-case #conteudo {
		padding: 32px 0;
	}

	.page-template-case #conteudo .box-card {
		padding: 20px 16px;
		gap: 24px;
	}

	.single #post-hero h1.titulo {
		font-size: clamp(26px, 6vw, 34px);
	}

	.single-solucao #introducao .super-titulo {
		font-size: clamp(28px, 6vw, 40px);
		line-height: 1.12;
	}
}

@media (max-width: 575.98px) {

	.home #cases .box-post {
		margin: 0 0 40px;
	}

	#footer .box-logo {
		text-align: center;
		margin: 0 0 40px;
	}

	#footer .box-social {
		justify-content: center;
	}

	#footer .box-title {
		text-align: center;
		padding: 15px 0 0;
	}

	#footer .box-links {
		text-align: center;
		margin: 0;
	}

	#footer .box-contato {
		text-align: center;
	}

	#footer .box-copyright {
		margin: 0;
	}

	#footer .box-copyright-info {
		text-align: center;
		flex-direction: column;
		flex-wrap: initial;
		margin: 0;
	}

	.box-return {
		bottom: 14px;
		right: 14px;
	}

	#mobile .mobile-panel {
		width: 100%;
		border-left: none;
		box-shadow: none;
	}

	#mobile .mobile-panel__head {
		padding: 18px 16px 14px;
	}

	#mobile .mobile-panel__body {
		padding-left: 16px;
		padding-right: 8px;
	}

	#mobile .mobile-panel__foot {
		padding: 24px 16px;
	}

	#submenu .box-card {
		flex: 1 1 100%;
	}

	.home #capa video {
		height: 600px;
	}

	.home #solucoes .box-card {
		margin: 0 0 12px;
	}

	.home #solucoes .box-card a {
		min-height: 300px;
	}

	.home #numeros .box-info {
		text-align: center;
		margin: 0 0 30px;
	}

	.home #numeros .box-grid {
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.home #numeros .box-info p {
		max-width: 100%;
	}

	#construcao .box-card span {
		font-size: 24px;
	}

	.page-404 {
		padding: 56px 0 80px;
	}

	.page-template-sobre #video .box-video video {
		height: 500px;
	}

	.page-template-sobre #video .box-video .item-info {
		flex-direction: column;
		left: 20px;
		right: 20px;
		gap: 5px;
	}

	.single #post-hero .box-meta {
		gap: 15px;
		flex-direction: column;
	}

	.single #post-hero h1.titulo {
		font-size: 30px;
		line-height: 1.4;
		text-align: center;
	}

	.page-template-contato #contato-hero {
		padding: 20px 12px;
	}
}

/* ######
   [ Solução ] Abas de produto — troca de conteúdo pelo seletor em #imagem
############ */

.single-solucao .solucao-produto {
	display: none;
}

.single-solucao .solucao-produto.ativo {
	display: block;
}

/* ######
   Animações de entrada (reveal on scroll)
############ */

.js-reveal {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity .8s cubic-bezier(0.22, 1, 0.36, 1), transform .8s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: opacity, transform;
}

.js-reveal.is-visible {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	.js-reveal {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}

/* ######
   Rodapé — accordion das colunas de links (somente celular)
############ */

@media (max-width: 767.98px) {
	#footer .footer-col {
		margin-bottom: 0 !important;
		border-bottom: solid 1px rgba(255, 255, 255, .13);
	}

	#footer .footer-col .box-title {
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		margin: 0;
		padding: 18px 0;
		user-select: none;
	}

	#footer .footer-col .box-title::after {
		content: '';
		width: 9px;
		height: 9px;
		flex-shrink: 0;
		margin-left: 12px;
		margin-top: -8px;
		border-right: 2px solid #747474;
		border-bottom: 2px solid #747474;
		transform: rotate(45deg);
		transition: transform .3s ease;
	}

	#footer .footer-col.is-open .box-title::after {
		margin-top: 4px;
		transform: rotate(-135deg);
	}

	#footer .footer-col .box-links {
		max-height: 0;
		overflow: hidden;
		opacity: 0;
		transition: max-height .35s ease, opacity .35s ease;
	}

	#footer .footer-col.is-open .box-links {
		max-height: 500px;
		opacity: 1;
		padding-bottom: 20px;
	}
}

/* ######
   Tablet paisagem (992–1199px): grid col-lg ativo, mas container ~960px.
   Neutraliza larguras/fontes/gaps fixos pensados para desktop largo.
############ */

@media (min-width: 992px) and (max-width: 1199.98px) {

	.titulo {
		font-size: 38px;
		margin-bottom: 24px;
	}

	.super-titulo {
		font-size: 46px;
		line-height: 1.1;
	}

	/* Home — Capa */
	.home #capa {
		margin-top: -74px;
	}

	.home #capa .box-info {
		gap: 40px;
		align-items: flex-end;
	}

	.home #capa .box-info h1 {
		font-size: 46px;
		line-height: 1.1;
		width: auto;
		flex: 1 1 55%;
	}

	.home #capa .box-info p {
		width: auto;
		flex: 1 1 40%;
		max-width: 360px;
	}

	.home #capa video {
		height: 560px;
	}

	/* Home — Soluções */
	.home #solucoes {
		padding: 90px 0;
	}

	.home #solucoes .box-lista {
		margin-top: 50px;
	}

	.home #solucoes .box-card a {
		height: 360px;
	}

	.home #solucoes .box-card h3 {
		font-size: 19px;
	}

	/* Construção (home + solução) */
	#construcao {
		padding: 100px 0 140px;
	}

	#construcao .box-head {
		margin-bottom: 100px;
	}

	#construcao .box-card {
		width: 100%;
		max-width: 100%;
		margin-bottom: 90px;
	}

	/* Home — Consultoria */
	.home #consultoria {
		padding: 120px 0;
	}

	.home #consultoria .box-info {
		padding-left: 24px;
	}

	/* Home — Números */
	.home #numeros {
		padding: 110px 0;
	}

	.home #numeros .box-info h2 {
		font-size: 46px;
		line-height: 1.12;
		margin-bottom: 28px;
	}

	.home #numeros .box-grid {
		gap: 70px 50px;
	}

	.home #numeros .box-card h3 {
		font-size: 56px;
	}

	/* Home — Inteligência */
	.home #inteligencia .box-content {
		gap: 40px;
	}

	.home #inteligencia .box-content h2 {
		font-size: 34px;
		line-height: 1.15;
		max-width: 340px;
	}

	.home #inteligencia .box-content p {
		font-size: 18px;
		max-width: 300px;
	}

	.home #inteligencia .box-mao img {
		width: 46vw;
	}

	/* Home — Sobre */
	.home #sobre {
		padding: 120px 0;
	}

	.home #sobre .box-content h2 {
		font-size: 46px;
		margin-bottom: 80px;
	}

	.home #sobre .box-content-info {
		gap: 40px;
		padding-top: 48px;
	}

	.home #sobre .box-content-info p {
		font-size: 18px;
		line-height: 1.5;
		width: auto;
	}

	/* Home — Cases */
	.home #cases {
		padding: 110px 0;
	}

	.home #cases .box-post img {
		height: 420px;
	}

	.home #cases .box-post-info {
		left: 30px;
		bottom: 30px;
	}

	/* Contato */
	.page-template-contato #contato-hero .box-content h1 {
		font-size: 44px;
	}

	/* Sobre (template) */
	.page-template-sobre #sobre .box-content .titulo {
		font-size: 34px;
	}

	.page-template-sobre #politicas .box-info-stack {
		width: 100%;
		max-width: 460px;
	}

	.page-template-sobre #politicas .box-info {
		padding: 55px 50px 65px;
	}

	/* Interna post/case */
	.single #post-hero h1.titulo {
		font-size: 38px;
	}

	.single #post-content .box-texto h3 {
		font-size: 26px;
	}

	/* Single-solução */
	.single-solucao #agendar .box-content h2 {
		font-size: 40px;
	}

	.single-solucao #faq .faq-item {
		grid-template-columns: minmax(0, 240px) 1fr 40px;
		gap: 30px;
	}

	#footer .box-copyright{
		margin: 0;
	}
}

/* ######
   Tablets/toque (≤1199px): cards de Soluções sem depender de hover
   (imagem visível no topo, título e texto em fluxo normal, altura automática)
############ */

@media (max-width: 1199.98px) {
	.home #solucoes .box-card a {
		height: auto;
		min-height: 0;
		display: flex;
		flex-direction: column;
		background: #A7B6BD;
	}

	.home #solucoes .box-card a::after {
		display: none;
	}

	.home #solucoes .box-card img {
		order: -1;
		position: static;
		opacity: 1;
		width: 100%;
		height: 190px;
	}

	.home #solucoes .box-card h3 {
		position: static;
		top: auto;
		left: auto;
		right: auto;
		padding: 26px 26px 0;
	}

	.home #solucoes .box-card:hover h3 {
		/* mantém título estático em toque */
	}

	.home #solucoes .box-card-info {
		position: static;
		bottom: auto;
		left: auto;
		right: auto;
		padding: 14px 26px 30px;
	}

	.home #solucoes .box-card:hover .box-card-info {
		bottom: auto;
	}

	.home #solucoes .box-card-info p {
		margin: 0 0 18px;
	}
}