/********* FONTS ************************************************/
@font-face {
	font-family: 'Gilroy';
	src: url(../fonts/Gilroy-Bold.woff2) format('woff2'), url(../fonts/Gilroy-Bold.woff) format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap
}

@font-face {
	font-family: 'Gilroy';
	src: url(../fonts/Gilroy-Medium.woff2) format('woff2'), url(../fonts/Gilroy-Medium.woff) format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap
}

@font-face {
	font-family: 'Gilroy';
	src: url(../fonts/Gilroy-Light.woff2) format('woff2'), url(../fonts/Gilroy-Light.woff) format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap
}

/******** VARIAVEIS ================================================*/
:root {
	--verde_zapfy: #34a853;
	--verde_zapfy_escuro:#017239;
	--cinza: #222;
	--cinza-claro: #E4E9F0;
	--verde-light: #edfdf3;
	--verde-claro: #5AC782;
	--verde-bg: #DCFAE6;
	--verde-bg-light: #EDFCF2;
	--hover-light: #10766E;
	--hover-dark: #134E4A;
	--hover-darkbg-green: #34AD61;
	--amarelo:#ffc000;
}

a { text-decoration: none }
ol, ul {list-style: none }

* {
	font-family: 'Gilroy', sans-serif;
	margin: 0;
	padding: 0;
	border: 0;
	box-sizing: border-box;
	color: var(--cinza)
}


body {
	background:#FFF;
	font-size: 15px;
}

img {
	display: inline-block;
	max-width: 100%;
	height: auto
}

/*** GRIDS ===============================*/
.container { width: 100%; max-width: 1600px; padding: 0 100px; margin: 0 auto }
.flex { align-items: center; display: flex; justify-content: space-between; flex-wrap: wrap }

.column_alignment.img_left .bloco_imagem_acima,
.column_alignment.img_left .bloco_imagem {
	order: 1
}

.column_alignment.img_left .bloco_texto_abaixo,
.column_alignment.img_left .bloco_texto {
	order: 2
}

.debug {outline: 2px solid red}

.grid-15 {width: 15% } 
.grid-20 {width: 20% } 
.grid-24 {width: 24% } 
.grid-27 {width: 27% } 
.grid-35 {width: 35% } 
.grid-40 {width: 40% } 
.grid-45 {width: 45% } 
.grid-50 {width: 50% }
.grid-48 {width: 48% } 
.grid-49 {width: 49.5% } 
.grid-60 {width: 60% } 
.grid-70 {width: 70% } 
.grid-30 {width: 30% } 
.grid-80 {width: 80% } 

.width-25 {width: 25% } 
.width-49 {width: 49.5% } 
.width-55 {width: 55% } 
.width-60 {width: 60% } 
.width-65 {width: 65% } 
.width-74 {width: 74% } 
.width-75 {width: 75% } 
.width-100 {width: 100% }

/*** MODAL ===============================*/
.modal-overlay {
	display: none;
	position: fixed;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background-color: rgba(0,0,0,0.5);
	z-index: 999;
	justify-content: center;
	align-items: center;
}
.modal {
	background: #F4F4F4;
	padding: 20px;
	border-radius: 8px;
	width: 100%;
	max-width: 485px;
	position: relative;
	animation: fadeIn 0.3s ease;
}
.close-btn {
	position: absolute;
	top: 25px;
	right: 35px;
	font-size: 30px;
	background: none;
	border: none;
	cursor: pointer;
}

@keyframes fadeIn {
	from {opacity: 0; transform: scale(0.9);}
	to {opacity: 1; transform: scale(1);}
}



/*** TITULOS ===============================*/
.titulo_principal{
	font-size: 50px;
	line-height: 56px;
	letter-spacing: -2px;
	font-weight: 700;
	color: var(--cinza)
}
.titulo_principal strong { color: var(--verde_zapfy) }

/*** HELPERS ===============================*/
/*.margin_bottom_0,
.bloco_container.bloco_bottom_espacamento_0,
.bloco_container.bloco_bottom_ {
	margin-bottom: 0 !important
}*/

button {cursor: pointer;}

.gray {background:#F4F4F4; padding:50px 0;}

.border_radius img { border-radius:30px; overflow:hidden; }

.limit_title {
	max-width: 20ch;
	line-height: 1.2;
	word-break: break-word;
}

.limit_sub {
	max-width: 63ch;
	line-height: 1.2;
	word-break: break-word;
}


/* ~30 caracteres visíveis */
/*.trunca-caracteres {
	width: 30ch; 
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}*/

hr {
	border-bottom:2px solid #CCC;
}

.display_flex_center { display: flex; justify-content: center; }

.padding { padding-top: 70px; padding-bottom: 70px }

.text-center { text-align: center }

.tag {
	display: inline-block;
	background: var(--verde-bg);
	padding: 5px 25px;
	border-radius:7px;
	color: var(--verde_zapfy);
	font-weight: 700;
}


/*** BOTOES ===============================*/
.btn {
	color: #fff;
	font-size: 18px;
	line-height: 20px;
	position: relative;
	background: var(--verde_zapfy);
	padding: 10px 30px;
	border-radius: 7px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-weight: 700;
	text-align: center;
	width: max-content;
	width: -moz-max-content;
	border: 2px solid var(--verde_zapfy)
}

.btn i {margin:0 10px 0 0; color:#FFF }

/*** HEADER ===============================*/
.header_container {
	position: fixed;
	width: 100%;
	z-index: 9999;
	top: 10px
}
.site_header {
	position: fixed;
	max-width: 1400px;
	width: 100%;
	margin: 0 auto;
	top: 30px;
	left: 50%;
	transform: translate(-50%);
	border-radius: 8px;
	background: #FFF; 
	padding:10px 20px;
	z-index: 9999;
	border:1px solid rgba(38, 48, 56, .12);    
	box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, .08), 0px 4px 6px -2px rgba(0, 0, 0, .03);
}

.header_logo { display: flex }
.header_actions { margin-left: 80px }

.header_actions a { margin-right: 35px }
.header_actions a:last-child { margin-right: 0 }

.header_menu { display: flex }
.header_menu .menu-item-has-children .sub-menu { display: none }

.header_menu .menu-item { position: relative }

.header_menu li { position: relative; margin-right: 35px }
.header_menu li:last-child { margin-right: 0}

.header_menu a { font-size: 15px; text-transform: uppercase; font-weight:bold; }
.header_menu a:hover { 
	color:#FFF;
	background: var(--verde_zapfy);
}


/*** HERO ===============================*/
.hero {
	background: var(--verde-light);
	margin:0 !important;
	padding:30px 0;
}

.hero ul {margin-bottom:30px}
.hero h1 {margin-bottom:30px}

.hero ul li {
	color: var(--cinza);
	font-size:20px;
	font-weight: bold;
	margin:5px 0;
	padding-left:100px;
	padding:5px 0 20px 45px;
	background:url(../images/check_round_green.svg) no-repeat left top;
}
.hero ul li:last-child { margin-right: 0 }


/*** MARCAS ===============================*/
.marcas {
	text-align: center;
	padding: 40px 0;
	background:#017239;
}

.marcas h2 {font-size:25px; color:#FFF; margin-bottom: 30px}

.marcas_zapfy {
	display: block;
	width: 150px;
	height: 150px;
	border-radius:15px;
	margin:0 15px;
	overflow: hidden;    
	padding:10px;
	background:#FFF;
}

.marcas_zapfy img {
	width:100%;
	height: auto;
}

.frase {
	font-size: 50px;
	line-height: 56px;
	letter-spacing: -2px;
	font-weight: 700;
	color: #FFF
}
.frase strong { color:var(--amarelo);}


/*** RECURSOS ===============================*/
.recursos p {
	font-size: 20px;
	line-height: 26px;
	color:#222;
	font-weight: 500;
	margin-bottom:20px;
}

/*** NOVIDADES ===============================*/
.novidades {
	color:#FFF;
	background: var(--hover-dark);
}
.novidades p {
	font-size: 20px;
	line-height: 26px;
	color:#FFF;
	font-weight: 500;
	margin-bottom:20px;
}
.novidades h3.titulo_principal {color:#FFF}
.novidades h3.titulo_principal strong {color:var(--amarelo);}

.img_box {
	padding:20px; 
	background:var(--verde_zapfy);
}

/*** PLANOS ===============================*/
.planos {
	background:#F1F1F1;
	padding-bottom:40px;
	border:1px solid #CCC;
}


/*** CONTATO - CTA ===============================*/
.contato_cta {margin:60px auto; width:70%; padding:50px}

.contato_cta h2.titulo_principal {color:#FFF}
.contato_cta h2.titulo_principal strong {color:var(--amarelo);}

.contato_cta {
	border-radius: 70px;
	padding: 30px;
	background: var(--hover-dark);
}

.contato_cta p {
	font-size: 20px;
	line-height: 26px;
	color:#FFF;
	font-weight: 500;
	margin-bottom:20px;
}


/*** DEPOIMENTOS ===============================*/
.depoimentos { 
	background: var(--verde-light); 
	padding:60px 0;
}
.depoimentos h3 { 
	color: var(--cinza);
	margin:10px 0;
	font-weight: 400;
	font-size: 22px;
	line-height: 28px;
	font-weight: 300;
}

.box_white {
	background:#FFF;
	padding:30px;
	border:1px solid #CCC;
	border-radius:20px;
	margin:0 10px;
}

.box_white h4 {font-size:25px; font-weight: bold; color:var(--verde_zapfy);}
.box_white p {font-size:16px; color:var(--cinza); margin:10px 0}




/*** Por que escolher o Zapfy? ===============================*/
.porque {
	color:#FFF;
	background: var(--hover-dark);
}
.porque p {
	font-size: 20px;
	line-height: 26px;
	color:#FFF;
	font-weight: 500;
	margin-bottom:20px;
}
.porque h3.titulo_principal {color:#FFF}
.porque h3.titulo_principal strong {color:var(--amarelo);}

.lista_zapfy_ul { margin:10px 0; }
.lista_zapfy_ul li {
	color:#FFF;
	font-size:20px; 
	background: var(--verde_zapfy);
	padding:20px;
	margin:15px 0; 
	border-radius:10px;
}



.planos_container {
	display: flex;
	gap: 30px;
	justify-content: center;
	flex-wrap: wrap;
	margin:0 0 30px 0;
}

.plano_page {
	background: #FFF;
	border-radius: 20px;
	padding:20px;
	width: 445px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	transition: transform 0.3s ease;
}

.plano_page.destaque {
	background: #003f2e;
	color: white;
	transform: scale(1.05);
}


.plano_page h3 { color: var(--verde_zapfy); font-size: 25px; margin-bottom:10px; }
.plano_page .descricao { font-size: 15px; margin-bottom: 10px; }

.plano_page .preco { font-size: 1rem; margin: 12px 0; }
.plano_page .preco strong {color: var(--verde_zapfy); font-size: 2rem; }

.recursos_page_planos li {
	font-size:15px;
	padding:10px;
	margin: 5px 0;
	background:#F4F4F4;
	width: 100%;
	display: inline-block;
}







.switch {
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: sans-serif;
	cursor: not-allowed;
}

.switch input {
	display: none;
}

.slider {
	width: 40px;
	height: 20px;
	background-color: #ccc;
	border-radius: 20px;
	position: relative;
	transition: background-color 0.3s;
}

.slider::before {
	content: "";
	position: absolute;
	width: 16px;
	height: 16px;
	left: 2px;
	top: 2px;
	background-color: white;
	border-radius: 50%;
	transition: transform 0.3s;
}

/* Ativo */
input:checked + .slider {
	background-color: #32d583;
}

input:checked + .slider::before {
	transform: translateX(20px);
}

/* Desabilitado visual */
input:disabled + .slider {
	/*opacity: 0.5;*/
}

/* Label de texto */
.label-text {
	font-size: 14px;
	color: #333;
}


.plano_page i {
	color: #32d583;
	font-size:20px;
}




















/*** FAQ ===============================*/
.faq {
	background:#FFF;
	padding:60px 0;
}

.accordion {
	list-style: none;
	padding: 0;
	margin: 0;
}

.accordion li {
	border-bottom: 1px solid #ddd;
	cursor: pointer;
	padding: 15px;
	transition: background 0.3s;
	position: relative;
	font-size: 20px;
	line-height: 24px;
	font-weight: 400;
}

.accordion li span {
	font-size:20px;
	font-weight: bold;
	color:var(--verde_zapfy);
}

.accordion li:hover { background: #EEE; }

.accordion li span::after {
	content: "+";
	position: absolute;
	right: 20px;
	font-weight: bold;
	transition: transform 0.3s;
}

.accordion li.active span::after {
	content: "-";
}

.accordion li .answer {
	display: none;
	margin:20px 0;
	color: #333;
	font-size: 17px;
}






/*** FOOTER ===============================*/
footer {
	background:var(--verde-light);
	position: relative;
	padding: 20px 0;
}

footer nav {
	margin-bottom: 30px
}
footer a {
	font-size:14px;
	color:var(--hover-dark);
}

footer nav a:hover { color: var(--verde_zapfy) }

footer h6 {
	color: var(--verde_zapfy);
	font-size: 22px;
	font-weight: 700;
	display: block;
	margin-bottom: 15px
}



/* FOOTER SOCIAL */
.footer_social { justify-content: flex-start }
.footer_social a { color:#FFF; display: flex; align-items: center; margin:10px 20px 0 0; background:#FFF; justify-content: center; width: 45px; height: 45px; border-radius: 7px;}
.footer_social a svg { width: 20px; height: auto; max-width: 20px; max-height: 20px; fill: #111 }
.footer_social a:hover { background: var(--verde_zapfy) }
.footer_social a:hover svg, .footer_social a:hover path { fill: #fff }

/*** COPY ===============================*/
.copy { color:#222; padding:30px 0; background:#FFF; text-align:center; }
.copy h6 {font-size:17px}
.copy p {font-size:14px}








/*** PAGINAS INTERNAS ================================================*/

/*** 404 ===============================*/
.error-container {
	background: var(--verde-light);
	margin:0 !important;
	padding:60px 0;
}

.error-container p {font-size:20px; margin: 20px 0}


/*** CATEGORIAS  ===============================*/

body.category { background:#F4F4F4; }

.categorias_pages ul li {
	background:#FFF;
	padding:30px;
	border-radius:20px;
	border: 1px solid rgba(38, 48, 56, .12);
	box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, .08), 0px 4px 6px -2px rgba(0, 0, 0, .03);
	margin:0 0 20px 0;
}

.categorias_pages h3 {
	color:var(--verde_zapfy);
	font-size:25px;
}

.categorias_pages p {font-size:17px}

.categorias_pages .header_pages { background:var(--hover-dark); }
.categorias_pages .header_pages h1 { color:#FFF !important }
.categorias_pages .header_pages p { color:#FFF !important }




/*** PAGINA DE PLANOS ===============================*/
.page-id-55 {
	padding-top:100px;
	background:#F4F4F4 !important;
}
.box_planos {
	background:#FFF;
	padding:30px;
	border-radius:20px;
	border: 1px solid rgba(38, 48, 56, .12);
	box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, .08), 0px 4px 6px -2px rgba(0, 0, 0, .03);
}

.box_planos h3 { color:var(--cinza); font-size:30px; line-height:26px; }
.box_planos h3 strong { color: var(--verde_zapfy); }
.box_planos p {font-size:20px; margin:10px 0 20px 0}
.box_planos h4 {font-size:20px; color:var(--verde_zapfy); margin:10px 0 0 0}



/*** PAGINAS ===============================*/
/*body.page {background:#F4F4F4;}*/

.header_pages {
	background:var(--verde-light);
	padding:160px 0 100px;
	margin-bottom:30px;
}
.header_pages p {font-size:20px}


.layout {
	display: flex;
	gap: 2rem;
	align-items: flex-start;
	max-width: 1420px;
	margin: 0 auto;
}

.conteudo {
	flex: 1 1 70%;
	padding: 1rem;
}
.sidebar {
	flex: 0 0 300px;	
}
.sidebar-box {
	padding: 1rem;
	background-color:#F4F4F4;
	margin-bottom: 1rem;
	border-radius:10px;
}
.sidebar-box h3 {
	font-size: 1.2rem;
	margin-bottom: 0.75rem;
	padding-bottom: 0.5rem;
}

.sidebar-box ul li { padding:5px 0; }
.sidebar-box ul li a { color:var(--verde_zapfy); }
.sidebar-box ul li a:hover { color:#111; }



/*** PAGINA DE RECURSOS ===============================*/



/*** PAGINA DE CONTATO ===============================*/
body.page-id-25 {
	background:#F4F4F4;
}


.box_main {
	padding:20px;
	background:#EEE;
	border-radius:20px;
	margin-bottom:30px;
}

.box_main h4 {font-size:22px}
.box_main p {font-size:15px; padding: 0; margin: 5px 0}
.box_main .btn {margin:15px 0 0 0}



/*** FORMS ===============================*/
form input, textarea, select {
	font-size:12px;
	border:1px solid #CCC;
	padding:10px;
	border-radius:7px;
	width: 100%;
}

form input:focus, textarea:focus {
	background:#F4F4F4;
	outline:1px solid var(--verde_zapfy);
}

form label {width: 50%; float: left; padding:0 10px }

form label {
	font-size:14px;
	color: var(--verde_zapfy);
	display: block;
	margin:0 0 15px 0
}

form.wpcf7-form .btn {
	width: 100% !important;
	cursor: pointer !important;
}


form.wpcf7-form label {width: 100%; float: left; padding:0 10px }

#wpcf7-f86-p55-o3 form.wpcf7-form label {width: 50%; float: left; padding:0 10px }
/*#wpcf7-f86-p55-o3 form.wpcf7-form select {border:2px solid red; display: block;}*/


.label_100 {width: 100% !important}
.label_50 {width: 48% !important}


/*** ENTRY ===============================*/
.entry {	
	font-family: "Helvetica Neue", Arial, sans-serif;
	font-size: 1.2rem;
}

.entry h1,
.entry h2,
.entry h3,
.entry h4,
.entry h5,
.entry h6 {
	margin:0 0 1rem;
	color: var(--verde_zapfy);
}

.entry h1 { font-size: 2rem; }
.entry h2 { font-size: 1.75rem; }
.entry h3 { font-size: 1.5rem; }
.entry h4 { font-size: 1.25rem; }
.entry h5 { font-size: 1.1rem; }
.entry h6 { font-size: 1rem; }

.entry p {
	margin-bottom: 1.5rem;
	word-break: break-word;
}

.entry strong {
	font-weight: bold;
	color: #000;
}

.entry em {
	font-style: italic;
}

.entry a {
	color:var(--verde_zapfy);
	text-decoration: underline;
	transition: color 0.3s ease;
}

.entry a:hover {
	background:var(--hover-dark);
	color:#FFF;
	text-decoration: none;
}

.entry ul,
.entry ol {
	margin: 1.5rem 0;
	padding-left: 2rem;
}

.entry ul li,
.entry ol li {
	margin-bottom: 0.75rem;
}

.entry blockquote {
	margin: 2rem 0;
	padding: 1rem 1.5rem;
	border-left: 4px solid #ccc;
	background: #f9f9f9;
	font-style: italic;
	color: #555;
}

.entry img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 2rem auto;
	border-radius: 4px;
}

.entry figure {
	margin: 2rem 0;
	text-align: center;
}

.entry figcaption {
	font-size: 0.9rem;
	color: #666;
	margin-top: 0.5rem;
}

.entry table {
	width: 100%;
	border-collapse: collapse;
	margin: 2rem 0;
}

.entry th,
.entry td {
	border: 1px solid #ddd;
	padding: 0.75rem;
	text-align: left;
}

.entry th {
	background-color: #f5f5f5;
	font-weight: bold;
}

.entry code {
	background: #f4f4f4;
	padding: 0.2em 0.4em;
	font-family: monospace;
	font-size: 0.95rem;
	border-radius: 3px;
}

.entry pre {
	background: #f4f4f4;
	padding: 1rem;
	overflow-x: auto;
	font-family: monospace;
	border-radius: 4px;
}

.entry hr {
	border: none;
	border-top: 1px solid #ddd;
	margin: 2rem 0;
}

.entry iframe,
.entry video {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 2rem 0;
}

@media (max-width: 768px) {
	.entry {
		font-size: 1rem;
		padding: 1.5rem 1rem;
	}

	.entry h1 { font-size: 1.6rem; }
	.entry h2 { font-size: 1.4rem; }
	.entry h3 { font-size: 1.2rem; }
}





/*** LISTAGEM ===============================*/
.lista_zapfy {
	list-style: none;
	padding: 0;
	margin: 0;
	font-size: 16px;
	color: #333;
	display: flex;
	justify-content: space-between;
	gap: 25px;
	flex-wrap: wrap;  
}
.lista_zapfy > li {
	background: #F4F4F4;
	padding: 20px 24px;
	border-radius:10px;
	min-width: 400px;
	flex: 1;
}
.lista_zapfy > li > ul > strong {
	display: block;
	font-size: 20px;
	color: var(--verde_zapfy);
	font-weight: 600;
}
.lista_zapfy > li > ul {
	list-style: none;
	padding-left: 0;
	margin-bottom:30px;
}
.lista_zapfy > li > ul > li {
	position: relative;
	padding-left: 24px;
	margin-bottom: 10px;
}
.lista_zapfy > li > ul > li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0;
	color: #10b981;
	font-weight: bold;
}


.site_header_mobile {display: none}

/*** MOBILE ===============================*/
@media (max-width: 768px) {
	.layout {
		flex-direction: column;
	}

	.sidebar {
		flex: 1 1 auto;
		margin-top: 2rem;
	}
}


@media screen and (max-width: 1024px) {

	.recursos .btn{margin:20px 0;}

	.novidades {padding-bottom:20px}
	.novidades .tag {margin:20px 0 10px 0 }

	.planos_container {padding:0 20px}
	
	.contato_cta {border-radius:20px}
	.contato_cta .btn{margin:20px 0;}

	.copy h6, .copy strong, .copy p {font-size:12px}

	.lista_zapfy > li {min-width:auto}
	.modal {max-width: auto;}
	.modal .plano_page {width: auto;}

	footer {text-align: center;}
	footer .flex {display: inline-block;}
	footer .flex .link_footer {display: block; margin:10px 0}

	.porque {padding:20px 0}
	.porque .btn{margin:20px 0;}

	.container {
		padding: 0 20px;
	}

	/* Títulos principais menores */
	.titulo_principal,
	.frase {
		font-size: 32px;
		line-height: 38px;
	}

	.grid-15, 
	.grid-20, 
	.grid-24, 
	.grid-27, 
	.grid-35, 
	.grid-40, 
	.grid-45, 
	.grid-50, 
	.grid-48, 
	.grid-49,  
	.grid-60, 
	.grid-70, 
	.grid-30, 
	.grid-80, 
	.width-2, 
	.width-4,
	.width-5, 
	.width-6, 
	.width-6, 
	.width-7, 
	.width-7, 
	.width-100 {width: 100% }

	.grid-50,
	.grid-40,
	.grid-30,
	.grid-20,
	.grid-80,
	.width-24,
	.width-25,
	.width-35,
	.width-49,
	.width-55,
	.width-60,
	.width-65,
	.width-74,
	.width-75 {
		width: 100% !important;
	}

	.site_header { display:none; }

	.site_header_mobile {
		display: block;
		position: fixed;
		width: 100%;
		margin: 0 auto;
		top: 0;
		left: 50%;
		transform: translate(-50%);
		background: #FFF; 
		padding:10px 0;
		z-index: 9999;
		border:1px solid rgba(38, 48, 56, .12);    
		box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, .08), 0px 4px 6px -2px rgba(0, 0, 0, .03);
	}

	.site_header_mobile nav a {margin:0 15px}

	.site_header_mobile .btn {
		font-size: 16px;
		line-height: 15px;		
		padding: 10px 15px;
		width: auto;
	}

	.btn-outline {		
		line-height: 20px;
		position: relative;
		background:#EEE;
		padding: 10px 15px;
		border-radius: 7px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		font-weight: 700;
		text-align: center;
		width: max-content;
		width: -moz-max-content;
		border: 2px solid var(--verde_zapfy);
	}

	.btn-outline i {color:var(--verde_zapfy);}

	.menu-container {
		display: none;
		overflow: hidden;
		max-height: 0;
		transition: max-height 0.4s ease, padding 0.3s ease;
	}

	.menu-container.open {		
		display: block;
		max-height: 500px;
	}

	.menu-container ul {
		list-style: none;
		padding: 10px 0;
		margin: 0;
	}

	.menu-container li {
		padding: 12px 20px;
		border-bottom: 1px solid #eee;
	}

	.menu-container li:hover { background-color: #f0f0f0; }
	.menu-container li:last-child { border-bottom: none; }

	/* Esconde o botão e o menu no desktop */
	@media (min-width: 768px) {
		.menu-button,
		.menu-container {
			display: none !important;
		}
	}
	
	.hero {padding-top:100px}
	.hero ul li {font-size:15px;}


	.display_flex_center {display: inline-block; }
	.box_white {margin-bottom:30px; }

	/* Botões centralizados */
	.btn {
		width: 100%;
		justify-content: center;
	}

	/* Tabela de planos responsiva */
	.tabela_planos_item,
	.taxas_item {
		width: 100%;
		margin-right: 0;
	}

	.footer_cols {
		columns: 1;
	}

	.contato_cta {
		width: 100%;
		padding: 20px;
	}
}

