/* 템플릿 동적 CSS - layout.php에서 분리 */
/* CSS 변수는 layout.php의 인라인 스타일에서 동적으로 생성됩니다 */

/* 사이트 폭 적용 */
.header-container,
.layout-content .container,
.page-footer .container,
.site-main,
.site-footer,
.top-bar-container,
.footer-container,
.main-container {
    max-width: var(--site-width) !important;
    margin: 0 auto !important;
}

/* 폰트 적용 */
body {
    font-family: var(--font-family) !important;
    font-size: var(--pc-font-size) !important;
    line-height: 1.5 !important;
}

/* 사이트 폭 강제 적용 */
.site-header {
    width: 100% !important;
}

.header-container {
    max-width: var(--site-width) !important;
    margin: 0 auto !important;
    width: 100% !important;
}

.site-main {
    max-width: var(--site-width) !important;
    margin: 0 auto !important;
    width: 100% !important;
}

.site-footer {
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    width: 100vw !important;
    max-width: none !important;
    box-sizing: border-box !important;
    margin-top: 45px !important;
}

/* 전체 레이아웃 컨테이너 */
.main-container {
    max-width: var(--site-width) !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* 전체 페이지는 100% 폭 유지, 내부 컨테이너만 사이트 폭 적용 */

/* 푸터 내부 컨테이너는 사이트 폭에 맞춰 중앙 정렬 */
.site-footer .footer-container {
    max-width: var(--site-width) !important;
    margin: 0 auto !important;
    padding: 0px !important;
    width: 100% !important;
}

/* 홈페이지 콘텐츠 스타일 */
.home-content {
    min-height: 400px;
}

/* 메인슬라이드 100% 폭 스타일 */
.home-content {
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;
    max-width: none;
}

.main-slide-container {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.main-slide-container.full-width {
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;
}

.main-slide-container.boxed {
    max-width: var(--site-width);
    margin: 0 auto;
}

/* 모바일 반응형 */
@media (max-width: 768px) {
    body {
        font-size: var(--mobile-font-size) !important;
        line-height: 1.5 !important;
    }
}