.email-toast {
  position: fixed;
  z-index: 2000;
  left: 50%;
  bottom: calc(24px + env(safe-area-inset-bottom, 0px));
  display: flex;
  align-items: center;
  width: max-content;
  max-width: calc(100vw - 40px);
  min-height: 48px;
  padding: 10px 18px;
  border-radius: 16px;
  background: rgba(245, 242, 242, .58);
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  box-shadow: 0 8px 28px rgba(33, 34, 34, .1);
  color: #212222;
  font: 400 12px/16px "CoFo Sans Trial", ui-monospace, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 12px) scale(.96);
  transition: opacity 220ms ease, transform 360ms cubic-bezier(.2, 1, .4, 1), visibility 0s linear 220ms;
}
.email-toast.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0) scale(1);
  transition-delay: 0s;
}
.email-toast__message { white-space: nowrap; }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .email-toast { background: rgba(245, 242, 242, .94); }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .email-toast { display: none; }
}
@media (max-width: 767px) {
  /* A background on the filtered SVG would be tinted into a solid rectangle. */
  .contacts-screen__email:hover,
  .contacts-screen__email:focus-visible,
  .contacts-screen.is-email-hover .contacts-screen__email {
    background-color: transparent;
  }
  .contacts-copy-cursor { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .email-toast { transition-duration: 0ms; transform: translateX(-50%); }
}

/* Footer copy cursor shared with the home page. */
    .contacts-copy-cursor {
      position: fixed;
      z-index: 30;
      width: 90px;
      height: 31.111px;
      pointer-events: none;
      opacity: 0;
      transform: translate(-50%, -50%);
      transition: opacity 120ms ease, width 200ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    .contacts-copy-cursor.is-visible {
      opacity: 1;
    }

    .contacts-copy-cursor.is-copied {
      width: 108.889px;
    }

    .contacts-copy-cursor img {
      position: absolute;
      inset: 0;
      display: block;
      width: 100%;
      height: 31.111px;
      object-fit: fill;
      transform-origin: left center;
      transition: opacity 200ms cubic-bezier(0.22, 1, 0.36, 1), transform 200ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    .contacts-copy-cursor img.is-copied-icon {
      opacity: 0;
      transform: scaleX(0);
    }


@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .portfolio-footer .portfolio-footer__email { cursor: none; }
}
@media (max-width: 767px), (hover: none), (pointer: coarse) {
  .contacts-copy-cursor { display: none; }
  .contacts-screen__email,
  .portfolio-footer .portfolio-footer__email { cursor: pointer; }
}
