/* ═══════════════════════════════════════════════════════════════════════════
   secoes.css — as seções das páginas.
   Complementa site.css (base, tipografia, topo, rodapé, botões, cartões).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── hero ───────────────────────────────────────────────────────────────── */
.hero { position:relative; overflow:hidden; padding:clamp(3rem,7vw,6rem) 0 clamp(3.5rem,8vw,7rem); }
.hero-fundo { position:absolute; inset:0; z-index:0; opacity:.20; }
.hero-fundo img { width:100%; height:100%; object-fit:cover; filter:grayscale(.5) contrast(1.1); }
.hero::after {
  content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:
    radial-gradient(ellipse 70% 60% at 50% 40%, transparent, rgba(0,0,0,.55) 72%),
    linear-gradient(180deg, rgba(0,0,0,.55), transparent 28%, rgba(0,0,0,.92));
}
.hero-in {
  position:relative; z-index:2;
  display:grid; gap:clamp(2rem,5vw,4rem);
  grid-template-columns:1fr 1fr; align-items:center;
}
.hero-txt h1 {
  font-size:clamp(2.8rem,8.5vw,6rem); line-height:.94; letter-spacing:-.005em;
  background:linear-gradient(175deg,var(--gold-flare),var(--gold-polished) 38%,var(--accent) 68%,var(--gold-deep));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 0 62px rgba(255,216,106,.14);
  margin-bottom:1.1rem;
}
.hero-sub { font-family:var(--serif); font-size:clamp(1.05rem,1.9vw,1.35rem); color:var(--t2); font-style:italic; margin-bottom:2rem; }
.hero-btns { display:flex; flex-wrap:wrap; gap:.9rem; }
.centro-flex { justify-content:center; }
.hero-capa img { filter:drop-shadow(0 40px 60px rgba(0,0,0,.9)) drop-shadow(0 0 46px rgba(230,185,74,.10)); }
@media (max-width:900px){
  .hero-in { grid-template-columns:1fr; text-align:center; }
  .hero-btns { justify-content:center; }
  .hero-capa { order:-1; max-width:min(420px,80vw); margin-inline:auto; }
}

/* ── sinopse ────────────────────────────────────────────────────────────── */
.sinopse { font-family:var(--serif); font-size:clamp(1.02rem,1.5vw,1.18rem); color:var(--t2); }
.sinopse p:first-of-type::first-letter {
  font-family:var(--display); float:left; font-size:3.6em; line-height:.82;
  padding:.06em .12em 0 0; color:var(--gold-polished);
  text-shadow:0 0 22px rgba(255,216,106,.22);
}
.sinopse-fecho {
  font-family:var(--display); font-size:clamp(1.15rem,2.2vw,1.5rem);
  color:var(--gold-polished); text-align:center; margin:2.2rem 0;
  text-wrap:balance;
}
.sub-secao { font-family:var(--serif); color:var(--t3); max-width:62ch; margin-inline:auto; margin-bottom:2.4rem; }
.nota { font-size:.8rem; color:var(--t4); font-style:italic; margin-top:1.6rem; }

/* ── selos do universo ──────────────────────────────────────────────────── */
.selos {
  list-style:none; margin:2.5rem 0 0; padding:0;
  display:grid; gap:1.2rem;
  grid-template-columns:repeat(auto-fit,minmax(128px,1fr));
}
.selo { text-align:center; }
.selo-ico {
  display:block; width:clamp(64px,9vw,92px); margin:0 auto .7rem;
  filter:brightness(0) saturate(100%) invert(78%) sepia(42%) saturate(680%) hue-rotate(2deg) brightness(97%) contrast(94%)
         drop-shadow(0 0 12px rgba(230,185,74,.24));
  transition:transform .22s ease, filter .22s ease;
}
.selo:hover .selo-ico {
  transform:translateY(-4px) scale(1.05);
  filter:brightness(0) saturate(100%) invert(90%) sepia(60%) saturate(900%) hue-rotate(1deg)
         drop-shadow(0 0 20px rgba(255,216,106,.45));
}
.selo-rot {
  font-family:var(--display); font-size:.76rem; font-weight:500;
  letter-spacing:.11em; text-transform:uppercase; color:var(--t3); line-height:1.35;
  display:block;
}

/* ── galerias ───────────────────────────────────────────────────────────── */
.galeria { display:grid; gap:1.2rem; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.galeria-item { margin:0; border:1px solid var(--border); border-radius:5px; overflow:hidden; background:var(--bg2); box-shadow:var(--shadow2); }
.galeria-item img { width:100%; transition:transform .5s cubic-bezier(.2,.7,.3,1); }
.galeria-item:hover img { transform:scale(1.035); }
.galeria-item figcaption { padding:.7rem .9rem; font-size:.8rem; color:var(--t3); text-align:center; border-top:1px solid var(--border); }
.galeria-wall { grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }

/* ── comparativo / arquitetura ──────────────────────────────────────────── */
.cmp-foto, .combo-foto { border-radius:4px; overflow:hidden; margin-bottom:1.4rem; border:1px solid var(--border); }
.cmp-foto img, .combo-foto img { width:100%; }
.lista-check { list-style:none; margin:1.2rem 0 1.8rem; padding:0; font-size:.9rem; }
.lista-check li { position:relative; padding-left:1.5rem; margin-bottom:.6rem; color:var(--t2); }
.lista-check li::before {
  content:''; position:absolute; left:0; top:.55em;
  width:7px; height:7px; transform:rotate(45deg);
  background:var(--gold-polished); box-shadow:0 0 8px rgba(255,216,106,.5);
}
.arq { display:grid; gap:1.2rem; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); margin-bottom:2.6rem; }
.arq-item { margin:0; border:1px solid var(--border); border-radius:5px; overflow:hidden; background:var(--bg2); }
.arq-item img { width:100%; }
.arq-item figcaption {
  padding:.75rem .9rem; font-family:var(--display); font-size:.8rem;
  letter-spacing:.10em; text-transform:uppercase; color:var(--t3);
  text-align:center; border-top:1px solid var(--border);
}

/* ── combos ─────────────────────────────────────────────────────────────── */
.cartao-combo { position:relative; display:flex; flex-direction:column; }
.cartao-combo .lista-check { flex:1; }
.destaque { border-color:var(--border2); box-shadow:var(--shadow3); }
.tarja {
  position:absolute; top:-1px; right:1.4rem; z-index:2;
  background:linear-gradient(145deg,var(--gold-polished),var(--accent));
  color:#140e02; font-family:var(--display); font-size:.75rem; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase;
  padding:.35rem .8rem; border-radius:0 0 3px 3px;
  box-shadow:0 4px 14px rgba(0,0,0,.6);
}

/* ── autor ──────────────────────────────────────────────────────────────── */
.autor-bloco { display:grid; gap:clamp(1.8rem,4vw,3.5rem); grid-template-columns:minmax(200px,.75fr) 1.25fr; align-items:center; }
.autor-foto { border:1px solid var(--border2); border-radius:5px; overflow:hidden; box-shadow:var(--shadow3); }
@media (max-width:800px){
  .autor-bloco { grid-template-columns:1fr; }
  .autor-foto { max-width:320px; margin-inline:auto; }
}

/* ── FAQ ────────────────────────────────────────────────────────────────── */
.faq { margin-top:2rem; border-top:1px solid var(--border); }
.faq-item { border-bottom:1px solid var(--border); }
.faq-item summary {
  cursor:pointer; list-style:none; padding:1.15rem 2.2rem 1.15rem 0; position:relative;
  font-family:var(--display); font-size:1rem; font-weight:500; color:var(--t1);
}
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after {
  content:"+"; position:absolute; right:.35rem; top:50%; transform:translateY(-50%);
  font-size:1.3rem; color:var(--accent);
}
.faq-item[open] summary::after { content:"\2212"; }
.faq-item summary:hover { color:var(--gold-polished); }
.faq-corpo { padding:0 0 1.3rem; color:var(--t2); font-family:var(--serif); }
.faq-corpo p { margin:0; }

/* ── leitor (ler online / sobre o autor / legal) ────────────────────────── */
.leitor-topo { padding:clamp(3rem,7vw,5.5rem) 0 clamp(2rem,4vw,3rem); }
.leitor-topo h1 {
  background:linear-gradient(175deg,var(--gold-flare),var(--gold-polished) 40%,var(--accent) 72%,var(--gold-deep));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 0 54px rgba(255,216,106,.12);
}
.capitulo { font-family:var(--serif); font-size:clamp(1.04rem,1.5vw,1.2rem); line-height:1.78; color:var(--t2); }
.capitulo h2 { font-size:clamp(1.5rem,3.4vw,2.3rem); margin:2.6rem 0 1.4rem; }
.capitulo p { margin:0 0 1.25em; }
.cap-num {
  font-family:var(--display); font-size:.74rem; letter-spacing:.26em;
  text-transform:uppercase; color:var(--t4); margin:0 0 .3rem;
}
.cena {
  font-family:var(--display) !important; font-size:.78rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--accent); margin:2rem 0 .3em !important;
}
.cena + .cena { margin-top:0 !important; }
.grito {
  font-family:var(--display); font-weight:600; text-align:center;
  color:var(--gold-polished); letter-spacing:.06em;
  font-size:clamp(1.05rem,2.1vw,1.32rem);
  margin:1.8em 0 !important; text-shadow:0 0 22px rgba(255,216,106,.20);
}
.salto { text-align:center; color:var(--t4); letter-spacing:.5em; margin:2em 0 !important; }
.assinatura { text-align:right; font-family:var(--display); color:var(--accent); font-style:normal; }
.aviso {
  border:1px solid var(--border2); border-left-width:3px; border-radius:4px;
  background:linear-gradient(145deg,rgba(255,216,106,.022),transparent),var(--bg2);
  padding:clamp(1.2rem,3vw,1.9rem); margin-bottom:3rem;
  font-family:var(--sans); font-size:.9rem; color:var(--t3); line-height:1.65;
}
.aviso h2 {
  font-size:.78rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--accent); margin:0 0 1rem;
}
.aviso p { margin:0 0 .8em; }
.citacao {
  font-family:var(--serif); font-style:italic; font-size:clamp(1.1rem,2.2vw,1.4rem);
  color:var(--t2); margin:1.6rem auto 0; max-width:52ch; position:relative; padding:0 1.5rem;
}
.citacao::before { content:"\201C"; color:var(--gold-deep); font-size:1.6em; line-height:0; position:relative; top:.28em; }
.citacao::after  { content:"\201D"; color:var(--gold-deep); font-size:1.6em; line-height:0; position:relative; top:.28em; }
.texto-legal { font-family:var(--sans); font-size:.92rem; line-height:1.72; color:var(--t3); }
.texto-legal h2 { font-size:1.05rem; margin:2.2rem 0 .9rem; color:var(--t1); }
.fecho-leitor { background:linear-gradient(180deg,transparent,rgba(230,185,74,.022)); }
