*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html,body{
  width:100%;
  min-height:100%;
}

body{
  font-family:'Montserrat',sans-serif;
  background:#ffffff;
  color:#050505;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}

.wrap{
  width:100%;
  max-width:760px;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:22px;
}

.logo{
  width:160px;
  max-width:45vw;
  height:auto;
  object-fit:contain;
  display:block;
  animation:logoMove 3s ease-in-out infinite;
}

h1{
  font-size:clamp(28px,5vw,48px);
  font-weight:800;
  line-height:1.15;
  color:#050505;
}

p{
  font-size:clamp(15px,2.4vw,20px);
  font-weight:500;
  color:#333;
}

.countdown{
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:8px;
}

.countdown div{
  border:2px solid #FFD22E;
  border-radius:14px;
  padding:18px 8px;
  background:#fff;
}

.countdown span{
  display:block;
  font-size:clamp(28px,5vw,48px);
  font-weight:800;
  color:#050505;
}

.countdown small{
  display:block;
  margin-top:5px;
  font-size:12px;
  font-weight:700;
  color:#050505;
  text-transform:uppercase;
}

h2{
  font-size:clamp(18px,3.5vw,28px);
  font-weight:700;
  color:#050505;
}

@keyframes logoMove{
  0%,100%{
    transform:translateY(0) scale(1);
  }
  50%{
    transform:translateY(-8px) scale(1.03);
  }
}

@media(max-width:600px){
  body{
    padding:16px;
  }

  .wrap{
    gap:18px;
  }

  .logo{
    width:130px;
    max-width:55vw;
  }

  .countdown{
    grid-template-columns:repeat(2,1fr);
  }

  .countdown div{
    padding:16px 6px;
  }
}

@media(max-width:360px){
  .logo{
    width:115px;
  }

  .countdown span{
    font-size:30px;
  }
}
