/**
 * KAICE Page Styles
 * 페이지 공통 레이아웃 스타일
 *
 * 네이밍 컨벤션:
 * - 최상위: kaice-page-container
 * - 하위: page-section, page-inner, section-header 등
 *
 * @package KAICE
 * @since 1.0.0
 */

/* ===========================================
   페이지 컨테이너
   =========================================== */

.kaice-page-container {
    width: 100%;
}

/* 홈 페이지 breadcrumb 숨김 */
body:has(.kaice-page-container.home) .breadcrumb-wrap {
    display: none !important;
}

/* ===========================================
   페이지 내부 래퍼
   =========================================== */

.page-inner {
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
}

/* ===========================================
   페이지 섹션
   =========================================== */

.page-section {
    padding: 50px 0;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.page-section.hero {
    margin-top: -40px;
}

/* 홀수 섹션: 흰색 배경, 짝수 섹션: 기본(투명) */
.page-section:nth-child(odd) {
    background: #fff;
}

/* ===========================================
   섹션 헤더
   =========================================== */

.section-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 20px;
    gap: 10px;
}

.section-header.header-left {
    flex-direction: row;
    text-align: left;
    justify-content: space-between;
    align-items: center;
}

.section-header.header-with-link {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
}

.section-header h2 {
    font-size: var(--theme-font-size-heading);
    font-family: var(--theme-font-bold);
    color: var(--theme-text-color);
    margin: 0;
}

.section-header p {
    font-size: var(--theme-font-size-body);
    color: var(--theme-info-text);
    margin: 0;
}

/* ===========================================
   섹션 CTA
   =========================================== */

.section-cta {
    text-align: center;
    margin-top: 40px;
}

/* ===========================================
   공통 유틸리티
   =========================================== */

.no-data {
    color: var(--theme-info-text);
    font-size: var(--theme-font-size-small);
    text-align: center;
    padding: 20px;
}

/* ===========================================
   반응형 디자인
   =========================================== */

@media (max-width: 1260px) {
    .page-inner {
        padding: 0 30px;
    }
}

@media (max-width: 768px) {
    .page-section {
        padding: 50px 0;
    }

    .section-header {
        margin-bottom: 30px;
    }

    .section-header h2 {
        font-size: var(--theme-font-size-title);
    }
}

@media (max-width: 480px) {
    .section-header.header-left,
    .section-header.header-with-link {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
}
