:root {
    --faq-width: clamp(300px, 80vw, 1000px);
    --faq-title-size: clamp(1.5rem, 4vw, 2.5rem);
    --faq-question-size: clamp(1.1rem, 2.2vw, 1.8rem);
    --faq-answer-size: clamp(0.8rem, 2vw, 1.3rem);
    --faq-spacing: clamp(1.5rem, 3vw, 3rem);
    --faq-padding: clamp(1.2rem, 3.5vw, 2.5rem);
    --faq-radius: clamp(6px, 1vw, 12px);
    --faq-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    --faq-bg: #f9f9f9;
    --faq-border: #ddd;
}

h1 {
    font-size: var(--faq-title-size);
    text-align: center;
    margin-bottom: var(--faq-spacing);
    color: #2c3e50;
}

.faq-item {
    background-color: var(--faq-bg);
    border: 1px solid var(--faq-border);
    border-radius: var(--faq-radius);
    padding: var(--faq-padding);
    margin-bottom: var(--faq-spacing);
    box-shadow: var(--faq-shadow);
    max-width: var(--faq-width);
    width: 100%;
    display: flex;
    flex-direction: column;
    align-self: center;
}

.faq-item h3 {
    font-size: var(--faq-question-size);
    margin-bottom: clamp(0.5rem, 1.2vw, 1rem);
    color: #34495e;
}

.faq-item p {
    font-size: var(--faq-answer-size);
    line-height: 1.6;
    color: #555;
}