html {
  transition: all 0.3s ease;
}

.active-link {
  color: var(--link-color);
  opacity: 1;
}

html {
  --background-color: #1A1A1A;
  --border-color: rgba(255, 255, 255, 0.1);
  --text-color: #FFFFFF;
  --light-text-color: #EAE8E7;
  --link-color: #E03C31;
  --accent-color: #E03C31;
  --card-color: #2D2D2D;
  --card-color-light: #3B3B3B;
  --header-color: rgba(26, 26, 26, 0.35);
  --header-color-mobile: rgba(26, 26, 26, 0.95);
  --header-image-url: url(/assets/images/zu_logo-dark.png);
  --base-font-size: 16px;
  --heading-xl: 3rem;
  --heading-lg: 2.5rem;
  --heading-md: 1.7rem;
  --heading-sm: 1.3rem;
  --text-lg: 1.1rem;
  --text-base: 1rem;
  --text-sm: 0.9rem;
  --text-xs: 0.8rem;
  --spacing-xl: 60px;
  --spacing-lg: 40px;
  --spacing-md: 24px;
  --spacing-sm: 16px;
  --spacing-xs: 8px;
}

html.light {
  --background-color: #F7F5F4;
  --border-color: rgba(0, 0, 0, 0.1);
  --text-color: #000000;
  --light-text-color: #1A1A1A;
  --link-color: #E03C31;
  --accent-color: #E03C31;
  --card-color: #EAE8E7;
  --card-color-light: #F7F5F4;
  --header-color: rgba(234, 232, 231, 0.35);
  --header-color-mobile: rgba(234, 232, 231, 0.95);
  --header-image-url: url(/assets/images/zu_logo-light.png);
  --gradient-1: #EAE8E7;
  --gradient-2: #A59F9A;
  --gradient-3: #E03C31;
}

@media (max-width: 1024px) {
  html {
    --base-font-size: 15px;
    --heading-xl: 2rem;
    --heading-lg: 1.75rem;
    --heading-md: 1.3rem;
    --text-lg: 1rem;
    --spacing-xl: 40px;
    --spacing-lg: 30px;
  }
}
@media (max-width: 768px) {
  html {
    --base-font-size: 14px;
    --heading-xl: 2.5rem;
    --heading-lg: 1.8rem;
    --heading-md: 1.6rem;
    --heading-sm: 1.4rem;
    --text-lg: 0.95rem;
    --text-base: 0.9rem;
    --text-sm: 0.85rem;
    --text-xs: 0.75rem;
    --spacing-xl: 30px;
    --spacing-lg: 20px;
    --spacing-md: 16px;
    --spacing-sm: 12px;
  }
}
@media (max-width: 480px) {
  html {
    --base-font-size: 14px;
    --heading-xl: 2rem;
    --heading-lg: 1.4rem;
    --heading-md: 1.1rem;
    --text-lg: 0.9rem;
    --text-base: 0.85rem;
    --spacing-xl: 24px;
    --spacing-lg: 16px;
    --spacing-md: 12px;
  }
}
*,
*::before,
*::after {
  box-sizing: inherit;
}

* {
  box-sizing: border-box;
  vertical-align: baseline;
  font-weight: inherit;
  font-family: inherit;
  font-style: inherit;
  font-size: var(--base-font-size);
  border: 0 none;
  outline: 0;
  padding: 0;
  margin: 0;
}

html,
body {
  width: 100%;
  overflow-x: hidden;
  background-color: var(--background-color);
}

/** Scrollbar **/
::-webkit-scrollbar {
  display: none;
}

/** Links **/
:link {
  color: var(--text-color);
  opacity: 1;
  transition: 0.1s ease-in-out;
}

:link:hover {
  opacity: 0.7;
}

html {
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Iosevka", Monospace, Sans-Serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-overflow-scrolling: touch;
  overflow-wrap: break-word;
  color: var(--text-color);
  background-color: transparent;
  background-attachment: fixed;
  max-width: 100%;
  height: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
}

.page-content {
  flex: 1 0 auto;
}

/** Header **/
.header {
  position: sticky;
  width: 100%;
  min-height: 64px;
  z-index: 100;
  top: 0;
  display: flex;
  align-items: center;
  background-color: var(--header-color);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid transparent;
  transition: all 0.15s ease-in-out;
}

.border-bottom {
  border-bottom: 1px solid var(--border-color);
}

.header-wrapper {
  display: flex;
  flex: 1 1;
  justify-content: space-evenly;
  align-items: center;
  max-width: 80rem;
  margin: 0 auto;
  padding: 0 16px;
}

.header-image-container {
  width: 80%;
  z-index: 105;
}

.header-image-container,
.header-image-container a {
  display: flex;
  align-items: center;
  height: 100%;
}

.header-image {
  height: 74px;
  padding: 8px 0;
  content: var(--header-image-url);
  z-index: 105;
}

.navbar-links {
  display: flex;
  justify-content: space-around;
  width: 65%;
  z-index: 20;
}

.navbar-links li {
  list-style: none;
}

.navbar-links a {
  display: flex;
  color: var(--text-color);
  opacity: 0.7;
  text-decoration: none;
  font-size: var(--text-base);
  font-weight: 600;
  margin-left: 1rem;
  transition: 0.15s ease-in-out;
}

.navbar-links a:hover {
  opacity: 1;
}

.navbar-burger {
  display: none;
  cursor: pointer;
  z-index: 20;
}

.navbar-burger div {
  width: 25px;
  height: 2px;
  background-color: var(--text-color);
  opacity: 0.7;
  margin: 5px;
  transition: all 0.3s ease;
}

@media screen and (max-width: 1024px) {
  body {
    overflow-x: hidden;
  }
  .navbar-links {
    position: absolute;
    top: 0;
    right: 0;
    height: 100vh;
    background-color: var(--header-color-mobile);
    backdrop-filter: blur(16px);
    border-left: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    justify-content: start;
    gap: 20px;
    padding-top: 64px;
    z-index: 15;
    width: 40%;
    transform: translateX(100%);
    transition: transform 0.5s ease-in-out;
  }
  .navbar-links li {
    opacity: 0;
  }
  .navbar-burger {
    display: block;
  }
}
.navbar-active {
  transform: translateX(0);
}

.navbar-burger-active .line-1 {
  transform: rotate(-45deg) translate(-5px, 5px);
}

.navbar-burger-active .line-2 {
  opacity: 0;
}

.navbar-burger-active .line-3 {
  transform: rotate(45deg) translate(-5px, -5px);
}

@keyframes navbar-link-fade {
  from {
    opacity: 0;
    transform: translateX(50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/** Footer **/
.site-footer {
  background: var(--background-color);
  height: auto;
  width: 100%;
  padding: 1rem;
  border-top: 1px solid var(--border-color);
  display: flex;
  align-items: center;
  margin-top: auto;
  flex-shrink: 0;
}

.footer-wrapper {
  width: 100%;
  max-width: 48rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.footer-info-container {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  text-align: left;
}

@media (max-width: 576px) {
  .footer-info-container {
    flex-direction: column;
    text-align: center;
  }
}
.footer-title-container {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

@media (max-width: 576px) {
  .footer-title-container {
    justify-content: center;
    align-items: center;
    flex-direction: row;
    gap: 12px;
    margin-bottom: 8px;
  }
}
.footer-title {
  color: var(--text-color);
  font-size: var(--text-base);
  font-weight: 700;
  margin-bottom: 4px;
}

.footer-description-container {
  width: 100%;
  height: 100%;
  font-size: var(--text-sm);
  color: var(--text-color);
  opacity: 0.75;
}

@media (max-width: 576px) {
  .footer-description-container {
    font-size: var(--text-xs);
  }
}
.email:link {
  color: var(--text-color);
  text-decoration: underline;
  text-decoration-color: var(--link-color);
  opacity: 0.7;
  transition: 0.1s ease-in-out;
}

.email:hover {
  color: var(--link-color);
  opacity: 1;
}

.email:visited {
  color: var(--link-color);
}

.footer-social-container {
  width: 100%;
  height: 100%;
  margin-top: 20px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 12px;
}

.social-link {
  width: 40px;
  height: 40px;
  padding: 10px;
  border: 1px solid var(--border-color);
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--text-color);
  opacity: 0.7;
  text-decoration: none;
  transition: 0.1s ease-in-out;
}

.social-link svg {
  width: 20px;
  height: 20px;
}

.social-link:hover {
  opacity: 1;
}

@media (max-width: 768px) {
  .footer-wrapper {
    flex-direction: column;
  }
  .footer-col-wrapper {
    margin: 0.25rem 0;
  }
}
/** Content **/
.heading-title {
  font-style: normal;
  font-weight: 1000;
  text-align: center;
  color: var(--text-color);
  margin-top: var(--spacing-xl);
  font-size: var(--heading-xl);
  line-height: 3rem;
}

.heading-description {
  font-style: normal;
  font-weight: 600;
  text-align: center;
  color: var(--light-text-color);
  margin-top: var(--spacing-md);
  font-size: var(--text-lg);
  line-height: 2rem;
}

.toggle {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 42px;
  height: 22px;
  display: inline-block;
  position: relative;
  border-radius: 50px;
  overflow: hidden;
  outline: none;
  border: none;
  margin-top: 1rem;
  cursor: pointer;
  background-color: #707070;
  transition: background-color ease 0.3s;
}

.toggle:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  width: 18px;
  height: 18px;
  background: #fff;
  left: 2px;
  top: 2px;
  border-radius: 50%;
  font: 10px/18px Helvetica;
  text-transform: uppercase;
  font-weight: bold;
  text-indent: -22px;
  word-spacing: 37px;
  color: #fff;
  text-shadow: -1px -1px rgba(0, 0, 0, 0.15);
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  transition: all cubic-bezier(0.3, 1.5, 0.7, 1) 0.3s;
}

.toggle:checked {
  background-color: #202020;
}

.toggle:checked:before {
  left: 22px;
}

.intro-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px 32px;
}

@media (min-width: 576px) {
  .intro-section {
    padding: 0px 64px;
  }
}
.home-scroll-prompt {
  width: 100%;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 32px;
}

.home-scroll_border {
  stroke: var(--text-color);
}

.home-scroll_center {
  fill: var(--text-color);
}

.slideshow {
  background: linear-gradient(126.6deg, rgba(255, 255, 255, 0.12) 28.69%, rgba(255, 255, 255, 0) 100%);
  backdrop-filter: blur(140px);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 1100px;
  padding: 2%;
  aspect-ratio: 1.67;
}

.slideshow img {
  border-radius: 8px !important;
  box-shadow: 0px 4px 64px rgba(0, 0, 0, 0.2) !important;
}

.slideshow {
  margin-top: 40px;
  margin-bottom: 40px;
}

@media (min-width: 576px) {
  .slideshow {
    margin-top: 62px;
    margin-bottom: 120px;
  }
}
.slideshow_wrapper {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}

.slideshow_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  box-shadow: 0px 4px 64px rgba(0, 0, 0, 0.2);
}

/** About Section **/
.home_about-section {
  width: 100%;
  max-width: 100%;
}

.home_about-sep {
  height: 0.5rem;
}

.home_about-background {
  background-image: linear-gradient(to top right, var(--gradient-2), var(--gradient-3));
  padding: 4rem 0;
}

.home_about-container {
  max-width: 80rem;
  padding: 0 1.25rem;
  margin: 0 auto;
}

@media (min-width: 640px) {
  .home_about-container {
    padding: 0px 5rem;
  }
}
.home_about-content {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.home_about-title {
  font-weight: 700;
  color: var(--text-color);
  margin-bottom: 1.5rem;
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.home_about-description {
  font-weight: 400;
  color: var(--light-text-color);
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.home_about-button-container {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  margin-top: 1.75rem;
}

.home_about-button {
  text-align: center;
  width: 10rem;
  padding: 0.75rem 0;
  background-color: var(--card-color);
  border: 1px solid var(--border-color);
  border-radius: 6px;
  color: var(--text-color);
  opacity: 0.85;
  text-decoration: none;
  transition: all 0.15s ease-in-out;
  font-size: 1rem;
  line-height: 1.25rem;
}

.home_about-button:hover {
  opacity: 1;
}

/** Events Section **/
.home_events-sponsors-section {
  background: linear-gradient(165deg, var(--background-color) 50%, rgba(27, 23, 27, 0.3843137255) 0);
  padding: 4rem 0;
}

.home_events-container {
  max-width: 80rem;
  margin: 0 auto 2rem;
  padding: 0 1.25rem;
}

@media (min-width: 640px) {
  .home_events-container {
    padding: 0px 5rem;
  }
}
.home_events-title {
  color: var(--text-color);
  opacity: 0.75;
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.home_events-grid {
  width: 100%;
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: 20px;
  justify-content: center;
}

.home_event {
  background-color: var(--card-color);
  width: 100%;
  cursor: pointer;
  border-radius: 8px;
  border: 1px solid transparent;
  padding: 1rem;
  opacity: 1;
  text-decoration: none;
  display: grid;
  grid-template-columns: 1fr 40px;
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.2);
  transition: all 0.1s ease;
}

.home_event:hover {
  opacity: 1;
  border: 1px solid var(--link-color);
  background-color: var(--card-color-light);
}

@media (min-width: 1178px) {
  .home_event {
    width: 49%;
  }
}
.home_event-title {
  font-weight: 700;
  color: var(--text-color);
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
  line-height: 1.5rem;
}

.home_event-description {
  display: flex;
  font-weight: 400;
  color: var(--text-color);
  opacity: 0.7;
  font-size: 1.05rem;
  line-height: 1.3rem;
}

.home_events-empty-message {
  width: 100%;
  padding: 5rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 1.1rem;
  opacity: 0.75;
}

.home_events-grid {
  width: 100%;
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: 20px;
  justify-content: center;
}

.home_event-link-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.home_event-link-icon {
  color: var(--text-color);
  height: 1.5rem;
  width: 1.5rem;
}

/** Sponsors Section **/
.home_sponsors-grid {
  width: 100%;
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: 36px;
  justify-content: center;
}

.home_sponsor {
  width: 250px;
  height: 300px;
  display: grid;
  grid-template-rows: 250px 50px;
  color: var(--text-color);
  text-decoration: none;
}

.home_sponsor-image {
  width: 250px;
  height: 250px;
  object-fit: contain;
  padding: 1rem;
  background: #fff;
  border-radius: 4px;
  border: 1px solid var(--border-color);
}

.home_sponsor-details {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 700;
}

/** Join Section **/
.home_join-background {
  padding: 3rem 0;
}

.home_join-section {
  width: 100%;
  max-width: 100%;
  text-align: left;
}

.home_join-content {
  max-width: 54rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column; /* <-- Stack vertically */
  align-items: center;
  gap: 1.5rem; /* space between paragraphs */
}

.home_join-title {
  font-weight: 700;
  color: var(--text-color);
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.home_join-who,
.home_join-why,
.home_join-how {
  color: var(--text-secondary);
  font-size: 1.1rem;
  line-height: 1.6rem;
  max-width: 40rem;
}

.home_join-buttons {
  margin-top: 1rem;
}

.home_join-subtitle {
  font-weight: 600;
  font-size: 1.25rem;
  margin-top: 1.5rem;
  color: var(--accent-color);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.home_join-button {
  background: var(--accent-color);
  color: #fff;
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  text-decoration: none;
  transition: background 0.2s ease;
}

.home_about-button {
  background: var(--accent-color);
  color: #fff;
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  text-decoration: none;
  transition: background 0.2s ease;
}

.home_about-button:hover {
  background: var(--accent-color-hover);
}

.type-animate {
  overflow: hidden;
  border-right: 0.15em solid #E69132;
  white-space: nowrap;
  max-width: max-content;
  animation: typing 3.5s steps(40, end), blink-caret 0.75s step-end infinite;
}

@keyframes typing {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
@keyframes blink-caret {
  from, to {
    border-color: transparent;
  }
  50% {
    border-color: var(--accent-color);
  }
}
.snow {
  position: absolute;
  width: 10px;
  height: 10px;
  background: white;
  border-radius: 50%;
}

.snow:nth-child(1) {
  opacity: 0.0174;
  transform: translate(20.7101vw, -10px) scale(0.3431);
  animation: fall-1 26s -8s linear infinite;
}

@keyframes fall-1 {
  46.445% {
    transform: translate(26.8077vw, 46.445vh) scale(0.3431);
  }
  to {
    transform: translate(23.7589vw, 100vh) scale(0.3431);
  }
}
.snow:nth-child(2) {
  opacity: 0.5742;
  transform: translate(68.7432vw, -10px) scale(0.0341);
  animation: fall-2 11s -4s linear infinite;
}

@keyframes fall-2 {
  34.772% {
    transform: translate(62.831vw, 34.772vh) scale(0.0341);
  }
  to {
    transform: translate(65.7871vw, 100vh) scale(0.0341);
  }
}
.snow:nth-child(3) {
  opacity: 0.7346;
  transform: translate(60.8872vw, -10px) scale(0.7972);
  animation: fall-3 24s -3s linear infinite;
}

@keyframes fall-3 {
  56.697% {
    transform: translate(60.5745vw, 56.697vh) scale(0.7972);
  }
  to {
    transform: translate(60.73085vw, 100vh) scale(0.7972);
  }
}
.snow:nth-child(4) {
  opacity: 0.8432;
  transform: translate(0.2777vw, -10px) scale(0.6965);
  animation: fall-4 10s -11s linear infinite;
}

@keyframes fall-4 {
  32.109% {
    transform: translate(9.2099vw, 32.109vh) scale(0.6965);
  }
  to {
    transform: translate(4.7438vw, 100vh) scale(0.6965);
  }
}
.snow:nth-child(5) {
  opacity: 0.292;
  transform: translate(26.0868vw, -10px) scale(0.1079);
  animation: fall-5 28s -13s linear infinite;
}

@keyframes fall-5 {
  57.64% {
    transform: translate(29.1819vw, 57.64vh) scale(0.1079);
  }
  to {
    transform: translate(27.63435vw, 100vh) scale(0.1079);
  }
}
.snow:nth-child(6) {
  opacity: 0.3822;
  transform: translate(50.7367vw, -10px) scale(0.5228);
  animation: fall-6 19s -20s linear infinite;
}

@keyframes fall-6 {
  59.389% {
    transform: translate(40.833vw, 59.389vh) scale(0.5228);
  }
  to {
    transform: translate(45.78485vw, 100vh) scale(0.5228);
  }
}
.snow:nth-child(7) {
  opacity: 0.395;
  transform: translate(55.2494vw, -10px) scale(0.9807);
  animation: fall-7 23s -29s linear infinite;
}

@keyframes fall-7 {
  43.791% {
    transform: translate(63.3669vw, 43.791vh) scale(0.9807);
  }
  to {
    transform: translate(59.30815vw, 100vh) scale(0.9807);
  }
}
.snow:nth-child(8) {
  opacity: 0.2046;
  transform: translate(67.089vw, -10px) scale(0.7754);
  animation: fall-8 15s -14s linear infinite;
}

@keyframes fall-8 {
  33.595% {
    transform: translate(59.7386vw, 33.595vh) scale(0.7754);
  }
  to {
    transform: translate(63.4138vw, 100vh) scale(0.7754);
  }
}
.snow:nth-child(9) {
  opacity: 0.7497;
  transform: translate(67.1845vw, -10px) scale(0.5421);
  animation: fall-9 18s -15s linear infinite;
}

@keyframes fall-9 {
  58.482% {
    transform: translate(63.7638vw, 58.482vh) scale(0.5421);
  }
  to {
    transform: translate(65.47415vw, 100vh) scale(0.5421);
  }
}
.snow:nth-child(10) {
  opacity: 0.5003;
  transform: translate(57.6129vw, -10px) scale(0.6145);
  animation: fall-10 16s -25s linear infinite;
}

@keyframes fall-10 {
  69.757% {
    transform: translate(57.5169vw, 69.757vh) scale(0.6145);
  }
  to {
    transform: translate(57.5649vw, 100vh) scale(0.6145);
  }
}
.snow:nth-child(11) {
  opacity: 0.893;
  transform: translate(21.4038vw, -10px) scale(0.9079);
  animation: fall-11 20s -28s linear infinite;
}

@keyframes fall-11 {
  79.299% {
    transform: translate(30.5181vw, 79.299vh) scale(0.9079);
  }
  to {
    transform: translate(25.96095vw, 100vh) scale(0.9079);
  }
}
.snow:nth-child(12) {
  opacity: 0.1416;
  transform: translate(84.319vw, -10px) scale(0.9941);
  animation: fall-12 16s -10s linear infinite;
}

@keyframes fall-12 {
  31.173% {
    transform: translate(93.1248vw, 31.173vh) scale(0.9941);
  }
  to {
    transform: translate(88.7219vw, 100vh) scale(0.9941);
  }
}
.snow:nth-child(13) {
  opacity: 0.0407;
  transform: translate(82.8077vw, -10px) scale(0.2645);
  animation: fall-13 15s -23s linear infinite;
}

@keyframes fall-13 {
  55.849% {
    transform: translate(90.3481vw, 55.849vh) scale(0.2645);
  }
  to {
    transform: translate(86.5779vw, 100vh) scale(0.2645);
  }
}
.snow:nth-child(14) {
  opacity: 0.3573;
  transform: translate(57.2714vw, -10px) scale(0.9286);
  animation: fall-14 16s -25s linear infinite;
}

@keyframes fall-14 {
  32.057% {
    transform: translate(53.3703vw, 32.057vh) scale(0.9286);
  }
  to {
    transform: translate(55.32085vw, 100vh) scale(0.9286);
  }
}
.snow:nth-child(15) {
  opacity: 0.5343;
  transform: translate(49.2905vw, -10px) scale(0.9634);
  animation: fall-15 12s -20s linear infinite;
}

@keyframes fall-15 {
  41.152% {
    transform: translate(41.0859vw, 41.152vh) scale(0.9634);
  }
  to {
    transform: translate(45.1882vw, 100vh) scale(0.9634);
  }
}
.snow:nth-child(16) {
  opacity: 0.4035;
  transform: translate(48.4701vw, -10px) scale(0.8195);
  animation: fall-16 17s -19s linear infinite;
}

@keyframes fall-16 {
  55.084% {
    transform: translate(44.6925vw, 55.084vh) scale(0.8195);
  }
  to {
    transform: translate(46.5813vw, 100vh) scale(0.8195);
  }
}
.snow:nth-child(17) {
  opacity: 0.6587;
  transform: translate(25.3969vw, -10px) scale(0.0303);
  animation: fall-17 14s -11s linear infinite;
}

@keyframes fall-17 {
  73.329% {
    transform: translate(31.6441vw, 73.329vh) scale(0.0303);
  }
  to {
    transform: translate(28.5205vw, 100vh) scale(0.0303);
  }
}
.snow:nth-child(18) {
  opacity: 0.3134;
  transform: translate(50.3377vw, -10px) scale(0.2103);
  animation: fall-18 17s -29s linear infinite;
}

@keyframes fall-18 {
  67.348% {
    transform: translate(47.4422vw, 67.348vh) scale(0.2103);
  }
  to {
    transform: translate(48.88995vw, 100vh) scale(0.2103);
  }
}
.snow:nth-child(19) {
  opacity: 0.286;
  transform: translate(31.3248vw, -10px) scale(0.5464);
  animation: fall-19 25s -13s linear infinite;
}

@keyframes fall-19 {
  67.638% {
    transform: translate(25.0496vw, 67.638vh) scale(0.5464);
  }
  to {
    transform: translate(28.1872vw, 100vh) scale(0.5464);
  }
}
.snow:nth-child(20) {
  opacity: 0.334;
  transform: translate(73.2772vw, -10px) scale(0.5362);
  animation: fall-20 21s -17s linear infinite;
}

@keyframes fall-20 {
  60.588% {
    transform: translate(68.1502vw, 60.588vh) scale(0.5362);
  }
  to {
    transform: translate(70.7137vw, 100vh) scale(0.5362);
  }
}
.snow:nth-child(21) {
  opacity: 0.2234;
  transform: translate(78.3662vw, -10px) scale(0.9243);
  animation: fall-21 26s -3s linear infinite;
}

@keyframes fall-21 {
  36.77% {
    transform: translate(87.2185vw, 36.77vh) scale(0.9243);
  }
  to {
    transform: translate(82.79235vw, 100vh) scale(0.9243);
  }
}
.snow:nth-child(22) {
  opacity: 0.7504;
  transform: translate(34.6907vw, -10px) scale(0.1016);
  animation: fall-22 14s -27s linear infinite;
}

@keyframes fall-22 {
  34.711% {
    transform: translate(30.3116vw, 34.711vh) scale(0.1016);
  }
  to {
    transform: translate(32.50115vw, 100vh) scale(0.1016);
  }
}
.snow:nth-child(23) {
  opacity: 0.5911;
  transform: translate(87.5369vw, -10px) scale(0.8141);
  animation: fall-23 15s -1s linear infinite;
}

@keyframes fall-23 {
  68.343% {
    transform: translate(94.6582vw, 68.343vh) scale(0.8141);
  }
  to {
    transform: translate(91.09755vw, 100vh) scale(0.8141);
  }
}
.snow:nth-child(24) {
  opacity: 0.0557;
  transform: translate(4.8453vw, -10px) scale(0.4735);
  animation: fall-24 28s -17s linear infinite;
}

@keyframes fall-24 {
  48.562% {
    transform: translate(14.7994vw, 48.562vh) scale(0.4735);
  }
  to {
    transform: translate(9.82235vw, 100vh) scale(0.4735);
  }
}
.snow:nth-child(25) {
  opacity: 0.4077;
  transform: translate(51.2843vw, -10px) scale(0.5813);
  animation: fall-25 20s -15s linear infinite;
}

@keyframes fall-25 {
  69.633% {
    transform: translate(52.9065vw, 69.633vh) scale(0.5813);
  }
  to {
    transform: translate(52.0954vw, 100vh) scale(0.5813);
  }
}
.snow:nth-child(26) {
  opacity: 0.7602;
  transform: translate(81.7656vw, -10px) scale(0.9613);
  animation: fall-26 25s -7s linear infinite;
}

@keyframes fall-26 {
  57.939% {
    transform: translate(77.9256vw, 57.939vh) scale(0.9613);
  }
  to {
    transform: translate(79.8456vw, 100vh) scale(0.9613);
  }
}
.snow:nth-child(27) {
  opacity: 0.6036;
  transform: translate(12.2077vw, -10px) scale(0.496);
  animation: fall-27 26s -21s linear infinite;
}

@keyframes fall-27 {
  51.408% {
    transform: translate(10.0769vw, 51.408vh) scale(0.496);
  }
  to {
    transform: translate(11.1423vw, 100vh) scale(0.496);
  }
}
.snow:nth-child(28) {
  opacity: 0.8021;
  transform: translate(56.7177vw, -10px) scale(0.869);
  animation: fall-28 22s -24s linear infinite;
}

@keyframes fall-28 {
  75.284% {
    transform: translate(55.1284vw, 75.284vh) scale(0.869);
  }
  to {
    transform: translate(55.92305vw, 100vh) scale(0.869);
  }
}
.snow:nth-child(29) {
  opacity: 0.1209;
  transform: translate(14.3292vw, -10px) scale(0.5427);
  animation: fall-29 26s -5s linear infinite;
}

@keyframes fall-29 {
  63.588% {
    transform: translate(8.1846vw, 63.588vh) scale(0.5427);
  }
  to {
    transform: translate(11.2569vw, 100vh) scale(0.5427);
  }
}
.snow:nth-child(30) {
  opacity: 0.3694;
  transform: translate(97.0478vw, -10px) scale(0.785);
  animation: fall-30 10s -1s linear infinite;
}

@keyframes fall-30 {
  47.829% {
    transform: translate(89.6417vw, 47.829vh) scale(0.785);
  }
  to {
    transform: translate(93.34475vw, 100vh) scale(0.785);
  }
}
.snow:nth-child(31) {
  opacity: 0.397;
  transform: translate(88.9203vw, -10px) scale(0.513);
  animation: fall-31 24s -8s linear infinite;
}

@keyframes fall-31 {
  50.376% {
    transform: translate(87.345vw, 50.376vh) scale(0.513);
  }
  to {
    transform: translate(88.13265vw, 100vh) scale(0.513);
  }
}
.snow:nth-child(32) {
  opacity: 0.5435;
  transform: translate(21.8437vw, -10px) scale(0.2445);
  animation: fall-32 21s -17s linear infinite;
}

@keyframes fall-32 {
  66.165% {
    transform: translate(13.9707vw, 66.165vh) scale(0.2445);
  }
  to {
    transform: translate(17.9072vw, 100vh) scale(0.2445);
  }
}
.snow:nth-child(33) {
  opacity: 0.1124;
  transform: translate(6.1584vw, -10px) scale(0.3454);
  animation: fall-33 26s -28s linear infinite;
}

@keyframes fall-33 {
  54.462% {
    transform: translate(15.9908vw, 54.462vh) scale(0.3454);
  }
  to {
    transform: translate(11.0746vw, 100vh) scale(0.3454);
  }
}
.snow:nth-child(34) {
  opacity: 0.771;
  transform: translate(0.1617vw, -10px) scale(0.4249);
  animation: fall-34 20s -4s linear infinite;
}

@keyframes fall-34 {
  51.72% {
    transform: translate(5.6907vw, 51.72vh) scale(0.4249);
  }
  to {
    transform: translate(2.9262vw, 100vh) scale(0.4249);
  }
}
.snow:nth-child(35) {
  opacity: 0.9855;
  transform: translate(18.1066vw, -10px) scale(0.5031);
  animation: fall-35 12s -28s linear infinite;
}

@keyframes fall-35 {
  60.11% {
    transform: translate(10.4465vw, 60.11vh) scale(0.5031);
  }
  to {
    transform: translate(14.27655vw, 100vh) scale(0.5031);
  }
}
.snow:nth-child(36) {
  opacity: 0.2484;
  transform: translate(42.7393vw, -10px) scale(0.5858);
  animation: fall-36 27s -29s linear infinite;
}

@keyframes fall-36 {
  61.658% {
    transform: translate(38.668vw, 61.658vh) scale(0.5858);
  }
  to {
    transform: translate(40.70365vw, 100vh) scale(0.5858);
  }
}
.snow:nth-child(37) {
  opacity: 0.0953;
  transform: translate(36.6731vw, -10px) scale(0.123);
  animation: fall-37 20s -25s linear infinite;
}

@keyframes fall-37 {
  73.162% {
    transform: translate(42.1233vw, 73.162vh) scale(0.123);
  }
  to {
    transform: translate(39.3982vw, 100vh) scale(0.123);
  }
}
.snow:nth-child(38) {
  opacity: 0.6005;
  transform: translate(66.3011vw, -10px) scale(0.9742);
  animation: fall-38 24s -30s linear infinite;
}

@keyframes fall-38 {
  34.491% {
    transform: translate(57.7005vw, 34.491vh) scale(0.9742);
  }
  to {
    transform: translate(62.0008vw, 100vh) scale(0.9742);
  }
}
.snow:nth-child(39) {
  opacity: 0.7302;
  transform: translate(48.9673vw, -10px) scale(0.1349);
  animation: fall-39 30s -3s linear infinite;
}

@keyframes fall-39 {
  75.258% {
    transform: translate(44.0912vw, 75.258vh) scale(0.1349);
  }
  to {
    transform: translate(46.52925vw, 100vh) scale(0.1349);
  }
}
.snow:nth-child(40) {
  opacity: 0.0298;
  transform: translate(23.8421vw, -10px) scale(0.0268);
  animation: fall-40 27s -10s linear infinite;
}

@keyframes fall-40 {
  67.81% {
    transform: translate(30.8766vw, 67.81vh) scale(0.0268);
  }
  to {
    transform: translate(27.35935vw, 100vh) scale(0.0268);
  }
}
.snow:nth-child(41) {
  opacity: 0.997;
  transform: translate(12.6897vw, -10px) scale(0.8438);
  animation: fall-41 30s -29s linear infinite;
}

@keyframes fall-41 {
  72.799% {
    transform: translate(18.5314vw, 72.799vh) scale(0.8438);
  }
  to {
    transform: translate(15.61055vw, 100vh) scale(0.8438);
  }
}
.snow:nth-child(42) {
  opacity: 0.9547;
  transform: translate(8.3046vw, -10px) scale(0.497);
  animation: fall-42 21s -10s linear infinite;
}

@keyframes fall-42 {
  40.472% {
    transform: translate(5.5071vw, 40.472vh) scale(0.497);
  }
  to {
    transform: translate(6.90585vw, 100vh) scale(0.497);
  }
}
.snow:nth-child(43) {
  opacity: 0.6248;
  transform: translate(60.0941vw, -10px) scale(0.0297);
  animation: fall-43 21s -12s linear infinite;
}

@keyframes fall-43 {
  50.608% {
    transform: translate(60.7152vw, 50.608vh) scale(0.0297);
  }
  to {
    transform: translate(60.40465vw, 100vh) scale(0.0297);
  }
}
.snow:nth-child(44) {
  opacity: 0.0821;
  transform: translate(45.5324vw, -10px) scale(0.154);
  animation: fall-44 17s -28s linear infinite;
}

@keyframes fall-44 {
  64.213% {
    transform: translate(38.1145vw, 64.213vh) scale(0.154);
  }
  to {
    transform: translate(41.82345vw, 100vh) scale(0.154);
  }
}
.snow:nth-child(45) {
  opacity: 0.0477;
  transform: translate(0.3842vw, -10px) scale(0.9071);
  animation: fall-45 24s -20s linear infinite;
}

@keyframes fall-45 {
  46.178% {
    transform: translate(-0.2057vw, 46.178vh) scale(0.9071);
  }
  to {
    transform: translate(0.08925vw, 100vh) scale(0.9071);
  }
}
.snow:nth-child(46) {
  opacity: 0.4504;
  transform: translate(65.8933vw, -10px) scale(0.725);
  animation: fall-46 21s -12s linear infinite;
}

@keyframes fall-46 {
  48.742% {
    transform: translate(58.2602vw, 48.742vh) scale(0.725);
  }
  to {
    transform: translate(62.07675vw, 100vh) scale(0.725);
  }
}
.snow:nth-child(47) {
  opacity: 0.7812;
  transform: translate(67.0505vw, -10px) scale(0.4646);
  animation: fall-47 12s -3s linear infinite;
}

@keyframes fall-47 {
  58.38% {
    transform: translate(66.8254vw, 58.38vh) scale(0.4646);
  }
  to {
    transform: translate(66.93795vw, 100vh) scale(0.4646);
  }
}
.snow:nth-child(48) {
  opacity: 0.2416;
  transform: translate(74.2364vw, -10px) scale(0.5451);
  animation: fall-48 29s -13s linear infinite;
}

@keyframes fall-48 {
  59.501% {
    transform: translate(75.0034vw, 59.501vh) scale(0.5451);
  }
  to {
    transform: translate(74.6199vw, 100vh) scale(0.5451);
  }
}
.snow:nth-child(49) {
  opacity: 0.8755;
  transform: translate(52.9191vw, -10px) scale(0.7393);
  animation: fall-49 20s -11s linear infinite;
}

@keyframes fall-49 {
  63.239% {
    transform: translate(56.2544vw, 63.239vh) scale(0.7393);
  }
  to {
    transform: translate(54.58675vw, 100vh) scale(0.7393);
  }
}
.snow:nth-child(50) {
  opacity: 0.9063;
  transform: translate(89.7629vw, -10px) scale(0.5811);
  animation: fall-50 10s -28s linear infinite;
}

@keyframes fall-50 {
  70.568% {
    transform: translate(81.2745vw, 70.568vh) scale(0.5811);
  }
  to {
    transform: translate(85.5187vw, 100vh) scale(0.5811);
  }
}
.snow:nth-child(51) {
  opacity: 0.3705;
  transform: translate(40.5631vw, -10px) scale(0.7751);
  animation: fall-51 16s -15s linear infinite;
}

@keyframes fall-51 {
  48.249% {
    transform: translate(45.4293vw, 48.249vh) scale(0.7751);
  }
  to {
    transform: translate(42.9962vw, 100vh) scale(0.7751);
  }
}
.snow:nth-child(52) {
  opacity: 0.911;
  transform: translate(54.6818vw, -10px) scale(0.4221);
  animation: fall-52 30s -21s linear infinite;
}

@keyframes fall-52 {
  31.042% {
    transform: translate(53.8743vw, 31.042vh) scale(0.4221);
  }
  to {
    transform: translate(54.27805vw, 100vh) scale(0.4221);
  }
}
.snow:nth-child(53) {
  opacity: 0.9248;
  transform: translate(82.1298vw, -10px) scale(0.9502);
  animation: fall-53 18s -9s linear infinite;
}

@keyframes fall-53 {
  65.366% {
    transform: translate(86.4887vw, 65.366vh) scale(0.9502);
  }
  to {
    transform: translate(84.30925vw, 100vh) scale(0.9502);
  }
}
.snow:nth-child(54) {
  opacity: 0.6821;
  transform: translate(66.8619vw, -10px) scale(0.4796);
  animation: fall-54 24s -3s linear infinite;
}

@keyframes fall-54 {
  34.014% {
    transform: translate(61.8305vw, 34.014vh) scale(0.4796);
  }
  to {
    transform: translate(64.3462vw, 100vh) scale(0.4796);
  }
}
.snow:nth-child(55) {
  opacity: 0.2412;
  transform: translate(17.7682vw, -10px) scale(0.1051);
  animation: fall-55 26s -16s linear infinite;
}

@keyframes fall-55 {
  31.903% {
    transform: translate(25.4694vw, 31.903vh) scale(0.1051);
  }
  to {
    transform: translate(21.6188vw, 100vh) scale(0.1051);
  }
}
.snow:nth-child(56) {
  opacity: 0.6773;
  transform: translate(80.9003vw, -10px) scale(0.6912);
  animation: fall-56 26s -21s linear infinite;
}

@keyframes fall-56 {
  70.687% {
    transform: translate(89.0955vw, 70.687vh) scale(0.6912);
  }
  to {
    transform: translate(84.9979vw, 100vh) scale(0.6912);
  }
}
.snow:nth-child(57) {
  opacity: 0.7391;
  transform: translate(11.861vw, -10px) scale(0.6291);
  animation: fall-57 26s -24s linear infinite;
}

@keyframes fall-57 {
  67.145% {
    transform: translate(8.3693vw, 67.145vh) scale(0.6291);
  }
  to {
    transform: translate(10.11515vw, 100vh) scale(0.6291);
  }
}
.snow:nth-child(58) {
  opacity: 0.326;
  transform: translate(0.577vw, -10px) scale(0.4761);
  animation: fall-58 13s -25s linear infinite;
}

@keyframes fall-58 {
  35.817% {
    transform: translate(-3.0141vw, 35.817vh) scale(0.4761);
  }
  to {
    transform: translate(-1.21855vw, 100vh) scale(0.4761);
  }
}
.snow:nth-child(59) {
  opacity: 0.4271;
  transform: translate(99.5539vw, -10px) scale(0.4479);
  animation: fall-59 12s -21s linear infinite;
}

@keyframes fall-59 {
  42.159% {
    transform: translate(105.6418vw, 42.159vh) scale(0.4479);
  }
  to {
    transform: translate(102.59785vw, 100vh) scale(0.4479);
  }
}
.snow:nth-child(60) {
  opacity: 0.484;
  transform: translate(4.6346vw, -10px) scale(0.3036);
  animation: fall-60 16s -28s linear infinite;
}

@keyframes fall-60 {
  69.814% {
    transform: translate(-0.87vw, 69.814vh) scale(0.3036);
  }
  to {
    transform: translate(1.8823vw, 100vh) scale(0.3036);
  }
}
.snow:nth-child(61) {
  opacity: 0.5759;
  transform: translate(70.1879vw, -10px) scale(0.8133);
  animation: fall-61 24s -21s linear infinite;
}

@keyframes fall-61 {
  30.85% {
    transform: translate(63.7717vw, 30.85vh) scale(0.8133);
  }
  to {
    transform: translate(66.9798vw, 100vh) scale(0.8133);
  }
}
.snow:nth-child(62) {
  opacity: 0.7191;
  transform: translate(82.872vw, -10px) scale(0.6652);
  animation: fall-62 12s -21s linear infinite;
}

@keyframes fall-62 {
  44.657% {
    transform: translate(80.4354vw, 44.657vh) scale(0.6652);
  }
  to {
    transform: translate(81.6537vw, 100vh) scale(0.6652);
  }
}
.snow:nth-child(63) {
  opacity: 0.5357;
  transform: translate(99.5803vw, -10px) scale(0.8647);
  animation: fall-63 16s -18s linear infinite;
}

@keyframes fall-63 {
  30.946% {
    transform: translate(98.8558vw, 30.946vh) scale(0.8647);
  }
  to {
    transform: translate(99.21805vw, 100vh) scale(0.8647);
  }
}
.snow:nth-child(64) {
  opacity: 0.5057;
  transform: translate(37.2983vw, -10px) scale(0.5866);
  animation: fall-64 22s -26s linear infinite;
}

@keyframes fall-64 {
  63.602% {
    transform: translate(32.4892vw, 63.602vh) scale(0.5866);
  }
  to {
    transform: translate(34.89375vw, 100vh) scale(0.5866);
  }
}
.snow:nth-child(65) {
  opacity: 0.0793;
  transform: translate(32.5388vw, -10px) scale(0.7581);
  animation: fall-65 22s -26s linear infinite;
}

@keyframes fall-65 {
  64.098% {
    transform: translate(24.2009vw, 64.098vh) scale(0.7581);
  }
  to {
    transform: translate(28.36985vw, 100vh) scale(0.7581);
  }
}
.snow:nth-child(66) {
  opacity: 0.7828;
  transform: translate(97.8125vw, -10px) scale(0.1384);
  animation: fall-66 22s -2s linear infinite;
}

@keyframes fall-66 {
  79.707% {
    transform: translate(99.8174vw, 79.707vh) scale(0.1384);
  }
  to {
    transform: translate(98.81495vw, 100vh) scale(0.1384);
  }
}
.snow:nth-child(67) {
  opacity: 0.5367;
  transform: translate(29.5869vw, -10px) scale(0.8301);
  animation: fall-67 27s -4s linear infinite;
}

@keyframes fall-67 {
  33.689% {
    transform: translate(28.5502vw, 33.689vh) scale(0.8301);
  }
  to {
    transform: translate(29.06855vw, 100vh) scale(0.8301);
  }
}
.snow:nth-child(68) {
  opacity: 0.8471;
  transform: translate(62.1035vw, -10px) scale(0.9074);
  animation: fall-68 21s -16s linear infinite;
}

@keyframes fall-68 {
  30.823% {
    transform: translate(71.7809vw, 30.823vh) scale(0.9074);
  }
  to {
    transform: translate(66.9422vw, 100vh) scale(0.9074);
  }
}
.snow:nth-child(69) {
  opacity: 0.8215;
  transform: translate(93.2424vw, -10px) scale(0.3052);
  animation: fall-69 19s -17s linear infinite;
}

@keyframes fall-69 {
  46.679% {
    transform: translate(89.1356vw, 46.679vh) scale(0.3052);
  }
  to {
    transform: translate(91.189vw, 100vh) scale(0.3052);
  }
}
.snow:nth-child(70) {
  opacity: 0.5151;
  transform: translate(84.4146vw, -10px) scale(0.8553);
  animation: fall-70 12s -29s linear infinite;
}

@keyframes fall-70 {
  68.974% {
    transform: translate(76.7412vw, 68.974vh) scale(0.8553);
  }
  to {
    transform: translate(80.5779vw, 100vh) scale(0.8553);
  }
}
.snow:nth-child(71) {
  opacity: 0.1099;
  transform: translate(83.0377vw, -10px) scale(0.8244);
  animation: fall-71 28s -17s linear infinite;
}

@keyframes fall-71 {
  40.184% {
    transform: translate(78.5448vw, 40.184vh) scale(0.8244);
  }
  to {
    transform: translate(80.79125vw, 100vh) scale(0.8244);
  }
}
.snow:nth-child(72) {
  opacity: 0.0668;
  transform: translate(22.3049vw, -10px) scale(0.1017);
  animation: fall-72 19s -22s linear infinite;
}

@keyframes fall-72 {
  73.931% {
    transform: translate(15.0801vw, 73.931vh) scale(0.1017);
  }
  to {
    transform: translate(18.6925vw, 100vh) scale(0.1017);
  }
}
.snow:nth-child(73) {
  opacity: 0.4088;
  transform: translate(31.4111vw, -10px) scale(0.2826);
  animation: fall-73 17s -28s linear infinite;
}

@keyframes fall-73 {
  30.683% {
    transform: translate(31.3927vw, 30.683vh) scale(0.2826);
  }
  to {
    transform: translate(31.4019vw, 100vh) scale(0.2826);
  }
}
.snow:nth-child(74) {
  opacity: 0.2512;
  transform: translate(62.3873vw, -10px) scale(0.3724);
  animation: fall-74 26s -19s linear infinite;
}

@keyframes fall-74 {
  32.332% {
    transform: translate(68.0147vw, 32.332vh) scale(0.3724);
  }
  to {
    transform: translate(65.201vw, 100vh) scale(0.3724);
  }
}
.snow:nth-child(75) {
  opacity: 0.202;
  transform: translate(14.7998vw, -10px) scale(0.4464);
  animation: fall-75 26s -28s linear infinite;
}

@keyframes fall-75 {
  40.29% {
    transform: translate(21.2612vw, 40.29vh) scale(0.4464);
  }
  to {
    transform: translate(18.0305vw, 100vh) scale(0.4464);
  }
}
.snow:nth-child(76) {
  opacity: 0.5709;
  transform: translate(83.1736vw, -10px) scale(0.4366);
  animation: fall-76 26s -19s linear infinite;
}

@keyframes fall-76 {
  36.988% {
    transform: translate(92.0224vw, 36.988vh) scale(0.4366);
  }
  to {
    transform: translate(87.598vw, 100vh) scale(0.4366);
  }
}
.snow:nth-child(77) {
  opacity: 0.916;
  transform: translate(33.9954vw, -10px) scale(0.7009);
  animation: fall-77 23s -18s linear infinite;
}

@keyframes fall-77 {
  51.664% {
    transform: translate(38.0321vw, 51.664vh) scale(0.7009);
  }
  to {
    transform: translate(36.01375vw, 100vh) scale(0.7009);
  }
}
.snow:nth-child(78) {
  opacity: 0.2497;
  transform: translate(51.7242vw, -10px) scale(0.9602);
  animation: fall-78 28s -17s linear infinite;
}

@keyframes fall-78 {
  30.804% {
    transform: translate(55.8141vw, 30.804vh) scale(0.9602);
  }
  to {
    transform: translate(53.76915vw, 100vh) scale(0.9602);
  }
}
.snow:nth-child(79) {
  opacity: 0.4956;
  transform: translate(24.8728vw, -10px) scale(0.1383);
  animation: fall-79 21s -21s linear infinite;
}

@keyframes fall-79 {
  50.798% {
    transform: translate(21.3865vw, 50.798vh) scale(0.1383);
  }
  to {
    transform: translate(23.12965vw, 100vh) scale(0.1383);
  }
}
.snow:nth-child(80) {
  opacity: 0.8777;
  transform: translate(67.6136vw, -10px) scale(0.8286);
  animation: fall-80 30s -7s linear infinite;
}

@keyframes fall-80 {
  57.966% {
    transform: translate(67.267vw, 57.966vh) scale(0.8286);
  }
  to {
    transform: translate(67.4403vw, 100vh) scale(0.8286);
  }
}
.snow:nth-child(81) {
  opacity: 0.5137;
  transform: translate(39.1458vw, -10px) scale(0.8512);
  animation: fall-81 15s -24s linear infinite;
}

@keyframes fall-81 {
  33.222% {
    transform: translate(46.6654vw, 33.222vh) scale(0.8512);
  }
  to {
    transform: translate(42.9056vw, 100vh) scale(0.8512);
  }
}
.snow:nth-child(82) {
  opacity: 0.2577;
  transform: translate(53.2264vw, -10px) scale(0.4212);
  animation: fall-82 21s -11s linear infinite;
}

@keyframes fall-82 {
  57.21% {
    transform: translate(60.288vw, 57.21vh) scale(0.4212);
  }
  to {
    transform: translate(56.7572vw, 100vh) scale(0.4212);
  }
}
.snow:nth-child(83) {
  opacity: 0.7361;
  transform: translate(60.6885vw, -10px) scale(0.3197);
  animation: fall-83 12s -18s linear infinite;
}

@keyframes fall-83 {
  55.584% {
    transform: translate(54.2268vw, 55.584vh) scale(0.3197);
  }
  to {
    transform: translate(57.45765vw, 100vh) scale(0.3197);
  }
}
.snow:nth-child(84) {
  opacity: 0.0244;
  transform: translate(7.0964vw, -10px) scale(0.9472);
  animation: fall-84 18s -4s linear infinite;
}

@keyframes fall-84 {
  74.284% {
    transform: translate(-1.6722vw, 74.284vh) scale(0.9472);
  }
  to {
    transform: translate(2.7121vw, 100vh) scale(0.9472);
  }
}
.snow:nth-child(85) {
  opacity: 0.9084;
  transform: translate(45.3038vw, -10px) scale(0.3966);
  animation: fall-85 28s -24s linear infinite;
}

@keyframes fall-85 {
  73.978% {
    transform: translate(38.7254vw, 73.978vh) scale(0.3966);
  }
  to {
    transform: translate(42.0146vw, 100vh) scale(0.3966);
  }
}
.snow:nth-child(86) {
  opacity: 0.7333;
  transform: translate(81.2402vw, -10px) scale(0.0828);
  animation: fall-86 21s -1s linear infinite;
}

@keyframes fall-86 {
  45.847% {
    transform: translate(80.4341vw, 45.847vh) scale(0.0828);
  }
  to {
    transform: translate(80.83715vw, 100vh) scale(0.0828);
  }
}
.snow:nth-child(87) {
  opacity: 0.969;
  transform: translate(52.0884vw, -10px) scale(0.2244);
  animation: fall-87 27s -6s linear infinite;
}

@keyframes fall-87 {
  39.997% {
    transform: translate(54.3386vw, 39.997vh) scale(0.2244);
  }
  to {
    transform: translate(53.2135vw, 100vh) scale(0.2244);
  }
}
.snow:nth-child(88) {
  opacity: 0.6185;
  transform: translate(83.6217vw, -10px) scale(0.8928);
  animation: fall-88 25s -21s linear infinite;
}

@keyframes fall-88 {
  33.441% {
    transform: translate(74.9259vw, 33.441vh) scale(0.8928);
  }
  to {
    transform: translate(79.2738vw, 100vh) scale(0.8928);
  }
}
.snow:nth-child(89) {
  opacity: 0.1914;
  transform: translate(19.2729vw, -10px) scale(0.3469);
  animation: fall-89 24s -22s linear infinite;
}

@keyframes fall-89 {
  37.966% {
    transform: translate(23.9567vw, 37.966vh) scale(0.3469);
  }
  to {
    transform: translate(21.6148vw, 100vh) scale(0.3469);
  }
}
.snow:nth-child(90) {
  opacity: 0.6343;
  transform: translate(29.6237vw, -10px) scale(0.5935);
  animation: fall-90 18s -14s linear infinite;
}

@keyframes fall-90 {
  71.921% {
    transform: translate(27.2875vw, 71.921vh) scale(0.5935);
  }
  to {
    transform: translate(28.4556vw, 100vh) scale(0.5935);
  }
}
.snow:nth-child(91) {
  opacity: 0.327;
  transform: translate(88.0368vw, -10px) scale(0.617);
  animation: fall-91 30s -28s linear infinite;
}

@keyframes fall-91 {
  63.012% {
    transform: translate(85.3946vw, 63.012vh) scale(0.617);
  }
  to {
    transform: translate(86.7157vw, 100vh) scale(0.617);
  }
}
.snow:nth-child(92) {
  opacity: 0.5508;
  transform: translate(68.7194vw, -10px) scale(0.4852);
  animation: fall-92 15s -8s linear infinite;
}

@keyframes fall-92 {
  55.618% {
    transform: translate(62.4573vw, 55.618vh) scale(0.4852);
  }
  to {
    transform: translate(65.58835vw, 100vh) scale(0.4852);
  }
}
.snow:nth-child(93) {
  opacity: 0.5969;
  transform: translate(57.599vw, -10px) scale(0.2714);
  animation: fall-93 22s -4s linear infinite;
}

@keyframes fall-93 {
  31.533% {
    transform: translate(48.3881vw, 31.533vh) scale(0.2714);
  }
  to {
    transform: translate(52.99355vw, 100vh) scale(0.2714);
  }
}
.snow:nth-child(94) {
  opacity: 0.0746;
  transform: translate(90.1127vw, -10px) scale(0.4545);
  animation: fall-94 12s -7s linear infinite;
}

@keyframes fall-94 {
  35.359% {
    transform: translate(82.3604vw, 35.359vh) scale(0.4545);
  }
  to {
    transform: translate(86.23655vw, 100vh) scale(0.4545);
  }
}
.snow:nth-child(95) {
  opacity: 0.9768;
  transform: translate(71.4998vw, -10px) scale(0.0656);
  animation: fall-95 29s -6s linear infinite;
}

@keyframes fall-95 {
  55.46% {
    transform: translate(68.3484vw, 55.46vh) scale(0.0656);
  }
  to {
    transform: translate(69.9241vw, 100vh) scale(0.0656);
  }
}
.snow:nth-child(96) {
  opacity: 0.1535;
  transform: translate(80.0344vw, -10px) scale(0.3005);
  animation: fall-96 29s -3s linear infinite;
}

@keyframes fall-96 {
  58.343% {
    transform: translate(83.4968vw, 58.343vh) scale(0.3005);
  }
  to {
    transform: translate(81.7656vw, 100vh) scale(0.3005);
  }
}
.snow:nth-child(97) {
  opacity: 0.5271;
  transform: translate(38.5555vw, -10px) scale(0.3315);
  animation: fall-97 10s -12s linear infinite;
}

@keyframes fall-97 {
  60.916% {
    transform: translate(29.0004vw, 60.916vh) scale(0.3315);
  }
  to {
    transform: translate(33.77795vw, 100vh) scale(0.3315);
  }
}
.snow:nth-child(98) {
  opacity: 0.9627;
  transform: translate(25.0262vw, -10px) scale(0.3873);
  animation: fall-98 15s -19s linear infinite;
}

@keyframes fall-98 {
  78.833% {
    transform: translate(28.7316vw, 78.833vh) scale(0.3873);
  }
  to {
    transform: translate(26.8789vw, 100vh) scale(0.3873);
  }
}
.snow:nth-child(99) {
  opacity: 0.6839;
  transform: translate(25.808vw, -10px) scale(0.7747);
  animation: fall-99 26s -20s linear infinite;
}

@keyframes fall-99 {
  45.829% {
    transform: translate(32.8796vw, 45.829vh) scale(0.7747);
  }
  to {
    transform: translate(29.3438vw, 100vh) scale(0.7747);
  }
}
.snow:nth-child(100) {
  opacity: 0.6312;
  transform: translate(93.1297vw, -10px) scale(0.7667);
  animation: fall-100 10s -28s linear infinite;
}

@keyframes fall-100 {
  45.884% {
    transform: translate(102.3254vw, 45.884vh) scale(0.7667);
  }
  to {
    transform: translate(97.72755vw, 100vh) scale(0.7667);
  }
}
.snow:nth-child(101) {
  opacity: 0.2644;
  transform: translate(89.6644vw, -10px) scale(0.9839);
  animation: fall-101 30s -26s linear infinite;
}

@keyframes fall-101 {
  68.367% {
    transform: translate(85.4347vw, 68.367vh) scale(0.9839);
  }
  to {
    transform: translate(87.54955vw, 100vh) scale(0.9839);
  }
}
.snow:nth-child(102) {
  opacity: 0.8946;
  transform: translate(40.2271vw, -10px) scale(0.8);
  animation: fall-102 25s -8s linear infinite;
}

@keyframes fall-102 {
  54.784% {
    transform: translate(30.9129vw, 54.784vh) scale(0.8);
  }
  to {
    transform: translate(35.57vw, 100vh) scale(0.8);
  }
}
.snow:nth-child(103) {
  opacity: 0.2851;
  transform: translate(36.7646vw, -10px) scale(0.2809);
  animation: fall-103 29s -3s linear infinite;
}

@keyframes fall-103 {
  33.994% {
    transform: translate(33.1491vw, 33.994vh) scale(0.2809);
  }
  to {
    transform: translate(34.95685vw, 100vh) scale(0.2809);
  }
}
.snow:nth-child(104) {
  opacity: 0.8157;
  transform: translate(67.5922vw, -10px) scale(0.3151);
  animation: fall-104 23s -4s linear infinite;
}

@keyframes fall-104 {
  53.809% {
    transform: translate(71.4755vw, 53.809vh) scale(0.3151);
  }
  to {
    transform: translate(69.53385vw, 100vh) scale(0.3151);
  }
}
.snow:nth-child(105) {
  opacity: 0.6866;
  transform: translate(51.7331vw, -10px) scale(0.4256);
  animation: fall-105 12s -7s linear infinite;
}

@keyframes fall-105 {
  42.629% {
    transform: translate(61.3189vw, 42.629vh) scale(0.4256);
  }
  to {
    transform: translate(56.526vw, 100vh) scale(0.4256);
  }
}
.snow:nth-child(106) {
  opacity: 0.4761;
  transform: translate(48.859vw, -10px) scale(0.6127);
  animation: fall-106 13s -16s linear infinite;
}

@keyframes fall-106 {
  75.392% {
    transform: translate(47.6825vw, 75.392vh) scale(0.6127);
  }
  to {
    transform: translate(48.27075vw, 100vh) scale(0.6127);
  }
}
.snow:nth-child(107) {
  opacity: 0.5337;
  transform: translate(83.3694vw, -10px) scale(0.2621);
  animation: fall-107 17s -22s linear infinite;
}

@keyframes fall-107 {
  30.665% {
    transform: translate(84.3673vw, 30.665vh) scale(0.2621);
  }
  to {
    transform: translate(83.86835vw, 100vh) scale(0.2621);
  }
}
.snow:nth-child(108) {
  opacity: 0.0717;
  transform: translate(41.6583vw, -10px) scale(0.1932);
  animation: fall-108 30s -6s linear infinite;
}

@keyframes fall-108 {
  68.828% {
    transform: translate(48.2784vw, 68.828vh) scale(0.1932);
  }
  to {
    transform: translate(44.96835vw, 100vh) scale(0.1932);
  }
}
.snow:nth-child(109) {
  opacity: 0.9345;
  transform: translate(30.0009vw, -10px) scale(0.5547);
  animation: fall-109 13s -29s linear infinite;
}

@keyframes fall-109 {
  69.496% {
    transform: translate(21.0378vw, 69.496vh) scale(0.5547);
  }
  to {
    transform: translate(25.51935vw, 100vh) scale(0.5547);
  }
}
.snow:nth-child(110) {
  opacity: 0.0625;
  transform: translate(22.0819vw, -10px) scale(0.7592);
  animation: fall-110 20s -15s linear infinite;
}

@keyframes fall-110 {
  64.318% {
    transform: translate(26.3231vw, 64.318vh) scale(0.7592);
  }
  to {
    transform: translate(24.2025vw, 100vh) scale(0.7592);
  }
}
.snow:nth-child(111) {
  opacity: 0.4564;
  transform: translate(19.6204vw, -10px) scale(0.7116);
  animation: fall-111 26s -21s linear infinite;
}

@keyframes fall-111 {
  40.137% {
    transform: translate(19.183vw, 40.137vh) scale(0.7116);
  }
  to {
    transform: translate(19.4017vw, 100vh) scale(0.7116);
  }
}
.snow:nth-child(112) {
  opacity: 0.0096;
  transform: translate(80.6295vw, -10px) scale(0.6243);
  animation: fall-112 10s -1s linear infinite;
}

@keyframes fall-112 {
  44.037% {
    transform: translate(81.048vw, 44.037vh) scale(0.6243);
  }
  to {
    transform: translate(80.83875vw, 100vh) scale(0.6243);
  }
}
.snow:nth-child(113) {
  opacity: 0.4059;
  transform: translate(35.0058vw, -10px) scale(0.7014);
  animation: fall-113 19s -28s linear infinite;
}

@keyframes fall-113 {
  71.695% {
    transform: translate(33.7867vw, 71.695vh) scale(0.7014);
  }
  to {
    transform: translate(34.39625vw, 100vh) scale(0.7014);
  }
}
.snow:nth-child(114) {
  opacity: 0.5329;
  transform: translate(69.5074vw, -10px) scale(0.0292);
  animation: fall-114 23s -4s linear infinite;
}

@keyframes fall-114 {
  57.054% {
    transform: translate(78.7613vw, 57.054vh) scale(0.0292);
  }
  to {
    transform: translate(74.13435vw, 100vh) scale(0.0292);
  }
}
.snow:nth-child(115) {
  opacity: 0.737;
  transform: translate(39.6035vw, -10px) scale(0.491);
  animation: fall-115 17s -5s linear infinite;
}

@keyframes fall-115 {
  31.242% {
    transform: translate(44.6034vw, 31.242vh) scale(0.491);
  }
  to {
    transform: translate(42.10345vw, 100vh) scale(0.491);
  }
}
.snow:nth-child(116) {
  opacity: 0.6157;
  transform: translate(7.3115vw, -10px) scale(0.1841);
  animation: fall-116 30s -10s linear infinite;
}

@keyframes fall-116 {
  39.537% {
    transform: translate(-0.0213vw, 39.537vh) scale(0.1841);
  }
  to {
    transform: translate(3.6451vw, 100vh) scale(0.1841);
  }
}
.snow:nth-child(117) {
  opacity: 0.9336;
  transform: translate(2.6782vw, -10px) scale(0.4159);
  animation: fall-117 13s -13s linear infinite;
}

@keyframes fall-117 {
  59.675% {
    transform: translate(5.3188vw, 59.675vh) scale(0.4159);
  }
  to {
    transform: translate(3.9985vw, 100vh) scale(0.4159);
  }
}
.snow:nth-child(118) {
  opacity: 0.3956;
  transform: translate(65.3466vw, -10px) scale(0.8472);
  animation: fall-118 23s -11s linear infinite;
}

@keyframes fall-118 {
  57.653% {
    transform: translate(70.0764vw, 57.653vh) scale(0.8472);
  }
  to {
    transform: translate(67.7115vw, 100vh) scale(0.8472);
  }
}
.snow:nth-child(119) {
  opacity: 0.389;
  transform: translate(49.1169vw, -10px) scale(0.4351);
  animation: fall-119 22s -16s linear infinite;
}

@keyframes fall-119 {
  32.865% {
    transform: translate(50.603vw, 32.865vh) scale(0.4351);
  }
  to {
    transform: translate(49.85995vw, 100vh) scale(0.4351);
  }
}
.snow:nth-child(120) {
  opacity: 0.2845;
  transform: translate(95.4701vw, -10px) scale(0.283);
  animation: fall-120 30s -9s linear infinite;
}

@keyframes fall-120 {
  73.857% {
    transform: translate(86.2387vw, 73.857vh) scale(0.283);
  }
  to {
    transform: translate(90.8544vw, 100vh) scale(0.283);
  }
}
.snow:nth-child(121) {
  opacity: 0.9611;
  transform: translate(74.2424vw, -10px) scale(0.2465);
  animation: fall-121 18s -17s linear infinite;
}

@keyframes fall-121 {
  66.197% {
    transform: translate(68.3005vw, 66.197vh) scale(0.2465);
  }
  to {
    transform: translate(71.27145vw, 100vh) scale(0.2465);
  }
}
.snow:nth-child(122) {
  opacity: 0.9302;
  transform: translate(67.9856vw, -10px) scale(0.7573);
  animation: fall-122 25s -21s linear infinite;
}

@keyframes fall-122 {
  72.932% {
    transform: translate(60.7666vw, 72.932vh) scale(0.7573);
  }
  to {
    transform: translate(64.3761vw, 100vh) scale(0.7573);
  }
}
.snow:nth-child(123) {
  opacity: 0.4454;
  transform: translate(61.8709vw, -10px) scale(0.4394);
  animation: fall-123 12s -17s linear infinite;
}

@keyframes fall-123 {
  69.038% {
    transform: translate(54.8179vw, 69.038vh) scale(0.4394);
  }
  to {
    transform: translate(58.3444vw, 100vh) scale(0.4394);
  }
}
.snow:nth-child(124) {
  opacity: 0.3051;
  transform: translate(77.6358vw, -10px) scale(0.3392);
  animation: fall-124 28s -5s linear infinite;
}

@keyframes fall-124 {
  37.83% {
    transform: translate(87.2065vw, 37.83vh) scale(0.3392);
  }
  to {
    transform: translate(82.42115vw, 100vh) scale(0.3392);
  }
}
.snow:nth-child(125) {
  opacity: 0.8322;
  transform: translate(63.4446vw, -10px) scale(0.5945);
  animation: fall-125 29s -5s linear infinite;
}

@keyframes fall-125 {
  60.503% {
    transform: translate(68.8464vw, 60.503vh) scale(0.5945);
  }
  to {
    transform: translate(66.1455vw, 100vh) scale(0.5945);
  }
}
.snow:nth-child(126) {
  opacity: 0.453;
  transform: translate(93.2759vw, -10px) scale(0.4895);
  animation: fall-126 24s -1s linear infinite;
}

@keyframes fall-126 {
  56.855% {
    transform: translate(102.7574vw, 56.855vh) scale(0.4895);
  }
  to {
    transform: translate(98.01665vw, 100vh) scale(0.4895);
  }
}
.snow:nth-child(127) {
  opacity: 0.2481;
  transform: translate(88.8966vw, -10px) scale(0.0541);
  animation: fall-127 13s -26s linear infinite;
}

@keyframes fall-127 {
  78.956% {
    transform: translate(89.6262vw, 78.956vh) scale(0.0541);
  }
  to {
    transform: translate(89.2614vw, 100vh) scale(0.0541);
  }
}
.snow:nth-child(128) {
  opacity: 0.5549;
  transform: translate(91.2594vw, -10px) scale(0.6798);
  animation: fall-128 19s -28s linear infinite;
}

@keyframes fall-128 {
  37.682% {
    transform: translate(86.4181vw, 37.682vh) scale(0.6798);
  }
  to {
    transform: translate(88.83875vw, 100vh) scale(0.6798);
  }
}
.snow:nth-child(129) {
  opacity: 0.2584;
  transform: translate(44.5528vw, -10px) scale(0.8794);
  animation: fall-129 19s -21s linear infinite;
}

@keyframes fall-129 {
  46.085% {
    transform: translate(36.6408vw, 46.085vh) scale(0.8794);
  }
  to {
    transform: translate(40.5968vw, 100vh) scale(0.8794);
  }
}
.snow:nth-child(130) {
  opacity: 0.8991;
  transform: translate(18.6568vw, -10px) scale(0.1609);
  animation: fall-130 19s -20s linear infinite;
}

@keyframes fall-130 {
  48.055% {
    transform: translate(22.2078vw, 48.055vh) scale(0.1609);
  }
  to {
    transform: translate(20.4323vw, 100vh) scale(0.1609);
  }
}
.snow:nth-child(131) {
  opacity: 0.8657;
  transform: translate(62.1706vw, -10px) scale(0.3265);
  animation: fall-131 10s -5s linear infinite;
}

@keyframes fall-131 {
  76.139% {
    transform: translate(53.763vw, 76.139vh) scale(0.3265);
  }
  to {
    transform: translate(57.9668vw, 100vh) scale(0.3265);
  }
}
.snow:nth-child(132) {
  opacity: 0.2149;
  transform: translate(99.8012vw, -10px) scale(0.1276);
  animation: fall-132 21s -8s linear infinite;
}

@keyframes fall-132 {
  31.787% {
    transform: translate(102.8646vw, 31.787vh) scale(0.1276);
  }
  to {
    transform: translate(101.3329vw, 100vh) scale(0.1276);
  }
}
.snow:nth-child(133) {
  opacity: 0.6232;
  transform: translate(44.2709vw, -10px) scale(0.4366);
  animation: fall-133 19s -27s linear infinite;
}

@keyframes fall-133 {
  32.168% {
    transform: translate(43.6266vw, 32.168vh) scale(0.4366);
  }
  to {
    transform: translate(43.94875vw, 100vh) scale(0.4366);
  }
}
.snow:nth-child(134) {
  opacity: 0.5691;
  transform: translate(13.4873vw, -10px) scale(0.0054);
  animation: fall-134 17s -7s linear infinite;
}

@keyframes fall-134 {
  75.332% {
    transform: translate(20.1821vw, 75.332vh) scale(0.0054);
  }
  to {
    transform: translate(16.8347vw, 100vh) scale(0.0054);
  }
}
.snow:nth-child(135) {
  opacity: 0.8316;
  transform: translate(20.6722vw, -10px) scale(0.3068);
  animation: fall-135 12s -25s linear infinite;
}

@keyframes fall-135 {
  30.228% {
    transform: translate(20.889vw, 30.228vh) scale(0.3068);
  }
  to {
    transform: translate(20.7806vw, 100vh) scale(0.3068);
  }
}
.snow:nth-child(136) {
  opacity: 0.8547;
  transform: translate(9.9294vw, -10px) scale(0.9268);
  animation: fall-136 13s -5s linear infinite;
}

@keyframes fall-136 {
  70.191% {
    transform: translate(1.4833vw, 70.191vh) scale(0.9268);
  }
  to {
    transform: translate(5.70635vw, 100vh) scale(0.9268);
  }
}
.snow:nth-child(137) {
  opacity: 0.5717;
  transform: translate(47.4371vw, -10px) scale(0.3565);
  animation: fall-137 19s -28s linear infinite;
}

@keyframes fall-137 {
  44.863% {
    transform: translate(48.1827vw, 44.863vh) scale(0.3565);
  }
  to {
    transform: translate(47.8099vw, 100vh) scale(0.3565);
  }
}
.snow:nth-child(138) {
  opacity: 0.9181;
  transform: translate(59.6592vw, -10px) scale(0.0606);
  animation: fall-138 11s -17s linear infinite;
}

@keyframes fall-138 {
  34.809% {
    transform: translate(62.9312vw, 34.809vh) scale(0.0606);
  }
  to {
    transform: translate(61.2952vw, 100vh) scale(0.0606);
  }
}
.snow:nth-child(139) {
  opacity: 0.6725;
  transform: translate(72.473vw, -10px) scale(0.9382);
  animation: fall-139 26s -22s linear infinite;
}

@keyframes fall-139 {
  74.484% {
    transform: translate(72.7121vw, 74.484vh) scale(0.9382);
  }
  to {
    transform: translate(72.59255vw, 100vh) scale(0.9382);
  }
}
.snow:nth-child(140) {
  opacity: 0.7633;
  transform: translate(44.0464vw, -10px) scale(0.8102);
  animation: fall-140 15s -11s linear infinite;
}

@keyframes fall-140 {
  32.53% {
    transform: translate(36.1966vw, 32.53vh) scale(0.8102);
  }
  to {
    transform: translate(40.1215vw, 100vh) scale(0.8102);
  }
}
.snow:nth-child(141) {
  opacity: 0.2697;
  transform: translate(47.2505vw, -10px) scale(0.2484);
  animation: fall-141 28s -12s linear infinite;
}

@keyframes fall-141 {
  74.604% {
    transform: translate(51.3604vw, 74.604vh) scale(0.2484);
  }
  to {
    transform: translate(49.30545vw, 100vh) scale(0.2484);
  }
}
.snow:nth-child(142) {
  opacity: 0.398;
  transform: translate(1.4941vw, -10px) scale(0.7539);
  animation: fall-142 28s -20s linear infinite;
}

@keyframes fall-142 {
  45.577% {
    transform: translate(-7.1413vw, 45.577vh) scale(0.7539);
  }
  to {
    transform: translate(-2.8236vw, 100vh) scale(0.7539);
  }
}
.snow:nth-child(143) {
  opacity: 0.526;
  transform: translate(83.358vw, -10px) scale(0.688);
  animation: fall-143 15s -27s linear infinite;
}

@keyframes fall-143 {
  79.331% {
    transform: translate(91.636vw, 79.331vh) scale(0.688);
  }
  to {
    transform: translate(87.497vw, 100vh) scale(0.688);
  }
}
.snow:nth-child(144) {
  opacity: 0.1455;
  transform: translate(29.0334vw, -10px) scale(0.0997);
  animation: fall-144 15s -23s linear infinite;
}

@keyframes fall-144 {
  31.781% {
    transform: translate(27.2601vw, 31.781vh) scale(0.0997);
  }
  to {
    transform: translate(28.14675vw, 100vh) scale(0.0997);
  }
}
.snow:nth-child(145) {
  opacity: 0.3833;
  transform: translate(64.4139vw, -10px) scale(0.6631);
  animation: fall-145 19s -10s linear infinite;
}

@keyframes fall-145 {
  69.515% {
    transform: translate(63.7707vw, 69.515vh) scale(0.6631);
  }
  to {
    transform: translate(64.0923vw, 100vh) scale(0.6631);
  }
}
.snow:nth-child(146) {
  opacity: 0.3412;
  transform: translate(31.276vw, -10px) scale(0.444);
  animation: fall-146 30s -23s linear infinite;
}

@keyframes fall-146 {
  65.409% {
    transform: translate(31.022vw, 65.409vh) scale(0.444);
  }
  to {
    transform: translate(31.149vw, 100vh) scale(0.444);
  }
}
.snow:nth-child(147) {
  opacity: 0.811;
  transform: translate(50.0633vw, -10px) scale(0.3274);
  animation: fall-147 21s -13s linear infinite;
}

@keyframes fall-147 {
  49.002% {
    transform: translate(46.2026vw, 49.002vh) scale(0.3274);
  }
  to {
    transform: translate(48.13295vw, 100vh) scale(0.3274);
  }
}
.snow:nth-child(148) {
  opacity: 0.5842;
  transform: translate(24.287vw, -10px) scale(0.319);
  animation: fall-148 10s -8s linear infinite;
}

@keyframes fall-148 {
  40.733% {
    transform: translate(16.513vw, 40.733vh) scale(0.319);
  }
  to {
    transform: translate(20.4vw, 100vh) scale(0.319);
  }
}
.snow:nth-child(149) {
  opacity: 0.536;
  transform: translate(17.8387vw, -10px) scale(0.8485);
  animation: fall-149 20s -14s linear infinite;
}

@keyframes fall-149 {
  73.846% {
    transform: translate(19.1714vw, 73.846vh) scale(0.8485);
  }
  to {
    transform: translate(18.50505vw, 100vh) scale(0.8485);
  }
}
.snow:nth-child(150) {
  opacity: 0.9187;
  transform: translate(73.1715vw, -10px) scale(0.9624);
  animation: fall-150 26s -24s linear infinite;
}

@keyframes fall-150 {
  43.833% {
    transform: translate(74.0924vw, 43.833vh) scale(0.9624);
  }
  to {
    transform: translate(73.63195vw, 100vh) scale(0.9624);
  }
}
.snow:nth-child(151) {
  opacity: 0.8915;
  transform: translate(77.2107vw, -10px) scale(0.1841);
  animation: fall-151 21s -14s linear infinite;
}

@keyframes fall-151 {
  73.257% {
    transform: translate(67.7155vw, 73.257vh) scale(0.1841);
  }
  to {
    transform: translate(72.4631vw, 100vh) scale(0.1841);
  }
}
.snow:nth-child(152) {
  opacity: 0.8886;
  transform: translate(67.5541vw, -10px) scale(0.5392);
  animation: fall-152 24s -20s linear infinite;
}

@keyframes fall-152 {
  53.596% {
    transform: translate(62.5236vw, 53.596vh) scale(0.5392);
  }
  to {
    transform: translate(65.03885vw, 100vh) scale(0.5392);
  }
}
.snow:nth-child(153) {
  opacity: 0.2007;
  transform: translate(90.7086vw, -10px) scale(0.8016);
  animation: fall-153 21s -12s linear infinite;
}

@keyframes fall-153 {
  57.462% {
    transform: translate(98.2975vw, 57.462vh) scale(0.8016);
  }
  to {
    transform: translate(94.50305vw, 100vh) scale(0.8016);
  }
}
.snow:nth-child(154) {
  opacity: 0.705;
  transform: translate(28.0239vw, -10px) scale(0.061);
  animation: fall-154 15s -22s linear infinite;
}

@keyframes fall-154 {
  35.561% {
    transform: translate(28.1498vw, 35.561vh) scale(0.061);
  }
  to {
    transform: translate(28.08685vw, 100vh) scale(0.061);
  }
}
.snow:nth-child(155) {
  opacity: 0.1458;
  transform: translate(98.3213vw, -10px) scale(0.7941);
  animation: fall-155 24s -13s linear infinite;
}

@keyframes fall-155 {
  75.817% {
    transform: translate(100.2491vw, 75.817vh) scale(0.7941);
  }
  to {
    transform: translate(99.2852vw, 100vh) scale(0.7941);
  }
}
.snow:nth-child(156) {
  opacity: 0.4144;
  transform: translate(75.1695vw, -10px) scale(0.0705);
  animation: fall-156 27s -30s linear infinite;
}

@keyframes fall-156 {
  55.577% {
    transform: translate(70.2131vw, 55.577vh) scale(0.0705);
  }
  to {
    transform: translate(72.6913vw, 100vh) scale(0.0705);
  }
}
.snow:nth-child(157) {
  opacity: 0.1798;
  transform: translate(14.3236vw, -10px) scale(0.484);
  animation: fall-157 15s -28s linear infinite;
}

@keyframes fall-157 {
  48.748% {
    transform: translate(4.569vw, 48.748vh) scale(0.484);
  }
  to {
    transform: translate(9.4463vw, 100vh) scale(0.484);
  }
}
.snow:nth-child(158) {
  opacity: 0.7368;
  transform: translate(22.4391vw, -10px) scale(0.7149);
  animation: fall-158 12s -11s linear infinite;
}

@keyframes fall-158 {
  47.842% {
    transform: translate(15.4018vw, 47.842vh) scale(0.7149);
  }
  to {
    transform: translate(18.92045vw, 100vh) scale(0.7149);
  }
}
.snow:nth-child(159) {
  opacity: 0.3217;
  transform: translate(13.3206vw, -10px) scale(0.167);
  animation: fall-159 16s -9s linear infinite;
}

@keyframes fall-159 {
  37.955% {
    transform: translate(7.3636vw, 37.955vh) scale(0.167);
  }
  to {
    transform: translate(10.3421vw, 100vh) scale(0.167);
  }
}
.snow:nth-child(160) {
  opacity: 0.053;
  transform: translate(12.2369vw, -10px) scale(0.4664);
  animation: fall-160 27s -12s linear infinite;
}

@keyframes fall-160 {
  35.527% {
    transform: translate(5.6865vw, 35.527vh) scale(0.4664);
  }
  to {
    transform: translate(8.9617vw, 100vh) scale(0.4664);
  }
}
.snow:nth-child(161) {
  opacity: 0.8025;
  transform: translate(30.4496vw, -10px) scale(0.6059);
  animation: fall-161 21s -3s linear infinite;
}

@keyframes fall-161 {
  64.574% {
    transform: translate(28.5962vw, 64.574vh) scale(0.6059);
  }
  to {
    transform: translate(29.5229vw, 100vh) scale(0.6059);
  }
}
.snow:nth-child(162) {
  opacity: 0.8675;
  transform: translate(15.2683vw, -10px) scale(0.6411);
  animation: fall-162 10s -19s linear infinite;
}

@keyframes fall-162 {
  53.723% {
    transform: translate(12.8292vw, 53.723vh) scale(0.6411);
  }
  to {
    transform: translate(14.04875vw, 100vh) scale(0.6411);
  }
}
.snow:nth-child(163) {
  opacity: 0.6608;
  transform: translate(74.2942vw, -10px) scale(0.0531);
  animation: fall-163 14s -28s linear infinite;
}

@keyframes fall-163 {
  47.435% {
    transform: translate(67.8951vw, 47.435vh) scale(0.0531);
  }
  to {
    transform: translate(71.09465vw, 100vh) scale(0.0531);
  }
}
.snow:nth-child(164) {
  opacity: 0.0602;
  transform: translate(81.4534vw, -10px) scale(0.3946);
  animation: fall-164 21s -10s linear infinite;
}

@keyframes fall-164 {
  38.432% {
    transform: translate(79.2273vw, 38.432vh) scale(0.3946);
  }
  to {
    transform: translate(80.34035vw, 100vh) scale(0.3946);
  }
}
.snow:nth-child(165) {
  opacity: 0.3738;
  transform: translate(45.8193vw, -10px) scale(0.9162);
  animation: fall-165 21s -28s linear infinite;
}

@keyframes fall-165 {
  32.063% {
    transform: translate(54.1838vw, 32.063vh) scale(0.9162);
  }
  to {
    transform: translate(50.00155vw, 100vh) scale(0.9162);
  }
}
.snow:nth-child(166) {
  opacity: 0.2953;
  transform: translate(76.0124vw, -10px) scale(0.4328);
  animation: fall-166 17s -15s linear infinite;
}

@keyframes fall-166 {
  62.105% {
    transform: translate(82.4071vw, 62.105vh) scale(0.4328);
  }
  to {
    transform: translate(79.20975vw, 100vh) scale(0.4328);
  }
}
.snow:nth-child(167) {
  opacity: 0.9601;
  transform: translate(78.0507vw, -10px) scale(0.9608);
  animation: fall-167 19s -16s linear infinite;
}

@keyframes fall-167 {
  48.251% {
    transform: translate(84.8842vw, 48.251vh) scale(0.9608);
  }
  to {
    transform: translate(81.46745vw, 100vh) scale(0.9608);
  }
}
.snow:nth-child(168) {
  opacity: 0.5635;
  transform: translate(82.5129vw, -10px) scale(0.8933);
  animation: fall-168 17s -15s linear infinite;
}

@keyframes fall-168 {
  72.621% {
    transform: translate(88.6365vw, 72.621vh) scale(0.8933);
  }
  to {
    transform: translate(85.5747vw, 100vh) scale(0.8933);
  }
}
.snow:nth-child(169) {
  opacity: 0.37;
  transform: translate(80.9424vw, -10px) scale(0.2567);
  animation: fall-169 25s -18s linear infinite;
}

@keyframes fall-169 {
  48.746% {
    transform: translate(80.608vw, 48.746vh) scale(0.2567);
  }
  to {
    transform: translate(80.7752vw, 100vh) scale(0.2567);
  }
}
.snow:nth-child(170) {
  opacity: 0.4104;
  transform: translate(13.1112vw, -10px) scale(0.3917);
  animation: fall-170 28s -11s linear infinite;
}

@keyframes fall-170 {
  49.485% {
    transform: translate(8.291vw, 49.485vh) scale(0.3917);
  }
  to {
    transform: translate(10.7011vw, 100vh) scale(0.3917);
  }
}
.snow:nth-child(171) {
  opacity: 0.265;
  transform: translate(89.5788vw, -10px) scale(0.2168);
  animation: fall-171 25s -4s linear infinite;
}

@keyframes fall-171 {
  76.959% {
    transform: translate(92.9566vw, 76.959vh) scale(0.2168);
  }
  to {
    transform: translate(91.2677vw, 100vh) scale(0.2168);
  }
}
.snow:nth-child(172) {
  opacity: 0.6327;
  transform: translate(70.217vw, -10px) scale(0.7172);
  animation: fall-172 11s -9s linear infinite;
}

@keyframes fall-172 {
  62.9% {
    transform: translate(72.3017vw, 62.9vh) scale(0.7172);
  }
  to {
    transform: translate(71.25935vw, 100vh) scale(0.7172);
  }
}
.snow:nth-child(173) {
  opacity: 0.6568;
  transform: translate(8.3924vw, -10px) scale(0.3722);
  animation: fall-173 15s -5s linear infinite;
}

@keyframes fall-173 {
  78.806% {
    transform: translate(11.181vw, 78.806vh) scale(0.3722);
  }
  to {
    transform: translate(9.7867vw, 100vh) scale(0.3722);
  }
}
.snow:nth-child(174) {
  opacity: 0.6525;
  transform: translate(12.1543vw, -10px) scale(0.7243);
  animation: fall-174 22s -1s linear infinite;
}

@keyframes fall-174 {
  42.464% {
    transform: translate(21.8768vw, 42.464vh) scale(0.7243);
  }
  to {
    transform: translate(17.01555vw, 100vh) scale(0.7243);
  }
}
.snow:nth-child(175) {
  opacity: 0.6004;
  transform: translate(52.6108vw, -10px) scale(0.3241);
  animation: fall-175 15s -13s linear infinite;
}

@keyframes fall-175 {
  50.868% {
    transform: translate(44.573vw, 50.868vh) scale(0.3241);
  }
  to {
    transform: translate(48.5919vw, 100vh) scale(0.3241);
  }
}
.snow:nth-child(176) {
  opacity: 0.9873;
  transform: translate(23.6362vw, -10px) scale(0.7059);
  animation: fall-176 13s -21s linear infinite;
}

@keyframes fall-176 {
  73.336% {
    transform: translate(24.7362vw, 73.336vh) scale(0.7059);
  }
  to {
    transform: translate(24.1862vw, 100vh) scale(0.7059);
  }
}
.snow:nth-child(177) {
  opacity: 0.4924;
  transform: translate(88.1155vw, -10px) scale(0.2339);
  animation: fall-177 21s -8s linear infinite;
}

@keyframes fall-177 {
  76.785% {
    transform: translate(86.9526vw, 76.785vh) scale(0.2339);
  }
  to {
    transform: translate(87.53405vw, 100vh) scale(0.2339);
  }
}
.snow:nth-child(178) {
  opacity: 0.7965;
  transform: translate(59.669vw, -10px) scale(0.6142);
  animation: fall-178 16s -29s linear infinite;
}

@keyframes fall-178 {
  32.432% {
    transform: translate(53.0413vw, 32.432vh) scale(0.6142);
  }
  to {
    transform: translate(56.35515vw, 100vh) scale(0.6142);
  }
}
.snow:nth-child(179) {
  opacity: 0.8989;
  transform: translate(40.985vw, -10px) scale(0.2442);
  animation: fall-179 22s -5s linear infinite;
}

@keyframes fall-179 {
  35.777% {
    transform: translate(48.0764vw, 35.777vh) scale(0.2442);
  }
  to {
    transform: translate(44.5307vw, 100vh) scale(0.2442);
  }
}
.snow:nth-child(180) {
  opacity: 0.6896;
  transform: translate(57.2928vw, -10px) scale(0.2384);
  animation: fall-180 24s -12s linear infinite;
}

@keyframes fall-180 {
  32.792% {
    transform: translate(59.0849vw, 32.792vh) scale(0.2384);
  }
  to {
    transform: translate(58.18885vw, 100vh) scale(0.2384);
  }
}
.snow:nth-child(181) {
  opacity: 0.5158;
  transform: translate(47.0066vw, -10px) scale(0.5342);
  animation: fall-181 11s -25s linear infinite;
}

@keyframes fall-181 {
  66.699% {
    transform: translate(40.6066vw, 66.699vh) scale(0.5342);
  }
  to {
    transform: translate(43.8066vw, 100vh) scale(0.5342);
  }
}
.snow:nth-child(182) {
  opacity: 0.5511;
  transform: translate(6.8233vw, -10px) scale(0.3642);
  animation: fall-182 10s -28s linear infinite;
}

@keyframes fall-182 {
  63.632% {
    transform: translate(14.8673vw, 63.632vh) scale(0.3642);
  }
  to {
    transform: translate(10.8453vw, 100vh) scale(0.3642);
  }
}
.snow:nth-child(183) {
  opacity: 0.9155;
  transform: translate(79.3189vw, -10px) scale(0.4977);
  animation: fall-183 21s -17s linear infinite;
}

@keyframes fall-183 {
  51.189% {
    transform: translate(82.8427vw, 51.189vh) scale(0.4977);
  }
  to {
    transform: translate(81.0808vw, 100vh) scale(0.4977);
  }
}
.snow:nth-child(184) {
  opacity: 0.1437;
  transform: translate(39.128vw, -10px) scale(0.7169);
  animation: fall-184 19s -29s linear infinite;
}

@keyframes fall-184 {
  50.028% {
    transform: translate(30.43vw, 50.028vh) scale(0.7169);
  }
  to {
    transform: translate(34.779vw, 100vh) scale(0.7169);
  }
}
.snow:nth-child(185) {
  opacity: 0.2741;
  transform: translate(84.0324vw, -10px) scale(0.6823);
  animation: fall-185 18s -21s linear infinite;
}

@keyframes fall-185 {
  50.07% {
    transform: translate(77.2613vw, 50.07vh) scale(0.6823);
  }
  to {
    transform: translate(80.64685vw, 100vh) scale(0.6823);
  }
}
.snow:nth-child(186) {
  opacity: 0.2341;
  transform: translate(43.4806vw, -10px) scale(0.6644);
  animation: fall-186 27s -11s linear infinite;
}

@keyframes fall-186 {
  52.807% {
    transform: translate(53.4614vw, 52.807vh) scale(0.6644);
  }
  to {
    transform: translate(48.471vw, 100vh) scale(0.6644);
  }
}
.snow:nth-child(187) {
  opacity: 0.3056;
  transform: translate(92.4725vw, -10px) scale(0.9234);
  animation: fall-187 21s -3s linear infinite;
}

@keyframes fall-187 {
  70.294% {
    transform: translate(87.9702vw, 70.294vh) scale(0.9234);
  }
  to {
    transform: translate(90.22135vw, 100vh) scale(0.9234);
  }
}
.snow:nth-child(188) {
  opacity: 0.5638;
  transform: translate(14.4943vw, -10px) scale(0.422);
  animation: fall-188 10s -19s linear infinite;
}

@keyframes fall-188 {
  72.126% {
    transform: translate(9.7816vw, 72.126vh) scale(0.422);
  }
  to {
    transform: translate(12.13795vw, 100vh) scale(0.422);
  }
}
.snow:nth-child(189) {
  opacity: 0.3316;
  transform: translate(79.844vw, -10px) scale(0.5981);
  animation: fall-189 15s -22s linear infinite;
}

@keyframes fall-189 {
  48.695% {
    transform: translate(79.7071vw, 48.695vh) scale(0.5981);
  }
  to {
    transform: translate(79.77555vw, 100vh) scale(0.5981);
  }
}
.snow:nth-child(190) {
  opacity: 0.0988;
  transform: translate(87.8023vw, -10px) scale(0.6513);
  animation: fall-190 13s -15s linear infinite;
}

@keyframes fall-190 {
  47.818% {
    transform: translate(84.6092vw, 47.818vh) scale(0.6513);
  }
  to {
    transform: translate(86.20575vw, 100vh) scale(0.6513);
  }
}
.snow:nth-child(191) {
  opacity: 0.4432;
  transform: translate(92.14vw, -10px) scale(0.5193);
  animation: fall-191 19s -2s linear infinite;
}

@keyframes fall-191 {
  41.19% {
    transform: translate(86.9687vw, 41.19vh) scale(0.5193);
  }
  to {
    transform: translate(89.55435vw, 100vh) scale(0.5193);
  }
}
.snow:nth-child(192) {
  opacity: 0.16;
  transform: translate(37.481vw, -10px) scale(0.0736);
  animation: fall-192 28s -1s linear infinite;
}

@keyframes fall-192 {
  43.696% {
    transform: translate(44.2993vw, 43.696vh) scale(0.0736);
  }
  to {
    transform: translate(40.89015vw, 100vh) scale(0.0736);
  }
}
.snow:nth-child(193) {
  opacity: 0.3208;
  transform: translate(38.0037vw, -10px) scale(0.2138);
  animation: fall-193 27s -25s linear infinite;
}

@keyframes fall-193 {
  32.105% {
    transform: translate(44.3974vw, 32.105vh) scale(0.2138);
  }
  to {
    transform: translate(41.20055vw, 100vh) scale(0.2138);
  }
}
.snow:nth-child(194) {
  opacity: 0.9305;
  transform: translate(73.8161vw, -10px) scale(0.0267);
  animation: fall-194 16s -4s linear infinite;
}

@keyframes fall-194 {
  65.902% {
    transform: translate(64.2079vw, 65.902vh) scale(0.0267);
  }
  to {
    transform: translate(69.012vw, 100vh) scale(0.0267);
  }
}
.snow:nth-child(195) {
  opacity: 0.562;
  transform: translate(19.5401vw, -10px) scale(0.8379);
  animation: fall-195 28s -26s linear infinite;
}

@keyframes fall-195 {
  67.289% {
    transform: translate(27.5639vw, 67.289vh) scale(0.8379);
  }
  to {
    transform: translate(23.552vw, 100vh) scale(0.8379);
  }
}
.snow:nth-child(196) {
  opacity: 0.8198;
  transform: translate(6.5393vw, -10px) scale(0.4279);
  animation: fall-196 27s -21s linear infinite;
}

@keyframes fall-196 {
  55.391% {
    transform: translate(14.537vw, 55.391vh) scale(0.4279);
  }
  to {
    transform: translate(10.53815vw, 100vh) scale(0.4279);
  }
}
.snow:nth-child(197) {
  opacity: 0.9381;
  transform: translate(35.0912vw, -10px) scale(0.4596);
  animation: fall-197 20s -7s linear infinite;
}

@keyframes fall-197 {
  64.633% {
    transform: translate(43.8343vw, 64.633vh) scale(0.4596);
  }
  to {
    transform: translate(39.46275vw, 100vh) scale(0.4596);
  }
}
.snow:nth-child(198) {
  opacity: 0.9258;
  transform: translate(77.0995vw, -10px) scale(0.0233);
  animation: fall-198 18s -24s linear infinite;
}

@keyframes fall-198 {
  39.893% {
    transform: translate(74.1916vw, 39.893vh) scale(0.0233);
  }
  to {
    transform: translate(75.64555vw, 100vh) scale(0.0233);
  }
}
.snow:nth-child(199) {
  opacity: 0.7554;
  transform: translate(65.0828vw, -10px) scale(0.4816);
  animation: fall-199 22s -5s linear infinite;
}

@keyframes fall-199 {
  72.422% {
    transform: translate(64.6461vw, 72.422vh) scale(0.4816);
  }
  to {
    transform: translate(64.86445vw, 100vh) scale(0.4816);
  }
}
.snow:nth-child(200) {
  opacity: 0.8561;
  transform: translate(79.9394vw, -10px) scale(0.3357);
  animation: fall-200 23s -29s linear infinite;
}

@keyframes fall-200 {
  73.625% {
    transform: translate(75.344vw, 73.625vh) scale(0.3357);
  }
  to {
    transform: translate(77.6417vw, 100vh) scale(0.3357);
  }
}
.about-container {
  width: 100%;
  max-width: 120rem;
  margin: auto;
}

.about-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px var(--spacing-md);
}

@media (min-width: 576px) {
  .about-section {
    padding: 0px calc(var(--spacing-md) * 2);
  }
}
.about-description_container {
  width: 100%;
  max-width: 70%;
}

@media (max-width: 1028px) {
  .about-description_container {
    max-width: 90%;
  }
}
.about-groups-container {
  width: 80%;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  flex-wrap: wrap;
}

.group_container {
  margin: var(--spacing-sm);
  min-width: 40%;
  flex: 1;
  background: var(--card-color);
  border-radius: 1rem;
  padding: var(--spacing-sm);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-evenly;
}

.group_container .group_title {
  display: flex;
  align-self: flex-start;
  justify-content: space-between;
  width: 100%;
  margin: 0;
}

.group_container .group_title .group_name {
  font-size: var(--heading-md);
  font-weight: 500;
  margin: 0;
}

.group_container .group_title .group_meeting {
  color: #AAA;
  font-size: var(--text-sm);
  margin: 0;
}

.group_container hr {
  width: 4rem;
  margin: var(--spacing-xs) 0;
  border-top: 2px solid white;
}

.group_container .group_description {
  font-size: var(--text-sm);
}

.about-section-heading {
  font-style: normal;
  font-weight: 800;
  text-align: center;
  color: var(--text-color);
  margin-top: var(--spacing-lg);
  font-size: var(--heading-xl);
  line-height: 2.5rem;
}

.about-section-description {
  font-style: normal;
  font-weight: 600;
  text-align: center;
  color: var(--text-color);
  margin-top: var(--spacing-sm);
  font-size: var(--heading-sm);
  line-height: 2rem;
}

.members-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px var(--spacing-md);
}

.members-container {
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: center;
  margin-top: var(--spacing-lg);
  margin-bottom: calc(var(--spacing-lg) + var(--spacing-xs));
}

@media (min-width: 576px) {
  .members-container {
    margin-top: calc(var(--spacing-lg) + 6px);
    margin-bottom: calc(var(--spacing-xl) + 9px);
  }
}
.members-grid {
  width: 100%;
  max-width: 70%;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: var(--spacing-md);
  justify-content: center;
}

@media (max-width: 1024px) {
  .members-grid {
    max-width: 90%;
  }
}
.member_container {
  background: var(--card-color);
  position: relative;
  width: 250px;
  height: 350px;
  border-radius: 16px;
  display: grid;
  grid-template-rows: 1fr 120px;
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.member_avatar-container {
  position: relative;
  border-radius: 16px 16px 0 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}

.member_avatar {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
  box-shadow: 0px 4px 64px rgba(0, 0, 0, 0.2);
}

.member_info {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 6px 20px;
  overflow: hidden;
}

.member_title {
  font-size: var(--heading-sm);
  font-weight: 700;
  color: var(--text-color);
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex-shrink: 0;
}

.member_details {
  font-size: var(--text-base);
  font-weight: 400;
  overflow: hidden;
  white-space: nowrap;
  flex-grow: 1;
  text-align: center;
}

.member_socials {
  width: 100%;
  margin-top: var(--spacing-xs);
  display: flex;
  justify-content: center;
  gap: 14px;
}

.member_social-link {
  height: 20px;
  width: 20px;
  color: var(--light-text-color);
  transition: 0.1s ease-in-out;
}

.member_social-link:hover {
  opacity: 1;
  color: var(--link-color);
}

.about-socials-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px var(--spacing-md);
}

@media (min-width: 576px) {
  .about-socials-section {
    padding: 0px calc(var(--spacing-md) * 2);
  }
}
.about-social-container {
  width: 100%;
  max-width: 60%;
  padding: var(--spacing-md) 0;
  display: flex;
  flex-direction: row;
  gap: var(--spacing-md);
  justify-content: space-evenly;
  align-items: center;
}

@media (max-width: 1256px) {
  .about-social-container {
    max-width: 100%;
    padding: var(--spacing-sm);
  }
}
@media (max-width: 900px) {
  .about-social-container {
    flex-direction: column;
  }
}
.about-past-eboard-section {
  text-align: center;
}

.about-past-eboard-section .about-past-eboard-container .about-past-eboard .past-eboard-year {
  font-size: var(--heading-lg);
  color: #e69138;
  margin-top: var(--spacing-sm);
}

.about-past-eboard-section .about-past-eboard-container .about-past-eboard .past-eboard-orgname {
  color: #e69138;
  font-size: var(--text-base);
  margin: var(--spacing-xs) 0;
}

.about-past-eboard-section .about-past-eboard-container .about-past-eboard .past-eboard-orgs-container {
  display: flex;
  align-items: flex-start;
  justify-content: space-evenly;
  flex-wrap: wrap;
  width: 60%;
  margin: var(--spacing-sm) auto;
}

.about-past-eboard-section .about-past-eboard-container .about-past-eboard .past-eboard-orgs-container .past-eboard-org {
  margin: 0 var(--spacing-xs);
  font-size: var(--text-base);
}

@media only screen and (max-width: 768px) {
  .about-groups-container {
    width: 100% !important;
  }
  .about-groups-container .group_container {
    min-width: 100% !important;
  }
  .about-groups-container .group_container .group_title {
    flex-direction: column;
  }
}
.education-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px 32px;
}

@media (min-width: 576px) {
  .education-section {
    padding: 0px 64px;
  }
}
.education-set-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-top: 30px;
  margin-bottom: 48px;
}

@media (min-width: 576px) {
  .education-set-container {
    margin-top: 38px;
    margin-bottom: 60px;
  }
}
.education-set {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.education-set_title {
  color: var(--text-color);
  font-size: 1.5rem;
  font-weight: 700;
}

.education-set_description {
  color: var(--text-color);
  opacity: 0.7;
  font-size: 1rem;
  margin: 0.25rem 0 1rem;
}

.education-set_lesson-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: 16px 32px;
  justify-content: center;
}

.events-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px 32px;
}

@media (min-width: 576px) {
  .events-section {
    padding: 0px 64px;
  }
}
.events-container {
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 30px;
  margin-bottom: 48px;
}

@media (min-width: 576px) {
  .events-container {
    margin-top: 38px;
    margin-bottom: 60px;
  }
}
.events-grid {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: 32px;
  justify-content: center;
}

.event_container {
  background: var(--card-color);
  position: relative;
  width: 450px;
  height: 350px;
  border-radius: 16px;
  display: grid;
  grid-template-rows: 1fr 80px;
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.event_image-container {
  position: relative;
  border-radius: 16px 16px 0 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}

.event_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  box-shadow: 0px 4px 64px rgba(0, 0, 0, 0.2);
  border-radius: 16px 16px 0 0;
  transition: all 0.3s ease;
}

.event_info {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr 3rem;
  align-items: center;
  padding: 6px 20px;
  font-size: var(--font-size-sm);
}

@media (max-width: 768px) {
  .event_info {
    padding: 6px 12px;
    grid-template-columns: 1fr 2rem;
  }
}
.event_info-container {
  width: 100%;
  max-width: 412px;
  overflow: hidden;
}

.event_title {
  font-size: var(--font-size-lg);
  font-weight: 700;
  color: var(--text-color);
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.event_details {
  display: flex;
  color: var(--light-text-color);
}

.event_date {
  color: var(--link-color);
  font-size: var(--font-size-xs);
  opacity: 0.9;
  margin-right: 10px;
}

.event_link-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.event_link {
  cursor: pointer;
  height: 1.5rem;
  width: 1.5rem;
  color: var(--light-text-color);
  transition: all 0.1s ease-in-out;
}

.event_link:hover {
  color: var(--link-color);
}

.gallery-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px 32px;
}

@media (min-width: 576px) {
  .gallery-section {
    padding: 0px 64px;
  }
}
.gallery-container {
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 30px;
  margin-bottom: 48px;
}

@media (min-width: 576px) {
  .gallery-container {
    margin-top: 46px;
    margin-bottom: 69px;
  }
}
.gallery-grid {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: 32px;
  justify-content: center;
}

.gallery-photo {
  position: relative;
  width: 650px;
  height: 450px;
  border-radius: 8px;
  border: 1px solid var(--accent-color);
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  overflow: hidden;
}

@media (max-width: 576px) {
  .gallery-photo {
    height: 350px;
  }
}
.gallery-photo_image {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  max-width: auto;
  max-height: 100%;
  transition: all 0.3s ease;
}

.gallery-photo_caption-container {
  position: absolute;
  background-color: var(--header-color-mobile);
  color: var(--light-text-color);
  width: 100%;
  height: 20%;
  bottom: 0;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
}

.gallery-photo_caption-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text-color);
  opacity: 0.85;
  transition: all 0.3s ease;
}

.gallery-photo_caption-description {
  font-size: 1rem;
  line-height: 1.25rem;
  color: var(--text-color);
  opacity: 0.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: all 0.3s ease;
}

@media (max-width: 576px) {
  .gallery-photo_caption-description {
    line-height: 1rem;
    -webkit-line-clamp: 1;
  }
}
.gallery-photo:hover {
  border-color: var(--accent-color);
  box-shadow: 0 0 20px var(--accent-color);
}

.gallery-photo:hover .gallery-photo_caption-container {
  height: 30%;
}

.gallery-photo:hover .gallery-photo_caption-title {
  opacity: 1;
}

.gallery-photo:hover .gallery-photo_caption-description {
  opacity: 0.75;
  -webkit-line-clamp: 4;
}

@media (max-width: 576px) {
  .gallery-photo:hover .gallery-photo_caption-description {
    -webkit-line-clamp: 3;
  }
}
.links-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px var(--spacing-md);
}

@media (min-width: 576px) {
  .links-section {
    padding: 0px calc(var(--spacing-md) * 2);
  }
}
.links-container {
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: center;
  margin-top: var(--spacing-lg);
  margin-bottom: calc(var(--spacing-lg) + var(--spacing-xs));
}

@media (min-width: 576px) {
  .links-container {
    margin-top: calc(var(--spacing-lg) + 6px);
    margin-bottom: calc(var(--spacing-xl) + 9px);
  }
}
.links-grid {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
  gap: var(--spacing-md);
  justify-content: center;
}

.link_container {
  background-color: var(--card-color);
  color: white;
  text-decoration: none;
  position: relative;
  cursor: pointer;
  width: 450px;
  height: 110px;
  min-height: 110px;
  border-radius: 16px;
  border: 1px solid transparent;
  display: grid;
  grid-template-columns: 1fr 80px;
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.link_container:hover {
  border: 1px solid var(--link-color);
  background-color: var(--card-color-light);
  height: auto;
  z-index: 10;
}

.link_container:hover,
.link_container .link_icon {
  opacity: 1;
  color: var(--text-color);
}

@media (max-width: 768px) {
  .link_container {
    width: 100%;
    max-width: 450px;
  }
}
.link_info-container {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: var(--spacing-sm) 20px;
  overflow: hidden;
}

.link_title {
  font-size: var(--heading-sm);
  font-weight: 700;
  color: var(--text-color);
  flex-shrink: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.link_description {
  width: 100%;
  flex: 1;
  color: var(--light-text-color);
  font-size: var(--text-base);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: all 0.3s ease-in-out;
}

.link_container:hover .link_description {
  display: block;
  -webkit-line-clamp: unset;
  overflow: visible;
}

.link_icon-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: var(--spacing-sm);
}

.link_icon {
  cursor: pointer;
  height: 1.5rem;
  width: 1.5rem;
  color: var(--light-text-color);
  transition: all 0.1s ease-in-out;
}

.sponsors-section {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0px 32px;
}

@media (min-width: 576px) {
  .sponsors-section {
    padding: 0px 64px;
  }
}
.sponsor-tier {
  width: 100%;
}

.sponsors-container {
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 30px;
  margin-bottom: 48px;
}

@media (min-width: 576px) {
  .sponsors-container {
    margin-top: 46px;
    margin-bottom: 69px;
  }
}
.sponsors-grid {
  max-width: 70rem;
  display: flex;
  flex-direction: row;
  flex-flow: wrap;
  gap: 32px;
  justify-content: center;
}

.sponsor-tier-container {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
}

.sponsor {
  width: 300px;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--border-color);
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.1);
  grid-template-columns: 1fr 300px;
  align-items: center;
  padding: 1rem;
  margin: 30px 15px;
}

.sponsor-info {
  width: 100%;
  max-height: 100%;
  padding-right: 5%;
  text-align: center;
  display: flex;
  flex-direction: column;
}

.sponsor-title {
  font-size: 2rem;
  margin-top: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
  color: var(--text-color);
  text-decoration: none;
  min-height: 2.5em;
  line-height: 1.2em;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.sponsor-description {
  width: 100%;
  font-size: 1rem;
  line-height: 1.5rem;
  color: var(--text-color);
  opacity: 0.7;
  margin: 1rem 0 1.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 12;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sponsor-button {
  text-align: center;
  width: 8rem;
  margin: auto;
  padding: 0.5rem 0;
  background-color: var(--card-color);
  border: 1px solid var(--border-color);
  border-radius: 6px;
  color: var(--text-color);
  opacity: 0.85;
  text-decoration: none;
  transition: all 0.15s ease-in-out;
  font-size: 0.75rem;
  line-height: 1rem;
}

.sponsor-button:hover {
  opacity: 1;
}

.become-a-sponsor {
  font-size: 1.25rem;
  width: 16rem;
  padding: 1rem;
  color: #e69138;
}

.sponsor-image-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
}

.sponsor-image-wrapper {
  width: 200px;
  height: 200px;
  opacity: 1;
  cursor: pointer;
  border-radius: 8px;
  transition: all 0.15s ease;
}

.sponsor-image-wrapper:hover {
  opacity: 0.75;
}

.sponsor-image {
  background: #fff;
  padding: 1rem;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border: 1px solid var(--border-color);
  border-radius: 8px;
}

@media (max-width: 1024px) {
  .sponsor-description {
    -webkit-line-clamp: 6;
    margin: 0.25rem 0 0.5rem;
  }
  .sponsor-image-wrapper {
    height: 200px;
    width: 200px;
  }
}
.sponsor-tier-title {
  font-size: 2.5rem;
  text-align: center;
  color: var(--text-color);
}

.titanium {
  color: #7A7772;
}

.diamond {
  color: #b9f2ff;
}

.platinum {
  color: #e5e4e2;
}

.gold {
  color: #ffd700;
}

.silver {
  color: #c0c0c0;
}

.bronze {
  color: #b08d57;
}

.alumni-section {
  text-align: center;
}

.alumni-section .alumni-container .graduation-group .graduation-year {
  font-size: 2.5rem;
  color: #e69138;
  margin-top: 1rem;
}

.alumni-section .alumni-container .graduation-group .alumni-group {
  display: flex;
  align-items: flex-start;
  justify-content: space-evenly;
  flex-wrap: wrap;
  width: 50%;
  margin: 1rem auto;
}

.alumni-section .alumni-container .graduation-group .alumni-group .alumni-title {
  width: 30%;
}

.group-url-button {
  text-align: center;
  width: 10rem;
  margin-top: 1rem;
  padding: 0.75rem 0;
  background-color: var(--card-color);
  border: 1px solid var(--border-color);
  border-radius: 6px;
  color: var(--text-color);
  opacity: 0.85;
  text-decoration: none;
  transition: all 0.15s ease-in-out;
  font-size: 1rem;
  line-height: 1.25rem;
}

.group-url-button:hover {
  opacity: 1;
}

.contact-page {
  padding: 3rem 1.5rem;
  color: var(--text-color);
}

.contact-header {
  text-align: center;
  margin-bottom: 3rem;
}

.contact-header h1 {
  font-size: 2.5rem;
  margin-bottom: 0.5rem;
  color: var(--link-color);
}

.contact-header p {
  color: var(--light-text-color);
  font-size: 1.1rem;
}

.contact-container {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
}

.contact-form-container,
.contact-info {
  background-color: var(--card-color);
  padding: 2rem;
  border-radius: 1rem;
  flex: 1 1 300px;
  max-width: 500px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 0.8rem 1rem;
  margin-bottom: 1rem;
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  background-color: var(--card-color-light);
  color: var(--text-color);
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: var(--light-text-color);
}

.contact-form button {
  background-color: var(--accent-color);
  color: #fff;
  border: none;
  padding: 0.8rem 2rem;
  border-radius: 0.5rem;
  cursor: pointer;
  font-weight: bold;
  transition: background 0.3s ease, filter 0.3s ease;
}

.contact-form button:hover {
  filter: brightness(85%);
}

.contact-info h2 {
  margin-bottom: 1rem;
  color: var(--link-color);
}

.contact-info p {
  margin-bottom: 0.5rem;
  color: var(--light-text-color);
}

.contact-info a {
  color: var(--accent-color);
  text-decoration: none;
}

.contact-info a:hover {
  text-decoration: underline;
}

@media (max-width: 768px) {
  .contact-container {
    flex-direction: column;
    align-items: center;
  }
}
#vanta-background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  pointer-events: none;
  opacity: 0.5;
  transition: opacity 0.8s ease;
}

@media (max-width: 768px) {
  #vanta-background {
    opacity: 0.4;
  }
}
@supports (-webkit-touch-callout: none) {
  #vanta-background {
    height: -webkit-fill-available;
  }
}

/*# sourceMappingURL=style.css.map */