.khs-faq{
    --khs-accent:#E87524;
    --khs-bg:#F3F5F6;
    --khs-card:#FFFFFF;
    --khs-border:#DDE2E6;
    --khs-muted:#68727C;
    --khs-text:#17191C;

    position:relative;
    width:100%;
    overflow:hidden;
    background:var(--khs-bg);
    color:var(--khs-text);
    font-family:inherit;
    direction:rtl;
}

.khs-faq *{
    box-sizing:border-box;
}

/* Background Grid */
.khs-faq__grid-bg{
    position:absolute;
    inset:0;
    opacity:.32;
    pointer-events:none;

    background-image:
        linear-gradient(#DDE2E6 1px,transparent 1px),
        linear-gradient(90deg,#DDE2E6 1px,transparent 1px);

    background-size:42px 42px;

    mask-image:linear-gradient(
        to bottom,
        rgba(0,0,0,.7),
        transparent
    );
}

/* Container */
.khs-faq__container{
    position:relative;
    z-index:1;

    width:min(1180px,calc(100% - 32px));
    margin:auto;

    padding:76px 0;
}

/* Heading */
.khs-faq__heading{
    margin-bottom:34px;
}

/* Eyebrow */
.khs-faq__eyebrow{
    display:flex;
    align-items:center;
    gap:9px;

    color:#68727C;

    font-size:11px;
    font-weight:800;

    letter-spacing:1.7px;
}

.khs-faq__eyebrow span{
    width:20px;
    height:3px;

    background:var(--khs-accent);

    display:inline-block;
}

/* Title */
.khs-faq__title{
    margin:13px 0 10px;

    color:#17191C;

    font-weight:900;

    line-height:1.25;
    letter-spacing:-.5px;
}

/* Description */
.khs-faq__description{
    max-width:720px;

    margin:0;

    color:#68727C;

    font-size:14px;
    line-height:2;

    font-weight:300;
}

/* FAQ List */
.khs-faq__list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

/* FAQ Box */
.khs-faq__item{
    background:#FFFFFF;

    border:1px solid #DDE2E6;

    border-radius:8px;

    overflow:hidden;

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        transform .25s ease;
}

/* Hover */
.khs-faq__item:hover{
    border-color:#B8C0C7;

    box-shadow:
        0 6px 20px rgba(23,25,28,.06);
}

/* Open */
.khs-faq__item.is-open{
    border-color:rgba(232,117,36,.55);

    box-shadow:
        0 12px 30px rgba(23,25,28,.08);
}

/* Question Row */
.khs-faq__question-row{
    width:100%;

    border:0;

    background:#FFFFFF;

    color:#17191C;

    display:flex;
    align-items:center;

    gap:14px;

    text-align:right;

    cursor:pointer;

    padding:18px 20px;

    font-family:inherit;

    transition:
        background-color .2s ease;
}

.khs-faq__question-row:hover{
    background:#FAFBFC;
}

/* Number */
.khs-faq__number{
    flex:0 0 auto;

    color:#E87524;

    font-size:11px;

    font-weight:800;

    font-family:monospace;

    direction:ltr;
}

/* Question */
.khs-faq__question{
    flex:1;

    color:#17191C;

    font-weight:750;

    line-height:1.8;
}

/* Badge */
.khs-faq__badge{
    flex:0 0 auto;

    font-size:9px;

    color:#E87524;

    background:#FFF7F1;

    border:1px solid rgba(232,117,36,.35);

    padding:3px 7px;

    border-radius:4px;
}

/* Icon */
.khs-faq__icon{
    width:28px;
    height:28px;

    border-radius:5px;

    background:#F3F5F6;

    border:1px solid #DDE2E6;

    position:relative;

    flex:0 0 28px;

    transition:
        background-color .25s ease,
        border-color .25s ease,
        transform .25s ease;
}

.khs-faq__icon span{
    position:absolute;

    left:7px;
    right:7px;

    top:13px;

    height:2px;

    background:#E87524;

    transition:
        transform .25s ease,
        background-color .25s ease;
}

.khs-faq__icon span:last-child{
    transform:rotate(90deg);
}

/* Open Icon */
.khs-faq__item.is-open .khs-faq__icon{
    background:#E87524;

    border-color:#E87524;
}

.khs-faq__item.is-open .khs-faq__icon span{
    background:#FFFFFF;
}

.khs-faq__item.is-open .khs-faq__icon span:last-child{
    transform:rotate(0deg);
}

/* Answer Wrapper */
.khs-faq__answer-wrap{
    overflow:hidden;

    background:#FFFFFF;
}

/* Answer */
.khs-faq__answer-inner{
    border-top:1px solid #E3E7EA;

    padding:
        0
        64px
        22px;
}

.khs-faq__answer{
    color:#68727C;

    line-height:2.05;

    font-weight:300;
}

.khs-faq__answer p{
    margin:12px 0;
}

.khs-faq__answer ul,
.khs-faq__answer ol{
    padding-right:22px;
}

.khs-faq__answer li{
    margin-bottom:5px;
}

/* Links */
.khs-faq__link{
    display:inline-flex;

    align-items:center;

    gap:7px;

    margin-top:8px;

    color:#E87524;

    font-size:12px;

    font-weight:700;

    text-decoration:none;

    transition:
        color .2s ease;
}

.khs-faq__link:hover{
    color:#C95F13;

    text-decoration:underline;
}

.khs-faq__link span{
    font-size:15px;
}

/* Focus */
.khs-faq__question-row:focus-visible{
    outline:2px solid #E87524;
    outline-offset:-2px;
}

/* Elementor Editor */
.elementor-editor-active .khs-faq{
    min-height:50px;
}

/* Tablet */
@media(max-width:1024px){

    .khs-faq__container{
        width:min(100% - 28px,900px);

        padding:60px 0;
    }

    .khs-faq__answer-inner{
        padding-right:50px;
        padding-left:50px;
    }

}

/* Mobile */
@media(max-width:767px){

    .khs-faq__container{
        width:min(100% - 20px,700px);

        padding:48px 0;
    }

    .khs-faq__heading{
        margin-bottom:22px;
    }

    .khs-faq__eyebrow{
        font-size:9px;

        letter-spacing:1.2px;
    }

    .khs-faq__description{
        font-size:12px;

        line-height:2;
    }

    .khs-faq__question-row{
        gap:9px;

        padding:14px 13px;
    }

    .khs-faq__number{
        font-size:9px;
    }

    .khs-faq__badge{
        display:none;
    }

    .khs-faq__icon{
        width:24px;
        height:24px;

        flex-basis:24px;
    }

    .khs-faq__icon span{
        left:6px;
        right:6px;

        top:11px;
    }

    .khs-faq__question{
        font-size:13px;

        line-height:1.8;
    }

    .khs-faq__answer-inner{
        padding:
            0
            18px
            17px;
    }

    .khs-faq__answer{
        font-size:12px;

        line-height:2;
    }

    .khs-faq__title{
        letter-spacing:0;
    }
}

/* Small Mobile */
@media(max-width:380px){

    .khs-faq__container{
        width:calc(100% - 16px);
    }

    .khs-faq__question-row{
        padding:12px 10px;

        gap:7px;
    }

    .khs-faq__question{
        font-size:12px;
    }

    .khs-faq__answer-inner{
        padding-right:14px;
        padding-left:14px;
    }

}

/* Prevent Elementor/theme button styles */
.khs-faq button{
    font-family:inherit;
}

.khs-faq button:hover,
.khs-faq button:focus{
    box-shadow:none;
}

.khs-faq a{
    transition:all .2s ease;
}