 * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
      }
      :root {
        --main-dark: #0b1b2a;
        --accent: #e84c3d;
        --card-bg: #ffffff;
        --page-bg: #efefef;
      }
      body {
        font-family: "Lora", serif;
        background: var(--page-bg);
        color: #111;
      }
      h1,h2,h3,h4,h5,h6 {
        color: #fff;
      }
      a,
      ul,
      ol {
        text-decoration: none;
        list-style: none;
        color: inherit;
      }
      /* NAV */
     /* .top-nav {
        background: white;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
      }
      .top-nav .nav-link {
        color: #1e1e1e;
        padding: 10px 18px;
        border-radius: 8px;
      }
      .top-nav .nav-link.active {
        background: #dddddd;
      }
      .logo {
        width: 38px;
        height: 38px;
        border-radius: 6px;
        border: 1px solid #ddd;
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .btn-sec {
        background-color: #ddd;
        color: #1e1e1e;
        border: 1px solid #999;
        padding: 3px 20px;
      }*/
      /* HERO */
      .hero {
        height: 630px;
        background: linear-gradient(
            to bottom,
            rgba(0, 0, 0, 0.2) 0%,
            rgba(0, 0, 0, 0.2) 100%
          ),
          url("../images/baner-header000.jpg");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        position: relative;
      }
      /*.hero::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(
          90deg,
          rgba(0, 0, 0, 0.28),
          rgba(0, 0, 0, 0.12)
        );
      }*/
      .hero-content {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        height: 100%;
        padding: 40px;
      }
      .hero-left {
        max-width: 720px;
        color: white;
      }
      .eyebrow {
        font-size: 14px;
        opacity: 0.9;
        letter-spacing: 1.5px;
      }
      .big-title {
        font-size: 60px;
        font-weight: 700;
        letter-spacing: 2px;
        margin-top: 6px;
      }
      /*.meta{display:flex;gap:20px;align-items:center;margin-top:10px;font-weight:600}*/
      .separator {
        width: 3px;
        height: 60px;
        background-color: white;
        border-radius: 2px;
        display: inline-block;
      }
      /* AGENDA */
      .agenda-section {
        padding: 60px 16px;
      }
      .agenda-title {
        font-size: 40px;
        font-weight: 700;
        margin-bottom: 28px;
        color: var(--main-dark);
      }
      .day-card {
        position: relative;
        background-color: #f5f5f5;
        border-radius: 18px;
        padding: 22px;
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
        min-height: 420px;
      }
      .date-pill {
        width: 83.1px;
        height: 80.14px;
        border-radius: 17.5px;
        background: #fff;
        
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        
      }
      .date-pill .day {
        font-weight: 800;
        color: var(--accent);
        font-size: 18px;
      }
      .date-pill .month {
        font-size: 10px;
        color: #999;
      }
      .slot {
        display: flex;
        gap: 12px;
        align-items: flex-start;
        padding: 8px 0;
        border-bottom: 1px dashed rgba(0, 0, 0, 0.03);
      }
      .slot .time {
        width: 72px;
        font-size: 12px;
        color: #222;
      }
      .slot .desc {
        font-size: 13px;
        font-weight: 700;
        color: #222;
      }
      .slot .desc small {
        font-size: 11px;
        font-weight: 500;
      }

      /* OVERVIEW & VENUE */
      .info-section {
        
        padding: 80px 0;
        overflow: hidden;
      }
      .info-block {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 60px;
        margin-bottom: 80px;
      }
      .info-block:nth-child(even) {
        flex-direction: row-reverse;
      }
      .info-img {
        flex: 1;
        min-height: 320px;
        border-radius: 20px;
        overflow: hidden;
      }
      .info-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 20px;
      }
      .info-text {
        flex: 1;
      }
      .info-text h2 {
        font-size: 32px;
        font-weight: 700;
        color: var(--main-dark);
        margin-bottom: 15px;
      }
      .info-text p {
        font-size: 15px;
        color: #333;
        line-height: 1.8;
      }

      /* animations */
      .animate {
        opacity: 0;
        transform: translateX(100px);
        transition: all 0.8s ease-out;
      }
      .from-left {
        transform: translateX(-100px);
      }
      .show {
        opacity: 1;
        transform: translateX(0);
      }

      .location {
        
        padding-left: 6px;
      }
      .small-print {
        font-size: 12px;
        color: #111;
      }

      @media (max-width: 991px) {
        .hero {
          height: 360px;
        }
        .big-title {
          font-size: 40px;
        }
        .info-block {
          flex-direction: column !important;
          text-align: center;
        }
        .info-img {
          width: 100%;
        }
      }
      @media (max-width: 767px) {
        .hero {
          height: 320px;
        }
        .big-title {
          font-size: 30px;
        }
      }


     
  .promo-wrap { background: #000; } /* fallback bg */
  .promo-video {
    object-fit: cover;
    z-index: 1;
    /* ensure covers area */
  }
  .overlay {
    z-index: 2;
    /* gradient top dark -> slightly transparent bottom */
    background: linear-gradient(180deg, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.35) 45%, rgba(0,0,0,0.1) 100%);
    pointer-events: none;
  }

  .promo-content { z-index: 3; color: #fff; }

  .promo-title { color: #ffffff; letter-spacing: -1px; }
  .promo-desc { color: rgba(255,255,255,0.85); }

  /* responsive heights */
  @media (max-width: 991px) {
    .promo-wrap { height: 340px !important; }
    .promo-title { font-size: 40px; }
  }
  @media (max-width: 575px) {
    .promo-wrap { height: 300px !important; }
    .promo-title { font-size: 28px; }
    .promo-desc { font-size: 15px; }
  }




      /* footer location */
      footer .location {
        margin-top: 80px;
        padding-left: 6px;
      }
      .small-print {
        font-size: 12px;
        color: #111;
      }

      /* responsiveness */
      @media (max-width: 991px) {
        .hero {
          height: 360px;
        }
        .big-title {
          font-size: 40px;
        }
      }
      @media (max-width: 767px) {
        .hero {
          height: 320px;
        }
        .big-title {
          font-size: 30px;
        }
      }

      section {
        padding: 80px 0;
      }

      .section-light {
        background-color: #f4f4f4;
      }

      .section-title {
        font-size: 32px;
        font-weight: 700;
        margin-bottom: 30px;
        color: #222;
      }

      .content-img {
        border-radius: 15px;
        width: 100%;
        object-fit: cover;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
      }

      .text-block {
        display: flex;
        flex-direction: column;
        justify-content: center;
      }

      /* ====== Animation ====== */
      .reveal-section {
        opacity: 0;
        transform: translateY(60px);
        transition: all 0.8s ease;
      }

      .reveal-section.active {
        opacity: 1;
        transform: translateY(0);
      }

      /*.animate {
        opacity: 0;
        transform: translateY(50px);
        transition: all 0.8s ease;
      }

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

      /* ====== Footer ====== */
      footer {
        background-color: #676767;
        color: #fff;
        padding: 60px 0 20px;
      }

      footer h5 {
        font-weight: 700;
        margin-bottom: 20px;
      }

      footer a {
        color: #ccc;
        text-decoration: none;
        display: block;
        margin-bottom: 8px;
      }
      /*footer span {
        color: #ccc;
        font-size: 20px;
        margin: 0 10px;
        transition: color 0.3s;
      }*/

      footer a:hover {
        color: #fff;
      }
      /*footer span:hover {
        color: #fff;
      }*/

      .social-icons a {
        color: #fff;
        font-size: 20px;
        margin: 0 10px;
        transition: color 0.3s;
      }

      .social-icons a:hover {
        color: #ccc;
      }

      .footer-bottom {
        border-top: 1px solid #fff;
        margin-top: 30px;
        padding-top: 15px;
        font-size: 14px;
        text-align: center;
        color: #aaa;
      }
      .book-btn {
  background-color: #000 !important;
}
.book-btn:hover {
  background-color: #666 !important;
}

img:not(.lazy-img) {
  opacity: 1;
}

h1,h2,h3,h4,h5,h6 {
  font-family: 'Playfair Display', 'serif';
}
