body {
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100vh;
  background-color: black;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow-x: hidden;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: 420px;
  min-height: 100vh;
  overflow-x: hidden;
  background: linear-gradient(135deg, #1a1a1a 0%, #0d0d0d 100%);
}

.background_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  object-fit: cover;
  pointer-events: none;
}

.content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
}

/* TOP BAR */
.top_bar {
    position: sticky;
    top: 0;
    z-index: 100;
    width: 100%;
    padding: 12px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(180deg, rgb(233 208 208 / 50%) 0%, rgba(0,0,0,0.3) 100%);
    box-sizing: border-box;
    position: relative;
    border: none;
}

/* Ultra smooth infinite scroll border */
.top_bar::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;

    /* VERY long repeating gradient — prevents loop jump */
    background: repeating-linear-gradient(
        90deg,
        #FFD680 0px,
        #D9A73B 200px,
        #4DB7FF 400px,
        #0077CC 600px,
        #FFD680 800px
    );

    /* Make the gradient extremely wide so motion is seamless */
    background-size: 2000px 100%;

    animation: infinite-scroll 12s linear infinite;
}

@keyframes infinite-scroll {
    0%   { background-position: 0 0; }
    100% { background-position: -2000px 0; }
}


.top_bar_left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.top_bar_logo {
    width: 75px;
    height: auto;
    object-fit: contain;
    margin-left: -10px;
    margin-right: -20px;
}

.top_bar_info {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.brand_name_top {
    font-size: 18px;
    font-weight: bold;
    color: #dddbcc;
}

.top_bar_stars {
  font-size: 14px;
  color: gold;
  letter-spacing: 2px;
}

/* CONTACT BUTTON */
.contact_button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 1;
  flex-shrink: 0;
}

.contact_button img {
  width: 120px;
  height: auto;
  object-fit: contain;
}

.contact_button:hover {
  filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.8));
}

.contact_button:active {
  transform: scale(1.1);
}

/* TITLE BLOCK */
.title_block {
    width: 100%;
    padding: 10px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 10px;
    margin-bottom: -5px;
    text-align: center;
}

.title_text {
    text-align: center;
    font-family: 'Prompt', sans-serif;
}

/* LINE 1 — Large Golden Headline */
.title_text .line1 {
    font-size: clamp(18px, 6vw, 28px);
    font-weight: 900;
    color: #ffcc33;
    letter-spacing: 1px;
    text-shadow:
        -2px -2px 0 #000,
         2px -2px 0 #000,
        -2px  2px 0 #000,
         2px  2px 0 #000,
         0px  0px 10px rgba(255, 180, 0, 0.9);
}

.title_text .line2 {
    font-size: clamp(14px, 6.5vw, 26px);
    font-weight: 700;
    color: #ffffff;
    text-shadow:
        -2px -2px 0 #000,
         2px -2px 0 #000,
        -2px  2px 0 #000,
         2px  2px 0 #000;
}

/* LOGO */
.logo_top {
    width: 60%;
    margin-top: -8%;
    margin-bottom: -3%;
}

/* ACTION BUTTONS */
.action_container {
  display: flex;
  width: 90%;
  margin-top: -3%;
  gap: 12px;
  justify-content: center;
}

.action_button_img {
  width: 48%;
  cursor: pointer;
  transition: all 0.3s ease;
  z-index: 1;
}

.action_button_img:hover {
  filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.8));
}

.action_button_img:active {
  transform: scale(1.05);
}

/* CHARACTER IMAGE */
.character_img {
  width: 100%;
  margin-top: 2%;
  margin-bottom: 30px;
  animation: floatGlow 3s ease-in-out infinite;
}

@keyframes floatGlow {
  0%, 100% {
    transform: translateY(0);
    filter: drop-shadow(0 0 1px rgba(255, 255, 255, 0.4));
  }
  50% {
    transform: translateY(15px);
    filter: drop-shadow(0 0 15px rgba(255, 255, 255, 0.8));
  }
}

/* IGAMING CONTENT */
.igaming_content {
  width: 90%;
  text-align: center;
}

.igaming_content p {
  font-size: 12px;
  color: #cccccc;
  line-height: 1.6;
  margin: 0;
  font-family: Arial, sans-serif;
}

.brand_name {
  color: #ffd700;
  font-weight: bold;
}

/* GAME LOGO */
.logo_game_img {
  width: 85%;
  margin-top: 15px;
}

/* FOOTER */
.footer_container {
  display: flex;
  gap: 20px;
  width: 90%;
  margin-top: 15px;
  margin-bottom: 30px;
  justify-content: center;
}

.footer_img {
  flex: 1;
  width: 45%;
}

.btn-register-effect,
.btn-login-effect {
    display: inline-flex;
    justify-content: center;
    align-items: center;

    /* Responsive width + height */
    width: clamp(180px, 45vw, 250px);
    height: clamp(45px, 12vw, 53px);

    /* Responsive text size */
    font-size: clamp(16px, 5vw, 22px);

    font-family: "Prompt", sans-serif;
    font-weight: 800;
    letter-spacing: 0.5px;

    border-radius: 40px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    color: #ffffff;
    -webkit-text-stroke: 1px #000;

    transition: 0.25s ease;
}


.btn-register-effect {
    background: linear-gradient(180deg, #FFD680 0%, #D9A73B 100%);
    border: 2px solid #F5E2A3;
    box-shadow:
        0 0 14px rgba(255, 200, 70, 0.45),
        inset 0 3px 6px rgba(255,255,255,0.35);

    /* ⭐ Pulse stays only on Register */
    animation: buttonPulse 1.8s ease-in-out infinite;

    color: #3a2600;
}

@keyframes buttonPulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.05); }
    100% { transform: scale(1); }
}

.btn-login-effect {
    background: linear-gradient(180deg, #4DB7FF 0%, #0077CC 100%);
    border: 2px solid #6EC8FF;
    box-shadow:
        0 4px 14px rgba(50,150,255,0.40),
        inset 0 3px 6px rgba(255,255,255,0.35);

    color: #ffffff;
}


.btn-text {
    font-family: 'Prompt', sans-serif;
    font-weight: 600;
    line-height: 1;

    /* Responsive sizing */
    font-size: clamp(18px, 5.5vw, 22px);

    color: #000000; /* inner text */

    /* Ultra-thick white outline */
    text-shadow:
        /* INNER OUTLINE (tight) */
        -2px -2px 0 #ffffff,
         2px -2px 0 #ffffff,
        -2px  2px 0 #ffffff,
         2px  2px 0 #ffffff,

        /* MIDDLE OUTLINE */
        -3px 0 0 #ffffff,
         3px 0 0 #ffffff,
         0 -3px 0 #ffffff,
         0  3px 0 #ffffff,

        /* OUTER GLOW outline */
        -4px -4px 3px #ffffff,
         4px -4px 3px #ffffff,
        -4px  4px 3px #ffffff,
         4px  4px 3px #ffffff,

        /* Soft glow (final layer) */
         0px 0px 12px rgba(255, 255, 255, 0.9);

    white-space: nowrap; /* prevent line break */
}


.btn-register-effect::before,
.btn-login-effect::before {
    content: "";
    position: absolute;
    top: 0;
    left: -160%;
    width: 160%;
    height: 100%;

    background: linear-gradient(
        120deg,
        transparent 0%,
        rgba(255,255,255,0.55) 50%,
        transparent 100%
    );

    filter: blur(10px);
    transform: skewX(-25deg);
    animation: shineSweep 2.2s linear infinite;

    z-index: 3;
    pointer-events: none;
}

@keyframes shineSweep {
    0% { left: -160%; }
    60% { left: 160%; }
    100% { left: 160%; }
}
