/* Inactive demos pass wheel/touch scrolling to the case study. One click
   enters the product; Escape, Exit or an outside click returns to the page. */
.exact-capture { position: relative; }
.exact-capture.is-interacting iframe { pointer-events: auto; }
.exact-interaction-gate {
  position: absolute;
  z-index: 8;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  border-radius: inherit;
  background: transparent;
  color: #ddd;
  cursor: pointer;
  touch-action: pan-y;
}
.exact-interaction-gate span,
.exact-interaction-exit {
  position: absolute;
  right: 12px;
  bottom: 12px;
  padding: 7px 10px;
  border: 1px solid rgb(255 255 255 / 18%);
  border-radius: 6px;
  color: #ddd;
  background: rgb(16 17 19 / 88%);
  font: 11px/1.2 var(--font-mono, monospace);
  letter-spacing: .015em;
}
.exact-interaction-gate span { opacity: 0; transition: opacity .18s ease; }
.exact-interaction-gate:hover span,
.exact-interaction-gate:focus-visible span { opacity: 1; }
.exact-interaction-gate:focus-visible { outline: 1px solid #8d91a0; outline-offset: -2px; }
.exact-interaction-exit { z-index: 9; min-height: 36px; cursor: pointer; }
.exact-interaction-exit:focus-visible,
[data-exact-switch] [role="tab"]:focus-visible { outline: 2px solid #8d91a0; outline-offset: 3px; }
@media (pointer: coarse) {
  .exact-interaction-exit { min-height: 44px; min-width: 80px; }
  .exact-interaction-gate span { opacity: 1; }
}
.exact-interaction-gate[hidden],
.exact-interaction-exit[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) {
  .exact-interaction-gate span { transition: none; }
}
