/* =====================================================
   VERSION 2 - BIK
   SEMAFOROS
   INFORMES
   PROGRESO
===================================================== */

/* ==========================================
   BARRA DE PROGRESO
========================================== */

.progress-wrapper{

max-width:1100px;

margin:40px auto;

padding:0 20px;

}

.progress-bar{

display:flex;

justify-content:space-between;

align-items:center;

gap:10px;

flex-wrap:wrap;

}

.progress-step{

flex:1;

min-width:140px;

padding:15px;

background:#ffffff;

border-radius:12px;

box-shadow:0 2px 10px rgba(0,0,0,.08);

font-weight:600;

font-size:14px;

}

.progress-step.active{

background:#d95d8a;

color:white;

}

/* ==========================================
   RESULTADOS
========================================== */

.resultado-card{

max-width:900px;

margin:30px auto;

padding:30px;

background:white;

border-radius:16px;

box-shadow:0 4px 20px rgba(0,0,0,.08);

}

.resultado-card h3{

margin-bottom:20px;

}

/* ==========================================
   SEMÁFOROS
========================================== */

.semaforo{

display:flex;

align-items:center;

justify-content:center;

gap:12px;

margin:15px 0;

font-size:18px;

font-weight:700;

}

.semaforo-verde{

color:#0c9b44;

}

.semaforo-amarillo{

color:#d6a300;

}

.semaforo-rojo{

color:#d63131;

}

.circulo{

width:18px;

height:18px;

border-radius:50%;

display:inline-block;

}

.verde{

background:#0c9b44;

}

.amarillo{

background:#d6a300;

}

.rojo{

background:#d63131;

}

/* ==========================================
   INFORME FINAL
========================================== */

#informeFinal{

display:none;

max-width:1000px;

margin:50px auto;

padding:40px;

background:white;

border-radius:18px;

box-shadow:0 8px 30px rgba(0,0,0,.10);

text-align:left;

}

#informeFinal h2{

text-align:center;

margin-bottom:30px;

}

#informeFinal h3{

margin-top:25px;

margin-bottom:12px;

}

#informeFinal p{

max-width:none;

text-align:left;

}

.informe-resumen{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:20px;

margin-bottom:30px;

}

.informe-box{

padding:20px;

border-radius:12px;

background:#fafafa;

border:1px solid #ececec;

}

.informe-box strong{

display:block;

margin-bottom:10px;

}

/* ==========================================
   RECOMENDACIONES
========================================== */

.recomendaciones{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:20px;

margin-top:25px;

}

.recomendacion{

background:#fff;

padding:25px;

border-radius:12px;

box-shadow:0 3px 15px rgba(0,0,0,.08);

}

.recomendacion h4{

margin-bottom:10px;

}

/* ==========================================
   FAQ MEJORADO
========================================== */

.acordeon-item{

transition:.25s;

}

.acordeon-btn{

font-size:16px;

font-weight:700;

}

.acordeon-btn:hover{

background:#fafafa;

}

.acordeon-content{

line-height:1.8;

}

/* ==========================================
   BOTON INFORME
========================================== */

.btn-informe{

display:inline-block;

padding:16px 35px;

border-radius:40px;

background:#d95d8a;

color:white;

font-weight:700;

text-decoration:none;

cursor:pointer;

border:none;

transition:.25s;

}

.btn-informe:hover{

transform:translateY(-2px);

}

/* ==========================================
   LOADER
========================================== */

.loader{

display:none;

margin:40px auto;

width:60px;

height:60px;

border:5px solid #eee;

border-top:5px solid #d95d8a;

border-radius:50%;

animation:spin 1s linear infinite;

}

@keyframes spin{

0%{

transform:rotate(0deg);

}

100%{

transform:rotate(360deg);

}

}

/* ==========================================
   BLOQUE DE ACTIVIDADES
========================================== */

.actividad-card{

background:white;

padding:25px;

border-radius:15px;

box-shadow:0 4px 15px rgba(0,0,0,.08);

transition:.25s;

}

.actividad-card:hover{

transform:translateY(-4px);

}

.actividad-card h3{

margin-bottom:12px;

}

/* ==========================================
   BLOQUES DE TEST
========================================== */

.test-box{

background:white;

padding:25px;

border-radius:15px;

box-shadow:0 4px 15px rgba(0,0,0,.08);

margin-top:25px;

}

.test-box label{

display:block;

padding:12px;

margin-bottom:10px;

border-radius:10px;

cursor:pointer;

transition:.2s;

}

.test-box label:hover{

background:#fafafa;

}

/* ==========================================
   RESULTADO STICKY
========================================== */

.resultado-sticky{

position:sticky;

bottom:20px;

max-width:500px;

margin:30px auto;

padding:20px;

background:white;

border-radius:12px;

box-shadow:0 4px 20px rgba(0,0,0,.15);

z-index:100;

}

/* ==========================================
   RESPONSIVE
========================================== */

@media(max-width:768px){

.informe-resumen{

grid-template-columns:1fr;

}

.recomendaciones{

grid-template-columns:1fr;

}

.progress-bar{

flex-direction:column;

}

.progress-step{

width:100%;

}

#informeFinal{

padding:25px;

}

}
/* ==========================================
   ACORDEÓN V2
========================================== */

.acordeon{

max-width:900px;
margin:40px auto;

}

.acordeon-item{

margin-bottom:15px;

border-radius:12px;

overflow:hidden;

background:white;

box-shadow:0 3px 15px rgba(0,0,0,.08);

}

.acordeon-btn{

width:100%;

padding:20px 60px 20px 20px;

border:none;

background:white;

cursor:pointer;

position:relative;

font-size:16px;

font-weight:600;

text-align:left;

}

.acordeon-btn::after{

content:"+";

position:absolute;

right:20px;

top:50%;

transform:translateY(-50%);

font-size:26px;

font-weight:bold;

color:#d95d8a;

transition:.3s;

}

.acordeon-btn.activo::after{

content:"−";

color:#2e8b57;

}
.acordeon-content{

display:none;

padding:20px;

border-top:1px solid #eee;

background:#f7f7f7;

color:#666;

text-align:left;

line-height:1.8;

font-size:15px;

}

.acordeon-content p{

text-align:left;

margin:0;

}
/* ==========================================
   FORMULARIO BREVO
========================================== */
#cta-bik{

padding:80px 20px;

background:#fafafa;

}

#cta-bik h2{

margin-bottom:20px;

}

.cta-box{

max-width:900px;

margin:40px auto 0 auto;

background:white;

padding:20px;

border-radius:16px;

box-shadow:0 4px 20px rgba(0,0,0,.08);

}