:root {
      --blue-light: #cfefff;
      --blue-main: #87ceeb;
      --blue-dark: #4fa3d1;
      --cream: #fff5e6;
    }

    body {
      margin: 0;
      font-family: Arial, sans-serif;
      background: var(--blue-light);
      color: #333;
    }

    section {
      padding: 40px 20px;
      text-align: center;
    }

    /* HERO */
    .hero {
      background: var(--blue-main);
      color: white;
      padding: 60px 20px;
    }

    .hero h1 {
      font-size: 3em;
      margin-bottom: 10px;
    }

    .hero p {
      font-size: 1.2em;
    }

    /* VALES */
    .vouchers {
      display: flex;
      flex-direction: column;
      gap: 3rem;
      align-items: center;
      margin-bottom: 0.2rem;
    }

    .vouchers p {
      padding:0rem 1rem;
    }

    .voucher-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
    }

    .card {
      width: 260px;
      height: 160px;
      perspective: 1000px;
      margin-bottom: 0.2rem;
    }

    .card-inner {
      width: 100%;
      height: 100%;
      position: relative;
      transform-style: preserve-3d;
      transition: transform 0.6s;
    }

    .card.flipped .card-inner {
      transform: rotateY(180deg);
    }

    .card-face {
      position: absolute;
      width: 100%;
      height: 100%;
      backface-visibility: hidden;
      border-radius: 15px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
    }

    .card-front {
      background: var(--cream);
      border: 2px dashed var(--blue-dark);
    }

    .card-back {
      background: white;
      transform: rotateY(180deg);
      border: 2px solid var(--blue-dark);
    }

    .card-extra {
      display: none;
      transition: all 0.4s ease;
      margin-top: 0.1rem;
      margin-bottom: 0.2rem;
    }

/* Mostrar cuando la card está activa */
    .card.flipped + .card-extra {
      // max-height: 300px;
      display: block;
    }

    .map-container {
      width: 96%;
    //  max-width: 500px;   /* opcional para no estirarse demasiado */
      margin: 0 auto;     /* centrado */
    }

    .map-container iframe {
      width: 100%;
      height: 200px;
      border: 0;
      border-radius: 10px;
      display: block;
    }

    .card-extra ul {
      list-style: none;        /* quita bullets */
      padding: 15px;
      margin: 0;
      background: var(--blue-main); /* azul secundario */
      border-radius: 12px;
      text-align: center;
    }

    .card-extra ul li {
      font-weight: bold;
      color: #fff;
      margin: 8px 0;
      padding: 8px;
      background: rgba(255, 255, 255, 0.3); /* ligero contraste */
      border-radius: 8px;
    }

    .carousel-container {
      width: 96%;
      max-width: 500px;
      margin: 0 auto;
      overflow: hidden;
      border-radius: 12px;
    }

    .carousel {
      display: flex;
      transition: transform 0.5s ease-in-out;
    }

    .carousel img {
      width: 100%;
      flex-shrink: 0;
      object-fit: contain; /* importante para vertical/horizontal */
      max-height: 300px;
      background:var(--blue-main);
    }

    .icon {
      font-size: 2em;
      margin-top: 10px;
    }

    /* FOOTER */
    footer {
      background: var(--blue-dark);
      color: white;
      padding: 20px;
      font-size: 0.9em;
	text-align:center;
    }
