*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Inter',sans-serif;
  background:#111111;
  color:#ffffff;
}

.header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:999;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:24px 0;
  background:rgba(17,17,17,0.95);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,0.08);
}

.logo img{
  height:55px;
  width:auto;
  display:block;
}

nav{ display:none; }

.hero{
  min-height:100vh;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:100px;
  padding:160px 7% 100px;
}

.drop,.small-title{
  display:inline-block;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:3px;
  color:#9c9c9c;
  margin-bottom:20px;
}

.hero h1,.section h2,.product h2,.benefits h2,.faq h2,.final-cta h2{
  font-family:'Cormorant Garamond',serif;
}

.hero h1{
  font-size:108px;
  line-height:.95;
  margin-bottom:20px;
  font-weight:500;
  letter-spacing:4px;
  color:#fff;
}

.hero h2{
  font-size:28px;
  font-weight:400;
  margin-bottom:25px;
  color:#fff;
}

.hero p,.section p,.product p,.faq p{
  color:#cfcfcf;
  font-size:17px;
  line-height:1.8;
}

.hero-text{ max-width:600px; }

.hero-img img,.section img,.product-card img{
  width:100%;
  display:block;
  object-fit:cover;
  border-radius:22px;
}

.btn{
  display:inline-block;
  margin-top:35px;
  padding:16px 34px;
  background:#fff;
  color:#111;
  text-decoration:none;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:1.5px;
  transition:.3s;
}

.btn:hover{ opacity:.8; }

.light{
  background:#fff;
  color:#111;
}

.btn-dark{
  display:inline-block;
  margin-top:30px;
  padding:16px 34px;
  background:#111;
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:1.5px;
  border-radius:8px;
}

.section{
  padding:120px 7%;
  background:#111;
}

.two-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
}

.reverse{ direction:rtl; }
.reverse>*{ direction:ltr; }

.section h2,.product h2,.benefits h2,.faq h2{
  font-size:56px;
  font-weight:500;
  line-height:1.05;
  margin-bottom:25px;
  color:#fff;
}

.dark{
  background:#fff;
  color:#111;
}

.dark h2{ color:#111; }
.dark p{ color:#555; }
.dark .small-title{ color:#777; }

.benefits{
  padding:120px 7%;
  text-align:center;
  background:#111;
}

.benefits-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:50px;
}

.benefits-grid div{
  border:1px solid rgba(255,255,255,.15);
  color:#fff;
  padding:30px;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:1px;
  border-radius:18px;
}

.product{
  padding:120px 7%;
  background:#111;
}

.product-card{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
  background:#161616;
  padding:60px;
  border-radius:22px;
}

.price{
  font-size:32px!important;
  color:#fff!important;
  margin-bottom:20px;
  font-weight:600;
}

.faq{
  padding:120px 7%;
  background:#111;
}

.faq h2{ margin-bottom:50px; }

details{
  border-bottom:1px solid rgba(255,255,255,.15);
  padding:25px 0;
}

summary{
  cursor:pointer;
  font-size:18px;
  font-weight:500;
  color:#fff;
  text-align:center;
}

details p{ 
  margin-top:15px; 
  text-align:center;
}

.final-cta{
  padding:180px 7%;
  text-align:center;
  background:#111;
  color:#fff;
}

.final-cta p{
  font-size:26px;
  margin-bottom:10px;
}

.final-cta span{
  display:block;
  color:#aaa;
  margin-bottom:25px;
}

.final-cta h2{
  font-size:90px;
  font-weight:500;
}

footer{
  padding:35px;
  text-align:center;
  background:#0b0b0b;
  color:#888;
  font-size:13px;
  letter-spacing:1px;
}

.footer-links{
  margin-top:15px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
}

.footer-links a{
  color:#ffffff;
  text-decoration:none;
  font-size:13px;
  letter-spacing:1px;
  transition:.3s;
}

.footer-links a:hover{
  opacity:.7;
}

.footer-links span{
  color:#666666;
}
.footer-links span{
  color:#666666;
}

/* ==========================
   DEPOIMENTOS
========================== */

.testimonials{

    padding:120px 7%;
    text-align:center;
    background:#111;

}

.testimonial-subtitle{
  color:#cfcfcf;
  font-size:17px;
  line-height:1.8;
  max-width:600px;
  margin:0 auto;
}

.swiper-slide{

    display:flex;
    justify-content:center;

}

.swiper-slide img{

    width:100%;
    max-width:420px;

    border-radius:20px;

    transition:.35s;

    box-shadow:0 20px 50px rgba(0,0,0,.35);

}

.swiper-slide-active img{

    transform:scale(1);

}

.swiper-slide-prev img,
.swiper-slide-next img{

    opacity:.45;
    transform:scale(.9);

}

.swiper-pagination{

    margin-top:35px;
    position:relative;

}

.swiper-pagination-bullet{

    background:#666;

}

.swiper-pagination-bullet-active{

    background:#fff;

}

@media(max-width:900px){

  .header{
    position:relative;
    justify-content:center;
    padding:24px 20px;
  }

  .logo{ margin:auto; }

  .logo img{ height:80px; }

  nav{ display:none; }

  .hero{
    min-height:auto;
    display:flex;
    flex-direction:column;
    padding:50px 22px 70px;
    gap:30px;
    text-align:center;
  }

  .hero-text{
    order:1;
    max-width:100%;
    text-align:center;
    margin:auto;
  }

  .text-block{
    text-align:center;
    margin:auto;
  }

  .hero,
  .section,
  .product,
  .faq,
  .final-cta{
    text-align:center;
  }

  .small-title,
  .drop{
    width:100%;
    text-align:center;
  }

  .hero-img{
    order:2;
    width:100%;
  }

  .hero-img img{
    width:100%;
    max-height:430px;
    object-fit:cover;
    border-radius:18px;
  }

  .hero h1{
    font-size:58px;
    line-height:.95;
    letter-spacing:2px;
  }

  .hero h2{ font-size:22px; }

  .hero p,.section p,.product p,.faq p{
    font-size:15px;
    line-height:1.75;
  }

  .btn,.btn-dark{
    width:100%;
    text-align:center;
    padding:17px 20px;
    font-size:11px;
    margin-left:auto;
    margin-right:auto;
  }

  .section{ padding:75px 22px; }

  .two-columns,.product-card{
    display:flex;
    flex-direction:column;
    gap:30px;
  }

  .two-columns .text-block{ order:1; }
  .two-columns .image-block{ order:2; }

  .reverse{ direction:ltr; }

  .section img,.product-card img{
    width:100%;
    max-height:420px;
    object-fit:cover;
    border-radius:18px;
  }

  .section h2,.product h2,.benefits h2,.faq h2{
    font-size:34px;
    line-height:1.1;
  }

  .benefits,.product,.faq{
    padding:75px 22px;
  }

  .benefits-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .benefits-grid div{ padding:22px 18px; }

  .product-card{
    padding:0;
    background:transparent;
  }

  .final-cta{
    padding:90px 22px;
  }

  .final-cta h2{ font-size:58px; }

  footer{ padding:28px 20px; }
}