/* 공통 중앙 정렬 스타일 */

/* 모든 섹션의 container 중앙 정렬 강화 */
section {
    width: 100%;
    overflow-x: hidden;
}

section .container {
    max-width: 1400px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2rem;
    padding-right: 2rem;
    width: 100%;
}

/* 중앙 정렬이 필요한 그리드 레이아웃 */
.grid-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* 인라인 스타일 섹션도 중앙 정렬 */
section > div[style*="container"],
section > div[style*="max-width"] {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 반응형 중앙 정렬 */
@media (max-width: 1440px) {
    section .container {
        max-width: 100%;
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

@media (max-width: 1024px) {
    section .container {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
}

@media (max-width: 768px) {
    section .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

/* 텍스트 중앙 정렬 */
.text-center {
    text-align: center;
}

/* 플렉스 중앙 정렬 */
.flex-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 그리드 중앙 정렬 */
.grid-center {
    display: grid;
    place-items: center;
}

/* 최대 너비 컨테이너 */
.max-width-1200 {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

.max-width-1000 {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 2rem;
}

.max-width-800 {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* 푸터 중앙 정렬 */
footer .container {
    max-width: 1400px;
    margin: 0 auto !important;
    padding: 0 2rem;
}

/* 헤더 중앙 정렬 */
header .container {
    max-width: 1400px;
    margin: 0 auto !important;
    padding: 0 2rem;
}
