*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Poppins;
}

body{
background:#0b0b0f;
color:white;
}

/* SEPARACION DE SECCIONES */

.section-dark{
background:#05070c;
}

.section-light{
background:#07090f;
}

section{
border-bottom:1px solid rgba(0,255,195,0.08);
}

/* NAVBAR */

.navbar{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 10%;
}

.logo{
font-size:24px;
font-weight:700;
color:#00ffc3;
}

.menu{
display:flex;
gap:30px;
list-style:none;
}

.menu li{
cursor:pointer;
transition:.3s;
}

.menu li:hover{
color:#00ffc3;
}

.btn{
background:#00ffc3;
border:none;
padding:10px 20px;
border-radius:20px;
cursor:pointer;
}

/* HERO VIDEO */

.hero{
position:relative;
height:100vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
overflow:hidden;
}

.video-bg{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
z-index:-2;
}

.overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.6);
z-index:-1;
}

.hero-content{
max-width:800px;
}

.logo-hero{
width:600px;
margin-bottom:30px;
}

.hero h1{
font-size:55px;
margin-bottom:20px;
}

.hero span{
color:#00ffc3;
}

.hero-buttons{
display:flex;
gap:20px;
justify-content:center;
margin-top:20px;
}

.btn-primary{
background:#00ffc3;
border:none;
padding:12px 25px;
border-radius:25px;
}

.btn-outline{
border:2px solid #00ffc3;
background:none;
color:white;
padding:12px 25px;
border-radius:25px;
}

/* TITULOS */

.section-title{
text-align:center;
font-size:40px;
margin-bottom:60px;
}

/* ARTISTAS */

.artists{
padding:40px 0;
}

/* CARRUSEL */

.carousel{
overflow:hidden;
width:100%;
}

.carousel-track{
display:flex;
gap:25px;
width:max-content;
animation:scroll 20s linear infinite;
}

/* TARJETAS */

.artist-card{
min-width:220px;
background:#0f1320;
border-radius:20px;
padding:20px;
text-align:center;
position:relative;
border:2px solid transparent;
background-clip:padding-box;

box-shadow:
0 0 10px rgba(0,255,195,0.4),
0 0 20px rgba(255,45,209,0.3);
}

.artist-card img{
width:100%;
height:200px;
object-fit:cover;
border-radius:15px;
margin-bottom:15px;
}

.artist-card h3{
margin-bottom:5px;
}

.artist-card p{
color:#aaa;
margin-bottom:15px;
}

.artist-card button{
background:#00ffc3;
border:none;
padding:10px 18px;
border-radius:20px;
cursor:pointer;
}

/* BORDE NEON */

.artist-card::before{
content:"";
position:absolute;
inset:-2px;
border-radius:20px;
background:linear-gradient(
45deg,
#00ffc3,
#ff2dd1,
#00ffc3
);
z-index:-1;
filter:blur(6px);
}

/* ANIMACION CARRUSEL */

@keyframes scroll{
0%{
transform:translateX(0);
}
100%{
transform:translateX(-50%);
}
}

/* GALERIA */

.gallery{
padding:40px 0;
}

/* ABOUT BAND */

.about-band{
padding:60px 10% 120px; /* MAS ESPACIO ARRIBA */
display:flex;
align-items:center;
justify-content:center;
}

/* CONTENEDOR */

.about-container{
display:flex;
align-items:center;
justify-content:space-between;
gap:100px;

max-width:1200px;
width:100%;
margin:auto;
}

/* IMAGENES */

.about-images{
display:flex;
gap:30px;
align-items:center;
}

.genre-img{
width:280px;
height:360px;
object-fit:cover;
border-radius:20px;

/* EFECTO MÁS PRO */
box-shadow:
0 0 15px rgba(0,255,195,0.5),
0 0 30px rgba(255,45,209,0.3);
}

/* TEXTO */

.about-text{
max-width:520px;
}

.about-text h2{
font-size:48px;
margin-bottom:25px;
color:#00ffc3;
}

.about-text p{
margin-bottom:30px;
color:#ccc;
line-height:1.8;
font-size:17px;
}

/* BOTON */

.btn-solicitar{
background:#00ffc3;
border:none;
padding:15px 40px;
border-radius:30px;
font-size:16px;
cursor:pointer;
transition:0.3s;
}

.btn-solicitar:hover{
background:#00d9a6;
}

/* BIOGRAFIA */

.bio{
padding:120px 10%;
text-align:left;
}

.bio-container{
display:flex;
align-items:center;
justify-content:space-between;
gap:80px;
max-width:1200px;
margin:auto;
flex-wrap:wrap; /* 🔥 evita que se rompa */
}

.bio-text h2{
font-size:45px;
color:#00ffc3;
margin-bottom:25px;
}

.bio-text p{
color:#ccc;
line-height:1.8;
font-size:17px;
margin-bottom:20px;
}

/* BOTON */

.btn-bio{
margin-top:20px;
background:#00ffc3;
border:none;
padding:15px 35px;
border-radius:30px;
font-size:16px;
cursor:pointer;
transition:0.3s;
}

.btn-bio:hover{
background:#00d9a6;
}

.bio-text{
flex:2;
max-width:600px;
}

.member-card{
width:160px;
background:#0f1320;
border-radius:20px;
padding:20px 15px;
text-align:center;
position:relative;
overflow:hidden; /* 🔥 importante */

transition:0.35s ease; /* 🔥 animación suave */

box-shadow:
0 0 10px rgba(0,255,195,0.4),
0 0 20px rgba(255,45,209,0.3);
}

/* EFECTO HOVER PRO */
.member-card:hover{
transform:translateY(-10px) scale(1.05);
box-shadow:
0 0 20px rgba(0,255,195,0.7),
0 0 40px rgba(255,45,209,0.6);
}

/* BORDE NEÓN */
.member-card::before{
content:"";
position:absolute;
inset:-2px;
border-radius:20px;
background:linear-gradient(45deg,#00ffc3,#ff2dd1,#00ffc3);
z-index:-1;
filter:blur(8px); /* 🔥 más glow */
opacity:0.7;
}

.member-card img{
width:100%;
height: 270px;
object-fit:cover;
border-radius:12px;
margin-bottom:10px;
}

.member-card h4{
margin:5px 0;
font-size:15px;
}

.member-card span{
font-size:13px;
color:#aaa;
}

.members{
flex:1;

display:grid;
grid-template-columns:repeat(2, 160px); /* 2 columnas */
grid-template-rows:auto auto; /* 2 filas */

gap:70px;

justify-content:flex-end; /* a la derecha */
}
/* FORMATOS */

.formatos{
padding:120px 10%;
text-align:center;
}

.formatos-container{
display:flex;
justify-content:center;
gap:40px;
flex-wrap:wrap;
}

/* TARJETAS */

.formato-card{
width:300px;
padding:40px 25px;
border-radius:20px;
background:#0f1320;
text-align:center;
position:relative;

box-shadow:
0 0 10px rgba(0,255,195,0.2),
0 0 30px rgba(255,45,209,0.2);
}

/* TITULOS */

.formato-card h3{
font-size:28px;
margin-bottom:10px;
}

.formato-card .sub{
color:#aaa;
margin-bottom:20px;
}

/* LISTA */

.formato-card ul{
list-style:none;
text-align:left;
margin-bottom:30px;
}

.formato-card ul li{
margin-bottom:10px;
color:#ccc;
font-size:15px;
}

/* BOTON */

.formato-card button{
background:#00ffc3;
border:none;
padding:12px 25px;
border-radius:25px;
cursor:pointer;
transition:0.3s;
}

.formato-card button:hover{
background:#00d9a6;
}

/* COLORES POR PLAN */

.plata h3{
color:#c0c0c0;
}

.oro h3{
color:#ffd700;
}

.premium h3{
color:#c77dff;
}

/* CONTENEDOR GENERAL */

.videos-wrapper{
position:relative;
display:flex;
align-items:center;
justify-content:center;
margin-top:40px;
}

/* CARRUSEL */

.videos-carousel{
overflow:hidden;
width:80%;
}

.videos-track{
display:flex;
gap:30px;
transition:transform 0.5s ease;
}

/* TARJETAS */
.video-card{
min-width:320px; /* 🔥 un poco más flexible */
height:auto; /* 🔥 clave */
aspect-ratio:16/9; /* 🔥 horizontal por defecto */

border-radius:20px;
overflow:hidden;

box-shadow:
0 0 15px rgba(0,255,195,0.4),
0 0 30px rgba(255,45,209,0.3);
}

.video-card video{
width:100%;
height:100%;
object-fit:cover;
}

.video-card.vertical{
aspect-ratio:9/16; /* 🔥 formato vertical */
}
/* BOTONES */

.btn-left,
.btn-right{
position:absolute;
top:50%;
transform:translateY(-50%);
background:#00ffc3;
border:none;
width:40px;
height:40px;
border-radius:50%;
cursor:pointer;
font-size:20px;
}

.btn-left{
left:5%;
}

.btn-right{
right:5%;
}

/* CONTACTO */

.contact{
padding:120px 10%;
text-align:center;
}

.contact-sub{
color:#aaa;
margin-bottom:60px;
}

/* CONTENEDOR */

.contact-container{
display:flex;
justify-content:center;
gap:60px;
flex-wrap:wrap;
}

/* INFO */

.contact-info{
max-width:400px;
text-align:left;
}

.contact-info h3{
font-size:28px;
margin-bottom:20px;
}

.contact-info p{
margin-bottom:15px;
color:#ccc;
}

/* BOTON WHATSAPP */

.btn-whatsapp{
display:inline-block;
margin-top:20px;
background:#00ffc3;
color:black;
padding:15px 25px;
border-radius:30px;
text-decoration:none;
font-weight:600;
}

/* FORMULARIO */

.contact-form{
display:flex;
flex-direction:column;
gap:20px;
width:350px;
}

.contact-form input,
.contact-form textarea{
padding:15px;
border:none;
border-radius:15px;
background:#1a1f2e;
color:white;
outline:none;
}

.contact-form textarea{
height:120px;
resize:none;
}

/* BOTON */

.contact-form button{
background:linear-gradient(45deg,#7b2cff,#c77dff);
border:none;
padding:15px;
border-radius:30px;
color:white;
font-weight:600;
cursor:pointer;
transition:0.3s;
}

.contact-form button:hover{
opacity:0.8;
}

.btn{
text-decoration:none; /* 🔥 quita la raya */
color:black; /* 🔥 cambia el color del texto */
display:inline-block; /* 🔥 para que se comporte como botón */
}

.btn:visited{
color:black;
}

.social-float{
position:fixed;
bottom:20px;
right:20px;
display:flex;
flex-direction:column;
gap:15px;
z-index:999;
}

/* BOTONES */
.social-float a{
width:55px;
height:55px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:22px;
text-decoration:none;
color:white;

box-shadow:
0 0 15px rgba(0,0,0,0.3);

transition:0.3s;
}

/* WHATSAPP */
.whatsapp{
background:#25D366;
}

/* INSTAGRAM */
.instagram{
background:linear-gradient(45deg,#833ab4,#fd1d1d,#fcb045);
}

/* HOVER */
.social-float a:hover{
transform:scale(1.1);
}

.social-float a:hover{
transform:scale(1.15);

box-shadow:
0 0 15px #00ffc3,
0 0 30px #ff2dd1;
}

.social-float{
position:fixed;
bottom:20px;
right:20px;
display:flex;
flex-direction:column;
gap:15px;
z-index:999;
}

.social-float a{
width:55px;
height:55px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:20px;
color:white;
text-decoration:none;

box-shadow:0 0 15px rgba(0,0,0,0.3);
transition:0.3s;
}

/* COLORES */

.call{
background:#00ffc3;
color:black;
}

.facebook{
background:#1877f2;
}

.tiktok{
background:black;
}

/* HOVER PRO */
.social-float a:hover{
transform:scale(1.15);

box-shadow:
0 0 15px #00ffc3,
0 0 30px #ff2dd1;
}

/* =========================
   📱 TABLET (768px)
========================= */
@media (max-width: 768px){

/* NAV */
.navbar{
padding:15px 5%;
}

.logo{
font-size:20px;
}

/* HERO */
.logo-hero{
width:300px;
}

/* TITULOS */
.section-title{
font-size:28px;
margin-bottom:40px;
}

/* ABOUT */
.about-container{
flex-direction:column;
gap:40px;
text-align:center;
}

.about-images{
justify-content:center;
}

.genre-img{
width:200px;
height:260px;
}

.about-text h2{
font-size:32px;
}

/* BIO */
.bio-container{
flex-direction:column;
gap:40px;
text-align:center;
}

.bio-text{
max-width:100%;
}

/* MIEMBROS */
.members{
grid-template-columns:repeat(2, 1fr);
justify-content:center;
gap:30px;
}

.member-card{
width:100%;
}

/* FORMATOS */
.formato-card{
width:100%;
max-width:320px;
}

/* VIDEOS */
.videos-carousel{
width:100%;
}

.video-card{
min-width:250px;
}

/* CONTACTO */
.contact-container{
flex-direction:column;
align-items:center;
}

.contact-form{
width:100%;
max-width:350px;
}

}


/* =========================
   📱 CELULAR (480px)
========================= */
@media (max-width: 480px){

/* NAV */
.navbar{
padding:10px 5%;
}

/* HERO */
.hero{
height:80vh;
}

.logo-hero{
width:220px;
}

/* TITULOS */
.section-title{
font-size:24px;
}

/* ARTISTAS */
.artist-card{
min-width:160px;
}

/* IMÁGENES */
.genre-img{
width:150px;
height:200px;
}

/* TEXTO */
.about-text h2{
font-size:26px;
}

.about-text p,
.bio-text p{
font-size:15px;
}

/* MIEMBROS (1 columna) */
.members{
grid-template-columns:1fr;
}

/* VIDEOS */
.video-card{
min-width:200px;
}

/* BOTONES FLOTANTES */
.social-float{
right:10px;
bottom:10px;
}

.social-float a{
width:45px;
height:45px;
font-size:18px;
}

}

html{
scroll-behavior:smooth;
}