 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
     background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
     min-height: 100vh;
     display: flex;
     justify-content: center;
     align-items: center;
     padding: 20px;
 }

 .titulo {
     font-size: 30px;
     color: white;
     font-weight: bold;
     margin-bottom: 20px;
     text-align: justify;
     text-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
 }

 .container {
     width: 100%;
     max-width: 900px;
 }

 .slider-wrapper {
     position: relative;
     background: white;
     border-radius: 15px;
     box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
     overflow: hidden;
 }

 .slider {
     display: flex;
     transition: transform 0.5s ease-in-out;
     width: 100%;
 }

 .slide {
     min-width: 100%;
     display: flex;
     justify-content: center;
     align-items: center;
     padding: 80px 40px;
     text-align: center;
     background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
     min-height: 400px;
 }

 .slide.active {
     display: flex;
 }

 .slide p {
     font-size: 28px;
     color: #333;
     font-weight: 500;
     line-height: 1.6;
     letter-spacing: 0.5px;
 }

 .slide.slide-1 {
     background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 }

 .slide.slide-1 p {
     color: white;
     font-size: 32px;
 }

 .slide.slide-2 {
     background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
 }

 .slide.slide-2 p {
     color: white;
     font-size: 30px;
 }

 .slide.slide-3 {
     background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
 }

 .slide.slide-3 p {
     color: white;
     font-size: 30px;
 }

 .slide.slide-4 {
     background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
 }

 .slide.slide-4 p {
     color: white;
     font-size: 30px;
 }

 .slide.slide-5 {
     background: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
 }

 .slide.slide-5 p {
     color: white;
     font-size: 30px;
 }

 .controls {
     display: flex;
     justify-content: space-between;
     align-items: center;
     padding: 30px;
     background: white;
     gap: 20px;
 }

 button {
     background: #667eea;
     color: white;
     border: none;
     padding: 12px 25px;
     border-radius: 50px;
     cursor: pointer;
     font-size: 16px;
     font-weight: bold;
     transition: all 0.3s ease;
 }

 button:hover {
     background: #764ba2;
     transform: scale(1.05);
 }

 button:active {
     transform: scale(0.95);
 }

 .indicators {
     display: flex;
     gap: 8px;
     flex-wrap: wrap;
     justify-content: center;
     flex: 1;
 }

 .dot {
     width: 12px;
     height: 12px;
     border-radius: 50%;
     background: #ddd;
     cursor: pointer;
     transition: all 0.3s ease;
     border: 2px solid transparent;
 }

 .dot.active {
     background: #667eea;
     width: 30px;
     border-radius: 6px;
 }

 .dot:hover {
     background: #764ba2;
 }

 .slide-counter {
     text-align: center;
     color: #667eea;
     font-weight: bold;
     min-width: 80px;
     font-size: 14px;
 }

 @media (max-width: 768px) {
     .slide p {
         font-size: 20px;
     }

     .slide.slide-1 p {
         font-size: 24px;
     }

     .slide {
         padding: 50px 30px;
         min-height: 300px;
     }

     controls {
         flex-direction: column;
     }

     button {
         padding: 10px 20px;
         font-size: 14px;
     }
 }

 @media (max-width: 480px) {
     .slide p {
         font-size: 18px;
     }

     .slide {
         padding: 40px 20px;
         min-height: 250px;
     }

     .indicators {
         gap: 4px;
     }

     .dot {
         width: 8px;
         height: 8px;
     }

     .dot.active {
         width: 20px;
     }

     button {
         padding: 8px 15px;
         font-size: 12px;
     }
 }

 .responsive {
     width: 100%;
     height: auto;
 }

 .center {
     display: block;
     margin-left: auto;
     margin-right: auto;
     width: 50%;
 }

 .footer {
     text-align: center;
     padding: 10px;
     border-radius: 100%;
     background: linear-gradient(135deg, #667eea 0%, #764ba2 90%);
     color: #f0eded;
     font-size: 14px;
 }

 .video-responsivo {
     background-color: #333;
     width: 100%;
     /* Ocupa todo el ancho del contenedor */
     height: auto;
     /* Mantiene la proporción */
     max-width: 100%;
     /* Evita que se agrande más allá del contenedor */

 }
 .video-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
  height: 0;
  overflow: hidden;
}

.responsive-iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}