/* Caledonian — cos-header.css */
.cos-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 900;
  height: var(--cos-header-h);
  display: flex;
  align-items: center;
  transition: background .35s var(--cos-ease), box-shadow .35s var(--cos-ease);
}
.cos-header.is-scrolled {
  background: rgba(11,25,38,.96);
  box-shadow: 0 1px 0 rgba(201,168,76,.15);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.cos-header__inner {
  width: 100%; max-width: var(--cos-max-w);
  margin-inline: auto;
  padding-inline: var(--cos-section-h);
  display: flex; align-items: center; gap: 2rem;
}

/* Logo */
.cos-logo { flex-shrink: 0; display: flex; align-items: center; gap: .625rem; text-decoration: none; }
.cos-logo__img { width: 36px; height: 36px; object-fit: contain; flex-shrink: 0; }
.cos-logo__wordmark { font-family: var(--cos-font-ui); line-height: 1; }
.cos-logo__wordmark-script { font-family: var(--cos-font-scotland); font-size: 1.4375rem; color: var(--cos-gold); display: block; line-height: 1; letter-spacing: .02em; }
.cos-logo__wordmark-sub { display: block; font-size: .5rem; letter-spacing: .26em; text-transform: uppercase; color: rgba(245,240,232,.45); margin-top: 3px; }

/* Nav */
.cos-nav { flex: 1; display: flex; justify-content: center; }
.cos-nav__list { display: flex; list-style: none; gap: 0; }
.cos-nav__link { display: block; padding: .5rem 1rem; font-family: var(--cos-font-ui); font-size: .8125rem; font-weight: 400; letter-spacing: .05em; color: rgba(245,240,232,.72); text-decoration: none; transition: color .2s; }
.cos-nav__link:hover, .cos-nav__link[aria-current="page"] { color: var(--cos-gold); }

/* Right zone */
.cos-header__right { display: flex; align-items: center; gap: .875rem; flex-shrink: 0; }
.cos-header__shop-btn {
  display: inline-flex; align-items: center; gap: .5rem;
  font-family: var(--cos-font-ui); font-size: .625rem; font-weight: 400;
  letter-spacing: .20em; text-transform: uppercase; text-decoration: none;
  color: var(--cos-navy); background: var(--cos-gold);
  border: 1px solid var(--cos-gold); padding: .625rem 1.375rem;
  white-space: nowrap; transition: background-color .3s, color .3s;
}
.cos-header__shop-btn:hover { background: transparent; color: var(--cos-gold); }

/* Cart */
.cos-cart-btn { position: relative; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; background: transparent; border: 1px solid rgba(245,240,232,.2); color: var(--cos-cream); cursor: pointer; text-decoration: none; transition: border-color .2s; }
.cos-cart-btn:hover { border-color: rgba(245,240,232,.5); }
.cos-cart-badge { position: absolute; top: 4px; right: 4px; width: 16px; height: 16px; border-radius: 50%; background: var(--cos-gold); color: var(--cos-navy); font-family: var(--cos-font-ui); font-size: .6rem; font-weight: 700; display: flex; align-items: center; justify-content: center; }

/* Hamburger */
.cos-hamburger { display: none; flex-direction: column; gap: 5px; width: 40px; height: 40px; align-items: center; justify-content: center; background: transparent; border: 1px solid rgba(245,240,232,.2); cursor: pointer; }
.cos-hamburger span { display: block; width: 20px; height: 1px; background: var(--cos-cream); transition: transform .25s, opacity .25s; }
.cos-hamburger.is-open span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.cos-hamburger.is-open span:nth-child(2) { opacity: 0; }
.cos-hamburger.is-open span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

/* Mobile drawer */
.cos-drawer { position: fixed; inset: 0; z-index: 950; display: flex; pointer-events: none; }
.cos-drawer.is-open { pointer-events: auto; }
.cos-drawer__overlay { flex: 1; background: rgba(11,25,38,.7); opacity: 0; transition: opacity .3s var(--cos-ease); }
.cos-drawer.is-open .cos-drawer__overlay { opacity: 1; }
.cos-drawer__panel { width: 320px; max-width: 88vw; background: var(--cos-navy-mid); transform: translateX(100%); transition: transform .35s var(--cos-ease); display: flex; flex-direction: column; overflow-y: auto; }
.cos-drawer.is-open .cos-drawer__panel { transform: none; }
.cos-drawer__head { display: flex; align-items: center; justify-content: space-between; padding: 1.25rem 1.5rem; border-bottom: 1px solid rgba(201,168,76,.12); }
.cos-drawer__close { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; background: transparent; border: 1px solid rgba(245,240,232,.15); color: var(--cos-cream); cursor: pointer; }
.cos-drawer__nav { padding: 1.5rem; display: flex; flex-direction: column; gap: .25rem; }
.cos-drawer__link { display: block; padding: .75rem 0; font-family: var(--cos-font-ui); font-size: .9375rem; color: rgba(245,240,232,.8); text-decoration: none; border-bottom: 1px solid rgba(245,240,232,.06); transition: color .2s; }
.cos-drawer__link:hover { color: var(--cos-gold); }
.cos-drawer__cta { margin-top: 1.5rem; display: block; text-align: center; font-family: var(--cos-font-ui); font-size: .8125rem; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; text-decoration: none; color: var(--cos-navy); background: var(--cos-gold); padding: .875rem; }

@media (max-width: 1024px) {
  .cos-nav { display: none; }
  .cos-header__shop-btn { display: none; }
  .cos-hamburger { display: flex; }
}
