*{box-sizing:border-box}
body{margin:0;background:#F6F5F1;font-family:'Pretendard',system-ui,sans-serif;color:#1B1D22;-webkit-font-smoothing:antialiased;line-height:1.5}
a{color:#2C50C4;text-decoration:none}
a:hover{color:#1C348F}
.wrap{max-width:1160px;margin:0 auto}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:.02em;color:#2C50C4}
.eyebrow::before{content:"";width:22px;height:2px;background:#2C50C4;display:inline-block}
.mut{color:#7A7E88}
.brand{font-weight:700;font-size:16px;letter-spacing:-.01em;color:#fff}
.brand b{color:#9FB2FF}
.navpill{display:inline-flex;padding:7px 14px;border:1px solid #33384A;border-radius:999px;font-size:13px;font-weight:500;color:#C6C9D2;background:transparent;transition:.15s}
.navpill:hover{border-color:#9FB2FF;color:#fff}
.navpill.is-active{border-color:#2C50C4;background:#2C50C4;color:#fff}
.c-cta{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:999px;background:#2C50C4;color:#fff;font-size:13px;font-weight:600;transition:.15s}
.c-cta:hover{background:#1C348F;color:#fff}
.otable{width:100%;border-collapse:collapse;background:#fff;border:1px solid #E3E1D9;border-radius:12px;overflow:hidden}
.otable tr{border-bottom:1px solid #ECEAE2}
.otable tr:last-child{border-bottom:none}
.otable th{text-align:left;width:150px;padding:13px 20px;background:#FBFAF7;font-size:13px;font-weight:600;color:#6A6E78;vertical-align:top;white-space:nowrap}
.otable td{padding:13px 20px;font-size:15px;font-weight:500;color:#1B1D22;line-height:1.5}
.tag{display:inline-block;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:700;background:#141620;color:#fff}
.tag.b{background:#2C50C4}
.tag.o{background:#C4642C}
/* header */
.c-bar{background:#141620;color:#fff;padding:0 40px;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;z-index:50}
.c-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
/* hero */
.c-hero{padding:34px 40px 26px;background:#fff;border-bottom:1px solid #E3E1D9}
.c-hero-in{display:grid;grid-template-columns:1.3fr .9fr;gap:40px;align-items:end}
.c-h1{font-size:33px;line-height:1.2;font-weight:700;letter-spacing:-.02em;color:#141620;margin:12px 0 0}
.c-lead{font-size:15px;line-height:1.6;color:#4A4E58;margin:0}
/* meta strip */
.c-strip-out{background:#fff}
.c-strip{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#E3E1D9;border-top:1px solid #E3E1D9;border-bottom:1px solid #E3E1D9}
.c-stat{background:#F6F5F1;padding:16px 20px}
.c-sk{font-size:12px;color:#7A7E88;font-weight:600}
.c-sv{font-size:15px;color:#141620;font-weight:600;margin-top:4px;line-height:1.4}
/* section */
.c-sec{padding:28px 40px;border-top:1px solid #E9E7DF}
.c-sec:first-of-type{border-top:none}
.c-flex{display:flex;gap:14px;align-items:baseline;margin-bottom:18px;flex-wrap:wrap}
.c-h2{font-size:21px;line-height:1.3;font-weight:700;letter-spacing:-.01em;color:#141620;margin:0}
.c-sub{font-size:14px;line-height:1.6;color:#4A4E58;margin:0}
.c-pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.c-pcard{background:#fff;border:1px solid #E3E1D9;border-radius:12px;border-top:3px solid #2C50C4;padding:18px}
.c-pnum{font-size:12px;font-weight:700;color:#2C50C4}
.c-pt{font-size:15px;font-weight:700;color:#141620;margin:6px 0 5px}
.c-pp{font-size:13px;line-height:1.55;color:#4A4E58;margin:0}
.c-pol{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.c-plist{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.c-pcell{background:#fff;border:1px solid #E3E1D9;border-radius:11px;padding:14px 16px;display:flex;gap:11px;align-items:flex-start}
.c-dot{flex:none;width:24px;height:24px;border-radius:7px;background:#141620;color:#fff;font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center}
.c-pcell p{margin:0;font-size:13px;line-height:1.5;color:#2A2E38;font-weight:500;padding-top:3px}
.c-tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.c-tcard{background:#fff;border:1px solid #E3E1D9;border-radius:12px;padding:20px;border-left:3px solid #141620}
.c-tcard.b{border-left-color:#2C50C4}
.c-tcard.o{border-left-color:#C4642C}
.c-tp{font-size:13px;line-height:1.55;color:#4A4E58;margin:12px 0 0}
.c-irow{display:grid;grid-template-columns:44px 200px 1fr;gap:20px;align-items:start;background:#fff;border:1px solid #E3E1D9;border-radius:12px;padding:18px 22px}
.c-irow+.c-irow{margin-top:10px}
.c-rn{width:36px;height:36px;border-radius:9px;background:#EEF1FC;color:#2C50C4;font-weight:800;font-size:16px;display:flex;align-items:center;justify-content:center}
.c-idate{font-size:12px;font-weight:600;color:#7A7E88}
.c-iname{font-size:17px;font-weight:700;color:#141620;margin:4px 0 2px}
.c-iorg{font-size:12px;color:#7A7E88;line-height:1.5}
.c-ih3{font-size:15px;font-weight:700;color:#141620;margin:0}
.c-curr{list-style:none;margin:9px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:5px 20px}
.c-curr li{display:flex;gap:9px;font-size:13px;line-height:1.5;color:#3A3E48}
.c-curr li::before{content:"";flex:none;width:5px;height:5px;border-radius:2px;background:#2C50C4;margin-top:7px}
.c-curr em{font-style:normal;color:#A06A2C;font-weight:600}
.c-note{font-size:13px;color:#4A4E58;background:#F1EFE8;border-radius:9px;padding:10px 14px;margin-bottom:14px}
.foot{border-top:1px solid #E3E1D9;padding:24px 40px;color:#7A7E88;font-size:13px;line-height:1.6;background:#FBFAF7}
.foot b{color:#4A4E58}
.link-r{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:#2C50C4}
/* home: hero with image */
.h-hero{padding:38px 40px 30px;background:#fff;border-bottom:1px solid #E3E1D9}
.h-hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.h-hero h1{font-size:34px;line-height:1.22;font-weight:700;letter-spacing:-.02em;color:#141620;margin:14px 0 14px}
.h-hero h1 b{color:#2C50C4}
.h-hero-lead{font-size:15px;line-height:1.65;color:#4A4E58;margin:0 0 22px}
.h-actions{display:flex;gap:10px;flex-wrap:wrap}
.h-btn{display:inline-flex;align-items:center;gap:6px;padding:11px 20px;border-radius:10px;font-size:14px;font-weight:600;transition:.15s}
.h-btn.p{background:#2C50C4;color:#fff}
.h-btn.p:hover{background:#1C348F;color:#fff}
.h-btn.s{background:#fff;color:#141620;border:1px solid #D5D3CA}
.h-btn.s:hover{border-color:#2C50C4;color:#2C50C4}
.h-hero-img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px;border:1px solid #E3E1D9;display:block}
/* home: schedule timeline */
.h-time{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.h-tstep{background:#fff;border:1px solid #E3E1D9;border-radius:12px;padding:15px;border-top:3px solid #C9C7BE}
.h-tstep.b{border-top-color:#2C50C4}
.h-tstep.o{border-top-color:#C4642C}
.h-tstep.d{border-top-color:#141620}
.h-tnum{font-size:12px;font-weight:700;color:#7A7E88}
.h-tdate{font-size:16px;font-weight:700;color:#141620;margin:5px 0 3px}
.h-ttarget{font-size:13px;color:#4A4E58;font-weight:500}
/* home: program image cards */
.h-pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.h-pcard{background:#fff;border:1px solid #E3E1D9;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.h-pcard>img{width:100%;height:172px;object-fit:cover;display:block}
.h-pbody{padding:18px;display:flex;flex-direction:column;gap:9px;flex:1}
.h-pt{font-size:16px;font-weight:700;color:#141620;margin:2px 0}
.h-pmeta{font-size:13px;line-height:1.55;color:#4A4E58;margin:0}
.h-pmeta b{color:#141620;font-weight:600}
.h-pcard .c-cta2{margin-top:6px}
/* home: venue image cards */
.h-vcards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.h-vcard{background:#fff;border:1px solid #E3E1D9;border-radius:14px;overflow:hidden}
.h-vcard>img{width:100%;height:190px;object-fit:cover;display:block}
.h-vbody{padding:18px}
.h-vbody h3{margin:0 0 8px;font-size:16px;color:#141620}
.h-vbody p{margin:3px 0;font-size:13.5px;color:#4A4E58}
.h-vbody p b{color:#141620;font-weight:600}
/* home: survey banner (inactive) */
.h-survey{background:#141620;border-radius:14px;padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;flex-wrap:wrap}
.h-survey h3{margin:0 0 4px;font-size:16px;color:#fff}
.h-survey p{margin:0;font-size:13px;color:#C6C9D2}
.h-soon{background:#33384A;color:#C6C9D2;padding:10px 18px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap}
.c-cta2{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:#2C50C4}
/* subpage hero */
.p-hero{padding:30px 40px;background:#fff;border-bottom:1px solid #E3E1D9}
.p-hero .crumb{font-size:12.5px;color:#9A9EA8;margin-bottom:10px}
.p-hero .crumb a{color:#9A9EA8}
.p-hero h1{font-size:27px;line-height:1.28;font-weight:700;letter-spacing:-.02em;color:#141620;margin:0 0 9px}
.p-hero p{font-size:14px;line-height:1.65;color:#4A4E58;margin:0;max-width:780px}
/* generic cards + grids */
.gcard{background:#fff;border:1px solid #E3E1D9;border-radius:12px;padding:18px}
.gcard h3{margin:0 0 8px;font-size:15px;font-weight:700;color:#141620}
.gcard .tag{margin-bottom:9px}
.gcard p{margin:4px 0;font-size:13.5px;line-height:1.55;color:#4A4E58}
.gcard p b{color:#141620;font-weight:600}
.gcard ul{margin:6px 0 0;padding-left:18px}
.gcard li{font-size:13.5px;line-height:1.6;color:#4A4E58;margin:3px 0}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
/* schedule blocks */
.sch+.sch{margin-top:14px}
.sch{background:#fff;border:1px solid #E3E1D9;border-radius:14px;padding:2px 22px 16px}
.sch-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:16px 0 12px;border-bottom:1px solid #ECEAE2}
.sch-head h3{margin:0;font-size:16px;color:#141620}
.sch-head .m{font-size:13px;color:#7A7E88}
.sch .otable{border:none;border-radius:0;margin-top:2px}
.sch .otable th{width:120px;background:transparent;color:#2C50C4;font-weight:700}
/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.step2{background:#fff;border:1px solid #E3E1D9;border-radius:12px;padding:16px}
.step2 .n{width:26px;height:26px;border-radius:8px;background:#2C50C4;color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;margin-bottom:9px}
.step2 h4{margin:0 0 5px;font-size:14px;color:#141620}
.step2 p{margin:0;font-size:12.5px;line-height:1.5;color:#4A4E58}
/* apply choice cards */
.choice{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.chcard{display:block;background:#fff;border:1px solid #E3E1D9;border-left:3px solid #141620;border-radius:12px;padding:18px;transition:.15s}
.chcard:hover{box-shadow:0 4px 16px rgba(20,22,32,.08)}
.chcard.b{border-left-color:#2C50C4}
.chcard.o{border-left-color:#C4642C}
.chcard .t{font-size:16px;font-weight:700;color:#141620;display:block}
.chcard .d{font-size:13px;color:#4A4E58;margin-top:7px}
@media(max-width:820px){
.p-hero{padding-left:20px;padding-right:20px}
.g2,.g3,.g4,.steps,.choice{grid-template-columns:1fr}
.sch{padding-left:16px;padding-right:16px}
}
@media(max-width:820px){
.c-bar{padding:10px 20px}
.c-hero,.c-sec,.foot,.h-hero{padding-left:20px;padding-right:20px}
.c-hero-in,.c-pol,.h-hero-in{grid-template-columns:1fr;gap:20px}
.c-h1,.h-hero h1{font-size:26px}
.c-strip,.c-pgrid,.c-tgrid,.c-plist,.c-curr,.h-time,.h-pcards,.h-vcards{grid-template-columns:1fr}
.c-irow{grid-template-columns:1fr;gap:12px}
.c-nav{gap:6px}
.navpill,.c-cta{font-size:12px;padding:6px 11px}
.h-hero-img{aspect-ratio:16/9}
}

.card-btn{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:6px;padding:10px 16px;border-radius:9px;background:#2C50C4;color:#fff;font-size:13.5px;font-weight:600;transition:.15s}
.card-btn:hover{background:#1C348F;color:#fff}

.brand{display:inline-flex;align-items:center;gap:9px}
.brand-logo{height:30px;width:30px;object-fit:contain;flex:none}
.foot{display:flex;align-items:center;gap:16px}
.foot-logo{height:48px;width:48px;object-fit:contain;flex:none}
@media(max-width:820px){.brand-logo{height:26px;width:26px}.foot-logo{height:40px;width:40px}}
