:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-a24775d */@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');

:root{
  --vs-dark:#171210;
  --vs-bronze:#C4956A;
  --vs-bronze-lt:#E0BC92;
  --vs-serif:'Montserrat',sans-serif;
  --vs-sans:'Plus Jakarta Sans',sans-serif;
}

.vs-logo-img{
  height:36px !important;
  width:auto !important;
  max-width:140px !important;
  object-fit:contain !important;
}
.vs-footer-logo-img{
  height:36px !important;
  width:auto !important;
  max-width:140px !important;
  object-fit:contain !important;
}

.vs-hero,.vs-hero *{margin:0;padding:0;box-sizing:border-box;}

.vs-hero{
  position:relative;
  width:100%;
  min-height:100vh;
  background:#171210;
  display:flex;
  flex-direction:column;
  font-family:var(--vs-sans);
}

/* ===== TOPBAR ===== */
.vs-top{
  position:relative;
  z-index:30;
  padding:24px 0;
  background:#171210;
  border-bottom:1px solid rgba(196,149,106,.12);
  flex-shrink:0;
}
.vs-top-container{
  max-width:1280px;
  margin:0 auto;
  padding:0 56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.vs-logo-img{
  height:44px;
  width:auto;
  display:block;
  flex-shrink:0;
}
.vs-top-nav{
  display:flex;
  align-items:center;
  gap:36px;
}
.vs-top-link{
  font-size:13px;
  font-weight:500;
  letter-spacing:.04em;
  color:rgba(255,255,255,.65);
  text-decoration:none;
  cursor:pointer;
  transition:.3s;
  background:none;
  border:none;
  font-family:var(--vs-sans);
}
.vs-top-link:hover{color:var(--vs-bronze);}

.vs-top-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:transparent;
  border:1px solid rgba(196,149,106,.5);
  color:var(--vs-bronze);
  padding:10px 20px;
  font-family:var(--vs-sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  border-radius:4px;
  transition:.3s;
  flex-shrink:0;
}
.vs-top-cta:hover{
  background:var(--vs-bronze);
  color:var(--vs-dark);
  border-color:var(--vs-bronze);
}
.vs-top-cta:focus,.vs-top-cta:active{
  outline:none;
  box-shadow:none;
  background:var(--vs-bronze);
  color:var(--vs-dark);
}

.vs-hamburger{
  display:none;
  flex-direction:column;
  gap:5px;
  background:none;
  border:none;
  cursor:pointer;
  padding:4px;
}
.vs-hamburger span{
  display:block;
  width:24px;
  height:2px;
  background:rgba(255,255,255,.8);
  border-radius:2px;
  transition:.3s;
}

/* ===== ÁREA COM BACKGROUND ===== */
.vs-bg-area{
  position:relative;
  flex:1;
  background-color:#171210;
  /* ===== DESKTOP — trocar URL aqui se necessário ===== */
  background-image:url('https://drviniciusvidal.com.br/wp-content/uploads/2026/06/Banner-site-Viva-ok-Banner-desktop.png?v=1');
  background-position:right top;
  background-size:cover;
  background-repeat:no-repeat;
  display:flex;
  flex-direction:column;
}

/* Overlay desktop: opaco esquerda → transparente direita */
.vs-bg-area::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(
    to right,
    rgba(23,18,16,1)   0%,
    rgba(23,18,16,.92) 28%,
    rgba(23,18,16,.65) 52%,
    rgba(23,18,16,.2)  80%,
    rgba(23,18,16,.06) 100%
  );
  z-index:1;
  pointer-events:none;
}

/* ===== BODY ===== */
.vs-body{
  position:relative;
  z-index:20;
  flex:1;
  max-width:1280px;
  margin:0 auto;
  width:100%;
  padding:40px 56px 80px;
  display:flex;
  align-items:center;
}

.vs-left{
  max-width:580px;
}

.vs-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:24px;
}
.vs-eyebrow::before{
  content:'';
  width:28px;height:1px;
  background:var(--vs-bronze);
}

.vs-h1{
  font-family:var(--vs-serif);
  font-size:clamp(38px,4.2vw,58px);
  font-weight:600;
  line-height:1.08;
  color:#fff;
  letter-spacing:-.01em;
  margin-bottom:24px;
}
.vs-h1 i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}

.vs-lead{
  font-size:16px;
  line-height:1.75;
  color:rgba(255,255,255,.6);
  font-weight:300;
  max-width:440px;
  margin-bottom:36px;
}

.vs-cta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:var(--vs-bronze);
  color:#1a1410;
  padding:16px 32px;
  font-family:var(--vs-sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  border:2px solid var(--vs-bronze);
  border-radius:6px;
  cursor:pointer;
  transition:all .3s ease;
  box-shadow:0 8px 24px rgba(196,149,106,.25);
  -webkit-appearance:none;
  appearance:none;
  outline:none;
}
.vs-cta:hover{
  background:transparent;
  color:var(--vs-bronze);
  transform:translateY(-2px);
  box-shadow:0 12px 32px rgba(196,149,106,.2);
}
.vs-cta:focus,.vs-cta:active{
  outline:none !important;
  box-shadow:0 8px 24px rgba(196,149,106,.25) !important;
  background:var(--vs-bronze-lt);
  color:#1a1410;
  border-color:var(--vs-bronze-lt);
}
.vs-cta svg{
  width:18px;height:18px;
  flex-shrink:0;
}

/* ===== WHATSAPP FLOAT ===== */
.vs-float-wrap{position:fixed;bottom:28px;right:28px;z-index:99999;}
.vs-float-btn{
  width:56px;height:56px;
  background:#25D366;
  border:none;border-radius:50%;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(37,211,102,.45);
  animation:vsPulse 2.5s ease-in-out infinite;
  transition:transform .2s;
}
.vs-float-btn:hover{transform:scale(1.08);}
.vs-float-btn:focus,.vs-float-btn:active{outline:none;}
@keyframes vsPulse{
  0%,100%{box-shadow:0 4px 20px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.5);}
  60%{box-shadow:0 4px 20px rgba(37,211,102,.45),0 0 0 18px rgba(37,211,102,0);}
}

/* ===== MOBILE ===== */
@media(max-width:900px){
  .vs-top-container{padding:0 20px;}
  .vs-top-nav{display:none;}
  .vs-top-cta{display:none;}
  .vs-hamburger{display:flex;}

  /* ===== MOBILE — trocar URL aqui se necessário ===== */
  .vs-bg-area{
    background-image:url('https://drviniciusvidal.com.br/wp-content/uploads/2026/06/Banner-site-Viva-ok-Mobile.png?v=1');
    background-position:center top;
  }

  /* Overlay mobile: escurece de baixo pra cima */
  .vs-bg-area::before{
    background:linear-gradient(
      to bottom,
      rgba(23,18,16,.15) 0%,
      rgba(23,18,16,.45) 38%,
      rgba(23,18,16,.88) 62%,
      rgba(23,18,16,1)   100%
    );
  }

  .vs-body{
    padding:32px 24px 56px;
    align-items:flex-end;
  }

  .vs-left{max-width:none;width:100%;}
  .vs-h1{font-size:34px;}
  .vs-lead{font-size:15px;max-width:none;}
  .vs-cta{width:100%;justify-content:center;}

  .vs-float-wrap{bottom:20px;right:20px;}
  .vs-float-btn{width:52px;height:52px;}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bb40930 *//* ============================================
   STATS BAR — Viva Saúde Integral
   ============================================ */
.vs-stats-bar{
  width:100%;
  background:#1F1813;
  border-top:1px solid rgba(196,149,106,.12);
  border-bottom:1px solid rgba(196,149,106,.12);
  font-family:var(--vs-sans);
}
.vs-stats-bar-inner{
  max-width:1280px;
  margin:0 auto;
  padding:0 56px; /* espaçamento lateral desktop */
}

/* DESKTOP — 3 colunas estáticas */
.vs-stats-slider{
  display:grid;
  grid-template-columns:repeat(3,1fr);
}
.vs-stats-bar-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:40px 20px; /* padding vertical dos cards */
  border-right:1px solid rgba(196,149,106,.1);
  text-align:center;
}
.vs-stats-bar-item:last-child{
  border-right:none;
}
.vs-stats-bar-num{
  font-family:var(--vs-serif);
  font-size:52px; /* tamanho do número */
  font-weight:600;
  color:var(--vs-bronze);
  line-height:1;
  margin-bottom:10px;
  letter-spacing:-.02em;
}
.vs-stats-bar-label{
  font-size:11px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(255,255,255,.4);
  line-height:1.5;
}

/* FUE — tratamento especial (não é número) */
.vs-stats-bar-item.vs-stat-fue .vs-stats-bar-num{
  font-size:42px;
  font-weight:700;
  letter-spacing:.25em;
  border-bottom:1px solid rgba(196,149,106,.35);
  padding-bottom:8px;
  margin-bottom:12px;
  display:inline-block;
}

/* DOTS — escondidos no desktop */
.vs-stats-dots{
  display:none;
  justify-content:center;
  gap:8px;
  padding-bottom:20px;
}
.vs-stats-dot{
  width:6px;height:6px;
  border-radius:50%;
  background:rgba(196,149,106,.25);
  border:none;cursor:pointer;
  transition:.3s;padding:0;
}
.vs-stats-dot.vs-active{
  background:var(--vs-bronze);
  width:20px;
  border-radius:3px;
}

/* MOBILE — vira slider 1 por vez */
@media(max-width:768px){
  .vs-stats-bar-inner{
    padding:0;
    overflow:hidden;
  }
  .vs-stats-slider{
    display:flex;
    transition:transform .55s cubic-bezier(.4,0,.2,1);
    will-change:transform;
  }
  .vs-stats-bar-item{
    min-width:100%;
    flex-shrink:0;
    padding:36px 24px;
    border-right:none;
    border-bottom:none;
  }
  .vs-stats-bar-num{font-size:48px;}
  .vs-stats-bar-item.vs-stat-fue .vs-stats-bar-num{font-size:38px;}
  .vs-stats-dots{display:flex;}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f7cef2e *//* ============================================
   SINAIS DE QUEDA
   ============================================ */
.vs-dores{
  width:100%;
  background:#F7F3EE;
  font-family:var(--vs-sans);
}
.vs-dores-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
}
.vs-dores-header{
  margin-bottom:56px;
}
.vs-dores-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:20px;
}
.vs-dores-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-dores-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(32px,3.5vw,48px);
  font-weight:600;
  line-height:1.1;
  color:#1a1410;
  max-width:560px;
}
.vs-dores-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}

/* GRID */
.vs-dores-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

/* CARD */
.vs-dor-card{
  background:#fff;
  overflow:hidden;
  box-shadow:0 4px 24px rgba(0,0,0,.07);
  transition:transform .4s ease, box-shadow .4s ease;
}
.vs-dor-card:hover{
  transform:translateY(-6px);
  box-shadow:0 16px 48px rgba(0,0,0,.12);
}

/* FOTO */
.vs-dor-foto{
  width:100%;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#e8e0d8;
  position:relative;
}
.vs-dor-foto img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transition:transform .5s ease;
}
.vs-dor-card:hover .vs-dor-foto img{
  transform:scale(1.05);
}
.vs-dor-foto-ph{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:8px;
  color:rgba(196,149,106,.5);
  font-size:11px;letter-spacing:.15em;
  text-transform:uppercase;font-weight:600;
}

/* CORPO */
.vs-dor-body{
  padding:24px 26px 28px;
  border-top:2px solid var(--vs-bronze);
}
.vs-dor-num{
  font-size:10px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:10px;
}
.vs-dor-titulo{
  font-family:var(--vs-serif);
  font-size:22px;
  font-weight:600;
  color:#1a1410;
  line-height:1.2;
  margin-bottom:10px;
}
.vs-dor-desc{
  font-size:14px;
  line-height:1.7;
  color:#6b6560;
  font-weight:300;
}

/* BOTÃO — igual ao hero */
.vs-dores-cta{
  margin-top:48px;
  text-align:center;
}
.vs-dores-cta-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:var(--vs-bronze);
  color:#1a1410;
  padding:16px 32px;
  font-family:var(--vs-sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  border:2px solid var(--vs-bronze);
  border-radius:6px;
  cursor:pointer;
  transition:all .3s ease;
  box-shadow:0 8px 24px rgba(196,149,106,.25);
  -webkit-appearance:none;
  appearance:none;
  outline:none;
}
.vs-dores-cta-btn:hover{
  background:transparent;
  color:var(--vs-bronze);
  transform:translateY(-2px);
}
.vs-dores-cta-btn:focus,
.vs-dores-cta-btn:active{
  outline:none !important;
  box-shadow:0 8px 24px rgba(196,149,106,.25) !important;
  background:var(--vs-bronze-lt);
  color:#1a1410;
}

/* ANIMAÇÕES DE ENTRADA */
.vs-fade-up{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .65s ease, transform .65s ease;
}
.vs-fade-up.vs-in{
  opacity:1;
  transform:translateY(0);
}
.vs-fade-scale{
  opacity:0;
  transform:scale(.95);
  transition:opacity .6s ease, transform .6s ease;
}
.vs-fade-scale.vs-in{
  opacity:1;
  transform:scale(1);
}

@media(max-width:900px){
  .vs-dores-inner{padding:56px 24px;}
  .vs-dores-grid{grid-template-columns:1fr;gap:16px;}
  .vs-dor-foto{aspect-ratio:16/9;}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-92063ad *//* ============================================
   TÉCNICA FUE
   ============================================ */
.vs-fue{
  width:100%;
  background:#171210;
  font-family:var(--vs-sans);
}
.vs-fue-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
}
.vs-fue-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:20px;
}
.vs-fue-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-fue-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(32px,3.5vw,48px);
  font-weight:600;
  line-height:1.1;
  color:#fff;
  margin-bottom:20px;
}
.vs-fue-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}
.vs-fue-desc{
  font-size:16px;
  line-height:1.8;
  color:rgba(255,255,255,.55);
  font-weight:300;
  margin-bottom:40px;
  max-width:480px;
}
.vs-fue-items{
  display:flex;
  flex-direction:column;
  gap:0;
  margin-bottom:44px;
}
.vs-fue-item{
  display:flex;
  align-items:flex-start;
  gap:16px;
  padding:18px 0;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.vs-fue-item:first-child{
  border-top:1px solid rgba(255,255,255,.06);
}
.vs-fue-item-icon{
  width:32px;height:32px;
  border:1px solid rgba(196,149,106,.35);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  margin-top:2px;
}
.vs-fue-item-icon svg{
  width:14px;height:14px;
  stroke:var(--vs-bronze);
}
.vs-fue-item-titulo{
  font-size:14px;
  font-weight:600;
  color:#fff;
  margin-bottom:4px;
}
.vs-fue-item-desc{
  font-size:13px;
  color:rgba(255,255,255,.45);
  font-weight:300;
  line-height:1.6;
}

/* BOTÃO PADRÃO */
.vs-fue-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:var(--vs-bronze);
  color:#1a1410;
  padding:16px 32px;
  font-family:var(--vs-sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  border:2px solid var(--vs-bronze);
  border-radius:6px;
  cursor:pointer;
  transition:all .3s ease;
  box-shadow:0 8px 24px rgba(196,149,106,.25);
  -webkit-appearance:none;
  appearance:none;
  outline:none;
}
.vs-fue-btn:hover{
  background:transparent;
  color:var(--vs-bronze);
  transform:translateY(-2px);
}
.vs-fue-btn:focus,
.vs-fue-btn:active{
  outline:none !important;
  background:var(--vs-bronze-lt);
  color:#1a1410;
  box-shadow:0 8px 24px rgba(196,149,106,.25) !important;
}

/* VÍDEO / VISUAL */
.vs-fue-visual{position:relative;}
.vs-fue-foto{
  width:100%;
  max-width:380px;
  margin:0 auto;
  aspect-ratio:9/16;
  overflow:hidden;
  background:#241b14;
  position:relative;
}
.vs-fue-foto img,
.vs-fue-foto video{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.vs-fue-foto-ph{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:10px;
  color:rgba(196,149,106,.35);
  font-size:11px;letter-spacing:.15em;
  text-transform:uppercase;font-weight:600;
}
.vs-fue-foto::after{
  content:'';
  position:absolute;
  bottom:0;left:0;right:0;
  height:40%;
  background:linear-gradient(to top, #171210, transparent);
  pointer-events:none;
}
.vs-fue-visual::before{
  content:'';
  position:absolute;
  top:-16px;left:-16px;
  width:100%;height:100%;
  border:1px solid rgba(196,149,106,.2);
  pointer-events:none;
  z-index:-1;
}
.vs-fue-badge{
  position:absolute;
  bottom:28px;left:28px;
  z-index:10;
  background:rgba(23,18,16,.92);
  backdrop-filter:blur(12px);
  border-left:2px solid var(--vs-bronze);
  padding:16px 22px;
  max-width:240px;
}
.vs-fue-badge-label{
  font-size:9px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:5px;
}
.vs-fue-badge-text{
  font-family:var(--vs-serif);
  font-size:15px;
  font-weight:400;
  color:#fff;
  line-height:1.4;
}

/* ANIMAÇÕES */
.vs-fue-left{
  opacity:0;
  transform:translateX(-32px);
  transition:opacity .7s ease, transform .7s ease;
}
.vs-fue-left.vs-in{
  opacity:1;
  transform:translateX(0);
}
.vs-fue-visual{
  opacity:0;
  transform:translateX(32px);
  transition:opacity .7s ease, transform .7s ease;
  transition-delay:.15s;
}
.vs-fue-visual.vs-in{
  opacity:1;
  transform:translateX(0);
}
.vs-fue-item{
  opacity:0;
  transform:translateY(16px);
  transition:opacity .5s ease, transform .5s ease,
             border-bottom .3s, padding .3s;
}
.vs-fue-item.vs-in{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:900px){
  .vs-fue-inner{
    grid-template-columns:1fr;
    padding:56px 24px;
    gap:40px;
  }
  .vs-fue-visual{
    order:-1;
    transform:translateY(-20px);
  }
  .vs-fue-visual.vs-in{
    transform:translateY(0);
  }
  .vs-fue-badge{
    position:static;
    margin-top:16px;
    max-width:100%;
    border-left:2px solid var(--vs-bronze);
    padding:14px 18px;
    background:rgba(26,20,16,.85);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-06e5a1a *//* ============================================
   COMO FUNCIONA — 4 ETAPAS
   ============================================ */
.vs-proc{
  width:100%;
  background:#F7F3EE;
  font-family:var(--vs-sans);
}
.vs-proc-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
}
.vs-proc-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  margin-bottom:64px;
  gap:40px;
  flex-wrap:wrap;
}
.vs-proc-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:18px;
}
.vs-proc-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-proc-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(30px,3.2vw,44px);
  font-weight:600;
  line-height:1.1;
  color:#1a1410;
}
.vs-proc-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}
.vs-proc-sub{
  font-size:15px;
  line-height:1.75;
  color:#6b6560;
  font-weight:300;
  max-width:340px;
  text-align:right;
}
.vs-proc-steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  position:relative;
}
.vs-proc-connector{
  position:absolute;
  top:28px;
  left:calc(12.5% + 8px);
  right:calc(12.5% + 8px);
  height:1px;
  background:rgba(196,149,106,.2);
  z-index:0;
  overflow:hidden;
}
.vs-proc-connector-fill{
  height:100%;
  width:0%;
  background:linear-gradient(to right, var(--vs-bronze), rgba(196,149,106,.3));
  transition:width 1.2s ease .3s;
}
.vs-proc-connector-fill.vs-in{
  width:100%;
}
.vs-proc-step{
  position:relative;
  z-index:1;
  padding:0 16px 0 0;
  opacity:0;
  transform:translateY(24px);
  transition:opacity .6s ease, transform .6s ease;
}
.vs-proc-step:last-child{padding-right:0;}
.vs-proc-step.vs-in{
  opacity:1;
  transform:translateY(0);
}
.vs-proc-step-num{
  width:56px;height:56px;
  border-radius:50%;
  border:1.5px solid var(--vs-bronze);
  background:#F7F3EE;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--vs-serif);
  font-size:20px;
  font-weight:500;
  color:var(--vs-bronze);
  flex-shrink:0;
  margin-bottom:24px;
  transition:background .4s, color .4s;
}
.vs-proc-step.vs-in:first-child .vs-proc-step-num{
  background:var(--vs-bronze);
  color:#1a1410;
}

/* FOTO — padding-top garante proporção igual em todos */
.vs-proc-step-foto{
  width:100%;
  height:220px !important;
  overflow:hidden;
  border-radius:8px;
  background:#e8e0d8;
  margin-bottom:20px;
  position:relative;
  display:block;
  padding:0 !important;
}

.vs-proc-step-foto img{
  position:absolute;
  top:0;left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transition:transform .5s ease;
  color:transparent !important;
  font-size:0 !important;
}

.vs-proc-step-foto-ph{
  position:absolute;
  top:0;left:0;
  width:100%;height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:8px;
  color:rgba(196,149,106,.4);
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:600;
  pointer-events:none;
}

.vs-proc-step:hover .vs-proc-step-foto img{
  transform:scale(1.04);
}

.vs-proc-step-etapa{
  font-size:10px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:8px;
}
.vs-proc-step-titulo{
  font-family:var(--vs-serif);
  font-size:20px;
  font-weight:600;
  color:#1a1410;
  line-height:1.2;
  margin-bottom:10px;
  min-height:52px;
}
.vs-proc-step-desc{
  font-size:13px;
  line-height:1.7;
  color:#6b6560;
  font-weight:300;
}
.vs-proc-cta{
  margin-top:56px;
  padding-top:40px;
  border-top:1px solid rgba(196,149,106,.2);
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:24px;
  opacity:0;
  transform:translateY(20px);
  transition:opacity .6s ease, transform .6s ease;
}
.vs-proc-cta.vs-in{
  opacity:1;
  transform:translateY(0);
}
.vs-proc-cta-text{
  font-family:var(--vs-serif);
  font-size:24px;
  font-weight:400;
  color:#1a1410;
}
.vs-proc-cta-text i{
  font-style:italic;
  color:var(--vs-bronze);
}
.vs-proc-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:#1a1410;
  color:#F7F3EE;
  padding:16px 32px;
  font-family:var(--vs-sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  border:2px solid #1a1410;
  border-radius:6px;
  cursor:pointer;
  transition:all .3s ease;
  -webkit-appearance:none;
  appearance:none;
  outline:none;
  white-space:nowrap;
}
.vs-proc-btn:hover{
  background:var(--vs-bronze);
  color:#1a1410;
  border-color:var(--vs-bronze);
  transform:translateY(-2px);
}
.vs-proc-btn:focus,
.vs-proc-btn:active{
  outline:none !important;
  box-shadow:none !important;
  background:var(--vs-bronze);
  color:#1a1410;
}

@media(max-width:1024px){
  .vs-proc-steps{
    grid-template-columns:repeat(2,1fr);
    gap:32px;
  }
  .vs-proc-connector{display:none;}
  .vs-proc-step{padding:0;}
}
@media(max-width:600px){
  .vs-proc-inner{padding:56px 24px;}
  .vs-proc-steps{grid-template-columns:1fr;gap:28px;}
  .vs-proc-header{flex-direction:column;align-items:flex-start;margin-bottom:40px;}
  .vs-proc-sub{text-align:left;}
  .vs-proc-cta{flex-direction:column;align-items:flex-start;}
  .vs-proc-btn{width:100%;justify-content:center;}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9888d6a */.vs-dep{
  width:100%;
  background:#171210;
  font-family:var(--vs-sans);
  overflow:hidden;
}
.vs-dep-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
}
.vs-dep-header{
  text-align:center;
  margin-bottom:56px;
}
.vs-dep-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:18px;
  justify-content:center;
}
.vs-dep-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-dep-overline::after{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-dep-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(30px,3.2vw,44px);
  font-weight:400;
  line-height:1.1;
  color:#fff;
}
.vs-dep-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
}
.vs-dep-google{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:16px;
  font-size:13px;
  color:rgba(255,255,255,.4);
  font-weight:300;
}
.vs-dep-google-stars{
  color:#F4B400;
  letter-spacing:2px;
  font-size:14px;
}

/* COLUMNS WRAPPER */
.vs-dep-columns{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  height:560px;
  overflow:hidden;
  position:relative;
}

/* fade top e bottom */
.vs-dep-columns::before,
.vs-dep-columns::after{
  content:'';
  position:absolute;
  left:0;right:0;
  height:120px;
  z-index:10;
  pointer-events:none;
}
.vs-dep-columns::before{
  top:0;
  background:linear-gradient(to bottom, #171210 0%, transparent 100%);
}
.vs-dep-columns::after{
  bottom:0;
  background:linear-gradient(to top, #171210 0%, transparent 100%);
}

.vs-dep-col{
  display:flex;
  flex-direction:column;
  gap:16px;
  overflow:hidden;
}
.vs-dep-col-inner{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.vs-dep-col:nth-child(1) .vs-dep-col-inner{
  animation:vsScrollUp 24s linear infinite;
}
.vs-dep-col:nth-child(2) .vs-dep-col-inner{
  animation:vsScrollUp 30s linear infinite;
  animation-delay:-8s;
}
.vs-dep-col:nth-child(3) .vs-dep-col-inner{
  animation:vsScrollUp 20s linear infinite;
  animation-delay:-4s;
}

@keyframes vsScrollUp{
  0%{ transform:translateY(0); }
  100%{ transform:translateY(-50%); }
}

/* CARD */
.vs-dep-card{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(196,149,106,.12);
  padding:24px;
  flex-shrink:0;
  transition:.3s;
}
.vs-dep-card:hover{
  background:rgba(196,149,106,.07);
  border-color:rgba(196,149,106,.3);
}
.vs-dep-card-stars{
  color:#F4B400;
  font-size:12px;
  letter-spacing:2px;
  margin-bottom:12px;
}
.vs-dep-card-texto{
  font-size:14px;
  line-height:1.7;
  color:rgba(255,255,255,.7);
  font-weight:300;
  margin-bottom:16px;
}
.vs-dep-card-autor{
  display:flex;
  align-items:center;
  gap:10px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.06);
}
.vs-dep-card-avatar{
  width:36px;height:36px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--vs-bronze), var(--vs-bronze-lt));
  display:flex;align-items:center;justify-content:center;
  font-family:var(--vs-serif);
  font-size:16px;
  font-weight:500;
  color:#1a1410;
  flex-shrink:0;
}
.vs-dep-card-nome{
  font-size:13px;
  font-weight:600;
  color:#fff;
  margin-bottom:2px;
}
.vs-dep-card-fonte{
  font-size:10px;
  color:rgba(255,255,255,.35);
  font-weight:400;
  letter-spacing:.06em;
}

@media(max-width:900px){
  .vs-dep-inner{padding:56px 24px;}
  .vs-dep-columns{
    grid-template-columns:repeat(2,1fr);
    height:500px;
  }
  .vs-dep-col:nth-child(3){display:none;}
}
@media(max-width:540px){
  .vs-dep-columns{
    grid-template-columns:1fr;
    height:480px;
  }
  .vs-dep-col:nth-child(2){display:none;}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-16ea582 */.vs-resultados{
  width:100%;
  background:#F7F3EE;
  font-family:var(--vs-sans);
}
.vs-resultados-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
}

/* HEADER */
.vs-resultados-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  margin-bottom:56px;
  gap:40px;
  flex-wrap:wrap;
}
.vs-resultados-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:18px;
}
.vs-resultados-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-resultados-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(30px,3.2vw,44px);
  font-weight:600;
  line-height:1.1;
  color:#1a1410;
}
.vs-resultados-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}
.vs-resultados-sub{
  font-size:15px;
  line-height:1.75;
  color:#6b6560;
  font-weight:300;
  max-width:320px;
  text-align:right;
}

/* GRID: 3 colunas, todas iguais */
.vs-resultados-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
}

/* CARD */
.vs-caso{
  position:relative;
  overflow:hidden;
  background:#1a1410;
  cursor:pointer;
  border-radius:8px;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .25s ease, transform .25s ease;
}
.vs-caso.vs-in{
  opacity:1;
  transform:translateY(0);
}

/* FOTO — todos os cards têm a mesma proporção */
.vs-caso-foto{
  position:relative;
  width:100%;
  aspect-ratio:4/5;
}
.vs-caso-foto img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  z-index:2;
  transition:transform .5s ease;
}
.vs-caso:hover .vs-caso-foto img{
  transform:scale(1.04);
}

/* PLACEHOLDER (atrás da imagem) */
.vs-caso-foto-ph{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:8px;
  background:#1a1410;
  color:rgba(196,149,106,.4);
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:600;
}

/* LABELS ANTES / DEPOIS */
.vs-caso-labels{
  position:absolute;
  bottom:0;left:0;right:0;
  display:flex;
  justify-content:space-between;
  z-index:5;
  padding:18px 16px;
  background:linear-gradient(to top, rgba(23,18,16,.6) 0%, transparent 100%);
}
.vs-caso-label{
  font-size:9px;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  background:rgba(23,18,16,.65);
  color:rgba(255,255,255,.8);
  padding:4px 10px;
  backdrop-filter:blur(4px);
  border-radius:3px;
}

/* CTA */
.vs-resultados-cta{
  margin-top:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transform:translateY(16px);
  transition:opacity .6s ease, transform .6s ease;
  transition-delay:.4s;
}
.vs-resultados-cta.vs-in{
  opacity:1;
  transform:translateY(0);
}
.vs-resultados-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:var(--vs-bronze);
  color:#1a1410;
  padding:16px 32px;
  font-family:var(--vs-sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  border:2px solid var(--vs-bronze);
  border-radius:6px;
  cursor:pointer;
  transition:all .3s ease;
  box-shadow:0 8px 24px rgba(196,149,106,.25);
  -webkit-appearance:none;
  appearance:none;
  outline:none;
}
.vs-resultados-btn:hover{
  background:transparent;
  color:var(--vs-bronze);
  transform:translateY(-2px);
}
.vs-resultados-btn:focus,
.vs-resultados-btn:active{
  outline:none !important;
  box-shadow:0 8px 24px rgba(196,149,106,.25) !important;
  background:var(--vs-bronze-lt);
  color:#1a1410;
}

/* TABLET: 2 colunas */
@media(max-width:900px){
  .vs-resultados-inner{padding:56px 24px;}
  .vs-resultados-header{flex-direction:column;align-items:flex-start;}
  .vs-resultados-sub{text-align:left;}
  .vs-resultados-grid{grid-template-columns:repeat(2, 1fr);}
}

/* MOBILE: 1 coluna */
@media(max-width:480px){
  .vs-resultados-grid{grid-template-columns:1fr;}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d5a0f75 */.vs-medico{
  width:100%;
  background:#171210;
  font-family:var(--vs-sans);
}
.vs-medico-foto{
  border-radius: 12px;
}
.vs-medico-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:80px;
  align-items:center;
}
.vs-medico-foto-wrap{
  position:relative;
}
.vs-medico-foto{
  width:100%;
  aspect-ratio:3/4;
  overflow:hidden;
  background:#241b14;
  position:relative;
}

/* PLACEHOLDER — fica atrás */
.vs-medico-foto-ph{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:8px;
  background:#241b14;
  color:rgba(196,149,106,.4);
  font-size:11px;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:600;
}

/* IMAGEM — fica na frente */
.vs-medico-foto img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
  display:block;
  z-index:2;
  color:transparent !important;
  font-size:0 !important;
}
.vs-medico-foto-wrap::before{
  content:'';
  position:absolute;
  top:-16px;left:-16px;
  width:100%;height:100%;
  border:1px solid rgba(196,149,106,.2);
  pointer-events:none;
  z-index:0;
}
.vs-medico-foto-wrap::after{
  content:'';
  position:absolute;
  bottom:-12px;right:-12px;
  width:70px;height:70px;
  border-right:2px solid var(--vs-bronze);
  border-bottom:2px solid var(--vs-bronze);
  pointer-events:none;
}
.vs-medico-crm{
  position:absolute;
  bottom:24px;left:24px;
  z-index:10;
  background:rgba(26,20,16,.92);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-left:2px solid var(--vs-bronze);
  padding:14px 20px;
}
.vs-medico-crm-label{
  font-size:9px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:4px;
}
.vs-medico-crm-num{
  font-family:var(--vs-serif);
  font-size:16px;
  font-weight:500;
  color:#fff;
}
.vs-medico-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:20px;
}
.vs-medico-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-medico-nome{
  font-family:var(--vs-serif);
  font-size:clamp(32px,3.5vw,48px);
  font-weight:400;
  line-height:1.1;
  color:#fff;
  margin-bottom:10px;
}
.vs-medico-esp{
  font-size:13px;
  font-weight:500;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:rgba(255,255,255,.4);
  margin-bottom:36px;
}
.vs-medico-divider{
  width:48px;height:1px;
  background:linear-gradient(to right, var(--vs-bronze), transparent);
  margin-bottom:32px;
}
.vs-medico-bio{
  font-size:16px;
  line-height:1.85;
  color:rgba(255,255,255,.6);
  font-weight:300;
  margin-bottom:36px;
}
.vs-medico-bio p{margin-bottom:20px;}
.vs-medico-bio p:last-child{margin-bottom:0;}
.vs-medico-bio strong{
  font-weight:600;
  color:#fff;
}
.vs-medico-quote{
  border-left:2px solid var(--vs-bronze);
  padding:16px 24px;
  margin:32px 0;
  background:rgba(196,149,106,.07);
}
.vs-medico-quote-text{
  font-family:var(--vs-serif);
  font-size:20px;
  font-weight:400;
  font-style:italic;
  color:rgba(255,255,255,.9);
  line-height:1.5;
}
.vs-medico-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:var(--vs-bronze);
  color:#1a1410;
  padding:16px 32px;
  border:2px solid var(--vs-bronze);
  cursor:pointer;
  font-family:var(--vs-sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  border-radius:6px;
  transition:all .3s ease;
  margin-top:8px;
  -webkit-appearance:none;
  appearance:none;
  outline:none;
}
.vs-medico-btn:hover{
  background:transparent;
  color:var(--vs-bronze);
  transform:translateY(-2px);
}
.vs-medico-btn:focus,
.vs-medico-btn:active{
  outline:none !important;
  background:var(--vs-bronze-lt);
  color:#1a1410;
}

@media(max-width:1024px){
  .vs-medico-inner{
    grid-template-columns:1fr;
    padding:56px 24px;
    gap:48px;
  }
  .vs-medico-foto{aspect-ratio:4/3;}
  .vs-medico-foto-wrap::before,
  .vs-medico-foto-wrap::after{display:none;}
}

@media(max-width:768px){
  .vs-medico-inner{
    grid-template-columns:1fr;
    padding:40px 24px 56px;
    gap:32px;
  }

  /* foto ocupa largura toda com proporção melhor */
  .vs-medico-foto{
    aspect-ratio:4/3;
    border-radius:8px;
  }

  /* remove decorações que ficam feias no mobile */
  .vs-medico-foto-wrap::before,
  .vs-medico-foto-wrap::after{
    display:none;
  }

  /* CRM badge menor */
  .vs-medico-crm{
    bottom:16px;
    left:16px;
    padding:10px 16px;
  }
  .vs-medico-crm-num{
    font-size:13px;
  }

  .vs-medico-nome{
    font-size:32px;
  }

  .vs-medico-esp{
    font-size:11px;
    margin-bottom:24px;
  }

  .vs-medico-bio{
    font-size:15px;
  }

  .vs-medico-quote-text{
    font-size:17px;
  }

  .vs-medico-btn{
    width:100%;
    justify-content:center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-227db3d */.vs-faq{
  width:100%;
  background:#F7F3EE;
  font-family:var(--vs-sans);
}
.vs-faq-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
  display:grid;
  grid-template-columns:1fr 1.6fr;
  gap:80px;
  align-items:flex-start;
}
.vs-faq-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:20px;
}
.vs-faq-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-faq-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(30px,3.2vw,44px);
  font-weight:600;
  line-height:1.1;
  color:#1a1410;
  margin-bottom:24px;
}
.vs-faq-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}
.vs-faq-left-desc{
  font-size:15px;
  line-height:1.75;
  color:#6b6560;
  font-weight:300;
  margin-bottom:40px;
}
.vs-faq-left-btn{
  display:inline-flex;
  align-items:center;
  gap:11px;
  background:var(--vs-bronze);
  color:#1a1410;
  padding:16px 28px;
  border:2px solid var(--vs-bronze);
  cursor:pointer;
  font-family:var(--vs-sans);
  font-size:12px;
  font-weight:700;
  letter-spacing:.05em;
  border-radius:6px;
  transition:all .3s ease;
  -webkit-appearance:none;
  appearance:none;
  outline:none;
}
.vs-faq-left-btn:hover{
  background:transparent;
  color:var(--vs-bronze);
  transform:translateY(-2px);
}
.vs-faq-left-btn:focus,
.vs-faq-left-btn:active{
  outline:none !important;
  background:var(--vs-bronze-lt);
  color:#1a1410;
}

/* ACCORDION */
.vs-faq-list{
  display:flex;
  flex-direction:column;
}
.vs-faq-item{
  border-bottom:1px solid rgba(26,20,16,.1);
  opacity:0;
  transform:translateY(16px);
  transition:opacity .5s ease, transform .5s ease;
}
.vs-faq-item:first-child{
  border-top:1px solid rgba(26,20,16,.1);
}
.vs-faq-item.vs-in{
  opacity:1;
  transform:translateY(0);
}
.vs-faq-question{
  width:100%;
  background:none;
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:24px 0;
  text-align:left;
  font-family:var(--vs-sans);
  font-size:16px;
  font-weight:500;
  color:#1a1410;
  line-height:1.4;
  transition:color .3s;
  -webkit-appearance:none;
  outline:none;
}
.vs-faq-question:hover{
  color:var(--vs-bronze);
}
.vs-faq-question.vs-faq-active{
  color:var(--vs-bronze);
}
.vs-faq-icon{
  width:28px;height:28px;
  border:1px solid rgba(196,149,106,.5);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  transition:all .3s ease;
}
.vs-faq-question.vs-faq-active .vs-faq-icon{
  background:var(--vs-bronze);
  border-color:var(--vs-bronze);
  transform:rotate(45deg);
}
.vs-faq-icon svg{
  width:12px;height:12px;
  stroke:var(--vs-bronze);
  transition:stroke .3s;
}
.vs-faq-question.vs-faq-active .vs-faq-icon svg{
  stroke:#1a1410;
}

/* ANSWER com animação de altura */
.vs-faq-answer{
  overflow:hidden;
  max-height:0;
  opacity:0;
  transition:max-height .4s ease, opacity .35s ease, padding .3s ease;
  font-size:15px;
  line-height:1.8;
  color:#6b6560;
  font-weight:300;
  padding:0;
}
.vs-faq-answer.vs-faq-open{
  max-height:300px;
  opacity:1;
  padding:0 0 24px 0;
}

/* LEFT com animação de entrada */
.vs-faq-left{
  opacity:0;
  transform:translateX(-24px);
  transition:opacity .6s ease, transform .6s ease;
}
.vs-faq-left.vs-in{
  opacity:1;
  transform:translateX(0);
}

@media(max-width:1024px){
  .vs-faq-inner{
    grid-template-columns:1fr;
    padding:56px 24px;
    gap:40px;
  }
  .vs-faq-left{transform:translateY(20px);}
  .vs-faq-left.vs-in{transform:translateY(0);}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7da9c14 */.vs-diag-section{
  width:100%;
  position:relative;
  font-family:var(--vs-sans);
  overflow:hidden;
}

.vs-diag-bg{
  position:absolute;
  inset:0;
  z-index:0;
}
.vs-diag-bg img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
}
.vs-diag-bg::before{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(23,18,16,.93);
  z-index:1;
}

.vs-diag-inner{
  position:relative;
  z-index:10;
  max-width:1280px;
  margin:0 auto;
  padding:64px 56px;
}

.vs-diag-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:16px;
}
.vs-diag-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}

.vs-diag-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(28px,3.2vw,42px);
  font-weight:600;
  line-height:1.08;
  color:#fff;
  margin-bottom:14px;
}
.vs-diag-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}

.vs-diag-sub{
  font-size:15px;
  line-height:1.7;
  color:rgba(255,255,255,.55);
  font-weight:300;
  max-width:480px;
  margin-bottom:32px;
}

.vs-diag-cards{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:8px;
  margin-bottom:24px;
}

.vs-diag-card{
  position:relative;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(196,149,106,.2);
  border-radius:4px;
  padding:10px 8px;
  cursor:pointer;
  transition:all .3s ease;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  overflow:hidden;
}
.vs-diag-card::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(196,149,106,.08) 0%, transparent 60%);
  opacity:0;
  transition:opacity .3s ease;
}
.vs-diag-card:hover{
  border-color:var(--vs-bronze);
  background:rgba(255,255,255,.07);
  transform:translateY(-2px);
}
.vs-diag-card:hover::before{ opacity:1; }
.vs-diag-card.active{
  border-color:var(--vs-bronze);
  background:rgba(196,149,106,.08);
  transform:translateY(-2px);
  box-shadow:0 10px 30px rgba(196,149,106,.15);
}
.vs-diag-card.active::before{ opacity:1; }

.vs-card-img{
  width:100%;
  aspect-ratio:1/1;
  border-radius:3px;
  overflow:hidden;
  position:relative;
  background:rgba(255,255,255,.04);
}
.vs-card-img img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  position:relative;
  z-index:2;
  filter:grayscale(25%);
  transition:filter .3s ease;
}
.vs-diag-card.active .vs-card-img img,
.vs-diag-card:hover .vs-card-img img{
  filter:grayscale(0%);
}

.vs-card-badge{
  font-family:var(--vs-sans);
  font-size:10px;
  font-weight:700;
  letter-spacing:.1em;
  color:rgba(255,255,255,.4);
  text-align:center;
  transition:color .3s ease;
}
.vs-diag-card.active .vs-card-badge,
.vs-diag-card:hover .vs-card-badge{
  color:var(--vs-bronze);
}

.vs-card-dot{
  width:5px;height:5px;
  border-radius:50%;
  background:var(--vs-bronze);
  opacity:0;
  transform:scale(0);
  transition:all .3s ease;
}
.vs-diag-card.active .vs-card-dot{
  opacity:1;
  transform:scale(1);
}

.vs-diag-panel{
  background:rgba(20,15,10,.9);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(196,149,106,.25);
  border-radius:4px;
  padding:20px 26px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:20px;
  align-items:center;
  min-height:70px;
  margin-bottom:24px;
}

.vs-diag-panel-level{
  font-family:var(--vs-sans);
  font-size:11px;
  font-weight:700;
  letter-spacing:.1em;
  color:#1a1410;
  background:var(--vs-bronze);
  padding:6px 14px;
  border-radius:4px;
  white-space:nowrap;
}

.vs-diag-panel-nome{
  font-family:var(--vs-serif);
  font-size:17px;
  font-weight:600;
  color:#fff;
  margin-bottom:4px;
}

.vs-diag-panel-desc{
  font-size:13px;
  line-height:1.6;
  color:rgba(255,255,255,.55);
  font-weight:300;
}

.vs-diag-progress{
  display:flex;
  gap:6px;
  margin-bottom:28px;
}
.vs-progress-bar{
  height:2px;
  flex:1;
  background:rgba(196,149,106,.15);
  border-radius:2px;
  transition:background .3s ease;
}
.vs-progress-bar.filled{
  background:var(--vs-bronze);
}

.vs-diag-form-wrap{
  background:rgba(20,15,10,.9);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(196,149,106,.25);
  padding:32px 36px;
  border-radius:4px;
  width:100%;
  box-sizing:border-box;
}

.vs-form-titulo{
  font-family:var(--vs-serif);
  font-size:20px;
  font-weight:400;
  color:#fff;
  margin-bottom:20px;
}
.vs-form-titulo span{
  color:var(--vs-bronze);
  font-style:italic;
}

.vs-diag-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}

.vs-form-label{
  display:block;
  font-size:11px;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,255,255,.45);
  margin-bottom:7px;
}

.vs-form-input{
  width:100%;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(196,149,106,.2);
  color:#fff;
  padding:13px 16px;
  font-family:var(--vs-sans);
  font-size:14px;
  font-weight:300;
  border-radius:4px;
  outline:none;
  transition:border-color .3s, background .3s;
  -webkit-appearance:none;
  box-sizing:border-box;
}
.vs-form-input::placeholder{
  color:rgba(255,255,255,.2);
}
.vs-form-input:focus{
  border-color:var(--vs-bronze);
  background:rgba(255,255,255,.07);
  outline:none !important;
  box-shadow:none !important;
}

.vs-form-submit{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  background:var(--vs-bronze);
  color:#1a1410;
  padding:16px;
  border:2px solid var(--vs-bronze);
  cursor:pointer;
  font-family:var(--vs-sans);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-radius:6px;
  margin-top:6px;
  transition:all .3s ease;
  -webkit-appearance:none;
  outline:none;
}
.vs-form-submit:hover{
  background:transparent;
  color:var(--vs-bronze);
  transform:translateY(-2px);
  box-shadow:0 10px 30px rgba(196,149,106,.2);
}
.vs-form-submit:focus,
.vs-form-submit:active{
  outline:none !important;
  box-shadow:none !important;
  background:var(--vs-bronze-lt);
  color:#1a1410;
}

.vs-form-obs{
  margin-top:12px;
  font-size:11px;
  color:rgba(255,255,255,.25);
  text-align:center;
  line-height:1.5;
}

@media(max-width:1024px){
  .vs-diag-inner{ padding:50px 24px; }
}

@media(max-width:768px){
  .vs-diag-cards{ grid-template-columns:repeat(4,1fr); }
  .vs-diag-panel{ grid-template-columns:1fr; gap:12px; }
  .vs-diag-form-row{ grid-template-columns:1fr; }
  .vs-diag-form-wrap{ padding:28px 20px; }
  .vs-form-submit{ padding:16px 12px; font-size:11px; letter-spacing:.05em; }
}

@media(max-width:480px){
  .vs-diag-cards{ grid-template-columns:repeat(4,1fr); gap:6px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b48cd62 *//* ===== LOCALIZAÇÃO ===== */
.vs-local{
  width:100%;
  background:#F7F3EE;
  font-family:var(--vs-sans);
}
.vs-local-inner{
  max-width:1280px;
  margin:0 auto;
  padding:80px 56px;
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:72px;
  align-items:center;
}
.vs-local-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:20px;
}
.vs-local-overline::before{
  content:'';
  width:30px;height:1px;
  background:var(--vs-bronze);
}
.vs-local-titulo{
  font-family:var(--vs-serif);
  font-size:clamp(28px,3vw,40px);
  font-weight:600;
  line-height:1.1;
  color:#1a1410;
  margin-bottom:36px;
}
.vs-local-titulo i{
  font-style:italic;
  color:var(--vs-bronze);
  font-weight:400;
}
.vs-local-infos{
  display:flex;
  flex-direction:column;
  gap:24px;
  margin-bottom:36px;
}
.vs-local-info-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
  opacity:0;
  transform:translateX(-20px);
  transition:opacity .5s ease, transform .5s ease;
}
.vs-local-info-item.vs-in{
  opacity:1;
  transform:translateX(0);
}
.vs-local-info-icon{
  width:36px;height:36px;
  border:1px solid rgba(196,149,106,.35);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  margin-top:2px;
}
.vs-local-info-icon svg{
  width:15px;height:15px;
  stroke:var(--vs-bronze);
}
.vs-local-info-label{
  font-size:10px;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#a09890;
  margin-bottom:4px;
}
.vs-local-info-value{
  font-size:15px;
  color:#1a1410;
  font-weight:400;
  line-height:1.5;
}
.vs-local-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#1a1410;
  color:#F7F3EE;
  padding:15px 28px;
  border:2px solid #1a1410;
  cursor:pointer;
  font-family:var(--vs-sans);
  font-size:12px;font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-radius:6px;
  transition:all .3s ease;
  -webkit-appearance:none;
  outline:none;
}
.vs-local-btn:hover{
  background:var(--vs-bronze);
  color:#1a1410;
  border-color:var(--vs-bronze);
  transform:translateY(-2px);
}
.vs-local-map{
  width:100%;
  height:420px;
  overflow:hidden;
  border:1px solid rgba(196,149,106,.2);
  border-radius:8px;
  opacity:0;
  transform:translateX(32px);
  transition:opacity .7s ease, transform .7s ease;
  transition-delay:.2s;
}
.vs-local-map.vs-in{
  opacity:1;
  transform:translateX(0);
}
.vs-local-map iframe{
  width:100%;
  height:100%;
  border:none;
  display:block;
  filter:grayscale(20%);
}

/* LEFT SIDE ANIMATION */
.vs-local-left{
  opacity:0;
  transform:translateX(-32px);
  transition:opacity .7s ease, transform .7s ease;
}
.vs-local-left.vs-in{
  opacity:1;
  transform:translateX(0);
}

/* ===== RODAPÉ ===== */
.vs-footer{
  width:100%;
  background:#0F0C09;
  font-family:var(--vs-sans);
}
.vs-footer-inner{
  max-width:1280px;
  margin:0 auto;
  padding:56px 56px 32px;
}
.vs-footer-top{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr;
  gap:60px;
  padding-bottom:40px;
  border-bottom:1px solid rgba(255,255,255,.07);
  margin-bottom:32px;
}
.vs-footer-logo-img{
  height:36px;
  width:auto;
  max-width:140px;
  display:block;
  margin-bottom:16px;
  object-fit:contain;
}
.vs-footer-brand-desc{
  font-size:13px;
  line-height:1.75;
  color:rgba(255,255,255,.4);
  font-weight:300;
  max-width:280px;
  margin-bottom:20px;
}
.vs-footer-wa-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#25D366;
  color:#fff;
  padding:12px 20px;
  border:none;cursor:pointer;
  font-family:var(--vs-sans);
  font-size:12px;font-weight:600;
  letter-spacing:.05em;
  border-radius:6px;
  transition:.3s;
  -webkit-appearance:none;
  outline:none;
}
.vs-footer-wa-btn:hover{
  opacity:.9;
  transform:translateY(-1px);
}
.vs-footer-col-titulo{
  font-size:11px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--vs-bronze);
  margin-bottom:20px;
}
.vs-footer-links{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.vs-footer-link{
  font-size:14px;
  color:rgba(255,255,255,.5);
  font-weight:300;
  text-decoration:none;
  cursor:pointer;
  transition:color .3s;
}
.vs-footer-link:hover{
  color:var(--vs-bronze);
}
.vs-footer-contact-item{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-bottom:14px;
}
.vs-footer-contact-item svg{
  width:14px;height:14px;
  stroke:var(--vs-bronze);
  flex-shrink:0;
  margin-top:2px;
}
.vs-footer-contact-text{
  font-size:13px;
  color:rgba(255,255,255,.45);
  font-weight:300;
  line-height:1.5;
}
.vs-footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
}
.vs-footer-copy{
  font-size:12px;
  color:rgba(255,255,255,.25);
  font-weight:300;
}
.vs-footer-copy span{
  color:rgba(196,149,106,.5);
}

/* FOOTER ANIMATION */
.vs-footer-top{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .7s ease, transform .7s ease;
}
.vs-footer-top.vs-in{
  opacity:1;
  transform:translateY(0);
}
.vs-footer-bottom{
  opacity:0;
  transition:opacity .6s ease;
  transition-delay:.3s;
}
.vs-footer-bottom.vs-in{
  opacity:1;
}

@media(max-width:1024px){
  .vs-local-inner{
    grid-template-columns:1fr;
    padding:56px 24px;
    gap:40px;
  }
  .vs-local-left{
    transform:translateY(24px);
  }
  .vs-local-left.vs-in{
    transform:translateY(0);
  }
  .vs-local-map{
    height:300px;
    transform:translateY(24px);
  }
  .vs-local-map.vs-in{
    transform:translateY(0);
  }
  .vs-footer-inner{padding:48px 24px 28px;}
  .vs-footer-top{
    grid-template-columns:1fr;
    gap:36px;
  }
}/* End custom CSS */
/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');

:root{
  --vs-dark:#171210;
  --vs-bronze:#C4956A;
  --vs-bronze-lt:#E0BC92;
  --vs-serif:'Montserrat',sans-serif;
  --vs-sans:'Plus Jakarta Sans',sans-serif;
}

:root {
  --e-global-color-accent: #C4956A !important;
  --e-global-color-primary: #1A1410 !important;
}

/* ============================================
   MOBILE GLOBAL — centraliza títulos e ajustes
   ============================================ */
@media(max-width:768px){

  /* TÍTULOS E OVERLINES — centralizar */
  .vs-overline,
  .vs-eyebrow,
  .vs-dores-overline,
  .vs-fue-overline,
  .vs-proc-overline,
  .vs-resultados-overline,
  .vs-dep-overline,
  .vs-medico-overline,
  .vs-faq-overline,
  .vs-local-overline,
  .vs-cta-final-overline{
    justify-content:center;
    text-align:center;
    width:100%;
  }

  .vs-h1,
  .vs-headline,
  .vs-dores-titulo,
  .vs-fue-titulo,
  .vs-proc-titulo,
  .vs-resultados-titulo,
  .vs-dep-titulo,
  .vs-medico-nome,
  .vs-faq-titulo,
  .vs-local-titulo,
  .vs-cta-final-titulo{
    text-align:center;
  }

  .vs-lead,
  .vs-subtitle,
  .vs-fue-desc,
  .vs-resultados-sub,
  .vs-faq-left-desc,
  .vs-local-titulo,
  .vs-cta-final-desc{
    text-align:center;
    margin-left:auto;
    margin-right:auto;
  }

  /* MEDICO — esp e divider centralizados */
  .vs-medico-esp{
    text-align:center;
  }
  .vs-medico-divider{
    margin-left:auto;
    margin-right:auto;
  }
  .vs-medico-bio{
    text-align:left;
  }
  .vs-medico-quote-text{
    text-align:left;
  }

  /* PROC — sub centralizado */
  .vs-proc-sub{
    text-align:center;
  }

  /* BOTÕES — largura total */
  .vs-btn,
  .vs-cta,
  .vs-fue-btn,
  .vs-dores-cta-btn,
  .vs-local-btn,
  .vs-medico-btn,
  .vs-faq-left-btn,
  .vs-proc-btn,
  .vs-resultados-btn{
    width:100%;
    justify-content:center;
  }

  /* FAQ LEFT — centralizado */
  .vs-faq-left{
    text-align:center;
  }
  .vs-faq-left-btn{
    margin:0 auto;
  }

  /* CTA FINAL */
  .vs-cta-final-left{
    text-align:center;
  }

  /* LOCALIZAÇÃO */
  .vs-local-left{
    text-align:center;
  }
  .vs-local-info-item{
    justify-content:center;
  }
  .vs-local-btn{
    width:100%;
    justify-content:center;
  }

  /* PROC CTA */
  .vs-proc-cta{
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  /* RESULTADOS */
  .vs-resultados-header{
    text-align:center;
    align-items:center;
  }

  /* HERO trust */
  .vs-trust{
    justify-content:center;
  }
}/* End custom CSS */