:root {
  --primary-color: #1b48a6;
  --font-Satoshi: Satoshi;
  --color-white: #fff;
}

.marquee-container {height: 170px; overflow: hidden; line-height: 170px; position:absolute; top:-350px; left:0; right:0;}

/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
    .marquee-container {top:-220px !important;}
}
.marquee {top: 0; left: 100%; width: 100%; overflow: hidden; position: absolute; white-space: nowrap; animation: marquee 30s linear infinite; font-size:8rem; font-weight:400; color:#dbdbdb;}
.marquee2 {animation-delay: 15s;}
@keyframes marquee {
  0% {
    left: 100%;
  }
  100% {
    left: -100%
  }
}

/***********************************
    ANIMATED BUTTONS
***********************************/
/* 1. Nina Button Root */
.nina-btn {
  position: relative;
  font-family: var(--font-Satoshi);
  font-weight: bold;
  font-size: 16px;
  color: white;
  background-color: #0b1d42;
  border-radius: 2rem;
  cursor: pointer;
  min-height: 48px;
  padding: 0 24px;
  border: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  overflow: hidden;
  transition: background-color 0.3s ease;
  text-decoration: none;
}

/* Hover color */
.nina-btn:hover {
  background-color: var(--primary-color);
  color:var(--color-white);
}

/* 2. Icon Styling */
.nina-icon {
  flex-shrink: 0;
  z-index: 2;
  transition: transform 0.3s cubic-bezier(0.75, 0, 0.125, 1);
}
.nina-icon svg path {color:black !important;}
.nina-btn:hover .nina-icon {
  transform: translateX(4px);
}

/* 3. Text Container wrapper */
.nina-text-container {
  position: relative;
  display: flex;
  align-items: center;
  line-height: 1.2;
}

/* 4. The initial block of text that falls down on hover */
.nina-text-container::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  transition: transform 0.3s, opacity 0.3s;
  transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}

.nina-btn:hover .nina-text-container::before {
  opacity: 0;
  transform: translate3d(0, 100%, 0);
}

/* 5. Individual spanned letters coming from above */
.nina-characters {
  display: flex;
}

.nina-characters span {
  display: inline-block;
  opacity: 0;
  transform: translate3d(0, -10px, 0);
  transition: transform 0.3s, opacity 0.3s;
  transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}

.nina-btn:hover .nina-characters span {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: var(--delay, 0s);
}