@charset "UTF-8";
/*!
 * Grupo Carteira na Mão v1.0.0
 * Copyright 2022-2022 Darllon Pádua
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */

 @import url("./variaveis.css");
 @import url("../lib/fontawesome-6.1.1/css/all.css"); /* Importando fontawesome */
 @import url("../lib/bootstrap-5.2.0/css/bootstrap.css"); /* Importando bootstrap */

html{
   overflow-x: hidden
}

*{
   font-size: 15px;
}

h2{
   font-weight: bold;   
}

h1{
   font-weight: bold;
}

video {
   max-width: 100%;
   height: auto;
}

.bg-default{
   background-color: var(--third-color);
}

.color-third-color{
   color: var(--third-color);
}

.bg-rota-secondary{
   background-color: var(--color-secondary-rota);
}

.text-bg-secondary{
   background-color: var(--secondary-color) !important;
}

.desc-pacote p {
   font-size: small !important;
   display: -webkit-box;        /* Para múltiplas linhas */
  -webkit-line-clamp: 7;       /* Limita a 3 linhas */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.container-fluid{
   padding: 0px !important;
}

.p-4{
   padding: 4em !important;
}

p{
   color: var(--second-text-color);
}
 
.logo-principal{
   max-height: 90px;
}

/* Background */
.bg-primary-gcm{
   background-color: var(--primary-color);
}
.bg-light-wi{
   background-color: #FFF;
}
.bg-light-gray{
   background-color: var(--light-gray-1);
}
.bg-faded{
   background-color: var(--faded-secondary-color);
}

.text-secondary{
   color: var(--secondary-color) !important;
}

.color-white{
   color:var( --color-white);
}

.color-rota{
   color: var(--color-rota);
}
/* Background */

 /* menu Principal */
.navbar-nav{
   margin-left: 2em;
}

.nav-link{
   color: var(--link-main-color);
   font-weight: bold;
   /* padding: 0 .9rem 0 .9rem !important; */
}

.nav-link:hover{
   color: var(--secondary-color);
   font-weight: bold;
}

header .menu{
   list-style:none;
   float: right;
}

header .menu-horizontal > .menu{
   margin-right: -6em;
   z-index: 100;
}

header .menu>li{
   position:relative;
   float:left;
}

header .menu > li > a{
   color: var(--link-main-color);
   text-decoration:none;
   padding: 4px 0px;
   display:block;
}

header .menu li:focus ul, header .menu li:focus ul{
   display:block;
   border: 3px solid red;
}

header .menu li a:hover{
   color:var(--secondary-color);
}

header .menu li:hover ul, header .menu li.over ul{
   display:block;
}

header .menu li  ul{
   position:absolute;
   top: 25px;
   left: 0px;
   min-height: 50px;
   background-color:#fff;
   display:none;
   padding-top: 10px;
   padding-left: 0px;
   box-shadow: 0 .5rem 1rem rgba(0,0,0,.15) !important;
   z-index: 200;
}

ul.nav.menu.mod-list li.active {
   color:var(--cor-padrao-1) !important;
   font-weight: 600;
}

header .menu li.current.active {
   font-weight: 600;
}

header .menu li ul li{
   display:block;
   width:200px;
}

header .menu li ul li a{
   color:#333;
   text-decoration:none;
   padding: 10px 30px;
   display:block;
}

header .menu li ul li a:hover{
   background-color: var(--cor-padrao-2);
}
 /* menu Principal */

/* breadcrumb */
.breadcrumb{
   background-color: var(--cor-padrao-1);
   margin-top:1rem;
   font-family: 'Rawline Bold', 'Rawline Regular', 'Rawline', sans-serif;
   font-weight: 700;
   font-style: normal;
   font-size: 12px;
   color: #FFF8F8;
   text-align: left;
   line-height: 22px;
   padding: 0px;
   box-shadow: none;
}

.breadcrumb li a{
   color: #797979;
   font-weight: 100;
}

.breadcrumb i{
   font-size: 1.3rem;
}

.breadcrumb .divider{
   background: url('../images/div-bread.png');
   background-repeat: no-repeat;
   margin: 0px 8px 0 8px;
   padding: 0px 5px 0px 5px;
}

.bradcrumb-icon-home{
   color: #FFF !important;
}

.pathway {
   color: var(--light-gray-1);
   font-weight: 100;
}

/* breadcrumb */

 /* Botoes */
.btn{
   box-shadow: none;
}
.btn-primary{
    background-color: var(--primary-color);
    border: none;
    font-weight: bold;
    padding: .8em;
}

.btn-primary:hover{
    background-color: var(--secondary-color);
}

.btn-link{
   color: var(--primary-color);
   text-decoration: none;
   font-weight: bold;
}

.btn-link:hover, .btn-link:active{
   color: var(--secondary-color);
}

.btn-link-s{
   color: var(--secondary-color);
   text-decoration: none;
   font-weight: bold;
}

.btn-link-s:hover, .btn-link-s:active{
   color: var(--primary-color);
}

.btn-outline-sucess{
   color: var(--primary-color);
   text-decoration: none;
   border: 1px solid var(--primary-color);

}

.btn-outline-sucess:hover{
   background-color: var(--primary-color);
   border-color: var(--primary-color);
   color: var(--light-gray);
   text-decoration: none;

}

.btn-outline-warning{
   color: var(--secondary-color);
   text-decoration: none;

}

.btn-outline-warning:hover{
   background-color: var(--secondary-color);
   border-color: var(--secondary-color);
   color: var(--light-gray);
   text-decoration: none;

}

  /* Botoes */

  /* Cards */
.card{
   border: none;
   border-radius: 10px;
}

.round {
   border-radius: 100%;
   overflow: hidden;
   height: 80px;
   width: 80px;
   background: var(--gradiente-backgroud);
   display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: center;
}

.round i {
   font-size: 2em;
   color: var(--light-gray);
}

.hr-card{
   max-width: 5px;
   border-bottom: 3px solid var(--secondary-color);;
   padding-right: 0px !important;
}

.box-cards{
   position: relative;
   top: -8em;
}

/* Cards */

/* Banner */
.banner-box{
   position: relative;
   width: 100%;
   max-height: 800px;
}

.banner-box > .banner {
   width: 100%;
   overflow: hidden;
   display: flex;
   justify-content: center;
   align-items: center;
}
.banner video {
   width: 100%;
   z-index: -1;
 }
 .banner .content {
   position: relative;
   z-index: 1;
   max-width: 1000px;
   margin: 0 auto;
   text-align: center;
 }
 .banner .content h1 {
   margin: 0;
   padding: 0;
   font-size: 5.5em;
   text-transform: uppercase;
   color: #ffff;
 }
 .banner .content p {
   font-size: 1.5em;
   color: #ffff;
 }
 .banner .content img {
   width: 40px;
   height: 40px;
 }

/* Banner */

/* Contador */
.box-contador{
   height: 200px;
   display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: center;
}
.contador{   
   display: inline-grid;
   flex-direction: row;
   justify-content: center;
   align-items: center;
}
.contador span{
   font-size: 4em;
   color: var(--primary-color);
   font-weight: bold;
}
.contador small{
  text-align: center;
  font-weight: bold;
}
/* Contador */

/* Content */
.hr-content{
   min-width: 150px;
   border-bottom: 5px solid var(--secondary-color);
}
/* Content */

/* About */
/* .body-depoimentos p{
   font-size: 1.1em !important;
} */

.body-depoimentos {
   max-height: 160px; /* define a largura máxima da div */
   overflow: hidden; /* esconde o conteúdo excedente */
}

.box-about{
   padding: 3em 0 3em 0;
}

.box-about .card-body{
   background-color: var(--color-secondary-rota);
   height: 250px;   
}


.box-about .card-text p{
   color: var(--color-white);
}

.box-about .btn-link{
   padding-left: 0px;
}
/* About */

/* Service */
.box-service{
   padding-top: 3em;
}
.txt-muted{
   color: var(--primary-color);
   font-weight: bold;
}

.icon-slide-service{
   font-size: 30px;
}

.price-service{
   font-size: 1.3em;
   color: var(--secondary-color);
   font-weight: 600;
}

.badge-service{
   border: 1px solid var(--primary-color);
   color: var(--primary-color);
   padding: 0.3em;
   text-decoration: none;
   border-radius: 15px;
   font-size: 0.7em;
   margin-left: 0.7em;
}
/* Service */

/* testimonial */
.testimonial-name{
   color: var(--color-rota);
}
/* testimonial */

/* Service online */
.btn-service-online{
   border: 1px solid var(--primary-color);
   font-weight: 500;
}
/* service online */

/* Footer */
.central-de-atendimento{
   font-size: 24px;
   margin-left:10px;
   color:var(--color-white);
}

.central-de-atendimento-wpp{
   font-size: 24px;
   margin-left:5px;
   color: #25d366;
}

.endereco i {
   color: var(--primary-color);
}

.menu-footer{
   padding-top: 2.5rem;
}

.menu-footer .lead {
   font-size: 1rem;
   font-weight: 100;
}

.menu-footer .nav {
   display: block;
}

.menu-footer .h4 {
   font-weight: 700;
   font-style: normal;
   font-size: 22px;
   line-height: 25px;
   color: var(--color-rota) !important;
}

.menu-footer .endereco{
   line-height: 30px;
}

.menu-footer .nav a{
   font-size: 1em;
   line-height: 30px;
   text-decoration: none;
   font-weight: 500;
   color: var(--color-white);
}

.menu-footer .nav a:hover{
   color: var(--secondary-color);
}

.menu-footer .grupo-text{
   font-size: 9px;
   color: var(--color-white);
}

.border-footer-unidades{
   border-left: solid 1px var(--color-white) !important;
   padding-left: 2em;
}

/* Footer */

/* copy */
.p-copy{
   padding: 1.5em !important;
}

.social-networks-top a{
   color: var(--light-gray);   
   text-decoration: none;
}

.social-networks-top i{
   font-size: 1.8em !important;
}

.social-networks-top a:hover{
   font-size: .9em !important;
   color: var(--light-gray);
}

.social-networks a{
   color: var(--color-white);   
   text-decoration: none;
}

.social-networks i{
   font-size: 1.8em !important;
}

.social-networks a:hover{
   color: var(--secondary-color);
}
/* copy */

/* WhatsApp */
.btn-whatsapp{
   position: fixed;
   right: 0;
   bottom: 2%;
   width: 15em;
   z-index: 1;
}
/* WhatsApp */

/* WebMail */

.panel-login {
  border-color: #ccc;
  width: 100%!important;
}
.panel-login>.panel-heading {
  color: #00415d;
  background-color: #fff;
  border-color: #fff;
  text-align:center;
}
.panel-login>.panel-heading a{
  text-decoration: none;
  color: #666;
  font-weight: bold;
  font-size: 15px;
  -webkit-transition: all 0.1s linear;
  -moz-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.panel-login>.panel-heading a.active{
  color: #029f5b;
  font-size: 18px;
}
.panel-login>.panel-heading hr{
  margin-top: 10px;
  margin-bottom: 0px;
  clear: both;
  border: 0;
  height: 1px;
  background-image: -webkit-linear-gradient(left,rgba(0, 0, 0, 0),rgba(0, 0, 0, 0.15),rgba(0, 0, 0, 0));
  background-image: -moz-linear-gradient(left,rgba(0,0,0,0),rgba(0,0,0,0.15),rgba(0,0,0,0));
  background-image: -ms-linear-gradient(left,rgba(0,0,0,0),rgba(0,0,0,0.15),rgba(0,0,0,0));
  background-image: -o-linear-gradient(left,rgba(0,0,0,0),rgba(0,0,0,0.15),rgba(0,0,0,0));
}
.panel-login input[type="text"],.panel-login input[type="email"],.panel-login input[type="password"] {
  height: 45px;
  border: 1px solid #ddd;
  font-size: 16px;
  -webkit-transition: all 0.1s linear;
  -moz-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.panel-login input:hover,
.panel-login input:focus {
  outline:none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  border-color: #ccc;
}
.btn-login {
  background-color: #59B2E0;
  outline: none;
  color: #fff;
  font-size: 14px;
  height: auto;
  font-weight: normal;
  padding: 14px 0;
  text-transform: uppercase;
  border-color: #59B2E6;
}
.btn-login:hover,
.btn-login:focus {
  color: #fff;
  background-color: #53A3CD;
  border-color: #53A3CD;
}
.forgot-password {
  text-decoration: underline;
  color: #888;
}
.forgot-password:hover,
.forgot-password:focus {
  text-decoration: underline;
  color: #666;
}

.btn-register {
  background-color: #1CB94E;
  outline: none;
  color: #fff;
  font-size: 14px;
  height: auto;
  font-weight: normal;
  padding: 14px 0;
  text-transform: uppercase;
  border-color: #1CB94A;
}
.btn-register:hover,
.btn-register:focus {
  color: #fff;
  background-color: #1CA347;
  border-color: #1CA347;
}

.hr-grupo{
   width: 100%;
   height: 3px;
   background: rgb(49,205,50);
   background: linear-gradient(90deg, var(--primary-color) 0%, var(--color-rota) 50%, var(--secondary-color) 100%);
   /* background: linear-gradient( to right, rgba(49,205,50,1) 25%,  rgba(245,223,22,1) 25%,  rgba(245,223,22,1) 70%, rgba(255,141,36,1) 70%, rgba(255,141,36,1) 100% ); */
}

.logo-unidades{
   max-height: 200px;
}

/* Nav-pills */
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
   color: var(--light-gray);
   background-color: var(--primary-color);
}

.nav-pills .nav-link {
   border: none !important;
   border-radius: 0 !important;
}

.nav-pills{
   border-bottom: 1px solid #CCC;
}

.border-grupo{
   border-left: 5px solid;
   background-clip: padding-box;
   border-image: linear-gradient(to bottom, rgba(255,141,36,1), rgba(245,223,22,1), rgba(49,205,50,1)) 1;
   /* border-image: linear-gradient(to bottom, rgba(), rgba(245,223,22,1), rgba(255,141,36,1)) 1; */
}

textarea {
   resize: none;
}

#count_message {
 background-color: smoke;
 margin-top: -20px;
 margin-right: 5px;
}

.banner .carousel-control-prev,
.banner .carousel-control-next {
  background-color: var(--primary-color); /* mudar cor de fundo */
  color: var(--primary-color); /* mudar cor do ícone */
  font-size: 24px; /* mudar tamanho da fonte */
  width: 50px; /* mudar largura */
  height: 50px; /* mudar altura */
  border-radius: 50%; /* mudar o raio da borda */
  margin: 0px 1em 0 1em;
  position: absolute; /* definir posição absoluta */
  top: 50%; /* definir a distância do topo em 50% da div pai */
  transform: translateY(-50%); /* ajustar a posição vertical do botão */
}

.filiais-checkout {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   background-color: transparent;
   border: 1px solid var(--success-color);
   border-radius: 50%;
 }
 
 .filiais-checkout:checked {
   background-color: var(--success-color) !important;
 }

.step-title{
   color: var(--primary-color);
}

.step-divider span {
   background-color: var(--secondary-color) !important;
}

.stepper .steps-container .steps .step .step-indicator .step-node{
   background: var(--light-gray-2);
}

.stepper .steps-container .steps .step.active .step-node{
   background: var(--light-gray);   
}

.step-node{
   color: var(--secondary-color) !important;
   border: 2px solid var(--secondary-color) !important;
}

.stepper .steps-container .steps .step.prev .step-node {
   background-color: var(--faded-secondary-color);
}

.stepper .steps-container .steps .step.prev .step-divider span:first-child {
   background: var(--faded-color) !important;
}

.stepper .steps-container .steps .step.prev .step-divider span:nth-child(2) {
   background: var(--faded-color) !important;
}

.form-step {
   display: none;
}
   
.form-step:first-child {
   display: block;
}
   
.progress {
   margin-bottom: 1rem;
}
   
.progress-bar {
   background-color: var(--primary-color);
}
   
.invalid-feedback {
   display: block;
}

.progressbar {
   display: flex;
   justify-content: space-between;
   list-style-type: none;
   margin-bottom: 20px;
}

.progressbar li {
   flex: 1;
   text-align: center;
   position: relative;
   font-size: 20px;
}

.progressbar li i {
   font-size: 35px;
}

.progressbar li {
   color: var(--secondary-color);
}

.progressbar li i {
   color: var(--faded-color);
}

.progressbar li.active, .progressbar li.active i {
   color: var(--primary-color);
}

.progressbar li {
   display: flex;
   align-items: center;
   justify-content: center;
   flex-direction: column;
 }
 
.progressbar li i {
   margin-bottom: 10px;
}

.form-step label{
   font-weight: 500;
   font-size: 1.1em;
}

.checkout-santa-helena, .checkout-rota, .checkout-rio{   
   font-weight: 500;
}

label.checkout-rota{
   color: var(--color-rota);
   border: solid 1px var(--color-rota);
}

label.checkout-rota:hover{
   color: var(--color-white);
   background-color: var(--color-rota);
   border: solid 1px var(--color-rota);
}

.btn-check:checked + .btn.checkout-rota {
   color: var(--color-white);
   background-color: var(--color-rota);
   border: solid 1px var(--color-rota);
}

label.checkout-santa-helena{
   color: var(--color-santa-helena);
   border: solid 1px var(--color-santa-helena);
}

label.checkout-santa-helena:hover{
   color: var(--color-white);
   background-color: var(--color-santa-helena);
   border: solid 1px var(--color-santa-helena);
}

.btn-check:checked + .btn.checkout-santa-helena {
   color: var(--color-white);
   background-color: var(--color-santa-helena);
   border: solid 1px var(--color-santa-helena);
}

label.checkout-rio{
   color: var(--color-rio);
   border: solid 1px var(--color-rio);
}

label.checkout-rio:hover{
   color: var(--color-white);
   background-color: var(--color-rio);
   border: solid 1px var(--color-rio);
}

.btn-check:checked + .btn.checkout-rio {
   color: var(--color-white);
   background-color: var(--color-rio);
   border: solid 1px var(--color-rio);
}

.checkout-social-midia i{
   font-size: 2em;
}

.checkout-social-midia a{
   padding: 5px;
   text-decoration: none;
}

.checkout-social-midia .divisor{
   padding: 10px;
}

.checkout-social-midia a:nth-child(2) i{
   color:#833AB4;
}

.checkout-social-midia a:nth-child(3) i{
   color:#1877f2;
}

.checkout-social-midia a:nth-child(4) i{
   color:#25d366;
}

.checkout-social-midia a:nth-child(5) i{
   color:#1da1f2;
}

.checkout-detalhes{
   background-color: var(--light-gray-1);
   padding: 20px;
   border-radius: 10px;
}

.hr-grupo-l{
   border-left: 3px solid;
   border-image: var(--gradiente-backgroud);
   border-image-slice: 1;
}

.checkout-slide .card{
   max-width: none !important;
}

.btn-orcamento{
   background-color: var(--primary-color);
   color: var(--color-white);
   font-weight: bold;
   font-size: 1.2em;
   border: none;
}

.btn-orcamento:hover{
   background-color: var(--secondary-color);
   color: var(--color-white);
   font-weight: bold;
}

.btn-cancelar-contrato{
   background-color: var(--secondary-color);
   color: var(--color-white);
   font-weight: bold;
   font-size: 1.2em;
   border: none;
}

.btn-cancelar-contrato:hover{
   background-color: var(--primary-color);
   color: var(--color-white);
   font-weight: bold;
}

.accordion-button{
   font-weight: 700;
   font-style: normal;
   font-size: 20px;
   line-height: 25px;
   padding: 1.2em;
   color: var(--color-secondary-rota) !important;
   background-color: var(--light-gray-1);
}

.accordion-button:not(.collapsed) {
    color: #0c63e4;
    background-color: #ececec;
    box-shadow: inset 0 -1px 0 rgba(0,0,0,.125);
}

.card-chekout-extra img{
   height: 116px;
   border-radius: 7px !important;
   border-top-right-radius: 0 !important;
   border-bottom-right-radius: 0 !important;
}
.card-chekout-office img{
   border-radius: 0px !important;
}

.checkout-carrinho{
   background-color: var(--secondary-color);
}

.rating-color{
   color:#fbc634 !important;
}

.ratings i{    
   color:#cecece;
}

.text-decoration-line-through{
   text-decoration-color: red !important;
}

/* Login Checkout */
.card-signin {
   border-radius: 0rem;
}
 
.card-signin .card-title {
   margin-bottom: 2rem;
   font-weight: 300;
   font-size: 1.5rem;
}
 
.card-signin .card-body {
   padding: 2rem;
}
 
.form-signin {
   width: 100%;
}
 
.form-signin .btn {
   font-size: 80%;
   border-radius: 0rem;
   letter-spacing: .1rem;
   font-weight: bold;
   padding: 1rem;
   transition: all 0.2s;
}
 

.form-control:focus {
   box-shadow: 10px 0px 0px 0px #ffffff !important;
}
 
.btn-google {
   color: white;
   background-color: #ea4335;
}
 
.btn-facebook {
   color: white;
   background-color: #3b5998;
}

.form-label-group input{
   border-radius: 0;
}

#loading {
   display: none;
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: rgba(255, 255, 255, 0.7);
   text-align: center;
   padding-top: 20%;
   z-index: 1000;
}

/* Offcanvas Mobile Menu */
@media (max-width: 991.98px) {
  #mobileMenuOffcanvas .offcanvas-header,
  #mobileMenuOffcanvas .offcanvas-body {
    background: var(--light-gray-1);
  }
  #mobileMenuOffcanvas .offcanvas-title {
    color: var(--primary-color);
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: 0.5px;
  }
  #mobileMenuOffcanvas .mod-menu,
  #mobileMenuOffcanvas .navbar-nav,
  #mobileMenuOffcanvas ul.menu {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  #mobileMenuOffcanvas .mod-menu li,
  #mobileMenuOffcanvas .navbar-nav li,
  #mobileMenuOffcanvas ul.menu > li {
    width: 100%;
    border-bottom: 1px solid var(--light-gray-2);
  }
  #mobileMenuOffcanvas .mod-menu li:last-child,
  #mobileMenuOffcanvas .navbar-nav li:last-child,
  #mobileMenuOffcanvas ul.menu > li:last-child {
    border-bottom: none;
  }
  #mobileMenuOffcanvas .mod-menu li a,
  #mobileMenuOffcanvas .navbar-nav li a,
  #mobileMenuOffcanvas ul.menu > li > a {
    display: block;
    width: 100%;
    padding: 1.05em 1.3em;
    font-size: 1.08rem;
    font-weight: 500;
    line-height: 1.3;
    color: var(--primary-color);
    background: none;
    border: none;
    font-weight: 600;
    text-align: left;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
  }
  #mobileMenuOffcanvas .mod-menu li a:hover,
  #mobileMenuOffcanvas .navbar-nav li a:hover,
  #mobileMenuOffcanvas ul.menu > li > a:hover {
    background: var(--color-rota, #EFC614);
    color: var(--color-white);
  }
  #mobileMenuOffcanvas .mod-menu li.active > a,
  #mobileMenuOffcanvas .navbar-nav li.active > a,
  #mobileMenuOffcanvas ul.menu > li.active > a {
    color: var(--secondary-color);
    background: var(--light-gray-2);
  }
  #mobileMenuOffcanvas .mod-menu li ul,
  #mobileMenuOffcanvas .navbar-nav li ul,
  #mobileMenuOffcanvas ul.menu > li ul {
    position: static !important;
    display: none !important;
    background: none;
    box-shadow: none;
    padding: 0;
    margin: 0;
  }
  #mobileMenuOffcanvas .mod-menu li.open > ul,
  #mobileMenuOffcanvas .navbar-nav li.open > ul,
  #mobileMenuOffcanvas ul.menu > li.open > ul {
    display: block !important;
  }
  #mobileMenuOffcanvas .mod-menu li ul li a,
  #mobileMenuOffcanvas .navbar-nav li ul li a,
  #mobileMenuOffcanvas ul.menu > li ul li a {
    font-size: 0.98rem;
    padding-left: 2.2em;
    color: var(--primary-color);
    background: none;
  }
  #mobileMenuOffcanvas .mod-menu li ul li a:hover,
  #mobileMenuOffcanvas .navbar-nav li ul li a:hover,
  #mobileMenuOffcanvas ul.menu > li ul li a:hover {
    color: var(--secondary-color);
    background: var(--color-rota, #EFC614);
  }
  #mobileMenuOffcanvas .offcanvas-footer {
    background: var(--light-gray-2);
    border-top: 1px solid var(--color-rota);
  }
  #mobileMenuOffcanvas .offcanvas-footer .text-center img {
    filter: drop-shadow(0 2px 8px var(--color-rota));
  }
  #mobileMenuOffcanvas .offcanvas-footer .text-center a {
    color: var(--color-rota);
  }
  #mobileMenuOffcanvas .offcanvas-footer .text-center a:hover {
    color: var(--secondary-color);
  }
}

/* Rodapé mobile customizado */
@media (max-width: 991.98px) {
  .footer-mobile-gcnm {
    background: transparent !important;
    color: #fff !important;
  }
  .footer-mobile-gcnm * {
    color: #fff !important;
  }
  .footer-mobile-gcnm hr {
    border-top: 1px solid rgba(255,255,255,0.18) !important;
  }
  .footer-mobile-gcnm .central-de-atendimento {
    background: transparent !important;
    color: #fff !important;
    box-shadow: none !important;
    border: 1px solid rgba(255,255,255,0.18);
  }
  .footer-mobile-gcnm a,
  .footer-mobile-gcnm a:visited,
  .footer-mobile-gcnm a:active {
    color: #fff !important;
  }
  .footer-mobile-gcnm a:hover {
    color: #eee !important;
  }
  .footer-mobile-gcnm img {
    filter: brightness(0) invert(1);
    /* Deixa logos brancas, se necessário */
  }
}

/* Cor do ícone do botão hamburguer mobile */
@media (max-width: 991.98px) {
  .navbar-toggler .navbar-toggler-icon,
  .navbar-toggler-icon.color-third-color {
    background-image: none !important;
    width: 1.8em;
    height: 1.8em;
    position: relative;
    display: inline-block;
  }
  .navbar-toggler .navbar-toggler-icon::before,
  .navbar-toggler .navbar-toggler-icon::after,
  .navbar-toggler .navbar-toggler-icon span {
    content: '';
    display: block;
    height: 3px;
    width: 100%;
    background: var(--primary-color);
    border-radius: 2px;
    margin: 6px 0;
    transition: all 0.2s;
  }
  .navbar-toggler .navbar-toggler-icon span {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  .navbar-toggler .navbar-toggler-icon::before {
    position: absolute;
    top: 0;
    left: 0;
  }
  .navbar-toggler .navbar-toggler-icon::after {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

/* Serviços On-line no menu mobile */
@media (max-width: 991.98px) {
  .mobile-servicos-online {
    margin-top: 1.5rem;
  }
  .servicos-online-title {
    color: var(--secondary-color);
    font-weight: bold;
    font-size: 1.08rem;
    margin-bottom: 0.8rem !important;
    letter-spacing: 0.2px;
  }
  .mobile-servicos-online .btn-orcamento {
    width: 100%;
    margin-bottom: 0.35rem;
    font-size: 1.01rem;
    padding: 0.85em 1em;
    border-radius: 6px;
    background-color: var(--primary-color);
    color: var(--color-white);
    border: none;
    font-weight: bold;
    transition: background 0.2s, color 0.2s;
  }
  .mobile-servicos-online .btn-orcamento:hover,
  .mobile-servicos-online .btn-orcamento:focus {
    background-color: var(--secondary-color);
    color: var(--color-white);
  }
}

@media (max-width: 767.98px) {
   .menu-footer .h4 {
      font-size: 1.1rem;
   }
   .menu-footer .grupo-text {
      font-size: 11px;
   }
   .menu-footer .nav a {
      font-size: 1em;
   }
   .border-footer-unidades {
      border-left: none !important;
      padding-left: 0.5em;
      margin-top: 1em;
   }
   .menu-footer {
      padding-top: 1.5rem;
   }
   .central-de-atendimento {
      font-size: 18px;
   }
   .btn-whatsapp {
      width: 10em;
   }
   .box-about {
      padding: 1.5em 0 1.5em 0;
   }
   .p-4 {
      padding: 2em !important;
   }
   .banner .content h1 {
      font-size: 2.2em;
   }
   .banner .content p {
      font-size: 1em;
   }
   .banner-box {
      max-height: 350px;
   }
   .banner-box > .banner {
      flex-direction: column;
      align-items: center;
      justify-content: center;
      min-height: 120px;
   }
   .banner .carousel-item img {
      object-fit: cover;
      height: 180px;
      width: 100%;
   }
   .banner .content {
      padding: 0 10px;
      max-width: 100%;
   }
   .col-lg-4, .col-md-2, .col-lg-6, .col-md-4, .col-md-3, .col-md-5 {
      flex: 0 0 100%;
      max-width: 100%;
   }
   .row {
      flex-wrap: wrap;
   }
   .box-about .card-body {
      height: auto;
   }
   .btn-orcamento {
      font-size: 1em;
      margin-bottom: 0.5em;
   }
   .social-networks {
      margin-bottom: 1em;
   }
   #diferenciaisCarousel .carousel-control-prev,
   #diferenciaisCarousel .carousel-control-next {
      width: 40px;
      height: 40px;
      top: 50%;
      transform: translateY(-50%);
      opacity: 0.9;
      z-index: 2;
      background: var(--primary-color, #007bff);
      border-radius: 50%;
   }
   #diferenciaisCarousel .carousel-control-prev {
      left: 10px;
   }
   #diferenciaisCarousel .carousel-control-next {
      right: 10px;
   }
   .container {
      padding: 0.6rem !important;
   }
}

@media (max-width: 575.98px) {
   .menu-footer .h4 {
      font-size: 0.95rem;
   }
   .menu-footer .grupo-text {
      font-size: 12px;
   }
   .central-de-atendimento {
      font-size: 14px;
   }
   .btn-whatsapp {
      width: 6em;
   }
   .banner .content h1 {
      font-size: 1.2em;
   }
   .banner-box {
      max-height: 200px;
   }
   .box-about {
      padding: 1em 0 1em 0;
   }
   .p-4 {
      padding: 1em !important;
   }
   .btn-orcamento {
      font-size: 0.9em;
   }
   .logo-principal {
      max-height: 60px;
   }
}

@media (max-width: 767.98px) {
   .progressbar {
       font-size: 0.9rem;
       padding-left: 0;
   }
   .progressbar li {
       font-size: 0.9rem;
       min-width: 120px;
       padding: 0 4px;
   }
   .form-step .btn {
       font-size: 1rem;
       padding: 0.5rem 0.75rem;
   }
   .form-step label {
       font-size: 1rem;
   }
   .form-step .input-group-lg > .form-control,
   .form-step .input-group-lg > .form-select {
       font-size: 1rem;
       padding: 0.5rem 0.75rem;
   }
}