/* =========================================================
   ZYNERA HEALTHCARE — HEADER / NAVIGATION
   ========================================================= */

.zy-header{
  position: sticky; top:0; z-index:1000;
  background: rgba(255,255,255,0.88);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-bottom: 1px solid transparent;
  transition: border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease, background var(--dur-fast) ease;
}
.zy-header.is-scrolled{
  border-bottom-color: var(--zy-border);
  box-shadow: var(--zy-shadow-sm);
}

.zy-header-inner{
  display:flex; align-items:center; justify-content:space-between;
  height: 84px;
  gap: 24px;
}

.zy-brand{ display:flex; align-items:center; flex-shrink:0; }
.zy-brand-logo{ height: 65px; width:auto; }

.zy-nav{ display:flex; align-items:center; gap: 36px; margin-left:auto; }

.zy-nav-list{
  list-style:none; display:flex; align-items:center; gap: 34px;
  margin:0; padding:0;
}

.zy-nav-link{
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 0.96rem;
  color: var(--zy-navy-deep);
  position: relative;
  padding: 6px 0;
  transition: color var(--dur-fast) ease;
}
.zy-nav-link::after{
  content:""; position:absolute; left:0; bottom:0; height:2px; width:0;
  background: var(--zy-orange);
  transition: width var(--dur-fast) var(--ease-premium);
}
.zy-nav-link:hover{ color: var(--zy-orange); }
.zy-nav-link:hover::after, .zy-nav-link.is-active::after{ width:100%; }
.zy-nav-link.is-active{ color: var(--zy-orange); }

.zy-nav-cta{ flex-shrink:0; }
.zy-nav-cta .btn-zy{ padding: 12px 24px; font-size: 0.9rem; }

/* --- Burger (mobile) --- */
.zy-burger{
  display:none; flex-direction:column; justify-content:center; align-items:center;
  gap:5px; width:46px; height:46px; border-radius:12px;
  background: var(--zy-off-white); border:1px solid var(--zy-border);
  cursor:pointer; flex-shrink:0;
}
.zy-burger span{
  display:block; width:20px; height:2px; background: var(--zy-navy-deep);
  border-radius: 2px;
  transition: transform var(--dur-fast) var(--ease-premium), opacity var(--dur-fast) ease;
}
.zy-burger[aria-expanded="true"] span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.zy-burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.zy-burger[aria-expanded="true"] span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }

.zy-nav-backdrop{
  position: fixed; inset:0; background: rgba(18,25,58,0.35);
  opacity:0; visibility:hidden; transition: opacity var(--dur-med) ease, visibility var(--dur-med) ease;
  z-index: 998;
}
.zy-nav-backdrop.is-open{ opacity:1; visibility:visible; }

/* --- Mobile layout --- */
@media (max-width: 991.98px){
  .zy-header-inner{ height: 74px; }
  .zy-brand-logo{ height: 38px; }
  .zy-burger{ display:flex; }

  .zy-nav{
    position: fixed; top:0; right:0; height:100vh; width: min(340px, 84vw);
    background:#fff;
    flex-direction:column; align-items:flex-start; justify-content:flex-start;
    padding: 100px 32px 40px;
    gap: 40px;
    transform: translateX(100%);
    transition: transform var(--dur-med) var(--ease-premium);
    z-index: 999;
    box-shadow: -20px 0 60px rgba(18,25,58,0.15);
  }
  .zy-nav.is-open{ transform: translateX(0); }

  .zy-nav-list{
    flex-direction: column; align-items:flex-start; gap: 6px; width:100%;
  }
  .zy-nav-link{
    display:block; width:100%; padding: 14px 4px; font-size:1.1rem;
    border-bottom: 1px solid var(--zy-border);
  }
  .zy-nav-link::after{ display:none; }

  .zy-nav-cta{ width:100%; margin-top: 10px; }
  .zy-nav-cta .btn-zy{ width:100%; padding: 15px; }
}
