

@font-face {
  font-family: "AbhayaLibre";
  src: url(../fonts/AbhayaLibre-Regular.ttf);
  }

  @font-face {
  font-family: "CinzelDecorative";
  src: url(../fonts/CinzelDecorative-Regular.ttf);
  }

    @font-face {
  font-family: "Arinttika-Signature";
  src: url(../fonts/Arinttika-Signature.ttf);
  }

  
    @font-face {
  font-family: "Parisienne-Regular";
  src: url(../fonts/Parisienne-Regular.ttf);
  }

  body, html {
    overflow-x: hidden !important;
  }

  html{
    overflow-x: hidden;
  }

body{
  z-index: 1;
  background: #f6eddb;
  font-family: "CinzelDecorative"!important;
}

ul{
  list-style: none;
}
a{
  text-decoration: none;
  color: #f9f8f8;
}


::-webkit-scrollbar-thumb:horizontal{
display: none;
}
/*___________________Estilos generales_____________________*/

.border-2{
border: 5px double #66754c;
}
.border-dor{
margin: 10px 0px 10px 0px;
border-top: 3.5px double #66754c;
border-bottom: 3.5px double #66754c;
}

.border-white{
margin: 10px 0px 10px 0px;
border-top: 3.5px double #fff;
border-bottom: 3.5px double #fff;
}
.filter{
  filter: brightness( 165% ) contrast( 85% ) saturate( 200% ) blur( 0px ) hue-rotate( 210deg );
}
.filter-black{
  filter: brightness( 0% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );
}
.row{
  justify-content: center;
}


img.image{
  box-shadow: 3px 5px 9px 0px #271e1e47;
}


.abhayaLibre{
    font-family: "AbhayaLibre";
  }
.arinttika{
    font-family: "Arinttika-Signature";
}

.parisienne{
    font-family: "Parisienne-Regular";
}
.title-1 {
  font-family: "CinzelDecorative";
    font-size: 45px;
    font-weight: 300;
    text-shadow: -1px 1px 0px #FFFFFF;
    color: #66754c;
  }

h2.arinttika {
    
        font-size: 110px;
    line-height: 1.5em;
    /* text-shadow: -2px 3px 0px rgba(255, 255, 255, 0.3); */
    color: #FFFFFF;
}

.title {
  font-family: "Cormorant", serif;
  font-size: 48px;
  font-weight: 100;
  text-transform: uppercase;
  }



.font-20{
  font-size: 20px;
  line-height: 1;
}
.font-22 {
 font-size: 22px;
 }
.font-30{
  font-size: 30px;
}

.font-40{
  font-size: 40px;
}
.foto-principal{
  position: relative;
}

.foto-principal::before{
content: "";
position: absolute;
background: rgba(0, 0, 0, 0.3);
inset: 0;
}

.regalos-content{
  position: relative;
}

.regalos-content::before{
content: "";
position: absolute;
background: rgba(227, 227, 227, 0.3);
inset: 0;
}
.titulo-absolute{
  position: absolute;
  bottom: 10px;
  /* left: 0; */
}



.sombra-texto { 
text-shadow: -2px 0px 2px rgba(0, 0, 0, 0.3);
 } 

.m-0 {
  margin-bottom:0;
  }
  .m-10 {
  margin-bottom: 10px;
  }
  .m-20 {
  margin-bottom: 20px;
  }
  .m-40 {
  margin-bottom: 40px;
  }
  .mt-20{
    margin-top: 20px;
  }
.text-black{
  color: #000!important;
}
  /*_________________________AUDIO___________________________________*/
  .audio {
    position: fixed;
    z-index:99999;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
    opacity: 0;
    }
    .aparecer-audio {
    position: fixed;
    z-index:99999;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
    opacity: 1;
    }
    .desaparecer-audio {
    visibility: hidden;
    opacity: 0;
    transition: all 3s;
    position: fixed;
    right: 20px;
    bottom: 20px;
    }
    .pausa01 {
    opacity: 0;
    position: fixed;
    z-index:99999;
    right: 20px;
    bottom: 20px;
    }
    .aparecer-pausa {
    position: fixed;
    z-index:99999;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
    opacity: 1;
    }
    /*_________________________________SOBRE__________________________*/
    
#carta {

width: 100vw;

height: 100vh;

background: #F5E1CE;

z-index:9999;

position: absolute;

display: flex;

justify-content: center;

align-content: center;

flex-direction: column;
margin-top: 0!important;


}

.sobre-superior {
  position: absolute;
  z-index: 10;
  right: 0;
  left: -4px;
  margin: 0 auto;


}



.con-scroll {

overflow-y: scroll;

}

.arriba{

-moz-transform: translate(0px, -1500px);

-webkit-transform: translate(0px, -1500px);

-o-transform: translate(0px, -1500px);

-ms-transform: translate(0px, -1500px);

transform: translate(0px, -1500px);

transition: all 3s;

}



.abajo {

-moz-transform: translate(0px, 1000px);

-webkit-transform: translate(0px, 1000px);

-o-transform: translate(0px, 1000px);

-ms-transform: translate(0px, 1000px);

transform: translate(0px, 1000px);

transition: all 3s;

}



.desaparecer {

visibility: hidden;

opacity: 0;

transition: all 3s;

}





@media (max-width: 991px) {

.titulo-sobre {

  font-family: "Parisienne-Regular";

margin: 0;

color: #000;

position: absolute;

z-index:11;

right: 0;

left: 0;

margin: 0 auto;

margin-top: 10px;
font-size: 28px;

top: 20px;

}

.titulo-sobre-02 {

  font-family: "Parisienne-Regular";

margin: 0;

color: #000;

position: absolute;

z-index:11;

right: 0;

left: 0;

margin: 0 auto;

top: 20px;

font-size: 22px;
width:80%;
}

.boton-sobre {

    font-family: "Parisienne-Regular";

color: #000;

position: absolute;

z-index:12;

right: 0;

left: 0;

margin: 0 auto;

top: 48%;

font-size: 25px;

background-color: rgba(255,255,255,0.5);

width: 150px;

height: 35px;

border-radius: 20px;

display: flex;

justify-content: center;

align-content: center;

flex-direction: column;

}

#sobre img {

width: 103.6%;

}

  }

@media (min-width: 992px) {

.titulo-sobre {

    font-family: "Parisienne-Regular";

margin: 0;

color: #000;

position: absolute;

z-index:11;

right: 0;

left: 0;

margin: 0 auto;


font-size: 40px;
top: 20px;
}

.titulo-sobre-02 {

    font-family: "Parisienne-Regular";

margin: 0;

color: #000;

position: absolute;

z-index:11;

right: 0;

left: 0;

margin: 0 auto;

top: 20px;

font-size: 34px;

width:80%;

}

.boton-sobre {

    font-family: "Parisienne-Regular";

color: #000;

position: absolute;

z-index:12;

right: 0;

left: 0;

margin: 0 auto;

top: 48%;

font-size: 40px;

background-color: rgba(255,255,255,0.5);

width: 200px;

height: 60px;

border-radius: 20px;

display: flex;

justify-content: center;

align-content: center;

flex-direction: column;

}

#sobre img {

width: 100.5%;

}
}

/*___________________General___________________________-*/
.cuadroInfo{
display: flex;
flex-direction: column;
align-items: center;

}

.cuadro-instagram {
background: linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%); 
padding: 40px 20px;
overflow:hidden;
border-radius: 20px;
margin-bottom: 40px;
}


/*________________________TIMER__________________________________________*/



ul.tiempo {
  margin: 0;
  padding: 0;
  text-align: center;
  
}
.tiempo li {
  display: inline-block;
  list-style-type: none;
  margin: 0;
  color: #ffffff;
  font-family: "Cinzel", Sans-serif;
  
}

.tiempo li span {
  background: #66754c;
  display: block;
  padding: 21px 21px 21px 21px;
  border-radius: 100px 100px 100px 100px;
  font-weight: 600;
  font-size: 25px;
}


/*________________MISA Y RECEPCION________________*/

 .foto-container {
      position: relative;
      width: 350px;
      height: auto;
  
    }

    .foto-container img.main {
      width: 100%;
      height: auto;
      display: block;
      object-fit: cover;
        border-radius: 50% / 35%;
    }

    .foto-container img.decor1 {
      position: absolute;
      bottom: -25px;
      left: -10px;
      width: 100%;
      height: auto;
      pointer-events: none;
    }


     .foto-container img.decor2 {
      position: absolute;
      bottom: -25px;
      right: -10px;
      width: 100%;
      height: auto;
      pointer-events: none;
    }

    .highlight-link {
      position: relative;
      display: inline-block;
      font-size: 24px;
      color: black;
      text-decoration: none;
    }

    .highlight-link svg {
      position: absolute;
      bottom: -5px;
      left: 0;
      width: 100%;
      height: 25px;
    }


    .highlight-link path {
      stroke: #c19fff;
      stroke-width: 10;
      fill: none;
    }


/*______________________SCROLLBAR_______________________________*/
::-webkit-scrollbar{
  width: 10px;
  background-color: #000;
}
::-webkit-scrollbar-track{
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.9);
  border-radius: 10px;
  background-color: #000;
}
::-webkit-scrollbar-thumb{
  border-radius: 10px;
  background-color: #efd2b7 ;
  background-image: -webkit-linear-gradient(90deg,transparent,rgba(0, 0, 0, 0.4) 50%,transparent,transparent)
}




   
    /*_________________galería__________________________-*/
.galeria-superpuesta {
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative;
    }

    .galeria-superpuesta img {
      width: 150px;
      border-radius: 25px;
      object-fit: cover;
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
      margin-top: -20px; /* superposición */
    }

    .galeria-superpuesta img:first-child {
      margin-top: 0; /* sin superposición para la primera */
    }

img.img-galeria{
  z-index: 1;
}
img.left{
  transform: translateX(-40px);
}

img.img-redonded {
      width: 300px; /* o el tamaño que necesites */
      border-radius: 25px;
      object-fit: cover;
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    }
    img.img-absolute{
         position: absolute;
    bottom: 0;
    left: 10px;
    }

/*----------------------------------
Form
------------------------------------*/
.cuadro-form {
  background: #efd2b7 ;
  padding: 40px 20px;
  margin-top: 20px;
  overflow:hidden;

  }
.form-campo {
  background: rgba(0, 0, 0, 0.1);
  width: 100%;
  border: 1px solid transparent;
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
  color:#fff;

  }
  
  .form-campo::-webkit-input-placeholder {
    color: #fff;
  }
  
  .form-campo::-moz-placeholder {
    color: #fff;
  }
  
  .form-campo:-ms-input-placeholder {
    color: #fff;
  }
  
  .form-campo::placeholder {
    color: #fff;
  }
  
  .form-campo:focus {
    font-weight: 400;
    color: #fff;
  }
  
  .form-campo:focus::-webkit-input-placeholder {
    color: #fff;
  }
  
  .form-campo:focus::-moz-placeholder {
    color: #fff;
  }
  
  .form-campo:focus:-ms-input-placeholder {
    color: #fff;
  }
  
  .form-campo:focus::placeholder {
    color: #fff;
  }
  
  .btn-form {
    background-color: #c4cca5;
    font-family: "Cinzel", Sans-serif;
    font-weight: 500;
    fill: #FFFFFF;
    color: #FFFFFF;
    border-style: solid;
    border-color: #66754c;
    border-width: 2px 2px 2px 2px;
    padding: 12px 24px;
  }
  .btn-form:hover {
    background-color: #c4cca57c;
  transition-duration: .2s;
  }


    
  .btn-whats {
  font-family: "AbhayaLibre";
  font-weight: bold;
  font-size: 18px;
    background-color: #FFFFFF00;
    fill: #25CE74;
    color: #25CE74;
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: #25CE74;
       padding: 12px 24px;
  }
  .btn-whats:hover {
  background: #25ce749a;
  color:#000;
  transition-duration: .2s;
  }

  
  /*----------------------------------
Selección
------------------------------------*/
::selection {
  color: #080808;
  background: #000;
  text-shadow: none;
}

::-webkit-selection {
  color: #080808;
  background: #000;
  text-shadow: none;
}

:active,
:focus {
  outline: none;
}

/*FOTOGRAFIA FOOTER*/
.fotografia-footer{
  min-height: 700px;
  background-size: cover;
  background-position: center;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  
}

.fotografia-footer::before{
  position: absolute;
  content: "";
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
}



/*___________________________________FOOTER____________________________________*/
.cuadro-footer {
background-color: rgba(0, 0, 0, 0.4);
padding: 20px 0;
margin: 0 0;
overflow:hidden;
}





    .parallax {
      height: 100vh;
      position: relative;
      overflow: hidden; /* Asegura que el fondo no se desborde */
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
    }

    
    
    .rellax {
      will-change: transform; /* Mejora el rendimiento */
    }


    .rellax {
      position: relative; /* Necesario para que el pseudo-elemento se posicione correctamente */
    }
    
    .rellax::before {
      content: ""; /* Necesario para que el pseudo-elemento se renderice */
      position: absolute;
      inset: 0; /* Hace que el overlay cubra todo el contenedor */
      background-color: rgba(0, 0, 0, 0.5); /* Fondo negro semi-transparente */
      z-index: 1; /* Asegura que el overlay esté encima del fondo */
    }
    
    .rellax > * {
      position: relative; /* Asegura que el contenido esté encima del overlay */
      z-index: 2;
    }
    
    
    .titulo-parallax {
      position: relative;
      z-index: 2; /* Coloca el texto encima del efecto parallax */
      text-align: center;
    }
    


.carousel-box {
  height: 400px;
  background-size: cover;
  background-position: center;
  border: 5px double #66754c; /* borde amarillo */
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.carousel-content {
  background-color: rgba(0, 0, 0, 0.5); /* fondo oscuro translúcido */
  color: #fff;
  padding: 20px;
  text-align: center;
  border-radius: 10px;
}

.carousel-content h4 {
  font-weight: bold;
  font-size: 24px;
}

.owl-nav .owl-prev,
.owl-nav .owl-next {
  background: #004f7c !important;
  border-radius: 50% !important;
  padding: 10px !important;
  color: #fff !important;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.owl-nav .owl-prev {
  left: -30px;
}

.owl-nav .owl-next {
  right: -30px;
}





    .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: #444;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .swiper-slide img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }


    .swiper {
    height: auto;
      margin-left: auto;
      margin-right: auto;
    }

    .swiper-slide {
      background-size: cover;
      background-position: center;
    }



    .mySwiper {
      height: 20%;
      box-sizing: border-box;
      padding: 10px 0;
    }

    .mySwiper .swiper-slide {
      width: 25%;
      height: 100%;
      opacity: 0.4;
    }

    .mySwiper .swiper-slide-thumb-active {
      opacity: 1;
    }

    .swiper-slide img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }