:root {
    --manmeoksul-color: #A23BAC;
    --blue-text-color: #3E97D3;
    --dark-text-color: #231F20;
}

.text-manmeoksul-color {
    color: var(--manmeoksul-color);
}

.text-blue-text-color {
    color: var(--blue-text-color);
}

.text-dark-text-color {
    color: var(--dark-text-color);
}

/* Custom Styles */
body {
    scroll-behavior: smooth;
}

.lang-switcher .active {
    background-color: #10B981; /* green-500 */
    color: white;
}

/* Font settings for Korean */
html[lang="ko"] body {
    font-family: 'Noto Sans KR', sans-serif;
}

/* Animations */
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

section {
    animation: fadeIn 1s ease-in-out;
}

#hero h1, #hero p {
    animation: slideInUp 1s ease-in-out;
}

/* Main content wrapper for 860px layout */
.main-content-wrapper {
    max-width: 860px; /* Fixed max-width */
    margin-left: auto; /* Center the wrapper */
    margin-right: auto; /* Center the wrapper */
}

/* Adjust padding for smaller screens */
@media (max-width: 859px) {
    .main-content-wrapper {
        /* Removed: padding, box-shadow, border-radius */
    }
}

/* FAQ Section Styles */
.faq-question {
    cursor: pointer;
    padding: 1rem 0;
    transition: color 0.3s ease;
}

.faq-question:hover {
    color: #10B981; /* green-500 */
}

.faq-question i {
    transition: transform 0.3s ease;
}

.faq-question.active i {
    transform: rotate(180deg);
}

.faq-answer {
    padding-bottom: 1rem;
    line-height: 1.6;
}