/*--------------------------------------------------------------------- File Name: style.css ---------------------------------------------------------------------*/


/*--------------------------------------------------------------------- import Files ---------------------------------------------------------------------*/

@import url(animate.min.css);
@import url(normalize.css);
@import url(icomoon.css);
@import url(css/font-awesome.min.css);
@import url(meanmenu.css);
@import url(owl.carousel.min.css);
@import url(swiper.min.css);
@import url(slick.css);
@import url(jquery.fancybox.min.css);
@import url(jquery-ui.css);
@import url(nice-select.css);

/*--------------------------------------------------------------------- skeleton ---------------------------------------------------------------------*/

* {
    box-sizing: border-box !important;
    transition: ease all 0.5s;
}

html {
    scroll-behavior: smooth;
}

body {
    color: #616161;
    font-size: 14px;
    font-family: 'Poppins', sans-serif;
    line-height: 1.80857;
    font-weight: normal;
    overflow-x: hidden;
}

a {
    color: #1f1f1f;
    text-decoration: none !important;
    outline: none !important;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    letter-spacing: 0;
    font-weight: normal;
    position: relative;
    padding: 0 0 10px 0;
    font-weight: normal;
    line-height: normal;
    color:  #616161;
    margin: 0
}

h1 {
    font-size: 24px
}

h2 {
    font-size: 22px
}

h3 {
    font-size: 18px
}

h4 {
    font-size: 16px
}

h5 {
    font-size: 14px
}

h6 {
    font-size: 13px
}

*,
*::after,
*::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #212121;
    text-decoration: none!important;
    opacity: 1
}

button:focus {
    outline: none;
}

ul,
li,
ol {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

p {
    margin: 20px;
    font-weight: 300;
    font-size: 15px;
    line-height: 24px;
}

a {
    color: #222222;
    text-decoration: none;
    outline: none !important;
}

a,
.btn {
    text-decoration: none !important;
    outline: none !important;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

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

 :focus {
    outline: 0;
}

.paddind_bottom_0 {
    padding-bottom: 0 !important;
}

.btn-custom {
    margin-top: 20px;
    background-color: transparent !important;
    border: 2px solid #ddd;
    padding: 12px 40px;
    font-size: 16px;
}

.lead {
    font-size: 18px;
    line-height: 30px;
    color: #767676;
    margin: 0;
    padding: 0;
}

.form-control:focus {
    border-color: #ffffff !important;
    box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .25);
}

.navbar-form input {
    border: none !important;
}

.badge {
    font-weight: 500;
}

blockquote {
    margin: 20px 0 20px;
    padding: 30px;
}

button {
    border: 0;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.full {
    float: left;
    width: 100%;
}

.layout_padding {
    padding-top: 100px;
    padding-bottom: 0px;
}

.padding_0 {
    padding: 0px;
}


/* header section start */

.header_section {
    width: 100%;
    float: left;
    background-image: url(../images/banner-bg.png);
    height: auto;
    background-size: 100%;
}

.custom_nav-container {
        background-color: #fff;
        padding: 0;
        margin: 15px 0;
    }

    #navbarSupportedContent .navbar-nav {
        width: 100%;
        display: flex;
    }

    #navbarSupportedContent .nav-item {
        flex: 1;
    }

    #navbarSupportedContent .nav-link {
        text-align: center;
        text-transform: uppercase;
        color: black;
    }

    #navbarSupportedContent .nav-link.navbar-brand {
        margin: 0;
        display: flex;
        justify-content: center;
        text-transform: none;
        font-weight: bold;
        position: relative;
    }

    #navbarSupportedContent .nav-link.navbar-brand span {
        z-index: 2;
    }

    #navbarSupportedContent .nav-link.navbar-brand span span {
        color: white;
    }

    #navbarSupportedContent .nav-link.navbar-brand::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color:  #FFC72C;
        transform: scale(1.25);
        border-radius: 5px;
    }

/* header section end */


 /* banner section start – versões ajustadas */
.banner_section {
  width: 100%;
  float: left;
  background-image: url(../images/banner-bg.png);
  background-size: cover;          /* cobre toda a área sem distorcer */
  background-position: center;     /* centraliza o fundo */
  background-repeat: no-repeat;
  height: auto;
  /* RESPIRO: topo 40, laterais 0, baixo 60 (evita colar na próxima seção) */
  padding: 40px 0 60px;
  margin: 0;
  
}

/* alinha verticalmente texto e imagem no grid do banner */
.banner_section .row { 
  align-items: center;             /* funciona pois .row do Bootstrap é flex */
}

.banner_taital_main {
  width: 100%;
  float: left;
  padding-top: 16px;               /* antes 60 – aproxima do topo */
  padding-left: 48px;              /* antes 100 – menos recuo lateral */
}

.banner_taital {
  width: 100%;
  font-size: 48px;
  color: #ffffff;
  font-weight: bold;
  line-height: 1.15;               /* aproxima linhas do título */
  margin: 0 0 6px 0;               /* menos espaço até o subtítulo */
}

/* subtítulo abaixo do H1 (se for h2 dentro do banner) */
.banner_taital_main h2 {
  margin: 0 0 8px 0;               /* reduz gap com o parágrafo */
}

/* parágrafo do banner */
.banner_text {
  width: 100%;
  font-size: 16px;
  color: #ffffff;
  margin: 6px 0 0 0;               /* evita espaço extra acima */
  line-height: 1.5;
  text-align: justify;
}

/* coluna da imagem – impede sensação de corte e dá respiro */
.banner_img {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-right: 20px;             /* um respiro da borda direita */
}
.banner_img img {
  max-width: 92%;                  /* não encostar na borda */
  height: auto;
  object-fit: contain;             /* respeita proporção da arte */
}

/* ===== Responsivo ===== */
@media (max-width: 1200px) {
  .banner_taital_main { padding-left: 32px; }
  .banner_img img { max-width: 88%; }
}
@media (max-width: 992px) {
  .banner_section { padding: 28px 0 40px; }
  .banner_taital_main { padding-left: 24px; padding-top: 8px; }
  .banner_taital { font-size: 40px; }
  .banner_img img { max-width: 80%; }
}
@media (max-width: 576px) {
  .banner_taital { font-size: 32px; }
  .banner_taital_main { padding-left: 16px; }
  .banner_img img { max-width: 72%; }
}


/* banner section end */


/* about section start */

.about_section {
  padding-top: 40px;  /* reduza se quiser mais compacto */
  padding-bottom: 40px;
}

.about_taital {
    width: 100%;
    font-size: 36px;
    color: #1b1b1b;
    font-weight: bold;
    text-transform: uppercase;
    padding-top: 50px;
}

.about_taital::after {
    position: absolute;
    content: '';
    width: 80px;
    border: 4px solid  #FFC72C;
    left: 0px;
    right: initial;
    bottom: 0px;
}

.about_text {
    width: 70%;
    font-size: 14px;
    color: #1b1b1b;
    margin: 0px;
    padding-top: 40px;
}

.readmore_btn {
    width: 170px;
    float: left;
    padding-top: 40px;
}

.readmore_btn a {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #fefefd;
    background-color:  #FFC72C;
    padding: 10px;
    border-radius: 5px;
    text-align: center;
}

.readmore_btn a:hover {
    color: #fefefd;
    background-color: #474646;
}

.arrow_icon {
    padding-left: 15px;
}

#main_slider a.carousel-control-prev {
    left: -90px;
    top: 150px;
}

#main_slider a.carousel-control-next {
    right: -90px;
    top: 150px;
    color: #ffffff;
    background-color: #474646;
}

#main_slider .carousel-control-next,
#main_slider .carousel-control-prev {
    width: 50px;
    height: 50px;
    opacity: 1;
    font-size: 40px;
    color: #ffffff;
    background-color: #de6624;
    border-radius: 5px;
    margin: 0 auto;
    text-align: center;
    box-shadow: 0px 0px 20px 0px #dedede;
}

#main_slider .carousel-control-next:focus,
#main_slider .carousel-control-next:hover,
#main_slider .carousel-control-prev:focus,
#main_slider .carousel-control-prev:hover {
    color: #ffffff;
    background-color: #474646;
}


/* about section end */

/* models section start */

.models_section {
    width: 100%;
    float: left;
}

.models_taital {
    width: 100%;
    font-size: 40px;
    color: #1b1b1b;
    font-weight: bold;
    text-transform: uppercase;
    padding-top: 50px;
    text-align: center;
}

.models_taital::after {
    position: absolute;
    content: '';
    width: 80px;
    border: 4px solid  #FFC72C;
    left: 0px;
    right: 0px;
    bottom: 0px;
    margin: 0 auto;
    text-align: center;
}

.models_section_2 {
    width: 100%;
    background-color: #ffffff;
    border-radius: 5px;
    height: auto;
    padding: 20px;
    box-shadow: 0px 0px 20px 10px #e9e9e8;
    margin-top: 60px;
}

.carolo_text {
    width: 100%;
    font-size: 20px;
    color: #262625;
    font-weight: bold;
    padding-top: 60px;
}

.number_text{
    padding-right: 10px;
    color: #e9e9e8;
}

.ullamco_text{
    width: 100%;
    font-size: 16px;
    color: #4e4e4e;
    margin: 30px 0px 0px 0px;
}

.price_main {
    width: 100%;
    display: flex;
}

.price_text{
    width: 100%;
    float: left;
    font-size: 16px;
    color: #3e3e3d;
    margin: 0px;
    padding-top: 50px;
}

.read_btn {
    width: 250px;
    float: left;
    padding-top: 30px;
}

.read_btn a {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #fefefd;
    background-color:  #FFC72C;
    padding: 10px;
    border-radius: 5px;
    text-align: center;
}

.read_btn a:hover {
    color: #fefefd;
    background-color: #474646;
}

.arrow_icon {
    padding-left: 15px;
}

/* models section end */

.choose_section_2 {
    width: 100%;
    float: left;
    background-color:  #FFC72C;
    height: auto;
    padding: 90px 0px;
    margin-top: 30px;
}

.rated_text {
    width: 100%;
    float: left;
    font-size: 30px;
    color: #fefefd;
    font-weight: bold;
    padding-bottom: 0px;
}

.house_text {
    width: 100%;
    float: left;
    font-size: 20px;
    color: #fefefd;
    font-weight: bold;
    margin: 0px;
    text-transform: uppercase;
}

.padding_10{
    padding-right: 15px;
}

/* blog section start */

.blog_section {
    width: 100%;
    float: left;
}

.blog_taital {
    width: 100%;
    float: left;
    font-size: 40px;
    color: #262626;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
}

.blog_taital::after {
    position: absolute;
    content: '';
    width: 80px;
    border: 4px solid  #FFC72C;
    left: 0px;
    right: 0px;
    bottom: 0px;
    margin: 0 auto;
    text-align: center;
}

.blog_section_2 {
    width: 100%;
    float: left;
    padding-top: 30px;
}

.blog_box {
    width: 100%;
    background-color: #fefefd;
    height: auto;
}

.blog_text {
    width: 100%;
    font-size: 24px;
    color: #2d2d2d;
    padding: 0px 0px 10px 0px;
    font-weight: bold;
    text-align: center;
}

.lorem_text {
    width: 70%;
    font-size: 16px;
    color: #3c3c3c;
    margin: 0 auto;
    text-align: center;
}

.read_bt {
    width: 175px;
    margin: 0 auto;
    text-align: center;
    padding-top: 30px;
}

.read_bt a {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #fefefd;
    background-color:  #FFC72C;
    padding: 10px;
    border-radius: 5px;
    text-align: center;

}

.read_bt a:hover {
    color: #fefefd;
    background-color: #474646;
}

.blog_img {
    width: 100%;
    text-align: center;
}

.btn_main {
    width: 100%;
    position: relative;
    top: -30px;
}

.date_text {
    width: 320px;
    margin: 0 auto;
    text-align: center;
    display: flex;
}

.date_text a {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #fefefd;
    text-align: center;
    background-color:  #FFC72C;
    padding: 10px;
}

.date_text a:hover {
    color: #000000;
    background-color: #fefefd;
    box-shadow: 0px 5px 20px 3px #e9e9e8;
}

.date_text.active a {
    color: #000000;
    background-color: #fefefd;
    box-shadow: 0px 5px 20px 3px #e9e9e8;
}


/* blog section end */

/* client section start */

.client_section {
    width: 100%;
    float: left;
    padding-bottom: 90px;
}
.client_taital{
    width: 100%;
    float: left;
    font-size: 40px;
    color: #000;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
}
.client_text{
    width: 100%;
    float: left;
    font-size: 16px;
    color: #000;
    margin: 0px;
    text-align: center;
}

.customer_section_2 {
    width: 100%;
    float: left;
    padding-top: 100px;
}

.box_main {
    width: 90%;
    float: right;
    background-color: #ffffff;
    padding: 0px 50px 0px 50px;
    box-shadow: 0px 0px 18px -6px;
    margin-bottom: 10px;
}

.customer_text {
    width: 100%;
    font-size: 14px;
    color: #737372;
    margin: 0 auto;
}

.quick_icon {
    text-align: center;
    position: relative;
    top: 10px;
}

.customer_main {
    width: 100%;
    display: flex;
    margin-top: 50px;
}

.customer_left {
    width: 30%;
    float: left;
}

.customer_right {
    width: 100%;
    float: left;
    margin-top: 0px;
    padding-left: 200px;
}

.customer_name {
    width: 100%;
    float: left;
    font-size: 26px;
    font-weight: bold;
    color: #001431;
}
.enim_text {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #737372;
    margin: 0px;
}

.customer_img {
    position: absolute;
    top: -60px;
    left: 60px;
}

/* client section end */

/* contact section start */

.contact_section {
    width: 100%;
    float: left;
    background-color: #001740;
    height: auto;
    background-size: 100%;
}

.contact_taital{
    width: 100%;
    float: left;
    font-size: 40px;
    color: #ffffff;
    font-weight: bold;
    text-transform: uppercase;
    text-align: center;
}

.contact_section_2 {
    width: 60%;
    margin: 0 auto;
}

 .contact_section .map_form_container .map_container { display: none; } 
 .contact_section .map_form_container.map_show form { display: none; } 
 .contact_section .map_form_container.map_show .map_container { display: block; }

.mail_section {
    width: 100%;
    float: left;
    margin-top: 30px;
}

.mail_text {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #929191;
    border-bottom: 1px solid #6f6f6f !important;
    background-color: transparent;
    padding: 14px 15px 0px 0px;
    margin-bottom: 10px;
    border: 0px;
}

input.mail_text::placeholder {
    color: #929191;
}

.massage-bt {
    width: 100%;
    height: 50px;
    font-size: 16px;
    color: #929191;
    border-bottom: 1px solid #6f6f6f !important;
    background-color: transparent;
    padding: 20px 15px 0px 0px;
    margin-bottom: 10px;
    border: 0px;
}
textarea#comment::placeholder {
    color: #929191;
}

.map_btn_main {
    width: 100%;
    float: right;
}

.send_bt {
    width: 160px;
    float: right;
}

.send_bt a {
    width: 100%;
    text-align: center;
    font-size: 18px;
    color:  #FFC72C;
    border: 3px solid  #FFC72C;
    padding: 10px;
    text-transform: uppercase;
    margin-top: 10px;
    display: block;
    font-weight: bold;
}

.send_bt a:hover {
    color: #ffffff;
    border: 3px solid #ffffff;
}

.map_bt {
    width: 160px;
    float: right;
    margin-right: 15px;
}

.map_bt a {
    width: auto;
    text-align: center;
    font-size: 18px;
    color:  #FFC72C;
    border: 3px solid  #FFC72C;
    padding: 10px 10px;
    text-transform: uppercase;
    margin-top: 10px;
    display: block;
    font-weight: bold;
}

.map_bt a:hover {
    color: #ffffff;
    border: 3px solid #ffffff;
}

.map_center{
    width: auto;
}
.map_main {
    width: 100%;
    float: left;
    padding-top: 40px;
}

.contact_img img {
    height: 390px;
}


.social_icon {
    width: 100%;
    display: inline-block;
    text-align: center;
    margin-top: 40px;
}
.social_icon ul {
    margin: 0px;
    padding: 0px;
    display: inline-block;
}

.social_icon li {
    float: left;
}

.social_icon li a {
    float: left;
    padding: 5px 15px;
    background-color: #ffffff;
    color: #000;
    border-radius: 100%;
    font-size: 22px;
    margin-right: 5px;
    width: 50px;
    text-align: center;
    margin-top: 10px;
}

.social_icon li a:hover {
    background-color:  #FFC72C;
    color: #ffffff;
}

.location_main {
    width: 100%;
    float: left;
    padding-top: 50px;
}

.location_text {
    width: 100%;
    text-align: center;
}

.location_text ul {
    margin: 0px;
    padding: 0px;
    display: inline-block;
}

.location_text li {
    float: left;
    color: #ffffff;
    font-size: 16px;
    padding: 0px 20px;
}

.location_text a {
    color: #ffffff;
}

.location_text li a:hover {
    color:  #FFC72C;
}

.padding_left_15 {
    padding-left: 10px;
}

/* contact section end */



/* copyright section start */

.copyright_section {
    width: 100%;
    float: left;
    background-color: #001740;
    height: auto;
}

.copyright_text {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #fff;
    text-align: center;
    margin-left: 0px;
}

.copyright_text a {
    color: #fff;
}

.copyright_text a:hover {
    color:  #FFC72C;
}

/* copyright section end */

.margin_top90 {
    margin-top: 90px;
}
.title_bar{
  display:block; width:90px; height:4px; background:#FFC72C;
  margin:10px auto 0 auto; border-radius:2px;
}

.section_card{
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

.icon_list{ list-style:none; padding-left:0; margin:0; }
.icon_list li{
  display:flex; align-items:flex-start; gap:10px; margin-bottom:10px;
}
.icon_badge{
  flex:0 0 36px; height:36px; width:36px;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:50%; background:#FFC72C; color:#0b1221; font-size:18px;
}

/* Equipe */
.team_card{
  background:#fff; color:#222; border-radius:14px;
  padding:20px; box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.team_header{
  display:flex; align-items:center; gap:16px; margin-bottom:12px;
}
.avatar-lg{
  width:90px; height:90px; object-fit:cover; border-radius:50%;
  border:4px solid #f5f7fb; box-shadow:0 4px 12px rgba(0,0,0,.15);
}
.custom_carousel_control{ filter:invert(1) contrast(2); }

@media (max-width: 992px){
  .avatar-lg{ width:72px; height:72px; }
}
@media (max-width: 576px){
  .team_card{ padding:14px; }
  .icon_badge{ width:30px; height:30px; font-size:16px; }
}

.models_taital {
  text-align: center;
  font-size: 38px;
  font-weight: 700;
  color: #0c2461;
  margin-bottom: 15px;
}
.title_bar {
  display: block;
  width: 80px;
  height: 4px;
  background: #FFC72C;
  margin: 0 auto 30px auto;
  border-radius: 4px;
}
.team_card {
  background: #ffffff;
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 30px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
  height: 100%;
}
.team_card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.15);
}
.avatar-lg {
  width: 130px;
  height: 130px;
  object-fit: cover;
  border-radius: 50%;
  border: 4px solid #FFC72C;
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}
.team_desc {
  font-size: 14px;
  color: #555;
  line-height: 1.4;
  min-height: 60px;
}
.btn-outline-dark {
font-size: 12px;
  border: 1px solid #FFC72C;
  color: #333;
  background: #fff;
}
.btn-outline-dark:hover {
  background: #FFC72C;
  color: #fff;
  border-color: #FFC72C;
}
.custom_carousel_control {
  filter: invert(1) contrast(2);
}
.carousel-control-prev,
.carousel-control-next {
  width: 5%;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
  background-size: 30px;
}
.carousel-control-prev {
  left: -50px;
}
.carousel-control-next {
  right: -50px;
}
.atuacao_card {
  background: #ffffff;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 30px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
  height: 100%;
}
.atuacao_card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.15);
}
.atuacao_img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: 8px;
  border: 3px solid #FFC72C;
}
.atuacao_card h4 {
  font-size: 20px;
  font-weight: 600;
  margin-top: 10px;
  color: #0c2461;
}
.team_desc {
  font-size: 14px;
  color: #555;
  line-height: 1.5;
  margin-top: 10px;
  min-height: 80px;
}
.btn-outline-dark {
    font-size: 12px;
  border: 1px solid #FFC72C;
  color: #333;
  background: #fff;
}
.btn-outline-dark:hover {
  background: #FFC72C;
  color: #fff;
  border-color: #FFC72C;
}
.carousel-control-prev,
.carousel-control-next {
  width: 5%;
}
.carousel-control-prev {
  left: -50px;
}
.carousel-control-next {
  right: -50px;
} 
.blog_taital {
  color: #0a2a43;
  font-weight: 700;
  font-size: 38px;
  margin-bottom: 20px;
}

.blog_card {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 91, 150, 0.1);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.blog_img img {
  width: 100%;
  height: 230px;
  object-fit: cover;
  display: block;
  border-bottom: 3px solid #0ea5e9; /* azul Arandu */
}

.tag_label a {
  background-color: #005b96; /* azul escuro Arandu */
  color: #fff;
  padding: 6px 14px;
  font-size: 13px;
  border-radius: 0 0 8px 8px;
  display: inline-block;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.blog_box {
  padding: 20px;
}

.blog_text {
  color: #0a2a43;
  font-weight: 700;
  margin-bottom: 10px;
}

.lorem_text {
  color: #444;
  font-size: 14px;
  line-height: 1.6;
}

/* 🔸 NOVO BOTÃO PADRÃO ARANDU */
.read_bt a {
  background-color: #ffffff;       /* fundo branco */
  color: #444444;                  /* texto cinza escuro */
  font-weight: 600;
  text-decoration: none;
  padding: 10px 24px;
  border: 2px solid #FFC72C;       /* borda amarela */
  border-radius: 6px;
  display: inline-block;
  transition: all 0.3s ease;
  text-align: center;
  letter-spacing: 0.3px;
}

.read_bt a:hover {
  background-color: #FFC72C;       /* fundo amarelo no hover */
  color: #ffffff;                  /* texto branco */
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(255, 199, 44, 0.4);
}

/* Setas externas */
#blogCarousel .carousel-control-prev {
  left: -50px;
  width: 4%;
}

#blogCarousel .carousel-control-next {
  right: -50px;
  width: 4%;
}

/* Responsividade */
@media (max-width: 991.98px) {
  #blogCarousel .carousel-control-prev,
  #blogCarousel .carousel-control-next {
    left: 0;
    right: 0;
    width: 8%;
  }

  .blog_img img {
    height: 200px;
  }
}

@media (max-width: 575.98px) {
  .blog_img img {
    height: 180px;
  }
}
/* ====== CONTATO – AJUSTES FINOS ====== */

/* 1) Botão menor, sem quebra de linha e alinhado à direita */
.send_bt { text-align: right; }                /* mantém à direita */
.send_bt a{
  display: inline-flex;                        /* melhor controle vertical */
  align-items: center;
  gap: 8px;
  padding: 10px 22px;                          /* menor que antes */
  font-size: 12px;
  line-height: 1;                              /* evita “esticar” vertical */
  white-space: nowrap;                         /* NÃO quebra o texto */
  border-radius: 8px;
  border: 2px solid #FFC72C;
  background:#fff;
  color:#0a2a43;
  box-shadow: none;
  transition: .25s ease;
}
.send_bt a:hover{
  background:#FFC72C;
  color:#fff;
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(255,199,44,.35);
}

/* 2) Ícones sociais totalmente circulares e centralizados */
.social_icon ul{ list-style:none; padding-left:0; margin-top:24px; }
.social_icon ul li{ display:inline-block; margin: 0 8px; }
.social_icon ul li a{
  width: 48px; height: 48px;                  /* círculo perfeito */
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color:#fff;                                  /* ícone branco */
  background: transparent;                     /* sem “bolha” estranha */
  border: 2px solid #fff;
  transition: .25s ease;
}
.social_icon ul li a:hover{
  background:#FFC72C;
  border-color:#FFC72C;
  color:#fff;
}

/* 3) Linha de contato: remover qualquer fundo e corrigir cores */
.location_text ul{ list-style:none; padding-left:0; margin:24px 0 0; }
.location_text ul li{ margin-bottom:10px; }
.location_text ul li a{
  display:inline-flex; align-items:center; gap:10px;
  text-decoration:none;
  background: transparent !important;          /* remove “placa” azul */
  color:#ffffff;                                /* texto branco p/ contraste */
  font-weight: 500;
}
.location_text ul li a span{ 
  background: transparent !important;           /* garante sem fundo */
  color:#ffffff;                                 /* mantém branco */
}
.location_text ul li a i{
  color:#ffffff;                                 /* ícone branco */
  background: #0a2a43;                          /* mantém o círculo azul */
  border: 2px solid #ffffff;                    /* aro branco */
  width: 36px; height: 36px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
}
html { scroll-behavior: smooth; }

.back-to-top{
  position: fixed;
  right: 22px;
  bottom: 22px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #ffffff;                /* fundo branco */
  border: 2px solid #FFC72C;          /* borda amarela */
  color: #0a2a43;                     /* ícone azul escuro */
  display: none;                      /* aparece só após rolar */
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 16px rgba(0,0,0,.12);
  z-index: 1000;
  transition: .25s ease;
}
.back-to-top:hover{
  background: #FFC72C;                /* hover amarelo */
  color: #ffffff;                     /* ícone branco */
  transform: translateY(-2px);
  box-shadow: 0 10px 18px rgba(255,199,44,.35);
}
@media (max-width: 575.98px){
  .back-to-top{ width: 44px; height: 44px; right: 16px; bottom: 16px; }
}
html { scroll-behavior: smooth; }

.back-to-top{
  position: fixed;
  right: 22px;
  bottom: 22px;
  width: 48px;
  height: 48px;
  display: none;                   /* aparece após rolar */
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ffffff;             /* fundo branco */
  border: 2px solid #FFC72C;       /* borda amarela */
  color: #0a2a43;                  /* ícone azul escuro */
  box-shadow: 0 8px 16px rgba(0,0,0,.12);
  z-index: 1000;
  transition: .25s ease;
}
.back-to-top:hover{
  background: #FFC72C;             /* hover amarelo */
  color: #ffffff;                  /* ícone branco */
  transform: translateY(-2px);  
  box-shadow: 0 10px 18px rgba(255,199,44,.35);
}
@media (max-width: 575.98px){
  .back-to-top{ width: 44px; height: 44px; right: 16px; bottom: 16px; }
}
/* ===== Depoimento: correções mobile ===== */

/* Card mais estável */
.testimonial_card {
  position: relative;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 91, 150, 0.10);
  padding: 20px;
}

/* Contêiner flex */
.customer_main {
  display: flex;
  flex-direction: column;             /* empilha no mobile */
  align-items: center;                /* centraliza tudo */
  gap: 16px;
}

/* Avatar: tamanho e borda */
.customer_img img {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #0EA5E9;
  box-shadow: 0 6px 16px rgba(0,0,0,.08);
}

/* Texto ocupa toda a largura disponível no mobile */
.customer_right {
  width: 100%;
  max-width: 680px;                   /* conforto de leitura */
  text-align: center;                 /* central no mobile */
}

/* Título do depoente */
.customer_name {
  color: #0a2a43;
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 8px;
}

/* Parágrafo: sem “quebrar em coluna” */
.enim_text {
  color: #263238;
  line-height: 1.7;
  font-size: 15px;
  margin: 0;
  word-break: normal;
  overflow-wrap: anywhere;
  white-space: normal;                /* impede empilhamento vertical */
}

/* Ícone de aspas: some no mobile para não poluir */
.quick_icon { display: none; }

/* ===== Desktop e tablets (>=768px) ===== */
@media (min-width: 768px) {
  .customer_main {
    flex-direction: row;              /* lado a lado */
    align-items: flex-start;
    gap: 24px;
  }
  .customer_img img {
    width: 120px;
    height: 120px;
    border-width: 4px;
  }
  .customer_right {
    text-align: left;                 /* leitura padrão no desktop */
    flex: 1 1 auto;                   /* pega a largura que precisar */
  }
  .customer_name {
    font-size: 20px;
  }
  .enim_text {
    font-size: 16px;
  }
  .quick_icon {
    display: block;
    position: absolute;
    right: 20px;
    top: 20px;
  }
  .quick_icon img {
    width: 38px;
    height: 38px;
    opacity: .15;
  }
}

/* Pequenos ajustes para telas muito estreitas */
@media (max-width: 360px) {
  .customer_img img { width: 96px; height: 96px; }
}


/* ===== Grid de Atuação (sem carrossel) ===== */
.grid-atuacao {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

/* 2 colunas no tablet */
@media (max-width: 991.98px) {
  .grid-atuacao {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}

/* 1 coluna no mobile */
@media (max-width: 575.98px) {
  .grid-atuacao {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

/* Card reaproveitando estética Arandu */
.atuacao_card {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 91, 150, 0.10);
  padding: 20px;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.atuacao_card h4 {
  color: #0a2a43;
  font-weight: 700;
  margin-bottom: 10px;
}

.atuacao_img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: 10px;
  border-bottom: 3px solid #0ea5e9; /* mesmo azul do blog */
}

.atuacao_card .team_desc {
  color: #444;
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 16px;
  flex: 1;
}

 /* GRID do blog: 3 cards desktop, 2 tablet, 1 mobile */
.blog_grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media (max-width:991.98px){.blog_grid{grid-template-columns:repeat(2,1fr);gap:24px}}
@media (max-width:575.98px){.blog_grid{grid-template-columns:1fr;gap:20px}}

/* Botão padrão solicitado: fundo branco, fonte cinza escuro, borda amarela;
   hover: fundo amarelo, fonte branca */
.btn-arandu-outline{
  display:inline-block;
  padding:12px 18px;
  border:2px solid #ffc233;
  border-radius:10px;
  background:#fff;
  color:#374151;              /* cinza escuro */
  font-weight:600;
  text-decoration:none;
  transition:.2s;
}
.btn-arandu-outline:hover{
  background:#ffc233;
  color:#fff;
  text-decoration:none;
}

/* Opcional: garantir que o link antigo do read_bt não herde estilos anteriores */
.read_bt a{all:unset}
.read_bt a.btn-arandu-outline{all:revert}

/* (Opcional) Se quiser, remova regras do carrossel antigo para o blog:
   #blogCarousel, .carousel-indicators, .carousel-control-prev/next ... */
{all:revert}

/* (Opcional) Se quiser, remova regras do carrossel antigo para o blog:
   #blogCarousel, .carousel-indicators, .carousel-control-prev/next ... */
.testimonial_card { border-radius: 12px; }
.quick_icon { top: 16px; right: 16px; }
/* ===== Ajustes MOBILE (até 576px) – QUEM SOMOS e rolagem ===== */
@media (max-width: 575.98px){

  /* 1) QUEM SOMOS — 1 card por slide no carrossel */
  #teamCarousel .carousel-item .row > .col-md-5{
    flex: 0 0 100%;
    max-width: 100%;
  }
  /* esconde o 2º card do slide no mobile */
  #teamCarousel .carousel-item .row > .col-md-5 + .col-md-5{
    display: none !important;
  }

  /* 2) Setas dentro da área (evita criar largura extra e barra de rolagem) */
  #teamCarousel .carousel-control-prev{ left: 8px !important; width: 12%; }
  #teamCarousel .carousel-control-next{ right: 8px !important; width: 12%; }

  /* 3) Depoimento — remove posicionamento absoluto do avatar (evita overflow) */
  .customer_img{ position: static !important; left: auto; top: auto; margin: 0 auto 8px; }
}

/* Em telas pequenas/médias, neutralize os offsets negativos genéricos das setas */
@media (max-width: 767.98px){
  .carousel-control-prev{ left: 8px !important; }
  .carousel-control-next{ right: 8px !important; }
}
/* =====================================================
   TEAM – LISTA HORIZONTAL (PORTAL)
===================================================== */

.team-list-item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

/* imagem pequena */
.team-list-thumb {
  width: 96px;
  height: 96px;
  flex-shrink: 0;
  border-radius: 14px;
  overflow: hidden;
  background: #f2f2f2;
}

.team-list-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* conteúdo */
.team-list-content {
  display: flex;
  flex-direction: column;
}

/* tag */
.team-list-tag {
  font-size: 12px;
  font-weight: 600;
  color: #f4c542;
  margin-bottom: 6px;
}

/* nome */
.team-list-title {
  font-size: 18px;
  font-weight: 600;
  color: #0056b3;
  line-height: 1.3;
  margin-bottom: 6px;
}

/* meta */
.team-list-meta {
  font-size: 13px;
  color: #6f6f6f;
  margin-bottom: 6px;
}

/* link */
.team-list-link {
  font-size: 13px;
  font-weight: 600;
  color: #0056b3;
  text-decoration: none;
}

.team-list-link:hover {
  text-decoration: underline;
}

/* =====================================================
   RESPONSIVO
===================================================== */

@media (max-width: 576px) {
  .team-list-item {
    align-items: center;
  }

  .team-list-thumb {
    width: 80px;
    height: 80px;
  }
}
