/* ====================================
   RESET & BASE
==================================== */
* { margin:0; padding:0; box-sizing:border-box; word-break:keep-all; }
html { font-size:62.5%; overflow-x:hidden; }
html, body { width:100%; max-width:100%; background:#fff; color:#222; }
body { overflow-x:hidden; }
a { text-decoration:none; color:inherit; }
ul, li { list-style:none; }
button { cursor:pointer; border:none; background:none; font-family:inherit; }
img { vertical-align:bottom; max-width:100%; }
body { font-family:'Noto Sans KR', sans-serif; font-size:1.9rem; letter-spacing:-0.03rem; }

/* ====================================
   3단 구조
==================================== */
.common_box               { width:100%; float:left; min-width:32rem; overflow-x:hidden; }
.common_box > div         { max-width:1300px; width:100%; margin:0 auto; }
.common_box > div > div   { width:100%; float:left; }

/* 전체폭 섹션 */
.common_box.full_width > div { width:100%; }

/* ====================================
   SCROLL ANIMATION
==================================== */
.fade_up { opacity:0; transform:translateY(28px); transition:opacity .7s ease, transform .7s ease; }
.fade_up.on { opacity:1; transform:translateY(0); }
.fade_up.d1 { transition-delay:.1s; }
.fade_up.d2 { transition-delay:.2s; }
.fade_up.d3 { transition-delay:.3s; }
.fade_up.d4 { transition-delay:.4s; }

/* ====================================
   SECTION TITLE 공통
==================================== */
.sec_title { text-align:center; margin-bottom:54px; }
.sec_title .en_tag {
    display:block;
    font-family:'Montserrat', sans-serif;
    font-size:1.6rem; font-weight:700;
    color:#00b4d8; letter-spacing:0.4rem;
    text-transform:uppercase; margin-bottom:1.4rem;
}
.sec_title h3 { font-size:4.2rem; font-weight:700; color:#111; line-height:1.3; }
.sec_title p { font-size:1.9rem; color:#999; margin-top:1.5rem; font-weight:300; line-height:1.5; }

/* 반응형 규칙은 style.css 하단에서 통합 관리합니다 */
