@font-face {
  font-family: 'Nanum Myeongjo';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-0.woff) format('woff');
}
@font-face {
  font-family: 'Nanum Myeongjo';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/font-1.woff) format('woff');
}
@font-face {
  font-family: 'Nanum Myeongjo';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/font-2.woff) format('woff');
}
@font-face {
  font-family: 'Nanum Pen Script';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-3.woff) format('woff');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-4.woff) format('woff');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-5.woff) format('woff');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/font-6.woff) format('woff');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/font-7.woff) format('woff');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/font-8.woff) format('woff');
}

/* Requested features only. Existing layout and content remain in the original files. */
.hero-slides{position:relative;width:100%;overflow:hidden;isolation:isolate;touch-action:pan-y;background:#e6edef}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .65s,transform .65s;pointer-events:none}
.hero-slide.active{opacity:1;visibility:visible;pointer-events:auto}
.hero-slide>.photo,.hero-slide .device-image{width:100%!important;height:100%!important;position:absolute!important;inset:0!important;overflow:hidden}
.hero .hero-slide img{width:100%!important;height:100%!important;object-fit:cover!important}
.hero-slides[data-effect=slide] .hero-slide{transform:translateX(100%)}
.hero-slides[data-effect=slide] .hero-slide.active{transform:translateX(0)}
.hero-controls{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;align-items:center;gap:10px;z-index:4;pointer-events:none;flex-wrap:wrap}
.hero-controls button{pointer-events:auto}
.hero-dot{width:12px;height:12px;padding:0;border:1px solid #234f80;border-radius:50%;background:#fff;box-shadow:0 0 3px #fff}
.hero-dot.active{background:#234f80}
.hero-slides:empty{min-height:180px}
.president>.photo{z-index:0}
.consult>.photo:after{z-index:1}
.campus-track{touch-action:pan-x pan-y}
.extension-panel{border-top:1px solid #dbe2e9;margin-top:18px;padding-top:12px}
.extension-panel summary{font-weight:700;cursor:pointer;margin-bottom:12px}
.font-record{border:1px solid #dbe2e9;padding:10px;margin:10px 0;border-radius:6px}
.toolbar{flex-wrap:wrap;height:auto;min-height:60px}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

body:has(.workspace){height:100dvh;display:flex;flex-direction:column;overflow:hidden}.workspace{flex:1;min-height:0;height:auto!important}.toolbar,.statusbar{flex-shrink:0}.toolbar{min-height:65px}.statusbar{height:auto;min-height:29px}
