/* ============================================================
   PRIME UNIFORMS — Custom Compact Header
   Built fresh for the pu-header markup. Single bar, ~64px tall.
   Brand gold #FFDA48 only accent color.
   ============================================================ */

:root{
  --pu-gold:#FFDA48;
  --pu-ink:#1a1c22;
  --pu-grey:#6b6e76;
  --pu-line:#ececec;
  --pu-ease:0.22s ease;
}

.pu-header{ position:relative; z-index:1000; }


/* Top bar — uses the site's actual dark tone (#344049, matches
   the existing widget_info divider color elsewhere on the site) */
.pu-topbar{
  background:#344049;
}
.pu-topbar-row{
  max-width:1360px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:8px;
  padding:7px 24px;
}
.pu-topbar-left, .pu-topbar-right{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}
.pu-topbar-item{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  color:#c7ccd1;
  text-decoration:none;
  white-space:nowrap;
  transition:color var(--pu-ease);
}
.pu-topbar-item:hover{ color:var(--pu-gold); text-decoration:none; }
.pu-topbar-static{ cursor:default; }
.pu-topbar-static:hover{ color:#c7ccd1; }
.pu-topbar-item img{ height:14px; width:auto; }
.pu-topbar-item i{ font-size:13px; color:var(--pu-gold); }

.pu-bar{
  background:#fff;
  border-bottom:1px solid var(--pu-line);
  position:relative;
  z-index:999;
  transition:box-shadow 0.25s ease;
}

/* ---- STICKY NAV (JS-powered, bypasses overflow:hidden ancestor) ---- */
.pu-sticky{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:9999 !important;
  background:#fff !important;
  border-bottom:1px solid var(--pu-line) !important;
  box-shadow:0 6px 24px rgba(0,0,0,0.10);
  animation:puSlideDown 0.25s ease;
}
@keyframes puSlideDown{
  from{ transform:translateY(-100%); }
  to  { transform:translateY(0); }
}
.pu-bar-row{
  max-width:1360px;
  margin:0 auto;
  display:flex;
  align-items:center;
  height:74px;
  gap:28px;
  padding:0 24px;
}

/* Logo */
.pu-logo{
  flex-shrink:0;
  display:flex;
  align-items:center;
  height:100%;
}
.pu-logo img{
  height:42px;
  width:auto;
  display:block;
}

/* Nav */
.pu-nav{ flex:1; min-width:0; }
.pu-nav-list{
  list-style:none;
  margin:0; padding:0;
  display:flex;
  align-items:center;
  gap:2px;
  height:100%;
}
.pu-nav-list > li{
  position:relative;
  height:100%;
  display:flex;
  align-items:center;
}
.pu-nav-list > li > a{
  display:flex;
  align-items:center;
  height:100%;
  padding:0 18px;
  font-family:Arial, Helvetica, sans-serif;
  font-size:15.5px;
  font-weight:700;
  letter-spacing:0.02em;
  color:var(--pu-ink);
  text-decoration:none;
  position:relative;
  white-space:nowrap;
  transition:color 0.25s ease;
  z-index:1;
}
.pu-nav-list > li > a::before{
  content:'';
  position:absolute;
  left:6px; right:6px; top:50%;
  height:0;
  background:var(--pu-gold);
  border-radius:20px;
  transform:translateY(-50%);
  transition:height 0.25s cubic-bezier(.4,0,.2,1);
  z-index:-1;
}
.pu-nav-list > li:hover > a{ color:#000; }
.pu-nav-list > li:hover > a::before{ height:34px; }

/* Dropdown */
.pu-has-drop{ position:relative; }
.pu-drop{
  list-style:none;
  margin:0; padding:6px 0;
  position:absolute;
  top:100%; left:0;
  min-width:210px;
  background:#fff;
  border-top:2px solid var(--pu-gold);
  box-shadow:0 18px 40px rgba(0,0,0,0.12);
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:all var(--pu-ease);
}
.pu-has-drop:hover .pu-drop{
  opacity:1; visibility:visible; transform:translateY(0);
}
.pu-drop li a{
  display:block;
  padding:9px 18px;
  font-size:13px;
  color:#555;
  text-decoration:none;
  border-left:2px solid transparent;
  transition:all var(--pu-ease);
  white-space:nowrap;
}
.pu-drop li a:hover{
  background:#faf8f0;
  color:#000;
  border-left-color:var(--pu-gold);
  padding-left:22px;
}

/* Right cluster */
.pu-right{
  flex-shrink:0;
  display:flex;
  align-items:center;
  gap:6px;
}
.pu-icon-link{
  width:36px; height:36px;
  display:flex; align-items:center; justify-content:center;
  border-radius:50%;
  background:#344049;
  color:#fff;
  font-size:16px;
  text-decoration:none;
  transition:all var(--pu-ease);
  flex-shrink:0;
}
.pu-icon-link i{ color:#fff; transition:color var(--pu-ease); }
.pu-icon-link:hover{
  background:var(--pu-gold);
  transform:translateY(-2px);
  box-shadow:0 6px 14px rgba(255,218,72,0.4);
}
.pu-icon-link:hover i{ color:#000; }

.pu-cta{
  flex-shrink:0;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  background:var(--pu-gold);
  color:#000;
  font-size:12.5px;
  font-weight:700;
  letter-spacing:0.02em;
  padding:9px 18px;
  border-radius:4px;
  text-decoration:none;
  margin-left:10px;
  transition:all var(--pu-ease);
}
.pu-cta:hover{
  background:#000;
  color:var(--pu-gold);
  text-decoration:none;
}

/* Burger (mobile only) */
.pu-burger{
  display:none;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  width:40px; height:40px;
  background:#344049;
  border:none;
  border-radius:6px;
  cursor:pointer;
  margin-left:8px;
  flex-shrink:0;
}
.pu-burger span{
  display:block;
  width:20px;
  height:2px;
  background:#fff;
  border-radius:2px;
  transition:all 0.25s ease;
}

/* Mobile drawer */
.pu-drawer{
  position:fixed;
  top:0; right:-300px;
  width:280px; height:100%;
  background:#fff;
  z-index:1101;
  box-shadow:-12px 0 32px rgba(0,0,0,0.15);
  transition:right 0.28s ease;
  overflow-y:auto;
}
.pu-drawer.pu-open{ right:0; }
.pu-drawer-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:18px 20px;
  border-bottom:1px solid var(--pu-line);
}
.pu-drawer-head img{ height:30px; }
.pu-drawer-head button{
  background:none; border:none; font-size:26px; line-height:1; cursor:pointer; color:#333;
}
.pu-drawer-list{ list-style:none; margin:0; padding:8px 0; }
.pu-drawer-list li a{
  display:block;
  padding:13px 20px;
  font-size:14px;
  font-weight:600;
  color:var(--pu-ink);
  text-decoration:none;
  border-bottom:1px solid #f3f3f3;
}
.pu-drawer-contact{
  display:flex; flex-direction:column; gap:2px;
  padding:14px 20px;
  border-top:1px solid var(--pu-line);
}
.pu-drawer-contact a{
  font-size:12.5px;
  color:#666;
  text-decoration:none;
  padding:6px 0;
}
.pu-drawer-overlay{
  display:none;
  position:fixed; inset:0;
  background:rgba(0,0,0,0.4);
  z-index:1100;
}
.pu-drawer-overlay.pu-open{ display:block; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1100px){
  .pu-nav-list > li > a{ padding:0 13px; font-size:14px; }
}

@media (max-width: 880px){
  .pu-topbar{ display:none !important; }
  .pu-nav{ display:none !important; }
  .pu-icon-link{ display:none !important; }
  .pu-cta{ display:none !important; }
  .pu-burger{ display:flex !important; }
  .pu-bar-row{ gap:0; justify-content:space-between; }
}

@media (max-width: 480px){
  .pu-bar-row{ height:56px; padding:0 16px; }
  .pu-logo img{ height:28px; }
}