  :root{
    --verde-escuro:#3D5A45;
    --verde-medio:#6B8F71;
    --terracota:#C1694F;
    --terracota-clara:#D98B6E;
    --creme:#F6F1E7;
    --creme-elevado:#FAF6EE;
    --carvao:#2B2620;
    --carvao-suave:#5b5346;
    --linha:#E3DACB;
    --ease:cubic-bezier(0.22, 1, 0.36, 1);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:auto;}
  body{
    margin:0;
    background:var(--creme);
    color:var(--carvao);
    font-family:'Jost',sans-serif;
    font-weight:400;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1180px;margin:0 auto;padding-inline:24px;}
  section{padding-block:16px;position:relative;}
  @media (min-width:768px){section{padding-block:28px;}}
  @media (min-width:1024px){section{padding-block:40px;}}

  h1,h2,h3,.serif{font-family:'Fraunces',serif;letter-spacing:-.01em;}
  h1{font-size:clamp(2.25rem,6vw,5rem);font-weight:600;line-height:1.04;margin:0;}
  h2{font-size:clamp(1.75rem,4vw,3.5rem);font-weight:600;line-height:1.08;margin:0;}
  h3{font-size:clamp(1.125rem,2vw,1.5rem);font-weight:500;line-height:1.25;margin:0;}
  p{font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.65;color:var(--carvao-suave);margin:0;}
  .eyebrow{
    font-size:12px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--terracota);font-weight:600;margin-bottom:14px;display:block;
  }
  .caption{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--carvao-suave);}

  /* ---------- NAV ---------- */
  header.nav{
    position:fixed;top:0;left:0;right:0;z-index:100;
    background:rgba(246,241,231,.88);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--linha);
    transition:transform .5s var(--ease);
  }
  .nav-inner{
    max-width:1180px;margin:0 auto;padding:10px 24px;
    display:flex;align-items:center;justify-content:space-between;
  }
  .nav-logo img{height:68px;width:auto;margin-top:10px;}
  nav.links{display:none;align-items:center;gap:32px;}
  @media (min-width:1024px){nav.links{display:flex;}}
  nav.links a{
    font-size:.9rem;letter-spacing:.02em;position:relative;padding-bottom:4px;
  }
  nav.links a::after{
    content:'';position:absolute;left:0;bottom:0;width:0;height:1px;
    background:var(--terracota);transition:width .3s var(--ease);
  }
  nav.links a:hover::after{width:100%;}
  .nav-actions{display:flex;align-items:center;gap:16px;}
  .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:12px 26px;border-radius:999px;font-size:.9rem;font-weight:500;
    letter-spacing:.02em;border:1px solid transparent;cursor:pointer;
    transition:transform .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease), color .3s var(--ease);
  }
  .btn-primary{background:var(--terracota);color:var(--creme);}
  .btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 10px 24px -8px rgba(193,105,79,.55);}
  .btn-outline{border-color:var(--carvao);color:var(--carvao);}
  .btn-outline:hover{background:var(--carvao);color:var(--creme);transform:translateY(-2px);}
  .btn-ghost{color:var(--verde-escuro);font-weight:500;}
  .btn-ghost:hover{color:var(--terracota);}
  .nav-wpp{display:none;}
  @media (min-width:640px){.nav-wpp{display:inline-flex;}}

  .hamburger{
    display:flex;flex-direction:column;gap:5px;width:28px;background:none;border:none;cursor:pointer;padding:8px 0;
  }
  @media (min-width:1024px){.hamburger{display:none;}}
  .hamburger span{height:2px;background:var(--carvao);border-radius:2px;transition:transform .3s var(--ease),opacity .3s var(--ease);}

  .mobile-overlay{
    position:fixed;inset:0;background:var(--creme);z-index:200;
    display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
    padding:24px 40px;gap:28px;
    transform:translateY(-100%);transition:transform .5s var(--ease);
  }
  .mobile-overlay.open{transform:translateY(0);}
  .mobile-overlay a{font-family:'Fraunces',serif;font-size:2rem;font-weight:500;}
  .mobile-close{position:absolute;top:24px;right:24px;background:none;border:none;font-size:1.8rem;cursor:pointer;color:var(--carvao);}

  /* ---------- HERO ---------- */
  .hero{
    min-height:100vh;display:flex;align-items:center;
    padding-top:150px;padding-bottom:60px;
  }
  .hero-grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:start;}
  @media (min-width:1024px){.hero-grid{grid-template-columns:1.1fr .9fr;gap:64px;}}
  .hero-kinetic .word{display:inline-block;overflow:hidden;}
  .hero-kinetic .word span{display:inline-block;transform:translateY(110%);}
  .hero p.lede{margin-top:24px;max-width:460px;}
  .hero-ctas{display:flex;flex-wrap:wrap;gap:16px;margin-top:36px;}
  .hero-media{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/5;background:var(--verde-escuro);}
  .hero-media img{width:100%;height:112%;object-fit:cover;filter:sepia(.18) saturate(.85) brightness(.98);}
  .hero-badge{
    position:absolute;bottom:20px;left:20px;background:var(--creme);
    border-radius:14px;padding:14px 18px;display:flex;align-items:center;gap:12px;
    box-shadow:0 12px 30px -10px rgba(43,38,32,.3);
  }
  .hero-badge .num{font-family:'Fraunces',serif;font-size:1.6rem;font-weight:600;color:var(--terracota);}
  .hero-badge .txt{font-size:.72rem;line-height:1.3;color:var(--carvao-suave);max-width:120px;}
  .scroll-cue{
    position:absolute;bottom:28px;left:24px;display:flex;align-items:center;gap:10px;
    font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--carvao-suave);
  }
  .scroll-cue .line{width:1px;height:28px;background:var(--carvao-suave);position:relative;overflow:hidden;}
  .scroll-cue .line::after{
    content:'';position:absolute;top:0;left:0;width:100%;height:40%;background:var(--terracota);
    animation:scrolldown 1.8s infinite var(--ease);
  }
  @keyframes scrolldown{0%{transform:translateY(-100%);}100%{transform:translateY(250%);}}

  /* ---------- SOBRE ---------- */
  .sobre-grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:start;}
  @media (min-width:1024px){.sobre-grid{grid-template-columns:.85fr 1.15fr;gap:80px;}}
  .sobre-media{border-radius:20px;overflow:hidden;position:relative;aspect-ratio:3/4;}
  .sobre-media img{width:100%;height:130%;object-fit:cover;filter:sepia(.15) saturate(.9);will-change:transform;}
  .pillars{display:grid;gap:28px;margin-top:36px;}
  @media (min-width:640px){.pillars{grid-template-columns:1fr 1fr 1fr;}}
  .pillar{border-top:1px solid var(--linha);padding-top:18px;}
  .pillar .n{font-family:'Fraunces',serif;color:var(--terracota);font-size:.85rem;letter-spacing:.05em;}
  .pillar h3{margin-top:8px;}
  .pillar p{margin-top:8px;font-size:.95rem;}
  .formacao-note{margin-top:32px;padding-top:24px;border-top:1px solid var(--linha);}
  .formacao-note p{font-size:.82rem;line-height:1.6;color:var(--carvao-suave);max-width:520px;}

  /* ---------- TÉCNICAS ---------- */
  .section-elevated{background:var(--creme-elevado);}
  .tecnicas-intro{display:grid;grid-template-columns:1fr;gap:32px;align-items:start;}
  @media (min-width:1024px){.tecnicas-intro{grid-template-columns:1.3fr 1fr;gap:48px;}}
  .tecnica-featured{border:1px solid var(--linha);border-radius:16px;}
  .tecnicas-grid{display:grid;grid-template-columns:1fr;gap:1px;background:var(--linha);border:1px solid var(--linha);border-radius:18px;overflow:hidden;margin-top:56px;}
  @media (min-width:640px){.tecnicas-grid{grid-template-columns:1fr 1fr;}}
  @media (min-width:1024px){.tecnicas-grid{grid-template-columns:1fr 1fr 1fr;}}
  .tecnica-card{background:var(--creme-elevado);padding:36px 30px;transition:background .3s var(--ease);}
  .tecnica-card:hover{background:var(--creme);}
  .tecnica-card img{width:26px;height:26px;object-fit:contain;opacity:.85;margin-bottom:20px;display:block;}
  .tecnica-card h3{margin-bottom:10px;}
  .tecnica-card p{font-size:.92rem;}

  /* ---------- PARA QUEM É ---------- */
  .paraquem-grid{display:grid;grid-template-columns:1fr;gap:56px;margin-top:24px;align-items:start;}
  @media (min-width:768px){.paraquem-grid{grid-template-columns:1fr 1fr;}}
  .sintoma-list{display:flex;flex-direction:column;}
  .sintoma-item{
    display:flex;align-items:baseline;gap:18px;padding:18px 0;
    border-bottom:1px solid var(--linha);
  }
  .sintoma-item .idx{font-family:'Fraunces',serif;color:var(--terracota-clara);font-size:1rem;}
  .sintoma-item h3{font-size:1.1rem;}

  /* ---------- COMO FUNCIONA ---------- */
  .etapas{display:grid;grid-template-columns:1fr;gap:0;margin-top:56px;position:relative;}
  @media (min-width:768px){.etapas{grid-template-columns:repeat(3,1fr);gap:40px;}}
  .etapa{position:relative;padding:32px 0;border-top:1px solid var(--linha);}
  @media (min-width:768px){.etapa{border-top:none;padding-top:0;}}
  .etapa .num{font-family:'Fraunces',serif;font-size:3rem;color:var(--terracota-clara);font-weight:500;line-height:1;}
  .etapa h3{margin-top:14px;}
  .etapa p{margin-top:10px;font-size:.95rem;}

  /* ---------- DEPOIMENTOS ---------- */
  .carousel{position:relative;margin-top:56px;}
  .carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:24px;scrollbar-width:none;}
  .carousel-track::-webkit-scrollbar{display:none;}
  .carousel-slide{flex:0 0 100%;scroll-snap-align:start;background:var(--creme-elevado);border:1px solid var(--linha);border-radius:18px;padding:36px;}
  @media (min-width:768px){.carousel-slide{flex:0 0 calc(50% - 12px);}}
  @media (min-width:1024px){.carousel-slide{flex:0 0 calc(33.333% - 16px);}}
  .carousel-slide .quote{font-family:'Fraunces',serif;font-size:1.15rem;font-style:italic;color:var(--carvao);line-height:1.5;}
  .carousel-slide .who{margin-top:20px;font-size:.85rem;color:var(--verde-escuro);font-weight:500;}
  .carousel-btn{
    position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:44px;height:44px;
    border-radius:50%;border:1px solid var(--carvao);background:var(--creme);cursor:pointer;
    display:flex;align-items:center;justify-content:center;transition:background .3s var(--ease),color .3s var(--ease);
  }
  .carousel-btn:hover{background:var(--carvao);color:var(--creme);}
  .carousel-prev{left:-22px;}
  .carousel-next{right:-22px;}
  @media (max-width:900px){.carousel-btn{display:none;}}
  .carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:28px;}
  .carousel-dot{width:7px;height:7px;border-radius:50%;background:var(--linha);border:none;cursor:pointer;transition:background .3s var(--ease),transform .3s var(--ease);}
  .carousel-dot.active{background:var(--terracota);transform:scale(1.3);}
  .depo-note{margin-top:20px;font-size:.78rem;color:var(--carvao-suave);opacity:.75;}

  /* ---------- BLOG TEASER ---------- */
  .blog-grid{display:grid;grid-template-columns:1fr;gap:32px;margin-top:56px;}
  @media (min-width:768px){.blog-grid{grid-template-columns:repeat(3,1fr);}}
  .blog-card{display:block;border-radius:16px;overflow:hidden;background:var(--creme-elevado);border:1px solid var(--linha);transition:transform .35s var(--ease), box-shadow .35s var(--ease);}
  .blog-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px -20px rgba(43,38,32,.25);}
  .blog-card .thumb{aspect-ratio:16/10;overflow:hidden;}
  .blog-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease), filter .5s var(--ease);filter:sepia(.15) saturate(.9);}
  .blog-card:hover .thumb img{transform:scale(1.05);filter:sepia(.05) saturate(1) brightness(1.03);}
  .blog-card .content{padding:22px 24px 26px;}
  .blog-card .tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--terracota);font-weight:600;}
  .blog-card h3{margin-top:10px;font-size:1.15rem;}
  .blog-card p{margin-top:8px;font-size:.88rem;}
  .blog-cta{margin-top:44px;text-align:center;}

  /* ---------- CONTATO ---------- */
  .contato-grid{display:grid;grid-template-columns:1fr;gap:48px;margin-top:24px;}
  @media (min-width:1024px){.contato-grid{grid-template-columns:1fr 1fr;}}
  .contato-cards{display:flex;flex-direction:column;}
  .contato-card{
    display:flex;align-items:center;gap:20px;padding:26px 24px;border:1px solid var(--linha);
    border-radius:16px;transition:border-color .3s var(--ease), transform .3s var(--ease);margin-bottom:16px;
  }
  .contato-card:hover{border-color:var(--terracota);transform:translateX(4px);}
  .contato-card .icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
  .contato-card .icon svg{width:30px;height:30px;stroke:var(--verde-escuro);fill:none;stroke-width:1.5;}
  .contato-card h3{font-size:1rem;}
  .contato-card p{font-size:.85rem;margin-top:4px;}
  .regioes-card{
    border-radius:16px;border:1px solid var(--linha);background:var(--creme-elevado);
    padding:36px 32px;
  }
  .regiao-item{
    display:flex;align-items:center;gap:14px;padding:8px 0;border-top:1px solid var(--linha);
  }
  .regiao-item:first-of-type{border-top:none;}
  .regiao-item .pin{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
  .regiao-item .pin svg{width:24px;height:24px;stroke:var(--terracota);fill:none;stroke-width:1.5;}
  .regiao-item span:last-child{font-size:.95rem;color:var(--carvao);}

  /* ---------- FOOTER ---------- */
  footer{background:var(--verde-escuro);color:var(--creme);padding-block:72px 32px;}
  footer .wrap{display:grid;grid-template-columns:1fr;gap:40px;}
  @media (min-width:768px){footer .wrap{grid-template-columns:1.2fr 1fr 1fr;}}
  footer .logo-foot img{height:68px;width:auto;margin-bottom:16px;}
  footer p{color:#D8D2C2;font-size:.9rem;}
  footer h3{color:var(--creme);font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;font-family:'Jost',sans-serif;font-weight:500;}
  footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
  footer a{color:#D8D2C2;font-size:.92rem;transition:color .3s var(--ease);}
  footer a:hover{color:var(--terracota-clara);}
  .footer-bottom{
    max-width:1180px;margin:56px auto 0;padding:24px 24px 0;border-top:1px solid rgba(246,241,231,.15);
    display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:.78rem;color:#B9B29E;
  }

  /* ---------- WHATSAPP FLUTUANTE ---------- */
  .wpp-float{
    position:fixed;bottom:24px;right:24px;z-index:150;
    width:56px;height:56px;border-radius:50%;background:var(--verde-escuro);
    display:flex;align-items:center;justify-content:center;box-shadow:0 12px 28px -8px rgba(61,90,69,.55);
    transition:transform .3s var(--ease);
  }
  .wpp-float:hover{transform:scale(1.08);}
  .wpp-float svg{width:26px;height:26px;fill:var(--creme);}
  @media (min-width:1024px){.wpp-float{display:none;}}

  /* ---------- reveal ---------- */
  .reveal{opacity:0;transform:translateY(28px);}
  .reveal.in{opacity:1;transform:translateY(0);transition:opacity .8s var(--ease), transform .8s var(--ease);}

  .divider{height:1px;background:var(--linha);width:100%;margin-block:0;}