/* 1. 기본 설정 (header.php) */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');

:root {
    --color-primary: #643bb6;
    --color-secondary: #4a4a4a;
    --color-tertiary: #e0e0e0;
    --gnb-height: 60px;
    --tabs-height: 52px;
    --page-chrome-height: calc(var(--gnb-height) + var(--tabs-height));
}

/* 2. 레이아웃 (1/index.php, 2/index.php, 3/index.php) */

/* 스크롤 동작 유지, 스크롤바만 숨김 */
html {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

html::-webkit-scrollbar {
    display: none;
}

body {
    font-family: Pretendard;
    font-weight: 500;
    margin: 0;
    padding: 0;
    overflow: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

body::-webkit-scrollbar {
    display: none;
}

app {
    display: block;
    width: 100%;
    height: 100%;
}

app.page-inner {
    position: relative;
    height: 100vh;
    min-height: 100vh;
}

body:has(app.page-inner) {
    overflow-y: auto;
    /* body 배경 전환 속도 — 1/index.php 탭 전환용 (ms 단위로 직접 조절) */
    transition: background-color 0.6s step-end;
}

/* 3. 콘텐츠 이미지 (1/index.php, 2/index.php, 3/index.php) */

app.page-inner section {
    width: 100%;
    height: calc(100vh - var(--page-chrome-height));
    min-height: 500px;
    overflow: hidden;
}

.row {
    width: 100%;
    background: #fff;
    text-align: left;
}

.wide-image,
.vertical-image {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    height: auto;
    display: block;
}

.vertical-image {
    display: none;
}

/* 4. 탭 패널 (1/index.php, 2/index.php) */
.about-hero,
.about-certification,
.process-hero,
.mes-system {
    background-color: #fff;
    border-bottom: 1px solid var(--color-tertiary);
}

.section-swiper { width: 100%;  height: 100%; margin: 0 auto;  }
.section-swiper.section-swiper--mo { display: none; }
.section-swiper .swiper-slide { height: 100%; display: flex; align-items: center; justify-content: center; overflow: hidden; box-sizing: border-box; }
.section-swiper.swiper-fade .swiper-slide { pointer-events: none; }
.section-swiper.swiper-fade .swiper-slide-active { pointer-events: auto; }
.section-swiper .swiper-slide img { width: 100%; height: 100%; object-fit: contain; display: block; }


.process-hero,
.mes-system {

    /* 섹션 배경 전환 속도 — 2/index.php swiper speed와 직접 맞출 것 (ms 단위) */
    transition: background-color 0.5s ease-out;
}

app{
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none;  /* IE 10+ */
}

/* 5. 반응형 (전체) */
@media (max-width: 767px) {
    .row {
        text-align: center;
    }

    .section-swiper.section-swiper--pc { display: none; }
    .section-swiper.section-swiper--mo { display: block; }
}
