:root{
  --g:#0B3D2E;--g2:#0F5233;--g-dark:#060F08;
  --gold:#C9A227;--gold-l:#DDB63A;--gold-dim:rgba(201,162,39,.12);
  --white:rgba(255,255,255,.92);--muted:rgba(255,255,255,.42);
  --border:rgba(255,255,255,.07);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Noto Sans KR',sans-serif;background:var(--g-dark);color:#fff;overflow-x:hidden;}

/* noise */
body::before{content:'';position:fixed;inset:0;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;}

/* NAV (DEF-08, DEF-09) */
nav{position:fixed;top:0;left:0;right:0;z-index:500;display:flex;align-items:center;justify-content:space-between;padding:22px 52px;transition:all .4s;}
nav.scrolled{background:rgba(6,15,8,.88);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:16px 52px;}
.nlogo{display:flex;align-items:center;gap:13px;text-decoration:none;min-height:44px;min-width:44px;}
.nlogo-emb{width:34px;height:34px;}
.nlogo-text .t1{font-size:14.5px;font-weight:900;letter-spacing:-.01em;color:#fff;}
.nlogo-text .t1 span{color:var(--gold);}
.nlogo-text .t2{font-family:'Space Mono',monospace;font-size:7px;letter-spacing:.2em;color:rgba(255,255,255,.28);margin-top:1px;display:block;}
.nlinks{display:flex;align-items:center;gap:20px;}
.nlinks a{font-size:12.5px;color:var(--muted);text-decoration:none;letter-spacing:.02em;transition:.2s;}
.nlinks a:hover{color:#fff;}
.nreg{padding:8px 14px;border:1px solid var(--gold);border-radius:3px;color:var(--gold) !important;font-weight:700;}
.nreg:hover{background:rgba(201,162,39,.12);}
.ncta{padding:9px 24px;background:var(--gold);color:#0B3D2E !important;font-size:12.5px;font-weight:700;border-radius:3px;text-decoration:none;transition:.15s;letter-spacing:.02em;}
.ncta:hover{background:var(--gold-l);transform:translateY(-1px);}

/* Mobile menu toggle (DEF-09) */
.mobile-nav-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:18px;cursor:pointer;padding:6px 10px;line-height:1;}

@media(max-width:768px){
  nav{padding:14px 20px;}
  nav.scrolled{padding:12px 20px;}
  .mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;}
  .nlinks{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(6,15,8,.96);backdrop-filter:blur(24px);border-bottom:2px solid var(--gold);flex-direction:column;align-items:stretch;padding:16px 20px 24px;gap:10px;}
  .nlinks.open{display:flex;}
  .nlinks a{padding:12px 14px;font-size:14px;min-height:44px;display:flex;align-items:center;}
  .ncta, .nreg{text-align:center;justify-content:center;}
}

/* HERO */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;}
.hero-bg{position:absolute;inset:0;}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:brightness(.36) saturate(.7);}
.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,rgba(6,15,8,.94) 0%,rgba(11,61,46,.52) 45%,rgba(6,15,8,.18) 100%);}
.hero-inner{position:relative;z-index:10;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:130px 52px 100px;max-width:1180px;margin:0 auto;width:100%;}
@media(max-width:900px){.hero-inner{grid-template-columns:1fr;padding:120px 24px 80px;}.hero-right{display:none;}}

.hero-left .pre{display:inline-flex;align-items:center;gap:10px;margin-bottom:28px;opacity:0;animation:fu .7s .1s forwards;}
.pre-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:ppulse 2s ease-in-out infinite;}
@keyframes ppulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(201,162,39,.5);}50%{opacity:.55;box-shadow:0 0 0 7px rgba(201,162,39,0);}}
.pre-t{font-family:'Space Mono',monospace;font-size:9px;letter-spacing:.26em;color:var(--gold);text-transform:uppercase;}

.hero-h{font-family:'Noto Sans KR',sans-serif;font-size:clamp(50px,8vw,88px);font-weight:900;line-height:1.0;letter-spacing:-.04em;margin-bottom:20px;opacity:0;animation:fu .8s .25s forwards;}
.hero-h .acc{color:var(--gold);}
.hero-h .en{font-family:'Cormorant Garamond',serif;font-size:.42em;font-weight:300;font-style:italic;letter-spacing:.07em;color:rgba(255,255,255,.38);display:block;margin-top:10px;}

.hero-desc{font-size:clamp(13.5px,1.6vw,15.5px);color:rgba(255,255,255,.55);line-height:1.95;margin-bottom:38px;max-width:430px;opacity:0;animation:fu .8s .4s forwards;}
.hero-desc strong{color:#fff;font-weight:700;}

.hero-btns{display:flex;gap:12px;flex-wrap:wrap;opacity:0;animation:fu .8s .55s forwards;}
.btn-p{display:inline-flex;align-items:center;gap:9px;padding:14px 34px;background:var(--gold);color:#0B3D2E;font-size:13.5px;font-weight:900;border-radius:3px;text-decoration:none;transition:.2s;letter-spacing:.02em;}
.btn-p:hover{background:var(--gold-l);transform:translateY(-2px);box-shadow:0 12px 36px rgba(201,162,39,.28);}
.btn-g{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.5);font-size:13px;border-radius:3px;text-decoration:none;transition:.2s;}
.btn-g:hover{border-color:rgba(255,255,255,.42);color:#fff;}

@keyframes fu{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}

/* hero right: passport card */
.hero-right{opacity:0;animation:fu .9s .7s forwards;}
.pcard{background:linear-gradient(145deg,#0F5233,#0B3D2E 60%,#0A2E1A);border-radius:5px 16px 16px 5px;box-shadow:-6px 0 0 #5A3210,-12px 4px 22px rgba(0,0,0,.5),10px 16px 50px rgba(0,0,0,.35);overflow:hidden;position:relative;max-width:290px;margin:0 auto;}
.pcov{padding:24px 22px 18px 28px;}
.pcov-row{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.pcov-emb{width:34px;height:34px;}
.pcov-org{font-family:'Space Mono',monospace;font-size:6px;letter-spacing:.08em;color:var(--gold);line-height:1.9;}
.pcov-tit{font-size:28px;font-weight:900;line-height:1;margin-bottom:4px;}
.pcov-tit span{color:var(--gold);}
.pcov-en{font-family:'Cormorant Garamond',serif;font-style:italic;color:rgba(255,255,255,.22);font-size:10.5px;letter-spacing:.08em;display:block;margin-bottom:10px;}
.pcov-tag{display:inline-block;border:1px solid rgba(201,162,39,.42);color:var(--gold);font-size:6px;font-weight:700;padding:3px 9px;font-family:'Space Mono',monospace;letter-spacing:.08em;}
.pinn{padding:14px 18px 16px 24px;background:rgba(250,246,236,.97);}
.prow{display:grid;grid-template-columns:34px 1fr;gap:5px;align-items:baseline;margin-bottom:7px;border-bottom:1px solid #EDE6D4;padding-bottom:7px;}
.prow:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.pfl{font-family:'Space Mono',monospace;font-size:6px;letter-spacing:.1em;color:#8A96A6;text-transform:uppercase;}
.pfv{font-size:10px;font-weight:700;color:#0B3D2E;}
.pcai{text-align:center;padding:10px;background:rgba(11,61,46,.06);border:1px solid #D9CEB0;border-radius:3px;margin-top:10px;}
.pcai-n{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:300;color:#0B3D2E;line-height:1;}
.pcai-n sup{font-size:13px;color:var(--gold);}
.pcai-s{font-family:'Space Mono',monospace;font-size:6px;color:#8A96A6;letter-spacing:.08em;margin-top:1px;}
.pcai-badge{display:inline-block;margin-top:5px;padding:3px 10px;background:#0B3D2E;color:var(--gold);font-family:'Space Mono',monospace;font-size:7px;font-weight:700;letter-spacing:.12em;border-radius:2px;}

/* hero bottom stats */
.hero-bar{position:absolute;bottom:0;left:0;right:0;z-index:10;display:flex;border-top:1px solid rgba(255,255,255,.06);}
.hbi{flex:1;padding:16px 20px;border-right:1px solid rgba(255,255,255,.06);text-align:center;}
.hbi:last-child{border-right:none;}
.hbi-n{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:300;color:var(--gold);line-height:1;}
.hbi-l{font-family:'Rajdhani',sans-serif;font-size:9.5px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;margin-top:3px;}
@media(max-width:500px){.hbi{padding:10px 8px;}.hbi-n{font-size:22px;}}

/* MARQUEE */
.mq{background:var(--gold);overflow:hidden;padding:11px 0;}
.mq-track{display:flex;width:max-content;animation:mq 30s linear infinite;}
.mq-track:hover{animation-play-state:paused;}
@keyframes mq{to{transform:translateX(-50%);}}
.mq-item{display:inline-flex;align-items:center;gap:18px;padding:0 26px;white-space:nowrap;}
.mq-item span{font-family:'Rajdhani',sans-serif;font-size:12px;font-weight:700;letter-spacing:.22em;color:#0B3D2E;text-transform:uppercase;}
.mq-dot{width:4px;height:4px;border-radius:50%;background:#0B3D2E;opacity:.38;flex-shrink:0;}

/* BASE */
.w{max-width:1120px;margin:0 auto;padding:0 52px;}
@media(max-width:640px){.w{padding:0 20px;}}
.sec{padding:96px 0;}
@media(max-width:640px){.sec{padding:64px 0;}}
.stag{display:flex;align-items:center;gap:11px;font-family:'Space Mono',monospace;font-size:8.5px;letter-spacing:.28em;color:var(--gold);text-transform:uppercase;margin-bottom:14px;}
.stag::before{content:'';width:22px;height:1px;background:var(--gold);}
.sh{font-family:'Cormorant Garamond',serif;font-size:clamp(32px,5vw,52px);font-weight:500;line-height:1.1;margin-bottom:14px;}
.sh em{font-style:italic;color:var(--gold);}
.sh .ko{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:.78em;font-style:normal;}
.sp{font-size:14.5px;color:rgba(255,255,255,.45);line-height:1.9;}

/* HOW IT WORKS */
.steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);margin-top:50px;}
@media(max-width:700px){.steps{grid-template-columns:1fr;}}
.step{padding:36px 28px;border-right:1px solid var(--border);position:relative;transition:.2s;}
.step:last-child{border-right:none;}
@media(max-width:700px){.step{border-right:none;border-bottom:1px solid var(--border);}.step:last-child{border-bottom:none;}}
.step:hover{background:rgba(201,162,39,.03);}
.step-bg{font-family:'Cormorant Garamond',serif;font-size:80px;font-weight:300;color:rgba(201,162,39,.08);line-height:1;position:absolute;top:12px;right:16px;}
.step-icon{font-size:24px;margin-bottom:16px;}
.step-h{font-size:15.5px;font-weight:700;margin-bottom:8px;}
.step-p{font-size:13px;color:rgba(255,255,255,.4);line-height:1.8;}
.sarrow{position:absolute;top:50%;right:-1px;transform:translate(50%,-50%);width:20px;height:20px;background:var(--g-dark);border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2;font-size:9px;color:var(--gold);}
@media(max-width:700px){.sarrow{display:none;}}

/* SPLIT IMAGE */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:460px;border:1px solid var(--border);}
.split+.split{border-top:none;}
@media(max-width:760px){.split{grid-template-columns:1fr;min-height:auto;}}
.split.rev{direction:rtl;}.split.rev .split-body{direction:ltr;}
.sph{overflow:hidden;position:relative;min-height:300px;}
.sph img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) saturate(.78);transition:.5s;}
.sph:hover img{transform:scale(1.04);filter:brightness(.68) saturate(.82);}
.sph::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(11,61,46,.28),transparent 55%);}
.split-body{display:flex;flex-direction:column;justify-content:center;padding:48px 42px;gap:14px;}
@media(max-width:640px){.split-body{padding:28px 20px;}}
.cklist{display:flex;flex-direction:column;gap:9px;margin-top:6px;}
.cki{display:flex;align-items:center;gap:10px;font-size:13px;color:rgba(255,255,255,.58);}
.ckico{width:19px;height:19px;border-radius:50%;background:rgba(201,162,39,.12);border:1px solid rgba(201,162,39,.28);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:9.5px;color:var(--gold);}

/* CAI AXIS */
.axis-wrap{background:rgba(201,162,39,.03);border-top:1px solid rgba(201,162,39,.1);border-bottom:1px solid rgba(201,162,39,.1);}
.agrid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:42px;}
@media(max-width:860px){.agrid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:440px){.agrid{grid-template-columns:repeat(2,1fr);}}
.ax{text-align:center;padding:18px 10px;border:1px solid rgba(201,162,39,.14);border-radius:3px;background:rgba(201,162,39,.02);transition:.2s;cursor:default;}
.ax:hover{background:rgba(201,162,39,.08);border-color:rgba(201,162,39,.38);transform:translateY(-2px);}
.ax-n{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:300;color:var(--gold);line-height:1;display:block;margin-bottom:6px;}
.ax-l{font-size:11px;font-weight:700;color:rgba(255,255,255,.78);}

/* LEVELS */
.lvgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:42px;}
@media(max-width:680px){.lvgrid{grid-template-columns:1fr 1fr;}}
.lv{border-radius:5px;padding:24px 16px;text-align:center;border:1.5px solid;transition:.2s;}
.lv:hover{transform:translateY(-3px);}
.lv-n{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:300;line-height:1;display:block;margin-bottom:2px;}
.lv-nm{font-family:'Rajdhani',sans-serif;font-size:13.5px;font-weight:700;letter-spacing:.14em;display:block;margin-bottom:5px;}
.lv-rng{font-family:'Space Mono',monospace;font-size:8.5px;opacity:.48;}
.lv1{border-color:rgba(110,120,135,.26);background:rgba(110,120,135,.04);}.lv1 .lv-n,.lv1 .lv-nm{color:#8A96A6;}
.lv2{border-color:rgba(26,74,138,.3);background:rgba(26,74,138,.05);}.lv2 .lv-n,.lv2 .lv-nm{color:#5B9BD5;}
.lv3{border-color:rgba(201,162,39,.36);background:rgba(201,162,39,.05);}.lv3 .lv-n,.lv3 .lv-nm{color:var(--gold);}
.lv4{border-color:rgba(39,174,96,.32);background:rgba(39,174,96,.05);}.lv4 .lv-n,.lv4 .lv-nm{color:#2ECC71;}

/* CAMPUS QUOTE */
.campus{position:relative;height:380px;overflow:hidden;}
.campus img{width:100%;height:100%;object-fit:cover;object-position:center 65%;filter:brightness(.3) saturate(.6);}
.campus::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 10%,rgba(6,15,8,.6));}
.campus-inner{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;}
.campus-q{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,3.2vw,34px);font-weight:300;font-style:italic;color:#fff;line-height:1.55;max-width:620px;margin-bottom:12px;}
.campus-q strong{font-style:normal;font-weight:600;color:var(--gold);}
.campus-by{font-family:'Space Mono',monospace;font-size:8.5px;letter-spacing:.18em;color:rgba(255,255,255,.25);}

/* CTA */
.cta-sec{padding:110px 0;text-align:center;position:relative;overflow:hidden;}
.cta-sec::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(11,61,46,.32) 0%,transparent 65%);pointer-events:none;}
.cta-sec::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(201,162,39,.05) 0%,transparent 55%);pointer-events:none;}
.cta-h{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,6vw,62px);font-weight:300;font-style:italic;margin-bottom:10px;position:relative;z-index:1;}
.cta-h .ko{font-family:'Noto Sans KR',sans-serif;font-style:normal;font-weight:900;font-size:.68em;display:block;color:rgba(255,255,255,.8);}
.cta-h em{color:var(--gold);}
.cta-p{font-size:14.5px;color:rgba(255,255,255,.36);margin-bottom:44px;position:relative;z-index:1;line-height:1.8;}

/* FOOTER */
footer{border-top:1px solid var(--border);padding:26px 52px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.ft-l{font-size:11.5px;color:rgba(255,255,255,.24);line-height:1.7;}
.ft-l b{color:rgba(255,255,255,.42);}
.ft-links{display:flex;gap:16px;align-items:center;}
.ft-links a{color:rgba(255,255,255,.45);text-decoration:none;font-size:12px;transition:.2s;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;}
.ft-links a:hover{color:var(--gold);}
.ft-r{font-family:'Space Mono',monospace;font-size:7.5px;color:rgba(255,255,255,.12);letter-spacing:.1em;}
@media(max-width:640px){footer{flex-direction:column;gap:14px;text-align:center;padding:18px 20px;}.ft-links{justify-content:center;flex-wrap:wrap;gap:8px;}}

/* REVEAL */
.r{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease;}
.r.vis{opacity:1;transform:none;}
.r.d1{transition-delay:.1s;}.r.d2{transition-delay:.2s;}.r.d3{transition-delay:.3s;}
