/*
Theme Name: VDC Assessoria
Theme URI: https://exemplo.com/vdcassessoria
Author: Anderson Felipe
Author URI: https://andersonwebdesigner.com.br
Description: Um tema personalizado para WordPress.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: vdcassessoria
*/

/* Adicione seus estilos personalizados abaixo desta linha */

@charset "utf-8"; body, html {height: 100% !important;}
body { font: 1.1rem "Inter", sans-serif; overflow-x: hidden; }
:root {
	--cor-primaria-0: #003055;
	--cor-primaria-3: #0F21AA;
	--cor-secundaria-0: #2DC1EA;
}
/*
| ----------------------------
| GERAL
| ----------------------------
*/

body a {
	color: var(--cor-primaria-0);
	text-decoration: none;
}
body a.btn {
	border-radius: 100px;
	font-weight: bold;
	padding: 15px 35px;
}

body a.btn-cta {
	animation:1.5s infinite pulse;
	background: #25CB3E;
	color: #FFF;
	display: inline-block;
	font-size: 1.3rem;
	font-weight: bold;
	padding: 12px 100px;
	text-shadow: 1px 1px 0 #009019;
	text-transform: uppercase;
	transition: transform 0.5s ease;
}
body a.btn-cta:hover {
	background: #25CB3E;
	color: #FFF;
	transform: scale(1.05);
}
@keyframes pulse {
	0%,
	100% {
		transform:scale(1)
	}
	50% {
		transform:scale(1.07)
	}
}

a.whatsapp-float {
	animation: pulse 1.5s infinite;
	bottom: 40px;
	height: 60px;
	position: fixed;
	right: 15px;
	transition: transform 0.3s ease;
	width: 60px;
	z-index: 100;
}
div.whatsapp-float-msg {
	background: #1EBC59;
	border-radius: 100px;
	bottom: 47px;
	color: #fff;
	font-size: 1rem;
	padding: 7px 35px 7px 20px;
	position: fixed;
	right: 45px;
	text-align: center;
	text-shadow: 1px 1px 1px #008130;
	visibility: visible;
	width: auto;
	z-index: 99;
}

.wrapper {
	padding: 4rem 0;
}

body h2 {
	font-size: 2.5rem;
	padding-bottom: 1rem;
}

.bg-cor-primaria {
	background: #825E3B;
}

body.home .btn-cor-primaria {
	background: var(--cor-primaria-0);
	border-color: var(--cor-primaria-0);
	color: #FFF;
}
body.home .btn-cor-primaria:hover {
	background: var(--cor-primaria-0);
	border-color: var(--cor-primaria-0);
	color: #FFF;
}
body.home .btn-success {
	background: #27D045;
	border-color: #27D045;
}

/*
|-------------------------------------
| NAV
|-------------------------------------
*/
::-webkit-scrollbar {
	height: 1px;
	width: 1px;
}
header nav {
	background: #ddebfd;
	color: var(--cor-primaria-0);
	padding: 15px 0;
}
header nav .container {
	position: relative;
}
header nav .brand {
	color: #FFF;
	font-size: 1.25rem;
	margin: 0 auto;
	overflow: hidden;
	text-transform: uppercase;
}
header nav .brand a {
	display: block;
}
header nav .brand img {
	max-width: 150px;
}
header nav {
	position: relative;
	white-space: nowrap;
	width: 100%;
}
header nav .parceiros {
	display: none;
	overflow: hidden;
}
header nav .parceiros .item {
	align-items: center;
	float: left;
	display: flex;
	justify-content: right;
	height: 61px;
	margin-left: 20px;
	text-align: right;
	width: 12%;
}
header nav .parceiros .item img {
	max-height: 50px;
	max-width: 100%;
}
header nav .navbar-collapse {
	position: relative;
}

header nav .fone {
	font-size: 0.8rem;
	font-weight: bold;
	overflow: hidden;
	padding-bottom: 5px;
	position: relative;
}
header nav .fone a {
	color: #FBC92B;
}
header nav .social {
	text-align: center;
}
header nav .social ul {
	list-style: none;
	margin-bottom: 0;
	padding-left: 0;
}
header nav .social ul li {
	display: inline-block;
	padding-right: 0;
}
header nav .social ul li a {
	color: var(--cor-laranja-0);
	display: block;
	font-size: 2rem;
	line-height: 1rem;
}
header nav .fone svg {
	font-size: 0.9rem;
	padding-right: 10px;
}

header nav .user-tools {
	padding-bottom: 1rem;
	padding-top: 2rem;
	text-align: left;
}
header nav .user-tools a {
	font-size: 0.8rem;
}
header nav .user-tools a.btn-cor-primaria {
	background: transparent;
	color: var(--cor-primaria);
}
header nav .user-tools a.btn-cor-primaria:hover {
	background: var(--cor-primaria);
	color: #FFF;
}

header nav .navbar-toggler {
	position: absolute;
	right: 15px;
	top: 0;
	padding: 0;
	border: 0;
}
header nav .navbar-toggler svg {
	color: #666;
}
header nav .navbar-toggler .collapse ul.navbar-nav li {
	padding: 8px 0;
	text-align: left;
}

/*
| ----------------------------
| HEADER
| ----------------------------
*/

header {
	background: var(--cor-primaria-0);
	color: #FFF;
	padding-top: 0; 
}
header .container {
	position: relative;
}
header .box {
	padding: 0 3rem;
	position: relative;
	width: 45%;
}
header .box h1 small {
	display: block;
	font-size: 1rem;
	font-weight: bold;
	padding-top: 15px;
}

@media (max-width: 1024px) {
	header .box {
		width: 100%;
	}
} /* 1024px  */

/*
| ----------------------------
| PÁGINA > HOME
| ----------------------------
*/
body header {
	background: var(--cor-primaria-0);
}
body header, body header.container {
	position: relative;
}
header .jumbotron {
	background: var(--cor-primaria-0) url(img/bn-home.webp) no-repeat right top;
	background-size: auto 100%;
	padding: 7rem 0;
}
body header .box {
	margin-top: 0rem;
	position: relative;
}
body header .box h1 {
	font-size: 2.65rem;
	padding-bottom: 1.5rem;
	margin: 0 auto;
}
body header .box h2 {
	font-size: 1.45rem;
	padding-bottom: 2rem;
}
main section.parceiros {
	display: none;
}
main section.parceiros h2 {
	color: var(--cor-primaria-0);
	padding-bottom: 3rem;
}
main section.parceiros .group-itens {
	clear: both;
	height: 80px;
	overflow: hidden;
}
main section.parceiros .item {
	align-items: center;
	display: flex;
	float: left;
	justify-content: center;
	height: 100%;
	text-align: center;
	width: 16.5%;
}
main section.parceiros .item img {
	max-height: 80px;
	max-width: 140px;
}

body .beneficios, body .taxas, body .sobre {
	font-size: 1.25rem;
}
main section.beneficios {
	background: var(--cor-primaria-0);
	color: #FFF;
	text-align: center;
}
main section.beneficios img {
	margin-bottom: 25px;
	max-height: 60px;
}
main section.beneficios h3 {
	font-weight: bold;
	padding-bottom: 15px;
}
main section.servicos .box img {
	margin-bottom: 25px;
}
main section.servicos .box h2 {
	color: var(--cor-primaria-0);
	font-size: 1.65rem;
	font-weight: bold;
	padding-bottom: 15px;
	text-align: left;
}
main section.como-funciona {
	background: #E5ECEE;
}
main section.como-funciona h2 {
	font-weight: bold;
	padding-bottom: 5rem;
}
main section.como-funciona .box {
	align-items: center;
	background: var(--cor-primaria-0);
	color: #FFF;
	display: flex;
	flex-direction: column;
	font-size: 1.1rem;
	font-weight: bold;
	justify-content: center;
	height: 150px;
	padding: 30px 20px;
	position: relative;
}
main section.como-funciona .box:after {
	content: "";
	position: absolute;
	right: -20px;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
	border-left: 20px solid var(--cor-primaria-0); /* Mesma cor do fundo da box */
	z-index: 1;
}
main section.como-funciona .box.last-child:after {
	display: none;
}
main section.como-funciona .box .number {
	align-items: center;
	background: #fff;
	border: 0;
	border-radius: 100px;
	box-shadow: 3px 8px 6px var(--cor-primaria-0);
	color: #000;
	display: flex;
	font-size: 1.75rem;
	height: 75px;
	justify-content: center;
	margin-top: -68px;
	width: 75px;
}
main section.como-funciona .box p {
	padding-top: 25px;
}
main section.sobre h2 {
	text-align: left;
}
main section.sobre img {
	box-shadow: 15px 15px 0 #E5ECEE;
}
body .box-text {
	border: 1px solid #DDD;
	border-radius: 10px;
	min-height: 210px;
	padding: 20px 25px;
}
body .beneficios p {
	font-size: 1.2rem;
	margin-bottom: 0;
}
body .beneficios .icon {
	float: left;
	margin-right: 20px;
	width: 75px;
}
body .beneficios .icon img {
	max-width: 100%;
}
body .beneficios .box-text {
	height: 100%;
	overflow: hidden
}
body .beneficios .box-text h2 {
	font-size: 1.75rem;
	margin-bottom: 0;
	padding-bottom: 0.75rem;
}

body .taxas, body .cta-section {
	background: var(--cor-primaria-3);
	color: #FFF;
}
body .taxas .list-item .item {
	padding-bottom: 1.25rem;
}
body .taxas .list-item .item .icon {
	float: left;
	min-height: 50px;
	padding-right: 25px;
}
body .taxas .box-text {
	padding: 0 20px;
}
body .taxas .number {
	font-size: 4.5rem;
	font-weight: bold;
	text-align: center;
}
body .taxas .box-img, body .cta-section .box-img {
	height: 100%;
	overflow: visible;
	position: relative;
	z-index: 1;
}
body .taxas .box-img:after {
	background: url('img/cartao.webp') no-repeat right bottom;
	background-size: 90% auto;
	bottom: -6rem;
	height: 100%;
	content: '';
	position: absolute;
	right: -40%;
	width: 160%;
	z-index: 3;
}
body .taxas .box-img:before, body .cta-section .box-img:before {
	background: radial-gradient(circle,rgba(28, 76, 150, 1) 0%, rgba(87, 199, 133, 0) 8%) no-repeat;
	background-position: calc(50% + 40px) 50%; /* Centralizado verticalmente, 20px à direita do centro */
	background-size: 1000% 100%; /* Ajuste conforme necessário */
	height: 100%;
	content: '';
	position: absolute;
	width: 100%;
	z-index: 0;
}
body .taxas .box-img img, body .cta-section .box-img img {
	left: 0;
	position: absolute;
}
body .taxas .box-img img.mulher, body .cta-section .box-img img.homem {
	bottom: 0;
}

body .cta-section h2 {
	padding-bottom: 0.5rem;
}
body .cta-section p {
	padding-bottom: 0.5rem;
}
body .cta-section a {
	display: inline-block;
}
body .cta-section .group-btn {
	padding-top: 2rem;
	text-align: center;
}

body .faq table {
	border-bottom: 1px solid #DDD;
	margin-bottom: 2rem;
}
body .faq table tr {
	border-top: 1px solid #DDD;
	padding: 20px 0;
}
body .faq table tr td {
	padding: 15px 0;
}
body .faq h2 button {
	font-size: 1.25rem;
}
body .faq h2 button:hover {
	background-color: var(--bs-accordion-active-bg);
}

.entry-title, .page-title {
	display: none;
}

/*
| ----------------------------
| FOOTER
| ----------------------------
*/

footer {
	background: #F3F3F3;
	color: #000;
	padding: 2rem;
}
footer h6 {
	font-size: 1.25rem;
	padding-bottom: 25px;
}
footer .f-brand {
	padding-bottom: 2rem;
}
footer .f-info {
	padding-bottom: 2rem;
}
footer .f-info .item {
	opacity: 1;
}
footer .f-social a {
	display: inline-block;
	margin-right: 30px;
}
footer .f-social a i {
	color: #FFF;
	font-size: 2rem;
	transition: transform 0.3s ease-in-out;
}
footer .f-social a i:hover {
	transform: scale(1.2);
}
footer ul {
	padding-left: 15px;
}
footer ul li {
	padding-bottom: 15px;
}
footer ul li a {
	color: #FFF;
}
footer ul li a:hover {
	text-decoration: underline;
}
footer .f-copy {
	font-size: 0.8rem;
}

/*
# ----------------------------
# MEDIA QUERIES
# ----------------------------
*/

@media (max-width: 1200px) {
	header nav.navbar button.navbar-toggler {
		background: #FFF;
		margin-right: 160px;
	}
	header nav.navbar .navbar-collapse ul {
		background: #FFF;
		border: 0;
		border-radius: 25px;
		float: none;
		padding: 25px 15px 15px;
	}
	header nav.navbar .navbar-collapse ul li {
		padding-bottom: 15px;
	}
	header nav.navbar .navbar-collapse ul li a {
		color: #000;
	}
	nav .fone {
		font-size: 1rem;
		position: absolute;
		right: 0;
		text-align: right;
		top: 0;
	}
	body.home .jumbotron {
		background: var(--cor-primaria-0) url(img/bn-home.webp) no-repeat right top;
		background-size: auto 100%;
		padding: 3rem 0;
	}
	body.home .jumbotron .box h1 {
		font-size: 1.75rem;
		width: 100%;
	}
	body.home .jumbotron p {
		color: #FFF;
		padding: 1rem 0 1.5rem;
	}
	main section.parceiros {
		padding-top: 5rem;
	}
	main section.parceiros .item {
		height: 100px;
		margin-bottom: 2rem;
		overflow: hidden;
		padding: 5px;
		width: 33%;
	}
	main section.parceiros .item img {
		max-height: 50px;
		max-width: 95%;
		width: auto;
	}
} /* 1200px */

@media (max-width: 992px) {
	header nav.navbar .brand {
		max-width: none;
	}
	nav .parceiros .item {
		margin: 0 20px;
		width: 10%;
	}
	header nav .fone {
		align-items: center;
		display: flex;
		justify-content: center;
		text-align: center;
		width: 100%;
	}
	header nav .fone div {
		padding: 0 6px;
	}
	header nav.navbar .info .navbar-text {
		font-size: 0.85rem;
	}
	header nav.navbar button.navbar-toggler {
		margin-right: 0;
	}
	body header .jumbotron {
		background: var(--cor-primaria-0);
		padding: 0;
	}
	body header .jumbotron:after {
		background: url('img/bn-home-mb.webp') no-repeat center center;
		background-size: cover;
		background-position: center 0;
		height: 105%;
		right: auto;
		width: 100%;
	}
	body header .jumbotron .box {
		text-align: center;
		width: 100%;
		z-index: 2;
	}
	body header .box h1 {
		font-size: 2.75rem;
	}
	body .beneficios .box-text {
		margin-bottom: 15px;
		min-height: 0;
		padding: 15px 20px;
	}
	body .beneficios .icon {
		margin-right: 20px;
		width: 55px;
	}
	body .wrapper .box-img img, body .cta-section .wrapper {
		padding-bottom: 1rem;
	}
	body .taxas .box-img img, body .cta-section .box-img img {
		display: block;
		margin: 0 auto;
		position: relative;
	}
	body .taxas .box-img:after { /* cartão de crédito */
		background-size: 70% auto;
		bottom: -5rem;
		width: 150%;
	}
	body .taxas .box-img:before, body .cta-section .box-img:before {
		background: radial-gradient(circle,rgba(28, 76, 150, 1) 0%, rgba(87, 199, 133, 0) 50%) no-repeat;
		background-position: calc(50% + 40px) 50%; /* Centralizado verticalmente, 20px à direita do centro */
		background-size: 100% 100%; /* Ajuste conforme necessário */
		height: 100%;
		content: '';
		position: absolute;
		width: 100%;
		z-index: 0;
	}
	main section.parceiros .group-itens {
	    height: auto;
    }
	body .sobre h2 {
		padding: 0 0 2rem;
		text-align: center;
	}
} /* 992px */

@media (max-width: 768px) {
	body a.btn-cta {
	   font-size: 1.3rem;
	   padding: 12px 20px;
	   text-transform: initial;
	   width: 75%;
    }
    header nav .parceiros {
    	display: none;
    }
	header nav.navbar .brand {
		align-content: center;
		display: flex;
		float: none;
		justify-content: center;
		padding-bottom: 15px;
		text-align: center;
		width: 100%;
	}
	header nav.navbar .info {
		text-align: center;
		width: 100%;
	}
	body.home .jumbotron .box {
		padding-left: 0;
		padding-right: 0;
	}
	body.home .jumbotron .box h1 {
		font-size: 1.75rem;
		padding-left: 0;
		padding-right: 0;
	}	
	body .beneficios img {
		display: block;
		margin: 0 auto;
	}
	body .beneficios .list-item {
		display: flex;
		flex-wrap: wrap; /* Permite que os itens quebrem para a próxima linha */
		justify-content: space-between; /* Distribui os itens uniformemente */
		gap: 15px; /* Espaçamento opcional entre os itens (caso queira) */
	}
	body .beneficios .list-item .item {
		flex: 0 0 calc(50% - 15px); /* Largura de 50% menos o espaçamento */
		max-width: calc(50% - 15px); /* Garante que não ultrapasse 50% */
		box-sizing: border-box; /* Evita que padding/margin interfiram na largura */
	}
	body .beneficios .list-item .item .icon {
		width: 45px;		
	}
	body .beneficios .list-item .item h2 {
		font-size: 1.475rem;
	}
	body .beneficios .list-item .item p {
		font-size: 1rem;;
	}
	body main section.como-funciona .box {
		margin-bottom: 60px;
	}
	body main section.como-funciona .box::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -30px;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-bottom: 15px solid transparent;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 15px solid var(--cor-primaria-0);
	top: auto;
	z-index: 2;
}
	body .taxas .number {
		font-size: 3.5rem;
		padding-top: 2rem;
	}
	footer {
		text-align: center;
	}
	footer .f-social {
		display: flex;
		justify-content: center;
		padding-top: 3rem;
	}
} /* 768px */

@media (max-width: 576px) {
	body a.btn-cta {
		font-size: 1.5rem;
		width: auto;
	}
	header nav.navbar .brand img {
		width: 100%;
	}
	header nav.navbar .fone {
		font-size: 0.85rem;
	}
	header nav.navbar .collapse {
		padding-left: 0;
	}
	body h2 {
		font-size: 2rem;
		padding-bottom: 1.25rem;
	}
	body header {
		padding-bottom: 1rem;
	}
	body header .jumbotron .box {
		padding: 0;
	}
	body .beneficios p, body .sobre p {
		padding-bottom: 0.75rem;
	}
	body .beneficios .list-item {
		display: block;
		padding-bottom: 3rem;
	}
	body .beneficios .list-item .item {
		max-width: none;
		width: 100%;
	}
	body .beneficios img {
		max-width: 75%;
	}
	body .taxas .list-item {
		padding-bottom: 1rem;
	}
	body .taxas img {
		max-width: 50%;
	}
	body .taxas .box-img:after {
		bottom: -4rem;
		right: -25%;
	}
	body .cta-section .box-img img {
		max-width: 75%;
	}
	footer h6, footer .f-info {
		text-align: center;
	}
	footer .f-social {
		padding-top: 2rem;
	}
	footer .f-copy {
		padding-top: 3rem;
		text-align: center;
	}
} /* 576px */

@media (max-width: 412px) {
	body a.btn-cta {
		display: block;
		font-size: 1.25rem;
		margin: 0 auto;
		margin-bottom: 2rem;
		padding-left: 0;
		padding-right: 0;
		width: 85%;
	}
	header nav.navbar .brand {
	}
	header nav.navbar .brand img {
		max-height: 50px;
		width: auto;
	}
	header nav.navbar .info .navbar-text {
		font-size: 0.65rem;
	}
	body header .box h1 {
		font-size: 2rem;
	}
	body header a.btn-cta {
		font-size: 1.05rem;
		padding-left: 10px;
		padding-right: 10px;
		width: 83%;
	}
} /* 412px */