/* ==========================
   OVERLAY
========================== */

#rfl-overlay{
    position:fixed;
    inset:0;
    background:#ffffff;
    display:none;
    z-index:999999;
    overflow-y:auto;
}

/* ==========================
   APP
========================== */

.rfl-app{
    width:100%;
    min-height:100vh;
    position:relative;
}

/* ==========================
   CERRAR
========================== */

#rfl-close{

    position:fixed;

    top:30px;

    right:30px;

    width:46px;

    height:46px;

    border:none;

    border-radius:50%;

    background:#F5F5F5;

    cursor:pointer;

    font-size:24px;

    transition:.25s;

    z-index:100;

}

#rfl-close:hover{

    background:#FF6200;

    color:#fff;

}

/* ==========================
   CABECERA
========================== */

.rfl-header{

    max-width:900px;

    margin:70px auto 30px;

    padding:0 30px;

    text-align:center;

}

.rfl-logo-box{

    width:95px;

    height:95px;

    background:#FF6200;

    border-radius:28px;

    margin:0 auto 30px;

    display:flex;

    justify-content:center;

    align-items:center;

}

.rfl-logo-main{

    width:68px;

    height:auto;

}

.rfl-time{

    display:block;

    color:#FF6200;

    font-weight:700;

    font-size:18px;

    margin-bottom:18px;

}

.rfl-title{

    font-size:46px;

    line-height:1.2;

    margin:0 0 15px;

}

.rfl-subtitle{

    font-size:20px;

    color:#666;

    max-width:650px;

    margin:0 auto 35px;

}

/* ==========================
   PROGRESO
========================== */

.rfl-progress{

    width:100%;

    height:10px;

    background:#ECECEC;

    border-radius:20px;

    overflow:hidden;

}

.rfl-progress-fill{

    width:12%;

    height:100%;

    background:#FF6200;

    border-radius:20px;

}

.rfl-step{

    margin-top:15px;

    font-weight:600;

    color:#666;

}

/* ==========================
   CONTENIDO
========================== */

.rfl-content{

    max-width:900px;

    margin:0 auto 80px;

    padding:0 30px;

}

.rfl-question{

    font-size:34px;

    text-align:center;

    margin-bottom:30px;

}

.rfl-search{

    margin-bottom:35px;

}

.rfl-search input{

    width:100%;

    height:64px;

    border:2px solid #E5E5E5;

    border-radius:16px;

    padding:0 22px;

    font-size:18px;

    transition:.25s;

}

.rfl-search input:focus{

    outline:none;

    border-color:#FF6200;

}

/* ==========================
   RESPONSIVE
========================== */

@media(max-width:768px){

    .rfl-header{

        margin-top:40px;

        padding:20px;

    }

    .rfl-content{

        padding:20px;

    }

    .rfl-title{

        font-size:30px;

    }

    .rfl-subtitle{

        font-size:17px;

    }

    .rfl-question{

        font-size:25px;

    }

    #rfl-close{

        top:15px;

        right:15px;

    }

}
/* ==========================
   PASO 1
========================== */

.rfl-popular{
    margin-top:40px;
}

.rfl-popular h3{
    font-size:18px;
    margin-bottom:18px;
    color:#444;
}

.rfl-services{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
}

.rfl-service{

    display:flex;
    align-items:center;

    width:100%;

    padding:18px 20px;

    background:#fff;

    border:2px solid #E9E9E9;

    border-radius:14px;

    cursor:pointer;

    font-size:17px;

    font-weight:600;

    transition:.25s;

}

.rfl-service:hover{

    border-color:#FF6200;

    transform:translateY(-2px);

    box-shadow:0 8px 18px rgba(0,0,0,.08);

}

.rfl-more{

    justify-content:center;

    color:#FF6200;

    border-style:dashed;

}

@media(max-width:768px){

    .rfl-services{

        grid-template-columns:1fr;

    }

}