.support-diagnostic[hidden] {
  display: none !important;
}

.support-envelope {
  --support-mail-cycle: 9.8s;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  shape-rendering: geometricPrecision;
}

.support-envelope__halo {
  opacity: 0.72;
  animation: support-mail-halo var(--support-mail-cycle) ease-in-out infinite;
}

.support-envelope__orbit {
  fill: none;
  stroke: rgba(140, 181, 255, 0.2);
  stroke-width: 1;
  stroke-linecap: round;
  stroke-dasharray: 2 7;
  stroke-dashoffset: 0;
  animation: support-mail-orbit var(--support-mail-cycle) linear infinite;
}

.support-envelope__assembly {
  transform-box: view-box;
  transform-origin: 240px 220px;
  animation: support-mail-send var(--support-mail-cycle) cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.support-envelope__shadow {
  fill: rgba(0, 0, 0, 0.34);
  transform-box: fill-box;
  transform-origin: center;
  animation: support-mail-shadow var(--support-mail-cycle) ease-in-out infinite;
}

.support-envelope__back {
  fill: url(#support-envelope-shell);
  stroke: rgba(140, 181, 255, 0.3);
  stroke-width: 1.2;
}

.support-envelope__flap-open {
  fill: rgba(14, 43, 69, 0.98);
  stroke: rgba(112, 240, 223, 0.32);
  stroke-width: 1.2;
  stroke-linejoin: round;
  opacity: 0;
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: support-mail-open-flap var(--support-mail-cycle) cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.support-envelope__letter {
  transform-box: fill-box;
  transform-origin: center;
  animation: support-mail-letter var(--support-mail-cycle) cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.support-envelope__letter > rect {
  fill: url(#support-envelope-paper);
  stroke: rgba(112, 240, 223, 0.5);
  stroke-width: 1.2;
}

.support-envelope__letter-accent {
  fill: none;
  stroke: #70f0df;
  stroke-width: 3;
  stroke-linecap: round;
}

.support-envelope__letter-mark circle {
  fill: #0b2035;
  stroke: rgba(112, 240, 223, 0.68);
  stroke-width: 1.2;
}

.support-envelope__letter-mark path {
  fill: #70f0df;
  filter: drop-shadow(0 0 4px rgba(112, 240, 223, 0.42));
}

.support-envelope__letter-lines {
  fill: none;
  stroke: rgba(11, 32, 53, 0.3);
  stroke-width: 5;
  stroke-linecap: round;
}

.support-envelope__signature {
  fill: none;
  stroke: rgba(24, 104, 127, 0.65);
  stroke-width: 2;
  stroke-linecap: round;
}

.support-envelope__front {
  stroke: rgba(140, 181, 255, 0.22);
  stroke-width: 1.1;
  stroke-linejoin: round;
}

.support-envelope__front--left {
  fill: #0b2238;
}

.support-envelope__front--right {
  fill: #0a1e32;
}

.support-envelope__front--bottom {
  fill: url(#support-envelope-front);
}

.support-envelope__flap-closed {
  fill: url(#support-envelope-front);
  stroke: rgba(112, 240, 223, 0.31);
  stroke-width: 1.2;
  stroke-linejoin: round;
  opacity: 1;
  animation: support-mail-closed-flap var(--support-mail-cycle) ease-in-out infinite;
}

.support-envelope__outline {
  fill: none;
  stroke: rgba(140, 181, 255, 0.38);
  stroke-width: 1.2;
}

.support-envelope__seal {
  opacity: 1;
  animation: support-mail-seal var(--support-mail-cycle) ease-in-out infinite;
}

.support-envelope__seal circle {
  fill: #0a1d30;
  stroke: #70f0df;
  stroke-width: 1.3;
  filter: drop-shadow(0 0 7px rgba(112, 240, 223, 0.48));
}

.support-envelope__seal path {
  fill: #70f0df;
}

.support-envelope__trail {
  opacity: 0;
  animation: support-mail-trail var(--support-mail-cycle) ease-out infinite;
}

.support-envelope__trail path {
  fill: none;
  stroke: #70f0df;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  filter: drop-shadow(0 0 5px rgba(112, 240, 223, 0.52));
  animation: support-mail-trail-line var(--support-mail-cycle) ease-out infinite;
}

.support-envelope__trail path:nth-child(2) {
  animation-delay: -0.11s;
}

.support-envelope__trail path:nth-child(3) {
  animation-delay: -0.22s;
}

.support-envelope__status {
  opacity: 0;
  animation: support-mail-status var(--support-mail-cycle) cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.support-envelope__status circle {
  fill: rgba(8, 31, 48, 0.96);
  stroke: #70f0df;
  stroke-width: 1.4;
  filter: drop-shadow(0 0 10px rgba(112, 240, 223, 0.4));
}

.support-envelope__status path {
  fill: none;
  stroke: #e7fffb;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.support-envelope__particles {
  opacity: 0;
  animation: support-mail-particles var(--support-mail-cycle) ease-out infinite;
}

.support-envelope__particles circle {
  fill: #70f0df;
  filter: drop-shadow(0 0 5px rgba(112, 240, 223, 0.72));
}

@keyframes support-mail-halo {
  0%, 100% { opacity: 0.46; transform: scale(0.92); transform-origin: center; }
  48%, 78% { opacity: 0.84; transform: scale(1.05); transform-origin: center; }
}

@keyframes support-mail-orbit {
  to { stroke-dashoffset: -100; }
}

@keyframes support-mail-letter {
  0%, 14% { opacity: 0; transform: translateY(74px); }
  26% { opacity: 1; transform: translateY(30px); }
  37%, 58% { opacity: 1; transform: translateY(-38px); }
  70% { opacity: 1; transform: translateY(20px); }
  76%, 100% { opacity: 0; transform: translateY(74px); }
}

@keyframes support-mail-open-flap {
  0%, 12%, 84%, 100% { opacity: 0; transform: scaleY(0.68); }
  23%, 72% { opacity: 1; transform: scaleY(1); }
}

@keyframes support-mail-closed-flap {
  0%, 12%, 84%, 100% { opacity: 1; }
  23%, 72% { opacity: 0; }
}

@keyframes support-mail-seal {
  0%, 11%, 85%, 100% { opacity: 1; }
  20%, 76% { opacity: 0; }
}

@keyframes support-mail-send {
  0%, 81%, 100% { transform: translate(0, 0) rotate(0deg); }
  88% { transform: translate(16px, -7px) rotate(-1deg); }
  94% { transform: translate(25px, -10px) rotate(-1.2deg); }
}

@keyframes support-mail-shadow {
  0%, 81%, 100% { opacity: 1; transform: scaleX(1); }
  90%, 95% { opacity: 0.55; transform: scaleX(0.86); }
}

@keyframes support-mail-trail {
  0%, 81%, 97%, 100% { opacity: 0; }
  86%, 94% { opacity: 0.84; }
}

@keyframes support-mail-trail-line {
  0%, 81% { stroke-dashoffset: 100; }
  90%, 96% { stroke-dashoffset: 0; }
  100% { stroke-dashoffset: -100; }
}

@keyframes support-mail-status {
  0%, 82%, 100% { opacity: 0; }
  88%, 96% { opacity: 1; }
}

@keyframes support-mail-particles {
  0%, 83%, 100% { opacity: 0; transform: translate(-7px, 8px); }
  89%, 95% { opacity: 0.9; transform: translate(0, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .support-envelope__halo,
  .support-envelope__orbit,
  .support-envelope__assembly,
  .support-envelope__shadow,
  .support-envelope__flap-open,
  .support-envelope__letter,
  .support-envelope__flap-closed,
  .support-envelope__seal,
  .support-envelope__trail,
  .support-envelope__trail path,
  .support-envelope__status,
  .support-envelope__particles {
    animation: none !important;
  }

  .support-envelope__halo {
    opacity: 0.72;
    transform: none;
  }

  .support-envelope__orbit {
    stroke-dashoffset: 0;
  }

  .support-envelope__assembly,
  .support-envelope__shadow {
    transform: none;
  }

  .support-envelope__letter {
    transform: translateY(-25px);
  }

  .support-envelope__flap-open {
    opacity: 1;
    transform: scaleY(1);
  }

  .support-envelope__flap-closed,
  .support-envelope__seal,
  .support-envelope__trail,
  .support-envelope__particles {
    opacity: 0;
  }

  .support-envelope__status {
    opacity: 1;
  }
}

