/* Existing artwork enhanced in place. No hidden content or replacement logos. */
.i82-depth-region { position: relative; }
.capability-stage {
  --i82-pointer-x: 50%;
  --i82-pointer-y: 50%;
  --i82-pointer-opacity: 0;
}
.capability-stage::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: var(--i82-pointer-x);
  top: var(--i82-pointer-y);
  width: clamp(150px, 18vw, 230px);
  aspect-ratio: 1;
  border-radius: 50%;
  pointer-events: none;
  opacity: var(--i82-pointer-opacity);
  transform: translate(-50%, -50%);
  background:
    radial-gradient(circle, rgba(244,247,242,.28) 0%, rgba(144,190,193,.16) 23%, rgba(200,170,117,.09) 43%, rgba(0,0,0,0) 72%);
  filter: blur(3px);
  mix-blend-mode: screen;
  transition: opacity .2s ease, left .14s ease-out, top .14s ease-out;
}
.capability-stage[data-i82-pointer="active"]::after { filter: blur(1px); }
.i82-depth-region .capability-globe {
  translate: 0 var(--i82-depth-y, 0px);
  transition: translate .18s linear;
}
.i82-depth-region:is(.company-strengths,.home-editorial-v39,.home-research) {
  background-position: 50% calc(50% + var(--i82-depth-y, 0px));
}
.i82-brand-turn {
  position: relative;
  transform-style: preserve-3d;
  transform-origin: 50% 50%;
  animation: i82-brand-turn 16s cubic-bezier(.65,0,.35,1) infinite;
  color: transparent !important;
  text-shadow: none !important;
}
.i82-brand-turn::before,.i82-brand-turn::after {
  content: attr(data-i82-brand-label);
  position: absolute;
  inset: 0;
  display: block;
  text-align: center;
  white-space: nowrap;
  backface-visibility: hidden;
  color: #e4dfed;
  background: linear-gradient(177deg,#aaa1b5 0%,#eeeaf4 24%,#b1a5bf 47%,#f4eef9 53%,#a190b5 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 1px 2px #b4a9c1,2px 4px #91809e,3px 6px #65526f,4px 8px #403348,6px 12px 15px #120c2270;
}
.i82-brand-turn::before { transform: rotateX(0deg) translateZ(.045em); }
.i82-brand-turn::after { transform: rotateX(180deg) translateZ(.045em); }
.i82-brand-turn.i82-offscreen,.i82-document-hidden .i82-brand-turn { animation-play-state: paused; }
.i82-brand-turn:focus-visible { animation-play-state: paused; outline: 2px solid #e6efac; outline-offset: 8px; }
@keyframes i82-brand-turn {
  0%,30% { transform: perspective(1000px) rotateX(0deg) rotateY(-3deg); }
  45%,78% { transform: perspective(1000px) rotateX(180deg) rotateY(3deg); }
  93%,100% { transform: perspective(1000px) rotateX(360deg) rotateY(-3deg); }
}
/* Hover and keyboard focus affect this mark only; the running logo wall never pauses on hover. */
:is(.client-mark-v47,.trust-mark-v47,.proof-brand):is(:hover,:focus-visible,:focus-within) img {
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1;
}
:is(.client-mark-v47,.trust-mark-v47,.proof-brand):focus-visible { outline: 2px solid #e6efac; outline-offset: -3px; }
@media (hover:none) {
  :is(.client-mark-v47,.trust-mark-v47,.proof-brand) img { filter: none !important; mix-blend-mode: normal !important; opacity: 1; }
  :is(.client-mark-v47,.trust-mark-v47,.proof-brand):not(.logo-dark) { background: #f5f4f1; }
  :is(.client-mark-v47,.trust-mark-v47,.proof-brand):not(.logo-dark) :is(strong,small,span) { color: #37333d; }
}
@media (max-width:700px) {
  .i82-depth-region .capability-globe { translate: none; transition: none; }
  .capability-stage::after { display: none; }
  .i82-brand-turn { animation-duration: 22s; }
  .i82-brand-turn::before,.i82-brand-turn::after { text-shadow: 1px 2px #b4a9c1,2px 4px #65526f,3px 6px 9px #120c2270; }
}
@media (prefers-reduced-motion:reduce) {
  .i82-depth-region .capability-globe { translate: none !important; transition: none !important; }
  .capability-stage::after { display: none; }
  .i82-brand-turn { animation: none !important; transform: none !important; color: #e4dfed !important; }
  .i82-brand-turn::before,.i82-brand-turn::after { display: none; }
  :is(.client-mark-v47,.trust-mark-v47,.proof-brand) { transition: none !important; }
}
