.dm-snowflakes {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 9999;
  overflow: hidden;
}

.dm-snowflake {
  position: absolute;
  top: -10%;
  color: rgba(232, 244, 255, 0.85);
  text-shadow: 0 0 6px rgba(180, 215, 255, 0.35);
  user-select: none;
  animation-name: dm-snow-fall, dm-snow-shake;
  animation-timing-function: linear, ease-in-out;
  animation-iteration-count: infinite;
}

/* Падение */
@keyframes dm-snow-fall {
  0% { top: -10%; }
  100% { top: 110%; }
}

/* Лёгкое покачивание */
@keyframes dm-snow-shake {
  0% { transform: translateX(0); }
  50% { transform: translateX(20px); }
  100% { transform: translateX(0); }
}

/* Мобилка — дополнительно страхуем визуал */
@media (max-width: 768px) {
  .dm-snowflake {
    text-shadow: 0 0 3px rgba(180, 215, 255, 0.25);
  }
}
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
@media (max-width: 480px) {
  .t396__artboard {
    overflow-x: hidden;
  }
}
@media (max-width: 480px) {
  * {
    max-width: 100%;
    box-sizing: border-box;
  }
}

