/* ===== Hero ===== */
.hero{position:relative;height:100vh;min-height:640px;color:var(--ivory);overflow:hidden;background:#0a1428}
.hero video,.hero .hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,26,53,.55) 0%,rgba(14,26,53,.35) 40%,rgba(14,26,53,.85) 100%);z-index:1}
.hero .container{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;padding-top:80px}
.hero .eyebrow{color:var(--gold-soft);margin-bottom:18px}
.hero h1{color:#fff;font-size:clamp(36px,6vw,82px);line-height:1.1;letter-spacing:-.035em;font-weight:700;max-width:880px}
.hero h1 em{font-style:normal;color:var(--gold-soft);font-family:var(--font-en);font-weight:800}
.hero p.lead{margin-top:24px;max-width:520px;color:rgba(247,244,236,.85);font-size:18px;line-height:1.7}
.hero .cta-row{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap}
.hero .scroll-ind{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;color:rgba(247,244,236,.65);font-size:11px;letter-spacing:.18em;font-family:var(--font-en);text-transform:uppercase}
.hero .scroll-ind .bar{width:1px;height:48px;background:linear-gradient(180deg,var(--gold) 0%,transparent 100%);animation:scrollPulse 2.4s ease-in-out infinite}
@keyframes scrollPulse{0%,100%{transform:scaleY(.4);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}

/* ===== Brand Intro (EDU x CORE) ===== */
.brand-intro{background:#0E1A35;color:var(--ivory);text-align:center;position:relative;overflow:hidden}
.brand-intro::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(201,169,97,.08) 0%,transparent 60%)}
.brand-intro .container{position:relative}
.brand-intro .lead-kr{font-size:clamp(20px,2vw,28px);color:var(--ivory);max-width:680px;margin:0 auto 80px;line-height:1.65;font-weight:500}
.brand-intro .word-split{display:flex;justify-content:center;align-items:center;gap:clamp(16px,2.5vw,48px);flex-wrap:nowrap}
.brand-intro .word{position:relative;flex:0 1 auto;min-width:0;text-align:center}
.brand-intro .word .en{font-family:var(--font-en);font-size:clamp(42px,5.5vw,86px);font-weight:800;color:rgba(247,244,236,.22);letter-spacing:-.04em;line-height:1;transition:color .4s var(--ease)}
.brand-intro .word:hover .en{color:var(--gold-soft)}
.brand-intro .word .ko{display:block;margin-top:14px;font-size:18px;color:var(--navy-300);letter-spacing:.05em}
.brand-intro .word .desc{display:block;margin-top:8px;font-size:14px;color:var(--navy-300);max-width:200px;line-height:1.6;margin-left:auto;margin-right:auto}
.brand-intro .x-mark{font-family:var(--font-en);font-size:clamp(28px,3vw,44px);color:var(--gold);font-weight:300;align-self:center;flex:0 0 auto}

.brand-intro .core-circle{margin:0 auto;flex:0 0 auto;width:clamp(150px,16vw,210px);height:clamp(150px,16vw,210px);border-radius:50%;background:radial-gradient(circle at center,var(--navy-700) 0%,#0a1428 80%);display:flex;align-items:center;justify-content:center;box-shadow:0 0 80px rgba(201,169,97,.15),inset 0 0 40px rgba(201,169,97,.1);position:relative}
.brand-intro .core-circle::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:1px solid rgba(201,169,97,.25);animation:rotateRing 14s linear infinite}
@keyframes rotateRing{to{transform:rotate(360deg)}}
.brand-intro .core-circle span{font-family:var(--font-en);font-size:clamp(18px,1.8vw,26px);font-weight:800;color:#fff;letter-spacing:.08em}

@media (max-width:768px){
  .brand-intro .word-split{flex-direction:column;gap:28px;flex-wrap:wrap}
  .brand-intro .x-mark{transform:rotate(90deg)}
  .brand-intro .word .desc{max-width:300px}
}

/* ===== About summary ===== */
.about-summary{background:var(--ivory)}
.about-summary .row{display:grid;gap:60px;align-items:center}
@media(min-width:900px){.about-summary .row{grid-template-columns:1fr 1.2fr}}
.about-summary h2{font-size:clamp(32px,4vw,56px);line-height:1.15;margin-bottom:8px}
.about-summary .quote{font-size:clamp(18px,1.6vw,22px);line-height:1.75;color:var(--text-1);font-weight:500;margin-bottom:32px}
.about-summary .desc{color:var(--text-2);line-height:1.85;margin-bottom:32px}
.about-summary .stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}
.about-summary .stat .n{font-family:var(--font-en);font-size:36px;font-weight:800;color:var(--navy-700);letter-spacing:-.03em}
.about-summary .stat .l{font-size:13px;color:var(--text-2);margin-top:4px}

/* ===== Programs ===== */
.programs{background:var(--ivory-50);position:relative}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:60px;flex-wrap:wrap}
.section-head .left h2{font-size:clamp(40px,5vw,72px);line-height:1.05}
.section-head .left .label{font-family:var(--font-en);font-size:13px;letter-spacing:.18em;color:var(--gold);text-transform:uppercase;margin-bottom:10px;display:block}
.section-head .right{max-width:380px;color:var(--text-2)}

.program-grid{display:grid;gap:24px;grid-template-columns:repeat(1,1fr)}
@media(min-width:768px){.program-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.program-grid{grid-template-columns:repeat(3,1fr)}}

.program-card{background:#fff;border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--line);transition:transform .35s var(--ease),box-shadow .35s var(--ease);display:flex;flex-direction:column;position:relative}
.program-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(27,42,78,.12)}
.program-card .thumb{aspect-ratio:16/10;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy-700),var(--navy-500))}
.program-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.program-card:hover .thumb img{transform:scale(1.06)}
.program-card .thumb .badge{position:absolute;top:16px;left:16px;background:rgba(247,244,236,.95);color:var(--navy-700);font-size:12px;letter-spacing:.05em;padding:6px 12px;border-radius:999px;font-weight:600}
.program-card .body{padding:28px;flex:1;display:flex;flex-direction:column}
.program-card h3{font-size:22px;margin-bottom:10px;line-height:1.35}
.program-card .desc{color:var(--text-2);font-size:15px;line-height:1.7;flex:1}
.program-card .more{margin-top:24px;color:var(--navy-700);font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:6px}

/* ===== Experts preview ===== */
.experts-preview{background:var(--navy-900);color:var(--ivory);overflow:hidden}
.experts-preview .section-head h2{color:#fff}
.experts-preview .section-head .label{color:var(--gold-soft)}
.experts-preview .section-head .right{color:var(--navy-300)}
.expert-grid{display:grid;gap:24px;grid-template-columns:repeat(1,1fr)}
@media(min-width:600px){.expert-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.expert-grid{grid-template-columns:repeat(4,1fr)}}

.expert-card{background:#172446;border-radius:var(--radius-card);overflow:hidden;transition:transform .35s var(--ease)}
.expert-card:hover{transform:translateY(-6px)}
.expert-card .photo{aspect-ratio:3/4;background:#0E1A35;position:relative;overflow:hidden}
.expert-card .photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.95)}
.expert-card .body{padding:22px}
.expert-card .role{font-family:var(--font-en);font-size:12px;letter-spacing:.15em;color:var(--gold);text-transform:uppercase;margin-bottom:8px}
.expert-card h3{color:#fff;font-size:20px;margin-bottom:6px}
.expert-card .spec{color:var(--navy-300);font-size:14px;line-height:1.6}

/* ===== Notice preview ===== */
.notice-preview{background:var(--ivory)}
.notice-list{display:grid;gap:0;border-top:1px solid var(--line)}
.notice-item{display:grid;grid-template-columns:80px 1fr auto;gap:24px;align-items:center;padding:24px 8px;border-bottom:1px solid var(--line);transition:background .25s var(--ease),padding-left .25s var(--ease)}
.notice-item:hover{background:var(--ivory-50);padding-left:20px}
.notice-item .cat{font-family:var(--font-en);font-size:12px;letter-spacing:.1em;color:var(--gold);font-weight:600;text-transform:uppercase}
.notice-item .title{font-size:17px;color:var(--text-1);font-weight:500}
.notice-item .date{color:var(--text-3);font-size:13px;font-family:var(--font-en)}
@media(max-width:600px){
  .notice-item{grid-template-columns:1fr;gap:6px}
  .notice-item .date{order:-1;font-size:12px}
}

/* ===== CTA ===== */
.cta{background:linear-gradient(135deg,var(--navy-700) 0%,#0E1A35 100%);color:var(--ivory);text-align:center;position:relative;overflow:hidden}
.cta::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top,rgba(201,169,97,.15) 0%,transparent 60%)}
.cta .container{position:relative}
.cta .eyebrow{color:var(--gold-soft);margin-bottom:20px;display:inline-block}
.cta h2{color:#fff;font-size:clamp(36px,5vw,72px);line-height:1.1;letter-spacing:-.03em;margin-bottom:18px}
.cta p{color:rgba(247,244,236,.8);font-size:18px;max-width:520px;margin:0 auto 40px;line-height:1.7}
.cta .pin{margin:0 auto 32px;width:48px;height:48px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;color:var(--navy-900);font-size:22px;box-shadow:0 0 0 8px rgba(201,169,97,.18)}

/* ===== Mobile tightening ===== */
@media(max-width:768px){
  .brand-intro .lead-kr{margin-bottom:48px}
  .section-head{margin-bottom:40px}
  .section-head .right{max-width:none}
  .about-summary .stat-grid{gap:8px;margin-top:32px;padding-top:24px}
  .about-summary .stat .n{font-size:28px}
  .about-summary .stat .l{font-size:12px}
  .hero h1{max-width:none}
  .hero .scroll-ind{bottom:24px}
  .program-card .body{padding:22px}
  .program-card h3{font-size:20px}
  .expert-card .body{padding:18px}
  .cta .pin{width:40px;height:40px;font-size:18px;margin-bottom:24px}
}
@media(max-width:480px){
  .brand-intro .core-circle{width:140px;height:140px}
  .brand-intro .word .en{font-size:48px}
  .hero h1 em{display:inline-block}
}
