/* Refinements requested after visual review — 2026-07-29. */

/* The services shortcut strip was intentionally removed from the experience. */
.anchor-nav-wrap {
  display: none !important;
}

/* Hide the browser scrollbar only after the enhanced pipeline is ready. */
html.custom-scrollbar-ready {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html.custom-scrollbar-ready::-webkit-scrollbar,
html.custom-scrollbar-ready body::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.page-pipeline.is-enhanced {
  top: calc(var(--header-height, 84px) + 18px);
  right: 10px;
  bottom: 20px;
  width: 28px;
  pointer-events: auto;
  touch-action: none;
  opacity: 1;
}

.pipeline-track {
  position: absolute;
  inset-block: 0;
  left: 11px;
  width: 6px;
  overflow: hidden;
  border: 1px solid rgba(46, 105, 162, .26);
  border-radius: 999px;
  background: rgba(225, 237, 247, .86);
  box-shadow:
    inset 1px 0 0 rgba(255, 255, 255, .72),
    0 0 0 1px rgba(255, 255, 255, .24);
  cursor: pointer;
}

.pipeline-fill {
  position: absolute;
  inset: 0 0 auto;
  height: calc(var(--page-progress) * 100%);
  border-radius: inherit;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .34), transparent 42%),
    var(--ac-sky);
}

.pipeline-fill::after {
  position: absolute;
  right: 1px;
  bottom: 0;
  left: 1px;
  height: 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .32);
  content: "";
  filter: blur(5px);
}

.pipeline-thumb {
  position: absolute;
  top: calc(var(--page-progress) * 100%);
  left: 14px;
  z-index: 3;
  width: 16px;
  height: 16px;
  padding: 0;
  border: 3px solid var(--ac-white);
  border-radius: 50%;
  background: var(--ac-sky);
  box-shadow:
    0 0 0 4px rgba(77, 147, 217, .18),
    0 2px 8px rgba(0, 45, 88, .3);
  cursor: grab;
  transform: translate(-50%, -50%);
}

.pipeline-thumb:active {
  cursor: grabbing;
}

.pipeline-thumb:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 4px;
}

.pipeline-markers {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.pipeline-marker {
  position: absolute;
  top: var(--marker-position);
  left: 14px;
  z-index: 2;
  width: 12px;
  height: 12px;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, .96);
  border-radius: 50%;
  background: #8fbce7;
  box-shadow: 0 0 0 1px rgba(19, 85, 145, .42);
  cursor: pointer;
  pointer-events: auto;
  transform: translate(-50%, -50%);
  transition:
    width 180ms var(--ease-out),
    height 180ms var(--ease-out),
    background 180ms var(--ease-out),
    box-shadow 180ms var(--ease-out);
}

.pipeline-marker::before {
  position: absolute;
  inset: -7px;
  content: "";
}

.pipeline-marker.is-active {
  width: 16px;
  height: 16px;
  background: var(--ac-blue);
  box-shadow:
    0 0 0 4px rgba(77, 147, 217, .18),
    0 2px 8px rgba(0, 45, 88, .24);
}

.pipeline-marker:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 4px;
}

.pipeline-marker__label {
  position: absolute;
  top: 50%;
  right: 20px;
  width: max-content;
  max-width: min(280px, 42vw);
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 7px;
  background: rgba(0, 45, 88, .94);
  color: #fff;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.3;
  opacity: 0;
  pointer-events: none;
  transform: translate(6px, -50%);
  transition:
    opacity 160ms var(--ease-out),
    transform 160ms var(--ease-out);
}

.pipeline-marker:hover .pipeline-marker__label,
.pipeline-marker:focus-visible .pipeline-marker__label {
  opacity: 1;
  transform: translate(0, -50%);
}

@media (max-width: 920px) {
  .page-pipeline.is-enhanced {
    top: 82px;
    right: 2px;
    bottom: 12px;
    width: 24px;
    opacity: .92;
  }

  .pipeline-track {
    left: 9px;
    width: 5px;
  }

  .pipeline-thumb,
  .pipeline-marker {
    left: 11px;
  }

  .pipeline-marker__label {
    display: none;
  }
}

@media (max-width: 520px) {
  .page-pipeline.is-enhanced {
    right: 0;
    width: 18px;
  }

  .pipeline-track {
    left: 7px;
    width: 4px;
  }

  .pipeline-thumb,
  .pipeline-marker {
    left: 9px;
  }

  .pipeline-marker {
    width: 10px;
    height: 10px;
  }

  .pipeline-marker.is-active,
  .pipeline-thumb {
    width: 14px;
    height: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pipeline-marker,
  .pipeline-marker__label {
    transition: none;
  }
}

@media print {
  .page-pipeline {
    display: none !important;
  }
}
