
:root{
  --kr-navy:#123056;
  --kr-navy-deep:#0f2748;
  --kr-line:#d7e0ed;
  --kr-yellow:#e4a941;
  --kr-blue:#1e64b1;
  --kr-green:#19b34e;
}
.kr-container{max-width:1180px;margin:0 auto;padding:0 24px}
.kr-header{position:sticky;top:0;z-index:1100;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(18,48,86,.08)}
.kr-header__top-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 24px 8px}
.kr-brand{display:flex;align-items:center;gap:14px;color:var(--kr-navy);min-width:0;text-decoration:none}
.kr-brand img{width:52px;height:52px;object-fit:contain;flex:0 0 auto}
.kr-brand__title{font-size:1.18rem;line-height:1.2;font-weight:800;color:var(--kr-navy);margin:0}
.kr-brand__lead{font-size:.78rem;color:#4b5b70;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.kr-header__meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:0 0 auto}
.kr-header__tel{font-size:1.04rem;font-weight:800;color:var(--kr-navy);text-decoration:none}
.kr-header__hours{font-size:.72rem;color:#526579;text-align:right;max-width:340px;line-height:1.55}
.kr-menu-btn{display:none;border:1px solid rgba(18,48,86,.2);background:#fff;color:var(--kr-navy);border-radius:999px;padding:10px 16px;font-weight:700;cursor:pointer;align-items:center;justify-content:center;gap:4px}
.kr-menu-btn span{display:block;width:18px;height:2px;background:currentColor;border-radius:999px}
.kr-header__navwrap{border-top:1px solid rgba(18,54,93,.08);background:var(--kr-navy)}
.kr-header__navinner{max-width:1180px;margin:0 auto;padding:0 24px}
.kr-global-nav{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 0}
.kr-global-nav a{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;color:#fff;border-radius:999px;font-weight:700;font-size:.9rem;text-decoration:none;transition:background-color .2s ease,transform .2s ease}
.kr-global-nav a:hover,.kr-global-nav a:focus-visible{background:rgba(255,255,255,.14);transform:translateY(-1px)}
.kr-global-nav a[aria-current="page"]{background:rgba(255,255,255,.16)}
.kr-global-nav .kr-nav-cta{background:var(--kr-yellow);color:var(--kr-navy)}
.kr-section-navwrap{background:#f6f8fc;border-top:1px solid rgba(18,54,93,.08);border-bottom:1px solid rgba(18,54,93,.08)}
.kr-section-nav{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 0;flex-wrap:wrap}
.kr-section-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:999px;background:#fff;border:1px solid var(--kr-line);color:var(--kr-navy);font-weight:800;font-size:.88rem;line-height:1.3;white-space:nowrap;text-decoration:none}
.kr-section-nav a[aria-current="page"]{background:var(--kr-yellow);border-color:transparent;color:var(--kr-navy)}
.kr-section-nav a:hover,.kr-section-nav a:focus-visible{border-color:rgba(18,48,86,.25);transform:translateY(-1px)}
@media (max-width:860px){
  .kr-header__top-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'brand menu' 'meta meta';align-items:center;padding:12px 18px 10px;gap:12px}
  .kr-brand{grid-area:brand}
  .kr-header__meta{grid-area:meta;align-items:flex-start}
  .kr-menu-btn{grid-area:menu;display:inline-flex}
  .kr-header__navinner{padding:0 18px 14px}
  .kr-global-nav{display:none;flex-direction:column;align-items:stretch;gap:8px;padding:12px 0 0}
  .kr-global-nav.is-open{display:flex}
  .kr-global-nav a{text-align:left}
  .kr-section-nav{justify-content:flex-start;flex-wrap:nowrap;overflow:auto;padding:10px 0 12px;-webkit-overflow-scrolling:touch}
  .kr-section-nav a{flex:0 0 auto}
}
@media (max-width:767px){
  .kr-container{padding:0 16px}
  .kr-brand img{width:44px;height:44px}
  .kr-brand__title{font-size:1rem}
  .kr-brand__lead,.kr-header__hours,.kr-header__tel{display:none}
  .kr-header__top-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'brand menu';padding:10px 16px}
  .kr-header__meta{display:none}
  .kr-header__navinner{padding:0 16px 16px}
  .kr-global-nav a{padding:12px 14px;font-size:.98rem}
  .kr-section-nav{gap:8px;padding:8px 0 10px;scroll-snap-type:x proximity;scroll-padding-inline:16px}
  .kr-section-nav::-webkit-scrollbar{display:none}
  .kr-section-nav a{min-height:36px;padding:0 14px;font-size:.84rem;scroll-snap-align:start}
}
