/* Shared header for schedules, mountain exploration, and About. */
.top {
  height:64px;
  position:sticky;
  top:0;
  z-index:2;
  border-bottom:1px solid #dce2dd;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(10px);
  color:#17221d;
  font-family:Pretendard,"Apple SD Gothic Neo","Noto Sans KR",Arial,sans-serif;
  line-height:1.5;
}
.top-in {
  max-width:1180px;
  height:100%;
  margin:auto;
  padding:0 20px;
  display:flex;
  align-items:center;
  gap:16px;
}
.top .brand {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  flex-shrink:0;
  color:inherit;
  text-decoration:none;
}
.top .brand-logo { display:block; width:116px; height:32px; }
.primary-nav { display:flex; align-items:center; gap:8px; margin-left:auto; }
.primary-nav a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 12px;
  border-radius:8px;
  color:#17221d;
  font-size:13px;
  font-weight:750;
  text-decoration:none;
  white-space:nowrap;
}
.primary-nav a:hover { background:#e8f1eb; color:#184a39; }
.primary-nav a[aria-current="page"] { background:#184a39; color:#fff; }
.top a:focus-visible { outline:3px solid #176dc1; outline-offset:3px; }
@media(max-width:680px) {
  .top { height:57px; }
  .top-in { padding-inline:14px; }
}
@media(max-width:520px) {
  .top { height:auto; min-height:76px; }
  .top-in { flex-wrap:wrap; gap:0; padding-block:7px; }
  .top .brand { min-height:30px; }
  .primary-nav { width:100%; justify-content:flex-end; gap:8px; }
  .primary-nav a { min-height:30px; padding:0 8px; font-size:12px; }
}
@media(max-width:360px) {
  .top-in { padding-inline:12px; }
  .top .brand-logo { width:96px; height:auto; }
}
