@font-face {
  font-family: 'AmazingViews';
  src: url('fonts/AmazingViews.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

/* ===== BASE STYLES ===== */
html {
  overflow-x: hidden;
  overflow-y: visible;
}

body {
  position: relative;
  background-color: #140A22;
  width: 100%;
  overflow: clip;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  height: auto;
  margin: 0;
  padding: 0;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  color: #ffffff;
  font-size: 1.55vw;
  scroll-behavior: smooth;
}

.content {
  width: 100%;
  height: auto;
  position: relative;
}

/* ===== BACKGROUND & METEORITES ===== */
.bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
  overflow-x: clip;
}

.meteorites {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: start;
  overflow-x: clip;
}

.meteorites img {
  width: 40%;
}

#m3 { 
  margin-top: 52%;
}

#m3 img {
  transform: translateX(-37%);
}

#m2 {
  justify-content: end;
}

#m2 img {
  transform: translate(30%, -12%);
}

#m1 {
  margin-top: 30%;
}

#m1 img {
  transform: translateX(-50%);
}

#m4 {
  justify-content: end;
}

#m4 img {
  transform: translateX(+42.5%);
}

/* ===== SECTIONS ===== */
section {
  width: 100%;
  height: auto;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 12;
  margin: 7.5% auto;
}

/* ===== HERO SECTION ===== */
.hero {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 9;
  margin-top: 0;
  margin-bottom: 0;
}

.logo {
  position: absolute;
  top: 7.5%;
  left: 10%;
  font-family: 'AmazingViews', sans-serif;
  font-size: 4vw;
  font-weight: 500;
  z-index: 15;
}

.planet {
  width: 125%;
  height: auto;
  position: absolute;
  top: 0;
  left: -30%;
  z-index: 1;
}

.background {
  width: 100%;
  overflow-x: clip;
  position: absolute;
  top: 0;
  left: -5%;
  z-index: -1;
}

.background img {
  width: 100%;
  scale: 1.15;
  height: auto;
  position: relative;
}

.astronaut {
  width: 80%;
  height: auto;
  position: relative;
  margin-top: 7%;
  margin-left: 5%;
  z-index: 2;
}

/* ===== TYPOGRAPHY ===== */
h1 {
  font-family: 'AmazingViews', sans-serif;
  margin-bottom: 35px;
  font-weight: 500;
  font-size: 3vw;
  color: #ffffff;
  padding: 0;
  text-align: center;
  z-index: 10;
}

h2 {
  font-family: 'AmazingViews', sans-serif;
  font-weight: 500;
  color: #ffffff;
  padding: 0;
  text-align: center;
  z-index: 10;
}

p {
  line-height: 1.5;
  color: #ffffff;
  z-index: 10;
  margin: 5px 0;
}

/* ===== INFO SECTION ===== */
.info {
  width: 90%;
  position: relative;
  height: auto;
  text-align: center;
  z-index: 10;
  margin-top: 0;
}

.info p {
  z-index: 15;
}

/* ===== OFFER SECTION ===== */
.offer {
  width: 80%;
  height: auto;
  text-align: center;
  display: flex;
  gap: 50px;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
}

.offer-item {
  width: calc((100% - 100px) / 3);
  padding: 4% 2.5%;
  position: relative;
  margin-top: 2.5%;
  height: full;
  background-color: #5E74C8;
  padding-bottom: 4.5%;
  box-sizing: border-box;
  z-index: 10;
}

.offer-item h2 {
  background-color: #CBB8EF;
  color: black;
  width: 80%;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  top: 0;
  font-size: 3vw;
  padding: 2% 0;
  margin: 0;
  z-index: 15;
}

.offer-item p {
  line-height: 1.75;
  margin: 0;
  color: #ffffff;
}

/* ===== GAMES GALLERY ===== */
.our_games {
  width: 95%;
  position: relative;
  z-index: 12;
}

.gallery {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.wrapper {
  height: auto;
  width: 84%;
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.box {
  flex-shrink: 0;
  height: auto;
  height: fit-content;
  margin-right: 50px;
  width: calc((100% - 100px) / 3);
  overflow: hidden;
  padding-top: 1%;
}

.box img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
   transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), 
              filter 0.4s ease;
  filter: brightness(0.9);
}
.box img:hover {
    transform: scale(1.07);
  transform: translateY(-2%);
  filter: brightness(1.15);
}

.title {
  margin-top: 12px;
  width: 100%;
  text-align: center;
}

.box.placeholder {
  background-color: #CBB8EF;
  display: flex;
  min-height: 100%;
}

.show-overflow {
  overflow: visible;
}

/* ===== ARROWS ===== */
.arrow {
  position: relative;
  background: #CBB8EF;
  border: none;
  color: #140A22;
  font-size: 4vw;
  font-weight: bold;
  font-family: 'AmazingViews', sans-serif;
  line-height: 0.75;
  padding: 0.25% 1%;
  text-align: center;
  transform: translateY(-50%);
}

.arrow.left {
  margin-right: 2.5%;
}

.arrow.right {
  margin-left: 2.5%;
}

.arrow:hover {
  color: white;
  cursor: pointer;
}

/* ===== ENGAGE SECTION ===== */
.engage {
  width: 100%;
  position: relative;
  text-align: center;
  z-index: 11;
  margin-bottom: 0;
}

.engage_action {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.engage_planet {
  width: 100%;
  overflow-x: clip;
  margin-top: -21%;
  pointer-events: none;
}

.engage_img {
  height: auto;
  scale: 1.25;
  width: 100%;
  pointer-events: none;
}

.flare {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-54%, 15%);
  width: 30%;
  scale: 1;
  height: auto;
  opacity: 0;
  transition: opacity 0.6s ease;
  pointer-events: none;
}

.flare.active {
  opacity: 1;
}

.engage_button {
  position: absolute;
  text-align: center;
  left: 50.5%;
  transform: translateX(-57.55%);
  top: 18%;
  font-family: 'AmazingViews', sans-serif;
  font-weight: 500;
  font-size: 3.5vw;
  color: black;
  text-align: center;
  z-index: 10;
  text-decoration: none;
  width: 20%;
padding-top: 8%;
padding-bottom: 8%;
border-radius: 100%;
}

.engage_action:hover {
  cursor: pointer;
}

/* ===== COPYRIGHT ===== */
.copyrights {
  width: 90%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  position: absolute;
  top: 90%;
  left: 5%;
  font-size: 1.25vw;
}

.copyrights p {
  text-align: left;
}

.copyrights p:last-child {
  text-align: right;
}

.privacy {
  text-decoration: none;
  color: white;
}

.privacy:hover {
  color: #ffcc00;
  transition: color 0.6s ease;
}

/* ===== RESPONSIVE DESIGN ===== */

/* Desktop Large */
@media (min-width: 1440px) {
  body {
    font-size: 18px;
  }
  
  h1 {
    font-size: 38px;
  }
  
  .logo {
    font-size: 50px;
  }
  
  .offer-item h2 {
    font-size: 38px;
  }
  
  .meteorites {
    overflow-x: visible;
  }
  
  .content {
    width: 1200px;
    margin: auto;
  }
  
  .arrow {
    font-size: 50px;
  }
  
  .offer-item {
    padding: 50px 3%;
    padding-bottom: 35px;
  }
  
  .copyrights {
    font-size: 18px;
    top: 90%;
  }
  
  .our_games {
    margin-top: 125px;
  }
  
  .engage {
    margin-top: 125px;
  }
  
  .engage_planet {
    overflow-x: visible;
  }
  
  .bg {
    overflow: visible;
  }
  
  .engage_button {
    top: 110px;
    font-size: 48px;
  }
}

/* Tablet */
@media (max-width: 950px) {
  body {
    font-size: 3vw;
  }
  
  .logo {
    font-size: 7vw;
  }
  
  section {
    margin-top: 15%;
  }
  
  .hero {
    margin-bottom: 5%;
  }
  
  p {
    line-height: 1.9;
    margin: 0;
  }
  
  h1 {
    font-size: 6.5vw;
    margin-top: 0;
  }
  
  .offer-item h2 {
    font-size: 6.5vw;
  }
  
  .background {
    width: 100%;
  }
  
  .background img {
    scale: 1.3;
  }
  
  .astronaut {
    margin-top: 12.5%;
  }
  
  .info {
    width: 85%;
  }
  
  .offer {
    width: 80%;
    flex-direction: column;
    align-items: center;
    font-size: 3vw;
    margin-bottom: 0px;
  }
  
  .offer-item {
    width: 100%;
    padding: 10% 10%;
    padding-bottom: 7.5%;
    margin-bottom: 5%;
  }
  
  .offer-item:last-child {
    margin-bottom: 0;
  }
  
  .offer-item p {
    padding: 0;
  }
  
  .offer-item h2 {
    width: 40%;
    font-size: 5vw;
  }
  
  .wrapper {
    width: 80%;
  }
  
  .box {
    width: calc((100% - 50px) / 2);
  }
  

  
  .arrow {
    font-size: 5vw;
    line-height: 1;
    padding: 0.25% 2%;
    transform: translateY(-75%);
  }
  
  .engage p {
    margin-bottom: 75px;
    width: 80%;
    margin: auto;
  }
  
  .engage_planet {
    width: 100%;
    margin-top: -52.5vw;
    padding-bottom: 25%;
  }
  
  .flare {
    width: 40%;
    transform: translate(-55%, 10%);
  }
  
  .engage_img {
    scale: 1.75;
    margin-top: 35vw;
  }
  
  .engage_button {
    font-size: 5vw;
    top: 12.5%;
    width: 27.5%;
    padding-top: 11%;
    padding-bottom: 11%;
  }
  
  .copyrights {
    font-size: 2vw;
    top: 90%;
  }
}

/* Mobile */
@media (max-width: 650px) {
  .box {
    width: 100%;
  }
    .logo {
    font-size: 9vw;
  }

}