.kilink-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  height: 68px;
  border-bottom: 1px solid rgba(31, 31, 36, .09);
  background: rgba(255, 249, 244, .96);
  backdrop-filter: blur(16px);
}

.kilink-header *, .kilink-header *::before, .kilink-header *::after { box-sizing: border-box; }
.kilink-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: min(1120px, calc(100% - 28px));
  height: 100%;
  margin: 0 auto;
  gap: 12px;
}
.kilink-header-brand { display: inline-flex; align-items: center; min-width: 0; gap: 10px; color: #1f1f24; text-decoration: none; }
.kilink-header-brand img { display: block; width: 118px; height: 40px; object-fit: contain; }
.kilink-header-brand span { border-left: 1px solid rgba(31, 31, 36, .18); padding-left: 10px; color: #5b5d66; font: 800 10px/1.2 Manrope, sans-serif; letter-spacing: .13em; text-transform: uppercase; white-space: nowrap; }
.kilink-header-actions { display: flex; align-items: center; gap: 10px; }
.kilink-header-reserve, .kilink-menu-reserve {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 10px 18px; border-radius: 999px;
  background: #ed971b; color: #fff !important; font: 800 14px/1.2 Manrope, sans-serif;
  text-align: center; text-decoration: none; white-space: nowrap;
}
.kilink-header-reserve:hover, .kilink-menu-reserve:hover { background: #bf710d; color: #fff !important; }
.kilink-header-reserve { display: none; }
.kilink-menu-toggle, .kilink-menu-close {
  display: flex; align-items: center; justify-content: center;
  width: 46px; height: 46px; padding: 0; border: 1px solid rgba(31,31,36,.12);
  border-radius: 12px; background: #fff; color: #1f1f24; cursor: pointer;
}
.kilink-menu-toggle { flex-direction: column; gap: 5px; }
.kilink-menu-toggle span { display: block; width: 21px; height: 2px; border-radius: 2px; background: currentColor; }
.kilink-menu-toggle:focus-visible, .kilink-menu-close:focus-visible, .kilink-menu a:focus-visible, .kilink-menu button:focus-visible { outline: 3px solid #ed971b; outline-offset: 3px; }
.kilink-menu-backdrop { position: fixed; inset: 0; z-index: 1; height: 100dvh; background: rgba(20, 20, 25, .55); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .2s, visibility .2s; }
.kilink-menu { position: fixed; top: 0; right: 0; z-index: 2; display: flex; flex-direction: column; width: min(390px, 100%); height: 100vh; height: 100dvh; padding: 16px 20px 24px; overflow-y: auto; overscroll-behavior: contain; border-left: 1px solid rgba(31,31,36,.1); background: #fffaf5; box-shadow: -16px 0 38px rgba(31,31,36,.18); opacity: 0; visibility: hidden; transition: opacity .25s, visibility .25s; }
.kilink-header.is-open .kilink-menu-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }
.kilink-header.is-open .kilink-menu { opacity: 1; visibility: visible; }
.kilink-menu-top { display: flex; align-items: center; justify-content: space-between; flex: 0 0 auto; min-height: 50px; margin-bottom: 12px; }
.kilink-menu-top strong { font: 800 18px Sora, sans-serif; }
.kilink-menu-close { font-size: 28px; line-height: 1; }
.kilink-menu-list { flex: 1 0 auto; list-style: none; margin: 0; padding: 0; }
.kilink-menu-list li { margin: 0; }
.kilink-menu-list a, .kilink-menu-install, .kilink-menu-link-button { display: block; width: 100%; min-height: 48px; padding: 12px 4px; border: 0; border-bottom: 1px solid rgba(31,31,36,.11); background: transparent; color: #1f1f24 !important; font: 700 15px/1.4 Manrope, sans-serif; text-align: left; text-decoration: none; cursor: pointer; }
.kilink-menu-list a:hover, .kilink-menu-list a[aria-current="page"], .kilink-menu-list button:hover { color: #a65d08 !important; }
.kilink-menu-install[hidden] { display: none; }
.kilink-menu-list a[aria-current="page"] { padding-left: 12px; border-left: 3px solid #ed971b; background: #fff0d9; }
.kilink-menu-list a span { float: right; }
.kilink-menu-reserve { flex: 0 0 auto; width: 100%; margin-top: 18px; }
html:has(body.kilink-menu-open) { overflow: hidden; }
.kilink-reading-progress { position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: #ed971b; transform: scaleX(0); transform-origin: left; pointer-events: none; }
.kilink-mobile-nav { display: none; }

@media (max-width: 700px) {
  body:has(.kilink-mobile-nav) { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
  .kilink-mobile-nav {
    position: fixed; right: 0; bottom: 0; left: 0; z-index: 900;
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px; min-height: 68px;
    padding: 5px max(12px, env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
    border-top: 1px solid rgba(31,31,36,.12); background: rgba(255,250,245,.97);
    box-shadow: 0 -12px 32px rgba(31,31,36,.10); backdrop-filter: blur(18px);
    transition: transform .22s ease, opacity .22s ease;
  }
  .kilink-mobile-nav-guest { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .kilink-mobile-nav-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .kilink-mobile-tab {
    position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 2px; min-height: 54px; border-radius: 14px; color: #56535a; text-decoration: none;
    font: 800 10px/1.2 Manrope, sans-serif; -webkit-tap-highlight-color: transparent;
  }
  .kilink-mobile-tab svg { width: 23px; height: 23px; flex: 0 0 auto; }
  .kilink-mobile-tab[aria-current="page"] { color: #a75b00; background: #fff0dc; }
  .kilink-mobile-tab[aria-current="page"]::before { content: ""; position: absolute; top: -5px; width: 25px; height: 3px; border-radius: 0 0 3px 3px; background: #ed971b; }
  .kilink-mobile-tab-primary svg { width: 36px; height: 36px; padding: 7px; border-radius: 12px; background: #ed971b; color: #fff; }
  .kilink-mobile-tab:focus-visible { outline: 3px solid #ed971b; outline-offset: -2px; }
  body.kilink-menu-open .kilink-mobile-nav, body:has(input:focus, textarea:focus, select:focus) .kilink-mobile-nav { transform: translateY(120%); opacity: 0; pointer-events: none; }
}

@media (prefers-reduced-motion: no-preference) {
  .kilink-motion-ready .kilink-motion-item { opacity: 0; transform: translate3d(0, 18px, 0); transition: opacity .55s ease, transform .55s cubic-bezier(.2,.7,.25,1); transition-delay: var(--motion-delay, 0ms); }
  .kilink-motion-ready .kilink-motion-item.is-visible { opacity: 1; transform: translate3d(0, 0, 0); }
  .home-refresh-accordions details[open] > :not(summary) { animation: kilink-accordion-in .26s ease both; }
  .kilink-mobile-tab:active, .button:active, .kilink-header-reserve:active { transform: scale(.97); }
  @keyframes kilink-accordion-in { from { opacity: .3; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }
}

@media (min-width: 600px) {
  .kilink-header { height: 76px; }
  .kilink-header-reserve { display: inline-flex; }
  .kilink-header-brand img { width: 128px; height: 43px; }
}

@media (max-width: 390px) {
  .kilink-header-brand img { width: 106px; }
  .kilink-header-brand span { font-size: 9px; padding-left: 8px; }
  .kilink-menu { width: 100%; border-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .kilink-menu, .kilink-menu-backdrop, .kilink-mobile-nav { transition: none; }
  html { scroll-behavior: auto; }
}
.kilink-discovery-return { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 4px 16px; padding: 10px 16px; background: #fff0d6; color: #252429; font: 500 13px/1.5 Manrope, sans-serif; text-align: center; }
.kilink-discovery-return a { display: inline-flex; align-items: center; min-height: 36px; color: #713d00; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.kilink-discovery-return { position:relative; padding-right:60px; }
.kilink-discovery-return[hidden] { display:none; }
.kilink-discovery-close { position:absolute; top:50%; right:8px; transform:translateY(-50%); display:grid; place-items:center; width:44px; height:44px; padding:0; border:0; border-radius:50%; background:transparent; color:#713d00; cursor:pointer; }
.kilink-discovery-close:hover { background:#eac99366; }
.kilink-discovery-close:focus-visible { outline:3px solid #a35d0d; outline-offset:-3px; }
@media (max-width: 699px) {
  .kilink-discovery-return { flex-wrap:nowrap; justify-content:flex-start; gap:0; min-height:44px; padding:0 56px 0 20px; background:#faf3e7; border-bottom:1px solid #eadfcd; text-align:left; }
  .kilink-discovery-return > span { display:none; }
  .kilink-discovery-return a { gap:8px; min-height:44px; font-size:13px; font-weight:650; text-decoration:none; }
  .kilink-discovery-return a:hover { text-decoration:underline; }
  .kilink-discovery-close { right:4px; color:#876a49; }
}
.kilink-brand-k { color: #b86200; font-weight: 800; }
.kilink-menu-list a .kilink-brand-k { float: none; color: #b86200; }
