:root {
  --terra: #6b2a08;
  --terra-viva: #a83e10;
  --ocre: #c97820;
  --ocre-claro: #e8a830;
  --ocre-vivo: #f5c842;
  --creme: #fdf0d8;
  --creme-escuro: #e8d4a8;
  --preto: #1a0e06;
  --fundo: #2a1408;
  --fundo2: #331a0a;
  --fundo-escuro: #1e0c04;
  --texto: #fdf0d8;
  --texto-muted: #c8a870;
  --cerrado: #8a6a10;
  --cerrado-claro: #c8a030;
  --caatinga: #a05010;
  --pampa: #4a6830;
}

* { 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 — tons de cerrado, dourado seco ── */
.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 120% 80% at 30% 60%, rgba(138,106,16,.18) 0%, transparent 60%),
    radial-gradient(ellipse 100% 70% at 70% 30%, rgba(160,80,16,.12) 0%, transparent 55%),
    radial-gradient(ellipse 150% 100% at 50% 50%, #3a1e06 0%, #2a1408 60%, #1e0e04 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(20,10,2,.15) 0%, rgba(20,10,2,.55) 60%, var(--fundo) 100%);
}
.cap-hero-inner { position:relative; z-index:3; max-width:860px; }

/* Três biomas no hero */
.cap-hero-biomas {
  display:flex; justify-content:center; gap:2.5rem; flex-wrap:wrap;
  margin-bottom:2.5rem;
  animation: fadeUp .8s ease .1s both;
}
.cap-hero-bioma {
  font-family:'Space Mono',monospace; font-size:.6rem; letter-spacing:.3em;
  text-transform:uppercase; padding:.3rem .9rem;
  border:1px solid rgba(201,120,32,.2); border-radius:2px;
}
.cap-hero-bioma.cerrado { color:var(--cerrado-claro); border-color:rgba(200,160,48,.3); }
.cap-hero-bioma.caatinga { color:#d8906a; border-color:rgba(208,140,106,.3); }
.cap-hero-bioma.pampa { color:#90b870; border-color:rgba(144,184,112,.3); }

.cap-titulo {
  font-family:'Playfair Display', Georgia, serif;
  font-size:clamp(2.4rem, 6vw, 5.2rem);
  font-weight:900; line-height:1.0;
  color:var(--creme); margin-bottom:.8rem;
  animation: fadeUp .9s ease .25s both;
}
.cap-titulo em { color:var(--ocre-claro); font-style:italic; }
.cap-subtitulo {
  font-family:'Crimson Pro', Georgia, serif;
  font-size:clamp(1.1rem, 2.2vw, 1.45rem);
  font-style:italic; font-weight:300;
  color:var(--texto-muted);
  margin-bottom:2.5rem; line-height:1.7;
  animation: fadeUp .9s ease .38s both;
}
.cap-divisor {
  display:flex; align-items:center; justify-content:center; gap:1.2rem;
  margin:0 auto; animation: fadeUp .9s ease .48s both;
}
.cap-divisor span { width:60px; height:1px; background:rgba(201,120,32,.35); }
.cap-divisor i { font-style:normal; color:var(--ocre); 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(201,120,32,.4);
  animation: fadeUp 1s ease 1.3s both;
}
.cap-scroll-line { width:1px; height:40px; background:linear-gradient(to bottom, rgba(201,120,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(201,120,32,.12);
}
.cap-abertura p {
  font-size:clamp(1.1rem, 2vw, 1.3rem);
  line-height:2.05; color:var(--texto); margin-bottom:1.8rem;
}
.cap-abertura p:first-child::first-letter {
  font-family:'Playfair Display', serif;
  font-size:4.8rem; font-weight:900; color:var(--ocre);
  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(--ocre); 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; }

/* Cards dos três biomas */
.biomas-grid {
  display:grid; grid-template-columns:1fr 1fr 1fr;
  gap:2px; background:rgba(201,120,32,.07);
  margin:3.5rem 0;
}
.bioma-card {
  padding:2.2rem 1.8rem;
  background:var(--fundo2);
  position:relative; overflow:hidden;
}
.bioma-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
}
.bioma-card.cerrado::before { background:linear-gradient(to right, var(--cerrado), var(--cerrado-claro)); }
.bioma-card.caatinga::before { background:linear-gradient(to right, #8a3808, #d0703a); }
.bioma-card.pampa::before { background:linear-gradient(to right, #2a4818, #6a9848); }

.bioma-nome {
  font-family:'Playfair Display', serif;
  font-size:1.3rem; font-weight:700;
  margin-bottom:.5rem; line-height:1.2;
}
.bioma-card.cerrado .bioma-nome { color:var(--cerrado-claro); }
.bioma-card.caatinga .bioma-nome { color:#d8906a; }
.bioma-card.pampa .bioma-nome { color:#90b870; }

.bioma-area {
  font-family:'Space Mono',monospace; font-size:.6rem;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--texto-muted); margin-bottom:1rem; display:block;
}
.bioma-desc {
  font-size:.98rem; line-height:1.8;
  color:var(--texto); opacity:.8;
}
.bioma-povos {
  margin-top:1.2rem; padding-top:1rem;
  border-top:1px solid rgba(201,120,32,.1);
  font-family:'Space Mono',monospace; font-size:.6rem;
  letter-spacing:.1em; color:var(--texto-muted); line-height:1.9;
}

/* Citação */
.cap-citacao {
  border-left:3px solid rgba(201,120,32,.45);
  padding:1.6rem 2.2rem; margin:3.2rem 0;
  background:rgba(201,120,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(--ocre); 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(201,120,32,.1);
  border-bottom:1px solid rgba(201,120,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(201,120,32,.04);
  border:1px solid rgba(201,120,32,.13);
  border-top:3px solid var(--ocre);
  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(--ocre); 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; }

/* 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(--ocre); }
.cap-sep i { font-style:normal; color:var(--ocre); 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(201,120,32,.13);
  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(--ocre);
}
.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(201,120,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:800px){
  .nav-links { display:none; }
  .cap-corpo { padding:3rem 1.5rem 4rem; }
  .biomas-grid { grid-template-columns:1fr; }
  .cap-dado { gap:1.5rem; }
  .cap-nav { flex-direction:column; }
  .cap-nav-link:last-child { align-items:flex-start; text-align:left; }
}