/* ========== NAVBAR ========== */

/* Navbar utama tanpa background */
.navbar {
    background: transparent !important;
    padding: 0 1rem;
  }
  
  /* Container logo tetap tanpa background */
  .navbar-logo {
    display: flex;
    align-items: center;
    z-index: 10;
  }
/* Section jadi konteks posisi */
.hero { position: relative; }

/* Lapisan glitter di atas background */
.glitter-layer{
  position:absolute; inset:0;
  pointer-events:none; overflow:hidden;
  z-index:5; /* atur sesuai kebutuhan */
}

/* Kita pakai 3 lapis elemen agar transform tidak saling timpa */
.spark{ /* gerak naik (translateY -) */
  position:absolute; bottom:-12vh; left:0;
  animation: rise var(--dur) linear var(--delay) infinite;
  will-change: transform;
}
.spark > i{ /* drift kiri-kanan */
  display:block;
  animation: drift var(--driftDur) ease-in-out var(--delay) infinite alternate;
  will-change: transform;
}
.spark > i > b{ /* glow + kedip (twinkle) */
  position:relative;
  display:block;
  width:var(--w); height:var(--h);
  border-radius:50%;
  background: radial-gradient(circle at 30% 30%, #fff 0%, #ffe8a3 35%, #e2b026 60%, #b07b0a 100%);
  opacity: var(--op, .9);
  filter: blur(var(--blur, 0.2px)) drop-shadow(0 1px 1px rgba(0,0,0,.35));
  animation: twinkle var(--twinkle) ease-in-out var(--delay) infinite;
  will-change: transform, opacity;
  mix-blend-mode: screen; /* cakep di atas velvet gelap */
}

/* Variasi “bintang/glint” opsional */
.spark.star > i > b::before,
.spark.star > i > b::after{
  content:"";
  position:absolute; left:50%; top:50%;
  transform:translate(-50%,-50%) rotate(45deg);
  width:calc(var(--w) * 3.2); height:2px;
  background: linear-gradient(90deg, transparent, rgba(255,242,197,.95), transparent);
  filter: blur(.3px);
}
.spark.star > i > b::after{ transform:translate(-50%,-50%) rotate(-45deg); }

/* Keyframes */
@keyframes rise   { to { transform: translateY(-120vh); } }
@keyframes drift  {
  from { transform: translateX(calc(var(--drift) * -1)); }
  to   { transform: translateX(var(--drift)); }
}
@keyframes twinkle{
  0%,100%{ transform: scale(.75); opacity:.45; }
  50%   { transform: scale(1.15); opacity:1; }
}

/* Aksesibilitas: matikan animasi jika user minta reduce motion */
@media (prefers-reduced-motion: reduce){
  .spark, .spark > i, .spark > i > b { animation: none !important; }
}

  /* Logo diperbesar */
  .logo-full {
    height: 70px;
  }
  
  /* Container menu dengan background blur & semi transparan */
  .navbar-menu-wrapper {
    background: rgba(33, 17, 0, 0.59);  /* Warna sesuai permintaan */
    backdrop-filter: blur(8px);
    border-radius: 10px 0.5rem 0.5rem 10px;
  
    display: inline-flex;
    align-items: center;
    padding: 0.8rem 2rem;
    max-width: fit-content;
  }
  
  /* Navbar nav items */
  .navbar-nav {
    gap: 2.5rem;
  }
  
  /* Link styling */
  .nav-link {
    color: #fff;
    font-weight: 600;
    font-size: 1.2rem;
  }
  
  .nav-link:hover {
    color: #d4af37;
  }
  
  /* Navbar toggler (burger menu) */
  .navbar-toggler {
    margin-left: 15px;
    z-index: 11;
    width: 50px;
    height: 50px;
    border: none;
  }
  
  
  /* ========== HERO SECTION ========== */
  
  .hero {
    background: url('../img/redvlevbg2.png') no-repeat center center/cover;
    height: 100vh;
    position: relative;
    color: #fff;
  }
  
  /* Container untuk text dan trophy */
  .hero-inner {
    height: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  
  /* Hero text */
  .hero-text {
    max-width: 500px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transform: translateX(100px);
  }
  
  .hero-text p.lead {
    font-family: 'DM Sans', sans-serif;
    font-size: 1rem;
    margin-top: 80px;
    margin-bottom: 0;
  }
  
  .hero-text h1 {
    font-family: 'Playfair Display', serif;
  }
  
  .text-gold {
    background: linear-gradient(45deg, #FFD700, #FFA500, #FFD700, #FFF8DC);
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    font-weight: bold;
  }
  
  /* Tombol */
  .btn-custom {
    border-radius: 50px;
    padding: 12px 35px;
    background: #fff;
    color: #000;
    font-weight: 600;
    border: none;
    transition: 0.3s;
    cursor: pointer;
  }
  
  .btn-custom:hover {
    background: #f5f5f5;
  }
  
  /* Hero trophy */
  .hero-trophy img {
    max-width: 100%;
    height: auto;
    max-height: 525px;
    transform: translateX(-120px) translateY(30px);
  }
  
  
  /* ========== RESPONSIVE ========== */
  
  @media (max-width: 768px) {
    .hero {
      background: url('../img/redvlevbg2.png') no-repeat center center;
      background-size: cover;
      min-height: 120vh;
    }
  
    .hero-inner {
      flex-direction: column;
      text-align: center;
      max-width: 100%;
      justify-content: flex-start;
      padding-top: 5rem;
      gap: 0; 
    }
  
    .hero-text {
      max-width: 100%;
      transform: none;
      padding: 0 1rem;
      order: 1;
      margin-bottom: 2rem;
    }
  
    .hero-text p.lead {
      font-size: 0.9rem;
      margin-top: 30px;
    }
  
    .hero-text h1 {
      font-size: 1.8rem;
    }
  
    .hero-trophy img {
      transform: none;
      margin-top: 1rem;
      max-height: 300px;
      order: 2;
    }
  
    /* Overlay Menu */
    /* Overlay Menu */
    .navbar-menu-wrapper {
      position: fixed;
      top: 80px;               /* agak turun biar ga nabrak header */
      right: 20px;
      background: rgba(33, 17, 0, 0.85); /* transparan */
      backdrop-filter: blur(10px);        /* efek kaca */
      border-radius: 16px;
      padding: 2rem;
      z-index: 9999;
    
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 1.5rem;
    
      width: max-content;   /* otomatis sesuai teks */
      max-width: 90%;
      height: auto;
    
      /* animasi awal: geser keluar layar kanan */
      transform: translateX(120%);
      opacity: 0;
      transition: transform 0.4s ease, opacity 0.3s ease;
      pointer-events: none;
    
      box-shadow: 0 8px 30px rgba(0,0,0,0.4);
    }
    
    .navbar-menu-wrapper.active {
      transform: translateX(0);  /* geser masuk ke kiri */
      opacity: 1;
      pointer-events: auto;
    }    
    
    .navbar-nav {
      flex-direction: column;
      gap: 1.5rem;
      width: 100%;
    }
  
    .nav-link {
      font-size: 1.2rem;
      color: white;
    }
  
    /* Logo size */
    .logo-full {
      height: 55px;
    }
    
  
    /* ==== Burger to X ==== */
    .navbar-toggler {
      display: flex;                /* biar konten bisa di-center */
      align-items: center;          /* vertikal center */
      justify-content: center;      /* horizontal center */
      width: 40px;
      height: 40px;
      position: relative;
      border: none;
      background: transparent;
      cursor: pointer;
      z-index: 10000;
      border-radius: 6px;
      transition: background-color 0.3s ease;
      padding: 0;                   /* reset padding bawaan bootstrap */
      line-height: 1;               /* reset line-height */
    }
    
    /* Efek hover / klik */
    .navbar-toggler:hover,
    .navbar-toggler:focus,
    .navbar-toggler:active {
      background-color: rgba(255, 255, 255, 0.15); /* ✅ highlight saat ditekan */
      outline: none; /* hilangkan outline default browser */
    }
    
    /* Garis burger */
    .navbar-toggler .navbar-toggler-icon {
      background: none;
      width: 25px;
      height: 2px;
      background-color: white;
      display: block;
      position: relative;
      transition: all 0.3s ease-in-out;
    }
    
    .navbar-toggler .navbar-toggler-icon::before,
    .navbar-toggler .navbar-toggler-icon::after {
      content: "";
      position: absolute;
      left: 0;
      width: 25px;
      height: 2px;
      background-color: white;
      transition: all 0.3s ease-in-out;
    }
    
    .navbar-toggler .navbar-toggler-icon::before {
      top: -8px;
    }
    
    .navbar-toggler .navbar-toggler-icon::after {
      top: 8px;
    }
    
    /* Burger → X */
    .navbar-toggler.active .navbar-toggler-icon {
      background-color: transparent;
    }
    
    .navbar-toggler.active .navbar-toggler-icon::before {
      transform: rotate(45deg);
      top: 0;
    }
    
    .navbar-toggler.active .navbar-toggler-icon::after {
      transform: rotate(-45deg);
      top: 0;
    }
  }    