/* =========================================================
   WK Engenharia & Perícia — William Kamimura
   Identidade conforme Manual de Marca v1.0
   Verde Circuito #19452E · Cobre #B87333 · Marfim #F5F4F0
   Onest (display/interface) · JetBrains Mono (técnico/dados)
   ========================================================= */

:root{
  /* --- Paleta oficial --- */
  --wk-primary:   #19452E;  /* Verde Circuito  */
  --wk-accent:    #B87333;  /* Cobre           */
  --wk-secondary: #2A2A28;  /* Carvão          */
  --wk-neutral:   #F5F4F0;  /* Marfim          */
  --wk-card:      #FAFAF7;  /* Branco Quente   */
  --wk-surface:   #F0EFE9;  /* Areia           */
  --wk-dark:      #0D1A10;  /* Verde Profundo  */
  --wk-muted:     #5A5A52;  /* Cinza Oliva     */

  /* --- Escala de verde --- */
  --wk-green-900: #0D1A10;
  --wk-green-800: #19452E;
  --wk-green-600: #4A7C5F;
  --wk-green-400: #8AB59A;
  --wk-green-200: #C2D8C9;
  --wk-green-100: #EBF0EC;

  /* --- Escala de cobre --- */
  --wk-copper-900: #3D1F00;
  --wk-copper-700: #B87333;
  --wk-copper-500: #C9924D;
  --wk-copper-400: #DDB080;
  --wk-copper-200: #EDCFAA;
  --wk-copper-100: #F8EFE3;

  /* --- Tipografia --- */
  --wk-font-display: 'Onest', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --wk-font-mono:    'JetBrains Mono', ui-monospace, 'SF Mono', Menlo, monospace;

  /* --- Bordas --- */
  --wk-border: rgba(25, 69, 46, 0.12);
  --wk-radius: 4px;

  /* --- Layout --- */
  --max: 1180px;
  --gut: clamp(20px, 5vw, 48px);
  --sombra: 0 1px 2px rgba(13,26,16,.04), 0 14px 36px -16px rgba(13,26,16,.16);
}

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; scroll-padding-top:92px; -webkit-text-size-adjust:100%; }

body{
  margin:0;
  font-family:var(--wk-font-display);
  font-weight:300;
  font-size:clamp(16px,1.05vw,17px);
  line-height:1.7;
  color:var(--wk-dark);
  background:var(--wk-neutral);
  -webkit-font-smoothing:antialiased;
}

img,svg{ max-width:100%; display:block; }
a{ color:var(--wk-primary); text-decoration:none; transition:color .2s ease; }
a:hover{ color:var(--wk-accent); }

h1,h2,h3,h4{
  font-family:var(--wk-font-display);
  font-weight:300;
  line-height:1.1;
  letter-spacing:-.02em;
  margin:0 0 .55em;
  color:var(--wk-dark);
  text-wrap:balance;
}
h1{ font-size:clamp(2.4rem,5.6vw,4.1rem); }
h2{ font-size:clamp(1.9rem,3.8vw,2.75rem); }
h3{ font-size:clamp(1.2rem,2vw,1.45rem); font-weight:600; letter-spacing:-.01em; }
p{ margin:0 0 1.15em; text-wrap:pretty; }
strong{ font-weight:600; color:var(--wk-primary); }

::selection{ background:var(--wk-primary); color:var(--wk-neutral); }

.wrap{ width:100%; max-width:var(--max); margin-inline:auto; padding-inline:var(--gut); }

/* =========================================================
   UTILITÁRIOS
   ========================================================= */

/* Rótulo de seção — JetBrains Mono, maiúsculas, cobre */
.eyebrow{
  font-family:var(--wk-font-mono);
  font-weight:500;
  font-size:.78rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--wk-accent);
  margin:0 0 1.1rem;
  display:flex; align-items:center; gap:.8rem;
}
.eyebrow::before{ content:""; width:26px; height:1.5px; background:var(--wk-accent); flex:none; }

/* Divisor principal: linha verde com cobre sobreposto à direita (28px) */
.divisor{ position:relative; height:1px; background:var(--wk-primary); opacity:.9; margin:2.5rem 0; }
.divisor::after{
  content:""; position:absolute; right:0; top:0; width:28px; height:2.5px;
  margin-top:-.75px; background:var(--wk-accent);
}
.sec-verde .divisor{ background:rgba(245,244,240,.28); }

.lead{ font-size:clamp(1.04rem,1.5vw,1.2rem); line-height:1.65; color:var(--wk-muted); font-weight:300; }
.sr-only{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

/* Dado técnico — JetBrains Mono */
.dado{ font-family:var(--wk-font-mono); font-size:.9em; color:var(--wk-primary); font-weight:400; }

section{ padding:clamp(64px,9vw,120px) 0; position:relative; }
.sec-alt{ background:var(--wk-surface); border-block:1px solid var(--wk-border); }
.sec-verde{ background:var(--wk-primary); color:var(--wk-neutral); }
.sec-verde h2,.sec-verde h3{ color:var(--wk-neutral); }
.sec-verde .lead{ color:rgba(245,244,240,.72); }
.sec-verde strong{ color:var(--wk-copper-400); }

/* =========================================================
   BOTÕES
   ========================================================= */
.btn{
  display:inline-flex; align-items:center; gap:.6rem;
  font-family:var(--wk-font-mono); font-weight:500; font-size:.82rem;
  letter-spacing:.12em; text-transform:uppercase;
  padding:.95rem 1.6rem; border-radius:var(--wk-radius);
  border:1px solid var(--wk-primary); background:var(--wk-primary); color:var(--wk-neutral);
  cursor:pointer; transition:.22s ease; white-space:nowrap; line-height:1;
}
.btn:hover{ background:var(--wk-accent); border-color:var(--wk-accent); color:#fff; transform:translateY(-2px); }
.btn-ghost{ background:transparent; color:var(--wk-primary); }
.btn-ghost:hover{ background:var(--wk-primary); border-color:var(--wk-primary); color:var(--wk-neutral); }
.btn-cobre{ background:var(--wk-accent); border-color:var(--wk-accent); color:#fff; }
.btn-cobre:hover{ background:var(--wk-neutral); border-color:var(--wk-neutral); color:var(--wk-primary); }
.btn-linha-clara{ background:transparent; border-color:rgba(245,244,240,.4); color:var(--wk-neutral); }
.btn-linha-clara:hover{ background:var(--wk-neutral); border-color:var(--wk-neutral); color:var(--wk-primary); }

/* =========================================================
   CABEÇALHO
   ========================================================= */
.topo{
  position:fixed; inset:0 0 auto 0; z-index:100;
  background:rgba(245,244,240,.88);
  backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;
  transition:.28s ease;
}
.topo.scrolled{ border-bottom-color:var(--wk-border); box-shadow:0 6px 26px -20px rgba(13,26,16,.55); }
.topo .wrap{ display:flex; align-items:center; gap:1.5rem; height:80px; }

/* Assinatura: símbolo + WILLIAM KAMIMURA / ENGENHARIA & PERÍCIA */
.marca{ display:flex; align-items:center; gap:.95rem; flex:none; }
.marca .simbolo{ width:34px; height:38px; color:var(--wk-primary); flex:none; }
.marca-txt{ display:flex; flex-direction:column; line-height:1; }
.marca-nome{
  font-family:var(--wk-font-display); font-weight:600; font-size:1.02rem;
  letter-spacing:.06em; text-transform:uppercase; color:var(--wk-primary);
}
.marca-cargo{
  font-family:var(--wk-font-mono); font-weight:400; font-size:.63rem;
  letter-spacing:.2em; text-transform:uppercase; color:var(--wk-accent); margin-top:5px;
}

.nav{ margin-left:auto; display:flex; align-items:center; gap:1.3rem; }
.nav a{
  font-family:var(--wk-font-display); font-weight:400; font-size:.76rem;
  letter-spacing:.01em; color:var(--wk-muted); white-space:nowrap;
  position:relative; padding:5px 0;
}
.nav a::after{
  content:""; position:absolute; left:0; bottom:0; width:0; height:1.5px;
  background:var(--wk-accent); transition:width .25s ease;
}
.nav a:hover{ color:var(--wk-primary); }
.nav a:hover::after,.nav a.ativo::after{ width:100%; }
.nav a.ativo{ color:var(--wk-primary); }
.nav .btn{ color:var(--wk-neutral); padding:.68rem 1rem; font-size:.66rem; letter-spacing:.09em; }
.nav .btn::after{ display:none; }

.burger{
  margin-left:auto; display:none; width:44px; height:44px;
  background:none; border:1px solid var(--wk-border); border-radius:var(--wk-radius);
  cursor:pointer; padding:0; place-items:center;
}
.burger span{ display:block; width:19px; height:1.5px; background:var(--wk-primary); margin:4px auto; transition:.25s; }
.burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(5.5px) rotate(45deg); }
.burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-5.5px) rotate(-45deg); }

@media (max-width:1040px){
  .burger{ display:grid; }
  .nav{
    position:fixed; inset:80px 0 auto 0;
    flex-direction:column; align-items:stretch; gap:0;
    background:var(--wk-neutral); border-bottom:1px solid var(--wk-border);
    padding:1rem var(--gut) 1.6rem;
    box-shadow:var(--sombra);
    transform:translateY(-8px); opacity:0; pointer-events:none; transition:.24s ease;
  }
  .nav.aberto{ transform:none; opacity:1; pointer-events:auto; }
  .nav a{ padding:1rem 0; border-bottom:1px solid var(--wk-border); font-size:1rem; }
  .nav a::after{ display:none; }
  .nav .btn{ margin-top:1.2rem; justify-content:center; border-bottom:0; }
}

/* =========================================================
   HERO
   ========================================================= */
.hero{
  position:relative; overflow:hidden;
  background:
    radial-gradient(1100px 520px at 82% 8%, rgba(184,115,51,.18), transparent 62%),
    linear-gradient(165deg, var(--wk-primary) 0%, var(--wk-dark) 100%);
  color:var(--wk-neutral);
  padding:clamp(112px,12vw,148px) 0 clamp(80px,10vw,118px);
}
/* Divisor duplo da marca no rodapé do hero */
.hero::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:2.5px;
  background:linear-gradient(90deg, var(--wk-copper-900) 0%, var(--wk-accent) 100%);
}
.hero .wrap{ position:relative; z-index:2; }
.hero-grid{ display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr); gap:clamp(2.5rem,5vw,5rem); align-items:end; }

.hero h1{ color:var(--wk-neutral); margin-bottom:1.2rem; font-weight:300; }
.hero h1 .cobre{ color:var(--wk-copper-400); display:block; font-weight:300; }
.hero .eyebrow{ color:var(--wk-copper-400); }
.hero .eyebrow::before{ background:var(--wk-copper-400); }
.hero-lead{ font-size:clamp(1.06rem,1.6vw,1.26rem); line-height:1.65; color:rgba(245,244,240,.82); max-width:56ch; font-weight:300; }
.hero-acoes{ display:flex; flex-wrap:wrap; gap:.9rem; margin-top:2.3rem; }

/* Credenciais — dados técnicos em mono */
.credenciais{
  display:grid; gap:1px; background:rgba(245,244,240,.14);
  border:1px solid rgba(245,244,240,.14); border-radius:var(--wk-radius); overflow:hidden;
}
.credenciais div{ background:rgba(13,26,16,.42); padding:1.1rem 1.3rem; }
.credenciais dt{
  font-family:var(--wk-font-mono); font-size:.65rem; letter-spacing:.18em;
  text-transform:uppercase; color:rgba(245,244,240,.5); font-weight:400;
}
.credenciais dd{
  margin:.4rem 0 0; font-family:var(--wk-font-mono); font-weight:500;
  font-size:.95rem; color:var(--wk-neutral); letter-spacing:.01em; line-height:1.35;
}
.credenciais dd small{ font-family:var(--wk-font-display); font-size:.78rem; font-weight:300; color:rgba(245,244,240,.55); }

@media (max-width:880px){
  .hero-grid{ grid-template-columns:1fr; }
  .credenciais{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:520px){ .credenciais{ grid-template-columns:1fr; } }

/* =========================================================
   FAIXA DE ESCOPO
   ========================================================= */
.faixa{ background:var(--wk-dark); color:rgba(245,244,240,.72); padding:0; overflow:hidden; }
.faixa-inner{
  display:flex; gap:3rem; align-items:center;
  padding:.95rem 0; white-space:nowrap;
  font-family:var(--wk-font-mono); letter-spacing:.14em; text-transform:uppercase; font-size:.72rem;
  animation:desliza 46s linear infinite;
}
.faixa-inner span{ display:flex; align-items:center; gap:3rem; }
.faixa-inner span::after{ content:""; width:5px; height:5px; border-radius:50%; background:var(--wk-accent); flex:none; }
@keyframes desliza{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce){ .faixa-inner{ animation:none; white-space:normal; flex-wrap:wrap; } }

/* =========================================================
   BLOCOS DE CONTEÚDO
   ========================================================= */
.cabecalho-sec{ max-width:62ch; margin-bottom:clamp(2.5rem,4vw,3.5rem); }

/* Cartões */
.cards{ display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:1.3rem; }
.card{
  background:var(--wk-card); border:1px solid var(--wk-border); border-radius:var(--wk-radius);
  padding:2rem 1.9rem 1.9rem; position:relative; overflow:hidden;
  transition:.25s ease;
}
.card::before{
  content:""; position:absolute; left:0; top:0; width:2.5px; height:0;
  background:var(--wk-accent); transition:height .3s ease;
}
.card:hover{ transform:translateY(-4px); box-shadow:var(--sombra); border-color:rgba(25,69,46,.2); }
.card:hover::before{ height:100%; }
.card .num{
  font-family:var(--wk-font-mono); font-weight:400; font-size:.7rem;
  letter-spacing:.18em; color:var(--wk-accent); display:block; margin-bottom:1rem;
  text-transform:uppercase;
}
.card h3{ margin-bottom:.65rem; color:var(--wk-primary); }
.card p{ margin:0; font-size:.96rem; color:var(--wk-muted); }
.card ul{ margin:1rem 0 0; padding:0; list-style:none; }
.card ul li{
  font-size:.87rem; color:var(--wk-muted); padding-left:1.15rem;
  position:relative; margin-bottom:.4rem; line-height:1.55;
  font-family:var(--wk-font-mono); font-weight:400;
}
.card ul li::before{
  content:""; position:absolute; left:0; top:.62em; width:5px; height:5px;
  border-radius:50%; background:var(--wk-accent);
}

/* Etapas / metodologia */
.etapas{ display:grid; gap:0; margin-top:1rem; }
.etapa{
  display:grid; grid-template-columns:auto 1fr; gap:clamp(1.2rem,3vw,2.6rem);
  padding:2rem 0; border-top:1px solid rgba(245,244,240,.16);
}
.etapa:last-child{ border-bottom:1px solid rgba(245,244,240,.16); }
.etapa-num{
  font-family:var(--wk-font-mono); font-weight:400; font-size:clamp(1.5rem,3vw,2rem);
  color:var(--wk-copper-400); line-height:1.4; min-width:2.6ch;
}
.etapa h3{ margin-bottom:.5rem; font-weight:600; }
.etapa p{ margin:0; color:rgba(245,244,240,.74); font-size:.99rem; max-width:70ch; }

/* Entregáveis */
.entregas{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1px; background:var(--wk-border); border:1px solid var(--wk-border); border-radius:var(--wk-radius); overflow:hidden; }
.entrega{ background:var(--wk-card); padding:1.9rem 1.7rem; }
.entrega .ico{ color:var(--wk-accent); margin-bottom:1.1rem; }
.entrega .ico svg{ width:28px; height:28px; }
.entrega h3{ font-size:1.1rem; margin-bottom:.5rem; color:var(--wk-primary); }
.entrega p{ margin:0; font-size:.93rem; color:var(--wk-muted); }

/* Currículo */
.cv{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.55fr); gap:clamp(2rem,5vw,4.5rem); align-items:start; }
.cv-bloco{ padding:1.7rem 0; border-top:1px solid var(--wk-border); }
.cv-bloco:first-of-type{ border-top:0; padding-top:0; }
.cv-bloco h3{
  font-family:var(--wk-font-mono); font-weight:500; font-size:.72rem;
  letter-spacing:.2em; text-transform:uppercase; color:var(--wk-accent); margin-bottom:1.1rem;
}
.cv-bloco ul{ margin:0; padding:0; list-style:none; }
.cv-bloco li{ padding:.55rem 0 .55rem 1.4rem; position:relative; font-size:.98rem; }
.cv-bloco li::before{
  content:""; position:absolute; left:0; top:1.1em; width:6px; height:6px;
  border-radius:50%; background:var(--wk-green-400);
}
.cv-bloco li b{ font-weight:600; color:var(--wk-primary); }
.cv-bloco li span{ display:block; font-size:.84rem; color:var(--wk-muted); font-family:var(--wk-font-mono); font-weight:400; margin-top:2px; }

.cv-aside{ position:sticky; top:104px; }
.retrato{
  background:var(--wk-primary); color:var(--wk-neutral); padding:2.2rem 2rem;
  border-radius:var(--wk-radius); border-left:2.5px solid var(--wk-accent);
}
.retrato .simbolo{ width:52px; height:59px; color:var(--wk-neutral); margin-bottom:1.3rem; }
.retrato p{ font-size:.95rem; color:rgba(245,244,240,.8); margin-bottom:1.1rem; }
.retrato .reg{
  font-family:var(--wk-font-mono); font-size:.8rem; letter-spacing:.04em; line-height:1.8;
  color:var(--wk-copper-400); border-top:1px solid rgba(245,244,240,.2); padding-top:1.1rem; margin:0;
}
@media (max-width:880px){ .cv{ grid-template-columns:1fr; } .cv-aside{ position:static; } }

/* Princípios */
.principios{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:2rem; margin-top:2.5rem; }
.principio{ position:relative; border-top:1px solid rgba(245,244,240,.28); padding-top:1.3rem; }
.principio::after{ content:""; position:absolute; left:0; top:0; width:28px; height:2.5px; margin-top:-1px; background:var(--wk-accent); }
.principio h3{ font-size:1.15rem; margin-bottom:.5rem; font-weight:600; }
.principio p{ margin:0; font-size:.94rem; color:rgba(245,244,240,.74); }

/* FAQ */
.faq{ max-width:840px; }
.faq details{ border-bottom:1px solid var(--wk-border); }
.faq summary{
  list-style:none; cursor:pointer; padding:1.45rem 3rem 1.45rem 0; position:relative;
  font-family:var(--wk-font-display); font-weight:400; font-size:clamp(1.06rem,1.8vw,1.25rem);
  color:var(--wk-primary); transition:color .2s;
}
.faq summary::-webkit-details-marker{ display:none; }
.faq summary:hover{ color:var(--wk-accent); }
.faq summary::after{
  content:""; position:absolute; right:8px; top:50%; width:10px; height:10px;
  border-right:1.5px solid var(--wk-accent); border-bottom:1.5px solid var(--wk-accent);
  transform:translateY(-70%) rotate(45deg); transition:transform .25s;
}
.faq details[open] summary::after{ transform:translateY(-20%) rotate(225deg); }
.faq details p{ margin:0 0 1.45rem; color:var(--wk-muted); max-width:72ch; font-size:.97rem; }

/* Documentos de referência (glossário / quesitos) */
.doc{ max-width:860px; }
.doc h2{ margin-top:3.2rem; color:var(--wk-primary); }
.doc h3{ margin-top:2rem; color:var(--wk-primary); }
.doc ol,.doc ul{ padding-left:1.3rem; color:var(--wk-muted); }
.doc li{ margin-bottom:.55rem; }
.doc li::marker{ color:var(--wk-accent); }

.termo{ border-left:1px solid var(--wk-border); padding:0 0 0 1.5rem; margin:0 0 2rem; transition:border-color .2s; }
.termo:hover{ border-left-color:var(--wk-accent); }
.termo dt{
  font-family:var(--wk-font-display); font-weight:600; font-size:1.1rem;
  color:var(--wk-primary); margin-bottom:.45rem;
}
.termo dd{ margin:0; color:var(--wk-muted); font-size:.97rem; }
.termo dd .norma{
  display:inline-block; margin-top:.6rem; font-family:var(--wk-font-mono);
  font-size:.68rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--wk-accent); background:var(--wk-copper-100); border:1px solid var(--wk-copper-200);
  padding:.25rem .6rem; border-radius:var(--wk-radius);
}

.aviso{
  background:var(--wk-surface); border:1px solid var(--wk-border); border-left:2.5px solid var(--wk-accent);
  padding:1.35rem 1.5rem; border-radius:var(--wk-radius); font-size:.92rem; color:var(--wk-muted);
}
.aviso p:last-child{ margin:0; }
.aviso strong{ color:var(--wk-primary); }

/* Índice de navegação interna */
.indice{ display:flex; flex-wrap:wrap; gap:.5rem; margin:0 0 2.5rem; padding:0; list-style:none; }
.indice a{
  display:inline-block; font-family:var(--wk-font-mono); font-weight:400; font-size:.72rem;
  letter-spacing:.1em; text-transform:uppercase; color:var(--wk-muted);
  border:1px solid var(--wk-border); background:var(--wk-card); padding:.5rem .9rem; border-radius:var(--wk-radius);
}
.indice a:hover{ border-color:var(--wk-accent); color:var(--wk-accent); }

/* Blocos de quesitos */
.qbloco{ background:var(--wk-card); border:1px solid var(--wk-border); border-radius:var(--wk-radius); padding:1.8rem 1.9rem; margin-bottom:1.5rem; }
.qbloco-topo{ display:flex; align-items:flex-start; gap:1rem; justify-content:space-between; margin-bottom:.4rem; }
.qbloco h3{ margin:0; font-size:1.2rem; font-weight:600; color:var(--wk-primary); }
.qbloco .qsub{ font-family:var(--wk-font-mono); font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--wk-accent); margin:.35rem 0 1.2rem; }
.qbloco ol{ margin:0; padding-left:1.4rem; }
.qbloco ol li{ margin-bottom:.75rem; font-size:.96rem; color:var(--wk-dark); line-height:1.65; }
.qbloco ol li::marker{ color:var(--wk-accent); font-family:var(--wk-font-mono); font-size:.85em; }
.copiar{
  flex:none; font-family:var(--wk-font-mono); font-size:.68rem; letter-spacing:.14em;
  text-transform:uppercase; color:var(--wk-muted); background:var(--wk-surface);
  border:1px solid var(--wk-border); border-radius:var(--wk-radius); padding:.45rem .8rem; cursor:pointer; transition:.2s;
}
.copiar:hover{ border-color:var(--wk-accent); color:var(--wk-accent); }
.copiar.ok{ background:var(--wk-primary); border-color:var(--wk-primary); color:var(--wk-neutral); }

/* =========================================================
   CONTATO
   ========================================================= */
.contato{ background:var(--wk-primary); color:var(--wk-neutral); position:relative; overflow:hidden; }
.contato .wrap{ position:relative; z-index:1; }
.contato-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(2.5rem,6vw,5rem); align-items:center; }
.contato h2{ color:var(--wk-neutral); }
.contato .lead{ color:rgba(245,244,240,.78); }
.canais{ display:grid; gap:1px; background:rgba(245,244,240,.14); border:1px solid rgba(245,244,240,.14); border-radius:var(--wk-radius); overflow:hidden; }
.canal{
  background:var(--wk-primary); display:flex; align-items:center; gap:1.1rem;
  padding:1.35rem 1.5rem; transition:.2s;
}
.canal:hover{ background:var(--wk-dark); }
.canal svg{ width:20px; height:20px; color:var(--wk-copper-400); flex:none; }
.canal-txt{ min-width:0; }
.canal-rot{
  font-family:var(--wk-font-mono); font-size:.63rem; letter-spacing:.18em;
  text-transform:uppercase; color:rgba(245,244,240,.5); display:block;
}
.canal-val{ font-family:var(--wk-font-mono); font-size:.88rem; color:var(--wk-neutral); word-break:break-word; margin-top:.3rem; display:block; }
a.canal:hover .canal-val{ color:var(--wk-copper-400); }
@media (max-width:820px){ .contato-grid{ grid-template-columns:1fr; } }

/* =========================================================
   RODAPÉ
   ========================================================= */
.rodape{ background:var(--wk-dark); color:rgba(245,244,240,.6); padding:3.5rem 0 2rem; font-size:.88rem; }
.rodape-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:2.5rem; padding-bottom:2.5rem; position:relative; }
.rodape-grid::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:rgba(245,244,240,.14); }
.rodape .simbolo{ width:40px; height:45px; color:var(--wk-neutral); margin-bottom:1.1rem; }
.rodape h4{
  font-family:var(--wk-font-mono); font-size:.66rem; letter-spacing:.18em;
  text-transform:uppercase; color:var(--wk-accent); margin-bottom:1rem; font-weight:500;
}
.rodape a{ color:rgba(245,244,240,.72); }
.rodape a:hover{ color:var(--wk-copper-400); }
.rodape ul{ list-style:none; margin:0; padding:0; }
.rodape li{ margin-bottom:.5rem; }
.rodape-marca{ font-family:var(--wk-font-display); font-weight:600; color:var(--wk-neutral); text-transform:uppercase; letter-spacing:.06em; }
.rodape-sub{ font-family:var(--wk-font-mono); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--wk-accent); display:block; margin-top:.3rem; }
.rodape-fim{ padding-top:1.6rem; display:flex; flex-wrap:wrap; gap:1rem; justify-content:space-between; font-size:.76rem; color:rgba(245,244,240,.42); font-family:var(--wk-font-mono); }
@media (max-width:760px){ .rodape-grid{ grid-template-columns:1fr; gap:2rem; } }

/* =========================================================
   WHATSAPP FLUTUANTE
   ========================================================= */
.zap{
  position:fixed; right:20px; bottom:20px; z-index:90;
  width:52px; height:52px; border-radius:50%;
  background:var(--wk-accent); color:#fff; display:grid; place-items:center;
  box-shadow:0 8px 24px -6px rgba(13,26,16,.45); transition:.22s;
}
.zap:hover{ background:var(--wk-primary); color:var(--wk-neutral); transform:translateY(-3px); }
.zap svg{ width:26px; height:26px; }

/* =========================================================
   ANIMAÇÃO DE ENTRADA
   ========================================================= */
.reveal{ opacity:0; transform:translateY(16px); transition:opacity .7s ease, transform .7s ease; }
.reveal.visivel{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
  .reveal{ opacity:1; transform:none; transition:none; }
  html{ scroll-behavior:auto; }
}

/* =========================================================
   PÁGINAS INTERNAS
   ========================================================= */
.hero-doc{ padding:clamp(104px,11vw,136px) 0 clamp(50px,6vw,75px); }
.hero-doc h1{ font-size:clamp(2rem,4.4vw,3.1rem); }
.hero-doc .hero-grid{ grid-template-columns:1fr; }
.hero-doc .voltar{
  display:inline-flex; align-items:center; gap:.5rem; margin-bottom:1.7rem;
  font-family:var(--wk-font-mono); font-size:.72rem; letter-spacing:.14em;
  text-transform:uppercase; color:rgba(245,244,240,.6);
}
.hero-doc .voltar:hover{ color:var(--wk-copper-400); }

/* =========================================================
   IMPRESSÃO
   ========================================================= */
@media print{
  .topo,.zap,.faixa,.btn{ display:none !important; }
  body{ background:#fff; color:#000; font-size:11pt; }
  section{ padding:1.2rem 0; }
  .hero,.sec-verde,.contato,.rodape{ background:#fff !important; color:#000 !important; }
  .hero::after{ display:none !important; }
  .hero h1,.sec-verde h2,.sec-verde h3,.contato h2{ color:var(--wk-primary) !important; }
  .credenciais div,.canal,.retrato{ background:#fff !important; color:#000 !important; }
  .credenciais dd,.canal-val,.etapa p,.principio p,.retrato p{ color:#000 !important; }
  a{ color:#000; }
  .faq details,.faq details p{ display:block; }
}
