:root{
  --primary:#193b60;
  --primary-dark:#0b3d91;
  --bg:#f8fbff;
  --muted:#ffffff;
  --accent:#ffd166;
  --font-sans: "Questrial", sans-serif;
}

html {
  scroll-behavior: smooth; /* se quiser rolagem suave */
  scroll-padding-top: 100px; /* altura do menu fixo */
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #193b60;
    --bs-btn-border-color: #193b60;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #163556;
    --bs-btn-hover-border-color: #163556;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #193b60;
    --bs-btn-active-border-color: #193b60;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #193b60;
    --bs-btn-disabled-border-color: #193b60;
}
.btn-primary {
    padding: 15px;
}

.questrial-regular {
  font-family: "Questrial", sans-serif;
  font-weight: 400;
  font-style: normal;
}


*{box-sizing:border-box}
body{font-family:var(--font-sans);background:var(--bg);color:#222;margin:0;line-height:1.5;}
a{color:var(--primary);text-decoration:none}
.site-header{background:#193B60;box-shadow:0 2px 8px rgba(13,110,253,0.05);position:sticky;top:0;z-index:50}
.site-header .logo {width: 150px;height: auto;}
.navbar-brand{font-weight:700;color:var(--primary-dark)}
.nav-link{font-size: 15px;color:var(--muted) !important;margin-right:1.7rem;}
.nav-link:hover{color:#d4b36c !important;}
.navbar-toggler {
  border-color: #d4b36c !important; /* opcional - borda dourada */
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23d4b36c' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.btn-whatsapp{
  background: #c1a66d;
  color: #143151;
  border-radius: 6px;
  padding: .45rem .8rem;
  font-weight: 500;
  border: none;
}
.btn-whatsapp:hover{
  background: #a9905c;
}

@media (max-width: 767px) {
  .btn-whatsapp {display: none;}
}
.hero {background-image: url("../assets/img/bg-hero.webp");background-size: cover; min-height: 536px; position:relative; }
.hero{padding-top:4rem;padding-bottom:4rem}
.hero-title{font-size:2.1rem;font-weight:700;margin-bottom:1rem;color:var(--primary-dark)}
.hero .lead{color:var(--muted)}
.hero p {display: block!important;opacity: 1!important;}

.hero-card{background:linear-gradient(180deg, rgba(13,110,253,0.03), transparent);padding:2rem;border-radius:12px;display:flex;justify-content:center;align-items:center}
.hero-card img{max-width:100%;height:260px;object-fit:contain}
.hero {
  padding: 3rem 0;
}

.hero-img {
  position:absolute;
  right:0;
  bottom:0;
  max-height: 85vh;
  object-fit: cover;
}
.hero a:hover {
  background-color: #a9905c!important;
}

#form-home {
    padding: 60px 0;
}

.form-home {
    background-color: #fff;
    box-shadow: 0px 15px 19px rgb(0 0 0 / 5%);
    padding: 54px;
    border-radius: 10px;
    /*margin-top: -92px;*/
    margin-top: -0;
    position: relative;
    z-index: 5;
}
@media (max-width: 767px){
  .form-home {
    background-color: #fff;
    box-shadow: 0px 15px 19px rgb(0 0 0 / 5%);
    padding: 0;
    border-radius: 30px;
    /*margin-top: -92px;*/
    margin-top: 0;
    position: relative;
    z-index: 5;
}
#form-home {
    padding: 10px 0;
   }
}
.form-home .form-simulate .form-floating input {
    font-size: 0.875rem;
    color: #585858;
    box-shadow: none;

    height: calc(3rem + 2px);
}
input:not([type="image" i], [type="range" i], [type="checkbox" i], [type="radio" i]) {
    overflow-clip-margin: 0px !important;
    overflow: clip !important;
}
user agent stylesheet
input[type="hidden" i] {
    appearance: none;
    background-color: initial;
    cursor: default;
    padding: initial;
    border: initial;
}
input[type="hidden" i] {
    display: none !important;
}


.form-home .form-simulate h3 {
    font-size: 1.5rem;
    color: #00223a;
    text-align: center;
}
.form-home .form-simulate p {
    font-size: 1rem;
    color: #585858;
    text-align: center;
    line-height: 1.25;
}
.form-home .form-simulate .form-check-modalities {
  width: 33%;
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 0.375rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .form-home .form-simulate .form-check-modalities {
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 0.375rem;
    margin: 0 auto;
}
.form-floating-mb {
  display: block!important;
}
.form-home .form-simulate {
    padding: 1.25rem 1rem;
    width: 100%;
    max-width: 434px;
    margin: 0 auto;
    border-radius: 2.5rem;
    background-color: #FFFFFF;
    box-shadow: 0px 0px 9px 0.5px rgba(122, 122, 122, 0.7);
}
}
}
.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: .125rem;
}
.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}
.form-home .form-simulate .form-check-modalities .form-check.active {
    background-color: #193b60;
    border: 1px solid #193b60;
}
.form-home .form-simulate .form-check-modalities .form-check {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-basis: 100%;
    border-radius: 7px;
    border: 2px solid #193b60;
    background-color: #FFFFFF;
    margin: 0;
    padding: 0;
}
.form-home .form-simulate .form-check-modalities .form-check .form-check-input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    box-shadow: none;
    margin: 0;
    z-index: -1;
}

.form-home .form-simulate .form-check-modalities .form-check label {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0.313rem 0.25rem;
    cursor: pointer;
}
.form-home .form-simulate .form-check-modalities .form-check .form-check-input:checked ~ label img:nth-child(1) {
    display: none;
}
.form-home .form-simulate .form-check-modalities .form-check label img:nth-child(1) {
    display: block;
}
.form-home .form-simulate .btn-simulate {
    font-size: 1.125rem;
    text-transform: uppercase;
    border-radius: 7px;
    background-color: #193b60;
    border-color: #88d2d4;
    color: #c1a66d;
    height: 60px;
    font-weight: 600;
    padding: 0px 30px 0px 30px;
}
.form-home .form-simulate .btn-simulate:hover {
  background-color: #25507f;
}
.form-home img, svg {
    vertical-align: middle;
}
.form-home .form-check-label {
    margin-top: 6px;
}
.form-home .form-simulate .form-check-marketing input[type="checkbox"]:checked {
    background-color: #193b60;
}
.form-home .form-simulate .form-check-marketing input[type="checkbox"] {
    width: 1.25rem;
    height: 1.25rem;
    border: 1px solid #193b60;
    box-shadow: none;
    margin-top: 0.469rem;
}
.form-home .form-check.active .icon-hover  {
    display: block!important;
}
.form-home .icon-hover {
    margin-left: 0;
    display: none;
}
.form-home .form-simulate .form-simulate .form-check-marketing label {
    font-size: 0.875rem;
    color: #585858;
    line-height: 1.25;
    margin-left: 0.25rem;
}

@media (min-width: 360px) {
    .form-home .form-simulate h3 {
        font-size: 1.625rem;
    }
    .form-home .form-simulate .form-check-modalities .form-check label {
        padding: 0;
        margin: 0 auto;
        width: 77px;
        display: flex;
        justify-content: initial;
    }
    .form-home .form-simulate .form-check-modalities .form-check label {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        padding: 0.313rem 0.25rem;
        cursor: pointer;
    }
}

@media (min-width: 412px) {
    .form-home .form-simulate .form-check-modalities .form-check {
        width: 63px;
        height: 64px;
    }
}
@media (min-width: 540px) {
    .form-home .form-simulate .form-check-modalities .form-check {
        width: 66px;
        height: 67px;
    }
}

.sobre .btn {
  text-transform: uppercase;
  font-weight: 600;
  padding: 20px 30px 20px 30px;
}
.sobre .btn:hover {
  background-color:#25507f ;
}
.sobre img {border-radius: 10px;}
.team-member {padding-right: 35px;}
.team-photo {
   width: 101px;
   height: auto;
   object-fit: cover;
   border-radius: 12%;
   /* overflow: hidden; */
   border: 3px solid #D4B36C;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.hero .col-lg-6 {
    margin-top: 0!important;
}
@media (max-width: 767px) {
  .sobre .list .col-lg-6 {
    margin-bottom: 3rem !important;
}
.hero {
    background-position: 74% 50%;
}
.hero:after {
  content: '';
  position: absolute;
  background-color: #000;
}
.team-member {
    padding-right:0;
}
}
}


.section-title h2{font-weight:700;color:var(--primary-dark)}
.section-title p {
    color: #727171;
}
.service-card{border:0;border-radius:10px;box-shadow:0 8px 20px rgba(13,110,253,0.05)}
.bg-light{background:#fff}

#servicos .card-body img {width:90px;margin-bottom: 15px;}
.card-body {
    text-align: center;
}
.card-title {
    font-weight: 700;
}

#parceiros img {width: 71%;opacity:1;transition:all .3s;margin-top: -83px;}
#parceiros img:hover {opacity:0.5;transition:all .3s;}
#parceiros h3 {font-size: 19px;}
@media (min-width:992px) {
    #parceiros .col-md-3 {width: 14%!important;}
    #parceiros .logo-itau {width: 36%!important;}
    #parceiros .logo-bv {width: 36%!important;}
}
@media (max-width:767px) {
    #parceiros .logo-itau {width: 36%!important;}
    #parceiros .logo-bv {width: 36%!important;}
    #parceiros img {margin-top: -23px;}
}
.parceiros {
  margin-bottom: 100px;
}

.bg-primary {
    --bs-bg-opacity: 1;
    background-color: #193b60 !important;
}

.team-member h5{margin-bottom:.25rem;font-weight:600}
.partner-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 6px 18px rgba(0,0,0,0.04)}
.partner-logo {
  opacity: 0;
  transform: translateY(40px);
}

.contact-form{background:#fff;border-radius:10px}

.banner-int {
  background-image: url("../assets/img/banner-int.webp");
  background-position: 50% 50%;
  background-size: cover;
  height: 350px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.banner-int h1 {
  color: #0c2340;
}
.consorcios {
  background-color: #f8fbff;
  padding: 60px 0;
}
.consorcios .list .img-fit {
  object-fit: cover;
  height: 330px;
}
.consorcios .btn {
  text-transform: uppercase;
  font-weight: 600;
}

@media (max-width:767px){
  .banner-int {
      background-position: 70% 50%;
      height: 200px;
  }
}

/* SECTION ATENDIMENTO */

.atendimento {
  padding: 0 0 80px 0;
}

#atendimento .contact-info {
    margin-bottom: 20px;
    text-align: center;
}

#atendimento .contact-address, #atendimento .contact-phone, #atendimento .contact-email {
    margin-bottom: 20px;
}

#atendimento .contact-info i {
    font-size: 48px;
    display: inline-block;
    margin-bottom: 10px;
    color: #fff;
}
#atendimento .contact-info h3 {
    font-size: 18px;
    margin-bottom: 15px;
    font-weight: bold;
    text-transform: uppercase;
    color: #193b60;
}
#atendimento .contact-info i {
    font-size: 48px;
    display: inline-block;
    margin-bottom: 0;
    color: #c1a66d;
}
#atendimento iframe {
  width: 100%;
  height: 450px;
  border-radius: 7px;
}
@media (min-width: 768px) {
  #atendimento .contact-phone {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
}
#atendimento .contact-address, #atendimento .contact-phone, #atendimento .contact-email {
    padding: 20px 0;
}
}

footer {background:transparent;color:var(--muted)}
footer .ri-map-pin-line {
    height: 20px;
    position: relative;
    display: block;
    float: left;
}

@media (min-width: 1024px) {
  footer .f-sobre {
    padding-right: 110px;
}
}

/* Simple responsive tweaks */
@media(min-width:992px){
  .hero-title{font-size:2.6rem}
}

/* Small GSAP helper classes */
.fade-in{opacity:0;transform:translateY(18px);}

.footer {
  background-color: #0C2340;
  color: #fff;
  font-size: 0.95rem;
}

.footer .text-gold {
  color: #D4B36C !important;
}

.footer-logo {
  max-width: 180px;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.3));
}

.footer-links li {
  margin-bottom: .4rem;
}

.footer-links a {
  color: #fff;
  text-decoration: none;
  transition: color .3s ease;
}

.footer-links a:hover {
  color: #D4B36C;
}

.footer i {
  vertical-align: middle;
}

.footer .copyright a {
  color:#c1a66d;
}

@media (max-width: 767px) {
  .footer {
    text-align: center;
}
.footer .footer-logo {
    margin-bottom: 1rem;
}
.footer .d-flex {
    justify-content: center;
}
}