@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Gilda+Display&display=swap');

:root {

  /* TIPOGRAFIAS */

  --font-1: "Barlow Condensed", sans-serif;
  --font-2: "Gilda Display", serif;
  --font-3: "Barlow", sans-serif;

  /* COLOR */

  --color-1: #FF0000;
  --color-2: #CC0000;
  --color-3: #990000;
  --color-4: #660000;

  --color-black: #000;
  --color-white: #fff;

  /* SIZE */


  --font-s-68: 68px;
  --font-s-50: 50px;
  --font-s-46: 46px;
  --font-s-35: 35px;
  --font-s-30: 30px;
  --font-s-27: 27px;
  --font-s-26: 26px;
  --font-s-24: 24px;
  --font-s-20: 20px;
  --font-s-18: 18px;
  --font-s-16: 16px;
  --font-s-15: 15px;
  --font-s-14: 14px;
  --font-s-12: 12px;
  --font-s-10: 10px;

  /* LINE HEIGHT */

  --lh-auto: normal;
  --lh-100: 100%;
  --lh-110: 110%;
  --lh-140: 140%;

}

p,
h1,
h2,
h3,
h4,
h5,
h6,
span,
ul,
button {
  padding: 0;
  margin: 0;
}


@media (min-width: 1200px) {

  .container {
    max-width: 1140px !important;
  }

}

body {
  height: 300vh;
}


.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--color-3);
    --bs-btn-border-color: var(--color-3);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--color-2);
    --bs-btn-hover-border-color: var(--color-2);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--color-2);
    --bs-btn-active-border-color: var(--color-2);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--color-2);
    --bs-btn-disabled-border-color: var(--color-2);
}


.img-fondo {
  position: relative;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  z-index: -1;
}

.img-fondo::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.4);
  /* controla el nivel de oscuridad */
  z-index: 2;
}

.subtitulo-swiper {
  font-family: var(--font-1);
  font-size: 15px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 6px;
  color: #fff;
}

.titulo-swiper {
  font-family: var(--font-2);
  font-size: 55px;
  text-transform: uppercase;
  line-height: 1.35em;
  color: #fff;
  font-weight: 400;
  letter-spacing: 15px;
}

.subtitulo-secciones {
  font-family: var(--font-1);
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #fff;
}

.titulo-secundario {
  font-family: var(--font-2);
  font-size: 24px;
  line-height: 1.5em;
  color: #fff;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 6px;
}

.parrafo {
  font-family: var(--font-3);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.75em;
}

.font-1 {
  font-family: var(--font-1);
}

.font-2 {
  font-family: var(--font-2);
}

.font-3 {
  font-family: var(--font-3);
}

.color-1 {
  color: var(--color-1);
}

.color-2 {
  color: var(--color-2);
}

.color-3 {
  color: var(--color-3);
}

.color-4 {
  color: var(--color-4);
}

.color-black {
  color: var(--color-black);
}

.color-white {
  color: var(--color-white);
}

.bg-1 {
  background-color: var(--color-1);
}

.bg-2 {
  background-color: var(--color-2);
}

.bg-3 {
  background-color: var(--color-3);
}

.bg-4 {
  background-color: var(--color-4);
}

.bg-hormigon {
  background-color: var(--color-4);
  background-image: url(../img/bg/bg-hormigon.webp);
  background-size: contain;
  background-position: center;
  background-repeat: repeat;
  position: relative;
}

.bg-hormigon::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to bottom, rgba(14, 29, 51, 0.3), rgba(14, 29, 51, 0.2));
}

.backdrop-white {
  background: rgba(203, 203, 203, 0.2);
  box-shadow: 0 4px 30px rgb(0 0 0 / 20%);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  border: 1px solid rgba(255, 255, 255, 0);
  padding: 24px;
  border-radius: 0;
}

.fs-68 {
  font-size: var(--font-s-68) !important;
}

.fs-50 {
  font-size: var(--font-s-50) !important;
}

.fs-46 {
  font-size: var(--font-s-46) !important;
}

.fs-35 {
  font-size: var(--font-s-35) !important;
}

.fs-30 {
  font-size: var(--font-s-30) !important;
}

.fs-27 {
  font-size: var(--font-s-27) !important;
}

.fs-26 {
  font-size: var(--font-s-26) !important;
}

.fs-24 {
  font-size: var(--font-s-24) !important;
}

.fs-20 {
  font-size: var(--font-s-20) !important;
}

.fs-18 {
  font-size: var(--font-s-18) !important;
}

.fs-16 {
  font-size: var(--font-s-16) !important;
}

.fs-15 {
  font-size: var(--font-s-15) !important;
}

.fs-14 {
  font-size: var(--font-s-14) !important;
}

.fs-12 {
  font-size: var(--font-s-12) !important;
}

.fs-10 {
  font-size: var(--font-s-10) !important;
}

.lh-auto {
  line-height: normal;
}

.lh-100 {
  line-height: var(--lh-100);
}

.lh-110 {
  line-height: var(--lh-110);
}

.lh-140 {
  line-height: var(--lh-140);
}

.letter-s-3 {
  letter-spacing: 3px;
}

.letter-s-6 {
  letter-spacing: 6px;
}

.no-decoracion {
  text-decoration: none;
}

.w-fit-content {
  width: fit-content;
}

@media (max-width: 992px) {

  .titulo-swiper {
    font-size: 38px;
  }

}

/* -------------------------------------------------- HEADER -------------------------------------------------- */

header {
  position: absolute;
  top: 0;
  z-index: 99;
  width: 100%;
  background-color: transparent;
  transition: all 0.3s ease-in-out;
}

.fixed-header {
  position: fixed;
  top: -1;
  background-color: #1b1b1b;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.fixed-header nav {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

header nav img {
  width: 100%;
  max-width: 250px;
  transition: all 0.5s ease-in-out;
}

header.fixed-header nav img {
  max-width: 75px;
}

header nav a {
  z-index: 999;
}

header nav button {
  border: none;
  background-color: transparent;
  z-index: 999999;
}

.offcanvas-backdrop {
  background-color: unset !important;
}

.Menu {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: end;
}

.X1 {
  transform: rotate(45deg) translateY(1px) translateX(8px);
}

.X2 {
  opacity: 0
}

.X3 {
  transform: rotate(-45deg) translateY(-2px) translateX(8px);
}

.capa1, .capa3 {
  width: 35px;
  height: 1px;
  background-color: #fff;
  border-radius: 2px;
  margin-bottom: 6px;
  transition: all .3s
}

.capa3 {
  margin-bottom: 0;
}

.capa2 {
  width: 25px;
  height: 1px;
  background-color: #fff;
  border-radius: 2px;
  margin-bottom: 6px;
  transition: all .3s
}

.offcanvas-body {
  padding-top: 180px;
  background-color: var(--color-4);
  padding-left: 30px !important;
}

.dropdown-menu {
  position: unset !important;
  inset: unset !important;
  margin: unset !important;
  transform: unset !important;
}

.accordion-item {
  border-radius: unset !important;
  background: unset !important;
  color: unset !important;
  border: none !important;
}

.accordion-button {
  border-radius: unset !important;
  background-color: transparent !important;
  box-shadow: unset !important;
}

.accordion-button:not(.collapsed) {
  color: var(--color-white) !important;
  background-color: unset !important;
  box-shadow: unset !important;
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  /* padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x); */
  font-size: 1rem;
  color: var(--color-white);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}

.accordion-button::after {
  display: none;
}

.accordion {
  --bs-accordion-btn-padding-x: 0 !important;
  --bs-accordion-btn-padding-y: 0 !important;
}

.offcanvas-body .contenedor-reservado {
  margin-top: 32px;
}

.offcanvas-body .contenedor-reservado .fa-phone-volume {
  border: 1px solid white;
  border-radius: 50%;
  padding: 30px 15px;
}

@media (max-width: 992px) {

  .offcanvas-body .contenedor-reservado {
    display: none;
  }

  .offcanvas {
    width: 100% !important;
  }

}

/* -------------------------------------------------- HEADER -------------------------------------------------- */

/* -------------------------------------------------- SWIPER -------------------------------------------------- */

.mySwiper {
  width: 100%;
  height: 100vh;
}

.mySwiper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 768px) {
.mySwiper {
    height: auto;
  }

  .sw-slide {
    margin-top: 120px;
  }

  .position-absolute{
    position: relative !important;
    top: unset !important;
    left: unset !important;
    transform: unset !important;
    padding: 20px 0;
  }
}

.swiper-pagination-clickable {
  position: relative;
}

.animated-stars {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}

.animated-subtitulo {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animated-titulo {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.animated-buton {
  opacity: 0;
  transform: translateY(60px);
  transition: opacity 1s ease-out, transform 1s ease-out;
}

.swiper-slide-visible .animated-subtitulo {
  opacity: 1;
  transform: translateY(0);
}

.swiper-slide-visible .animated-titulo {
  opacity: 1;
  transform: translateY(0);
}

.swiper-slide-visible .animated-stars {
  opacity: 1;
  transform: translateY(0);
}

.swiper-slide-visible .animated-buton {
  opacity: 1;
  transform: translateY(0);
}

.sw-slide:after{
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(14, 29, 51, 0.3), rgba(14, 29, 51, 0.2));
  z-index: 1;
}

@media (max-width: 992px) {

  .mySwiper .subtitulo {
    font-size: 13px;
  }

  .mySwiper .titulo {
    font-size: 30px;
  }

}

/* -------------------------------------------------- SWIPER -------------------------------------------------- */

/* -------------------------------------------------- SECTION-1-HOME -------------------------------------------------- */

.section-1-home .contenedor-boton a {
  font-weight: 400;
  font-family: var(--font-1);
  text-transform: uppercase;
  color: #fff;
  font-size: 15px;
  letter-spacing: 3px;
  text-decoration: none;
  padding: 9px 12px;
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.section-1-home{
    position: relative;
    overflow: hidden;
}

.section-1-home .btn.btn-primary{

    background-color: #9900007d!important;
    border: 0!important;
    padding: 1rem 2rem!important;

}

.banda-cruzada{
    /* position: absolute;
    bottom: 0;
    left: 0;
    transform: translate(-108px, -99px) rotate(45deg);
    background-color: #9900007d;
    color: #fff;
    padding: 16px 120px;
    font-family: var(--font-1);
    font-size: 40px;
    text-transform: uppercase;
    letter-spacing: 3px;
    z-index: 2;
    text-align: center; */

    font-weight: 400;
    font-family: var(--font-2);
    text-align: center;
    color: #fff;
    font-size: 32px;
    transition-delay: 0.3s;
    margin-top:1.875rem;


}

/* @media (max-width: 992px) {

  .banda-cruzada{
    padding: 16px 120px;
    font-size: 20px;
    transform: translate(-108px, -50px) rotate(45deg);
  }

}

@media (max-width: 768px) {

  .banda-cruzada{
    padding: 10px 60px;
    font-size: 16px;
    transform: translate(-63px, -50px) rotate(45deg);
  }

} */

/* -------------------------------------------------- SECTION-1-HOME -------------------------------------------------- */

/* -------------------------------------------------- SECTION-2-HOME -------------------------------------------------- */

.section-2-home {
  background-color: var(--color-3);
  background-image: url(../img/bg/bg-hormigon.webp);
  background-size: contain;
  background-position: center;
  background-repeat: repeat;
  padding: 90px 0;
}

.section-2-home .image-001 {
  padding-right: 32px;
}

.section-2-home .image-002 {
  padding-left: 32px;
}

.section-2-home .image-001,
.section-2-home .image-002 {
  position: relative;
}

.section-2-home .image-001::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 20%;
  height: 100%;
  background: linear-gradient(to right, #bbbbbb 0%, transparent 100%);
  z-index: 1;
}

.section-2-home .image-002::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 20%;
  height: 100%;
  background: rgb(178 178 178 / 40%);
  z-index: 1;
  background: linear-gradient(to left, #b0b0b0 10%, transparent 100%);
}

.section-2-home img {
  width: 261px;
}

.section-2-home img:nth-of-type(1) {
  margin-top: 0;
  object-fit: cover;
  width: 100%;
  max-height: 300px;
  padding-right: 0;
  position: relative;
  opacity: .9;
}


.section-2-home img:nth-of-type(2) {
  margin-bottom: 0;
  object-fit: cover;
  width: 100%;
  max-height: 300px;
  padding-left: 0;
  opacity: .9;
}



@media (max-width: 992px) {

  .section-2-home img {
    width: 171px;
  }

}


/* -------------------------------------------------- SECTION-2-HOME -------------------------------------------------- */

/* -------------------------------------------------- SECTION-UBICACION-HOME -------------------------------------------------- */
.section-ubicacion-home {
  background-color: var(--color-4);
  padding: 90px 0;
}

/* -------------------------------------------------- SECTION-UBICACION-HOME -------------------------------------------------- */

/* -------------------------------------------------- SECTION-3-HOME -------------------------------------------------- */

.section-3-home {
  background-color: var(--color-3);
  background-image: url(../img/bg/bg-hormigon.webp);
  background-size: contain;
  background-position: center;
  background-repeat: repeat;
  padding: 90px 0;
}

.section-3-home .contenedor-boton {
  transform: rotate(270deg);
  position: absolute;
  top: 58px;
  right: -2px;
}

.section-3-home .contenedor-boton a {
  font-weight: 400;
  font-family: var(--font-1);
  text-transform: uppercase;
  color: #fff;
  font-size: 15px;
  letter-spacing: 3px;
  text-decoration: none;
  padding: 9px 12px;
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.card-room-suites {
  height: 466px;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.card-room-suites::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  z-index: 2;
  transition: background-color 0.3s ease-in-out;
}

.card-room-suites:hover::before {
  background-color: rgba(0, 0, 0, 0.3);
}

.card-room-suites:hover .background-card {
  transform: scale(1.1);
}

.card-room-suites hr {
  width: 20%;
  color: var(--color-white);
  transition: width 0.3s ease-out;
}

.card-room-suites:hover hr {
  width: 100%;
  transition: width 1s ease-in-out;
  transition-delay: 0.1s;
}

.card-room-suites:hover .contenido-escondido {
  max-height: 100px;
}

.card-horizontal {
  height: 337px;
}

.background-card {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  background-position: center;
  transition: transform 0.5s ease-in-out;
  z-index: 0;
}

.contenido-escondido {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
  position: relative;
}

.contenedor-info {
  position: relative;
  overflow: hidden;
}

.contenedor-info::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

.card-room-suites:hover .contenedor-info::before {
  opacity: 1;
}

@media (max-width: 992px) {

  .card-room-suites {
    height: 480px;
    width: 100%;
    overflow: hidden;
  }

  .card-horizontal {
    height: 225px;
  }

}

/* -------------------------------------------------- SECTION-3-HOME -------------------------------------------------- */

/* -------------------------------------------------- SECTION-4-HOME -------------------------------------------------- */

.section-4-home {
  background-color: var(--color-3);
  padding: 90px 0;
}

.cards-servicios {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: flex-start;
  gap: 24px;
}

.card-servicio {
  position: relative;
  background-color: var(--color-4);
  margin: 0;
  flex: 1 0 calc(33.33% - 24px);
  display: flex;
  max-width: 33.33%;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

.img-servicio {
  height: 200px;
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.card-servicio .titulo-secundario {
  font-size: 26px;
}

.card-servicio span.titulo-secundario {
  font-size: 41px;
  color: var(--color-3);
}

.card-servicio .card-body {
  padding: 16px;
}

.servicio .slick-dots {
  bottom: -40px;
}

.slick-dots li {
  margin: unset;
}

.slick-dots li button:before {
  font-size: 12px !important;
  color: transparent;
  border: 1px solid white;
  border-radius: 50px;
  opacity: 1;
}

.slick-dots li.slick-active button:before {
  opacity: 1;
  background-color: #FF0000;
  color: unset;
  border: none;
}

.slick-dots li button:before {
  width: 12px;
  height: 12px;
}

@media (max-width: 992px) {}

/* -------------------------------------------------- SECTION-4-HOME -------------------------------------------------- */

/* -------------------------------------------------- SECTION-5-HOME -------------------------------------------------- */

.section-5-home {
  height: 100%;
  min-height: 1px;
  max-height: 500px;
}

.enlace-video i {
  color: #660000;
  transition: color 0.3s ease;
}

.enlace-video:hover i {
  color: #ffffff;
}

.boton-video {
  border: 2px solid white;
  width: 100px;
  height: 100px;
  border-radius: 50px;
}

@media (max-width: 992px) {

  .section-5-home .fs-15 {
    font-size: var(--font-s-14) !important;
  }

  .section-5-home .fs-46 {
    font-size: var(--font-s-35) !important;
  }

}

/* -------------------------------------------------- SECTION-5-HOME -------------------------------------------------- */

/* -------------------------------------------------- SECTION-6-HOME -------------------------------------------------- */

.section-6-home {
  background-color: var(--color-4);
  padding: 90px 0;
}

.section-6-home .row {
  gap: 23px 0;
}

.card-info {
  border: 1px solid white;
  padding: 30px 20px;
  width: 100%;
}

.section-6-home .fa-2xl {
  line-height: unset;
}

.section-6-home .card-info .titulo-secundario {
  font-size: 26px;
}

@media (max-width: 992px) {

  .card-info {
    padding: 20px;
  }

}

/* -------------------------------------------------- SECTION-6-HOME -------------------------------------------------- */





























/* -------------------------------------------------- SECTION-9-HOME -------------------------------------------------- */

.section-9-home {
  background-color: var(--color-4);
  padding: 90px 0;
}

.section-9-home .contenedor-boton a {
  font-weight: 400;
  font-family: var(--font-1);
  text-transform: uppercase;
  color: #fff;
  letter-spacing: 3px;
  text-decoration: none;
  padding: 5px 10px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  width: fit-content;
  display: block;
  text-align: center;
}

.section-9-home .contenedor-boton a p:nth-of-type(1) {
  font-size: var(--font-s-12);
}

.section-9-home .contenedor-boton a p:nth-of-type(2) {
  font-size: var(--font-s-24);
}

.contenedor-news {
  height: 535px;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.contenedor-news .contenedor-boton {
  top: 20px;
  left: 37px;
  z-index: 9;
}

.contenedor-news .contenedor-img-news {
  width: 100%;
  height: 85%;
  overflow: hidden;
}

.contenedor-news img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.contenedor-news:hover img {
  transform: scale(1.1);
}

.contenedor-news .info-news {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
  padding: 30px 20px;
  transition: all 0.3s ease;
}

.contenedor-news:hover .info-news {
  bottom: 103px;
}

.contenedor-news .info-news .subtitulo-secciones {
  font-size: var(--font-s-12);
}

.contenedor-news .info-news .titulo-secundario {
  font-size: var(--font-s-24);
}

.boton-flecha-izq {
  z-index: 98;
  left: 35px;
  top: 42%;
  opacity: 0;
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid white;
  border-radius: 50px;
}

.boton-flecha-der {
  z-index: 98;
  right: 54px;
  top: 42%;
  opacity: 0;
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid white;
  border-radius: 50px;
}

.contenedor-carrusel-3:hover .boton-flecha-izq {
  opacity: 1;
}

.contenedor-carrusel-3:hover .boton-flecha-der {
  opacity: 1;
}

.slick-prev:before, .slick-next:before {
  content: unset;
}

.section-9-home .slick-dots {
  bottom: -50px;
}

@media (max-width: 992px) {

  .contenedor-news {
    height: 666px;
  }

  .contenedor-news:hover .info-news {
    bottom: 135px;
  }

}

/* -------------------------------------------------- SECTION-9-HOME -------------------------------------------------- */

/* -------------------------------------------------- SECTION-10-HOME -------------------------------------------------- */

.section-10-home {
  padding: 90px 0 0 0;
}

.section-10-home h3 {
  font-size: 24px !important;
}

.section-10-home .parrafo {
  font-size: 12px !important;
}

.carrusel-4 img {
  width: 100%;
}

/* -------------------------------------------------- SECTION-10-HOME -------------------------------------------------- */

.custom-tooltip {
  --bs-tooltip-bg: #1b1b1b;
  --bs-tooltip-color: #ffffff;
  min-width: 300px;
  font-family: var(--font-1);
}

.custom-tooltip .tooltip-inner {
  min-width: 300px;
  padding: 0;
}

.custom-tooltip .tooltip-inner .card {
  min-width: 300px;
  background: #1b1b1b;
  color: #ffffff;
}

.listado-sitios-mapa {
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0;
  list-style: none;
}

.listado-sitios-mapa li {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
  margin-top: 8px;
  padding-top: 8px;
  border-top: solid 1px white;
}

.listado-sitios-mapa li:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.listado-sitios-mapa a {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
  margin-top: 8px;
  padding-top: 8px;
  border-top: solid 1px white;
}

.listado-sitios-mapa a+ul {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  list-style: circle;
  margin-top: 12px;
}

.listado-sitios-mapa a+ul li {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.listado-sitios-mapa a+ul li i {
  font-size: 8px;
}

.listado-sitios-mapa svg {
  height: 15px;
  width: auto;
}

#svg-mapa .st5, #svg-mapa .st6 {
  opacity: .7;
}

#svg-mapa .st1, #svg-mapa .st2, #svg-mapa .st3, #svg-mapa .st4 {
  opacity: .2;
}

#svg-mapa .sitio-mapa {
  cursor: pointer;
}

#svg-mapa .sitio-mapa {
  transform: scale(1);
  transform-origin: center center;
  transform-box: fill-box;
  opacity: 1;
  transition:
    transform 0.5s ease-in-out,
    opacity 0.5s ease-in-out,
    stroke 0.5s ease-in-out,
    fill 0.5s ease-in-out;
}

#svg-mapa .sitio-mapa:hover {
  transform: scale(2);
  opacity: 1;
}

#svg-mapa .sitio-mapa.destacar-sitio-mapa {
  transform: scale(2);
  opacity: 1;
}

#svg-mapa .destacar-sitio-mapa path {
  fill: #ffffff;
  opacity: 1;
}



.listado-sitios-mapa .toggle-colapso {
  width: 100%;
}

.icono-flecha {
  transition: transform 0.3s ease;
  margin-left: auto;
}

.toggle-colapso[aria-expanded="true"] .icono-flecha {
  transform: rotate(180deg);
}

.container-banderas {
display: flex;
gap: 12px;
  position: absolute;
  top: 20px;
  right: 20px;
  height: fit-content;
  width: fit-content;
  z-index: 9999;
}
.container-banderas .change-lang{
  z-index: 999999;
  position: relative;
}

@media(max-width: 767px) {
  .cards-servicios {
    flex-wrap: wrap;
  }

  .card-servicio {
    flex: 1 0 100%;
    max-width: 100%;
  }
}


.fancybox__thumbs .carousel__slide .fancybox__thumb::after{border-color:var(--color-2)!important}

.ver-mapa-sitio{
    font-weight: 400;
    font-family: var(--font-1);
    text-transform: uppercase;
    color: #fff;
    font-size: 15px;
    letter-spacing: 3px;
    text-decoration: none;
    padding: 9px 12px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    justify-content: center;
    align-items: center;
    text-align: center;
    display: none;
  }

.section-ubicacion-home ul li{
  list-style: none!important;
}
.section-ubicacion-home ul li .parrafo{
  font-size: 14px;
}
.section-ubicacion-home .texto-plano{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.section-ubicacion-home .texto-plano p{
  flex: 1 0 calc(50% - 13px);
  margin-bottom: 0;
}
.section-ubicacion-home .texto-plano .separator{
  width: 1px;
  height: 100%;
  background-color: white;
}
.section-ubicacion-home ul li svg{
  max-width: 20px;
  min-width: 20px;
  height: auto;
}
.section-ubicacion-home ul li {
  font-family: var(--font-3);
  font-size: 12px;
  font-weight: 400;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  line-height: 1;
}

.list-legal ul{
  list-style: none;
}

.list-legal ul li a{
  text-decoration: none;
  font-size: 15px;
    color: #adadad;
    font-family: 'Barlow', sans-serif;
    font-weight: 400;
    line-height: 1.25em;
}

.legals p {
  padding: 0;
  font-family: var(--font-3);
  font-style: normal;
  font-weight: 300;
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.02em;
  color: var(--dark);
}

.legals span {
  padding: 24px 5px;
  font-family: var(--font-3);
  font-style: normal;
  font-weight: 700;
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.02em;
  color: var(--primary);
}

.legals ul {
  font-family: var(--font-3);
  font-size: 16px;
  line-height: 30px;
  color: var(--dark);
  font-weight: 300;
  list-style: none;
}

.contents-legals {
  box-shadow: 0 1px 1px rgb(0 0 0 / 10%), 0 2px 2px rgb(0 0 0 / 10%), 0 4px 4px rgb(0 0 0 / 10%), 0 8px 8px rgb(0 0 0 / 10%), 0 16px 16px rgb(0 0 0 / 10%);
}

.modal-header {
  background: var(--color-4);
  color: white;
  font-size: 22px;
  font-weight: 300;
  font-family: var(--font-3);
}

/* formulario */
.boton-enviar {
    background-color: var(--color-2);
    padding: 10px 20px;
    border: none;
    font-size: 18px;
    font-weight: 400;
    font-family: var(--font-1);
}

.form-control:focus {
  border: solid 1px #FFFFFF;
  color: #FFFFFF;
  background-color: transparent;
  outline: 0;
  box-shadow:none;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.1rem 1.5rem;
  font-size: 1.2rem;
  font-weight: 400;
  font-family: var(--font-1);
  line-height: 2.5;
  color: var(--bs-body-color);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /*background-color: var(--bs-body-bg);*/
  background-clip: padding-box;
  /*border: var(--bs-border-width) solid var(--bs-border-color);*/
  border-radius: var(--bs-border-radius);
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  background-color: transparent;
  border: solid 1px #FFFFFF;
  color: #FFFFFF;
}

.form-control::placeholder{
  font-family: var(--font-1);
  color: #F8F8F8;
}
.form-control::-moz-placeholder{
  font-family: var(--font-1);
  color: #F8F8F8;
}
.form-control::-webkit-input-placeholder{
  font-family: var(--font-1);
  color: #F8F8F8;
}

.modal .texto{
  color: #FFFFFF;
  font-family: var(--font-1);
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0;
}

/* swal */
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm){
  background-color: var(--color-4)!important;
}
  
/* Breackpoints */
@media(max-width: 767px){
  .backdrop-white{
    background: rgba(203, 203, 203, 0.5)
  }
  .section-6-home .backdrop-white{
    background: rgba(203, 203, 203, 0.2)
  }
  header nav img {
    max-width: 100px;
  }
  .container-banderas{
    right: unset; 
    left: 20px;
  }
  .titulo-swiper{
    font-size: 24px;
  }
  .section-2-home,
  .section-ubicacion-home,
  .section-3-home,
  .section-4-home,
  .section-6-home,
  .section-8-home{
    padding: 45px 0;
  }
  .titulo-secundario{
    font-size: 20px;
  }
  .section-2-home .image-001{
    padding-right: 0;
  }
  .section-2-home .image-002 {
    padding-left: 0;
  }
  .section-2-home,
  .section-3-home{
    background-size: cover
  }
  .card-room-suites::before{
    background-color: rgba(0, 0, 0, 0.3);
  }
  .card-room-suites .background-card {
    transform: scale(1.1);
  }
  .card-room-suites .contenedor-info::before{
    opacity: 1;
  }
  .card-room-suites hr {
    width: 100%;
    transition: width 1s ease-in-out;
    transition-delay: 0.1s;
  }
  .card-room-suites .contenido-escondido{
    max-height: 100px;
  }
  .card-servicio .titulo-secundario{
    font-size: 20px;
  }
  .section-8-home{
    padding-top: 0!important;
    padding-bottom: 0!important;
  }
  .section-8-home .content-info h4{
    font-size: 20px!important;
  }
  .section-8-home .bg-hormigon{
    background-size: cover;
  }
  .footer-top{
    padding: 45px 0px 24px!important;
  }
  .section-footer .columna-1{
    display: none;
  }
  .section-footer .columna-2{
    text-align: center;
  }
  .section-footer .columna-3{
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .listado-sitios-mapa{
    display: none;
  }
  #svg-mapa{
    display: none;
  }
  .ver-mapa-sitio{
    display: flex;
  }
  .mySwiper img{
    position: relative;
    z-index: 2;
  }
  .sw-slide:after{
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.3));
  }
}