
    :root {
      --primary: #58cc02; /* Brilliant-style green */
      --font-main: 'Open AI Sans',  sans-serif;
    }


    .hero {
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 18px;
    }

    .hero h1 {
      font-size: 48px;
      font-weight: 700;
      line-height: 1.2;
      animation: fadeInUp 1s ease-in-out;
    }

    .hero h2 {
      /* font-size: 48px;
      font-weight: 700; */
      line-height: 1.2;
      animation: fadeInUp 1s ease-in-out;
    }


    .hero p {
      font-size: 18px;
      max-width: 500px;
      line-height: 1.6;
      color: #333;
      animation: fadeInUp 1.5s ease-in-out;
    }

    .hero-image-placeholder {
         width: 100%;
        max-width: 800px;  /* 데스크탑에서 커지게 */
        aspect-ratio: 16 / 9; /* 비율 고정 (16:9) */
        height: auto;
        display: block;
        object-fit: contain; /* 실제 이미지일 때 */
        animation: fadeInUp 1s ease-in-out;
    }

    .start-button {
    display: inline-block;
    padding: 15px 90px;
    font-size: 18px;
    font-weight: bold;
    background-color: #444444;
    color: #fff;
    border: none;
    border-radius: 50px;
    text-decoration: none;
    box-shadow: 0 4px 0 0 #000000;   /* 아래쪽만 그림자 */
    transition: background 0.18s, transform 0.08s, box-shadow 0.08s;
    position: relative;
    animation: buttonGlow 4s infinite alternate, fadeInUp 1.5s ease-in-out;
    max-width: 320px;

}

.start-button:hover {
  background-color: #626262;
}

.start-button:active {
  transform: translateY(4px);
  box-shadow: 0 0px 0 0 #000000;
  background-color: #444444;
}


/* 2초마다 살짝 빛나는 효과 */
@keyframes buttonGlow {
  0% { filter: brightness(1);}
  60% { filter: brightness(1);}
  80% { filter: brightness(1.2);}
  100% { filter: brightness(1);}
}


    @keyframes fadeInUp {
      from {
        opacity: 0;
        transform: translateY(20px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }


    @media (max-width: 640px) {
      .hero h1 {
        font-size: 36px;
      }
      .hero p {
        font-size: 16px;
      }

        .hero-image-placeholder {
            max-width: 96vw;   /* 모바일에서는 거의 꽉 차게 */
            aspect-ratio: 16 / 10; /* 살짝 더 납작하게 하고 싶으면 */
        }

    }

.rolling-container {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  /* height: 1em; */
  animation: fadeInUp 1s ease-in-out;
}

.rolling-word {
  display: inline-block;
  animation: slide 0.5s ease forwards;
}

@keyframes slide {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0%);
    opacity: 1;
  }
}

.notice-banner {
  display: inline-block;  /* 컨텐츠 크기만큼 너비가 결정됩니다 */
  width: auto;            /* 100% 대신 auto */
  max-width: 640px;       /* 원한다면 최대 폭만 유지 */
  margin: 20px auto;      /* 중앙 정렬 */
  /* 나머지 속성은 그대로 */
  background: #e9e9e9;
  color: #333;
  font-size: 14px;
  padding: 16px 20px;
  border-radius: 8px;
  box-sizing: border-box;
  animation: fadeInUp 1s ease-in-out;
  text-align: left;
}


.new {
  display: inline-block;
  background-color: #000000;
  color: #ffffff;
  padding: 2px 12px;
  border-radius: 15px;
  font-size: 14px;
  text-align: center;
  box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}


.thankyounote {
  text-align: left;
}


 /* fail_button */
/* #fail-actions {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 16px;
  margin-top: 32px;
}

.fail-action-btn {
  min-width: 140px;
  margin: 0;
  padding: 13px 0;
  border-radius: 12px;
  font-size: 1.08rem;
  font-weight: 700;
  background: #307cf6;
  color: #fff;
  border: none;
  box-shadow: none;
  transition: background 0.14s;
} */

/* 
@media (max-width: 600px) {
  #fail-actions {
    flex-direction: column;
    gap: 14px;
    align-items: center;
  }
  .fail-action-btn {
    width: 100%;
    max-width: 340px;
    min-width: 0;
    margin: 0;
    font-size: 1.08rem;
  }
}
 */


#fail-img {
  max-width: 90px !important;
  max-height: 90px !important;
  margin-bottom: 16px !important;
}
