@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&family=Poppins:wght@400;500;600;700&family=Playfair+Display:wght@700;800&display=swap');
* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

body {
  font-family: 'Poppins', sans-serif;
}

.contos-page {
  min-height: 100vh;
  color: #102b3a;
  background-image: url('../img/fundo/fundo-home.png');
  background-size: cover;
  background-position: right top;
  background-repeat: no-repeat;
  background-attachment: fixed;
  overflow: hidden;
  padding-bottom: 50px;
}

.menu {
  width: 85%;
  margin: 0 auto;
  padding: 28px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo img {
  height: 100px;
  width: auto;
  display: block;
  filter: drop-shadow(0 3px 8px rgba(0,0,0,0.18));
  transition: transform .3s ease;
}

.logo img:hover {
  transform: scale(1.04);
}

/* Posicionamento do logo */
.logo {
    margin-left: -115px;
        margin-top: -25px;

}

.menu nav a {
  color: white;
  margin-left: 30px;
  text-decoration: none;
  font-weight: 600;
  font-size: 15px;
}

.menu nav a:last-child {
  background: #f8759a;
  padding: 14px 28px;
  border-radius: 25px;
}

.hero {
  width: 85%;
  margin: 40px auto 20px;
  min-height: 720px;
  display: flex;
  align-items: flex-start;
}

.hero-text {
  max-width: 520px;
  animation: subir 1.2s ease;
}

.apresenta {
  font-family: 'Great Vibes', cursive;
  font-size: 52px;
  color: #fff;
  text-shadow: 0 0 8px #ff75dd, 0 0 18px #ff75dd;
  margin: 0 0 15px;
}

.hero h1 {
  font-family: 'Playfair Display', serif;
  font-size: 80px;
  line-height: 0.9;
  margin: 0 0 25px;
  color: #183346;
}

.hero h3 {
  font-size: 19px;
  line-height: 1.7;
  font-weight: 600;
  margin-bottom: 28px;
}

.descricao {
  font-size: 16px;
  line-height: 1.8;
  max-width: 470px;
}

.linha {
  width: 340px;
  height: 1px;
  background: #f8759a;
  margin: 30px 0;
  position: relative;
}

.linha span {
  position: absolute;
  left: 50%;
  top: -12px;
  transform: translateX(-50%);
  color: #f8759a;
  font-size: 22px;
}

.botao {
  display: inline-block;
  background: linear-gradient(135deg, #f8759a, #ff9ab5);
  color: white;
  text-decoration: none;
  padding: 16px 34px;
  border-radius: 35px;
  font-weight: 700;
  margin-top: 20px;
  box-shadow: 0 12px 25px rgba(248, 117, 154, 0.35);
  transition: 0.3s;
}

.botao:hover {
  transform: translateY(-4px);
}

.bloco,
.comprar {
  width: 82%;
  margin: 50px auto;
  background: rgba(255,255,255,0.65);
  backdrop-filter: blur(8px);
  padding: 35px 50px;
  border-radius: 24px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.08);
}

.bloco h2,
.personagens h2,
.trilogia h2,
.comprar h2 {
  font-family: 'Playfair Display', serif;
  text-align: center;
  font-size: 42px;
  margin: 0;
  color: #183346;
}

.bloco p,
.comprar p {
  font-size: 16px;
  line-height: 1.8;
  max-width: 620px;
}

.mini-linha {
  text-align: center;
  color: #f8759a;
  margin: 8px 0 18px;
  font-size: 22px;
}

.personagens,
.trilogia {
  width: 88%;
  margin: 60px auto;
}

.cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.card {
  background: rgba(255,255,255,0.75);
  border: 1px solid rgba(255,255,255,0.8);
  border-radius: 20px;
  padding: 25px 18px;
  text-align: center;
  box-shadow: 0 15px 35px rgba(0,0,0,0.08);
  transition: 0.3s;
}

.card:hover,
.livro:hover {
  transform: translateY(-8px);
}

.card h3 {
  color: #f8759a;
  font-size: 22px;
  margin-bottom: 12px;
}

.card p {
  font-size: 14px;
  line-height: 1.7;
}

.livros {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.livro {
  background: rgba(255,255,255,0.72);
  border-radius: 22px;
  padding: 30px;
  box-shadow: 0 15px 35px rgba(0,0,0,0.08);
  transition: 0.3s;
}

.capa-livro {
  width: 100%;
  max-width: 260px;
  display: block;
  margin: 0 auto 24px;
  border-radius: 18px;
  box-shadow: 0 20px 45px rgba(0,0,0,0.18);
  transition: .4s;
}

.livro:hover .capa-livro {
  transform: translateY(-8px) scale(1.03);
}

.livro span {
  color: #f8759a;
  font-weight: 700;
  font-size: 18px;
}

.livro h3 {
  font-family: 'Playfair Display', serif;
  font-size: 25px;
  color: #183346;
}

.livro p {
  line-height: 1.8;
}

.comprar {
  text-align: center;
}

.comprar p {
  margin: 0 auto;
}

@keyframes subir {
  from {
    opacity: 0;
    transform: translateY(35px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media(max-width: 900px) {
  .menu {
    flex-direction: column;
    gap: 20px;
  }

  .menu nav {
    text-align: center;
  }

  .menu nav a {
    display: inline-block;
    margin: 6px;
  }

  .hero {
    width: 90%;
    min-height: 600px;
  }

  .apresenta {
    font-size: 40px;
  }

  .hero h1 {
    font-size: 56px;
  }

  .cards,
  .livros {
    grid-template-columns: 1fr;
  }

  .bloco,
  .comprar {
    width: 90%;
    padding: 30px 22px;
  }

  .linha {
    width: 260px;
  }
}

@media(max-width: 600px) {
  .contos-page {
    background-size: 1450px auto;
    background-position: 78% 0;
    background-attachment: scroll;
    background-color: #7dd9f5;
  }

  .menu {
    width: 100%;
    padding: 22px 12px 0;
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }

  .logo {
    margin-left: 0;
    margin-top: 0;
  }

  .logo img {
    height: 70px;
    width: auto;
  }

  .menu nav {
    text-align: center;
  }

  .menu nav a {
    display: inline-block;
    margin: 6px 8px;
    font-size: 16px;
  }

  .menu nav a:last-child {
    display: block;
    width: 260px;
    margin: 12px auto 0;
    padding: 16px 28px;
    font-size: 18px;
    border-radius: 35px;
  }

  .hero {
    width: 90%;
    min-height: 760px;
    margin: 0 auto;
    padding-top: 110px;
  }

  .hero-text {
    max-width: 310px;
  }

  .apresenta {
    font-size: 36px;
    line-height: 1.2;
  }

  .hero h1 {
    font-size: 56px;
    line-height: 0.9;
  }

  .hero h3 {
    font-size: 17px;
    line-height: 1.6;
  }

  .descricao {
    font-size: 15px;
    line-height: 1.8;
  }

  .linha {
    width: 260px;
  }

  .cards,
  .livros {
    grid-template-columns: 1fr;
  }

  .bloco,
  .comprar {
    width: 90%;
    padding: 30px 22px;
  }

  .capa-livro {
    max-width: 230px;
  }
}

/* Ajuste exclusivo para iPhone/Safari */
@supports (-webkit-touch-callout: none) {
  @media(max-width: 600px) {

    .logo img {
      height: 65px;
    }

    .contos-page {
      background-size: 1600px auto;
      background-position: 82% top;
      background-attachment: scroll;
    }

  }
}
.subtitulo-vendas {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 35px;
  font-size: 17px;
  line-height: 1.7;
  font-weight: 500;
}

.livro small {
  display: block;
  color: #f8759a;
  font-weight: 700;
  margin: 18px 0 6px;
}

.botao-amazon {
  background: linear-gradient(135deg, #183346, #315b73);
}

.box-trilogia {
  width: 100%;
  max-width: 980px;
  margin: 55px auto 0;
  padding: 45px;
  border-radius: 30px;
  background: rgba(255,255,255,0.78);
  backdrop-filter: blur(10px);
  box-shadow: 0 25px 60px rgba(0,0,0,0.12);
  text-align: center;
}

.tag-box {
  display: inline-block;
  background: #f8759a;
  color: white;
  padding: 8px 18px;
  border-radius: 30px;
  font-weight: 700;
  margin-bottom: 14px;
}

.box-trilogia h3 {
  font-family: 'Playfair Display', serif;
  font-size: 38px;
  color: #183346;
  margin: 5px 0 15px;
}

.box-trilogia p {
  max-width: 650px;
  margin: 0 auto 20px;
  line-height: 1.8;
}

.box-trilogia ul {
  list-style: none;
  padding: 0;
  margin: 25px 0;
}

.box-trilogia li {
  margin: 10px 0;
  font-weight: 600;
}

.box-trilogia li::before {
  content: "♥ ";
  color: #f8759a;
}

.botao-box {
  font-size: 18px;
  padding: 18px 42px;
}

/* Ajuste dos cards de venda */
.livro {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.livro span,
.livro h3,
.livro p,
.livro small {
  text-align: center;
}

.livro h3 {
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.livro p {
  min-height: 95px;
}

.livro .botao {
  margin-top: auto;
  align-self: center;
  min-width: 210px;
  text-align: center;
}

/* BOTÕES COM EFEITO NUVEM */
.botao {
  border: none;
  border-radius: 999px;
  padding: 18px 38px;
  font-weight: 800;
  letter-spacing: .3px;
  position: relative;
  overflow: hidden;
  box-shadow:
    inset 0 2px 8px rgba(255,255,255,.55),
    0 14px 30px rgba(248,117,154,.35);
}

.botao::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.75), transparent 28%),
    radial-gradient(circle at 50% 70%, rgba(255,255,255,.35), transparent 30%),
    radial-gradient(circle at 80% 35%, rgba(255,255,255,.55), transparent 25%);
  opacity: .65;
}

.botao {
  z-index: 1;
}

.botao:hover {
  transform: translateY(-4px) scale(1.02);
}

/* BOTÃO AMAZON AZUL NUVEM */
.botao-amazon {
  background: linear-gradient(135deg, #f8759a, #ffb0c7);
  color: #fff;;
  text-shadow: 0 1px 2px rgba(255,255,255,.8);
  box-shadow:
    inset 0 2px 10px rgba(255,255,255,.7),
    0 14px 28px rgba(120,210,240,.35);
}

/* BOTÕES SITE ROSA NUVEM */
.livro .botao:not(.botao-amazon),
.botao-box {
  background: linear-gradient(135deg, #f8759a, #ffb0c7);
  color: #fff;
}

/* ALINHAMENTO DOS CARDS */
.livro {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.livro h3 {
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.livro p {
  min-height: 95px;
}

.livro .botao {
  margin-top: auto;
  align-self: center;
  min-width: 220px;
}

/* OFERTA ESPECIAL IGUAL CARD GRANDE */
.box-trilogia {
  max-width: 620px;
  margin: 60px auto 0;
  padding: 38px 28px;
  border-radius: 34px;
  background: rgba(220, 248, 255, .82);
  backdrop-filter: blur(12px);
  text-align: center;
  box-shadow: 0 25px 60px rgba(0,0,0,.12);
}

.box-trilogia img {
  max-width: 360px;
  width: 90%;
  display: block;
  margin: 0 auto 28px;
}

.box-trilogia p {
  font-size: 22px;
  line-height: 1.6;
  max-width: 520px;
  margin: 25px auto;
}

/* PERSONAGEM FIXA NO FUNDO AO ROLAR */
.contos-page {
  background-attachment: fixed;
}

@media(max-width: 600px) {
  .box-trilogia {
    max-width: 90%;
    padding: 32px 22px;
  }

  .box-trilogia p {
    font-size: 22px;
  }

  .livro .botao {
    width: 240px;
  }
}

/* EPÍLOGO / RODAPÉ */

.epilogo {
  width: 100%;
  margin: 80px auto 0;
  padding: 70px 20px 45px;
  text-align: center;
  background: rgba(220, 248, 255, 0.45);
  backdrop-filter: blur(10px);
}

.epilogo-titulo{

    font-size:68px;

    margin:0;

    line-height:1.1;

    text-align:center;

}

.epilogo-frase {
  font-size: 14px;
  color: #183346;
  margin: 0 0 24px;
}

.epilogo-coracao {
  font-size: 34px;
  color: #ff8fb6;
  margin: 18px 0;
}

.epilogo-texto {
  font-size: 15px;
  line-height: 1.8;
  color: #183346;
  margin: 18px auto;
  max-width: 620px;
}

.epilogo-redes {
  margin: 30px 0;
}

.epilogo-redes a {
  text-decoration: none;
  color: #183346;
  font-weight: 700;
  margin: 0 12px;
}

.epilogo-redes a:hover {
  color: #f8759a;
}

.epilogo-final {
  margin-top: 35px;
  font-size: 13px;
  color: #6d7d86;
}

.epilogo-final a,
.epilogo-final span {
  color: #6d7d86;
  text-decoration: none;
  margin: 0 8px;
}

.epilogo-final a:hover {
  color: #f8759a;
}

@media(max-width: 600px) {
  .epilogo-titulo {
    font-size: 46px;
  }

  .epilogo-redes a,
  .epilogo-final a,
  .epilogo-final span {
    display: inline-block;
    margin: 6px;
  }
}

/* PÁGINA EM BREVE */

.pagina-em-breve{
  min-height:100vh;
}

.em-breve-card{
  text-align:center;
  margin-top:120px;
}

.em-breve-titulo{
  font-size:70px;
  margin:0;
}

.em-breve-card p{
  max-width:680px;
  margin:22px auto;
  line-height:1.9;
}

/* Ajuste página Em Breve */
.em-breve-card .em-breve-titulo {
  font-size: 110px !important;
  line-height: 1;
  margin: 0 0 25px;
}

.em-breve-card {
  text-align: center;
  margin-top: 120px;
}

.em-breve-card p {
  max-width: 720px;
  margin: 22px auto;
  line-height: 1.9;
  font-size: 18px;
}

@media(max-width:600px) {
  .em-breve-card .em-breve-titulo {
    font-size: 72px !important;
  }
}

