body{margin:0;font-family:Inter,Arial;background:#0a0a0f;color:white;overflow-x:hidden}


/* HEADER ORIGINAL */
.header{position:fixed;top:0;width:100%;padding:18px 40px;display:flex;justify-content:space-between;align-items:center;background:rgba(0,0,0,0.45);backdrop-filter:blur(6px);z-index:1000}
.header nav a{color:#ff88d8;margin-left:20px;text-decoration:none;font-weight:600;transition:.2s}
.header nav a:hover{text-shadow:0 0 6px #ff88d8;color:white}
.logo{height:70px;filter:drop-shadow(0 0 12px #ff4400)}


/* HERO ORIGINAL + LOGO NUEVO DE FONDO */
.hero{height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(circle,#3d001a,#0a0a0f);position:relative;padding-top:80px}

.hero-logo {
  position: absolute;
  inset: 0;
  background: url('../img/logo-bg.png') center/contain no-repeat;
  opacity: 0.12;
  filter: blur(4px);
  pointer-events: none; /* ← clave: deja pasar clics al botón */
  z-index: 1; /* por debajo del texto y botones */
}




.hero h1{font-size:3rem;margin:0;text-shadow:0 0 12px #ff006a}
.hero p{max-width:600px;margin-top:12px;color:#ffb3e6;font-size:1.2rem}
.btn{margin-top:26px;padding:14px 26px;background:#ff006a;border-radius:10px;text-decoration:none;color:white;font-weight:600;box-shadow:0 0 12px #ff006a;transition:.2s;border:none;cursor:pointer}
.btn:hover{box-shadow:0 0 20px #ff3ca8}
.btn.secondary{background:transparent;border:2px solid #ff88d8}


/* CARDS ORIGINALES + LOGO ASOMANDO */
.section{padding:140px 20px 60px;max-width:1100px;margin:auto}
.card{background:rgba(255,255,255,0.06);padding:26px;border-radius:16px;margin:40px 0;position:relative;overflow:hidden}
.card h2{text-shadow:0 0 6px #ff5fb3;margin-top:0}
.asomando{position:absolute;top:10px;width:120px;opacity:0.4;filter:drop-shadow(0 0 10px #ff4488)}
.asoma-left .asomando{left:-30px}
.asoma-right .asomando{right:-30px}


/* INTRO OVERLAY */
#intro-overlay {
  position: fixed;
  inset: 0;
  background: #000;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  transition: opacity 0.6s ease;
  pointer-events: auto;
}

#intro-overlay.hidden {
  opacity: 0;
  pointer-events: none;
}

#intro-logo {
  max-width: 320px;
  opacity: 0;
  transform: scale(0.8);
  transition: all 0.6s ease;
}


/* PÉTALOS MÁS GRANDES */
.sakura{position:fixed;top:-20px;background:url('../img/sakura.png') center/contain no-repeat;pointer-events:none;z-index:10}
footer {
    width: 100%;
    text-align: center;
    padding: 20px 0;
    color: #fff;
    font-size: 14px;
    opacity: 0.8;
    position: relative;
    bottom: 0;
    left: 0;
}
footer {
width: 100%;
text-align: center;
padding: 25px 0;
color: #fff;
font-size: 14px;
opacity: 0.85;
margin-top: 60px;
}


.social-links {
display: flex;
justify-content: center;
gap: 26px;
margin-bottom: 14px;
}


.social-links img {
width: 30px;
height: 30px;
opacity: 0.8;
transition: 0.2s ease;
}


.social-links img:hover {
opacity: 1;
transform: scale(1.12);
}
```


```css
.social-links {
margin-top: 30px;
display: flex;
gap: 20px;
justify-content: center;
align-items: center;
}


.social-links img {
width: 34px;
height: 34px;
opacity: 0.85;
transition: 0.2s;
}


.social-links img:hover {
opacity: 1;
transform: scale(1.1);
}
header nav {
margin-right: 80px;
}


/*Formulario::*/
.contact-section {
padding: 110px 0;
text-align: center;
}


.contact-form {
max-width: 500px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: 20px;
}


.field-group {
display: flex;
flex-direction: column;
text-align: left;
}


.field-group label {
font-size: 15px;
margin-bottom: 6px;
opacity: 0.9;
}


.contact-form input,
.contact-form textarea {
padding: 12px;
border-radius: 10px;
border: none;
background: rgba(255,255,255,0.1);
color: white;
font-size: 15px;
}


.contact-form input:focus,
.contact-form textarea:focus {
outline: 2px solid #ff4b8b;
background: rgba(255,255,255,0.15);
}
body{
margin:0;
background:#000;
font-family:Arial;
color:#fff;
overflow-x:hidden;
}


.fade{
animation:fadeIn .8s ease;
}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}


/* HEADER */
.header{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px;
}



/* HERO */
.hero{
text-align:center;
padding:100px 20px;
}
.btn{
background:#ff3e8a;
padding:12px 26px;
border-radius:10px;
text-decoration:none;
color:white;


/* overlay */
#intro-overlay {
  position: fixed;
  inset: 0;
  background: #000;
  z-index: 9999;
  display:flex;
  align-items:center;
  justify-content:center;
  transition: opacity .6s ease;
  pointer-events: auto;
}
#intro-overlay.hidden { opacity: 0; pointer-events: none; }

/* black fade */
.black-fade {
  position: fixed; top:0; left:0; width:100%; height:100%;
  background: #000; opacity:0; transition: opacity .6s ease;
  z-index: 9998; pointer-events:none;
}

/* glow */
.glow {
  position: fixed; inset:0; pointer-events:none;
  background: radial-gradient(circle, rgba(255,40,120,0.12) 0, rgba(0,0,0,0) 55%);
  mix-blend-mode: screen; animation: pulseGlow 1.6s ease-in-out;
  z-index: 9997;
}
@keyframes pulseGlow{0%{opacity:0}40%{opacity:1}100%{opacity:0}}

/* glitch-line (ya usado por glitchEffect) */
.glitch-line{
  position:fixed; left:0; right:0; height:2px;
  background: linear-gradient(90deg,transparent,#ff7ab6,transparent);
  mix-blend-mode: screen; opacity:0.9; z-index:9999;
}







/* --- Modal de video oculto --- */
.modal {
  display: none;
  position: fixed;
  z-index: 2000;
  inset: 0;
  background: rgba(0,0,0,0.85);
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(6px);
}

.modal-content {
  position: relative;
  max-width: 80%;
  max-height: 80%;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 0 25px rgba(255, 0, 100, 0.5);
}

.modal-content video {
  width: 100%;
  height: auto;
  display: block;
}

.close-btn {
  position: absolute;
  top: 10px;
  right: 20px;
  font-size: 30px;
  color: #fff;
  cursor: pointer;
  transition: 0.2s;
}

.close-btn:hover {
  color: #ff6cb2;
  transform: scale(1.1);
}


















/*===========================
=         MÓVILES           =
===========================*/
@media (max-width: 768px) {

  /* HEADER */
  .header {
    padding: 14px 24px;
  }

  .logo {
    height: 55px;
  }

  .header nav {
    margin-right: 0;
  }

  .header nav a {
    margin-left: 12px;
    font-size: 14px;
  }

  /* HERO */
  .hero h1 {
    font-size: 2.2rem;
  }

  .hero p {
    font-size: 1rem;
    width: 90%;
  }

  .btn {
    width: 80%;
    font-size: 15px;
  }

  /* FORMULARIOS */
  .form-section {
    padding-top: 140px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .contact-form {
    width: 100%;
    max-width: 90%;
  }

  /* TARJETAS EN PROGRAMA */
  .card {
    padding: 20px;
  }

  .card h2 {
    font-size: 20px;
  }

  /* VIDEO MODAL */
  .modal-content {
    max-width: 95%;
    max-height: 80%;
  }
}

/*===========================
=      MÓVILES PEQUEÑOS     =
===========================*/
@media (max-width: 480px) {

  .hero h1 {
    font-size: 1.9rem;
  }

  .hero p {
    font-size: 0.9rem;
  }

  .btn {
    width: 90%;
    font-size: 14px;
  }

  nav a {
    font-size: 13px !important;
  }

  .logo {
    height: 48px;
  }

  footer {
    font-size: 13px;
  }
}





/* ======== CARA ASOMÁNDOSE: versión mejorada con brillo ======== */
.asomando {
  position: absolute;
  top: 20px;
  width: 170px;
  opacity: 0.16;
  filter: drop-shadow(0 0 18px #ff3c8a90);
  animation: glowPulse 3.2s ease-in-out infinite;
  pointer-events: none;
  transition: opacity .3s ease, filter .3s ease;
}


.asoma-left .asomando { left: -40px; }
.asoma-right .asomando { right: -40px; }


@keyframes glowPulse {
  0% { filter: drop-shadow(0 0 14px #ff3c8a70); opacity: 0.14; }
  50% { filter: drop-shadow(0 0 32px #ff5ba8cc); opacity: 0.20; }
  100% { filter: drop-shadow(0 0 14px #ff3c8a70); opacity: 0.14; }
}

@media (max-width: 768px) {
  .asomando {
    width: 120px;
    top: 10px;
    opacity: 0.18;
  }
}















<style>
.program-content {
  max-width: 900px;
  margin: 0 auto;
  padding: 20px 25px;
  line-height: 1.55;
  font-size: 17px;
  color: #f3f3f3;
}

.program-content h2,
.program-content h3,
.program-content h4 {
  margin-top: 32px;
  color: #ff7abb;
}

.program-content ul {
  margin-left: 20px;
}

.program-content p {
  margin: 12px 0;
}
</style>
