

    *{
      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;
    }

    /* ================= NAVBAR ================= */

    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 */

    .logo{
      display:flex;
      align-items:center;
      gap:15px;
    }

    .logo-img{
      width:120px;
      height:auto;
      object-fit:contain;
    }

    .logo-text h2{
      font-size:28px;
      color:#243b9f;
      line-height:1;
    }

    .logo-text span{
      font-size:14px;
      color:#777;
      letter-spacing:4px;
    }

    /* MENU */

    .menu{
      display:flex;
      gap:40px;
      list-style:none;
    }

    .menu a{
      text-decoration:none;
      color:#111;
      font-weight:500;
      transition:0.3s;
    }

    .menu a:hover,
    .menu .active{
      color:#5b43f3;
    }

    /* ================= HERO ================= */

    .hero{
      margin-top:40px;
      background:linear-gradient(135deg,#5b43f3,#7b68ff);
      border-radius:30px;
      padding:70px 50px;
      color:white;
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:50px;
    }

    .hero-text{
      flex:1;
    }

    .hero-text h1{
      font-size:60px;
      line-height:1.2;
      margin-bottom:20px;
    }

    .hero-text p{
      font-size:16px;
      line-height:1.9;
      opacity:0.9;
    }

    .hero-image{
      flex:1;
      display:flex;
      justify-content:center;
    }

    .hero-image img{
      width:100%;
      max-width:420px;
    }

    /* ================= SECTION ================= */

    section{
      padding:100px 0;
    }

    .section-title{
      text-align:center;
      margin-bottom:60px;
    }

    .section-title h2{
      font-size:45px;
      color:#1b237e;
      margin-bottom:15px;
    }

    .section-title p{
      color:#666;
      max-width:700px;
      margin:auto;
      line-height:1.8;
    }

    /* ================= SEJARAH ================= */

    .about{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:50px;
      align-items:center;
    }

    .about img{
      width:100%;
      border-radius:25px;
      box-shadow:0 15px 35px rgba(0,0,0,0.1);
    }

    .about-text h3{
      font-size:35px;
      color:#1b237e;
      margin-bottom:20px;
    }

    .about-text p{
      color:#666;
      line-height:1.9;
      margin-bottom:20px;
    }

    /* ================= VISI MISI ================= */

    .visi-misi{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
      gap:30px;
    }

    .card{
      background:white;
      padding:40px;
      border-radius:25px;
      box-shadow:0 10px 25px rgba(0,0,0,0.06);
      transition:0.3s;
    }

    .card:hover{
      transform:translateY(-5px);
    }

    .card h3{
      font-size:30px;
      color:#5b43f3;
      margin-bottom:20px;
    }

    .card p,
    .card li{
      color:#666;
      line-height:1.9;
    }

    .card ul{
      padding-left:20px;
    }

    /* ================= STRUKTUR ================= */

    .team-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
      gap:30px;
    }

    .team-card{
      background:white;
      border-radius:25px;
      overflow:hidden;
      box-shadow:0 10px 25px rgba(0,0,0,0.06);
      transition:0.3s;
      text-align:center;
    }

    .team-card:hover{
      transform:translateY(-5px);
    }

    .team-card img{
      width:100%;
      height:250px;
      object-fit:cover;
    }

    .team-card-content{
      padding:25px;
    }

    .team-card h4{
      font-size:22px;
      color:#1b237e;
      margin-bottom:10px;
    }

    .team-card p{
      color:#777;
    }

    /* ================= FOOTER ================= */

    footer{
      margin-top:50px;
      background:#1b237e;
      color:white;
      padding:30px 0;
    }

    .footer-content{
      display:flex;
      justify-content:space-between;
      align-items:center;
      flex-wrap:wrap;
      gap:20px;
    }

    footer a{
      color:white;
      text-decoration:none;
    }

    /* ================= RESPONSIVE ================= */

    @media(max-width:992px){

      .hero{
        flex-direction:column;
        text-align:center;
      }

      .hero-text h1{
        font-size:45px;
      }

      .about{
        grid-template-columns:1fr;
      }

    }

    @media(max-width:768px){

      nav{
        flex-direction:column;
        gap:20px;
      }

      .menu{
        flex-wrap:wrap;
        justify-content:center;
        gap:20px;
      }

      .hero{
        padding:50px 30px;
      }

      .hero-text h1{
        font-size:38px;
      }

      .section-title h2{
        font-size:35px;
      }

      .logo-img{
        width:90px;
      }

    }
