/* Shared pointer treatment. Native cursor, no audio, no layout movement. */
body.a2-pointer { cursor: auto; }
.a2-pointer :where(button, summary, [role="button"], a[href]) { cursor: pointer; }
.a2-pointer :where(input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]), textarea, [contenteditable="true"]) { cursor: text; }
.a2-pointer :where(.case-card, .product-gallery-stage button, .bedding-stage button, .apparel-image-button, .gift-image-button) { cursor: zoom-in; }
.a2-glow-host { position: relative; }
.a2-local-glow {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
  opacity: 0;
  z-index: 1;
  background: radial-gradient(180px circle at var(--a2-glow-x, -500px) var(--a2-glow-y, -500px), rgba(111, 169, 208, .12), rgba(111, 169, 208, .04) 40%, transparent 72%);
  transition: opacity 180ms ease;
}
.a2-pointer .a2-local-glow.is-lit { opacity: 1; }
/* Keep the old water/white glass highlights from mixing with this treatment. */
.a2-pointer :is(.liquid-ripple-layer, .cursor-ripple) { display: none; }
.a2-pointer:not(.a2-insights) :is(.service, .stat, .insight, .case-card, .article-note, .side-nav, .contact-item, .contact-form, .flipbook, .region-detail)::before { background: none; }
@media (hover: hover) and (pointer: fine) {
  .a2-pointer [data-a2-hover]:not(:disabled):not([aria-disabled="true"]):hover:not(:focus-visible) {
    outline: 1px solid #e45635;
    outline-offset: -1px;
  }
}
.a2-pointer :is(a[href], button, summary, [tabindex]):focus-visible {
  outline: 3px solid #e45635;
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce), (hover: none), (pointer: coarse) {
  .a2-pointer .a2-local-glow { display: none; transition: none; }
}
@media (forced-colors: active) {
  .a2-pointer .a2-local-glow { display: none; }
  .a2-pointer [data-a2-hover]:hover, .a2-pointer :focus-visible { outline-color: Highlight; }
}
