.footer .nav-footer .footer-list .footer-link:hover, .header .navbar .nav-link:hover {
  animation-name: link-hover;
  animation-duration: 500ms;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(0.311, 0.441, 0.444, 1.649);
}





.border-gold-1 {
  margin: 0;
  border: 0;
  height: 1px;
  opacity: 1;
  background: linear-gradient(46deg, #a4855d 0%, #a4855d 6.25%, #a5865d 12.5%, #a6875d 18.75%, #a9895d 25%, #ae8e5c 31.25%, #b4945c 37.5%, #be9c5b 43.75%, #cba85a 50%, #d8b459 56.25%, #e2bc58 62.5%, #e8c258 68.75%, #edc757 75%, #f0c957 81.25%, #f1ca57 87.5%, #f2cb57 93.75%, #f2cb57 100%);
}

.border-gold-3 {
  margin: 0;
  border: 0;
  height: 3px;
  opacity: 1;
  background: linear-gradient(46deg, #a4855d 0%, #a4855d 6.25%, #a5865d 12.5%, #a6875d 18.75%, #a9895d 25%, #ae8e5c 31.25%, #b4945c 37.5%, #be9c5b 43.75%, #cba85a 50%, #d8b459 56.25%, #e2bc58 62.5%, #e8c258 68.75%, #edc757 75%, #f0c957 81.25%, #f1ca57 87.5%, #f2cb57 93.75%, #f2cb57 100%);
}

.bg-blue-primary {
  background-color: #13253B;
}

.bg-mry-secondary {
  background-color: #A4855D;
}

.bg-white {
  background-color: white;
  margin-bottom: 25px;
  margin-top: 25px;
}

.bg-blue-secondary {
  background-color: #8398A2;
}

.text-mry-secondary {
  color: #A4855D;
}

.text-mry-primary {
  color: #13253B;
}

@keyframes link-hover {
  100% {
    color: #A4855D;
  }
}
body {
  font-family: "Maven Pro", sans-serif;
  box-sizing: content-box;
}

.link-active {
  color: #A4855D;
}
.link-active:hover {
  color: #A4855D;
  box-shadow: none;
}

.form-control, .form-select {
  height: 48px;
  border-radius: 0.5rem;
}

.header {
  background-color: #66726e;
}
.header .navbar-toggler {
  border: #A4855D 2px solid;
}
.header .navbar-toggler .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28156, 114, 61, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.header .navbar-toggler:hover .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.header .navbar-toggler:focus {
  box-shadow: 0 0 0 0.2rem rgba(164, 133, 93, 0.35);
}
.header .navbar .navlogo-link {
  display: flex;
  align-items: center;
}
.header .navbar .navlogo-link img {
  height: 50px;
  width: auto;
}
.header .navbar .nav-link {
  color: #F2F2F2;
  text-transform: uppercase;
}
.header .navbar .nav-link.active {
  color: #A4855D;
}

.footer {
  display: flex;
  flex-direction: column;
  background-color: #66726e;
  color: white;
}
.footer .nav-footer {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0 5rem;
  margin-top: 3.5rem;
  margin-bottom: 3.5rem;
}
.footer .nav-footer h5 {
  color: #98aca4;
  font-size: 16px;
  margin-bottom: 0;
}
.footer .nav-footer .footer-list {
  list-style: none;
  padding: 0;
  font-size: 14px;
}
.footer .nav-footer .footer-list .footer-link {
  color: white;
  text-decoration: none;
}
.footer .nav-footer .social-medias {
  display: flex;
  flex-wrap: nowrap;
  font-size: 25px;
  gap: 0 15px;
}
.footer .tag-footer {
  flex: 1 0 100%;
  display: flex;
  align-self: center;
  flex-wrap: nowrap;
  gap: 0 10px;
  text-decoration: none;
  color: white;
}
.footer .tag-footer p {
  font-weight: 100;
  text-transform: uppercase;
}
.footer .tag-footer img {
  height: 20px;
}

@media only screen and (min-width: 0px) and (max-width: 768px) {
  .footer .nav-footer {
    flex-wrap: wrap;
    margin-top: 1rem;
    margin-bottom: 1rem;
    text-align: center;
  }
  .footer .nav-footer ul, .footer .nav-footer a, .footer .nav-footer div {
    flex: 1 0 50%;
  }
  .footer .nav-footer .social-medias {
    justify-content: center;
  }
}

/*# sourceMappingURL=app.css.map */


/* ====== Configuração geral da seção ====== */
.video-hero {
  position: relative;
  /* Altura real da viewport no mobile (evita “saltos” pela barra do navegador) */
  min-height: 100svh;
  overflow: hidden;
  background: #000; /* fundo base enquanto o vídeo carrega */
}
@supports (height: 100dvh) {
  .video-hero { min-height: 100dvh; }
}

/* ====== Vídeo de fundo ====== */
.video-hero__bg {
  position: absolute;
  inset: 0;           /* top/right/bottom/left: 0 */
  width: 100%;
  height: 100%;
  object-fit: cover;  /* cobre toda a área, como background-size: cover */
  object-position: 50% 50%; /* ponto focal (ajuste se precisar) */
  z-index: 1;
  pointer-events: none;   /* não bloquear cliques no conteúdo */
  background: #000;
}

/* Ajuste de foco para telas pequenas (se o assunto está cortando, ajuste aqui) */
@media (max-width: 576px) {
  .video-hero__bg {
    object-position: 50% 30%;
  }
}

/* ====== Overlay para contraste do texto ====== */
.video-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.35),
    rgba(0, 0, 0, 0.45)
  );
}

/* ====== Conteúdo central ====== */
.video-hero__content {
  position: relative;
  z-index: 3;
  min-height: inherit;       /* herda a altura da seção */
  display: grid;
  place-items: center;       /* centraliza vertical/horizontal */
  padding-block: clamp(16px, 5vh, 64px); /* espaço vertical respirável */
}

/* “Container” com margens laterais responsivas + largura máxima */
.content-inner {
  width: 100%;
  max-width: 1100px;                   /* limite para não “esticar” demais */
  margin-inline: auto;                 /* centraliza horizontalmente */
  padding-inline: clamp(16px, 6vw, 80px); /* margens laterais responsivas */
  text-align: center;
  color: #fff;
}

/* ====== Tipografia responsiva ====== */
.content-inner h1 {
  font-size: clamp(26px, 6.5vw, 48px);
  line-height: 1.1;
  margin: 0 0 12px 0;
  font-weight: 800;
}
.content-inner p {
  font-size: clamp(14px, 3.8vw, 20px);
  line-height: 1.6;
  margin: 0 0 24px 0;
  opacity: 0.95;
}

/* ====== Botão simples ====== */
.btn {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
  color: #111;
  background: #fff;
  transition: transform 0.15s ease, opacity 0.2s ease;
}
.btn:hover { transform: translateY(-1px); opacity: 0.9; }
.btn:active { transform: translateY(0); }

/* ====== Acessibilidade: reduzir movimento ====== */
@media (prefers-reduced-motion: reduce) {
  .video-hero__bg { display: none; }
  .video-hero {
    background: url("./assets/img/bg-index-mobile.jpg") center / cover no-repeat #000;
  }
}


/* Estilização geral do FAQ */
.faq-container {
  max-width: 800px;
  margin: 40px auto;
  background-color: #fff;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* Título e subtítulo */
.faq-title {
  font-size: 28px;
  font-weight: bold;
  color: #78937a;
  text-align: center;
}

.faq-subtitle {
  font-size: 18px;
  color: #78937a;
  text-align: center;
  margin-bottom: 20px;
}

/* Botão do accordion */
.accordion-button {
  font-weight: bold;
  font-size: 16px;
  color: #78937a;
  background-color: transparent;
  box-shadow: none;
}

/* Botão quando expandido */
.accordion-button:not(.collapsed) {
  color: #b89b54; /* Cor da pergunta quando aberta */
  background-color: transparent;
}

/* Conteúdo do accordion */
.accordion-body {
  color: #555;
  font-size: 15px;
  line-height: 1.6;
}

/* Remove o highlight azul padrão do Bootstrap */
.accordion-button:focus {
  box-shadow: none;
}



/* SEÇÃO SOBRE MIM */
.sobre-mim {
  background-color: #f9f9f9;
  padding-top: 60px;
  padding-bottom: 60px;
}

/* Imagem */
.sobre-img img {
  max-width: 100%;
  border-radius: 12px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease-in-out;
}

.sobre-img img:hover {
  transform: scale(1.03);
}

/* Título */
.sobre-title {
  color: #78937a;
  font-size: 28px;
  font-weight: 700;
  border-left: 5px solid #b89b54;
  padding-left: 12px;
}

/* Texto */
.sobre-text {
  font-size: 16px;
  color: #444;
  line-height: 1.8;
  margin-bottom: 16px;
  text-align: justify;
}

/* Lista */
.sobre-list {
  padding-left: 18px;
  margin-bottom: 20px;
}

.sobre-list li {
  margin-bottom: 6px;
  font-size: 15px;
  color: #555;
}

/* Responsividade */
@media (max-width: 991px) {
  .sobre-title {
    text-align: center;
    border-left: none;
    padding-left: 0;
  }

  .sobre-img {
    margin-bottom: 20px;
  }
}




/* ===== Visão • Missão • Valores ===== */
/* seção compacta */
.vmv-title-sm{font-size:clamp(1.2rem,1rem+1vw,1.6rem);color:#2a2f2b;font-weight:800}
.vmv-mini{border:1px solid #e7ece8;border-radius:14px}
.vmv-mini .card-body{padding:18px}
.vmv-icon{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;
  color:#78937a;background:#f3f6f4;border:1px solid #e3ece6;margin-bottom:8px}
.vmv-h3{font-size:1.05rem;font-weight:800;color:#3b473f;margin-bottom:.35rem}
.vmv-mini p{color:#4b5a51;line-height:1.6;margin:0}

/* chips compactos (sempre visíveis) */
.vmv-chips{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem .5rem;padding:0;margin:0}
.vmv-chips li{font-size:.85rem;color:#4b5a51;background:#fff;border:1px solid #d9e3dc;border-radius:999px;padding:.25rem .6rem;font-weight:600}

/* lista detalhada dentro do collapse */
.vmv-list{list-style:none;padding-left:0;margin:0;display:grid;gap:.5rem}
.vmv-list li{color:#4b5a51;line-height:1.6}

/* link "ver mais" com chevron que gira */
.toggle-link{
  background:transparent;border:0;padding:0;color:#78937a;font-weight:700;display:inline-flex;align-items:center;gap:.35rem;
}
.toggle-link .label-close{display:none}
.toggle-link .chev{transition:transform .2s ease}
.toggle-link[aria-expanded="true"] .chev{transform:rotate(180deg)}
.toggle-link[aria-expanded="true"] .label-open{display:none}
.toggle-link[aria-expanded="true"] .label-close{display:inline}

/* hover */
.toggle-link:hover{color:#6a846d}




/* ====== Como são as consultas? ====== */
.consultas-title{
  color:#78937a;
  font-weight:800;
  letter-spacing:.5px;
  font-size:clamp(1.6rem, 2.2vw, 2.6rem);
}
.consultas-subtitle{
  max-width:860px;
  margin:8px auto 0;
  color:#6f7f71;
  line-height:1.7;
}

/* cards */
.feature-card{
  padding:20px 18px;
  border:1px solid #e7ece8;
  border-radius:14px;
  background:#fff;
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.feature-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 24px rgba(0,0,0,.08);
  border-color:rgba(184,155,84,.45);
}

/* ícone circular */
.icon-wrap{
  width:56px;height:56px;border-radius:14px;display:inline-flex;
  align-items:center;justify-content:center;
  color:#b89b54;background:#fff9ed;border:1px solid #efe3c8;
  box-shadow:inset 0 0 0 4px #fff;
  margin-bottom:10px;
}

.feature-title{
  font-size:1rem;
  font-weight:800;
  color:#3b473f;
  margin-bottom:6px;
}
.feature-text{
  color:#4b5a51;
  line-height:1.6;
  margin:0;
}

/* bloco de observações */
.consultas-notes{
  max-width:980px;
  margin-inline:auto;
  display:grid;
  gap:.8rem;
}
.consultas-notes p{
  margin:0;
  color:#4b5a51;
  line-height:1.7;
  padding-left:12px;
  border-left:3px solid #e7d7b2;  /* dourado suave */
}

/* responsivo */
@media (max-width: 575.98px){
  .feature-card{padding:16px 14px}
  .icon-wrap{width:50px;height:50px;border-radius:12px}
}



/* ===== Agendamento elegante ===== */
.booking-section{
  background: linear-gradient(180deg, #90a8a1 0%, #9bb3ac 100%); /* verde suave */
}
.booking-wrap{
  max-width: 860px;
  margin: 0 auto;
  background: #ffffff;
  border: 1px solid #e6ede9;
  border-radius: 16px;
  padding: 24px 22px;
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
}
.booking-title{
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 800;
  color: #78937a;
  font-size: clamp(1.3rem, 0.9rem + 1.6vw, 2rem);
  margin-bottom: .25rem;
}
.booking-subtitle{
  color: #6f7f71;
  margin: 0 auto;
  max-width: 720px;
}

/* campos */
.form-label{font-weight:700;color:#3b473f;font-size:.95rem}
.form-control{
  background: #f7faf8;
  border: 1px solid #e3ebe6;
  border-radius: 10px;
  padding: .65rem .9rem;
  color:#2f3430;
}
.form-control:focus{
  border-color:#b89b54;
  box-shadow: 0 0 0 .2rem rgba(184,155,84,.15);
}

/* checkbox */
.form-check-input{
  border:1px solid #cfdad3;
}
.form-check-input:checked{
  background-color:#78937a;
  border-color:#78937a;
}
.link-pp{color:#78937a;text-decoration:underline}
.link-pp:hover{color:#6a846d}

/* botão whatsapp */
.btn-whatsapp{
  background:#78937a;
  color:#fff;
  border:2px solid #78937a;
  padding:.8rem 1rem;
  border-radius:12px;
  font-weight:800;
  display:inline-flex;align-items:center;justify-content:center;
  transition: transform .08s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.btn-whatsapp:hover{background:#6a846d;border-color:#6a846d;box-shadow:0 8px 22px rgba(0,0,0,.12);transform:translateY(-1px)}
.btn-whatsapp:disabled{opacity:.6;cursor:not-allowed}

/* pequenas melhorias */
.needs-validation .invalid-feedback{font-size:.86rem}


.site-footer{ background:#61706c; color:#eaf1ee; }
.site-footer a{ color:#eaf1ee; text-decoration:none; }
.site-footer a:hover{ text-decoration:underline; }
.footer-heading{ color:#fff; font-weight:700; }
.footer-logo{ max-width:460px; height:auto; }
.footer-list{ list-style:none; padding:0; margin:0; display:grid; gap:.35rem; }
.footer-list a{ font-weight:600; }
.footer-address{ margin:0; color:#eaf1ee; }
.footer-copy{ letter-spacing:.04em; font-weight:800; color:#eaf1ee; }

/* barra dourada já usada no header */
.gold-bar{ height:3px; background:linear-gradient(90deg,#e7d7b2,#b89b54); border:0; }



/* Header sólido — elimina o efeito de duas cores */
.glass-navbar{
  background: #61706c !important;    /* cor única */
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}




:root{
  --ink-900:#3B473F;
  --brand-green:#61706C;
  --gold-1:#E7D7B2; --gold-2:#B89B54;

  --bg-foam:#F3F6F4;   /* verde bem claro */
  --bg-stone:#EEF3F1;  /* cinza da paleta */
  --bg-linen:#FFF8EE;  /* dourado clarinho */
}

/* espaçamento consistente */
.section{ padding:64px 0; }

/* fundos auxiliares */
.bg-foam  { background:var(--bg-foam);  }
.bg-stone { background:var(--bg-stone); }
.bg-linen { background:var(--bg-linen); }
.bg-deep  { background:var(--brand-green); color:#fff; }

/* texto padrão em fundos claros */
.section, .section p, .section h2, .section h3 { color: var(--ink-900); }

/* divisória dourada */
.divider-gold{ height:3px; background:linear-gradient(90deg,var(--gold-1),var(--gold-2)); border:0; }

/* opção: alternância automática (se todas as sections tiverem .section) */
/* .section:nth-of-type(even){ background:var(--bg-foam); } */


:root{
  --ink-900:#3B473F;
  --brand-green:#61706C;
  --gold-1:#E7D7B2; --gold-2:#B89B54;

  --bg-foam:#F3F6F4;   /* verde bem claro */
  --bg-stone:#EEF3F1;  /* cinza da paleta */
  --bg-linen:#FFF8EE;  /* dourado clarinho */
}

/* espaçamento consistente */
.section{ padding:64px 0; }

/* fundos auxiliares */
.bg-foam  { background:var(--bg-foam);  }
.bg-stone { background:var(--bg-stone); }
.bg-linen { background:var(--bg-linen); }
.bg-deep  { background:var(--brand-green); color:#fff; }

/* texto padrão em fundos claros */
.section, .section p, .section h2, .section h3 { color: var(--ink-900); }

/* divisória dourada */
.divider-gold{ height:3px; background:linear-gradient(90deg,var(--gold-1),var(--gold-2)); border:0; }

/* opção: alternância automática (se todas as sections tiverem .section) */
/* .section:nth-of-type(even){ background:var(--bg-foam); } */


/* ===== Canabidiol ===== */
.cbd-header{
  background: var(--brand-green); color:#fff;
  padding: 28px 0; box-shadow: inset 0 -3px 0 var(--gold-2);
}
.cbd-title{
  text-transform: uppercase; letter-spacing:.06em;
  font-weight: 900; margin:0;
}
.cbd-lead{
  max-width: 1080px; margin: 18px auto 0;
  color:#56645b; line-height:1.75; font-size: clamp(.98rem, .9rem + .4vw, 1.06rem);
}
.cbd-card{
  background:#fff; border:1px solid #e6ede9; border-radius:16px;
  padding:22px 20px; box-shadow: var(--shadow);
  color:#4b5a51; line-height:1.7;
}
.cbd-callout{
  margin:14px 0; padding:14px 14px;
  background:#fff9ed; border:1px solid #efe3c8; border-radius:12px;
}
.cbd-note{
  margin: 6px 0 2px; font-size:.9rem; color:#66756b; font-weight:600;
}
.cbd-figure img{ display:block; width:100%; height:auto; }





/* ===== Depoimentos ===== */
.testimonials-section{
  background: linear-gradient(180deg,#f7faf8 0%, #f2f6f4 100%);
}
.testimonials-title{
  text-transform: uppercase;
  letter-spacing:.06em;
  font-weight: 900;
  color: var(--brand-green);
}

/* Card */
.tcard{
  background:#fff;
  border:1px solid #e3ebe6;
  border-radius:16px;
  padding:26px 22px;
  height: 100%;
  box-shadow: 0 10px 22px rgba(0,0,0,.06);
  display:flex; align-items:center; justify-content:center;
  text-align:center;
  position:relative;
}
.tcard::before{
  content:"";
  position:absolute; inset:auto 18px 18px auto;
  width:36px; height:36px;
  background:#f3f6f4; border:1px solid #e3ebe6; border-radius:10px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.5 6.5c-3 0-5 2.4-5 5.2 0 2.6 1.7 4.4 4.1 4.9 0 .7-.3 1.8-1.1 2.9-.4.5-.1 1.1.5.9C13 19.6 15 16 15 12.2 15 8.9 12.9 6.5 9.5 6.5Zm9 0c-3 0-5 2.4-5 5.2 0 2.6 1.7 4.4 4.1 4.9 0 .7-.3 1.8-1.1 2.9-.4.5-.1 1.1.5.9 5.1-1.7 7.1-5.3 7.1-9.1 0-3.3-2.1-5.8-5.6-5.8Z'/%3E%3C/svg%3E") center/60% 60% no-repeat;
}

/* Texto */
.ttext{
  color:#38433d;
  line-height:1.85;
  font-size:clamp(.98rem, .9rem + .3vw, 1.05rem);
}
.ttext q{ quotes:"“" "”"; }
.ttext q:before{ content: open-quote; }
.ttext q:after { content: close-quote; }


/* ===== Capa full-screen com imagem ===== */
.hero-capa{
  position:relative;
  min-height:calc(100vh - 64px); /* ocupa a tela (desconta o topo) */
  display:flex; align-items:center; overflow:hidden;
  background:#f7f5f2;
}
@media (max-width:992px){
  .hero-capa{ min-height:calc(100vh - 56px); }
}
.hero-capa__bg{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  transform:scale(1.02); will-change:transform;
}
.hero-capa__veil{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.18), rgba(0,0,0,.05) 40%, rgba(0,0,0,.0) 65%);
}
.hero-capa__content{ position:relative; z-index:2; width:100%; }
.brand-card{
  max-width:380px; background:rgba(255,255,255,.86);
  border:1px solid #e8edea; border-radius:18px; padding:18px;
  backdrop-filter:saturate(130%) blur(8px); -webkit-backdrop-filter:saturate(130%) blur(8px);
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}
.brand-card .logo{
  max-width:220px; height:auto; display:block; margin-bottom:6px;
}
.brand-card .cred{ color:#495750; line-height:1.5; margin:0 0 10px; font-weight:600; }
.brand-card .portrait{
  width:100%; border-radius:14px; object-fit:cover; border:1px solid #ecf0ee;
}
.brand-card .chip{
  display:inline-flex; align-items:center; gap:.4rem;
  background:#fff; border:1px solid #e6ece9; padding:.35rem .6rem;
  border-radius:999px; font-weight:700; color:var(--brand-green);
}

/* opcional: botão CTA aproveitando suas variáveis */
.brand-card .btn{
  margin-top:.6rem;
  background:var(--gold-2); color:#fff; border:0; font-weight:800;
  border-radius:12px; padding:.55rem .9rem;
}
.brand-card .btn:hover{ background:#a78646; }

/* Controles do carousel */
#carouselTestimonials .carousel-control-prev,
#carouselTestimonials .carousel-control-next{
  width:3rem; height:3rem; top: calc(50% - 1.5rem);
  background: rgba(255,255,255,.9);
  border:1px solid #e3ebe6; border-radius:50%;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  transition: transform .08s ease, box-shadow .2s ease;
}
#carouselTestimonials .carousel-control-prev:hover,
#carouselTestimonials .carousel-control-next:hover{
  transform:translateY(-1px);
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
}
.carousel-control-prev-icon,
.carousel-control-next-icon{
  filter: invert(45%) sepia(10%) saturate(300%) hue-rotate(100deg) brightness(90%);
}

/* Indicadores (pílulas) */
#carouselTestimonials .carousel-indicators [data-bs-target]{
  width: 22px; height: 6px; border-radius: 999px; border:0;
  background:#cfdad3; opacity:1;
}
#carouselTestimonials .carousel-indicators .active{
  background: linear-gradient(90deg,var(--gold-1),var(--gold-2));
}


/* ===== Em que posso te ajudar ===== */
.help-section{
  background: linear-gradient(180deg,#f7faf8 0%, #ffffff 100%);
}
.help-title{
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--brand-green);
  font-size: clamp(1.3rem, .8rem + 2.2vw, 2rem);
}
.help-grid .col{display:flex}

.help-card{
  background:#fff;
  border:1.6px solid #cfe0da;
  border-radius: 18px;
  padding: 22px 18px;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
  box-shadow: inset 0 0 0 8px #fff;
  transition: transform .12s ease, box-shadow .25s ease, border-color .25s ease;
}
.help-card:hover{
  transform: translateY(-3px);
  border-color: rgba(120,147,122,.55);
  box-shadow: 0 14px 28px rgba(0,0,0,.08);
}
.help-icon{
  width:46px; height:46px; border-radius:12px;
  display:inline-flex; align-items:center; justify-content:center;
  background: #f3f7f5; color: var(--brand-green-2);
  border: 1px solid #e5efe9;
}
.help-icon i{font-size:20px; line-height:1}
.help-text{
  margin:0;
  color:#2f3430;
  font-weight: 700;
  line-height: 1.45;
}

/* Footer: logo responsiva e sem overflow */
.site-footer .footer-logo{
  max-width: min(72vw, 360px);
  height: auto;
}
@media (min-width: 992px){
  .site-footer .footer-logo{
    max-width: 460px;
  }
}
/* Opcional: centraliza a marca no mobile e alinha à esquerda no desktop */
.site-footer .brand-col{
  text-align: center;
}
@media (min-width: 992px){
  .site-footer .brand-col{
    text-align: left;
  }
}


/* ===== Capa full-screen com imagem ===== */
.hero-capa{
  position:relative;
  min-height:calc(100vh - 64px); /* ocupa a tela (desconta o topo) */
  display:flex; align-items:center; overflow:hidden;
  background:#f7f5f2;
}
@media (max-width:992px){
  .hero-capa{ min-height:calc(100vh - 56px); }
}
.hero-capa__bg{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  transform:scale(1.02); will-change:transform;
}
.hero-capa__veil{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.18), rgba(0,0,0,.05) 40%, rgba(0,0,0,.0) 65%);
}
.hero-capa__content{ position:relative; z-index:2; width:100%; }
.brand-card{
  max-width:380px; background:rgba(255,255,255,.86);
  border:1px solid #e8edea; border-radius:18px; padding:18px;
  backdrop-filter:saturate(130%) blur(8px); -webkit-backdrop-filter:saturate(130%) blur(8px);
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}
.brand-card .logo{
  max-width:220px; height:auto; display:block; margin-bottom:6px;
}
.brand-card .cred{ color:#495750; line-height:1.5; margin:0 0 10px; font-weight:600; }
.brand-card .portrait{
  width:100%; border-radius:14px; object-fit:cover; border:1px solid #ecf0ee;
}
.brand-card .chip{
  display:inline-flex; align-items:center; gap:.4rem;
  background:#fff; border:1px solid #e6ece9; padding:.35rem .6rem;
  border-radius:999px; font-weight:700; color:var(--brand-green);
}

/* opcional: botão CTA aproveitando suas variáveis */
.brand-card .btn{
  margin-top:.6rem;
  background:var(--gold-2); color:#fff; border:0; font-weight:800;
  border-radius:12px; padding:.55rem .9rem;
}
.brand-card .btn:hover{ background:#a78646; }


/* ===== Galeria ===== */
.gallery-section{
  background: linear-gradient(180deg,#f7faf8 0%, #fbfcfb 100%);
}
.gallery-title{
  color:#78937a; font-weight:800; letter-spacing:.5px;
  font-size:clamp(1.4rem,1rem + 1.6vw,2.2rem);
}
.gallery-card{
  display:block; border-radius:var(--radius); overflow:hidden;
  border:1px solid #e7ece8; background:#fff; box-shadow:0 8px 18px rgba(0,0,0,.05);
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.gallery-card:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(0,0,0,.12);
  border-color:rgba(184,155,84,.35);
}
/* imagens sempre cobrem o box */
.of-cover{ width:100%; height:100%; object-fit:cover; display:block; }

/* setinhas e bolinhas na sua paleta */
#galleryCarousel .carousel-control-prev,
#galleryCarousel .carousel-control-next{ width:3rem; }
#galleryCarousel .carousel-control-prev-icon,
#galleryCarousel .carousel-control-next-icon{ filter:drop-shadow(0 2px 6px rgba(0,0,0,.35)); }
#galleryCarousel .carousel-indicators [data-bs-target]{ background-color:var(--brand-green-2); }
#galleryCarousel .carousel-indicators .active{ background-color:var(--gold-2); }

/* modal clean */
.modal .modal-content{ box-shadow:none; }


:root{
  --wa:#25D366;           /* verde WhatsApp */
  --wa-dark:#1ebe57;      /* hover */
}

/* Botão flutuante WhatsApp */
.wa-fab{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:1100;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.7rem 1rem;
  border-radius:999px;
  background:var(--wa);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow:0 10px 24px rgba(37,211,102,.35);
  transition:transform .08s ease, box-shadow .2s ease, background .2s ease;
}
.wa-fab:hover{ background:var(--wa-dark); transform:translateY(-1px); box-shadow:0 12px 28px rgba(37,211,102,.45); }
.wa-fab:focus{ outline:2px solid rgba(255,255,255,.8); outline-offset:2px; }

.wa-fab__icon{
  width:22px; height:22px; display:inline-block;
}

/* Mobile: mostra só o ícone para não atrapalhar */
@media (max-width: 480px){
  .wa-fab{ padding:.8rem; border-radius:50%; }
  .wa-fab span{ display:none; }
}
