:root {
  --terra: #6b2a08;
  --ocre: #c97820;
  --ocre-claro: #e8a830;
  --ocre-vivo: #f5c842;
  --creme: #fdf0d8;
  --creme-escuro: #e8d4a8;
  --fundo: #2a1408;
  --fundo2: #331a0a;
  --fundo-escuro: #1e0c04;
  --texto: #fdf0d8;
  --texto-muted: #c8a870;
  --ouro: #d4a820;
  --ouro-escuro: #8a6a08;
  --mercurio: #7a8a9a;
  --mercurio-claro: #a8b8c8;
  --vermelho-sangue: #8a1a10;
  --vermelho-vivo: #c03020;
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  background: var(--fundo);
  color: var(--texto);
  font-family: 'Crimson Pro', Georgia, serif;
  font-size: 19px;
  line-height: 1.8;
  overflow-x: hidden;
}

.cur { width:10px; height:10px; background:var(--ocre); border-radius:50%; position:fixed; pointer-events:none; z-index:9999; transform:translate(-50%,-50%); transition:transform .15s; }
.cur-ring { width:32px; height:32px; border:1px solid rgba(212,137,42,.5); border-radius:50%; position:fixed; pointer-events:none; z-index:9998; transform:translate(-50%,-50%);  }

nav {
  position:sticky; top:0; z-index:100;
  background:rgba(26,14,6,.96);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(212,137,42,.2);
  padding:.8rem 2rem;
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.nav-logo { display:flex; align-items:center; text-decoration:none; gap:.7rem; }
.nav-logo img { height:28px; width:auto; opacity:.9; }
.nav-logo-texto {
  font-family:'Space Mono',monospace; font-size:.58rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--texto-muted); line-height:1.5;
}
.nav-links { display:flex; gap:.3rem; flex-wrap:wrap; }
.nav-links a {
  font-family:'Space Mono',monospace; font-size:.62rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--texto-muted); text-decoration:none;
  padding:.35rem .7rem; border-radius:4px; transition:all .2s;
}
.nav-links a:hover { color:var(--ocre-vivo); background:rgba(200,120,30,.15); }
.nav-home {
  font-family:'Space Mono',monospace; font-size:.62rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--texto-muted); text-decoration:none;
  padding:.35rem .8rem; border:1px solid rgba(212,137,42,.25); border-radius:4px; transition:all .2s;
}
.nav-home:hover { color:var(--ocre-claro); border-color:rgba(212,137,42,.6); }

/* ── HERO — ouro escuro, tensão ── */
.cap-hero {
  position:relative;
  min-height:92vh;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center;
  padding:8rem 2rem 6rem;
  overflow:hidden;
  background:
    radial-gradient(ellipse 100% 80% at 20% 80%, rgba(138,106,8,.22) 0%, transparent 55%),
    radial-gradient(ellipse 80% 60% at 80% 20%, rgba(100,20,10,.2) 0%, transparent 50%),
    radial-gradient(ellipse 180% 130% at 50% 50%, #1e1004 0%, #1a0c04 55%, #120804 100%);
}
.cap-hero-canvas { position:absolute; inset:0; z-index:0; }
.cap-hero-overlay {
  position:absolute; inset:0; z-index:1;
  background: linear-gradient(to bottom, rgba(14,8,2,.3) 0%, rgba(14,8,2,.6) 65%, var(--fundo) 100%);
}
.cap-hero-inner { position:relative; z-index:3; max-width:820px; }

.cap-num {
  font-family:'Space Mono',monospace; font-size:.68rem; letter-spacing:.5em;
  text-transform:uppercase; color:var(--ouro); margin-bottom:2rem; display:block;
  animation: fadeUp .8s ease .1s both;
}
.cap-titulo {
  font-family:'Playfair Display', Georgia, serif;
  font-size:clamp(2.8rem, 7vw, 5.8rem);
  font-weight:900; line-height:1.0;
  color:var(--creme); margin-bottom:.8rem;
  animation: fadeUp .9s ease .2s both;
}
.cap-titulo em { color:var(--ouro); font-style:italic; }
.cap-titulo span { color:rgba(192,48,32,.8); }

.cap-subtitulo {
  font-family:'Crimson Pro', Georgia, serif;
  font-size:clamp(1.1rem, 2.2vw, 1.5rem);
  font-style:italic; font-weight:300;
  color:var(--texto-muted);
  margin-bottom:3rem; line-height:1.7;
  animation: fadeUp .9s ease .35s both;
}
.cap-divisor {
  display:flex; align-items:center; justify-content:center; gap:1.2rem;
  margin:0 auto; animation: fadeUp .9s ease .45s both;
}
.cap-divisor span { width:60px; height:1px; background:rgba(212,168,32,.35); }
.cap-divisor i { font-style:normal; color:var(--ouro); font-size:.5rem; }

.cap-scroll-hint {
  position:absolute; bottom:2rem; left:50%; transform:translateX(-50%);
  z-index:3; display:flex; flex-direction:column; align-items:center; gap:.6rem;
  font-family:'Space Mono',monospace; font-size:.6rem; letter-spacing:.2em;
  text-transform:uppercase; color:rgba(212,168,32,.4);
  animation: fadeUp 1s ease 1.3s both;
}
.cap-scroll-line { width:1px; height:40px; background:linear-gradient(to bottom, rgba(212,168,32,.4), transparent); }

@keyframes fadeUp {
  from { opacity:0; transform:translateY(20px); }
  to { opacity:1; transform:translateY(0); }
}

/* ── CORPO ── */
.cap-corpo { max-width:760px; margin:0 auto; padding:5rem 2rem 6rem; }

.cap-abertura {
  margin-bottom:4rem; padding-bottom:3.5rem;
  border-bottom:1px solid rgba(212,168,32,.12);
}
.cap-abertura p {
  font-size:clamp(1.1rem, 2vw, 1.32rem);
  line-height:2.05; color:var(--texto); margin-bottom:1.9rem;
}
.cap-abertura p:first-child::first-letter {
  font-family:'Playfair Display', serif;
  font-size:4.8rem; font-weight:900; color:var(--ouro);
  float:left; line-height:.70; margin:.05em .14em 0 0;
}
.cap-abertura em { color:var(--ocre-claro); font-style:normal; font-weight:600; }
.cap-abertura strong { color:var(--creme); font-weight:600; }

.cap-secao { margin-bottom:4.5rem; }
.cap-secao-num {
  font-family:'Space Mono',monospace; font-size:.62rem; letter-spacing:.4em;
  text-transform:uppercase; color:var(--ouro); display:block; margin-bottom:1rem;
}
.cap-secao h2 {
  font-family:'Playfair Display', serif;
  font-size:clamp(1.6rem, 3.5vw, 2.4rem);
  font-weight:700; color:var(--creme);
  line-height:1.12; margin-bottom:1.8rem;
}
.cap-secao h2 em { color:var(--ocre-claro); font-style:italic; }
.cap-secao p {
  font-size:clamp(1rem, 1.8vw, 1.18rem);
  line-height:2.05; color:var(--texto);
  margin-bottom:1.7rem; opacity:.92;
}
.cap-secao em { color:var(--ocre-claro); font-style:normal; font-weight:500; }
.cap-secao strong { color:var(--creme); font-weight:600; }

/* Cadeia do ouro */
.cadeia {
  margin:3.5rem 0;
  position:relative;
}
.cadeia-titulo {
  font-family:'Space Mono',monospace; font-size:.6rem;
  letter-spacing:.4em; text-transform:uppercase;
  color:rgba(212,168,32,.5); text-align:center;
  display:block; margin-bottom:2rem;
}
.cadeia-itens {
  display:flex; flex-direction:column; gap:0;
  position:relative;
}
.cadeia-itens::before {
  content:'';
  position:absolute; left:1.8rem; top:0; bottom:0; width:1px;
  background:linear-gradient(to bottom, rgba(212,168,32,.3), rgba(192,48,32,.2), rgba(212,168,32,.1));
}
.cadeia-item {
  display:flex; gap:1.5rem; align-items:flex-start;
  padding:1.6rem 1.6rem 1.6rem 0;
  position:relative;
}
.cadeia-item::before {
  content:''; flex-shrink:0;
  width:10px; height:10px; border-radius:50%;
  margin-top:.55rem; margin-left:1.35rem;
  position:relative; z-index:1;
}
.cadeia-item.garimpeiro::before { background:rgba(160,120,40,.7); border:2px solid var(--fundo2); }
.cadeia-item.intermediario::before { background:rgba(140,100,20,.6); border:2px solid var(--fundo2); }
.cadeia-item.exportador::before { background:rgba(180,140,20,.5); border:2px solid var(--fundo2); }
.cadeia-item.refinaria::before { background:rgba(200,160,20,.5); border:2px solid var(--fundo2); }
.cadeia-item.banco::before { background:rgba(220,180,30,.4); border:2px solid var(--fundo2); }
.cadeia-item.joalheria::before { background:rgba(240,200,40,.4); border:2px solid var(--fundo2); }
.cadeia-item.consumidor::before { background:rgba(255,220,60,.35); border:2px solid var(--fundo2); }

.cadeia-item-corpo { flex:1; }
.cadeia-item-titulo {
  font-family:'Space Mono',monospace; font-size:.62rem;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--ouro); display:block; margin-bottom:.5rem;
}
.cadeia-item-texto {
  font-size:.98rem; line-height:1.85;
  color:var(--texto); opacity:.82;
}

/* Citação */
.cap-citacao {
  border-left:3px solid rgba(212,168,32,.4);
  padding:1.6rem 2.2rem; margin:3.2rem 0;
  background:rgba(212,168,32,.03);
}
.cap-citacao p {
  font-family:'Playfair Display', serif;
  font-size:clamp(1.15rem, 2.2vw, 1.45rem);
  font-style:italic; color:var(--creme-escuro);
  line-height:1.75; margin:0 0 .8rem;
}
.cap-citacao cite {
  font-family:'Space Mono',monospace; font-size:.62rem;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--ouro); font-style:normal;
}

/* Dado */
.cap-dado {
  display:flex; gap:2.5rem; flex-wrap:wrap;
  margin:3.2rem 0; padding:2.2rem 0;
  border-top:1px solid rgba(212,168,32,.1);
  border-bottom:1px solid rgba(212,168,32,.1);
}
.cap-dado-item { flex:1; min-width:130px; }
.cap-dado-val {
  font-family:'Playfair Display', serif;
  font-size:clamp(2rem, 4vw, 3rem);
  font-weight:900; font-style:italic;
  color:var(--ocre-claro); line-height:1; display:block; margin-bottom:.35rem;
}
.cap-dado-lbl {
  font-family:'Space Mono',monospace; font-size:.6rem;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--texto-muted); line-height:1.6;
}

/* Destaque */
.cap-destaque {
  background:rgba(212,168,32,.04);
  border:1px solid rgba(212,168,32,.12);
  border-top:3px solid var(--ouro);
  padding:2.5rem; margin:3.5rem 0;
}
.cap-destaque-kicker {
  font-family:'Space Mono',monospace; font-size:.6rem;
  letter-spacing:.35em; text-transform:uppercase;
  color:var(--ouro); margin-bottom:1rem; display:block;
}
.cap-destaque h3 {
  font-family:'Playfair Display', serif;
  font-size:clamp(1.3rem, 2.5vw, 1.85rem);
  font-weight:700; color:var(--creme);
  margin-bottom:1.1rem; line-height:1.2;
}
.cap-destaque p {
  font-size:1.05rem; line-height:1.95;
  color:var(--texto); opacity:.88; margin-bottom:1rem;
}
.cap-destaque p:last-child { margin-bottom:0; }

/* Bloco mercúrio */
.cap-mercurio {
  background:rgba(100,120,140,.08);
  border:1px solid rgba(120,140,160,.15);
  border-left:3px solid rgba(140,160,180,.4);
  padding:2.2rem 2.6rem; margin:3rem 0;
}
.cap-mercurio p {
  font-size:1.05rem; line-height:1.95;
  color:var(--texto); opacity:.9; margin-bottom:1rem;
}
.cap-mercurio p:last-child { margin-bottom:0; }
.cap-mercurio strong { color:var(--mercurio-claro); }

/* Separador */
.cap-sep {
  display:flex; align-items:center; justify-content:center; gap:1.5rem;
  margin:4.5rem 0; opacity:.35;
}
.cap-sep span { flex:1; height:1px; background:var(--ouro-escuro); }
.cap-sep i { font-style:normal; color:var(--ouro); font-size:.5rem; }

/* Navegação */
.cap-nav {
  display:flex; justify-content:space-between; align-items:center;
  padding:2.5rem 0; margin-top:4rem;
  border-top:1px solid rgba(212,168,32,.12);
  gap:2rem; flex-wrap:wrap;
}
.cap-nav-link {
  display:flex; flex-direction:column; gap:.4rem;
  text-decoration:none; max-width:260px;
}
.cap-nav-link:last-child { align-items:flex-end; text-align:right; }
.cap-nav-label {
  font-family:'Space Mono',monospace; font-size:.58rem;
  letter-spacing:.25em; text-transform:uppercase; color:var(--ouro);
}
.cap-nav-titulo {
  font-family:'Playfair Display', serif; font-size:1.05rem;
  font-weight:600; color:var(--creme); transition:color .2s;
}
.cap-nav-link:hover .cap-nav-titulo { color:var(--ocre-claro); }

.rev { opacity:0; transform:translateY(28px); transition:opacity .75s ease, transform .75s ease; }
.rev.vis { opacity:1; transform:translateY(0); }

footer {
  background:var(--fundo-escuro);
  border-top:1px solid rgba(212,168,32,.1);
  padding:2.5rem 2rem; text-align:center;
  font-family:'Space Mono',monospace;
  font-size:.62rem; letter-spacing:.1em;
  color:var(--texto-muted); text-transform:uppercase;
}
footer a { color:var(--ocre); text-decoration:none; opacity:.7; }
footer a:hover { opacity:1; }

@media(max-width:700px){
  .nav-links { display:none; }
  .cap-corpo { padding:3rem 1.5rem 4rem; }
  .cap-dado { gap:1.5rem; }
  .cap-nav { flex-direction:column; }
  .cap-nav-link:last-child { align-items:flex-start; text-align:left; }
}