/* IntelliMinds — floating progress navigator (reusable, desktop only) */
.im-secnav{display:none}

@media (min-width:1200px){
  .im-secnav{
    display:block;position:fixed;left:34px;top:50%;transform:translateY(-50%);
    z-index:60;opacity:0;pointer-events:none;transition:opacity .45s ease
  }
  .im-secnav.is-visible{opacity:1;pointer-events:auto}
  .im-secnav ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
  .im-secnav li{margin:0}
  .im-secnav li::marker{content:none}

  .im-secnav a{
    display:flex;align-items:center;gap:.75rem;padding:6px 10px 6px 4px;
    text-decoration:none;border-radius:999px;position:relative;
    color:transparent;transition:color .28s ease,background-color .28s ease
  }
  .im-secnav a::before{
    content:"";flex:none;width:10px;height:10px;border-radius:50%;
    background:currentColor;background:rgba(90,105,120,.45);
    transition:transform .3s cubic-bezier(.22,1,.36,1),background-color .3s ease,box-shadow .3s ease
  }
  .im-secnav .im-secnav__label{
    white-space:nowrap;font-size:.78rem;line-height:1.2;letter-spacing:.01em;
    max-width:0;overflow:hidden;opacity:0;
    transform:translateX(-6px);
    transition:max-width .38s cubic-bezier(.22,1,.36,1),opacity .28s ease,transform .38s cubic-bezier(.22,1,.36,1)
  }

  /* active state */
  .im-secnav a[aria-current="true"]::before{
    background:var(--teal,#0d8a8a);transform:scale(1.45);
    box-shadow:0 0 0 4px rgba(13,138,138,.14)
  }

  /* expanded (hover / focus-within) */
  .im-secnav:hover,
  .im-secnav:focus-within{
    background:rgba(255,255,255,.72);backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-radius:16px;padding:8px 10px 8px 6px;
    box-shadow:0 12px 40px -18px rgba(12,26,45,.35);
    left:26px
  }
  .im-secnav:hover a,
  .im-secnav:focus-within a{color:#5c6a7a}
  .im-secnav:hover a:hover,
  .im-secnav:focus-within a:hover{color:var(--teal,#0d8a8a)}
  .im-secnav:hover a[aria-current="true"],
  .im-secnav:focus-within a[aria-current="true"]{color:var(--teal,#0d8a8a);font-weight:600}
  .im-secnav:hover .im-secnav__label,
  .im-secnav:focus-within .im-secnav__label{max-width:230px;opacity:1;transform:translateX(0)}

  .im-secnav a:focus-visible{outline:2px solid var(--teal,#0d8a8a);outline-offset:2px}
}

@media (prefers-reduced-motion:reduce){
  .im-secnav,.im-secnav a,.im-secnav a::before,.im-secnav .im-secnav__label{transition:none}
}
