/* 사이트 공통 헤더 + 전역 기본.
   헤더: 홈과 하위 페이지가 같은 한 벌을 쓴다(종전엔 두 벌이었다).
   스크롤바: 페이지마다 있다 없다 하면 그 폭만큼 중앙 정렬이 어긋나 페이지를 옮길 때 덜컥거린다. */

/* ── 스크롤바 숨김 (스크롤 자체는 그대로) ─────────────────── */
html{
  scrollbar-width:none;        /* Firefox */
  -ms-overflow-style:none;     /* 구형 Edge */
}
html::-webkit-scrollbar{width:0;height:0;display:none}   /* Chromium·WebKit */
body{overflow-x:hidden}        /* 가로 스크롤 방지 */

/* 내부 스크롤 영역도 같은 규칙을 따른다 */
.tblwrap,.site-menu{scrollbar-width:none;-ms-overflow-style:none}
.tblwrap::-webkit-scrollbar,.site-menu::-webkit-scrollbar{width:0;height:0;display:none}

.site-header{
  position:fixed; top:20px; left:50%; transform:translateX(-50%);
  transition:transform .28s ease, opacity .28s ease;
  width:calc(100% - 80px); max-width:1400px; z-index:900;
  background:rgba(17,17,17,.95);
  box-shadow:0 4px 30px rgba(0,0,0,.28);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  border-radius:10px; border:1px solid rgba(255,255,255,.06);
}
.site-header.is-hidden{transform:translateX(-50%) translateY(-160%);opacity:0;pointer-events:none}
@media (prefers-reduced-motion:reduce){.site-header{transition:none}}

.site-header-in{display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding:13px 26px;position:relative}

.site-logo{flex:0 0 auto;line-height:0}
.site-logo img{height:38px;width:auto;transition:opacity .25s ease}
.site-logo:hover img{opacity:.8}

.site-menu{list-style:none;display:flex;justify-content:flex-end;gap:38px;margin:0;padding:0;flex:1 1 auto}
.site-menu a{text-decoration:none;color:#e0e0e0;font-weight:500;font-size:15px;
  padding:5px 0;position:relative;white-space:nowrap;transition:color .25s ease}
.site-menu a:hover{color:#fff}
.site-menu a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;
  background:var(--point-color,#6CC24A);transition:width .25s ease}
.site-menu a:hover::after,.site-menu a.on::after{width:100%}
.site-menu a.on{color:var(--point-color,#6CC24A)}

.site-toggle{display:none;background:none;border:0;color:#e0e0e0;cursor:pointer;padding:6px;line-height:0}
.site-toggle svg{width:24px;height:24px;display:block}

/* 헤더가 떠 있으므로 본문이 그 아래에서 시작하게 한다 */
.has-fixed-header{padding-top:92px}

@media (max-width:880px){
  .site-header{top:12px;width:calc(100% - 24px);border-radius:8px}
  .site-header-in{flex-wrap:wrap;padding:11px 16px;gap:12px}
  .site-toggle{display:block;order:2}
  .site-menu{display:none;order:3;flex-basis:100%;flex-direction:column;gap:0;padding:6px 0 2px}
  .site-menu.open{display:flex}
  .site-menu li{border-top:1px solid rgba(255,255,255,.08)}
  .site-menu a{display:block;padding:13px 2px;font-size:15px}
  .site-menu a::after{display:none}
  .has-fixed-header{padding-top:74px}
}
