.elementor-12 .elementor-element.elementor-element-8b28c18{--display:flex;}.elementor-12 .elementor-element.elementor-element-4332285{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}@media(max-width:767px){.elementor-12 .elementor-element.elementor-element-4332285{margin:44px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for html, class: .elementor-element-bf9ea02 */.acoes-flutuantes {

    position: fixed;
    right: 25px;
    bottom: 25px;

    display: flex;
    flex-direction: column;

    align-items: center;

    gap: 15px;

    z-index: 99999;

}


/* BOTÃO LIGAR */

.botao-ligar {

    width: 180px;
    height: 55px;

    background: #e53935 !important;

    color: #ffffff !important;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    border-radius: 50px;

    text-decoration: none !important;

    font-size: 17px;

    font-weight: 800;

    font-family: Arial, sans-serif;

    box-shadow:
    0 8px 25px rgba(229,57,53,.45);

    transition: .3s;

}


.botao-ligar:hover {

    background:#c62828 !important;

    transform: translateY(-3px);

}



.telefone-icon {

    font-size: 24px;

    line-height:1;

}



/* BOTÃO WHATSAPP */


.botao-whatsapp {

    width:75px;

    height:75px;

    background:#25D366;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    box-shadow:
    0 10px 30px rgba(0,0,0,.35);

    animation:pulsar-whatsapp 2s infinite;

}



.botao-whatsapp img {

    width:42px;

    height:42px;

}



@keyframes pulsar-whatsapp {


0% {

transform:scale(1);

}


50% {

transform:scale(1.08);

}


100% {

transform:scale(1);

}


}



/* MOBILE */

@media(max-width:600px){


.acoes-flutuantes {

right:15px;

bottom:15px;

}



.botao-ligar {

width:160px;

height:50px;

font-size:15px;

}



.botao-whatsapp {

width:65px;

height:65px;

}


}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6cafd3e */.cta-phone,
.cta-phone:link,
.cta-phone:visited {
    background-color: #d62828 !important;
    color: #ffffff !important;
}

.cta-phone:hover,
.cta-phone:focus,
.cta-phone:active {
    background-color: #b51f1f !important;
    color: #ffffff !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4332285 */.beneficios{

background:#ffffff;

padding:0 20px 55px;

position:relative;

z-index:5;

margin-top:-65px;

}



.beneficios-container{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:repeat(4,1fr);

gap:22px;

}



.card-beneficio{

background:#fff;

border-radius:14px;

padding:30px 22px;

text-align:center;

box-shadow:
0 12px 35px rgba(0,0,0,.18);

transition:.3s;

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0a06adf *//* PADRONIZA TODAS AS IMAGENS DOS SERVIÇOS */

.servico-card .imagem-servico,
.servico-card .imag {
    width: 100%;
    height: 220px;
    overflow: hidden;
}

.servico-card .imagem-servico img,
.servico-card .imag img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d1c771c */.cta-premium{

position:relative;

height:420px;

background-image:url("LINK_DA_FOTO_DE_FUNDO");

background-size:cover;

background-position:center;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

overflow:hidden;

}



.cta-overlay{

position:absolute;

inset:0;

background:
linear-gradient(
90deg,
rgba(0,78,105,.88),
rgba(0,130,150,.75)
);

}



.cta-content{

position:relative;

z-index:2;

max-width:850px;

color:white;

padding:20px;

}



.cta-content span{

font-size:15px;

font-weight:700;

letter-spacing:2px;

color:#9de7ef;

}



.cta-content h2{

font-size:42px;

line-height:1.15;

font-weight:800;

margin:18px 0;

}



.cta-content p{

font-size:20px;

line-height:1.5;

margin-bottom:35px;

color:#f2f7f8;

}



.cta-content a{

display:inline-block;

background:#ffffff;

color:#006080;

font-weight:800;

padding:17px 38px;

border-radius:8px;

text-decoration:none;

font-size:16px;

box-shadow:
0 8px 20px rgba(0,0,0,.25);

transition:.3s;

}



.cta-content a:hover{

transform:translateY(-3px);

}



@media(max-width:768px){

.cta-premium{

height:450px;

}


.cta-content h2{

font-size:30px;

}


.cta-content p{

font-size:17px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3390b5d *//* =========================
   FAQ RESPONSIVO
========================= */

.faq {
    background:#f7f9fa;
    padding:70px 20px;
    overflow:hidden;
}


.faq-container {

    width:100%;
    max-width:900px;
    margin:auto;

}


.faq-titulo {

    text-align:center;
    margin-bottom:40px;

}


.faq-titulo h2 {

    color:#07598c;
    font-size:36px;
    line-height:1.2;
    font-weight:800;

}


.faq-titulo p {

    color:#66727a;
    font-size:17px;

}



/* LISTA */

.faq-list {

    width:100%;
    display:flex;
    flex-direction:column;
    gap:16px;

}



/* CARD */

.faq-item {

    width:100%;
    background:#ffffff;

    border-radius:14px;

    box-shadow:
    0 8px 25px rgba(0,0,0,.10);

    overflow:hidden;

    box-sizing:border-box;

}



/* PERGUNTA */

.faq-item button {

    width:100%;

    min-height:70px;

    padding:20px 25px;

    border:none;

    background:#fff;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:15px;

    text-align:left;

    cursor:pointer;

    box-sizing:border-box;

}



.faq-item button span {

    flex-shrink:0;

    font-size:28px;

    color:#1593a6;

}



/* TEXTO DA PERGUNTA */

.faq-item button {

    font-size:17px;

    line-height:1.4;

    font-weight:700;

    color:#07598c;

    word-break:break-word;

}



/* RESPOSTA */

.faq-resposta {

    width:100%;

    padding:0 25px 25px;

    box-sizing:border-box;

    color:#59656d;

    font-size:16px;

    line-height:1.6;

    word-break:break-word;

}



/* MOBILE */

@media(max-width:600px){


.faq {

    padding:50px 15px;

}



.faq-container {

    width:100%;

}



.faq-titulo h2 {

    font-size:27px;

}


.faq-titulo p {

    font-size:15px;

}



.faq-item button {

    padding:18px 18px;

    font-size:16px;

    align-items:flex-start;

}



.faq-item button span {

    font-size:24px;

}



.faq-resposta {

    padding:0 18px 22px;

    font-size:15px;

}


}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2b83367 */.quem-somos{

background:#f7f9fa;

padding:80px 20px;

}



.quem-container{

max-width:1200px;

margin:auto;

display:flex;

align-items:center;

gap:60px;

}



.quem-imagem{

flex:1;

}



.quem-imagem img{

width:100%;

height:430px;

object-fit:cover;

border-radius:20px;

box-shadow:
0 15px 35px rgba(0,0,0,.15);

}



.quem-conteudo{

flex:1;

}



.quem-conteudo span{

font-size:14px;

font-weight:700;

letter-spacing:2px;

color:#1593a6;

}



.quem-conteudo h2{

font-size:38px;

line-height:1.2;

color:#07598c;

font-weight:800;

margin:15px 0 20px;

}



.quem-conteudo p{

font-size:17px;

line-height:1.7;

color:#59656d;

}



.lista-confianca{

display:grid;

grid-template-columns:1fr 1fr;

gap:15px;

margin:30px 0;

}



.lista-confianca div{

background:white;

padding:14px;

border-radius:10px;

box-shadow:
0 5px 15px rgba(0,0,0,.08);

color:#334;

font-weight:600;

}



.lista-confianca strong{

color:#1593a6;

margin-right:8px;

}



.quem-conteudo a{

display:inline-block;

background:#07598c;

color:white;

padding:15px 30px;

border-radius:8px;

text-decoration:none;

font-weight:700;

}



@media(max-width:900px){

.quem-container{

flex-direction:column;

}


.quem-conteudo h2{

font-size:30px;

}


.lista-confianca{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8a9f7b3 *//* =========================
   FAQ RESPONSIVO
========================= */

.faq {
    background:#f7f9fa;
    padding:70px 20px;
    overflow:hidden;
}


.faq-container {

    width:100%;
    max-width:900px;
    margin:auto;

}


.faq-titulo {

    text-align:center;
    margin-bottom:40px;

}


.faq-titulo h2 {

    color:#07598c;
    font-size:36px;
    line-height:1.2;
    font-weight:800;

}


.faq-titulo p {

    color:#66727a;
    font-size:17px;

}



/* LISTA */

.faq-list {

    width:100%;
    display:flex;
    flex-direction:column;
    gap:16px;

}



/* CARD */

.faq-item {

    width:100%;
    background:#ffffff;

    border-radius:14px;

    box-shadow:
    0 8px 25px rgba(0,0,0,.10);

    overflow:hidden;

    box-sizing:border-box;

}



/* PERGUNTA */

.faq-item button {

    width:100%;

    min-height:70px;

    padding:20px 25px;

    border:none;

    background:#fff;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:15px;

    text-align:left;

    cursor:pointer;

    box-sizing:border-box;

}



.faq-item button span {

    flex-shrink:0;

    font-size:28px;

    color:#1593a6;

}



/* TEXTO DA PERGUNTA */

.faq-item button {

    font-size:17px;

    line-height:1.4;

    font-weight:700;

    color:#07598c;

    word-break:break-word;

}



/* RESPOSTA */

.faq-resposta {

    width:100%;

    padding:0 25px 25px;

    box-sizing:border-box;

    color:#59656d;

    font-size:16px;

    line-height:1.6;

    word-break:break-word;

}



/* MOBILE */

@media(max-width:600px){


.faq {

    padding:50px 15px;

}



.faq-container {

    width:100%;

}



.faq-titulo h2 {

    font-size:27px;

}


.faq-titulo p {

    font-size:15px;

}



.faq-item button {

    padding:18px 18px;

    font-size:16px;

    align-items:flex-start;

}



.faq-item button span {

    font-size:24px;

}



.faq-resposta {

    padding:0 18px 22px;

    font-size:15px;

}


}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-37ca210 */.footer{

background:
linear-gradient(
90deg,
rgba(0,86,110,.92),
rgba(0,145,160,.85)
),
url("LINK_IMAGEM_FUNDO");

background-size:cover;

background-position:center;

padding:60px 20px 20px;

color:white;

}



.footer-container{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:1.2fr 1fr 1.2fr;

gap:50px;

}



.footer-logo img{

width:220px;

margin-bottom:20px;

}



.footer-logo p{

font-size:15px;

line-height:1.6;

max-width:280px;

opacity:.9;

}



.footer h3{

font-size:22px;

margin-bottom:20px;

font-weight:700;

}



.footer a{

display:block;

color:white;

text-decoration:none;

font-size:16px;

margin-bottom:12px;

opacity:.95;

}



.footer a:hover{

opacity:1;

}



.redes{

display:flex;

gap:12px;

margin-top:25px;

}



.redes a{

width:48px;

height:48px;

background:white;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

}



.redes img{

width:24px;

height:24px;

}



.footer-bottom{

border-top:1px solid rgba(255,255,255,.3);

margin-top:40px;

padding-top:20px;

display:flex;

justify-content:center;

align-items:center;

gap:25px;

font-size:14px;

}



@media(max-width:800px){


.footer-container{

grid-template-columns:1fr;

text-align:center;

}


.footer-logo p{

margin:auto;

}


.redes{

justify-content:center;

}


.footer-bottom{

flex-direction:column;

gap:10px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6df0369 */.footer-pera{

background:#151515;

height:130px;

display:flex;

align-items:center;

justify-content:center;

padding:20px;

}



.pera-link{

display:flex;

align-items:center;

gap:25px;

text-decoration:none;

}



.pera-logo img{

width:95px;

height:auto;

}



.pera-texto p{

color:white;

font-size:16px;

line-height:1.25;

font-weight:400;

margin:0 0 8px;

}



.pera-texto span{

color:#8cff00;

font-size:15px;

font-weight:600;

}



.pera-link:hover .pera-texto span{

text-decoration:underline;

}



@media(max-width:600px){


.footer-pera{

height:auto;

padding:25px 15px;

}



.pera-link{

gap:15px;

}



.pera-logo img{

width:75px;

}



.pera-texto p{

font-size:14px;

}



.pera-texto span{

font-size:13px;

}


}/* End custom CSS */