@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&display=swap');

.rs-lhf-wrap,
.rs-lhf-wrap * {
    box-sizing: border-box;
    font-family: 'Open Sans', Arial, sans-serif;
}

.rs-lhf-wrap {
    width: 100%;
    margin-inline: auto;
    background: #fff;
    border-radius: 20px;
    box-shadow: none;
    overflow: hidden;
}

.rs-lhf-grid {
    display: flex;
    align-items: flex-start !important;
}

.rs-lhf-copy {
    min-width: 0;
    padding-top: 6px;
    align-self: flex-start !important;
    flex-shrink: 0;
    position: relative;
    top: 0;
    transform: none !important;
    transition: none !important;
}

.rs-lhf-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    background: #EAF4FF;
    color: #2F6FB3;
    border-radius: 999px;
    margin-bottom: 22px;
}

.rs-lhf-eyebrow-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #4A90E2;
}

.rs-lhf-eyebrow-icon svg { width: 13px; height: 13px; }

.rs-lhf-title {
    margin: 0 0 24px;
    color: #111827;
    font-size: clamp(38px, 4vw, 62px);
    line-height: 1.07;
    font-weight: 500;
    letter-spacing: -0.035em;
}

.rs-lhf-title span { display: block; }
.rs-lhf-title-accent { color: #4A90E2; }

.rs-lhf-intro {
    max-width: 480px;
    color: #6B7280;
    font-size: 15px;
    line-height: 1.7;
}

.rs-lhf-list {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.rs-lhf-item {
    overflow: hidden;
    background: #F4F9FF;
    border: 1px solid #D7E8F8;
    border-radius: 20px;
    box-shadow: none;
    transition: background-color .2s ease, border-color .2s ease;
}

.rs-lhf-item.is-open { background: #EDF6FF; }

.rs-lhf-question {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px;
    background: transparent !important;
    border: 0;
    cursor: pointer;
    text-align: left;
    color: inherit;
    -webkit-appearance: none;
    appearance: none;
    box-shadow: none !important;
}

.rs-lhf-question:hover,
.rs-lhf-question:focus,
.rs-lhf-question:active {
    background: transparent !important;
    color: inherit;
    box-shadow: none !important;
}

.rs-lhf-question:focus-visible {
    outline: 2px solid #4A90E2;
    outline-offset: -4px;
    border-radius: inherit;
}

.rs-lhf-question-text {
    color: #162033;
    font-size: 18px;
    line-height: 1.45;
    font-weight: 600;
}

.rs-lhf-toggle {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #4A90E2;
    color: #fff;
    box-shadow: none;
    transition: transform .25s ease, background-color .2s ease;
}

.rs-lhf-toggle svg { width: 16px; height: 16px; }
.rs-lhf-item.is-open .rs-lhf-toggle { transform: rotate(180deg); }

.rs-lhf-answer {
    overflow: hidden;
}

.rs-lhf-answer-inner {
    padding: 10px 22px 22px;
    color: #5F6B7A;
    font-size: 14px;
    line-height: 1.75;
}

.rs-lhf-answer-inner p:first-child { margin-top: 0; }
.rs-lhf-answer-inner p:last-child { margin-bottom: 0; }

@media (max-width: 900px) {
    .rs-lhf-grid { flex-direction: column; gap: 42px !important; }
    .rs-lhf-copy { flex-basis: auto !important; width: 100%; }
    .rs-lhf-list { width: 100%; }
}

@media (max-width: 600px) {
    .rs-lhf-wrap { padding: 28px 18px !important; }
    .rs-lhf-title { font-size: 38px; }
    .rs-lhf-question { gap: 14px; padding: 18px; }
    .rs-lhf-answer-inner { padding: 10px 18px 18px; }
    .rs-lhf-question-text { font-size: 16px; }
}
