/* =========================================
   FUENTES
========================================= */

@font-face {
  font-family: 'CuativaFont1';
  src: url('fonts/aurora.woff2') format('woff2');
  font-style: normal;
  font-weight: normal;
  font-display: swap;
}

@font-face {
  font-family: 'CuativaFont2';
  src: url('fonts/goldenmind.woff2') format('woff2');
  font-style: normal;
  font-weight: normal;
  font-display: swap;
}

@font-face {
  font-family: 'CuativaFont3';
  src: url('fonts/futura.woff2') format('woff2');
  font-style: normal;
  font-weight: normal;
  font-display: swap;
}

/* =========================================
   RESET
========================================= */

html {
  box-sizing: border-box;
}

  *,
  *::before,
  *::after {
  box-sizing: inherit;
  margin: 0;
  padding: 0;
}

body {
  background: #f5f8e7;
  line-height: 1.6;
  overflow-x: hidden;
}

/* =========================================
   HEADER
========================================= */

.header {
  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 15px 40px;

  background: rgba(245, 248, 231, 0.6);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  position: sticky;
  top: 0;
  z-index: 1000;
}

.logo {
  display: flex;
  align-items: center;
  gap: 10px;

  text-decoration: none;
  color: inherit;
}

.logo img {
  height: 80px;
  width: auto;
}

.textlogo {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}

.slogan1 {
  font-family: 'CuativaFont3';
  font-size: 1rem;
  letter-spacing: 2px;
  margin-left: 15px;
  font-weight: 900;
  color: #63804f;
}

.slogan2 {
  font-family: 'CuativaFont2';
  font-size: 2.5rem;
  font-weight: 200;
  color: #874b17;
}

.header nav {
  display: flex;
  align-items: center;
}

.header nav a {
  margin-left: 50px;

  text-decoration: none;

  color: #874b17;

  font-weight: 900;
  font-size: 1.1rem;

  font-family: 'CuativaFont3';

  transition: opacity 0.3s ease;
}

.header nav a:hover {
  opacity: 0.7;
}

/* =========================================
   HERO
========================================= */

.hero {
  position: relative;

  min-height: 80vh;

  overflow: hidden;

  display: flex;
  justify-content: center;
  align-items: center;
}

/* =========================================
   SLIDES
========================================= */

.hero-slide {
  position: absolute;
  inset: 0;

  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;

  opacity: 0;

  z-index: 1;

  animation: fadeSlider 32s infinite;
}

/* IMÁGENES */

.slide1 {
  background-image: url("images/intro.jpg");
  animation-delay: 0s;
}

.slide2 {
  background-image: url("images/intro1.jpg");
  animation-delay: 8s;
}

.slide3 {
  background-image: url("images/intro2.jpg");
  animation-delay: 16s;
}

.slide4 {
  background-image: url("images/intro3.jpg");
  animation-delay: 24s;
}

/* =========================================
   ANIMACIÓN HERO
========================================= */

@keyframes fadeSlider {
  0% {
    opacity: 0;
  }

  10% {
    opacity: 1;
  }

  25% {
    opacity: 1;
  }

  35% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

/* =========================================
   OVERLAY
========================================= */

.hero-overlay {
  position: absolute;
  inset: 0;

  background: rgba(0, 0, 0, 0.4);

  z-index: 2;
}

/* =========================================
   CONTENIDO HERO
========================================= */

.hero-content {
  position: relative;

  z-index: 3;

  width: 100%;
  height: 80vh;

  text-align: center;
  
}

/* =========================================
   TEXTOS HERO
========================================= */

.hero-text {
  position: absolute;

  inset: 0;

  opacity: 0;

  animation: fadeText 32s infinite;

  display: flex;
  flex-direction: column;

  justify-content: center;
  align-items: center;

  text-align: center;

  padding: 20px;

  padding-bottom: 140px;

  z-index: 4;
}

/* DELAYS */

.text1 {
  animation-delay: 0s;
}

.text2 {
  animation-delay: 8s;
}

.text3 {
  animation-delay: 16s;
}

.text4 {
  animation-delay: 24s;
}

/* ANIMACIÓN TEXTOS */

@keyframes fadeText {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  5% {
    opacity: 1;
    transform: translateY(0);
  }

  25% {
    opacity: 1;
    transform: translateY(0);
  }

  30% {
    opacity: 0;
    transform: translateY(-20px);
  }

  100% {
    opacity: 0;
  }
}

/* =========================================
   TITULOS HERO
========================================= */

.hero-content h2 {
  font-family: 'CuativaFont2';

  font-size: clamp(3rem, 9vw, 8rem);

  font-weight: 300;

  letter-spacing: -1px;

  color: #ffffff;

  text-shadow:
    0 2px 10px rgba(0, 0, 0, 0.5),
    0 4px 25px rgba(0, 0, 0, 0.4);

  -webkit-text-stroke: 1px rgba(0, 0, 0, 0.3);

  line-height: 1;

  max-width: 90%;
}

.hero-content p {
  font-family: 'CuativaFont3';

  margin-top: 15px;

  font-size: clamp(1rem, 2vw, 2rem);

  color: #ffffff;

  max-width: 700px;

  padding: 0 20px;
}

/* =========================================
   BENEFICIOS HERO
========================================= */

.hero-beneficios {
  position: absolute;

  bottom: 20px;
  left: 50%;

  transform: translateX(-50%);

  display: flex;

  justify-content: center;
  align-items: center;

  flex-wrap: wrap;

  gap: 18px;

  width: 90%;

  z-index: 5;
}

/* ITEMS */

.hero-beneficios span {
  display: flex;
  align-items: center;
  justify-content: center;

  padding: 10px 18px;

  background: rgba(255,255,255,0.12);

  border: 1px solid rgba(255,255,255,0.15);

  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);

  border-radius: 50px;

  color: white;

  font-family: 'CuativaFont3';

  font-size: 0.95rem;

  text-shadow: 0 2px 8px rgba(0,0,0,0.4);
}

/* HOVER */

.hero-beneficios span:hover {
  transform: translateY(-3px);

  background: rgba(255,255,255,0.2);
}

/* =========================================
   PRODUCTOS
========================================= */

.productos-jabon { 
  
  padding: 70px 40px; 
  
  font-family: 'CuativaFont3'; 
  
  color: #874b17; 

}

.producto{

    perspective:1200px;
    height:560px;

    transition:transform .35s ease;

}

.producto:hover{

    transform:translateY(-8px);

}

.producto-inner{

    position:relative;

    width:100%;

    height:100%;

    transition:transform .8s;

    transform-style:preserve-3d;

}

.producto:hover .producto-inner{

    transform:rotateY(180deg);

}

.producto-front,
.producto-back{

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    border-radius:15px;

    overflow:hidden;

    backface-visibility:hidden;

    background:#f5f8e7;

    box-shadow:0 15px 35px rgba(0,0,0,.12);

}

.producto-front{

    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:center;

    padding:20px;

    background:#f5f8e7;

    text-align:center;

}

.producto-front img{

    width:100%;

}

.producto-front h3{

    margin-top:15px;

}

.producto-front p{

    margin:10px;

}

.producto-front span{

    font-weight:bold;

}

.producto-front button{

    margin:20px auto;

}

.producto-back{

    transform:rotateY(180deg);

    padding:25px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    background:#6a8f7b;

    color:white;

}

.producto-back h3{

    margin-bottom:10px;

    font-size: 1.3rem;

}

.producto-back p{

    margin:10px;

    text-align:center;

    font-size: 1.1rem;

}

.producto-back ul{

    list-style:none;

    padding:0;

    width:100%;

    text-align:center;

    font-size: 1.1rem;

}

.producto-back li{

    padding:5px 0;

    border-bottom:1px solid rgba(255,255,255,.2);

}

.producto-back button{

    margin-top:25px;

    background: #874b17;

    color: #f5f8e7;

    border:none;

    padding:12px 25px;

    border-radius:30px;

    cursor:pointer;

    font-size: 1rem;

    font-weight: 600;


}

.producto-back button:hover {
  background: #557564;
}

.productos-jabon h2 {
  text-align: center;

  margin-bottom: 40px;

  background: rgba(101, 141, 122, 0.7);

  padding: 10px 18px;

  border-radius: 20px;

  font-size: 1.5rem;
}

.grid {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

  gap: 30px;
}

.producto img {
  width: 100%;

  border-radius: 10px;

  transition: transform 0.4s ease;
}

.producto h3 {
  margin-top: 15px;
}

.producto p {
  margin: 10px 0;
}

.producto span {
  display: block;

  margin-top: 10px;

  font-weight: bold;
}

.producto:hover .producto-front,
.producto:hover .producto-back{

    box-shadow: 0 25px 50px rgba(0, 53, 3, 0.418);

}


/* =========================================
   FOOTER
========================================= */

.footer {
  font-family: 'CuativaFont3';

  text-align: center;

  padding: 20px;

  font-size: 1rem;

  color: #874b17;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width:768px){

/*====================
HEADER
====================*/

.header{

    flex-direction:column;

    padding:15px 20px;

    gap:10px;

}

.logo{

    justify-content:center;

}

.logo img{

    height:60px;

}

.textlogo{

    align-items:flex-start;

}

.slogan1{

    font-size:.7rem;

    margin-left:15px;

    letter-spacing:1px;

}

.slogan2{

    font-size:1.8rem;

}

/*====================
NAV
====================*/

.header nav{

    justify-content:center;

    flex-wrap:wrap;

    gap:15px;

}

.header nav a{

    margin-left:0;

    font-size:.9rem;

}

/*====================
HERO
====================*/

.hero{

    min-height:100vh;

}

.hero-content h2{

    font-size:clamp(2.5rem,12vw,4rem);

}

.hero-content p{

    font-size:1rem;

}

/*====================
BENEFICIOS
====================*/

.hero-beneficios{

    width:90%;

    bottom:25px;

    gap:12px;

}

.hero-beneficios span{

    font-size:.8rem;

    padding:8px 14px;

}

/*====================
PRODUCTOS
====================*/

.productos-jabon{

    padding:50px 20px;

}

.productos-jabon h2{

    font-size:1.3rem;

}

.grid{

    grid-template-columns:1fr;

    gap:25px;

}

.producto{

    height:520px;

}

/* frente */

.producto-front{

    padding:18px;

}

.producto-front img{

    height:400px;

    object-fit:cover;

}

.producto-front h3{

    font-size:1.3rem;

}

.producto-front p{

    font-size:.95rem;

}

/* reverso */

.producto-back{

    padding:20px;

}

.producto-back h3{

    font-size:1.3rem;

}

.producto-back li{

    font-size:.95rem;

    padding:8px 0;

}

.producto-back p{

    min-height:auto;

    font-size:.95rem;

}

.producto button{

    width:100%;

}

/*====================
FOOTER
====================*/

.footer{

    font-size:.9rem;

}

}