/* ==================================================
    Common
================================================== */
:root {--key-navy:#153569;--key-blue:#2c5bf6;--accent-blue:#004caf;--text-main:#333;--text-sub:#555;--text-sub2:#777;--text-caption:#b1b1b1}
.expansion-page {text-align:center; color: var(--text-main);}
.expansion-page img {max-width:100%;display:block;margin:0 auto}
.expansion-page .sec {padding:60px 0}
.expansion-page .sec-tit {font-size:28px;font-weight:600;line-height:1.4;letter-spacing:-0.28px;color:#333;max-width:1024px;margin:0 auto}
.expansion-page .sec-tit .l1,.expansion-page .sec-tit .l2 {display:block}
.expansion-page .sec-tit strong {font-weight:600;color:#004caf}
.expansion-page .sec-tit .l2 {font-size:24px;font-weight:400;letter-spacing:-0.24px;margin-top:0}
.expansion-page .sec-tit2 {color:#555;font-weight:400;font-size:24px;letter-spacing:-0.24px}
.expansion-page .sec-tit2 strong {font-size:28px;font-weight:600; color: #333; letter-spacing:-0.28px;}
.expansion-page .sub-badge {display:inline-flex;align-items:center;gap:10px;border:1px solid #153569;border-radius:999px;padding:6px 18px;font-size:20px;font-weight:700;color:#333;margin:0 0 30px}
.expansion-page .line-no {display: flex; gap: 4px;}
.expansion-page .line-no span[class^="n"]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;color:#fff;font-size:24px;font-weight:600}
.expansion-page .line-no .n2 {background:#3ab449}
.expansion-page .line-no .n3 {background:#f77636}

/* ==================================================
    TOP
================================================== */
.expansion-page .top-visual {padding:80px 0;background:linear-gradient(180deg, #E2EBFF 0%, #E9F0FF 42.59%, #FFF 77.76%)}
.expansion-page .sub-copy {font-size:24px;line-height:1.4;letter-spacing:-0.24px; margin:0 0 32px}
.expansion-page .main-tit {font-size:84px;font-weight:800;line-height:1;letter-spacing:-2.1px;margin:0 0 24px;background:linear-gradient(111deg,#0f2959 10%,#2b5d9f 57%,#0f2959 97%);-webkit-background-clip:text;background-clip:text;color:transparent}
.expansion-page .move-badge {display:inline-block;padding-left: 50px; padding-right: 21px; border-radius:999px;font-size:32px;letter-spacing:28.8px;color:#fff;line-height:1.3;margin:0 0 24px;background:linear-gradient(128deg,#0f2959 10%,#2b5d9f 50%,#0f2959 96%)}
.expansion-page .grand-open {font-size:26px;font-weight:500;letter-spacing:15.6px;line-height:1;background:linear-gradient(141deg,#0f2959 10%,#2b5d9f 57%,#0f2959 97%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ==================================================
    Section anchor tab (segmented)
================================================== */
.expansion-page .ex-tab-group {min-height: 42px;}
.expansion-page .tab-wrap.is-fixed {position: fixed; top: 60px; left: 0;}
.expansion-page .tab-wrap {width: 100%; z-index: 99; background: #fff;}
.expansion-page .expansion-tab {display:flex; width: 100%; max-width:1024px;margin:0 auto;background:#fff}
.expansion-page .expansion-tab .tab-btn {flex:1 0 0;padding:14px 0;font-size:18px;letter-spacing:-0.18px;color:#777;border-bottom:1px solid #153569;border-radius:6px 6px 0 0;text-decoration:none}
.expansion-page .expansion-tab .tab-btn.is-on {color:#153569;background:#fff;border:1px solid #153569;border-bottom:none}

/* ==================================================
    #01 Location
================================================== */
.expansion-page .sec-location .sec-tit,
.expansion-page .sec-location .sub-badge,
.expansion-page .sec-location .map-area {max-width:1024px;margin-left:auto;margin-right:auto}
.expansion-page .sec-location .sec-tit {margin-bottom:40px}
.expansion-page .sec-location .sub-badge {display:flex;width:fit-content;margin-bottom:30px}
.expansion-page .map-img-area {position:relative;overflow:hidden;height:623px;border:1px solid #e5e5e5;border-radius:10px 10px 0 0;}
.expansion-page .map-img-area img {width: 100%; height: 100%; object-fit: cover;}

.expansion-page .map-addr {background:#f5f5f5;border:1px solid #e5e5e5;border-top:none;border-radius:0 0 10px 10px;padding:10px 0;font-size:18px;letter-spacing:-0.18px;}

/* ==================================================
    #02 Teacher list
================================================== */
.expansion-page .sec-teacher {background:#f4f7ff}
.expansion-page .sec-teacher .sec-tit,
.expansion-page .sec-teacher .sub-badge,
.expansion-page .sec-teacher .teacher-list,
.expansion-page .sec-teacher .teacher-note {max-width:1024px;margin-left:auto;margin-right:auto}
.expansion-page .sec-teacher .sec-tit {margin-bottom:30px}
.expansion-page .sec-teacher .sub-badge {display:flex;width:fit-content;margin-bottom:30px}
.expansion-page .teacher-list {display:flex;flex-wrap:wrap;justify-content:center;column-gap:16px;margin-bottom:24px}
.expansion-page .teacher-item {width:15.23%;margin-bottom:0}
.expansion-page .row-break {flex-basis:100%;height:30px}
.expansion-page .teacher-photo {display:block;width:100%; aspect-ratio:156/227;overflow:hidden;background:#fff;margin:0 0 12px}
.expansion-page .teacher-photo img {width:100%;height:100%;object-fit:cover}
.expansion-page .teacher-name {font-size:18px;letter-spacing:-0.18px;color:#333}
.expansion-page .teacher-name strong {font-weight:700}
.expansion-page .teacher-note {text-align:right;font-size:13px;line-height:1.5;letter-spacing:-0.13px;color:#b1b1b1;margin-top:0}

/* ==================================================
    #03 Bottom copy
================================================== */
.expansion-page .bottom-copy {padding:40px 0;background:#dfe8ff;font-size:28px;font-weight:600;line-height:1.4;letter-spacing:-0.28px}
.expansion-page .bottom-copy .copy-main {color:#004caf}
.expansion-page .bottom-copy .copy-sub {}

/* PC */
@media (min-width: 768px){
    .expansion-page .tab-wrap.is-fixed.down {top: 0;}
}
/* ==================================================
    Media: Tablet (frame width 768)
================================================== */
@media (max-width:1199px) {
.expansion-page .expansion-tab {padding: 0 24px;}
.expansion-page .sec {padding-left:24px;padding-right:24px}
.expansion-page .move-badge {background:linear-gradient(128deg,#004caf 10%,#2b5d9f 50%,#0f2959 96%)}
.expansion-page .map-addr {border-bottom:1px solid #e5e5e5;border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5;border-top:none}
.expansion-page .teacher-item {}
.expansion-page .teacher-list {column-gap:10px}
.expansion-page .teacher-photo {}
.expansion-page .teacher-name {font-size:16px;letter-spacing:-0.16px}
}

/* ==================================================
    Media: Mobile (frame width 360)
================================================== */
@media (max-width:767px) {
.expansion-page .sec {padding:40px 16px}
.expansion-page .top-visual {padding:50px 15px}
.expansion-page .sub-copy {font-size:18px;letter-spacing:-0.18px;margin-bottom:24px}
.expansion-page .main-tit {font-size:56px;letter-spacing:-1.4px;margin-bottom:16px}
.expansion-page .move-badge {padding:4px 36px; padding-right: 18px; font-size:20px;letter-spacing:18px;margin-bottom:16px;background:linear-gradient(96deg,#004caf 9.8%,#2b5d9f 49.8%,#0f2959 96.15%)}
.expansion-page .grand-open {font-size:18px;font-weight:600;letter-spacing:9.9px}
.expansion-page .tab-wrap.is-fixed {top: 55px;}
.expansion-page .expansion-tab {padding: 0 16px; width: 100%;}
.expansion-page .expansion-tab .tab-btn {padding:9px 0; font-size: 16px;}
.expansion-page .expansion-tab .tab-btn:last-child {font-size:16px;letter-spacing:-0.16px}
.expansion-page .sec-tit,
.expansion-page .sec-location .sec-tit {margin-bottom: 30px; font-size:22px}
.expansion-page .sec-tit .l2 {font-size:20px}
.expansion-page .sec-tit2 {font-size:22px;letter-spacing:-0.22px}
.expansion-page .sec-tit2 strong {font-size:20px;letter-spacing:-0.2px}
.expansion-page .sec-location .sub-badge {font-size: 17px; text-align: left;}
.expansion-page .map-img-area {aspect-ratio: 328/280; height: auto;}
.expansion-page .line-no span[class^="n"] {font-size: 20px;}
.expansion-page .map-addr {font-size:16px;letter-spacing:-0.16px}
.expansion-page .sec-teacher .sec-tit {margin-bottom:20px; font-size: 18px;}
.expansion-page .sec-teacher .sub-badge {margin-bottom: 20px; font-size: 17px;}
.expansion-page .teacher-list {display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.expansion-page .teacher-item {width:auto}
.expansion-page .row-break {display:none}
.expansion-page .teacher-photo {margin-bottom:8px}
.expansion-page .teacher-name {font-size:14px;}
.expansion-page .teacher-note {font-size:12px;}
.expansion-page .bottom-copy {padding:20px 0;font-size:20px;}
}
