.faq-section {
            padding: 80px 0;
            max-width: 800px;
            margin: 0 auto;
        }

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

        .faq-category-title {
            font-size: 1.5rem;
            margin-bottom: 30px;
            padding-bottom: 10px;
            border-bottom: 2px solid #000;
        }

        .faq-item {
            border-bottom: 1px solid #ddd;
        }

        .faq-question {
            width: 100%;
            text-align: left;
            background: none;
            border: none;
            padding: 20px 0;
            font-size: 1.1rem;
            font-weight: 500;
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
            color: #333;
        }

        .faq-question::after {
            content: '+';
            font-size: 1.5rem;
            transition: transform 0.3s;
        }

        .faq-question.active::after {
            transform: rotate(45deg);
        }

        .faq-answer {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out;
            padding: 0;
            color: #666;
            line-height: 1.8;
        }

        .faq-answer p {
            padding-bottom: 20px;
        }

        .faq-answer-list {
            margin: 0;
            padding: 0 0 20px 1.4em;
        }

        .faq-answer-list li {
            margin-bottom: 10px;
        }

        .faq-answer-list li:last-child {
            margin-bottom: 0;
        }

        .faq-toggle:checked+.faq-label+.faq-content {
            max-height: 500px;
        }
