:root{
  --primary:#1F4F4F;
  --secondary:#C6A75E;
  --light:#ffffff;
  --dark:#222;
}
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family:'Poppins', sans-serif;
  background:var(--light);
  color:var(--dark);
}

/* TOP BAR */
.top-bar{
  background:#ffffff;
  text-align:left;
  font-size:12px;
  padding:6px 0 6px 40px;
  letter-spacing:1px;
}

/* HEADER */
.main-header{
  background:#fff;
  border-bottom:1px solid #eee;
  position:sticky;
  top:0;
  z-index:1000;
}

.header-container{
  max-width:1400px;
  margin:auto;
  padding:25px 40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:relative;
}

/* LEFT */
.header-left{
  display:flex;
  align-items:center;
  gap:30px;
}

.menu-desktop{
  display:flex;
  gap:30px;
}

.menu-desktop a{
  text-decoration:none;
  font-size:13px;
  letter-spacing:1px;
  color:#222;
  font-weight:500;
}

/* LOGO CENTRAL */
.logo-center{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  text-align:center;
}

.logo-center img{
  height:70px;   /* tamanho equilibrado */
  width:auto;
}

.logo-center span{
  display:block;
  font-size:10px;
  letter-spacing:2px;
  margin-top:2px;
  font-family:'Poppins', sans-serif;
}

/* RIGHT */
.header-right{
  display:flex;
  align-items:center;
  gap:25px;
  font-size:13px;
}

.header-right i{
  cursor:pointer;
}

.favoritos{
  display:flex;
  align-items:center;
  gap:6px;
  text-decoration:none;
  color:#222;
}

/* HERO */
.hero{
  position: relative;
  height: 90vh;
  width: 100%;
  background: url('../../assets/images/bg1desktop.webp') center/cover no-repeat;

  display: flex;
  justify-content: center;  /* CENTRALIZA horizontal */
  align-items: center;      /* CENTRALIZA vertical */

  text-align: center;
  padding: 0;               /* remove qualquer deslocamento lateral */
  color: white;
  overflow: hidden;
}

/* Overlay */
.hero::before{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.45);
  backdrop-filter: blur(5px);
  z-index: 1;
}

/* Conteúdo */
.hero-content{
  position: relative;
  z-index: 2;

  display: flex;
  flex-direction: column;
  align-items: center;  /* garante botão centralizado */
  justify-content: center;

  max-width: 700px;
}

.btn{
  background:#6ab5a9;
  color:white;
  padding:12px 22px;
  text-decoration:none;
  border-radius:30px;
  font-weight:500;
  transition:0.3s;
}

.btn:hover{
  opacity:0.9;
}

/* SECTION */
section{
  padding:80px 0;
}

.section2{
  padding: 0px;
}

.container{
  width:90%;
  max-width:1200px;
  margin:auto;
}

.section-title{
  text-align:center;
  margin-bottom:50px;
  font-family:'Playfair Display', serif;
  font-size:2rem;
}

/* CAROUSEL */
.carousel{
  overflow:hidden;
}

.carousel-track{
  display:flex;
  transition:transform 0.4s ease;
}

.product{
  min-width:100%;
  padding:15px;
  text-align:center;
}

.product img{
  width:100%;
  border-radius:10px;
}

.product h3{
  margin:15px 0;
}

.carousel-buttons{
  text-align:center;
  margin-top:25px;
}

.carousel-buttons button{
  background:var(--primary);
  border:none;
  color:white;
  padding:10px 14px;
  margin:0 6px;
  cursor:pointer;
  border-radius:6px;
}

/* FOOTER */
footer{
  background:#111;
  color:white;
  text-align:center;
  padding:40px 0;
}

/* MOBILE */
.menu-toggle{
  display:none;
}

@media(max-width:992px){

  .menu-desktop{
    display:none;
  }

  .favoritos{
    display:none;
  }

  .menu-toggle{
    display:block;
    font-size:20px;
  }

  .logo-center{
    position:static;
    transform:none;
  }

  .hero{
    padding:30px;
    height:80vh;
  }

  .hero h1{
    font-size:2rem;
  }
}

@media(min-width:768px){
  .product{
    min-width:33.33%;
  }
}

/* FOOTER */
.footer{
  background:#f5f5f5;
  padding-top:60px;
  font-size:14px;
}

.footer-container{
  max-width:1300px;
  margin:auto;
  padding:0 40px 50px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:40px;
}

h4{
	color: #1f4f4f;
}

.footer-col h4{
  margin-bottom:20px;
  font-weight:600;
  letter-spacing:1px;
}

.footer-col a{
  display:block;
  margin-bottom:10px;
  text-decoration:none;
  color:#333;
}

.footer-col a:hover{
  color:var(--primary);
}

.footer-brand{
  text-align:left;
}

.footer-logo{
  font-family:'Playfair Display', serif;
  font-size:26px;
}

.footer-sub{
  font-size:11px;
  letter-spacing:2px;
  display:block;
  margin-bottom:20px;
}

.social-icons{
  display:flex;
  gap:12px;
}

.social-icons a{
  width:35px;
  height:35px;
  background:#dfe9e7;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  color:#1F4F4F;
  font-size:14px;
  transition:0.3s;
}

.social-icons a:hover{
  background:var(--primary);
  color:white;
}

/* NEWSLETTER */
.newsletter p{
  margin-bottom:15px;
}

.newsletter-form{
  display:flex;
  gap:10px;
}

.newsletter-form input{
  flex:1;
  padding:10px;
  border:1px solid #ccc;
  border-radius:4px;
}

.newsletter-form button{
  background:#6ab5a9;
  border:none;
  padding:10px 15px;
  color:white;
  border-radius:4px;
  cursor:pointer;
}

/* BOTTOM */
.footer-bottom{
  text-align:center;
  padding:20px;
  border-top:1px solid #ddd;
  font-size:13px;
  background:#f0f0f0;
}

/* RESPONSIVO */
@media(max-width:992px){
  .footer-container{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .footer-container{
    grid-template-columns:1fr;
  }

  .newsletter-form{
    flex-direction:column;
  }
}

/* =========================
   MOBILE CENTRALIZADO TOTAL
========================= */
@media(max-width:992px){

  /* HERO */
  .hero{
    text-align:center;
    justify-content:center;
    align-items:center;
  }

  .hero-content{
    margin:auto;
  }

  /* SECTIONS */
  section{
    text-align:center;
  }

  /* CAROUSEL */
  .product{
    text-align:center;
  }

  .carousel-buttons{
    text-align:center;
  }

  /* FOOTER */
  .footer-container{
    grid-template-columns:1fr;
    text-align:center;
  }

  .footer-brand{
    text-align:center;
  }

  .social-icons{
    justify-content:center;
  }

  .newsletter-form{
    flex-direction:column;
    align-items:center;
  }

  .newsletter-form input{
    width:100%;
  }

  .newsletter-form button{
    width:100%;
  }

}


/* =========================
   SOBRE NÓS
========================= */

.about {
  padding: 80px 0;
  background: #f8f6f2;
}

.about-container {
  display: flex;
  align-items: center;
  gap: 60px;
}

.about-image {
  flex: 1;
}

.about-image img {
  width: 100%;
  border-radius: 8px;
  object-fit: cover;
}

.about-content {
  flex: 1;
  padding: 70px 0 25px;
  text-align: center;
}

.about-content h2 {
  font-family: 'Playfair Display', serif;
  font-size: 36px;
  margin-bottom: 20px;
}

.about-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 20px;
  color: #555;
}

.about-content .btn {
  display: inline-block;
  margin-top: 10px;
}

/* Responsivo */
@media (max-width: 900px) {
  .about-container {
    flex-direction: column;
    text-align: center;
  }

  .about-image,
  .about-content {
    width: 100%;
  }
}

/* Responsivo */
@media (max-width: 900px) {
  .about-container {
    flex-direction: column;
    align-items: center; /* centraliza horizontalmente */
    text-align: center;
    gap: 40px;
  }

  .about-image,
  .about-content {
    width: 100%;
    max-width: 500px; /* evita ficar muito largo */
  }

  .about-image img {
    margin: 0 auto;
  }

  .about-content p {
    margin-left: auto;
    margin-right: auto;
  }

  .about-content .btn {
    display: inline-block;
    margin: 20px auto 0 auto;
  }
}

/* CENTRALIZAÇÃO ABSOLUTA DO HERO */
.hero {
  display: flex;
  justify-content: center;
  align-items: center;
}

.hero-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.hero .btn {
  margin-top: 20px;
  display: inline-block;
}

/* =========================
   WHATSAPP FLOAT
========================= */

.whatsapp-float{
  position: fixed;
  bottom: 25px;
  right: 25px;
  width: 65px;
  height: 65px;
  background: #25D366;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  text-decoration: none;
  box-shadow: 0 8px 25px rgba(0,0,0,0.35);
  z-index: 999999; /* aumentamos */
  animation: whatsappPulse 2s infinite;
  transition: transform 0.3s ease;
}

/* IMPORTANTE */
body{
  position: relative;
}

.whatsapp-float:hover{
  transform: scale(1.08);
}

/* Pulse suave */
@keyframes whatsappPulse {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.6);
  }
  70% {
    transform: scale(1.05);
    box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
  }
}

/* BOTÃO HAMBURGUER */
.menu-toggle{
  display:none;
  font-size:24px;
  cursor:pointer;
}

/* MENU LATERAL */
.mobile-menu{
  position:fixed;
  top:0;
  right:-100%;
  width:280px;
  height:100%;
  background:white;
  box-shadow:-5px 0 15px rgba(0,0,0,0.1);
  transition:0.4s ease;
  z-index:3000;
}

.mobile-menu.active{
  right:0;
}

.mobile-menu-content{
  padding:40px 25px;
  display:flex;
  flex-direction:column;
  gap:25px;
}

.mobile-menu nav a{
  text-decoration:none;
  color:#000;
  font-size:18px;
  font-weight:500;
}

.mobile-social{
  margin-top:20px;
  display:flex;
  gap:15px;
  font-size:20px;
}

.close-mobile{
  font-size:28px;
  cursor:pointer;
  align-self:flex-end;
}

/* RESPONSIVO */
@media (max-width: 768px){

  .menu-desktop{
    display:none;
  }

  .social-icons.header-right{
    display:none;
  }

  .menu-toggle{
    display:block;
  }

}