/* =========================================================
   OCTIGAMES - PREGUNTAS FRECUENTES
   /styles/faq.css
========================================================= */

.faq-main{
    width:100%;
    flex:1;
    padding:34px 20px 70px;
}

#faq-section{
    width:min(980px,100%);
    margin:0 auto;
    color:#edf3fb;
}

#faq-section,
#faq-section *{
    box-sizing:border-box;
    min-width:0;
}

.faq-page-header{
    position:relative;
    overflow:hidden;

    margin-bottom:24px;
    padding:30px 28px;

    text-align:center;

    border:1px solid rgba(31,227,253,.18);
    border-radius:26px;

    background:
        radial-gradient(circle at top,rgba(31,227,253,.13),transparent 58%),
        linear-gradient(145deg,rgba(28,38,48,.97),rgba(10,14,19,.98));

    box-shadow:
        0 20px 55px rgba(0,0,0,.38),
        0 0 32px rgba(31,227,253,.07);
}

.faq-page-header::after{
    content:"";
    position:absolute;
    width:210px;
    height:210px;
    right:-80px;
    bottom:-120px;
    border-radius:50%;
    background:rgba(180,80,255,.06);
    pointer-events:none;
}

.faq-page-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    margin-bottom:12px;
    padding:7px 12px;

    border:1px solid rgba(31,227,253,.20);
    border-radius:999px;

    background:rgba(31,227,253,.07);
    color:#a9f4ff;

    font-size:12px;
    font-weight:950;
    letter-spacing:.06em;
    text-transform:uppercase;
}

#faq-title{
    margin:0;

    color:#1fe3fd;
    font-size:clamp(30px,5vw,44px);
    line-height:1.08;
    font-weight:1000;
    text-align:center;
    text-decoration:none;

    text-shadow:
        0 0 14px rgba(31,227,253,.35);
}

.faq-page-intro{
    max-width:820px;
    margin:16px auto 0;

    color:rgba(237,243,251,.76);
    font-size:15px;
    line-height:1.75;

    overflow-wrap:anywhere;
}

.faq-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.faq{
    overflow:hidden;

    border:1px solid rgba(255,255,255,.09);
    border-radius:20px;

    background:
        linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));

    box-shadow:
        0 10px 28px rgba(0,0,0,.18);

    transition:
        transform .18s ease,
        border-color .18s ease,
        background .18s ease;
}

.faq:hover,
.faq.is-open{
    border-color:rgba(31,227,253,.23);
    background:
        linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
}

.faq:hover{
    transform:translateY(-1px);
}

.faq-question{
    width:100%;
    margin:0;
    padding:19px 21px;

    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:9px;

    color:#fff;
    font-size:16px;
    line-height:1.45;
    font-weight:950;

    text-align:left;
    cursor:pointer;
    user-select:none;

    outline:none;
}

.faq-question:focus-visible{
    box-shadow:
        inset 0 0 0 2px rgba(31,227,253,.55);
}

.faq-question-number{
    color:#1fe3fd;
    font-weight:1000;

    text-shadow:
        0 0 12px rgba(31,227,253,.24);
}

.faq-question-text{
    overflow-wrap:anywhere;
}

.faq-toggle-icon{
    width:30px;
    height:30px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;

    background:rgba(255,255,255,.055);
    color:#a9f4ff;

    font-size:21px;
    font-weight:500;
    line-height:1;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease;
}

.faq.is-open .faq-toggle-icon{
    transform:rotate(45deg);
    background:rgba(31,227,253,.10);
    border-color:rgba(31,227,253,.24);
}

.faq-answer{
    padding:0 21px 20px 54px;
}

.faq-answer[hidden]{
    display:none;
}

.faq-answer p{
    margin:0;

    color:rgba(237,243,251,.73);
    font-size:14px;
    line-height:1.78;

    text-align:left;
    overflow-wrap:anywhere;
}

/* =========================================================
   RTL SOLO PARA EL CONTENIDO FAQ
========================================================= */

#faq-section.faq-is-rtl{
    direction:rtl;
}

#faq-section.faq-is-rtl .faq-question{
    text-align:right;
}

#faq-section.faq-is-rtl .faq-answer{
    padding-left:21px;
    padding-right:54px;
}

#faq-section.faq-is-rtl .faq-answer p{
    text-align:right;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:700px){

    .faq-main{
        padding:22px 12px 55px;
    }

    .faq-page-header{
        padding:24px 17px;
        border-radius:22px;
    }

    #faq-title{
        font-size:30px;
    }

    .faq-page-intro{
        font-size:14px;
        line-height:1.7;
    }

    .faq{
        border-radius:18px;
    }

    .faq-question{
        padding:17px 15px;
        font-size:14px;
        gap:7px;
    }

    .faq-toggle-icon{
        width:28px;
        height:28px;
        font-size:19px;
    }

    .faq-answer{
        padding:
            0 15px 17px 43px;
    }

    #faq-section.faq-is-rtl .faq-answer{
        padding-left:15px;
        padding-right:43px;
    }

    .faq-answer p{
        font-size:13px;
        line-height:1.7;
    }
}

@media(max-width:380px){

    .faq-main{
        padding-left:9px;
        padding-right:9px;
    }

    .faq-page-header{
        padding-left:13px;
        padding-right:13px;
    }

    .faq-question{
        padding-left:13px;
        padding-right:13px;
    }
}

@media(hover:none){

    .faq:hover{
        transform:none;
    }
}