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

body {
  font-family: 'Urbanist', sans-serif;
  background-color: #121212;
  color: white;
}

h1, h2, h3 {
  font-family: 'Urbanist', sans-serif;
}

h1 {
  font-weight: bold; 
  font-size: 2.5vw; 
}

.launch-text {
  font-weight: 100;
  font-size: 1rem; 
}


p {
  font-weight: 400; 
}

/* Logo Styling */
.logo img {
  width: 200px; 
  height: auto;
}

/* Media Queries for Logo */
@media screen and (max-width: 768px) {
  .logo img {
      width: 150px;
  }
}

@media screen and (max-width: 480px) {
  .logo img {
      width: 100px;
  }
}

/* Hero Section */
.hero {
  display: flex;
  justify-content: space-between; 
  align-items: center;
  padding: 20px 60px; 
  margin-bottom: 80px;
}

.hero-left {
  width: 60%; 
  padding-left: 0;
  margin-top: 50px;
}

.hero-left h1 {
  font-size: 4.3vw;
  margin-bottom: 20px;
  font-weight: 300;
}

.hero-left p {
  margin-top: 13%;
  font-size: 2vw;
  margin-bottom: 20px;
  color: lightgrey;
}

.hero-right {
  display: flex;
  justify-content: flex-end;
  width: 45%;
  align-items: flex-start; 
}

.hero-right img {
  width: 100%;
  height: auto;
  object-fit: contain;
  margin-top: 50px; 
}

.email-form {
  display: flex;
  flex-wrap: wrap;
}

/* General styles for input and button */
.email-form input {
  width: 36%;
  padding: 12px;
  border-radius: 4px 0px 0px 4px;
  border: 1px solid #cdcdce;
  background-color: #ffffff;
  color: black;
  font-size: 17px;
  outline: none;
  box-sizing: border-box;
}

.email-form button {
  width: 22%; 
  padding: 0; 
  height: auto; 
  background-color: #00c4cc;
  color: black;
  border: none;
  font-size: 16px;
  cursor: pointer;
  font-weight: 600;
  box-sizing: border-box;
  text-align: center; 
  display: flex;
  justify-content: center;
  align-items: center; 
  border-radius: 0 4px 4px 0;
}

.email-form button:hover {
  background-color: #00a0a2;
}

/* Media query for large screens (desktop, laptops) */
@media (min-width: 1200px) {
  .email-form input {
      width: 36%; 
      padding: 12px; 
      font-size: 14px; 
  }

  .email-form button {
      width: 22%; 
      padding: 13px; 
      font-size: 16px; 
  }
}

/* For devices with width 1024px or less (large screens like laptops and tablets) */
@media screen and (max-width: 1024px) {
  .hero {
      padding: 20px 30px;
  }

  .hero-left {
      width: 55%; 
      margin-top: 30px;
  }

  .hero-left h1 {
      font-size: 5vw; 
  }

  .hero-left p {
      margin-top: 10%;
      font-size: 2.2vw;
  }

  .hero-right {
      width: 40%;
  }

  .hero-right img {
      width: 90%;
      margin-top: 20px;
  }

  .email-form input {
      width: 230px;
      font-size: 12px;
  }

  .email-form button {
    font-size: 16px;
}

.learn-more {
    font-size: 1.4vw;
    margin-left: 80px;
}
}

/* For devices with width 768px or less (tablets and smaller devices) */
@media screen and (max-width: 768px) {
.hero {
    padding: 20px 15px;
    flex-direction: column; 
}

.hero-left {
    width: 100%;
    margin-top: 20px;
    text-align: center;
}

.hero-left h1 {
    font-size: 6vw; 
}

.hero-left p {
    margin-top: 5%;
    font-size: 4vw;
}

.hero-right {
    width: 100%;
    margin-top: 20px;
    display: flex;
    justify-content: center;
}

.hero-right img {
    width: 80%;
    margin-top: 20px;
}

.email-form {
    flex-direction: column;
    align-items: center;
}

.email-form input {
    width: 50%;
    margin-bottom: 10px;
    border-radius:2px;
    padding:10px;
}

.email-form button {
    width: 50%;
    font-size: 2vw;
    border-radius:2px;
    padding:12px;
}

.learn-more {
    margin-left: 0;
    font-size: 2.5vw;
    text-align: center;
    margin-top: 10px;
}
}

/* For devices with width 480px or less (small screens like mobile phones) */
@media screen and (max-width: 480px) {
.hero {
    padding: 15px 10px;
}

.hero-left h1 {
    font-size: 8vw; 
}

.hero-left p {
    font-size: 5vw;
}

.hero-right img {
    width: 70%;
}

.email-form input {
    width: 50%;
    margin-bottom: 10px;
    border-radius:2px;
    padding:8px;
}

.email-form button {
    width: 50%;
    font-size: 3vw;
    border-radius:2px;
    padding:12px;
}

.learn-more {
    font-size: 3vw;
}
}

/* Quote Section */

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

.quote {
  text-align: center;
  padding: 100px 20px;
  max-width: 71%;
  margin: 0 auto;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1s ease-in, transform 1s ease-in;
}

.quote.visible {
  opacity: 1;
  transform: translateY(0);
}

.quote p {
  font-size: 4vw;
  line-height: 1.2;
  margin: 0 auto; 
}

.author {
  margin-top: -80px;
  display: flex;
  justify-content: center;  
  align-items: center;    
  gap: 10px;
  margin-bottom: 15%;
}

.author img {
  width: 70px;
  height: 70px;
}

.author p {
  font-size: 1.3vw;
  line-height: 1.5;  
}

.ceo-title {
  color: #00c4cc; 
}

/* For large screens (1024px or below) */
@media screen and (max-width: 1024px) {
.quote {
    padding: 80px 20px; 
}

.quote p {
    font-size: 3.5vw; 
}

.author {
    margin-top: -60px; 
    margin-bottom: 10%;
}

.author img {
    width: 60px; 
    height: 60px; 
}

.author p {
    font-size: 1.4vw; 
}

.ceo-title {
    color: #00c4cc;
}
}

/* For medium screens (768px or below, tablets) */
@media screen and (max-width: 768px) {
.quote {
    padding: 60px 20px;
}

.quote p {
    font-size: 5vw; 
}

.author {
    margin-top: -40px; 
    margin-bottom: 8%;
    flex-direction: column; 
}

.author img {
    width: 50px; 
    height: 50px; 
}

.author p {
    font-size: 1.6vw; 
    text-align: center; 
}

.ceo-title {
    color: #00c4cc;
}
}

/* For small screens (480px or below, mobile phones) */
@media screen and (max-width: 480px) {
  .quote {
    padding: 40px 10px; 
}

.quote p {
    font-size: 6vw; 
}

.author {
    margin-top: -20px; 
    margin-bottom: 5%;
    flex-direction: column; 
}

.author img {
    width: 50px; 
    height: 50px; 
}

.author p {
    font-size: 2.2vw; 
    text-align: center; 
}

.ceo-title {
    color: #00c4cc;
}
}

/* Footer Section */
footer {
padding: 20px 50px;
}

footer hr {
margin-bottom: 20px;
}

.footer-content {
display: flex;
justify-content: space-between;
align-items: center;
}

.footer-left a {
margin-right: 40px;
color: lightgrey;
text-decoration: none;
font-size: 1vw;
}

/* Footer Right Image */
.footer-right img {
margin-left: 8px;
width: 20px;
}

/* Media Queries for Footer */
@media screen and (max-width: 1024px) {
footer {
    padding: 20px 30px; 
}

.footer-content {
    flex-direction: column; 
    align-items: flex-start; 
}

.footer-left a {
    margin-right: 30px; 
    font-size: 1.2vw; 
}

.footer-right img {
    width: 25px; 
}
}

@media screen and (max-width: 768px) {
footer {
    padding: 20px 20px; 
}

.footer-content {
    flex-direction: column; 
    align-items: center; 
    text-align: center; 
}

.footer-left a {
    margin-right: 20px; 
    font-size: 2vw; 
}

.footer-right img {
    margin-top: 10px;
    width: 25px; 
}
}

@media screen and (max-width: 480px) {
footer {
    padding: 20px 10px; 
}

.footer-content {
    align-items: center; 
    text-align: center; 
}

.footer-left a {
    font-size: 3vw; 
}

.footer-right a {
  text-decoration: none;
}

.footer-right img {
    margin-top: 10px;
    width: 20px; 
}
}