

    *{
      margin:0;
      padding:0;
      box-sizing:border-box;
      font-family:'Poppins', sans-serif;
    }

    body{
      background:#f8f8fb;
      color:#1c1c1c;
    }

    .container{
      width:90%;
      max-width:1200px;
      margin:auto;
    }

    header{
      width:100%;
      background:white;
      padding:20px 0;
      box-shadow:0 2px 10px rgba(0,0,0,0.03);
      position:sticky;
      top:0;
      z-index:100;
    }

    nav{
      display:flex;
      justify-content:space-between;
      align-items:center;
    }

    .logo{
      display:flex;
      align-items:center;
      gap:15px;
    }

    .logo-img{
      width:120px;
    }

    .logo-text h2{
      font-size:28px;
      color:#243b9f;
    }

    .logo-text span{
      font-size:14px;
      color:#777;
      letter-spacing:4px;
    }

    .menu{
      display:flex;
      gap:40px;
      list-style:none;
    }

    .menu a{
      text-decoration:none;
      color:#111;
      font-weight:500;
    }

    .menu .active{
      color:#5b43f3;
    }

    .hero{
      margin-top:40px;
      background:linear-gradient(135deg,#5b43f3,#7b68ff);
      border-radius:30px;
      padding:70px 40px;
      text-align:center;
      color:white;
    }

    .hero h1{
      font-size:55px;
      margin-bottom:20px;
    }

    .hero p{
      max-width:700px;
      margin:auto;
      line-height:1.9;
    }

    .form-section{
      padding:100px 0;
    }

    .form-container{
      background:white;
      padding:50px;
      border-radius:30px;
      box-shadow:0 10px 30px rgba(0,0,0,0.06);
      max-width:850px;
      margin:auto;
    }

    .form-title{
      text-align:center;
      margin-bottom:40px;
    }

    .form-title h2{
      font-size:40px;
      color:#1b237e;
    }

    form{
      display:grid;
      gap:25px;
    }

    .form-group{
      display:flex;
      flex-direction:column;
    }

    .form-group label{
      margin-bottom:10px;
      font-weight:600;
    }

    .form-group input,
    .form-group select,
    .form-group textarea{
      padding:15px 18px;
      border:1px solid #ddd;
      border-radius:12px;
      font-size:15px;
      outline:none;
    }

    textarea{
      resize:none;
      height:120px;
    }

    .submit-btn{
      background:#5b43f3;
      color:white;
      border:none;
      padding:16px;
      border-radius:12px;
      font-size:16px;
      font-weight:600;
      cursor:pointer;
    }

    /* ==========================
   RESPONSIVE / ELASTIS
========================== */

/* Tablet */
@media screen and (max-width: 992px){

  .container{
    width: 94%;
  }

  .hero{
    padding: 60px 30px;
  }

  .hero h1{
    font-size: 42px;
  }

  .form-container{
    padding: 40px 30px;
  }

  .form-title h2{
    font-size: 32px;
  }

  .menu{
    gap: 20px;
  }

  .logo-img{
    width: 90px;
  }

  .logo-text h2{
    font-size: 22px;
  }
}


/* Mobile */
@media screen and (max-width: 768px){

  header{
    padding: 15px 0;
  }

  nav{
    flex-direction: column;
    gap: 20px;
    text-align: center;
  }

  .menu{
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
  }

  .menu a{
    font-size: 14px;
  }

  .logo{
    flex-direction: column;
    text-align: center;
    gap: 10px;
  }

  .logo-img{
    width: 85px;
  }

  .logo-text h2{
    font-size: 22px;
  }

  .logo-text span{
    font-size: 12px;
    letter-spacing: 2px;
  }

  .hero{
    margin-top: 25px;
    border-radius: 20px;
    padding: 50px 20px;
  }

  .hero h1{
    font-size: 34px;
    line-height: 1.3;
  }

  .hero p{
    font-size: 14px;
    line-height: 1.8;
  }

  .form-section{
    padding: 60px 0;
  }

  .form-container{
    padding: 30px 20px;
    border-radius: 20px;
  }

  .form-title h2{
    font-size: 28px;
  }

  .form-group input,
  .form-group select,
  .form-group textarea{
    padding: 14px;
    font-size: 14px;
  }

  .submit-btn{
    width: 100%;
    font-size: 15px;
    padding: 14px;
  }
}


/* HP kecil */
@media screen and (max-width: 480px){

  .hero h1{
    font-size: 28px;
  }

  .hero p{
    font-size: 13px;
  }

  .form-title h2{
    font-size: 24px;
  }

  .menu{
    gap: 12px;
  }

  .menu a{
    font-size: 13px;
  }

  .form-container{
    padding: 25px 15px;
  }
}
