.faqaccordion_x9Y2z {
    padding-left: var(--padding_lr);
    padding-right: var(--padding_lr);
    max-width: var(--custom_content_max_width);
    margin-left: auto;
    margin-right: auto;
    margin-top: var(--margin_tb);
    margin-bottom: var(--margin_tb);
    box-sizing: border-box;
}

.faqaccordion_x9Y2z .faq-container {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    
}

.faqaccordion_x9Y2z .faq-item {
    background-color: var(--item_bg_color);
    border-radius: 1.5rem;
    overflow: hidden;
    padding: 0;
}

.faqaccordion_x9Y2z input[type="checkbox"] {
    display: none;
}

.faqaccordion_x9Y2z .faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2rem;
    cursor: pointer;
    user-select: none;
    transition: background-color 0.3s ease;
}

.faqaccordion_x9Y2z .question_row {
    display: flex;
    align-items: center;
}

.faqaccordion_x9Y2z .q_prefix {
    font-weight: bold;
    margin-right: 0.5rem;
    flex-shrink: 0;
    line-height: 1.4;
    color: var(--question_color);
    font-size: var(--question_font_size);
}

.faqaccordion_x9Y2z .question-text {
    font-size: var(--question_font_size);
    color: var(--question_color);
    font-weight: 600;
}

/* Icon Toggle - Plus Sign */
.faqaccordion_x9Y2z .icon-toggle {
    position: relative;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease; /* Smooth transition, no bounce */
    flex-shrink: 0;
}

.faqaccordion_x9Y2z .icon-toggle::before,
.faqaccordion_x9Y2z .icon-toggle::after {
    content: '';
    position: absolute;
    background-color: var(--question_color);
    border-radius: 2px;
}

/* Horizontal line */
.faqaccordion_x9Y2z .icon-toggle::before {
    width: 100%;
    height: 2px;
}

/* Vertical line */
.faqaccordion_x9Y2z .icon-toggle::after {
    width: 2px;
    height: 100%;
}

/* Answer Section - Grid Animation */
.faqaccordion_x9Y2z .faq-answer {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease-out;
    
}

.faqaccordion_x9Y2z .faq-content {
    overflow: hidden;
    padding: 0;
    min-height: 0;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s 0.3s, opacity 0.3s ease-out;
}

.faqaccordion_x9Y2z .faq-content > * {
    padding-left: 3rem;
    padding-right: 3rem;
}

.faqaccordion_x9Y2z .faq-content > :last-child {
    padding-bottom: 3rem;
}

.faqaccordion_x9Y2z input[type="checkbox"]:checked ~ .faq-answer .faq-content {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.3s ease-out, visibility 0s 0s;
}

.faqaccordion_x9Y2z .answer_row {
    display: flex;
    align-items: flex-start;
}

.faqaccordion_x9Y2z .a_prefix {
    font-weight: bold;
    margin-right: 0.5rem;
    flex-shrink: 0;
    line-height: 1.6;
    color: var(--answer_color);
    font-size: var(--answer_font_size);
}

.faqaccordion_x9Y2z .answer_text_wrapper {
    flex-grow: 1;
}

.faqaccordion_x9Y2z .faq-content p {
   
    color: var(--answer_color);
    font-size: var(--answer_font_size);
    line-height: 1.6;
    margin: 0; /* Reset p margin */
}

/* Checked State */
.faqaccordion_x9Y2z input[type="checkbox"]:checked ~ .faq-answer {
    grid-template-rows: 1fr;
}

.faqaccordion_x9Y2z input[type="checkbox"]:checked ~ .faq-question .icon-toggle {
    transform: rotate(45deg); /* Direct 45deg rotation */
}

/* Responsive Styles */

/* Pad */
@media (min-width: 768px) and (max-width: 1024px) {
    .faqaccordion_x9Y2z .question-text,
    .faqaccordion_x9Y2z .q_prefix {
        font-size: calc(var(--question_font_size) * 0.95);
    }
    .faqaccordion_x9Y2z .faq-content p,
    .faqaccordion_x9Y2z .a_prefix {
        font-size: calc(var(--answer_font_size) * 0.95);
    }
}

/* Mobile */
@media (max-width: 767px) {
    .faqaccordion_x9Y2z{
        padding-left: 2rem;
        padding-right: 2rem;
    }
    .faqaccordion_x9Y2z .question-text,
    .faqaccordion_x9Y2z .q_prefix {
        font-size: calc(var(--question_font_size) * 0.9);
    }
    .faqaccordion_x9Y2z .faq-content p,
    .faqaccordion_x9Y2z .a_prefix {
        font-size: calc(var(--answer_font_size) * 0.9);
    }
    .faqaccordion_x9Y2z .faq-question {
        
    }
}
