:root{
  --azul: #279BD6;
  --azul-escuro: #1c7cae;
  --dourado: #FDB000;
  --fundo: #FBF7F1;
  --areia: #F1E8DA;
  --texto: #2E2A26;
  --texto-suave: #6b6459;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{
  font-family:'Jost', sans-serif;
  color:var(--texto);
  background:var(--fundo);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{
  font-family:'Cormorant Garamond', serif;
  font-weight:500;
  line-height:1.15;
}
.assinatura{
  font-family:'Alex Brush', cursive;
  color:var(--azul);
}
a{text-decoration:none;color:inherit;}
img{display:block;max-width:100%;}
.placeholder{
  position:relative;
}
.placeholder::after{
  content:" *";
  color:var(--dourado);
  font-weight:700;
}
.nota-confirmar{
  text-align:center;font-size:12px;color:var(--texto-suave);opacity:.75;
  padding:14px 0;background:var(--areia);
}
.nota-confirmar span{color:var(--dourado);font-weight:700;}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;}

/* HEADER */
header{
  position:sticky;top:0;z-index:50;
  background:rgba(251,247,241,0.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(0,0,0,0.06);
}
header .wrap{
  display:flex;align-items:center;justify-content:space-between;
  padding-top:14px;padding-bottom:14px;
}
header img.logo{height:52px;}
nav{display:flex;gap:34px;font-size:14px;letter-spacing:.03em;}
nav a{position:relative;padding:4px 0;}
nav a::after{
  content:"";position:absolute;left:0;bottom:0;width:0;height:1px;
  background:var(--azul);transition:width .25s ease;
}
nav a:hover::after, nav a.ativo::after{width:100%;}
nav a.ativo{color:var(--azul);}
.btn-cta{
  background:var(--azul);color:#fff;padding:11px 24px;border-radius:30px;
  font-size:14px;letter-spacing:.03em;transition:background .2s ease;
  white-space:nowrap;
}
.btn-cta:hover{background:var(--azul-escuro);}

/* MENU MOBILE */
.menu-toggle{
  display:none;flex-direction:column;gap:5px;background:none;border:none;
  cursor:pointer;padding:6px;
}
.menu-toggle span{width:24px;height:2px;background:var(--texto);display:block;}
nav.aberto{
  display:flex !important;flex-direction:column;position:absolute;top:100%;left:0;right:0;
  background:var(--fundo);padding:20px 32px;gap:18px;border-bottom:1px solid rgba(0,0,0,0.06);
}

/* BOTAO FLUTUANTE WHATSAPP */
.whatsapp-flutuante{
  position:fixed;bottom:22px;right:22px;z-index:60;
  width:56px;height:56px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px -6px rgba(0,0,0,0.35);
  transition:transform .2s ease;
}
.whatsapp-flutuante:hover{transform:scale(1.08);}
.whatsapp-flutuante svg{width:28px;height:28px;}

/* BANNER DE PROMOCAO */
.promo-banner{
  background:var(--dourado);color:#2E2A26;text-align:center;
  padding:10px 16px;font-size:13.5px;letter-spacing:.02em;font-weight:500;
}
.promo-banner strong{font-weight:600;}

/* PAGE HERO (banner interno das paginas internas) */
.page-hero{
  padding:64px 0 48px;text-align:center;
}
.page-hero .sec-eyebrow{text-align:center;}
.page-hero h1{font-size:clamp(34px,4.5vw,50px);}
.page-hero p{max-width:560px;margin:16px auto 0;color:var(--texto-suave);font-size:16px;}

/* HOME HERO - imagem única pronta (fundo diagonal + pessoa já integrados) */
.hero-photo-full{
  position:relative;width:100%;background:var(--fundo);
  max-height:560px;overflow:hidden;padding:0;margin:0;
}
.hero-photo-full img.hero-bg-img{
  width:100%;height:auto;max-height:560px;aspect-ratio:16/9;
  object-fit:cover;object-position:72% 15%;display:block;
}
.hero-overlay-text{
  position:absolute;top:0;left:0;height:100%;width:33%;
  display:flex;flex-direction:column;justify-content:center;
  padding-left:max(32px, calc((100vw - 1180px)/2 + 32px));
  padding-right:16px;z-index:2;
}
.hero-eyebrow{
  font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--dourado);font-weight:500;margin-bottom:14px;display:block;
}
.hero-overlay-text h1{font-size:clamp(24px,2.8vw,42px);color:var(--texto);}
.hero-overlay-text h1 span{color:var(--azul);}
.hero-overlay-text p.lead{margin-top:14px;font-size:15px;color:var(--texto-suave);max-width:320px;}
.hero-ctas{margin-top:22px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.hero-ctas .btn-cta{font-size:13px;padding:9px 18px;}
.btn-outline{
  border:1.5px solid var(--azul);color:var(--azul);padding:11px 24px;border-radius:30px;
  font-size:14px;font-weight:500;background:#fff;transition:all .2s ease;display:inline-block;
}
.btn-outline:hover{background:var(--azul);color:#fff;}
.hero-ctas .btn-outline{font-size:13px;padding:9px 18px;}
.hero-badge-pill{
  position:absolute;z-index:3;background:rgba(255,255,255,0.94);
  padding:8px 16px;border-radius:30px;font-size:12.5px;font-weight:500;
  box-shadow:0 8px 20px -6px rgba(0,0,0,0.25);white-space:nowrap;
}
.hero-selo{
  position:absolute;z-index:3;
  width:78px;height:78px;border-radius:50%;
  background:rgba(255,255,255,0.12);border:1.3px solid rgba(255,255,255,0.75);
  display:flex;align-items:center;justify-content:center;text-align:center;
  color:#fff;font-size:8px;letter-spacing:.04em;line-height:1.25;padding:6px;
}
.hero-pills-mobile{display:none;}

/* SECTION PATTERNS */
.sec-eyebrow{
  font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--azul);
  font-weight:500;margin-bottom:10px;display:block;
}
section{padding:80px 0;}
.sec-head{max-width:600px;margin-bottom:48px;}
.sec-head.centro{max-width:640px;margin-left:auto;margin-right:auto;text-align:center;}
.sec-head h2{font-size:clamp(28px,3.4vw,40px);}

/* SOBRE / bloco texto+foto */
.bloco-alt{background:var(--areia);}
.grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:56px;align-items:center;}
.bloco-alt.inverso .grid{grid-template-columns:1.15fr 0.85fr;}
.grid-balanceado{grid-template-columns:0.68fr 1.32fr !important;gap:44px !important;}
.bloco-alt.inverso .grid-balanceado{grid-template-columns:1.32fr 0.68fr !important;}
.bloco-alt.inverso .foto-col{order:2;}
.foto-col{border-radius:20px;overflow:hidden;aspect-ratio:4/5;}
.foto-col img{width:100%;height:100%;object-fit:cover;object-position:top center;}
.texto-col p{margin-bottom:16px;color:var(--texto-suave);font-size:16px;}
.texto-col .assinatura{font-size:30px;display:block;margin-top:22px;}

/* TRATAMENTOS */
.tratamentos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.card-tratamento{
  background:#fff;border-radius:18px;padding:30px 26px;
  border:1px solid rgba(0,0,0,0.06);
  transition:transform .2s ease, box-shadow .2s ease;
}
.card-tratamento:hover{transform:translateY(-4px);box-shadow:0 20px 40px -20px rgba(0,0,0,0.15);}
.card-tratamento .icone{
  width:44px;height:44px;border-radius:50%;background:rgba(39,155,214,0.1);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;
  color:var(--azul);font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;
}
.card-tratamento h3{font-size:20px;margin-bottom:8px;}
.card-tratamento p{font-size:14px;color:var(--texto-suave);}
.card-tratamento.exclusivo{border:1.5px solid var(--dourado);position:relative;}
.selo-exclusivo{
  position:absolute;top:-11px;right:20px;background:var(--dourado);color:#2E2A26;
  font-size:10.5px;font-weight:600;letter-spacing:.03em;padding:3px 12px;border-radius:20px;
}
.card-tratamento.com-foto{padding:0;overflow:hidden;}
.card-tratamento.exclusivo.com-foto .selo-exclusivo{top:10px;right:10px;z-index:2;}
.card-tratamento.com-foto .foto-tratamento{aspect-ratio:4/3;overflow:hidden;}
.card-tratamento.com-foto .foto-tratamento img{width:100%;height:100%;object-fit:cover;display:block;}
.card-tratamento.com-foto .conteudo-tratamento{padding:22px 22px 26px;}
.card-tratamento.com-foto .icone{margin-bottom:12px;}

/* TABS DE CATEGORIA */
.tabs-categoria{display:flex;gap:10px;justify-content:center;margin-bottom:40px;flex-wrap:wrap;}
.tab-btn{
  background:#fff;border:1px solid rgba(0,0,0,0.1);padding:10px 22px;border-radius:30px;
  font-size:14px;letter-spacing:.02em;cursor:pointer;transition:all .2s ease;
  font-family:'Jost',sans-serif;color:var(--texto-suave);
}
.tab-btn.ativa{background:var(--azul);color:#fff;border-color:var(--azul);}
.painel-categoria{display:none;}
.painel-categoria.ativa{display:block;}

/* EQUIPE */
.equipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.equipe-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
@media (max-width:860px){.equipe-grid-4{grid-template-columns:repeat(2,1fr);}}
.card-equipe{text-align:center;}
.card-equipe .foto{border-radius:200px 200px 16px 16px;overflow:hidden;aspect-ratio:3/4;margin-bottom:16px;}
.card-equipe .foto img{width:100%;height:100%;object-fit:cover;object-position:top center;}
.card-equipe h3{font-size:19px;}
.card-equipe .funcao{font-size:13px;color:var(--azul);letter-spacing:.04em;margin:4px 0 8px;}
.card-equipe .selo{
  display:inline-block;font-size:11px;background:rgba(253,176,0,0.14);color:#8a5c00;
  padding:4px 10px;border-radius:20px;letter-spacing:.02em;
}

/* PROVA SOCIAL */
.prova-social{padding:50px 0;}
.prova{
  display:flex;align-items:center;justify-content:center;gap:40px;
  background:var(--azul);color:#fff;border-radius:24px;padding:36px 48px;
}
.prova .nota{font-family:'Cormorant Garamond',serif;font-size:46px;font-weight:600;}
.prova .nota-sub{font-size:12px;letter-spacing:.05em;opacity:.85;}
.prova .frase{max-width:520px;font-size:19px;font-family:'Cormorant Garamond',serif;font-style:italic;line-height:1.4;border-left:2px solid rgba(255,255,255,0.35);padding-left:24px;}

/* CONTATO */
.contato .grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.contato-info div{margin-bottom:22px;}
.contato-info .lbl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--texto-suave);margin-bottom:4px;}
.contato-info .val{font-size:17px;}
.mapa-placeholder{
  background:var(--areia);border-radius:18px;height:100%;min-height:260px;
  display:flex;align-items:center;justify-content:center;color:var(--texto-suave);font-size:14px;
}

/* GALERIA ESPACO */
.galeria-espaco{
  display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:16px;
  max-width:1000px;margin:0 auto;
}
.galeria-espaco .item-grande{grid-row:1/3;border-radius:18px;overflow:hidden;}
.galeria-espaco .item{border-radius:18px;overflow:hidden;}
.galeria-espaco img{width:100%;height:100%;object-fit:cover;}

/* ESPACO + VIDEO EM LINHA */
.espaco-flex{
  display:flex;gap:16px;align-items:stretch;justify-content:center;
  max-width:1000px;margin:0 auto;height:460px;
}
.espaco-foto{flex:1;border-radius:18px;overflow:hidden;}
.espaco-foto img{width:100%;height:100%;object-fit:cover;}
.espaco-video{
  width:230px;flex-shrink:0;border-radius:26px;overflow:hidden;
  border:6px solid #1A1A1A;box-shadow:0 20px 40px -14px rgba(0,0,0,0.3);
}
.espaco-video video{width:100%;height:100%;object-fit:cover;display:block;}
@media (max-width:700px){
  .espaco-flex{flex-direction:column;height:auto;}
  .espaco-foto{aspect-ratio:4/3;}
  .espaco-video{width:100%;max-width:260px;aspect-ratio:9/16;margin:0 auto;}
}
@media (max-width:700px){
  .galeria-espaco{grid-template-columns:1fr;grid-template-rows:auto;}
  .galeria-espaco .item-grande{grid-row:auto;aspect-ratio:4/3;}
  .galeria-espaco .item{aspect-ratio:4/3;}
}

footer{background:var(--texto);color:#fff;padding:40px 0;}
footer .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
footer .logo-footer{height:34px;filter:brightness(0) invert(1);}
footer .links{display:flex;gap:24px;font-size:13px;opacity:.8;}
footer .copy{font-size:12px;opacity:.6;width:100%;margin-top:20px;}
footer .copy a{text-decoration:underline;opacity:1;color:#fff;}

@media (max-width: 860px){
  header img.logo{height:38px;}
  header .btn-cta{display:none;}
  .hero-photo-full{max-height:none;overflow:visible;}
  .hero-photo-full img.hero-bg-img{height:auto;aspect-ratio:3/4;object-position:75% center;}
  .hero-overlay-text{
    position:static;width:100%;height:auto;
    background:var(--fundo);padding:28px 24px;text-align:left;
  }
  .hero-overlay-text p.lead{max-width:none;}
  .hero-selo{width:56px;height:56px;font-size:6.5px;}
  .hero-badge-pill{display:none;}
  .hero-pills-mobile{
    display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;
  }
  .hero-pills-mobile span{
    background:rgba(39,155,214,0.1);color:var(--azul);border:1px solid rgba(39,155,214,0.3);
    padding:6px 14px;border-radius:20px;font-size:12px;font-weight:500;
  }
  .bloco-alt .grid, .bloco-alt.inverso .grid{grid-template-columns:1fr;}
  .grid-balanceado, .bloco-alt.inverso .grid-balanceado{grid-template-columns:1fr !important;gap:24px !important;}
  .bloco-alt.inverso .foto-col{order:0;}
  .foto-col{max-height:none !important;aspect-ratio:4/5;}
  .tratamentos-grid{grid-template-columns:1fr 1fr;}
  .equipe-grid{grid-template-columns:1fr;}
  .prova{flex-direction:column;text-align:center;padding:32px 28px;}
  .prova .frase{border-left:none;border-top:2px solid rgba(255,255,255,0.35);padding-left:0;padding-top:16px;}
  .contato .grid{grid-template-columns:1fr;}
  nav{display:none;}
  .menu-toggle{display:flex;}
  header .wrap{position:relative;}
}
@media (max-width:480px){
  .hero-photo-full img.hero-bg-img{aspect-ratio:1/1;}
}
