.video-inicio {
  background: #f1f2f7;
  width: 100%;
}

.video-reg {
  max-width: 588px;
  max-height: 330px;
  width: 100%;
  height: 100%;
}

.carrusel-title {
  color: #03a591;
  font-size: 28px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  margin-bottom: 4px;
}

.carrusel-content {
  color: #858585;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.carrusel-button {
  height: 30px;
  padding: 10px 25px;
  flex-shrink: 0;
  border-radius: 20px;
  background: #f07f1e;
}

.carrusel-button-text {
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.inforBar-background {
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #0699d6 0%, #01558c 51%, #03547e 100%);
}

.inforBar-background-gdl {
  background: linear-gradient(90deg, #00A490 0%, #1DB9FA 100%);
}

.info-text-up {
  color: #fff;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 900;
  line-height: 56px;
}

.info-text-up.sedes {
  font-size: 36px;
}

.info-text-down.gdl-cmx {
  font-size: 30px;
}

.info-text-down {
  color: #fff;
  text-align: center;
  font-size: 30px;
  font-style: normal;
  font-weight: 300;
  line-height: 30px;
}

.grid-one {
  grid-template-columns: 1fr 1fr 1fr;
}

.monument-background {
  background: linear-gradient(0deg,
      #01558c 0%,
      #01558c 7.5%,
      #0699d6 36.5%,
      rgba(255, 255, 255, 0) 94.19%);
  width: 100%;
}

.monument-background-gdl {
  background: linear-gradient(0deg, #00A490 -21.05%, #1DB9FA 39.14%, rgba(29, 185, 250, 0.00) 78.95%);
  width: 100%;
}

.home-info-title {
  color: #fff;
  text-align: center;
  font-size: 28px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  margin-bottom: 7px;
}

.home-info-content {
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.info-monument-button {
  border-radius: 20px;
  background: #f07f1e;
  width: 290px;
  height: 30px;
  flex-shrink: 0;
}

.info-monument-button-text {
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.textweb-container {
  max-width: 1280px;
  width: 100%;
}

.textweb-video {
  width: 100%;
  height: 100%;
  max-width: 549px;
}

.textweb-text {
  width: 100%;
  height: 100%;
  max-width: 500px;
}

.textweb-text-title {
  color: #03a591;
  font-family: AvenirBold, sans-serif;
  text-align: center;
  font-size: 28px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  margin-bottom: 7px;
}

.textweb-text-content {
  color: #01558c;
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  padding-bottom: 12px;
}

.textweb-button {
  width: 152px;
  height: 30px;
  flex-shrink: 0;
  border-radius: 20px;
  background: #f07f1e;
}

.textweb-button-text {
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.quieroser-container {
  max-width: 1280px;
  width: 100%;
  padding-top: 50px;
}

.quieroser-text1 {
  color: #03547e;
  text-align: center;
  font-size: 32px;
  font-style: normal;
  font-weight: 500;
  line-height: 118.33%;
}

.quieroser-text2 {
  color: #03547e;
  font-family: AvenirBold, sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 900;
  line-height: 118.33%;
}

.quieroser-hover {
  transition: all 0.2s ease-in-out;
}

.quieroser-hover:hover {
  transform: scale(1.1);
  filter: drop-shadow(0 0 0.75rem rgba(86, 86, 86, 0.5));
}

@media (max-width: 1440px) {
  .info-text-up {
    font-size: 46px;
    line-height: 54px;
  }

  .info-text-down {
    font-size: 30px;
    line-height: 30px;
  }
}

@media (max-width: 770px) {
  .info-text-up {
    font-size: 28px;
    line-height: 28px;
  }

  .info-text-up.sedes {
    font-size: 24px;
  }

  .info-text-down.gdl-cmx {
    font-size: 18px;
  }

  .info-text-down {
    font-size: 18px;
    line-height: 18px;
  }

  .grid-one {
    grid-template-columns: 1fr 1fr;
  }

  .monument-background {
    background: linear-gradient(180deg,
        #01558c 0%,
        #01558c 7.5%,
        #0699d6 36.5%,
        rgba(255, 255, 255, 0) 94.19%);
  }

  .quieroser-text1,
  .quieroser-text2 {
    font-size: 24px;
  }
}

@media (min-width: 770px) and (max-width: 992px) {
  .home-info-title {
    margin-top: 50px;
  }
}

@media (max-width: 480px) {
  .carrusel-content {
    margin: 0 25px;
    text-align: center;
  }

  .carrusel-title {
    width: 90%;
    text-align: center;
  }

  .info-text-up {
    font-size: 54px;
    line-height: 54px;
  }

  .info-text-up.sedes {
    font-size: 36px;
    line-height: 36px;
  }

  .info-text-down.gdl-cmx {
    font-size: 30px;
    line-height: 30px;
  }

  .info-text-down {
    font-size: 30px;
    line-height: 30px;
  }

  .grid-one {
    grid-template-columns: 1fr;
  }

  .textweb-text-title {
    max-width: 347px;
  }

  .textweb-text-content {
    max-width: 423px;
  }

  .quieroser-text1,
  .quieroser-text2 {
    font-size: 32px;
  }
}

/*Inicio de propiedades cards*/

:root {
  --duration: 300ms;
  --timing-fn: ease;
  --turquoise: #1abc9c;
  --wet-asphalt: #34495e;
  --midnight-blue: #2c3e50;
  --clouds: #ecf0f1;
}

.cards {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Estilos para <li> y .info */
section.cards #listContainer li {
  perspective: 562px;
  position: relative;
  /* Añadimos esto para posicionar hijos relativos */
}

section.cards #listContainer li .info {
  transform: rotate3d(1, 0, 0, 90deg);
  width: 100%;
  height: 100%;
  padding: 20px;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 4px;
  pointer-events: none;
  /* background-color: rgba(26, 188, 156, 1); */
  background: linear-gradient(90deg, #03547e 0%, #01558c 51%, #0699d6 100%);
  /* Utilizamos rgba para la transparencia */
}

/* Animaciones de entrada y salida */
.in-top .info {
  transform-origin: 50% 0%;
  animation: in-top var(--duration) var(--timing-fn) 0ms 1 forwards;
}

.in-right .info {
  transform-origin: 100% 0%;
  animation: in-right var(--duration) var(--timing-fn) 0ms 1 forwards;
}

.in-bottom .info {
  transform-origin: 50% 100%;
  animation: in-bottom var(--duration) var(--timing-fn) 0ms 1 forwards;
}

.in-left .info {
  transform-origin: 0% 0%;
  animation: in-left var(--duration) var(--timing-fn) 0ms 1 forwards;
}

.out-top .info {
  transform-origin: 50% 0%;
  animation: out-top var(--duration) var(--timing-fn) 0ms 1 forwards;
}

.out-right .info {
  transform-origin: 100% 50%;
  animation: out-right var(--duration) var(--timing-fn) 0ms 1 forwards;
}

.out-bottom .info {
  transform-origin: 50% 100%;
  animation: out-bottom var(--duration) var(--timing-fn) 0ms 1 forwards;
}

.out-left .info {
  transform-origin: 0% 0%;
  animation: out-left var(--duration) var(--timing-fn) 0ms 1 forwards;
}

/* Keyframes para animaciones */
@keyframes in-top {
  from {
    transform: rotate3d(-1, 0, 0, 90deg);
  }

  to {
    transform: rotate3d(0, 0, 0, 0deg);
  }
}

@keyframes in-right {
  from {
    transform: rotate3d(0, -1, 0, 90deg);
  }

  to {
    transform: rotate3d(0, 0, 0, 0deg);
  }
}

@keyframes in-bottom {
  from {
    transform: rotate3d(1, 0, 0, 90deg);
  }

  to {
    transform: rotate3d(0, 0, 0, 0deg);
  }
}

@keyframes in-left {
  from {
    transform: rotate3d(0, 1, 0, 90deg);
  }

  to {
    transform: rotate3d(0, 0, 0, 0deg);
  }
}

@keyframes out-top {
  from {
    transform: rotate3d(0, 0, 0, 0deg);
  }

  to {
    transform: rotate3d(-1, 0, 0, 104deg);
  }
}

@keyframes out-right {
  from {
    transform: rotate3d(0, 0, 0, 0deg);
  }

  to {
    transform: rotate3d(0, -1, 0, 104deg);
  }
}

@keyframes out-bottom {
  from {
    transform: rotate3d(0, 0, 0, 0deg);
  }

  to {
    transform: rotate3d(1, 0, 0, 104deg);
  }
}

@keyframes out-left {
  from {
    transform: rotate3d(0, 0, 0, 0deg);
  }

  to {
    transform: rotate3d(0, 1, 0, 104deg);
  }
}

/* Estilos adicionales */
section.cards #listContainer {
  padding: 0;
  margin: 0 0 50px;
  list-style: none;
  /* Eliminar los puntos de lista */
}

section.cards #listContainer li {
  float: left;
  width: 281px;
  height: 281px;
  margin: 5px;
  padding: 0;
  border-radius: 4px;
  background-color: var(--clouds);
  color: rgba(52, 73, 94, 0.6);
  text-align: center;
  font-size: 50px;
  line-height: 200px;
  position: relative;
  overflow: hidden;

  img {
    width: auto;
    /* Hace que la imagen ocupe todo el ancho de la tarjeta */
    height: 100%;
    /* Permite que la altura de la imagen se ajuste automáticamente */
    object-fit: cover;
  }
}

section.cards #listContainer li h2 {
  margin: -27% 0 -33% 0;
  font-size: 26px;
  color: rgba(255, 255, 255, 0.9);
}

section.cards #listContainer li p {
  font-size: 18px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.8);
}

.container_cards {
  max-width: 281px !important;
}

@media (min-width: 768px) {
  .container_cards {
    max-width: 617px !important;
  }
}

@media (min-width: 992px) {
  .container_cards {
    max-width: 909px !important;
  }
}
