/*=========================================
            FAQ HERO
=========================================*/

.faq-hero{
    max-width:1000px;
    margin:0 auto;
    padding:90px 20px 60px;
    text-align:center;
}

.faq-eyebrow{
    display:block;
    margin-bottom:12px;
    color:#D4AF37;
    font-size:12px;
    font-weight:700;
    letter-spacing:3px;
}

.faq-hero h1{
    margin-bottom:20px;
    font-size:52px;
    line-height:1.15;
}

.faq-hero p{
    max-width:760px;
    margin:auto;
    color:#BDBDBD;
    font-size:18px;
    line-height:1.8;
}

/*=========================================
            FAQ SECTION
=========================================*/

.faq-section{
    max-width:950px;
    margin:0 auto;
    padding:0 20px 90px;
}

.faq-category{
    margin-bottom:52px;
}

.faq-category:last-of-type{
    margin-bottom:0;
}

.faq-category h2{
    margin-bottom:22px;
    color:#D4AF37;
    font-size:30px;
    line-height:1.25;
    font-weight:650;
}

/*=========================================
            FAQ ITEMS
=========================================*/

.faq-item{
    border-top:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.08);
    margin-top:-1px;
}

.faq-question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:24px 0;
    background:none;
    border:none;
    outline:none;
    color:#FFFFFF;
    font:inherit;
    font-size:18px;
    font-weight:600;
    line-height:1.45;
    text-align:left;
    cursor:pointer;
    transition:color .25s ease;
}

.faq-question:hover,
.faq-question:focus-visible,
.faq-item.active .faq-question{
    color:#D4AF37;
}

.faq-question:focus-visible{
    outline:2px solid rgba(212,175,55,.75);
    outline-offset:6px;
    border-radius:4px;
}

.faq-icon{
    width:30px;
    flex:0 0 30px;
    color:#D4AF37;
    font-size:30px;
    font-weight:300;
    line-height:1;
    text-align:center;
    transition:transform .25s ease;
}

.faq-item.active .faq-icon{
    transform:rotate(45deg);
}

/*=========================================
            ANSWERS
=========================================*/

.faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .32s ease;
}

.faq-answer p{
    margin:0;
    padding:0 48px 22px 0;
    color:#BDBDBD;
    font-size:16px;
    line-height:1.85;
}

.faq-answer p + p{
    padding-top:2px;
}

.faq-answer strong{
    color:#E7C65A;
    font-weight:650;
}

.faq-answer a{
    color:#D4AF37;
    text-decoration:none;
    border-bottom:1px solid rgba(212,175,55,.45);
}

.faq-answer a:hover{
    border-bottom-color:#D4AF37;
}

/*=========================================
        CONTACT SECTION
=========================================*/

.faq-contact{
    width:min(900px,90%);
    margin:0 auto 100px;
    padding:55px 50px;
    text-align:center;
    background:#141414;
    border:1px solid rgba(212,175,55,.15);
    border-radius:18px;
    box-shadow:0 20px 55px rgba(0,0,0,.20);
}

.faq-contact-label{
    display:block;
    margin-bottom:10px;
    color:#D4AF37;
    font-size:11px;
    font-weight:700;
    letter-spacing:2.5px;
}

.faq-contact h2{
    margin-bottom:18px;
    color:#D4AF37;
    font-size:36px;
    line-height:1.2;
}

.faq-contact p{
    max-width:650px;
    margin:0 auto 30px;
    color:#BDBDBD;
    font-size:17px;
    line-height:1.8;
}

.faq-contact-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:13px 34px;
    background:#D4AF37;
    border:1px solid #D4AF37;
    border-radius:12px;
    color:#111;
    font-weight:700;
    text-decoration:none;
    transition:transform .25s ease, box-shadow .25s ease;
}

.faq-contact-btn:hover,
.faq-contact-btn:focus-visible{
    transform:translateY(-2px);
    box-shadow:0 0 22px rgba(212,175,55,.20);
}

.faq-contact-btn:focus-visible{
    outline:2px solid #FFFFFF;
    outline-offset:4px;
}

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

@media(max-width:900px){

    .faq-hero{
        padding:75px 25px 50px;
    }

    .faq-hero h1{
        font-size:42px;
    }

    .faq-category h2{
        font-size:27px;
    }

}

@media(max-width:600px){

    .faq-hero{
        padding:60px 20px 42px;
    }

    .faq-hero h1{
        font-size:34px;
    }

    .faq-hero p{
        font-size:16px;
    }

    .faq-section{
        padding:0 18px 70px;
    }

    .faq-category{
        margin-bottom:42px;
    }

    .faq-category h2{
        margin-bottom:16px;
        font-size:24px;
    }

    .faq-question{
        gap:16px;
        padding:20px 0;
        font-size:16px;
    }

    .faq-icon{
        width:26px;
        flex-basis:26px;
        font-size:26px;
    }

    .faq-answer p{
        padding-right:12px;
        padding-bottom:20px;
        font-size:15px;
        line-height:1.75;
    }

    .faq-contact{
        margin-bottom:75px;
        padding:42px 24px;
    }

    .faq-contact h2{
        font-size:30px;
    }

    .faq-contact p{
        font-size:16px;
    }

}

@media(prefers-reduced-motion:reduce){

    .faq-answer,
    .faq-icon,
    .faq-question,
    .faq-contact-btn{
        transition:none;
    }

}
