/* HADS PREMIUM V13 — navigation companions & hero quick-access */
:root{
  --hads-violet:#7b4aa6;
  --hads-violet-2:#a15ed2;
  --hads-ink:#17131d;
  --hads-glass:rgba(255,255,255,.82);
}

/* Global floating top companion */
.hads-top-companion{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9997;
  display:flex;
  align-items:center;
  gap:10px;
  min-width:104px;
  height:48px;
  padding:0 18px;
  border:1px solid rgba(123,74,166,.24);
  border-radius:999px;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,237,249,.94));
  box-shadow:0 13px 30px rgba(58,31,80,.18), inset 0 1px 0 rgba(255,255,255,.95), 0 5px 0 rgba(123,74,166,.12);
  color:#5f3b77;
  font:800 12px/1 "Manrope",Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  transition:.25s ease;
  opacity:0;
  transform:translateY(12px);
  pointer-events:none;
}
.hads-top-companion.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}
.hads-top-companion:hover{transform:translateY(-4px) scale(1.03);box-shadow:0 18px 34px rgba(83,46,108,.24),inset 0 1px 0 #fff,0 7px 0 rgba(123,74,166,.16)}
.hads-top-companion .arrow{font-size:18px;line-height:1;color:var(--hads-violet)}

/* Shared premium quick-nav bubbles */
.hads-quicknav{
  display:flex;
  gap:10px;
  align-items:stretch;
  position:relative;
  z-index:7;
}
.hads-quicknav a{
  text-decoration:none;
  color:inherit;
}
.hads-qbubble{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:58px;
  padding:10px 15px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(244,236,249,.82));
  box-shadow:0 12px 24px rgba(45,27,58,.18),0 5px 0 rgba(113,69,144,.18),inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter:blur(12px);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.hads-qbubble:hover{
  transform:translateY(-5px) scale(1.035);
  border-color:rgba(154,81,199,.48);
  box-shadow:0 18px 34px rgba(73,38,96,.25),0 7px 0 rgba(113,69,144,.21),inset 0 1px 0 #fff;
}
.hads-qbubble .num{
  flex:0 0 auto;
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  color:white;
  background:linear-gradient(145deg,#9f5bc5,#6d4389);
  box-shadow:0 7px 15px rgba(112,62,142,.35),inset 0 1px 0 rgba(255,255,255,.35);
  font:800 11px/1 "Manrope",Arial,sans-serif;
}
.hads-qbubble .label{
  font:800 11px/1.15 "Manrope",Arial,sans-serif;
  letter-spacing:.01em;
}

/* OUR WORKWEAR — left vertical family rail */
.ww-family-rail{
  position:absolute;
  z-index:9;
  left:clamp(18px,3vw,54px);
  top:50%;
  transform:translateY(-50%);
  display:grid;
  gap:12px;
  width:210px;
}
.ww-family-rail .hads-qbubble{
  min-height:64px;
  background:linear-gradient(145deg,rgba(18,16,22,.78),rgba(77,48,96,.72));
  border-color:rgba(255,255,255,.18);
  color:white;
  box-shadow:0 14px 28px rgba(0,0,0,.30),0 5px 0 rgba(102,60,133,.30),inset 0 1px 0 rgba(255,255,255,.14);
}
.ww-family-rail .label{font-size:12px}
.ww-family-rail .hads-qbubble:hover{background:linear-gradient(145deg,rgba(39,26,47,.94),rgba(127,72,160,.90))}

/* Expertise quick steps at bottom of hero */
.expertise-hero-quicknav{
  position:absolute;
  z-index:8;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  width:min(1500px,calc(100% - 60px));
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.expertise-hero-quicknav .hads-qbubble{min-height:66px;padding:10px 12px}
.expertise-hero-quicknav .label{font-size:10.5px}
.expertise-hero-with-nav{position:relative;padding-bottom:112px!important}

/* WHO WE ARE / history quicknav integrated in hero */
.history-hero-quicknav{
  position:absolute;
  z-index:8;
  left:50%;
  bottom:28px;
  transform:translateX(-50%);
  width:min(980px,calc(100% - 48px));
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.history-hero-quicknav .hads-qbubble{min-height:66px}
.history-hero{position:relative;padding-bottom:112px!important}
.history-hero + .subnav{display:none!important}

@media(max-width:1100px){
  .ww-family-rail{left:18px;width:185px}
  .expertise-hero-quicknav{grid-template-columns:repeat(3,1fr);bottom:18px}
  .expertise-hero-with-nav{padding-bottom:180px!important}
}
@media(max-width:760px){
  .hads-top-companion{right:12px;bottom:14px;height:44px;min-width:86px;padding:0 14px;font-size:10px}
  .ww-family-rail{
    top:auto;bottom:18px;left:14px;right:14px;transform:none;width:auto;
    grid-template-columns:repeat(2,1fr);gap:8px;
  }
  .ww-family-rail .hads-qbubble{min-height:48px;padding:7px 9px;border-radius:15px}
  .ww-family-rail .hads-qbubble .num{width:28px;height:28px}
  .ww-family-rail .label{font-size:10px}
  .expertise-hero-quicknav{width:calc(100% - 24px);grid-template-columns:repeat(2,1fr);gap:7px;bottom:14px}
  .expertise-hero-with-nav{padding-bottom:250px!important}
  .expertise-hero-quicknav .hads-qbubble{min-height:48px;padding:7px 8px}
  .history-hero-quicknav{width:calc(100% - 24px);grid-template-columns:repeat(2,1fr);gap:8px;bottom:16px}
  .history-hero{padding-bottom:180px!important}
  .history-hero-quicknav .hads-qbubble{min-height:50px;padding:8px 9px}
}
