
:root{
  --verde:#1F3D33;
  --verde-fundo:#16302A;
  --dourado:#C39A3B;
  --areia:#F5EFE6;
  --papel:#FBF9F5;
  --tinta:#2B2B29;
  --tinta-suave:#5A5A55;
  --display:'Spectral',Georgia,serif;
  --corpo:'Archivo',-apple-system,Helvetica,sans-serif;
  --max:1180px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--corpo);
  font-weight:400;
  color:var(--tinta);
  background:var(--papel);
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
img,svg{display:block;max-width:100%}
a{color:inherit}

/* ---------- utilitários ---------- */
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.eyebrow{
  font-family:var(--corpo);
  font-size:.68rem;font-weight:600;
  letter-spacing:.3em;text-transform:uppercase;
  color:var(--dourado);
  margin-bottom:20px;
}
.eyebrow--claro{color:var(--dourado)}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.12;letter-spacing:-.015em}
h1{font-size:clamp(2.15rem,5.2vw,3.9rem)}
h2{font-size:clamp(1.65rem,3.4vw,2.55rem)}
h3{font-size:1.22rem;line-height:1.35}
p{max-width:66ch}
.lead{font-size:clamp(1.02rem,1.5vw,1.16rem);color:var(--tinta-suave);line-height:1.7}

/* filete dourado com losango — motivo tirado do próprio selo */
.rule{display:flex;align-items:center;gap:14px;margin:0}
.rule i{flex:1;height:1px;background:var(--dourado);opacity:.5}
.rule b{width:7px;height:7px;background:var(--dourado);transform:rotate(45deg)}
.rule--dark i{background:var(--dourado);opacity:.45}

/* botões */
.btn{
  display:inline-block;font-family:var(--corpo);
  font-size:.82rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  padding:15px 30px;text-decoration:none;border:1px solid transparent;
  transition:background .25s,color .25s,border-color .25s;cursor:pointer;
}
.btn--ouro{background:var(--dourado);color:var(--verde)}
.btn--ouro:hover{background:#D6AC50}
.btn--linha{border-color:var(--dourado);color:var(--dourado);background:transparent}
.btn--linha:hover{background:var(--dourado);color:var(--verde)}
.btn--verde{background:var(--verde);color:var(--areia)}
.btn--verde:hover{background:var(--verde-fundo)}
.btn--verde-linha{border-color:var(--verde);color:var(--verde)}
.btn--verde-linha:hover{background:var(--verde);color:var(--areia)}
.btn-linha-dupla{display:flex;gap:14px;flex-wrap:wrap;margin-top:38px}

/* ---------- cabeçalho ---------- */
.topo{
  position:sticky;top:0;z-index:50;background:var(--verde);
  border-bottom:1px solid rgba(195,154,59,.28);
}
.topo__in{max-width:var(--max);margin:0 auto;padding:0 28px;
  display:flex;align-items:center;gap:26px;min-height:76px}
.marca{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0}
.marca__selo{width:42px;height:42px}
.marca__txt{display:flex;flex-direction:column;line-height:1.1}
.marca__nome{font-family:var(--display);font-size:1.02rem;color:var(--areia);letter-spacing:.01em}
.marca__sub{font-family:var(--corpo);font-size:.55rem;letter-spacing:.26em;
  text-transform:uppercase;color:var(--dourado);margin-top:3px}
.nav{display:flex;gap:26px;margin-left:auto;align-items:center;flex-wrap:wrap}
.nav a{
  font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;
  color:rgba(245,239,230,.78);text-decoration:none;padding:6px 0;
  border-bottom:1px solid transparent;transition:color .2s,border-color .2s;
}
.nav a:hover{color:var(--areia)}
.nav a.on{color:var(--areia);border-bottom-color:var(--dourado)}
.nav .btn{padding:11px 20px;font-size:.72rem}

/* ---------- páginas ---------- */

/* ---------- hero ---------- */
.hero{position:relative;background:var(--verde);color:var(--areia);overflow:hidden}
.hero__marca{
  position:absolute;right:-190px;top:50%;transform:translateY(-50%);
  width:660px;opacity:.055;pointer-events:none;
}
.hero__in{position:relative;max-width:var(--max);margin:0 auto;padding:112px 28px 104px}
.hero h1{color:var(--areia);max-width:18ch}
.hero .lead{color:rgba(245,239,230,.76);margin-top:26px;max-width:56ch}
.hero--curto .hero__in{padding:78px 28px 70px}
.hero--curto h1{max-width:22ch}

/* ---------- blocos de seção ---------- */
.faixa{padding:96px 0}
.faixa--areia{background:var(--areia)}
.faixa--papel{background:var(--papel)}
.faixa--branco{background:#fff}
.faixa--verde{background:var(--verde);color:var(--areia)}
.faixa--verde h2,.faixa--verde h3{color:var(--areia)}
.faixa--verde p{color:rgba(245,239,230,.74)}
.cabeca{margin-bottom:52px;max-width:60ch}
.cabeca h2{margin-bottom:16px}

/* pilares */
.pilares{display:grid;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:46px}
.pilar h3{margin:18px 0 12px;color:var(--verde)}
.pilar p{color:var(--tinta-suave);font-size:.95rem}
.pilar__marca{width:26px;height:1px;background:var(--dourado)}

/* cards de serviço */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1px;background:rgba(31,61,51,.14)}
.card{background:#fff;padding:38px 32px;transition:background .25s}
.card:hover{background:var(--areia)}
.card h3{color:var(--verde);margin-bottom:14px}
.card p{font-size:.93rem;color:var(--tinta-suave)}

/* método — sequência real, por isso numerada */
.metodo{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:44px}
.etapa__n{font-family:var(--display);font-size:2.9rem;color:var(--dourado);line-height:1;margin-bottom:14px}
.etapa h3{margin-bottom:12px}
.etapa p{font-size:.93rem}

/* bairros */
.bairros-faixa{display:flex;flex-wrap:wrap;gap:10px 30px;margin:34px 0 30px}
.bairros-faixa span{font-family:var(--display);font-size:1.16rem;color:var(--areia)}
.bairros-faixa i{color:var(--dourado);font-style:normal}
.bairro{padding:34px 0;border-bottom:1px solid rgba(31,61,51,.13);display:grid;
  grid-template-columns:minmax(180px,260px) 1fr;gap:34px}
.bairro:last-child{border-bottom:none}
.bairro h3{color:var(--verde)}
.bairro p{color:var(--tinta-suave);font-size:.96rem}

/* sócios */
.socios{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:56px}
.socio__selo{width:64px;height:64px;margin-bottom:22px;opacity:.9}
.socio h3{color:var(--verde);margin-bottom:5px}
.socio__cargo{font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--dourado);margin-bottom:18px}
.socio p{font-size:.95rem;color:var(--tinta-suave);margin-bottom:16px}
.socio__tel{font-size:.9rem;color:var(--verde);font-weight:500}

/* valores */
.valores{display:grid;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:44px}
.valor h3{color:var(--verde);margin-bottom:12px;font-size:1.1rem}
.valor p{font-size:.93rem;color:var(--tinta-suave)}

/* serviço detalhado */
.servico{padding:56px 0;border-bottom:1px solid rgba(31,61,51,.13)}
.servico:last-of-type{border-bottom:none}
.servico h2{color:var(--verde);margin-bottom:20px}
.servico p{margin-bottom:16px;color:var(--tinta-suave)}
.servico__inclui{margin-top:24px;padding-top:20px;border-top:1px solid rgba(195,154,59,.4);
  font-size:.88rem;color:var(--tinta-suave);max-width:72ch}
.servico__inclui strong{color:var(--verde);font-weight:600}
.nota{font-size:.86rem;font-style:italic;color:var(--tinta-suave);
  border-left:2px solid var(--dourado);padding-left:16px;margin-top:22px;max-width:70ch}

/* erros (quero vender) */
.erros{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:44px}
.erro__tag{font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--dourado);margin-bottom:12px}
.erro h3{color:var(--verde);margin-bottom:14px}
.erro p{font-size:.95rem;color:var(--tinta-suave)}

/* formulário */
.form{max-width:660px}
.form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}
.campo{display:flex;flex-direction:column;margin-bottom:24px}
.campo label{font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--verde);margin-bottom:8px}
.campo input,.campo select,.campo textarea{
  font-family:var(--corpo);font-size:.95rem;color:var(--tinta);
  background:transparent;border:none;border-bottom:1px solid rgba(31,61,51,.32);
  padding:10px 0;transition:border-color .2s;
}
.campo input:focus,.campo select:focus,.campo textarea:focus{
  outline:none;border-bottom-color:var(--dourado)
}
.campo textarea{resize:vertical;min-height:90px}
.consent{display:flex;gap:11px;align-items:flex-start;margin:26px 0 30px;
  font-size:.83rem;color:var(--tinta-suave);max-width:60ch}
.consent input{margin-top:5px;accent-color:var(--verde);flex-shrink:0}

/* contato */
.canais{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:40px;margin-bottom:64px}
.canal h3{color:var(--verde);font-size:1.04rem;margin-bottom:10px}
.canal p{font-size:.94rem;color:var(--tinta-suave)}
.canal a{color:var(--verde);text-decoration:none;border-bottom:1px solid var(--dourado)}
.mapa{background:var(--areia);border:1px solid rgba(31,61,51,.15);height:280px;
  display:flex;align-items:center;justify-content:center;
  font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tinta-suave)}

/* CTA final */
.cta{background:var(--areia);text-align:center;padding:96px 0}
.cta__selo{width:88px;height:88px;margin:0 auto 30px}
.cta h2{color:var(--verde);margin-bottom:16px}
.cta p{margin:0 auto;color:var(--tinta-suave)}
.cta .btn-linha-dupla{justify-content:center}

/* texto legal */
.legal h2{color:var(--verde);font-size:1.2rem;margin:38px 0 12px}
.legal p{margin-bottom:14px;color:var(--tinta-suave);font-size:.96rem}

/* ---------- rodapé ---------- */
.rodape{background:var(--verde-fundo);color:rgba(245,239,230,.72);padding:76px 0 34px}
.rodape__cols{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:52px;margin-bottom:52px}
.rodape__selo{width:74px;height:74px;margin-bottom:20px}
.rodape h4{font-family:var(--display);font-size:1.1rem;color:var(--areia);margin-bottom:8px;font-weight:400}
.rodape__tag{font-family:var(--display);font-style:italic;font-size:.92rem;color:var(--dourado)}
.rodape h5{font-size:.68rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--dourado);margin-bottom:18px}
.rodape ul{list-style:none;font-size:.9rem;line-height:2}
.rodape ul a{text-decoration:none;transition:color .2s;cursor:pointer}
.rodape ul a:hover{color:var(--areia)}
.rodape__base{border-top:1px solid rgba(195,154,59,.24);padding-top:26px;
  font-size:.76rem;line-height:1.9;color:rgba(245,239,230,.5)}
.rodape__base a{color:rgba(245,239,230,.5)}
.pend{color:var(--dourado)}

/* whatsapp flutuante */
.zap{position:fixed;right:24px;bottom:24px;z-index:60;background:var(--verde);
  color:var(--areia);border-radius:50%;width:56px;height:56px;display:flex;
  align-items:center;justify-content:center;text-decoration:none;
  box-shadow:0 6px 22px rgba(22,48,42,.34);transition:transform .2s,background .2s}
.zap:hover{transform:translateY(-3px);background:var(--dourado);color:var(--verde)}
.zap svg{width:27px;height:27px}

/* revelação suave */
.rev{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.rev.vis{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .rev{opacity:1;transform:none}
}
@media (max-width:860px){
  .topo__in{flex-wrap:wrap;padding-top:14px;padding-bottom:14px;min-height:0;gap:14px}
  .nav{margin-left:0;width:100%;gap:16px}
  .nav a{font-size:.7rem}
  .rodape__cols{grid-template-columns:1fr;gap:38px}
  .bairro{grid-template-columns:1fr;gap:10px}
  .faixa{padding:66px 0}
  .hero__in{padding:74px 28px 66px}
  .hero__marca{right:-260px;opacity:.045}
}

/* ---- selos como imagem ---- */
.hero__marca{position:absolute;right:-190px;top:50%;transform:translateY(-50%);width:660px;height:660px;
  background:url("selo-claro.png") center/contain no-repeat;opacity:.055;pointer-events:none}
.cta__selo{width:88px;height:88px;margin:0 auto 30px;background:url("selo-cor.png") center/contain no-repeat}
.socio__selo{width:64px;height:64px;margin-bottom:22px;opacity:.9;background:url("selo-cor.png") center/contain no-repeat}
.rodape__selo{width:74px;height:74px;margin-bottom:20px;background:url("selo-claro.png") center/contain no-repeat}
.marca__logo{height:44px;width:auto;display:block}

/* ---- menu do celular ---- */
.menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;margin-left:auto}
.menu-btn span{display:block;width:24px;height:2px;background:var(--areia);margin:5px 0;transition:transform .25s,opacity .25s}
.menu-btn.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn.on span:nth-child(2){opacity:0}
.menu-btn.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:900px){
  .menu-btn{display:block}
  .nav{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:0;
    border-top:1px solid rgba(195,154,59,.25);padding:10px 0 18px;margin-left:0}
  .nav.aberto{display:flex}
  .nav a{padding:11px 0;font-size:.82rem;width:100%}
  .nav a.on{border-bottom-color:transparent;color:var(--dourado)}
  .nav .btn{margin-top:12px;width:100%;text-align:center}
  .hero__marca{right:-280px;width:460px;height:460px;opacity:.045}
}
/* ---- aviso de envio ---- */
.envio{margin-top:18px;font-size:.9rem;color:var(--verde);display:none}
.envio.on{display:block}
