* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
html,
body {
  width: 100%;
  overflow-x: hidden;
  font-size: 10px;
  font-family: "Poppins", sans-serif;
}
img {
  object-fit: cover;
}
.bg-none{
    background-color: unset !important;
}
.b-gray {
  color: #000;
  opacity: 30%;
}
.pulse {
  width: 3rem;
  height: 3rem;
  margin: 0 auto;
  position: relative;
  color: white;
  background-color: rgb(37, 53, 81);
  z-index: 5;
  border-radius: 32px;
  animation: zoom 3s infinite ease-in-out;
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  -ms-border-radius: 32px;
  -o-border-radius: 32px;
  -webkit-animation: zoom 3s infinite ease-in-out;
}
.pulse::after {
  display: inline-block;
  /* position: absolute; */
  content: "2";
}
@keyframes zoom {
  0% {
  }
  50% {
    transform: scale(150%);
    -webkit-transform: scale(150%);
    -moz-transform: scale(150%);
    -ms-transform: scale(150%);
    -o-transform: scale(150%);
  }
}
.btn-home {
  text-decoration: none;
  color: rgb(37, 53, 81);
}

.w-100 {
  width: 100%;
}
.h-100 {
  height: 100%;
}
.d-none {
  display: block;
}

.pdd{
    padding: 0 7% !important;
}

.layout__travel {
  display: flex;

  & div {
    width: 50%;
    text-align: center;
  }
}

/* prueba */
.swiper-slide img {
  width: 100%;
}

.swiper-3d .swiper-slide-shadow {
  background: transparent;
}
/* prueba */

/* navbar */

.layout__navbar {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
}

.link__confirmar {
  color: white;
  padding: 1rem 1.5rem;
  background-color: rgb(37, 53, 81) !important;
  border-radius: 32px;
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  -ms-border-radius: 32px;
  -o-border-radius: 32px;
}

.navbar_navbar-container {
  margin: 0 auto;
  width: 90%;
  /* max-width: 1200px; */
  overflow: hidden;
}
.navbar__navbar {
  --state-close: scale(0);
  --state-hamburguer: scale(1);
  --state-menu: translate(-100%);

  /* position: relative; */

  padding: 40px 0;
  display: grid;
  grid-template-columns: repeat(2, max-content);
  justify-content: space-between;
  align-items: center;
}
.navbar__navbar:target {
  --state-menu: translate(0);

  --state-close: scale(1);
  --state-hamburguer: scale(0);
}
.navbar__title {
  color: white;
  /* font-size: 2.5rem; */
  z-index: 1001;
}
.navbar__close,
.navbar__hamburguer {
  cursor: pointer;
  grid-column: -2/-1;
  grid-row: 1/20;
  z-index: 1001;
  transition: 0.4s transform;
  -webkit-transition: 0.4s transform;
  -moz-transition: 0.4s transform;
  -ms-transition: 0.4s transform;
  -o-transition: 0.4s transform;
}
.navbar__hamburguer {
  color: white;
  transform: var(--state-hamburguer);
  -webkit-transform: var(--state-hamburguer);
  -moz-transform: var(--state-hamburguer);
  -ms-transform: var(--state-hamburguer);
  -o-transform: var(--state-hamburguer);
}
.navbar__close {
  color: white;

  transform: var(--state-close);
  -webkit-transform: var(--state-close);
  -moz-transform: var(--state-close);
  -ms-transform: var(--state-close);
  -o-transform: var(--state-close);
}

.navbar_icon {
  font-size: 40px;
}
.navbar__ul {
  background-color: rgb(37, 53, 81);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  display: grid;
  align-content: center;
  gap: 7rem;
  padding-left: 5%;
  transform: var(--state-menu);
  -webkit-transform: var(--state-menu);
  -moz-transform: var(--state-menu);
  -ms-transform: var(--state-menu);
  -o-transform: var(--state-menu);
  transition: 0.3s transform;
  -webkit-transition: 0.3s transform;
  -moz-transition: 0.3s transform;
  -ms-transition: 0.3s transform;
  -o-transition: 0.3s transform;
}
.navbar__li {
  list-style: none;
}
.navbar__link {
  color: white;
  text-decoration: none;
  /* font-size: 1.2rem; */
  letter-spacing: 2px;
}
/* navbar */

/* main */
.layout {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}

.layout---his {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
/* main  */
/* banner */
.layout__banner,
.figure__figure,
.figure__img {
  width: 100%;
}

.layout__banner {
  position: relative;
}
.banner__header {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  text-align: center;
  height: 100%;
  left: 50%;
  top: 50%;
  gap: 5rem;
  z-index: 999;
  transform: translateX(-50%) translateY(-50%);
  color: white;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
}
.header__h1 {
  line-height: 1;
}
.capa {
  position: absolute;
  width: 100%;
  height: 99.7%;
  left: 0;
  top: 0;
  background-color: black;
  opacity: 30%;
  z-index: 10;
}
/* banner */

/* cards */
.layout__cards {
  display: flex;
  justify-content: space-around;
  gap: 1rem;
  width: 90%;
  margin: 0 auto;
}
.cards__item {
  position: relative;
  width: 25%;
  display: flex;
  flex-direction: column;
  gap: 3rem;

  /* height: 100%; */

  & h6 {
    color: rgb(37, 53, 81);
  }
}
.cards__line {
  width: 5rem;
  /* height: 10rem; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.cards_line-line,
.cards__dots {
  background-color: rgb(37, 53, 81);
}
.cards_line-line {
  width: 0.2rem;
  height: 95%;
}
.cards__dots {
  width: 1.5rem;
  height: 2%;
  border-radius: 60px;
  -webkit-border-radius: 60px;
  -moz-border-radius: 60px;
  -ms-border-radius: 60px;
  -o-border-radius: 60px;
}
.cads__p {
  /* padding-right: 8rem; */
}
.cards__figure {
  position: relative;
  overflow: hidden;

  & img {
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
  }
}
.cards__capa {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: black;
  opacity: 35%;
}
/* cards */

/*history*/
.layout__history {
  width: 100%;
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 5rem;
  /* background-color: rgb(224, 224, 219); */
}
.history__title,
.history__p {
  text-align: center;
}
.history__container {
  display: flex;
  align-items: center;
}
.history__header {
  width: 50%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1%;
}
.history__slider {
  width: 50%;
  padding: 1%;
}
/* history */

/* maps */
.layout__maps {
  display: flex;
  width: 90%;
  margin: 0 auto;
  flex-direction: column;
  color: rgb(37, 53, 81);
}
.maps__item {
  width: 100%;
  display: flex;
}
.maps__header,
.maps__map {
  width: 50%;
  display: flex;
  padding: 1% 2%;
  flex-direction: column;
  /* justify-content: center; */
  align-items: center;
  text-align: center;
  gap: 3rem;
}

/* maps */

.layout__calendary {
  width: 95%;
  height: 100%;
  text-transform: uppercase;
  box-shadow: 1px 3px 18px 1px rgba(0, 0, 0, 0.21);
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;

  & h6 {
    color: #414141;
    border-bottom: 2px solid #bdbdbd;
    padding: 2rem 0;
    margin-bottom: 1.5rem;
  }
}
/*calendary*/
.calendary__container {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 3rem;
  padding: 1rem;
  color: #000;
}
/*calendary*/

.layout__aviso {
  width: 100%;
  display: flex;
  flex-direction: column;
  /* justify-content: center; */
  align-items: center;
  padding: 5%;
  gap: 5rem;
  color: white;
  background-color: #253551;
}
.layout__aviso ul {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.layout__wish {
  display: flex;
  gap: 10rem;
  flex-direction: column;
}
.wish__title {
  text-align: center;
  color: rgb(37, 53, 81);
}
.wish__listWish {
  background-color: rgb(37, 53, 81);
  display: inline-block;
  text-decoration: none;
  padding: 1rem 2rem;
  margin: 5rem auto;
  color: white;
  text-align: center;
  border-radius: 32px;
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  -ms-border-radius: 32px;
  -o-border-radius: 32px;
}
.wish__img {
  width: 100%;
  height: 25rem;
  object-fit: contain;
}
.wish__item {
  position: relative;
}
.wish__link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.myWish {
  gap: 10rem;
  margin: 0;
}

/* ivitacion */

.layout__invitation {
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 5rem 15rem;
  /* background-color: rgb(224, 224, 219); */
  color: rgb(37, 53, 81);
  gap: 5rem;
  align-items: center;
  & h4 {
    width: 100%;
    display: block;
    text-align: center;
  }
  & > p {
    width: 100%;
    display: block;
    text-align: center;
  }
}

/* ivitacion */
.layout__footer {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 20rem;
  margin-top: 10rem;
  background-color: black;
  color: white;
}

/*time lien*/
.header__dates {
  display: flex;
  gap: 2rem;
}
.dates__item {
  display: flex;
  flex-direction: column;
}

/*time lien*/

.wish__acont {
  width: 90%;
  margin: 0 auto;
  display: flex;
}

.wish__acont div {
  width: 50%;

  padding: 5%;
  color: rgb(37, 53, 81);
}

.layout__itinerario {
  width: 90%;
  margin: 0 auto;
  margin-top: 0rem;
  position: relative;
}
.itinerario__container {
  position: relative;
  display: flex;
  justify-content: center;
}
.itinerarios__content {
  position: relative;
  width: 45%;
  display: flex;
  flex-direction: column;
  gap: 15rem;
  align-items: center;
}
.itinerarios__content-B {
  margin-top: 15rem;
}
.itinerarios__div {
  position: relative;
  width: 10%;
  /* height: 80%; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.itinerarios__dots {
  /* position: fixed; */
  top: 30%;
  /* left: 50%; */
  width: 1rem;
  height: 1rem;
  background-color: rgb(37, 53, 81);
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}
.itinerarios__line {
  width: 0.2rem;
  height: 90%;
  background-color: rgb(37, 53, 81);
}

.itinerarios__items {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.itinerario-header {
  margin: 5rem auto;
}
.itinerario-header h1 {
  font-family: "Playwrite PL", cursive;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;

  text-align: center;
}
.itinerario-header-text {
  text-align: center;
}
/* modal */

.layout__modal {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  background-color: #111111bd;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.6s;

  --transform: translateY(-100vh);
  --transitionnn: transition 0.8s;

  z-index: 9999999999999;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -ms-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
}

.show__modal {
  opacity: 1;
  pointer-events: unset;
  transition: opacity 0.6s;
  --transform: translateY(0);
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -ms-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;

  --transitionnn: transition 0.8s 0.8s;
}

.modal__btn--close {
  position: absolute;
  right: 1%;
  top: 0;
  font-size: 30px;

  cursor: pointer;
}

/* modal */

.info__hotel {
  text-align: center;
  & p {
    margin-bottom: 3rem;
  }
}

.btn__back {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 7rem;
  height: 7rem;
  position: fixed;
  left: 5%;
  top: 5%;
  background-color: rgb(37, 53, 81);
  color: white;
  padding: 2rem;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  z-index: 999999;
}

.slider-rad{
    overflow: hidden;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}

.layout__close{
    width: 90%;
    margin: 5rem auto;
}

@media screen and (min-width: 990px) {
  .layout__navbar {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
  }

  .navbar__navbar {
    --state-close: scale(0);
    --state-hamburguer: scale(0);
    --state-menu: translate(0);
  }
  .navbar__navbar:target {
    --state-close: scale(0);
  }
  .navbar__ul {
    padding: 0;
    position: unset;
    gap: 5rem;
    grid-auto-flow: column;
    background-color: unset;

    grid-column: -2/-1;
    grid-row: 1/2;

    transform: unset;
    -webkit-transform: unset;
    -moz-transform: unset;
    -ms-transform: unset;
    -o-transform: unset;
  }
  .navbar__link {
    letter-spacing: unset;
  }
}
@media screen and (max-width: 991px) {
  .d-none {
    display: none;
  }
  .banner__header {
    top: 0;
    gap: 3rem;
    transform: translateX(-50%) translateY(-18%);
    -webkit-transform: translateX(-50%) translateY(-18%);
    -moz-transform: translateX(-50%) translateY(-18%);
    -ms-transform: translateX(-50%) translateY(-18%);
    -o-transform: translateX(-50%) translateY(-18%);
  }
  .header__dates {
    position: absolute;
    bottom: 0;
  }
  .layout__invitation {
    padding: 5rem;
  }
  .cads__p {
    padding-right: 2rem;
  }
  .figure__img {
    height: 100vh;
  }
  .calendary__container {
    gap: 1rem;
  }
  .maps__item {
    flex-direction: column;
    gap: 4rem;
  }
  .maps__header {
    width: 100%;
  }
  .maps__map {
    width: 100%;
  }

  .history__container {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .history__header{
    width: 90%;
  }
  .history__container-2 {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    & p {
      width: 90%;
    }
  }
  .history__slider {
    width: 90%;
  }
}

@media screen and (max-width: 600px) {
  .layout__cards {
    flex-direction: column;
    gap: 5rem;
  }
  .cards__item {
    width: 100%;
  }
  .wish__item {
    padding: 0 5rem;
  }

  .layout__aviso {
    padding: 10%;
  }

  .wish__acont {
    width: 90%;
    margin: 0 auto;
    display: flex;

    flex-direction: column;
  }

  .wish__acont div {
    width: 100%;
    color: rgb(37, 53, 81);
  }

  .btn__back {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4rem;
    height: 4rem;
    position: fixed;
    left: 4%;
    top: 4%;
    background-color: rgb(37, 53, 81);
    color: white;
    padding: 2rem;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
  }
}
