:root {
  --bg:#0c0d10;
  --panel:#14161b;
  --card:#1b1f27;
  --text:#e6e6e6;
  --muted:#b7bdc6;
  --accent:#9b87f5;
  --accent2:#ffd166;
  --ok:#00c389;
  --danger:#ff6b6b;
}

* { box-sizing:border-box; }
html,body {
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial;
}
a {
  color:var(--accent);
  text-decoration:none;
}
a:hover { text-decoration:underline; }
.container {
  max-width:1100px;
  margin:0 auto;
  padding:0 20px;
}

/* HEADER */
.site-header {
  position:sticky;
  top:0;
  background:rgba(12,13,16,.75);
  backdrop-filter: blur(8px);
  border-bottom:1px solid #222;
  z-index:10;
}
.nav {
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:64px;
}
.brand { font-weight:800; letter-spacing:.5px; }
.brand img.logo {
  height:40px;
  width:auto;
  display:block;
}
.btn-link {
  padding:8px 12px;
  border:1px solid var(--accent);
  border-radius:10px;
  color:var(--accent);
}
.btn-link:hover { background:rgba(155,135,245,.08); }

/* HERO */
.hero {
  padding:64px 0 24px;
}
.hero-grid {
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:24px;
  align-items:center;
}
.lead { font-size:1.2rem; color:var(--muted); }
.cta-row {
  display:flex;
  gap:12px;
  margin:16px 0 8px;
}
.btn-primary,.btn-secondary {
  border:none;
  border-radius:12px;
  padding:14px 18px;
  font-weight:600;
  cursor:pointer;
}
.btn-primary { background:var(--accent); color:#0b0c10; }
.btn-primary:hover { filter:brightness(1.05); }
.btn-secondary {
  background:var(--panel);
  color:var(--text);
  border:1px solid #2a2e36;
}
.btn-secondary:hover { background:#20242d; }

.bullets { margin-top:8px; color:var(--muted); }
.card {
  background:var(--card);
  border:1px solid #232834;
  border-radius:16px;
  padding:20px;
}
.shadow { box-shadow:0 8px 30px rgba(0,0,0,.35); }

/* COMPRA */
.purchase { padding:8px 0 32px; }
.price-card {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.price-actions { text-align:right; }
.tiny { font-size:.85rem; color:var(--muted); margin-top:6px; }
.price-tag {
  font-size:1.8rem;
  font-weight:700;
  color:var(--accent2);
  margin-bottom:8px;
  text-align:right;
}

/* CAPÍTULO */
.chapter { padding:40px 0; }
.chapter h2 { margin-bottom:4px; }
.chapter h3 { margin-top:24px; }
.page-preview {
  width:100%;
  max-width:700px;
  height:auto;
  display:block;
  margin:0 auto;
  border-radius:8px;
}

/* FRASE DE DOR / HEADLINE */
.pain blockquote {
  background:#14161b;
  border-left:4px solid var(--danger);
  margin:40px auto;
  padding:24px;
  border-radius:10px;
  font-size:1.3rem;
  font-style:italic;
  text-align:center;
  max-width:800px;
  color:var(--text);
}
.headline-box {
  text-align:center;
  max-width:900px;
  margin:40px auto;
  padding:20px;
}
.headline {
  font-size:2rem;
  font-weight:800;
  line-height:1.3;
  color:var(--accent2);
  margin-bottom:16px;
}
.sub-headline {
  font-size:1.2rem;
  color:var(--text);
  font-weight:400;
  line-height:1.6;
}

/* CAPA DO LIVRO */
.cover-img {
  width:100%;
  max-width:320px;
  height:auto;
  border-radius:12px;
  display:block;
  margin:0 auto;
}
.book-cover {
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
}

/* AUTOR */
.author-box {
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-top:12px;
}
.author-photo {
  width:64px;
  height:64px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid var(--accent);
}

/* FOOTER */
.site-footer {
  margin-top:40px;
  padding:28px 0;
  border-top:1px solid #232834;
}
.footer-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.copy {
  margin-top:12px;
  color:#98a1ac;
  font-size:.9rem;
  text-align:center;
}

/* THANKS */
.thanks { padding:64px 0; }

/* --- RESPONSIVIDADE --- */
@media (max-width:900px) {
  .hero-grid { grid-template-columns:1fr; }
  .price-card {
    flex-direction: column;
    align-items: center;   /* centraliza no mobile */
    text-align: center;    /* centraliza textos */
  }
  .footer-grid { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  /* header */
  .nav {
    flex-direction:column;
    align-items:center;
    height:auto;
    padding:12px 0;
    gap:8px;
  }
  .brand img.logo { height:32px; }

  .site-header nav {
    display:flex;
    gap:16px;
    flex-wrap:wrap;
    justify-content:center;
  }

  /* headline */
  .headline-box { padding:10px; }
  .headline { font-size:1.2rem; line-height:1.4; }
  .sub-headline { font-size:.95rem; line-height:1.5; }

  /* hero */
  .hero { padding:32px 0 16px; }
  .hero-text h1 {
    font-size:1.3rem;
    line-height:1.4;
    margin-top:16px;
  }
  .lead { font-size:1rem; }
  .cta-row {
    flex-direction:column;
    align-items:stretch;
  }
  .btn-primary,.btn-secondary {
    width:100%;
    text-align:center;
  }

  /* capa */
  .cover-img { max-width:220px; }

  /* capítulo */
  .page-preview { max-width:100%; border-radius:6px; }
}
/* Headline no hero */
.hero-headline {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: justify; /* justifica o texto */
  margin-bottom: 16px;
}

/* Headline do bloco de compra */
.purchase-headline {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 12px;
  text-align: center; /* centraliza no desktop e mobile */
}

.purchase-info {
  font-size: 1.1rem;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 16px;
}

/* Mobile */
@media (max-width: 600px) {
  .purchase-headline {
    font-size: 1.2rem;
    line-height: 1.4;
    padding: 0 8px; /* espaço lateral */
  }

  .purchase-info {
    font-size: 1rem;
    line-height: 1.4;
    padding: 0 8px;
  }
}

/* Destaques visuais */
.highlight {
  color: var(--accent2); /* amarelo para destacar palavras-chave */
  font-weight: 800;
}

.accent {
  color: var(--accent); /* roxo principal */
  font-weight: 800;
}
@media (max-width: 600px) {
  .headline-box { margin: 10px auto; }
  .sub-headline { margin-bottom: 8px; }
  .book-cover { margin-top: 4px; }
}


@media (max-width: 600px) {
  /* Reduz espaço do bloco superior (pain + headline) */
  .pain blockquote {
    margin: 20px auto;     /* antes estava 40px */
    padding: 16px;         /* antes estava 24px */
    font-size: 1.05rem;    /* menor no celular */
  }

  .headline-box {
    margin: 20px auto;     /* antes estava 40px */
    padding: 10px;
  }

  .headline {
    font-size: 1.1rem;     /* menor */
    line-height: 1.3;
    margin-bottom: 8px;    /* menos espaço */
  }

  .sub-headline {
    font-size: 0.9rem;
    line-height: 1.4;
    margin-bottom: 12px;   /* espaço menor */
  }

  /* Reduz espaço do hero */
  .hero {
    padding: 20px 0 8px;   /* antes estava 32px 0 16px */
  }

  .hero-text h1.hero-headline {
    font-size: 1.1rem;
    line-height: 1.3;
    margin-top: 8px;       /* capa fica mais próxima */
    margin-bottom: 8px;
  }

  .lead {
    font-size: 0.95rem;
    margin-bottom: 10px;   /* reduz espaçamento */
  }

  /* Capa mais próxima do subtítulo */
  .book-cover {
    padding: 8px;          /* antes estava 16px */
    margin-top: 8px;
  }

  .cover-img {
    max-width: 200px;      /* menor no celular */
  }
}
