*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    min-width: 0;
    font-family: "acumin-variable",sans-serif;
    color: white;
}

html, body{
    background-color: #b9fa47;
    overflow-y: auto;
    overflow-x: hidden;
}

.hero-section {
    position: relative;
    width: 100%;
    height: 100vh;
}

canvas{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

header h1{
    font-size: 1rem;
}

.hero {
    position: relative;
    height: calc(100svh - 60px);
}

.hero h1 {
    position: absolute;
    bottom: 0rem;
    left: 4rem;
    margin-bottom: -30px;
    font-size: clamp(.5rem, 5vw, 2rem);
}

.marquee-text {
    overflow: hidden;
    background-color: blue;
    font-family: sans-serif;
    transform: rotate(-90deg);
    position: fixed;
    top: 0;
    left: calc(17.5px - 100vh);
    width: 200vh;
    height: 35px;
    z-index: 5000;
}

.marquee-text-track {
    display: flex;
    padding-left: 4.8rem;
    gap: 4.8rem;
    font-size: 25px;
    font-weight: 400;
    color: white;
    width: max-content;
    animation: marquee-move-text var(--speed, 30s) linear infinite var(--direction, forwards);
    animation-play-state: running;
    opacity: 100%;
}

.marquee-text:hover .marquee-text-track {
    animation-play-state: paused;
}

@keyframes marquee-move-text {
    to {
        transform: translateX(-50%);
    }
}

.marquee-text-track span {
    opacity: 1 !important;
}

a {
    color: white;
    text-decoration: none;
}

.center-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 1000;
    pointer-events: none;
}

.svg-container {
    pointer-events: auto;
}

.title-logo {
    width: 600px;
    height: 220px;
    cursor: pointer;
}

.title-logo .cls-1 {
    fill: #f72179 !important;
    transition: fill 0.3s ease;
}

.title-logo:hover .cls-1 {
    fill: #ffffff !important;
}

.bottom-content {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 1000;
    pointer-events: auto;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.bottom-content.show {
    opacity: 1;
}

.scroll-text {
    font-size: 12px;
    color: #dc03a0;
    margin-bottom: 10px;
    text-align: center;
    letter-spacing: 1px;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.3s ease;
}

.scroll-arrow {
    font-size: 20px;
    color: #dc03a0;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.3s ease;
}

.bottom-content.show .scroll-text {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.2s;
}

.bottom-content.show .scroll-arrow {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.4s;
    animation: bounce 2s infinite 1.5s;
}

@keyframes slideUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
} 


.main-content{
    width: 100%;
    height: fit-content;
    background-color: white;
    background-image: linear-gradient(to bottom, white 80%, #b9fa47 100%);
    display: flex;
    flex-direction: column;
    margin-top: 0;
    align-items: center;
    padding: 10%;
    gap: 100px;
    font-family: "acumin-variable",sans-serif;
    text-transform: uppercase;
}

.main-content2{
  position: relative;     /* not absolute */
  z-index: 2;             /* above the scrim (which is z-index:1) */
  width: 100%;
  background: #b9fa47;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 5%;
  gap: 70px;
  font-family: "acumin-variable", sans-serif;
  text-transform: uppercase;
}


#into{
    width: 80%;
    display: flex;
    height: fit-content;
    /* background-color: #7b7b7b; */
    font-size: 28px;
    color: black;
    justify-content: space-between;
    align-items: center;
}

#into img{
    height: 15%;
    width: 15%;
    object-fit: contain;
    animation-name: addsign;
    animation-duration: 5s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
    transform-origin: center center;
}

#into01{
    width: 80%;
    display: flex;
    height: fit-content;
    /* background-color: #7b7b7b; */
    font-size: 34px;
    color: black;
    font-variation-settings: 'wght' 800, 'wdth' 90, 'slnt' 0;
}


#into02{
    width: fit-content;
    display: flex;
    gap: 10px;
    height: fit-content;
    /* background-color: #7b7b7b; */
    font-size: 20px;
    text-align: center;
    align-items: center; /* Centers items vertically */
    color: #dc03a0;
    font-family: "acumin-variable",sans-serif;
    font-variation-settings: 'wght' 900, 'wdth' 90, 'slnt' -12;
    justify-content: space-between;
}


#into2{
    width: 80%;
    height: fit-content;
    /* background-color: #7b7b7b; */
    font-size: 22px;
    color: black;

}

#into3{
    width: 80%;
    height: fit-content;
    /* background-color: #7b7b7b; */
    font-size: 22px;
    color: black;
}


.gradient-scrim {
  position: fixed;
  bottom: 0;            /* or wherever you want the fade to start */
  left: 0;
  width: 100%;
  height: 60vh;      /* 👈 controls the visible height of the gradient */
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(
    to top,
    #b9fa47 0%,                     /* opaque color */
    rgba(185,250,71,0.9) 20%,
    rgba(185,250,71,0.5) 60%,
    rgba(185,250,71,0.0) 100%      /* transparent end */
  );
}


@keyframes addsign {
    0%   { transform: scale(0.5) rotate(0deg); }
    25%  { transform: scale(1) rotate(0deg); }
    50%  { transform: scale(1) rotate(0deg); }
    75%  { transform: scale(1) rotate(360deg); }
    100% { transform: scale(0.5) rotate(0deg); }
}

.channel-main{
    width: 100vw;
    height: fit-content;
    display: flex;
    flex-direction: row;
    gap: 10px;
    padding-left: 5%;
    padding-right: 5%;

}

.channelcontainer {
  width: 100%;
  height: 50vh;
  color: #000;
  display: flex;
  font-size: 24px;
  justify-content: center;
  align-items: center;
  gap: 5%;
  font-weight: 500;
  border-radius: 3%;
  border: 4px solid transparent;

  /* Always-animated border */
  background:
    linear-gradient(#b9fa47, #b9fa47) padding-box, /* static inner background */
    linear-gradient(90deg, #dc03a0, #f72179, #b9fa47, #dc03a0) border-box;
  background-size: 300% 100%;
  animation: borderMove 6s linear infinite;

  /* Smooth transitions */
  transition:
    background 0.8s ease,
    color 0.5s ease,
    font-weight 0.5s ease,
    box-shadow 0.6s ease;
  
  /* Link styling */
  text-decoration: none;
}

/* Hover effect: background lights up + bolder text */
.channelcontainer:hover {
  background:
    linear-gradient(90deg, #dc03a0, #f72179, #b9fa47, #dc03a0) padding-box, /* inner animated gradient */
    linear-gradient(90deg, #dc03a0, #f72179, #b9fa47, #dc03a0) border-box;
  background-size: 300% 100%;
  animation: borderMove 3s linear infinite; /* slightly faster border movement */
  color: white;                              /* text changes to white */
  font-weight: 700;                          /* 👈 bolder text weight */
  box-shadow: 0 0 20px rgba(220, 3, 160, 0.4); /* optional glow */
}

/* Continuous border animation */
@keyframes borderMove {
  0%   { background-position: 0% 50%; }
  100% { background-position: 300% 50%; }
}


#dividerno{
    color: #300ce8;
}


footer {
  position: relative;     /* make z-index actually apply */
  width: 100vw;
  height: 10vh;           /* better to use vh not % for fixed-height footer */
  padding: 0%;
  background-color: #ffffff;
  z-index: 1000;
  display: flex;
  justify-content: center;
  align-items: center;
}

#footer{
    color: #6b8245;
    font-weight: 900;

}