: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;
  --rosa-terra: #c8506a;
  --rosa-claro: #e87898;
  --rosa-ocre: #d87848;
}

* { 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 — rosa-terra, aurora, presença ── */
.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 140% 100% at 30% 100%, rgba(180,60,60,.2) 0%, transparent 55%),
    radial-gradient(ellipse 120% 80% at 70% 0%, rgba(200,80,40,.14) 0%, transparent 50%),
    radial-gradient(ellipse 160% 120% at 50% 50%, #2e1208 0%, #2a1408 55%, #1e0c04 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,8,4,.2) 0%, rgba(20,8,4,.5) 60%, var(--fundo) 100%);
}
.cap-hero-inner { position:relative; z-index:3; max-width:860px; }

.cap-num {
  font-family:'Space Mono',monospace; font-size:.68rem; letter-spacing:.5em;
  text-transform:uppercase; color:var(--ocre); 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(--rosa-claro); font-style:italic; }

.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(200,80,100,.4); }
.cap-divisor i { font-style:normal; color:var(--rosa-terra); 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(200,80,100,.4);
  animation: fadeUp 1s ease 1.3s both;
}
.cap-scroll-line { width:1px; height:40px; background:linear-gradient(to bottom, rgba(200,80,100,.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(200,80,100,.15);
}
.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(--rosa-terra);
  float:left; line-height:.70; margin:.05em .14em 0 0;
}
.cap-abertura em { color:var(--rosa-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(--rosa-terra); 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(--rosa-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(--rosa-claro); font-style:normal; font-weight:500; }
.cap-secao strong { color:var(--creme); font-weight:600; }

/* Perfis das mulheres */
.perfis-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:2px; background:rgba(200,80,100,.08);
  margin:3.5rem 0;
}
.perfil-card {
  background:var(--fundo2);
  padding:2.2rem 2rem;
  position:relative; overflow:hidden;
  transition:background .3s;
}
.perfil-card::before {
  content:''; position:absolute; top:0; left:0; bottom:0; width:3px;
  background:linear-gradient(to bottom, var(--rosa-terra), var(--ocre));
}
.perfil-card:hover { background:rgba(51,26,10,.8); }
.perfil-inicial {
  font-family:'Playfair Display', serif;
  font-size:2.8rem; font-weight:900; font-style:italic;
  color:rgba(200,80,100,.2); line-height:1;
  margin-bottom:.6rem; display:block;
}
.perfil-nome {
  font-family:'Playfair Display', serif;
  font-size:1.2rem; font-weight:700;
  color:var(--creme); margin-bottom:.2rem; line-height:1.2;
}
.perfil-povo {
  font-family:'Space Mono',monospace; font-size:.6rem;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--rosa-terra); margin-bottom:1rem; display:block;
}
.perfil-texto {
  font-size:.98rem; line-height:1.85;
  color:var(--texto); opacity:.82;
}

/* Citação */
.cap-citacao {
  border-left:3px solid rgba(200,80,100,.45);
  padding:1.6rem 2.2rem; margin:3.2rem 0;
  background:rgba(200,80,100,.04);
}
.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(--rosa-terra); 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(200,80,100,.1);
  border-bottom:1px solid rgba(200,80,100,.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(--rosa-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(200,80,100,.04);
  border:1px solid rgba(200,80,100,.13);
  border-top:3px solid var(--rosa-terra);
  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(--rosa-terra); 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(--rosa-terra); }
.cap-sep i { font-style:normal; color:var(--rosa-terra); font-size:.5rem; }

/* Fechamento especial */
.cap-fechamento {
  margin-top:4rem; padding:3rem 0;
  border-top:1px solid rgba(200,80,100,.15);
  text-align:center;
}
.cap-fechamento-titulo {
  font-family:'Playfair Display', serif;
  font-size:clamp(1.4rem, 3vw, 2rem);
  font-weight:700; font-style:italic;
  color:var(--creme); margin-bottom:1.5rem; line-height:1.3;
}
.cap-fechamento-titulo em { color:var(--rosa-claro); }
.cap-fechamento p {
  font-size:1.1rem; line-height:2;
  color:var(--texto); opacity:.85;
  max-width:600px; margin:0 auto 1.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(200,80,100,.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(--rosa-terra);
}
.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(--rosa-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(200,80,100,.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; }
  .perfis-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; }
}