/* =========================================================
   Espaço Mari Estética — folha de estilos
   Identidade: verde-sálvia claro + dourado bronze (logo com coroa de louros)
   ========================================================= */

:root{
  --preto:        #3B4630;  /* verde-sálvia profundo, usado como "base escura" da marca */
  --preto-suave:  #47543A;
  --pessego:      #C9D4B3;  /* verde-sálvia médio (acentos e painéis suaves) */
  --pessego-forte:#9FAE7E;  /* verde-sálvia mais saturado, para blobs e contraste */
  --pessego-claro:#EEF2E4;  /* verde-sálvia bem claro, para chips e fundos suaves */
  --creme:        #F8FAF3;  /* fundo geral — quase branco, com leve tom de sálvia */
  --dourado:      #B4924F;
  --dourado-claro:#D9BD82;
  --texto-suave:  #6E7660;

  --radius-lg: 28px;
  --radius-md: 18px;
  --radius-sm: 12px;
  --sombra-suave: 0 20px 50px rgba(59,70,48,.10);
  --sombra-forte: 0 30px 70px rgba(59,70,48,.22);

  --fonte-titulo: 'Cormorant Garamond', 'Times New Roman', serif;
  --fonte-corpo:  'Jost', 'Segoe UI', sans-serif;
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }

body{
  font-family:var(--fonte-corpo);
  color:var(--preto);
  background:var(--creme);
  font-size:17px;
  line-height:1.7;
  overflow-x:hidden;
}

h1,h2,h3,h4,.display-serif{
  font-family:var(--fonte-titulo);
  font-weight:600;
  letter-spacing:.2px;
  color:var(--preto);
}

a{ text-decoration:none; }
.text-gold{ color:var(--dourado); }
.bg-creme{ background:var(--creme); }
.bg-preto{ background:var(--preto); }
.bg-pessego{ background:var(--pessego); }

/* ---------- Blobs decorativos (modernidade discreta) ---------- */
.blob{
  position:absolute;
  border-radius:50%;
  filter:blur(70px);
  opacity:.55;
  pointer-events:none;
  z-index:0;
}

/* ---------- Banners / Promoções ---------- */
.secao-promos{ background:var(--creme); }

.banner-carrossel{
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--sombra-forte);
  max-width:640px;
  margin-inline:auto;
  border:1px solid rgba(180,146,79,.25);
}
.banner-slide{
  position:relative;
  display:block;
  aspect-ratio:1/1;
  background:var(--preto);
}
.banner-slide img{
  width:100%; height:100%;
  object-fit:cover;
  display:block;
  transition:transform .5s ease;
}
.banner-slide:hover img{ transform:scale(1.025); }

.banner-carrossel .carousel-control-prev,
.banner-carrossel .carousel-control-next{ width:64px; opacity:1; }
.banner-seta{
  width:42px; height:42px;
  border-radius:50%;
  background:rgba(251,244,237,.92);
  color:var(--preto);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 20px rgba(0,0,0,.3);
}
.banner-indicadores{ position:relative; margin-top:.9rem; margin-bottom:0; }
.banner-indicadores [data-bs-target]{
  width:8px; height:8px; border-radius:50%;
  background:rgba(59,70,48,.25);
  border:none;
  opacity:1;
}
.banner-indicadores [data-bs-target].active{ background:var(--dourado); width:22px; border-radius:6px; }

.banner-dica{
  font-size:.85rem;
  color:var(--texto-suave);
}
.banner-dica i{ color:#25D366; margin-right:.35rem; }

/* ---------- Divisor dourado (substitui as antigas faixas pêssego/preto) ---------- */
.faixas{
  height:5px;
  background:linear-gradient(90deg,
    transparent 0%,
    var(--dourado) 20%,
    var(--dourado-claro) 50%,
    var(--dourado) 80%,
    transparent 100%);
}

/* ---------- Navbar (glass) ---------- */
.navbar-em{
  background:rgba(59,70,48,.72);
  backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  padding:.9rem 0;
  transition:padding .25s ease, background .25s ease, box-shadow .25s ease;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.navbar-brand-frame{
  display:inline-flex;
  align-items:center;
}
.navbar-brand-frame img{
  height:48px; width:auto;
  display:block;
  border-radius:8px;
  box-shadow:0 6px 16px rgba(0,0,0,.18);
  transition:height .25s ease;
}
.navbar-em.scrolled .navbar-brand-frame img{ height:36px; }
.navbar-em .nav-link{
  color:var(--creme) !important;
  font-family:var(--fonte-corpo);
  font-size:.92rem;
  letter-spacing:.3px;
  margin:0 .15rem;
  padding:.5rem 1rem !important;
  border-radius:50px;
  opacity:.85;
  transition:background .2s ease, opacity .2s ease;
}
.navbar-em .nav-link:hover{ color:var(--dourado-claro) !important; opacity:1; background:rgba(255,255,255,.08); }
.navbar-em.scrolled{ padding:.45rem 0; box-shadow:0 12px 30px rgba(0,0,0,.28); background:rgba(59,70,48,.9); }

.btn-agendar{
  background:linear-gradient(135deg, var(--dourado) 0%, var(--dourado-claro) 100%);
  color:var(--preto) !important;
  border:none;
  padding:.6rem 1.5rem;
  border-radius:50px;
  font-weight:500;
  font-size:.9rem;
  letter-spacing:.3px;
  box-shadow:0 10px 24px rgba(180,146,79,.35);
  transition:transform .2s ease, box-shadow .2s ease;
}
.btn-agendar:hover{ transform:translateY(-2px); box-shadow:0 14px 30px rgba(180,146,79,.45); }

.btn-outline-em{
  border:1px solid rgba(255,255,255,.5);
  color:var(--creme);
  padding:.6rem 1.5rem;
  border-radius:50px;
  font-size:.9rem;
  letter-spacing:.3px;
  transition:all .2s ease;
}
.btn-outline-em:hover{ background:rgba(255,255,255,.1); border-color:var(--dourado); color:var(--dourado-claro); }

/* ---------- Hero ---------- */
.hero{
  background:radial-gradient(120% 100% at 15% 0%, #495A3C 0%, var(--preto) 55%);
  position:relative;
  overflow:hidden;
  padding-top:8.5rem;
  padding-bottom:6rem;
}
.hero .stripe-bg{
  position:absolute; inset:0;
  background:repeating-linear-gradient(
    to bottom,
    transparent 0px, transparent 46px,
    rgba(180,146,79,.08) 46px, rgba(180,146,79,.08) 48px
  );
  pointer-events:none;
}
.hero .blob-pessego{ width:480px; height:480px; background:var(--pessego); top:-160px; right:-140px; opacity:.18; }
.hero .blob-dourado{ width:340px; height:340px; background:var(--dourado); bottom:-120px; left:8%; opacity:.14; }

.hero h1{
  color:var(--creme);
  font-size:clamp(2.4rem, 5vw, 3.9rem);
  line-height:1.12;
}
.hero p.lead-em{
  color:#cfc6bf;
  font-size:1.08rem;
  max-width:480px;
}
.hero .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  color:var(--dourado-claro);
  background:rgba(180,146,79,.12);
  border:1px solid rgba(180,146,79,.35);
  font-family:var(--fonte-corpo);
  font-size:.8rem;
  letter-spacing:.4px;
  padding:.35rem .9rem;
  border-radius:50px;
  margin-bottom:1.1rem;
}
.hero .eyebrow i{ font-size:.7rem; }

.hero-badge{
  position:relative;
  width:min(420px, 88%);
  margin-inline:auto;
}
.hero-badge img{
  width:100%;
  display:block;
  border-radius:var(--radius-lg);
  box-shadow:0 25px 60px rgba(0,0,0,.5);
  transition:transform .4s ease;
}
.hero-badge:hover img{ transform:scale(1.02); }
.hero-anim{ animation: subir .9s ease both; }
@keyframes subir{ from{ opacity:0; transform:translateY(18px); } to{ opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion: reduce){ .hero-anim{ animation:none; } }

/* ---------- Selo de credibilidade ---------- */
.selo-strip{ background:var(--pessego); padding:1.1rem 0; position:relative; z-index:1; }
.selo-strip .item{ font-family:var(--fonte-corpo); font-size:.85rem; color:var(--preto); letter-spacing:.2px; }
.selo-strip i{ color:var(--preto); margin-right:.45rem; }

/* ---------- Cabeçalhos de seção ---------- */
.secao-titulo{ font-size:clamp(1.9rem, 3.2vw, 2.6rem); }
.secao-sub{ color:var(--texto-suave); max-width:560px; }
.secao-chip{
  display:inline-block;
  font-size:.78rem;
  letter-spacing:.4px;
  color:var(--dourado);
  background:var(--pessego-claro);
  padding:.3rem .9rem;
  border-radius:50px;
  margin-bottom:.9rem;
}

/* ---------- Tratamentos: grade bento ---------- */
.bento{
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  gap:1.25rem;
}
.trat-card{
  grid-column:span 3;
  background:#fff;
  border-radius:var(--radius-lg);
  padding:2rem;
  box-shadow:var(--sombra-suave);
  border:1px solid rgba(59,70,48,.05);
  transition:transform .3s ease, box-shadow .3s ease;
  position:relative;
  overflow:hidden;
}
.trat-card.featured{
  grid-column:span 6;
  background:linear-gradient(120deg, var(--preto) 0%, #4A5A3C 100%);
  color:var(--creme);
  display:flex;
  align-items:stretch;
  gap:2rem;
  padding:0;
  flex-wrap:wrap;
}
.featured-conteudo{ padding:2.2rem; flex:1 1 320px; }
.featured-foto{
  flex:0 1 300px;
  min-height:220px;
  position:relative;
  overflow:hidden;
}
.featured-foto img{
  width:100%; height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.05);
}
.featured-foto::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(59,70,48,.35) 0%, transparent 30%);
}
.badge-destaque{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  font-size:.72rem;
  letter-spacing:.3px;
  color:var(--preto);
  background:linear-gradient(135deg, var(--dourado-claro) 0%, var(--dourado) 100%);
  padding:.3rem .8rem;
  border-radius:50px;
  white-space:nowrap;
}

.featured-stat{
  display:flex;
  align-items:center;
  gap:1rem;
  margin:1.3rem 0;
  padding:.9rem 1.1rem;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(233,206,151,.25);
  border-radius:var(--radius-sm);
}
.featured-stat .numero{
  font-family:var(--fonte-titulo);
  font-size:2.1rem;
  font-weight:600;
  color:var(--dourado-claro);
  line-height:1;
  white-space:nowrap;
}
.featured-stat .legenda-stat{
  font-size:.82rem;
  color:#d8cfc7;
  line-height:1.4;
}

.lista-check{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:.6rem 1.4rem;
  padding:0;
  margin:0 0 .3rem;
}
.lista-check li{
  display:flex;
  align-items:center;
  gap:.5rem;
  font-size:.86rem;
  color:var(--creme);
}
.lista-check i{
  color:var(--preto);
  background:var(--dourado-claro);
  width:18px; height:18px;
  border-radius:50%;
  font-size:.62rem;
  display:flex; align-items:center; justify-content:center;
  flex:0 0 18px;
}

.disclaimer-featured{
  font-size:.72rem;
  color:rgba(251,244,237,.55);
  margin:.7rem 0 0;
}
.trat-card.featured .trat-titulo,
.trat-card.featured p{ color:var(--creme); }
.trat-card:hover{ transform:translateY(-6px); box-shadow:var(--sombra-forte); }

.trat-icone{
  flex:0 0 60px;
  height:60px; width:60px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--pessego) 0%, var(--dourado) 100%);
  color:var(--preto);
  display:flex; align-items:center; justify-content:center;
  font-size:1.25rem;
  margin-bottom:1.1rem;
}
.trat-card.featured .trat-icone{
  background:linear-gradient(135deg, var(--dourado) 0%, var(--dourado-claro) 100%);
  margin-bottom:0;
}
.trat-titulo{ font-family:var(--fonte-titulo); font-size:1.5rem; margin-bottom:.5rem; }
.trat-desc{ color:var(--texto-suave); margin-bottom:0; }
.trat-card.featured .trat-desc{ color:#d8cfc7; max-width:440px; }

.trat-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.6rem .9rem;
  margin-top:1.1rem;
  padding-top:1rem;
  border-top:1px dashed rgba(59,70,48,.14);
}
.trat-meta span{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  font-size:.78rem;
  color:var(--texto-suave);
  letter-spacing:.2px;
}
.trat-meta i{ color:var(--dourado); font-size:.8rem; }
.trat-card.featured .trat-meta{ border-top-color:rgba(255,255,255,.16); }
.trat-card.featured .trat-meta span{ color:#cfc6bf; }

.trat-tag{
  display:inline-block;
  font-size:.74rem;
  color:var(--dourado);
  border:1px solid rgba(180,146,79,.5);
  padding:.15rem .6rem;
  border-radius:20px;
  margin-top:1rem;
}
.trat-card.featured .trat-tag{ color:var(--dourado-claro); border-color:rgba(217,189,130,.5); }

@media (max-width: 991px){
  .trat-card{ grid-column:span 6; }
  .trat-card.featured{ flex-direction:column; align-items:flex-start; }
}

/* ---------- Vídeo ---------- */
.secao-video{ background:var(--preto); position:relative; overflow:hidden; }
.secao-video .blob-video{ width:420px; height:420px; background:var(--dourado); top:-100px; right:-100px; opacity:.12; }
.secao-video h2, .secao-video .secao-sub2{ color:var(--creme); }
.secao-video .secao-sub2{ color:#cfc6bf; max-width:520px; }

.video-frame{
  position:relative;
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--sombra-forte);
  border:1px solid rgba(255,255,255,.08);
  aspect-ratio:16/9;
  background:#000 center/cover no-repeat;
}
.video-frame video{
  width:100%; height:100%; object-fit:cover; display:block;
}
.video-play{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg, rgba(59,70,48,.15) 0%, rgba(59,70,48,.55) 100%);
  cursor:pointer;
  transition:opacity .3s ease;
}
.video-play .botao-play{
  width:84px; height:84px;
  border-radius:50%;
  background:rgba(251,244,237,.92);
  display:flex; align-items:center; justify-content:center;
  font-size:1.6rem;
  color:var(--preto);
  box-shadow:0 15px 40px rgba(0,0,0,.4);
  transition:transform .25s ease;
}
.video-play:hover .botao-play{ transform:scale(1.08); }
.video-play.escondido{ opacity:0; pointer-events:none; }
.video-frame .legenda{
  position:absolute; left:1.4rem; bottom:1.2rem;
  color:var(--creme);
  font-family:var(--fonte-titulo);
  font-style:italic;
  font-size:1.1rem;
  text-shadow:0 2px 10px rgba(0,0,0,.5);
}

.video-destaques{ margin-top:1.75rem; }
.video-destaques .item{
  display:flex; align-items:flex-start; gap:.8rem;
  padding:.9rem 0;
  border-top:1px solid rgba(255,255,255,.08);
}
.video-destaques .item:last-child{ border-bottom:1px solid rgba(255,255,255,.08); }
.video-destaques i{ color:var(--dourado); margin-top:.25rem; }
.video-destaques strong{ color:var(--creme); font-weight:500; }
.video-destaques span{ color:#a89f99; font-size:.9rem; display:block; }

/* ---------- Sobre ---------- */
.sobre{ background:var(--pessego-claro); position:relative; overflow:hidden; }
.sobre .blob-sobre{ width:380px; height:380px; background:var(--pessego-forte); bottom:-120px; right:-100px; opacity:.4; }
.sobre .moldura{
  position:relative;
  border-radius:var(--radius-lg);
  width:min(420px, 90%);
  margin-inline:auto;
  background:var(--preto);
  padding:16px;
  box-shadow:var(--sombra-forte);
}
.sobre .moldura img{ width:100%; display:block; border-radius:calc(var(--radius-lg) - 10px); }
.sobre .chip-flutuante{
  position:absolute;
  bottom:-18px; left:-10px;
  background:#fff;
  border-radius:var(--radius-sm);
  padding:.7rem 1.1rem;
  box-shadow:var(--sombra-forte);
  font-size:.85rem;
  display:flex; align-items:center; gap:.6rem;
}
.sobre .chip-flutuante i{ color:var(--dourado); font-size:1.2rem; }
.sobre blockquote{ font-family:var(--fonte-titulo); font-size:1.5rem; font-style:italic; color:var(--preto); }

/* ---------- Depoimentos ---------- */
.depoimentos{ background:var(--preto); color:var(--creme); position:relative; overflow:hidden; }
.depoimentos .blob-depo{ width:420px; height:420px; background:var(--pessego); top:50%; left:50%; transform:translate(-50%,-50%); opacity:.06; }
.depo-card{ text-align:center; max-width:640px; margin-inline:auto; position:relative; z-index:1; }
.depo-card p{ font-family:var(--fonte-titulo); font-size:1.55rem; font-style:italic; color:var(--creme); }
.depo-card .estrelas{ color:var(--dourado); letter-spacing:.2rem; margin-bottom:1rem; }
.depo-card .autor{ color:var(--dourado-claro); font-size:.9rem; letter-spacing:.3px; }
.carousel-indicators [data-bs-target]{ background:var(--dourado); }

/* ---------- Contato ---------- */
.contato{ background:var(--creme); position:relative; }
.form-card{
  background:#fff;
  border-radius:var(--radius-lg);
  padding:2.2rem;
  box-shadow:var(--sombra-suave);
}
.form-control-em{
  border:1px solid rgba(59,70,48,.12);
  border-radius:var(--radius-sm);
  background:var(--creme);
  padding:.7rem 1rem;
  font-size:.96rem;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.form-control-em:focus{
  box-shadow:0 0 0 3px rgba(180,146,79,.18);
  border-color:var(--dourado);
  background:#fff;
}
label.form-label-em{ font-size:.78rem; letter-spacing:.4px; color:var(--texto-suave); margin-bottom:.35rem; }
.btn-enviar{
  background:var(--preto);
  color:var(--creme);
  border:none;
  padding:.8rem 2.2rem;
  border-radius:50px;
  font-size:.92rem;
  letter-spacing:.4px;
  transition:background .2s ease, transform .2s ease;
}
.btn-enviar:hover{ background:var(--dourado); color:var(--preto); transform:translateY(-2px); }
.btn-enviar:disabled{ opacity:.6; }

.info-contato .linha{ display:flex; gap:.9rem; align-items:flex-start; margin-bottom:1.3rem; }
.info-contato i{ color:var(--dourado); width:20px; margin-top:.2rem; }
.info-contato .rotulo{ font-size:.78rem; color:var(--texto-suave); letter-spacing:.3px; }
.info-contato .valor{ font-family:var(--fonte-titulo); font-size:1.15rem; }

.mapa-wrap{ border-radius:var(--radius-md); overflow:hidden; filter:grayscale(55%) contrast(1.05); box-shadow:var(--sombra-suave); }

#form-msg{ font-size:.9rem; }

/* ---------- WhatsApp flutuante ---------- */
.wpp-flutuante{
  position:fixed; right:1.4rem; bottom:1.4rem; z-index:1040;
  width:58px; height:58px; border-radius:50%;
  background:#25D366; color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:1.55rem;
  box-shadow:0 14px 30px rgba(0,0,0,.32);
  transition:transform .2s ease;
}
.wpp-flutuante:hover{ transform:scale(1.08); color:#fff; }

/* ---------- Footer ---------- */
footer{ background:var(--preto); color:#a89f99; }
footer a{ color:#a89f99; }
footer a:hover{ color:var(--dourado-claro); }
.footer-social a{
  width:38px; height:38px; border-radius:50%;
  border:1px solid rgba(255,255,255,.25);
  display:inline-flex; align-items:center; justify-content:center;
  margin-right:.5rem;
  transition:border-color .2s ease, color .2s ease;
}
.footer-social a:hover{ border-color:var(--dourado); color:var(--dourado); }

@media (max-width: 767px){
  .trat-card{ padding:1.5rem; }
  .trat-card.featured{ padding:0; }
  .featured-conteudo{ padding:1.6rem; }
  .featured-foto{ flex-basis:100%; width:100%; height:200px; }
  .featured-stat{ flex-direction:column; align-items:flex-start; gap:.3rem; }
}
