/* melhorias.css - camada aplicada por cima do CSS original do tema (all.css).
 * 1) CSS personalizado que o WordPress injetava na pagina (front-all-inline-css);
 * 2) substitutos estaticos do menu mobile, do botao de WhatsApp e dos formularios;
 * 3) pequenas melhorias visuais e de responsividade. */

/* ---------- 1. CSS personalizado que vinha inline no WordPress ---------- */
.screens .linkarea img {
	box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.10);
	transition: all .3s ease;
	border-radius: 2px;
}
.screens .linkarea img:hover {
	box-shadow: 0px 2px 20px 0px rgba(0,0,0,0.16);
	margin-top: -10px;
}
.w-header { text-align: center; }
.w-header .grid-1-5 { display: inline-block; float: none; vertical-align: top; }
.w-header h3 { margin: 0px; font-weight: 600; color: #fff; }
.w-header p { margin-top: 0.5em }
.w-header .sep-3 { opacity: 0.2; }
.w-header h1, .w-header h4, .w-header p, .w-white { color: #fff !important; }
.big-text { font-size: 1em; line-height: 1em; font-weight: 100; }
.plugin-logos img { padding: 0px 20px; display: inline-block; }
.more-testimonials { text-align: center; padding: 20px 30px; border: 1px solid #D9D9D9; }
.more-testimonials h3 { margin-bottom: 9px; margin-top: 6px; }
.more-testimonials p { margin-top: 0px; }
.dark-bg h2 { color: #fff !important; }
@media (max-width: 958px) {
	.twitter-button { margin-bottom: 20px; }
	.w-header h1 { font-size: 1.8em; }
	.w-hide-bg { padding: 0px !important; background-image: none !important; }
	.dark-bg { background-image: none !important; }
	.w-mobile-hide { display: none; }
	.w-hide-bg .push { display: none; }
}

/* ---------- 2. Base ---------- */
body { background: #fff; }
.screen-reader-text:focus { outline: 2px solid #f3a630; }

/* Telefones e e-mail viraram links, mas sem mudar a aparencia do texto */
a[href^="tel:"], a[href^="mailto:"], footer.main-footer .accent-1 a, footer.main-footer .accent-1 a:hover,
.top-nav a, .page-content a[href^="tel:"] {
	font: inherit;
	color: inherit;
	text-decoration: none;
}
.top-nav a:hover, footer.main-footer .textwidget p a:hover, .page-content a[href^="tel:"]:hover { text-decoration: underline; }
footer.main-footer .accent-1 a:hover { color: #fff; transition: color .3s; }

/* ---------- 3. Menu mobile (substitui o plugin vamtam-push-menu) ---------- */
@media (max-width: 959px) {
	.responsive-layout .mp-menu {
		background-color: #191919; /* o original tinha fundo #EDEDED com texto branco (ilegivel) */
		transition: transform .5s cubic-bezier(.22, .61, .36, 1);
		will-change: transform;
		overflow: visible;
		box-shadow: 2px 0 12px rgba(0,0,0,.35);
	}
	.responsive-layout .mp-menu.is-open { transform: translateX(270px); }
	.responsive-layout .mp-menu .mp-level { overflow-y: auto; -webkit-overflow-scrolling: touch; }
	.responsive-layout .mp-menu .mp-level-header h2 { color: #f3a630; }
	.responsive-layout .mp-menu ul li > a { color: #fff; box-shadow: inset 0 -1px rgba(255,255,255,.08); }
	.responsive-layout .mp-menu ul li > a:hover,
	.responsive-layout .mp-menu ul li > a.current-menu-item { color: #f3a630; }
	.responsive-layout .mp-menu .mp-back { color: #fff; }
	.responsive-layout #mp-menu #mp-menu-trigger {
		left: 100%;
		top: var(--mp-trigger-top, 38px);
		visibility: visible;
		opacity: 1;
		transition: opacity .3s;
	}
	.responsive-layout .mp-pusher.mp-pushed::after { background: rgba(0,0,0,.45); }
	/* Enquanto o JS nao roda, o botao do menu fica visivel do mesmo jeito */
	.responsive-layout .mp-menu:not(.is-open) .mp-level .mp-level { display: none; }
}

/* ---------- 4. Botao flutuante de WhatsApp (substitui o plugin Click to Chat) ---------- */
.wa-float {
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 99999;
	width: 50px;
	height: 50px;
	display: block;
	border-radius: 14px;
	box-shadow: 0 4px 14px rgba(0,0,0,.25);
	transition: transform .25s ease, box-shadow .25s ease;
}
.wa-float svg { display: block; width: 50px; height: 50px; pointer-events: none; }
.wa-float:hover, .wa-float:focus-visible { transform: translateY(-3px) scale(1.04); box-shadow: 0 8px 20px rgba(0,0,0,.3); outline: none; }
.wa-float:focus-visible { box-shadow: 0 0 0 3px #fff, 0 0 0 6px #25D366; }
@media print { .wa-float { display: none; } }

/* ---------- 5. Formularios (substituem o Contact Form 7) ---------- */
.mapform-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
div.wpcf7.mapform { position: relative; }
div.wpcf7.mapform p { margin-bottom: 1em; }
div.wpcf7.mapform label { display: block; text-align: left; }
div.wpcf7.mapform .wpcf7-form-control-wrap { display: block; margin-top: 6px; }
div.wpcf7.mapform input[type=text], div.wpcf7.mapform input[type=email], div.wpcf7.mapform input[type=tel] {
	transition: border-color .25s, box-shadow .25s;
}
div.wpcf7.mapform input[type=text]:focus, div.wpcf7.mapform input[type=email]:focus, div.wpcf7.mapform input[type=tel]:focus {
	border-color: #f3a630 !important;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,.1), 0 0 0 2px rgba(243,166,48,.25) !important;
}
div.wpcf7.mapform input:user-invalid { border-color: #D94729 !important; }
div.wpcf7.mapform .wpcf7-submit {
	background-color: #f3a630;
	color: #fff;
	border: 0;
	padding: 18px 28px;
	font: 14px/1.15 Montserrat, Arial, sans-serif;
	cursor: pointer;
	transition: background-color .3s, transform .15s;
}
div.wpcf7.mapform .wpcf7-submit:hover { background-color: #4A4F55; }
div.wpcf7.mapform .wpcf7-submit:active { transform: translateY(1px); }
div.wpcf7.mapform .wpcf7-submit:focus-visible { outline: 3px solid rgba(243,166,48,.5); outline-offset: 2px; }
div.wpcf7.mapform .mapform-erro {
	margin: 1em 0 0;
	padding: 12px 16px;
	border: 2px solid #D94729;
	color: #4a4a4a;
	font-size: 13px;
	text-align: left;
}
div.wpcf7.mapform .mapform-erro a { color: #D94729; font-weight: bold; }

/* ---------- 6. Melhorias visuais ---------- */
/* Caixas de servico da home: leve destaque ao passar o mouse */
#main .services { transition: transform .3s ease, box-shadow .3s ease; border-radius: 2px; }
#main .services:hover { transform: translateY(-4px); box-shadow: 0 10px 24px rgba(0,0,0,.06); }
#main .services .icon { transition: transform .3s ease; display: inline-block; }
#main .services:hover .icon { transform: scale(1.1); }

/* Fotos do escritorio (Sobre Nos) */
.page-content img.aligncenter { border-radius: 2px; box-shadow: 0 2px 8px rgba(0,0,0,.08); height: auto; max-width: 100%; }

/* Botoes: transicao suave */
.vamtam-button { transition: background-color .3s, color .3s, border-color .3s; }

/* Imagens nunca estouram a coluna */
.page-content img, footer img { max-width: 100%; height: auto; }

/* Celular: texto justificado vira alinhado a esquerda (evita "rios" de espaco) e colunas respiram */
@media (max-width: 767px) {
	.page-content p[style*="justify"], .page-content h5[style*="justify"], .page-content li[style*="justify"],
	.page-content ul[style*="justify"], footer.main-footer p[style*="justify"] { text-align: left !important; }
	.page-content .grid-1-6 .push, .page-content .grid-1-4 > .push:only-child { display: none; }
	#intro .left-border:before { display: none; }
	#intro h4 { margin-top: 1.2em; }
	.copyrights p[style*="left"] { text-align: center !important; }
	.copyrights .grid-1-4 { text-align: center; }
}
@media (max-width: 479px) {
	.page-header h1 { font-size: 26px !important; }
	.page-content h2 { font-size: 22px; line-height: 1.25; }
	.page-content h3 { font-size: 16px; }
	div.wpcf7.mapform .wpcf7-submit { width: 100%; }
}
