/* Shph v1.9.4 — stable responsive headers and non-blinking menu controls */
:root{
  --shph-header-ease:cubic-bezier(.22,1,.36,1);
  --shph-header-border:rgba(18,24,38,.11);
  --shph-header-surface:rgba(255,255,255,.9);
  --shph-header-panel:#fff;
  --shph-header-text:#161b26;
  --shph-header-muted:#687083;
  --shph-header-control:rgba(18,24,38,.045);
  --shph-header-control-hover:rgba(18,24,38,.075);
  --shph-header-shadow:0 18px 50px rgba(18,24,38,.10);
}
html[data-theme="dark"]{
  --shph-header-border:rgba(255,255,255,.10);
  --shph-header-surface:rgba(11,14,20,.90);
  --shph-header-panel:#111722;
  --shph-header-text:#f6f8fb;
  --shph-header-muted:#a8b0c0;
  --shph-header-control:rgba(255,255,255,.055);
  --shph-header-control-hover:rgba(255,255,255,.09);
  --shph-header-shadow:0 22px 60px rgba(0,0,0,.34);
}
.site-header{
  color:var(--shph-header-text)!important;
  background:var(--shph-header-surface)!important;
  border-bottom:1px solid var(--shph-header-border)!important;
  box-shadow:none;
  -webkit-backdrop-filter:saturate(150%) blur(18px);
  backdrop-filter:saturate(150%) blur(18px);
}
.site-header.is-scrolled{background:color-mix(in srgb,var(--shph-header-panel) 94%,transparent)!important;box-shadow:var(--shph-header-shadow)!important}
.site-header .navbar{min-height:74px}
.site-header .navbar-brand,.site-header .brand-copy strong{color:var(--shph-header-text)!important}
.site-header .brand-copy small{color:var(--shph-header-muted)!important}
.site-header .nav-link{color:color-mix(in srgb,var(--shph-header-text) 72%,transparent)!important;transform:none!important}
.site-header .nav-link:hover,.site-header .nav-link:focus-visible,.site-header .nav-link.active{color:var(--shph-header-text)!important;background:var(--shph-header-control)!important}
.site-header .nav-link.active{background:color-mix(in srgb,var(--shph-primary) 10%,var(--shph-header-control))!important}
.site-header .header-actions .icon-button{
  color:var(--shph-header-text)!important;
  border-color:var(--shph-header-border)!important;
  background:var(--shph-header-control)!important;
  box-shadow:none!important;
  transform:none!important;
}
.site-header .header-actions .icon-button:hover,.site-header .header-actions .icon-button:focus-visible{background:var(--shph-header-control-hover)!important;border-color:color-mix(in srgb,var(--shph-primary) 25%,var(--shph-header-border))!important}
.site-header .btn-subscribe{background:var(--shph-header-text)!important;color:var(--shph-header-panel)!important;box-shadow:none!important;transform:none!important}
.site-header .btn-subscribe:hover,.site-header .btn-subscribe:focus-visible{background:var(--shph-primary)!important;color:#fff!important}

.shph-menu-toggle,.shph-header-menu-button{
  --menu-line:currentColor;
  position:relative;
  display:none!important;
  place-items:center;
  width:46px!important;
  height:46px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--shph-header-border)!important;
  border-radius:15px!important;
  background:var(--shph-header-control)!important;
  color:var(--shph-header-text)!important;
  box-shadow:none!important;
  transform:none!important;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease!important;
}
.shph-menu-toggle:hover,.shph-menu-toggle:focus-visible,.shph-header-menu-button:hover,.shph-header-menu-button:focus-visible{
  background:var(--shph-header-control-hover)!important;
  border-color:color-mix(in srgb,var(--shph-primary) 28%,var(--shph-header-border))!important;
  color:var(--shph-header-text)!important;
  outline:0!important;
}
.shph-menu-toggle:focus-visible,.shph-header-menu-button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--shph-primary) 22%,transparent)!important}
.shph-hamburger{position:relative;display:block;width:20px;height:16px;pointer-events:none}
.shph-hamburger-line{
  position:absolute;
  top:50%;
  left:50%;
  display:block;
  width:20px;
  height:2px;
  border-radius:999px;
  background:var(--menu-line);
  transform-origin:center;
  transition:none;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  will-change:transform,opacity;
}
.shph-hamburger-line:nth-child(1){transform:translate3d(-50%,calc(-50% - 6px),0)}
.shph-hamburger-line:nth-child(2){transform:translate3d(-50%,-50%,0) scaleX(.74)}
.shph-hamburger-line:nth-child(3){transform:translate3d(-50%,calc(-50% + 6px),0)}
html[data-shph-header-motion-ready="true"] .shph-hamburger-line{transition:transform .24s var(--shph-header-ease),opacity .14s ease}
.shph-menu-toggle[aria-expanded="true"],.shph-header-menu-button[aria-expanded="true"]{background:color-mix(in srgb,var(--shph-primary) 11%,var(--shph-header-panel))!important;border-color:color-mix(in srgb,var(--shph-primary) 34%,var(--shph-header-border))!important;color:var(--shph-primary)!important}
.shph-menu-toggle[aria-expanded="true"] .shph-hamburger-line:nth-child(1),.shph-header-menu-button[aria-expanded="true"] .shph-hamburger-line:nth-child(1){transform:translate3d(-50%,-50%,0) rotate(45deg)}
.shph-menu-toggle[aria-expanded="true"] .shph-hamburger-line:nth-child(2),.shph-header-menu-button[aria-expanded="true"] .shph-hamburger-line:nth-child(2){opacity:0;transform:translate3d(-50%,-50%,0) scaleX(.2)}
.shph-menu-toggle[aria-expanded="true"] .shph-hamburger-line:nth-child(3),.shph-header-menu-button[aria-expanded="true"] .shph-hamburger-line:nth-child(3){transform:translate3d(-50%,-50%,0) rotate(-45deg)}

@media(min-width:992px){
  .shph-menu-toggle,.shph-header-menu-button,.shph-header-menu{display:none!important}
  .shph-public-nav-panel{display:flex!important;align-items:center;visibility:visible!important;opacity:1!important;transform:none!important}

  /* Desktop administration uses a persistent navigation rail, so no hamburger is needed. */
  .shph-nav-drawer,
  .shph-nav-drawer.is-open,
  body.shph-sidebar-open .shph-nav-drawer{
    width:288px!important;
    max-width:288px!important;
    transform:none!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    border-radius:0!important;
    box-shadow:none!important;
    transition:none!important;
    will-change:auto!important;
  }
  .page-wrapper.compact-wrapper .page-body-wrapper .page-body,
  .page-wrapper.compact-wrapper .page-body-wrapper .sidebar-wrapper~.page-body{
    width:calc(100% - 288px)!important;
    margin-left:288px!important;
  }
  .page-wrapper.compact-wrapper .page-body-wrapper>.footer{
    width:calc(100% - 288px)!important;
    margin-left:288px!important;
  }
}
@media(max-width:991.98px){
  .shph-menu-toggle,.shph-header-menu-button{display:grid!important}
  .shph-header-menu{display:flex!important}
  .site-header{z-index:1052!important}
  .site-header .navbar{min-height:68px}
  .shph-public-nav-panel{
    position:absolute!important;
    top:calc(100% + 9px)!important;
    left:12px!important;
    right:12px!important;
    display:block!important;
    max-height:calc(100dvh - 92px)!important;
    margin:0!important;
    padding:12px!important;
    overflow:auto!important;
    border:1px solid var(--shph-header-border)!important;
    border-radius:20px!important;
    background:color-mix(in srgb,var(--shph-header-panel) 97%,transparent)!important;
    box-shadow:var(--shph-header-shadow)!important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-8px) scale(.985);
    transform-origin:top right;
    transition:none!important;
    -webkit-backdrop-filter:blur(22px);
    backdrop-filter:blur(22px);
  }
  html[data-shph-header-motion-ready="true"] .shph-public-nav-panel{transition:opacity .2s ease,transform .28s var(--shph-header-ease),visibility 0s linear .28s!important}
  html[data-shph-header-motion-ready="true"] .shph-public-nav-panel.is-open{transition-delay:0s!important}
  .shph-public-nav-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
  .shph-public-nav-panel .navbar-nav{gap:4px!important}
  .shph-public-nav-panel .nav-link{min-height:46px;padding:.78rem .88rem!important;border-radius:12px!important}
  .shph-public-nav-panel .header-actions{display:grid!important;grid-template-columns:44px 44px minmax(0,1fr)!important;gap:8px!important;margin-top:10px!important;padding-top:11px!important;border-top:1px solid var(--shph-header-border)!important}
  .shph-public-nav-panel .header-actions:not(:has(.icon-button[href*="cart.php"])){grid-template-columns:44px minmax(0,1fr)!important}
  .public-nav-backdrop{background:rgba(7,10,16,.48)!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:none!important}
  html[data-shph-header-motion-ready="true"] .public-nav-backdrop{transition:opacity .22s ease!important}
}
@media(max-width:575.98px){.shph-public-nav-panel{left:8px!important;right:8px!important;border-radius:17px!important}.shph-menu-toggle{width:44px!important;height:44px!important;border-radius:14px!important}}

/* Admin header follows the same interaction language while retaining admin theme tokens. */
.shph-admin-header{
  --shph-header-border:var(--shph-border);
  --shph-header-panel:var(--shph-surface);
  --shph-header-text:var(--shph-heading);
  --shph-header-control:var(--shph-surface-soft);
  --shph-header-control-hover:color-mix(in srgb,var(--theme-deafult) 8%,var(--shph-surface));
}
.page-wrapper.compact-wrapper .page-header.shph-admin-header,.shph-admin-header .header-wrapper{background:color-mix(in srgb,var(--shph-surface) 96%,transparent)!important;border-color:var(--shph-border)!important;color:var(--shph-text)!important}
.shph-header-menu-button[aria-expanded="true"]{transform:none!important}

@media(prefers-reduced-motion:reduce){.shph-hamburger-line,.shph-public-nav-panel,.public-nav-backdrop{transition:none!important}}
/* Neutralize legacy span-based toggler rules. */
.shph-menu-toggle>.shph-hamburger,.shph-header-menu-button>.shph-hamburger{display:block!important;width:20px!important;height:16px!important;margin:0!important;border-radius:0!important;background:transparent!important;opacity:1!important;transform:none!important}
.shph-menu-toggle .shph-hamburger-line,.shph-header-menu-button .shph-hamburger-line{display:block!important;margin:0!important;background:currentColor!important}
