/* Reset básico */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Arial', sans-serif;
}

body {
  background: #fafafa;
  color: #333;
}

/* Cabeçalho */
header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 50px;
  background: linear-gradient(90deg, #37A6F8, #1B5191, #37A6F8, #1B5191);
}


header .logo {
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
}

header nav a {
  margin: 0 15px;
  text-decoration: none;
  color: #fff;
  font-weight: 500;
}

header .btn {
  background: #fff;
  color: #ff69b4;
  padding: 10px 20px;
  border-radius: 20px;
  border: none;
  cursor: pointer;
  font-weight: bold;
}

/* Hero */
.hero {
  text-align: center;
  padding: 100px 20px;
  background: url('banner.jpg') no-repeat center/cover;
  color: #fff;
}

.hero h1 {
  font-size: 3rem;
  margin-bottom: 20px;
}

.hero p {
  font-size: 1.2rem;
  margin-bottom: 30px;
}

.hero-buttons .btn {
  margin: 0 10px;
}
.hero-buttons .btn-outline {
  background: transparent;
  border: 2px solid #fff;
  color: #fff;
}


/* BANNER PRINCIPAL Slider */
.slider {
  position: relative;
  width: 100%;
  height: 80vh;
  overflow: hidden;
}

.slide {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  padding: 20px;
}

.slide.active {
  opacity: 1;
  position: relative;
}

.hero-content {
  background: rgba(0,0,0,0.4);
  padding: 20px;
  border-radius: 10px;
}

/* Controles */
.slider-controls {
  position: absolute;
  width: 100%;
  top: 50%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  padding: 0 20px;
}

.slider-controls span {
  cursor: pointer;
  font-size: 2rem;
  color: #fff;
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
  padding: 10px;
}

/* Indicadores */
.slider-dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
}

.slider-dots span {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
  opacity: 0.6;
  cursor: pointer;
}

.slider-dots .active {
  opacity: 1;
  background: #ff69b4;
}

/* Responsividade */
@media (max-width: 768px) {
  .slider {
    height: 60vh;
  }
  .hero-content h1 {
    font-size: 1.8rem;
  }
  .hero-content p {
    font-size: 1rem;
  }
}



/* __________ MISSAO VISAO Section */
.missao {
  padding: 80px 20px;
  text-align: center;
  background: #fff;
}

.missao h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #444;
}

.missao p {
  max-width: 700px;
  margin: 0 auto 50px;
  font-size: 1.1rem;
  color: #666;
}

/* Cards */
.cards-m {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}

.cards-m {
  flex: 1 1 250px;
  padding: 30px;
  border-radius: 15px;
  color: #fff;
  text-align: center;
  min-height: 200px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.cards-m h3 {
  margin-bottom: 15px;
  font-size: 1.3rem;
}

/* Cores dos cards */
.cards-m.laranja { background: #FFA74E; }
.cards-m.green { background: #61C8B3; }
.cards-m.blue { background: #87cefa; }








/* ---------------------- FIM MISSAO VISAO */



/* Intro Section */
.intro {
  padding: 80px 20px;
  text-align: center;
  background: #fff;
}

.intro h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #444;
}

.intro p {
  max-width: 700px;
  margin: 0 auto 50px;
  font-size: 1.1rem;
  color: #666;
}

/* Cards */
.cards {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}

.card {
  flex: 1 1 250px;
  padding: 30px;
  border-radius: 15px;
  color: #fff;
  text-align: center;
  min-height: 200px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.card h3 {
  margin-bottom: 15px;
  font-size: 1.3rem;
}

/* Cores dos cards */
.card.pink { background: #ffb6c1; }
.card.green { background: #61C8B3; }
.card.blue { background: #87cefa; }




/* CONTRATURNO Section */
.contraturno {
  background: #fdf6f9;
  text-align: center;
  padding: 80px 20px;
}

.contraturno h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #444;
}

.contraturno p {
  max-width: 700px;
  margin: 0 auto 40px;
  font-size: 1.1rem;
  color: #666;
  line-height: 1.6;
}

/* Tags coloridas */
.tags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px;
}

.tag {
  padding: 12px 25px;
  border-radius: 25px;
  font-weight: bold;
  font-size: 1rem;
  color: #fff;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.tag.pink { background: #ff69b4; }
.tag.green { background: #32cd32; }
.tag.blue { background: #1e90ff; }



/* Oficinas Section */
.oficinas {
  padding: 80px 20px;
  text-align: center;
  background: #fff;
}

.oficinas h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #444;
}

.oficinas p {
  max-width: 700px;
  margin: 0 auto 50px;
  font-size: 1.1rem;
  color: #666;
  line-height: 1.6;
}

.oficinas-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
}

.oficina-card {
  padding: 25px;
  border-radius: 15px;
  color: #fff;
  font-size: 1rem;
  text-align: center;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.oficina-card h3 {
  margin: 10px 0;
  font-size: 1.3rem;
}

/* Cores dos cards */
.oficina-card.pink { background: #ff69b4; }
.oficina-card.yellow { background: #ffd700; color: #333; }
.oficina-card.green { background: #32cd32; }
.oficina-card.blue { background: #1e90ff; }
.oficina-card.purple { background: #9370db; }




/* Pacotes Section */
.pacotes {
  background: #fdf6f9;
  text-align: center;
  padding: 80px 20px;
}

.pacotes h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #444;
}

.pacotes p {
  max-width: 700px;
  margin: 0 auto 50px;
  font-size: 1.1rem;
  color: #666;
  line-height: 1.6;
}

/* Grid de pacotes */
.pacotes-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
}

.pacote-card {
  background: #fff;
  padding: 30px;
  border-radius: 15px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  text-align: center;
  transition: transform 0.2s;
}

.pacote-card:hover {
  transform: translateY(-5px);
}

.pacote-card h3 {
  font-size: 1.4rem;
  margin-bottom: 10px;
  color: #444;
}

.pacote-card .price {
  font-size: 1.5rem;
  font-weight: bold;
  color: #ff69b4;
  margin-bottom: 15px;
}

.pacote-card ul {
  list-style: none;
  padding: 0;
  margin-bottom: 20px;
}

.pacote-card ul li {
  margin: 10px 0;
  color: #666;
}

/* Botão */
.pacote-card .btn {
  background: #ff69b4;
  color: #fff;
  border: none;
  padding: 12px 25px;
  border-radius: 25px;
  cursor: pointer;
  font-weight: bold;
  transition: background 0.3s;
}

.pacote-card .btn:hover {
  background: #ff1493;
}

/* Destaque */
.pacote-card.destaque {
  border: 2px solid #ff69b4;
  transform: scale(1.05);
}





/* Festas Section */
.festas {
  padding: 80px 20px;
  background: #FBF9EA;
  text-align: center;
}

.festas h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #444;
}

.festas p {
  max-width: 700px;
  margin: 0 auto 50px;
  font-size: 1.1rem;
  color: #666;
  line-height: 1.6;
}

.festas-content {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-top: 30px;
}

.festa-texto {
  flex: 1 1 300px;
  text-align: left;
}

.festa-texto h3 {
  font-size: 1.5rem;
  margin-bottom: 20px;
  color: #ff69b4;
}

.festa-texto ul {
  list-style: none;
  padding: 0;
  margin-bottom: 20px;
}

.festa-texto ul li {
  margin: 10px 0;
  color: #555;
  position: relative;
  padding-left: 20px;
}

.festa-texto ul li::before {
  content: "🎈";
  position: absolute;
  left: 0;
}

.festa-imagem img {
  max-width: 400px;
  border-radius: 15px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* Botão */
.festa-texto .btn {
  background: #ff69b4;
  color: #fff;
  border: none;
  padding: 12px 25px;
  border-radius: 25px;
  cursor: pointer;
  font-weight: bold;
  transition: background 0.3s;
}

.festa-texto .btn:hover {
  background: #ff1493;
}




/* Diferenciais Section */
.diferenciais {
  padding: 80px 20px;
  background: #fdf6f9;
  text-align: center;
}

.diferenciais h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #444;
}

.diferenciais p {
  max-width: 700px;
  margin: 0 auto 50px;
  font-size: 1.1rem;
  color: #666;
  line-height: 1.6;
}

.diferenciais-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
}

.dif-card {
  background: #fff;
  padding: 25px;
  border-radius: 15px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  text-align: center;
  transition: transform 0.2s;
}

.dif-card:hover {
  transform: translateY(-5px);
}

.dif-card h3 {
  margin: 10px 0;
  font-size: 1.2rem;
  color: #ff69b4;
}

.dif-card p {
  font-size: 1rem;
  color: #555;
}



/* Galeria Varal */
.galeria {
  padding: 80px 20px;
  text-align: center;
  background: #D1ECFB;
  position: relative;
}

.galeria h2 {
  font-size: 2rem;
  margin-bottom: 15px;
  color: #444;
}

.galeria p {
  max-width: 600px;
  margin: 0 auto 40px;
  font-size: 1.1rem;
  color: #555;
}

/* Fio do varal */
.varal {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
  position: relative;
}

.varal::before {
  content: "";
  position: absolute;
  top: 40px;
  left: 10%;
  right: 10%;
  height: 3px;
  background: #aaa;
  border-radius: 2px;
}

/* Foto estilo varal */
.foto {
  position: relative;
  background: #fff;
  padding: 10px;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  transform: rotate(-2deg);
  transition: transform 0.3s;
}

.foto:nth-child(even) {
  transform: rotate(2deg);
}

.foto img {
  width: 180px;
  height: 120px;
  object-fit: cover;
  border-radius: 8px;
}

/* Pregadorzinho */
.foto::before {
  content: "📎";
  font-size: 1.5rem;
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
}

/* Efeito ao passar o mouse */
.foto:hover {
  transform: scale(1.1) rotate(0);
  z-index: 2;
}





/* Contato Section */
.contato {
  padding: 80px 20px;
  text-align: center;
  background: #49363D;
}

.contato h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #fff;
}

.contato p {
  max-width: 700px;
  margin: 0 auto 30px;
  font-size: 1.1rem;
  color: #fff;
  line-height: 1.6;
}

.contato-info {
  margin-bottom: 30px;
  color: #555;
  font-size: 1rem;
  line-height: 1.8;
}

.btn-whats {
  background: #25d366;
  color: #fff;
  padding: 15px 30px;
  border-radius: 30px;
  font-size: 1.1rem;
  text-decoration: none;
  font-weight: bold;
  transition: background 0.3s;
}

.btn-whats:hover {
  background: #1ebd58;
}

/* Rodapé */
footer {
  background: #49363D;
  text-align: center;
  padding: 20px;
  font-size: 0.9rem;
  color: #fff;
}

/* Botão flutuante WhatsApp */
.whatsapp-float {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #25d366;
  color: #fff;
  font-size: 2rem;
  text-decoration: none;
  border-radius: 50%;
  padding: 15px 18px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  z-index: 1000;
  transition: background 0.3s;
}

.whatsapp-float:hover {
  background: #1ebd58;
}






/* ---------------- RESPONSIVIDADE ---------------- */

/* Telas até 768px */
@media (max-width: 768px) {
  header {
    flex-wrap: wrap;
    padding: 15px 20px;
  }

  header nav {
    display: none;
    flex-direction: column;
    width: 100%;
    text-align: center;
    margin-top: 10px;
    background: linear-gradient(90deg, #ffb6c1, #b0e0e6);
    border-radius: 10px;
    padding: 10px 0;
  }

  header nav.active {
    display: flex;
  }

  header nav a {
    margin: 10px 0;
    font-size: 1.1rem;
  }

  .menu-toggle {
    display: block;
    font-size: 1.8rem;
    cursor: pointer;
    color: #fff;
  }

  header .btn {
    display: none; /* botão de agendamento só no desktop */
  }

  /* Hero */
  .hero {
    padding: 60px 20px;
  }

  .hero h1 {
    font-size: 2rem;
  }

  .hero p {
    font-size: 1rem;
  }

  /* Festas imagem menor */
  .festa-imagem img {
    max-width: 100%;
  }
}

/* Telas até 480px (celulares pequenos) */
@media (max-width: 480px) {
  .hero h1 {
    font-size: 1.6rem;
  }

  .hero p {
    font-size: 0.9rem;
  }

  .btn, .btn-whats {
    font-size: 0.9rem;
    padding: 10px 20px;
  }

  .tag {
    font-size: 0.9rem;
    padding: 8px 15px;
  }
}








