:root {
  /* --color1: #03256c;
  --color2: #2541b2; */
  --color1: #1a3d9c; /* lebih gelap dari #4a7dff */
  --color2: #3e64c5; /* versi lebih tenang dari #7faaff */
  --color3: #eeeeee;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  outline: none;
  border: none;
  text-decoration: none;
}

body {
  background-color: var(--color3);
  font-family: "Poppins", "Franklin Gothic Medium", "Arial Narrow", Arial,
    sans-serif;
  color: var(--color3);
}

.header {
  display: flex;
}

.header .nav {
  background-color: var(--color2);
  min-height: 5rem;
  width: 80vw;
  margin: auto;
  display: flex;
  align-items: center;
  border-radius: 12px 12px 0 0;
}

.header .nav .logo {
  font-family: "Manufacturing Consent", system-ui;
  font-size: 3rem;
  margin-left: 2rem;
  margin-right: auto;
  color: white;
  /* font-weight: 400; */
  /* font-style: normal; */
}

.header .nav .menu {
  display: flex;
  align-items: center;
  padding: 1rem;
}

.header .nav .menu .about {
  cursor: pointer;
  margin: 0 1rem;
  color: white;
}
.header .nav .menu .features {
  cursor: pointer;
  margin: 0 1rem;
  color: white;
}
.header .nav .menu .pricing {
  cursor: pointer;
  margin: 0 1rem;
  color: white;
}
.header .nav .menu .contact {
  cursor: pointer;
  margin: 0 1rem;
  color: white;
}

.content {
  width: 80vw;
  margin: auto;
  color: var(--color1);
  border: var(--color2) solid 1px;
  background-color: white;
}

.content .jumbotron {
  min-height: 60vh;
  display: flex;
}
.content .jumbotron .title {
  text-transform: uppercase;
  font-size: 3rem;
  width: 35vw;
  margin: 5rem 7rem 1rem 7rem;
  font-weight: 800;
  text-align: center;
}
.content .jumbotron .caption {
  font-size: 1rem;
  width: 35vw;
  margin: 1rem 7rem;
}
.content .jumbotron .image {
  background-image: url(img/image.jpg);
  width: 20rem;
  height: 60vh;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.content .about {
  min-height: 80vh;
  background-color: var(--color2);
  margin-top: -30px;
  color: white;
  margin-bottom: -20px;
}
.content .about .title {
  margin: 1rem 7rem;
  text-transform: uppercase;
  font-size: 3rem;
  text-align: center;
}
.content .about p {
  margin: 1rem 7rem;
}

.content .features {
  min-height: 80vh;
  background-color: white;
  margin-top: -20px;
  color: var(--color2);
  display: flex;
}
.content .features .title {
  margin: 1rem 7rem;
  text-transform: uppercase;
  font-size: 3rem;
  text-align: left;
}
.content .features .feature {
  margin: 1rem 10rem;
}

.content .features .image {
  background-image: url(img/antri.jpeg);
  width: 30rem;
  height: 60vh;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.content .pricing {
  min-height: 60vh;
  background-color: var(--color2);
  margin-top: -30px;
  color: white;
}
.content .pricing .title {
  margin: 1rem 7rem;
  text-transform: uppercase;
  font-size: 3rem;
  text-align: center;
}
.content .pricing .price {
  margin: 7rem 10rem;
  text-align: center;
}

.content .contact {
  min-height: 60vh;
  background-color: white;
  margin-top: -30px;
  color: var(--color2);
}
.content .contact .title {
  margin: 1rem 7rem;
  text-transform: uppercase;
  font-size: 3rem;
  text-align: center;
}
.content .contact .mail {
  margin: 1rem 10rem;
}

.footer {
  width: 80vw;
  margin: auto;
  display: flex;
  justify-content: center;
  background-color: var(--color2);
  border-radius: 0 0 12px 12px;
  min-height: 30px;
}
.footer .title {
  color: white;
}

.contact input,
.contact textarea {
  border: 1px solid var(--color1);
  color: var(--color2) !important;
}

.contact label {
  color: var(--color2) !important;
}

.contact p {
  text-align: center;
}

.hidden {
  display: none;
}

/* 🌐 Ukuran Desktop (di atas 1200px) */
@media (min-width: 1200px) {
}

/* 💻 Ukuran Laptop (992px – 1199px) */
@media (max-width: 1199px) {
  .content .jumbotron {
    justify-content: center;
  }
  .content .jumbotron .text .title {
    width: 50vw;
    text-align: center;
  }
  .content .jumbotron .text .caption {
    width: 50vw;
    text-align: center;
  }

  .content .jumbotron .image {
    display: none;
  }

  .content .about p {
    margin: 1rem 3rem;
  }

  .content .features .feature {
    margin: 1rem 3rem;
  }

  .content .features .image {
    display: none;
  }

  .content .pricing .price {
    margin: 3rem 3rem;
  }

  .content .contact .title {
    margin: 1rem 3rem;
    font-size: 2rem;
  }

  .content .contact p {
    margin: 0 3rem;
  }

  .content .contact .mail {
    margin: 1rem 3rem;
  }
}

/* 📱 Ukuran Tablet (768px – 991px) */
@media (max-width: 991px) {
  .content .jumbotron .text .title {
    width: 60vw;
    font-size: 2rem;
  }
  .content .jumbotron .text .caption {
    width: 60vw;
    font-size: 0.75rem;
  }

  .content .jumbotron .image {
    display: none;
  }

  .content .about .title {
    text-align: center;
  }
  .content .about p {
    font-size: 0.75rem;
  }
  .content .about {
    margin-bottom: -10px;
  }

  .content .jumbotron,
  .content .about,
  .content .features,
  .content .pricing {
    min-height: 45vh;
    margin-top: -30px;
    padding-bottom: 30px;
    /* background-color: aqua; */
  }
  .header .nav .menu {
    display: none;
  }
}

/* 📲 Ukuran Smartphone (di bawah 768px) */
@media screen and (max-width: 768px) {
  .header .nav {
    width: 100vw;
  }

  .content,
  .footer {
    width: 100vw;
  }

  .content .jumbotron,
  .content .about,
  .content .features,
  .content .pricing {
    width: 100vw;
    min-height: 35vh;
  }

  .header .nav .menu {
    width: 100vw;
    padding: 0.2rem;
    /* background-color: aqua; */
    display: flex;
    justify-content: center;
  }

  .content .about {
    margin-bottom: -10px;
  }

  .content .features {
    width: 100vw;
  }

  .content .features .title {
    margin: 1rem 0rem;
    width: 100vw;
    text-align: center;
  }
  .header .nav .menu {
    display: none;
  }
}
