<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" style="overflow: hidden;"><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<!-- ======================== JUDUL & META ======================== -->
<title>Hana189: Official Kompetisi Seru & Arena Gaming Terbaik</title>
<meta name="description" content="Hana189 membuka pintu gerbang kompetisi mingguan bagi para penantang sejati. Buktikan kehebatan strategi Anda dan sabet posisi puncak klasemen sekarang!">
<meta name="robots" content="index, follow,">
<meta name="keywords" content="Hana189, Hana189 daftar, Hana189 login, Hana189 link alternatif">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5, minimum-scale=1, user-scalable=yes">
<meta name="MobileOptimized" content="width">
<meta name="HandheldFriendly" content="true">

<!-- ======================== CANONICAL & AMPHTML ======================== -->
<link rel="canonical" href="https://thedollsfactory.com/">
<link rel="amphtml" href="https://hana189.thedollsfactory.com/">
<link rel="alternate" hreflang="id-id" href="https://hana189.thedollsfactory.com/">
<link rel="alternate" href="https://thedollsfactory.com/">
<link rel="alternate" hreflang="id" href="https://hana189.thedollsfactory.com/">
<link rel="alternate" hreflang="en" href="https://hana189.thedollsfactory.com/">    
<link rel="alternate" hreflang="x-default" href="https://hana189.thedollsfactory.com/">

<!-- ======================== FAVICON ======================== -->
<!--
  GANTI URL FAVICON DI BAWAH INI:
  - Ganti value href dengan URL favicon Anda (.ico / .png / .svg)
-->
<link rel="icon" href="https://asset01.source-static.us/assets/images/hana189/favicon/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="https://asset01.source-static.us/assets/images/hana189/favicon/favicon.ico" type="image/x-icon">
<link rel="apple-touch-icon" sizes="180x180" href="https://asset01.source-static.us/assets/images/hana189/favicon/favicon.ico">

<!-- ======================== GOOGLE FONT ======================== -->
<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800;900&amp;display=swap" rel="stylesheet">

<!-- ======================== BANNER SCRIPT ======================== -->
<!--
  GANTI BANNER SCRIPT SESUAI KEBUTUHAN (Google Ads, dll.)
  Letakkan script iklan/banner di sini:
-->
<script type="text/javascript">
  // Banner / Ad script placeholder
  // Contoh: Google AdSense, affiliate banner, dsb.
  var BANNER_CONFIG = {
    enabled:  true,
    imageUrl: 'https://thedollsfactory.com/images/Hana189.jpg',
    linkUrl:  'https://thedollsfactory.com/images/Hana189.jpg',
    altText:  'Banner'
  };
</script>

<!-- ======================== INLINE CSS ======================== -->
<style>#promoOverlay{position:fixed;inset:0;width:100%;height:100dvh;background:rgb(0 0 0 / .92);display:none;justify-content:center;align-items:center;z-index:999999;padding:20px;box-sizing:border-box}.overlay-content{width:100%;max-width:420px;background:#0f1424;border-radius:26px;padding:25px 20px;box-sizing:border-box;position:relative}.btn-primary{display:block;width:100%;padding:15px 0;margin-bottom:14px;border-radius:18px;font-weight:600;font-size:16px;text-align:center;box-sizing:border-box}.logo-wrapper{width:100%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.logo-img{width:100%;max-width:180px;height:auto;display:block;margin:auto;animation:logoFloat 3s ease-in-out infinite}.overlay-image{width:100%;border-radius:16px;margin-bottom:18px}.btn-daftar{background:linear-gradient(to right,#b5851e,#9907ff);color:#000}.btn-vip{background:linear-gradient(to right,#b5851e,#9907ff);color:#000}.btn-server{background:#b5851e;color:#fff}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 18px rgb(0 0 0 / .4)}.btn-primary:active{transform:scale(.97)}@keyframes fadeInScale{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes logoFloat{0%{transform:translateY(0)}50%{transform:translateY(-6px)}100%{transform:translateY(0)}}@media (max-width:480px){.overlay-content{padding:20px 15px}.btn-primary{font-size:14px;padding:13px}}.close-btn{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:#1c2138;color:#fff;font-size:22px;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center;z-index:10;transition:0.2s}.close-btn:hover{background:red;transform:scale(1.1)}</style>
<style>
/* ---- RESET & BASE ---- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 16px; scroll-behavior: smooth; }
body {
  font-family: 'Montserrat', sans-serif;
  color: #9907ff; background: #fff; line-height: 1.6;
}
a { color: #9907ff; text-decoration: none; transition: color .2s; }
a:hover { color: #0000ff; }
img { max-width: 100%; height: auto; display: block; }
ul { list-style: none; }
.clearfix::after { content: ""; display: table; clear: both; }

/* ---- CONTAINER ---- */
.container {
  width: 100%; max-width: 1200px;
  margin: 0 auto; padding: 0 15px;
}

/* ---- GRID SYSTEM ---- */
.row { display: flex; flex-wrap: wrap; margin: 0 -15px; }
.col { padding: 0 15px; }
.col-12 { width: 100%; }
.col-8  { width: 66.666%; }
.col-6  { width: 50%; }
.col-4  { width: 33.333%; }
.col-3  { width: 25%; }

/* ================================================================
   HEADER
   ================================================================ */
.header-container {
  background: #2a2a2a; border-bottom: 2px solid #f0f0f0;
  position: sticky; top: 0; z-index: 1000;
}
.header { padding: 12px 0; }
.header-content {
  display: flex; align-items: center;
  justify-content: space-between; flex-wrap: wrap; gap: 12px;
}

/* ---- LOGO ---- */
.logo-container { flex-shrink: 0; }
.logo-container a { display: inline-block; }
.logo-container img {
  max-height: 60px; width: auto;
}

/* ---- DESKTOP NAV ---- */
.nav-desktop { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.nav-desktop a {
  display: inline-block; padding: 8px 14px;
  font-size: 13px; font-weight: 600; text-transform: uppercase;
  color: #9907ff; border-radius: 4px; transition: background .2s, color .2s;
}
.nav-desktop a:hover { background: #9907ff; color: #fff; }

/* ---- SEARCH ---- */
.search-box {
  display: flex; align-items: center;
  border: 2px solid #e0e0e0; border-radius: 5px; overflow: hidden;
  max-width: 320px; width: 100%;
}
.search-box input {
  border: none; outline: none; padding: 9px 12px;
  font-size: 13px; flex: 1; font-family: inherit;
}
.search-box button {
  background: #9907ff; color: #fff; border: none;
  padding: 9px 16px; font-size: 13px; font-weight: 700;
  cursor: pointer; transition: background .2s;
}
.search-box button:hover { background: #0000ff; }

/* ---- MINI CART ---- */
.mini-cart a {
  display: flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 600; color: #9907ff;
}
.mini-cart .cart-icon { font-size: 22px; }
.mini-cart .cart-count {
  background: #9907ff; color: #fff;
  border-radius: 50%; width: 20px; height: 20px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 700;
}

/* ---- HAMBURGER ---- */
.hamburger {
  display: none; flex-direction: column; gap: 5px;
  background: none; border: none; cursor: pointer; padding: 8px;
}
.hamburger span {
  display: block; width: 26px; height: 3px;
  background: #9907ff; border-radius: 2px; transition: .3s;
}

/* ---- MOBILE NAV ---- */
.nav-mobile {
  display: none; flex-direction: column;
  background: #fafafa; border-top: 1px solid #e0e0e0;
  padding: 10px 0;
}
.nav-mobile.active { display: flex; }
.nav-mobile a {
  display: block; padding: 10px 20px;
  font-size: 14px; font-weight: 500; color: #9907ff;
  border-bottom: 1px solid #eee;
}
.nav-mobile a:hover { background: #f0f0f0; color: #9907ff; }

/* ================================================================
   BREADCRUMB
   ================================================================ */
.breadcrumbs {
  background: #f9f9f9; padding: 12px 0;
  border-bottom: 1px solid #eee; font-size: 13px;
}
.breadcrumbs ul { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.breadcrumbs li { color: #888; }
.breadcrumbs li a { color: #555; }
.breadcrumbs li a:hover { color: #9907ff; text-decoration: underline; }
.breadcrumbs .sep { margin: 0 2px; color: #bbb; }

/* ================================================================
   PRODUCT AREA
   ================================================================ */
.product-section { padding: 30px 0; }

/* ---- BANNER PROMO (di atas gambar) ---- */
.product-banner {
  margin-bottom: 18px; border-radius: 6px;
  overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.product-banner img { width: 100%; display: block; }
.product-banner .banner-caption {
  background: #9907ff; color: #fff; text-align: center;
  padding: 8px 12px; font-size: 13px;
}
.product-banner .banner-caption strong { font-weight: 700; }

/* ---- IMAGE BOX ---- */
.product-img-box { position: relative; }
.product-img-box .main-image {
  border: 1px solid #eee; border-radius: 6px;
  overflow: hidden; margin-bottom: 12px;
}
.product-img-box .main-image img { width: 100%; cursor: zoom-in; }
.product-img-box .thumb-list {
  display: flex; gap: 8px; flex-wrap: wrap;
}
.product-img-box .thumb-list li {
  width: 70px; height: 70px; border: 2px solid #e0e0e0;
  border-radius: 4px; overflow: hidden; cursor: pointer;
  transition: border-color .2s;
}
.product-img-box .thumb-list li:hover,
.product-img-box .thumb-list li.active { border-color: #9907ff; }
.product-img-box .thumb-list li img { width: 100%; height: 100%; object-fit: cover; }

.img-actions { margin-top: 10px; display: flex; gap: 12px; font-size: 13px; }
.img-actions a { color: #000; font-weight: 600; }
.img-actions a:hover { text-decoration: underline; }

/* ---- PRODUCT DETAIL ---- */
.product-detail { padding-left: 10px; }
.product-detail .product-name h1 {
  font-size: 24px; font-weight: 700; color: #222; margin-bottom: 6px;
}
.product-detail .product-sku {
  font-size: 13px; color: #888; margin-bottom: 4px;
}
.product-detail .availability {
  font-size: 13px; font-weight: 600; margin-bottom: 14px;
}
.product-detail .availability.in-stock { color: #2e7d32; }
.product-detail .availability.out-of-stock { color: #9907ff; }
.product-detail .short-desc {
  font-size: 15px; color: #555; margin-bottom: 18px; line-height: 1.7;
}

/* ---- HARGA ---- */
.price-box { margin-bottom: 16px; }
.price-box .special-price {
  font-size: 28px; font-weight: 800; color: #9907ff;
}
.price-box .old-price {
  font-size: 16px; color: #999; text-decoration: line-through;
  margin-left: 10px;
}
.price-box .price-label { display: block; font-size: 12px; font-weight: 500; color: #888; }
.promo-badges { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
.promo-badges a {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 600; color: #000;
  padding: 6px 12px; border: 1px solid #ddd; border-radius: 4px;
  transition: background .2s;
}
.promo-badges a:hover { background: #f5f5dc; }
.promo-badges a img { width: 18px; height: 18px; }

/* ---- QTY & ADD TO CART ---- */
.add-to-cart-box { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 16px; }
.qty-wrapper {
  display: flex; align-items: center;
  border: 2px solid #ddd; border-radius: 5px; overflow: hidden;
}
.qty-wrapper button {
  background: #f5f5f5; border: none; width: 36px; height: 40px;
  font-size: 18px; font-weight: 700; cursor: pointer;
  color: #9907ff; transition: background .2s;
}
.qty-wrapper button:hover { background: #e0e0e0; }
.qty-wrapper input {
  width: 50px; height: 40px; text-align: center;
  border: none; border-left: 1px solid #ddd; border-right: 1px solid #ddd;
  font-size: 15px; font-weight: 600; font-family: inherit; outline: none;
}
.btn-add-cart {
  background: #9907ff; color: #fff; border: none;
  padding: 11px 30px; font-size: 15px; font-weight: 700;
  border-radius: 5px; cursor: pointer; transition: background .2s;
  text-transform: uppercase; letter-spacing: .5px;
}
.btn-add-cart:hover { background: #0000ff; }

.extra-links { display: flex; gap: 16px; margin-bottom: 18px; font-size: 13px; }
.extra-links a { color: #555; font-weight: 500; }
.extra-links a:hover { color: #9907ff; text-decoration: underline; }

/* ---- LOGIN/REGISTER BOX ---- */
.login-register-box {
  padding: 14px 16px; background: #f7f7f7;
  border: 1px solid #e0e0e0; border-radius: 5px; margin-bottom: 18px;
}
.login-register-box p { font-size: 13px; color: #555; margin-bottom: 10px; }
.login-register-box .btn-group { display: flex; gap: 8px; flex-wrap: wrap; }
.btn-login, .btn-register {
  flex: 1; min-width: 110px; text-align: center;
  padding: 10px 16px; border-radius: 4px;
  font-size: 13px; font-weight: 700;
  cursor: pointer; transition: all .2s;
  display: inline-block;
}
.btn-login {
  background: #9907ff; color: #fff; border: 2px solid #9907ff;
}
.btn-login:hover { background: #0000ff; border-color: #0000ff; color: #fff; }
.btn-register {
  background: #fff; color: #9907ff; border: 2px solid #9907ff;
}
.btn-register:hover { background: #9907ff; color: #fff; }

/* ---- SOCIAL SHARE ---- */
.social-share { display: flex; gap: 10px; flex-wrap: wrap; }
.social-share a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; border-radius: 50%;
  background: #eee; color: #555; font-size: 16px;
  transition: background .2s, color .2s;
}
.social-share a:hover { background: #9907ff; color: #fff; }

/* ================================================================
   PRODUCT TABS
   ================================================================ */
.product-tabs-section { padding: 30px 0 40px; }
.tabs-nav {
  display: flex; border-bottom: 2px solid #e0e0e0; margin-bottom: 20px;
}
.tabs-nav button {
  background: none; border: none; border-bottom: 3px solid transparent;
  padding: 12px 24px; font-size: 15px; font-weight: 700;
  color: #888; cursor: pointer; transition: all .2s;
  font-family: inherit; margin-bottom: -2px;
}
.tabs-nav button:hover { color: #9907ff; }
.tabs-nav button.active {
  color: #9907ff; border-bottom-color: #9907ff;
}
.tab-content { display: none; }
.tab-content.active { display: block; }
.tab-content h2 { font-size: 20px; font-weight: 700; margin-bottom: 14px; color: #222; }
.tab-content p { font-size: 14px; line-height: 1.8; color: #444; margin-bottom: 12px; }
.tab-content ul.detail-list { padding-left: 20px; margin-top: 10px; }
.tab-content ul.detail-list li {
  list-style: disc; font-size: 14px; line-height: 1.8;
  color: #444; margin-bottom: 4px;
}

/* ================================================================
   FOOTER
   ================================================================ */
.footer-container { background: #2a2a2a; color: #ccc; padding: 40px 0 0; margin-top: 40px; }
.footer-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
.footer-col h3 {
  color: #fff; font-size: 15px; font-weight: 700;
  text-transform: uppercase; margin-bottom: 16px;
  padding-bottom: 10px; border-bottom: 2px solid #444;
}
.footer-col p { font-size: 13px; line-height: 1.7; color: #aaa; }
.footer-col ul li { margin-bottom: 8px; }
.footer-col ul li a { color: #aaa; font-size: 13px; transition: color .2s; }
.footer-col ul li a:hover { color: #fff; }
.footer-col .contact-item {
  display: flex; align-items: flex-start; gap: 8px;
  margin-bottom: 10px; font-size: 13px; color: #aaa;
}
.footer-col .contact-item .icon { font-size: 16px; flex-shrink: 0; }
.footer-col .social-links { display: flex; gap: 10px; margin-top: 14px; }
.footer-col .social-links a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border-radius: 50%;
  background: #444; color: #ccc; font-size: 14px;
  transition: background .2s, color .2s;
}
.footer-col .social-links a:hover { background: #9907ff; color: #fff; }
.footer-col .payment-icons { margin-top: 14px; }
.footer-col .payment-icons img { max-height: 30px; }

.footer-bottom {
  border-top: 1px solid #444; margin-top: 30px;
  padding: 16px 0; text-align: center;
}
.footer-bottom p { font-size: 12px; color: #888; }
.footer-bottom .footer-links { margin-bottom: 8px; }
.footer-bottom .footer-links a {
  color: #aaa; font-size: 12px; margin: 0 8px;
}
.footer-bottom .footer-links a:hover { color: #fff; }

/* ---- BACK TO TOP ---- */
.back-to-top {
  position: fixed; bottom: 30px; right: 30px;
  width: 44px; height: 44px; border-radius: 50%;
  background: #9907ff; color: #fff; border: none;
  font-size: 20px; cursor: pointer;
  display: none; align-items: center; justify-content: center;
  box-shadow: 0 2px 8px rgba(0,0,0,.2); transition: background .2s;
  z-index: 999;
}
.back-to-top:hover { background: #0000ff; }
.back-to-top.visible { display: flex; }

/* ================================================================
   POPUP / MODAL
   ================================================================ */
.modal-overlay {
  display: none; position: fixed; inset: 0;
  background: rgba(0,0,0,.6); z-index: 2000;
  align-items: center; justify-content: center;
}
.modal-overlay.active { display: flex; }
.modal-box {
  background: #fff; border-radius: 8px; padding: 30px;
  max-width: 500px; width: 90%; position: relative;
  box-shadow: 0 10px 40px rgba(0,0,0,.2);
  max-height: 90vh; overflow-y: auto;
}
.modal-box .modal-close {
  position: absolute; top: 10px; right: 14px;
  background: none; border: none; font-size: 22px;
  cursor: pointer; color: #888; transition: color .2s;
}
.modal-box .modal-close:hover { color: #9907ff; }
.modal-box h3 { font-size: 18px; font-weight: 700; margin-bottom: 14px; }
.modal-box p { font-size: 14px; color: #555; line-height: 1.7; }

/* ---- FORM INSIDE MODAL ---- */
.modal-box .form-group { margin-bottom: 14px; }
.modal-box .form-group label {
  display: block; font-size: 13px; font-weight: 600;
  margin-bottom: 4px; color: #9907ff;
}
.modal-box .form-group label em { color: #9907ff; }
.modal-box .form-group input,
.modal-box .form-group textarea {
  width: 100%; padding: 9px 12px; border: 1px solid #ddd;
  border-radius: 4px; font-size: 14px; font-family: inherit;
  outline: none; transition: border-color .2s;
}
.modal-box .form-group input:focus,
.modal-box .form-group textarea:focus { border-color: #9907ff; }
.modal-box .form-group textarea { resize: vertical; min-height: 80px; }
.modal-box .btn-submit {
  background: #9907ff; color: #fff; border: none;
  padding: 10px 24px; border-radius: 4px; font-size: 14px;
  font-weight: 700; cursor: pointer; transition: background .2s;
}
.modal-box .btn-submit:hover { background: #0000ff; }

/* ================================================================
   RESPONSIVE - TABLET
   ================================================================ */
@media (max-width: 992px) {
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .col-4 { width: 50%; }
  .col-8 { width: 50%; }
  .col-3 { width: 50%; }
  .product-detail { padding-left: 0; margin-top: 10px; }
}

/* ================================================================
   RESPONSIVE - MOBILE
   ================================================================ */
@media (max-width: 768px) {
  .nav-desktop { display: none; }
  .hamburger   { display: flex; }
  .header-content { flex-wrap: wrap; }
  .search-box  { max-width: 100%; order: 10; margin-top: 8px; }

  .row { flex-direction: column; }
  .col-12, .col-8, .col-6, .col-4, .col-3 { width: 100%; }

  .product-detail { padding-left: 0; margin-top: 20px; }
  .product-detail .product-name h1 { font-size: 20px; }
  .price-box .special-price { font-size: 24px; }

  .footer-grid { grid-template-columns: 1fr; }

  .tabs-nav { overflow-x: auto; }
  .tabs-nav button { padding: 10px 16px; font-size: 14px; white-space: nowrap; }

  .back-to-top { bottom: 16px; right: 16px; width: 40px; height: 40px; font-size: 18px; }
}

@media (max-width: 480px) {
  .product-detail .product-name h1 { font-size: 18px; }
  .price-box .special-price { font-size: 22px; }
  .btn-add-cart { padding: 10px 20px; font-size: 14px; }
  .add-to-cart-box { flex-direction: column; align-items: stretch; }
  .qty-wrapper { align-self: flex-start; }
}
</style>

<!-- ================================================================
     Hana189 RACING THEME — MERAH, HITAM & EMAS
     Disesuaikan dengan banner mobil balap Hana189
     ================================================================ -->
<style id="Hana189-racing-theme">
:root {
  --f-bg-deep: #050402;
  --f-bg: #0d0a04;
  --f-surface: #161008;
  --f-surface-2: #231d0b;
  --f-surface-3: #322a10;

  --f-red-dark: #9907ff;
  --f-red: #000000 ;
  --f-red-bright: #9907ff;
  --f-red-glow: rgba(255, 211, 65, 0.829);

  --f-gold-dark: #9907ff;
  --f-gold: #000000 ;
  --f-gold-bright: #9907ff;
  --f-gold-glow: rgba(255, 98, 111, 0.829);

  --f-white: #FFF9EC;
  --f-text: #F7EEE2;
  --f-muted: #C9B6A7;
  --f-border: rgba(228, 166, 44, 0.897);
  --f-border-soft: rgba(255, 255, 255, 0.1);
  --f-black: #020201;
}

::selection {
  background: var(--f-red);
  color: var(--f-white);
}

html {
  background: var(--f-bg-deep);
}

body {
  color: var(--f-text) !important;
  background:
    radial-gradient(circle at 92% 4%, rgba(255, 222, 38, 0.2), transparent 32%),
    radial-gradient(circle at 8% 40%, rgba(201, 152, 19, 0.12), transparent 30%),
    linear-gradient(180deg, #080703 0%, #120f05 48%, #050402 100%) !important;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background:
    linear-gradient(120deg, transparent 0 44%, rgba(243, 179, 50, .025) 45% 46%, transparent 47%),
    repeating-linear-gradient(135deg, transparent 0 28px, rgba(255, 255, 255, 0.012) 29px 30px);
}

a {
  color: var(--f-gold) !important;
}

a:hover {
  color: var(--f-gold-bright) !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--f-gold-bright) !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.72);
}

p,
li,
span {
  border-color: inherit;
}

/* HEADER */
.header-container {
  background:
    linear-gradient(180deg, rgba(3, 2, 1, 0.98), rgba(22, 16, 8, 0.97)) !important;
  border-bottom: 2px solid var(--f-gold) !important;
  box-shadow:
    0 8px 24px rgba(0, 0, 0, 0.65),
    0 0 20px var(--f-red-glow);
}

.header {
  color: var(--f-white);
}

.logo-container img {
  filter: drop-shadow(0 0 10px rgba(243, 179, 50, .30));
}

/* DESKTOP & MOBILE NAVIGATION */
.nav-desktop a {
  color: var(--f-gold-bright) !important;
  border: 1px solid transparent;
}

.nav-desktop a:hover {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-red-bright), var(--f-red-dark)) !important;
  border-color: var(--f-gold) !important;
  box-shadow: 0 0 14px var(--f-red-glow);
}

.nav-mobile {
  background: linear-gradient(180deg, var(--f-surface), var(--f-bg-deep)) !important;
  border-top: 1px solid var(--f-gold-dark) !important;
}

.nav-mobile a {
  color: var(--f-gold-bright) !important;
  border-bottom: 1px solid rgba(243, 179, 50, .16) !important;
}

.nav-mobile a:hover {
  color: var(--f-white) !important;
  background: linear-gradient(90deg, var(--f-red-dark), var(--f-surface-2)) !important;
}

/* SEARCH */
.search-box {
  background: var(--f-black) !important;
  border: 1px solid var(--f-gold) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03);
}

.search-box input {
  color: var(--f-white) !important;
  background: var(--f-surface) !important;
}

.search-box input::placeholder {
  color: var(--f-muted) !important;
}

.search-box button {
  color: var(--f-black) !important;
  background: linear-gradient(180deg, var(--f-gold-bright), var(--f-gold-dark)) !important;
}

.search-box button:hover {
  color: var(--f-white) !important;
  background: linear-gradient(180deg, var(--f-red-bright), var(--f-red-dark)) !important;
}

/* CART & HAMBURGER */
.mini-cart a {
  color: var(--f-gold-bright) !important;
}

.mini-cart .cart-count {
  color: var(--f-white) !important;
  background: linear-gradient(145deg, var(--f-red-bright), var(--f-red-dark)) !important;
  border: 1px solid var(--f-gold);
}

.hamburger span {
  background: var(--f-gold-bright) !important;
  box-shadow: 0 0 7px var(--f-gold-glow);
}

/* BREADCRUMBS */
.breadcrumbs {
  color: var(--f-muted) !important;
  background: linear-gradient(90deg, var(--f-bg-deep), var(--f-surface-2), var(--f-bg-deep)) !important;
  border-bottom: 1px solid var(--f-border) !important;
}

.breadcrumbs li,
.breadcrumbs .sep {
  color: var(--f-muted) !important;
}

.breadcrumbs li a {
  color: var(--f-white) !important;
}

.breadcrumbs li a:hover,
.breadcrumbs strong {
  color: var(--f-gold-bright) !important;
}

/* LOGIN / DAFTAR BAR */
.n-columns-2 {
  background: linear-gradient(90deg, var(--f-bg-deep), var(--f-surface-2), var(--f-bg-deep));
}

.n-columns-2 a {
  color: var(--f-white) !important;
  border: 1px solid var(--f-gold) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 5px 18px rgba(0, 0, 0, 0.55),
    0 0 12px var(--f-red-glow) !important;
}

.login {
  background: linear-gradient(135deg, #9907ff 0%, var(--f-red) 48%, var(--f-red-dark) 100%) !important;
}

.register {
  color: var(--f-black) !important;
  background: linear-gradient(135deg, var(--f-gold-bright) 0%, var(--f-gold) 48%, var(--f-gold-dark) 100%) !important;
}

.login:hover,
.register:hover {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-surface-3), var(--f-red-dark)) !important;
  border-color: var(--f-gold-bright) !important;
  box-shadow: 0 0 22px var(--f-red-glow) !important;
}

/* MAIN PRODUCT AREA */
.product-section,
.product-tabs-section {
  color: var(--f-text) !important;
  background: transparent !important;
}

.product-banner {
  background: var(--f-black) !important;
  border: 2px solid var(--f-gold) !important;
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.65),
    0 0 22px var(--f-red-glow),
    0 0 12px var(--f-gold-glow) !important;
}

.product-banner .banner-caption {
  color: var(--f-black) !important;
  background: linear-gradient(90deg, var(--f-gold-dark), var(--f-gold-bright), var(--f-gold-dark)) !important;
}

.product-img-box .main-image {
  background: var(--f-surface) !important;
  border: 1px solid var(--f-border) !important;
}

.product-img-box .thumb-list li {
  background: var(--f-surface) !important;
  border-color: rgba(243, 179, 50, .28) !important;
}

.product-img-box .thumb-list li:hover,
.product-img-box .thumb-list li.active {
  border-color: var(--f-gold-bright) !important;
  box-shadow: 0 0 12px var(--f-gold-glow);
}

.img-actions a {
  color: var(--f-gold) !important;
}

.img-actions a:hover {
  color: var(--f-white) !important;
}

/* PRODUCT DETAIL */
.product-detail {
  color: var(--f-text);
  background:
    linear-gradient(145deg, rgba(22, 18, 8, 0.92),rgba(5, 4, 2, 0.94))) !important;
  border: 1px solid var(--f-border) !important;
  border-radius: 12px;
  padding: 22px !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .04),
    0 12px 30px rgba(0, 0, 0, .45);
}

.product-detail .product-name h1 {
  color: var(--f-gold-bright) !important;
  border-bottom: 1px solid rgba(243, 179, 50, .24);
  padding-bottom: 12px;
}

.product-detail .product-sku,
.product-detail .price-label {
  color: var(--f-muted) !important;
}

.product-detail .availability.in-stock {
  color: var(--f-gold-bright) !important;
}

.product-detail .availability.out-of-stock {
  color: var(--f-red-bright) !important;
}

.product-detail .short-desc {
  color: var(--f-text) !important;
}

.price-box .special-price {
  color: var(--f-gold-bright) !important;
  text-shadow: 0 0 14px var(--f-gold-glow);
}

.price-box .old-price {
  color: #9b9280 !important;
}

.promo-badges a {
  color: var(--f-text) !important;
  background: linear-gradient(145deg, var(--f-surface-2), var(--f-bg-deep)) !important;
  border-color: rgba(243, 179, 50, .30) !important;
}

.promo-badges a:hover {
  color: var(--f-gold-bright) !important;
  background: linear-gradient(145deg, var(--f-red-dark), var(--f-surface-2)) !important;
  border-color: var(--f-gold) !important;
}

/* QUANTITY & CTA */
.qty-wrapper {
  background: var(--f-bg-deep) !important;
  border-color: var(--f-gold-dark) !important;
}

.qty-wrapper button {
  color: var(--f-gold-bright) !important;
  background: var(--f-surface-2) !important;
}

.qty-wrapper button:hover {
  color: var(--f-white) !important;
  background: var(--f-red-dark) !important;
}

.qty-wrapper input {
  color: var(--f-white) !important;
  background: var(--f-black) !important;
  border-color: rgba(243, 179, 50, .26) !important;
}

.btn-add-cart {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-red-bright), var(--f-red), var(--f-red-dark)) !important;
  border: 1px solid var(--f-gold) !important;
  box-shadow: 0 0 16px var(--f-red-glow);
}

.btn-add-cart:hover {
  color: var(--f-black) !important;
  background: linear-gradient(135deg, var(--f-gold-bright), var(--f-gold), var(--f-gold-dark)) !important;
}

.extra-links a {
  color: var(--f-muted) !important;
}

.extra-links a:hover {
  color: var(--f-gold-bright) !important;
}

/* LOGIN REGISTER BOX */
.login-register-box {
  background: linear-gradient(145deg, var(--f-surface-2), var(--f-bg-deep)) !important;
  border-color: var(--f-border) !important;
}

.login-register-box p {
  color: var(--f-text) !important;
}

.btn-login {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-red-bright), var(--f-red-dark)) !important;
  border-color: var(--f-gold) !important;
}

.btn-login:hover {
  color: var(--f-black) !important;
  background: linear-gradient(135deg, var(--f-gold-bright), var(--f-gold-dark)) !important;
  border-color: var(--f-gold-bright) !important;
}

.btn-register {
  color: var(--f-black) !important;
  background: linear-gradient(135deg, var(--f-gold-bright), var(--f-gold-dark)) !important;
  border-color: var(--f-gold) !important;
}

.btn-register:hover {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-red-bright), var(--f-red-dark)) !important;
}

/* SOCIAL BUTTONS */
.social-share a {
  color: var(--f-gold-bright) !important;
  background: var(--f-surface-2) !important;
  border: 1px solid rgba(243, 179, 50, .34);
}

.social-share a:hover {
  color: var(--f-white) !important;
  background: var(--f-red) !important;
  border-color: var(--f-gold);
}

/* PRODUCT TABS & ARTICLE */
.tabs-nav {
  border-bottom-color: rgba(243, 179, 50, .28) !important;
}

.tabs-nav button {
  color: var(--f-muted) !important;
}

.tabs-nav button:hover {
  color: var(--f-gold-bright) !important;
}

.tabs-nav button.active {
  color: var(--f-gold-bright) !important;
  border-bottom-color: var(--f-red-bright) !important;
  text-shadow: 0 0 10px var(--f-gold-glow);
}

.tab-content {
  color: var(--f-text) !important;
  background:
    linear-gradient(145deg, rgba(22, 17, 8, 0.94), rgba(5, 4, 2, 0.96)) !important;
  border: 1px solid var(--f-border) !important;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.42);
}

.tab-content h2 {
  color: var(--f-gold-bright) !important;
}

.tab-content p,
.tab-content ul.detail-list li {
  color: var(--f-text) !important;
}

.tab-content a,
.tab-content a strong,
.tab-content span,
.tab-content span strong {
  color: var(--f-gold-bright) !important;
}

/* FOOTER */
.footer-container {
  color: var(--f-muted) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(201, 159, 19, 0.17), transparent 40%),
    linear-gradient(180deg, #100d05, #020201) !important;
  border-top: 2px solid var(--f-gold-dark);
  box-shadow: 0 -8px 24px rgba(0, 0, 0, .48);
}

.footer-col h3 {
  color: var(--f-gold-bright) !important;
  border-bottom-color: rgba(243, 179, 50, .28) !important;
}

.footer-col p,
.footer-col .contact-item,
.footer-col ul li a {
  color: var(--f-muted) !important;
}

.footer-col ul li a:hover {
  color: var(--f-gold-bright) !important;
}

.footer-col .social-links a {
  color: var(--f-gold-bright) !important;
  background: var(--f-surface-2) !important;
  border: 1px solid rgba(243, 179, 50, .30);
}

.footer-col .social-links a:hover {
  color: var(--f-white) !important;
  background: var(--f-red) !important;
  border-color: var(--f-gold);
}

.footer-bottom {
  border-top-color: rgba(243, 179, 50, .22) !important;
}

.footer-bottom p,
.footer-bottom .footer-links a {
  color: var(--f-muted) !important;
}

.footer-bottom .footer-links a:hover {
  color: var(--f-gold-bright) !important;
}

/* BACK TO TOP */
.back-to-top {
  color: var(--f-black) !important;
  background: linear-gradient(145deg, var(--f-gold-bright), var(--f-gold-dark)) !important;
  border: 1px solid var(--f-white) !important;
  box-shadow:
    0 5px 18px rgba(0, 0, 0, 0.55),
    0 0 16px var(--f-gold-glow) !important;
}

.back-to-top:hover {
  color: var(--f-white) !important;
  background: linear-gradient(145deg, var(--f-red-bright), var(--f-red-dark)) !important;
}

/* MODALS */
.modal-overlay {
  background: rgba(2, 2, 1, 0.88) !important;
  backdrop-filter: blur(5px);
}

.modal-box {
  color: var(--f-text) !important;
  background:
    linear-gradient(145deg, var(--f-surface-2), var(--f-bg-deep)) !important;
  border: 1px solid var(--f-gold) !important;
  box-shadow:
    0 16px 50px rgba(0, 0, 0, 0.72),
    0 0 25px var(--f-red-glow) !important;
}

.modal-box .modal-close {
  color: var(--f-gold-bright) !important;
}

.modal-box .modal-close:hover {
  color: var(--f-red-bright) !important;
}

.modal-box h3 {
  color: var(--f-gold-bright) !important;
}

.modal-box p {
  color: var(--f-text) !important;
}

.modal-box .form-group label {
  color: var(--f-gold-bright) !important;
}

.modal-box .form-group label em {
  color: var(--f-red-bright) !important;
}

.modal-box .form-group input,
.modal-box .form-group textarea {
  color: var(--f-white) !important;
  background: var(--f-black) !important;
  border-color: rgba(243, 179, 50, .32) !important;
}

.modal-box .form-group input:focus,
.modal-box .form-group textarea:focus {
  border-color: var(--f-gold-bright) !important;
  box-shadow: 0 0 0 3px rgba(243, 179, 50, .12);
}

.modal-box .btn-submit {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-red-bright), var(--f-red-dark)) !important;
  border: 1px solid var(--f-gold) !important;
}

.modal-box .btn-submit:hover {
  color: var(--f-black) !important;
  background: linear-gradient(135deg, var(--f-gold-bright), var(--f-gold-dark)) !important;
}

/* PROMOTIONAL OVERLAY */
#promoOverlay {
  background:
    radial-gradient(circle at center, rgba(118, 92, 8, 0.27), transparent 48%),
    rgba(2, 2, 1, 0.95) !important;
  backdrop-filter: blur(6px);
}

.overlay-content {
  background:
    linear-gradient(145deg, rgba(35, 29, 11, 0.98), rgba(5, 4, 2, 0.99)) !important;
  border: 2px solid var(--f-gold) !important;
  box-shadow:
    0 18px 50px rgba(0, 0, 0, 0.8),
    0 0 30px var(--f-red-glow),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.overlay-image {
  border: 1px solid var(--f-gold) !important;
  box-shadow: 0 0 18px var(--f-red-glow);
}

.btn-daftar {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-gold-bright), var(--f-gold), var(--f-gold-dark)) !important;
  border: 1px solid var(--f-white);
}

.btn-vip {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-red-bright), var(--f-red), var(--f-red-dark)) !important;
  border: 1px solid var(--f-gold);
}

.btn-server {
  color: var(--f-white) !important;
  background: linear-gradient(135deg, var(--f-surface-3), var(--f-black)) !important;
  border: 1px solid var(--f-gold) !important;
}

.btn-primary:hover {
  color: var(--f-white) !important;
  box-shadow:
    0 8px 22px rgba(0, 0, 0, 0.58),
    0 0 18px var(--f-gold-glow) !important;
}

.close-btn {
  color: var(--f-white) !important;
  background: linear-gradient(145deg, var(--f-red-bright), var(--f-red-dark)) !important;
  border: 1px solid var(--f-gold) !important;
  box-shadow: 0 0 12px var(--f-red-glow);
}

.close-btn:hover {
  color: var(--f-black) !important;
  background: linear-gradient(145deg, var(--f-gold-bright), var(--f-gold-dark)) !important;
}

/* NOSCRIPT NOTICE */
noscript div {
  color: var(--f-white) !important;
  background: var(--f-red-dark) !important;
  border-bottom: 1px solid var(--f-gold) !important;
}

/* ACCESSIBILITY */
button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--f-gold-bright) !important;
  outline-offset: 3px;
}

/* RESPONSIVE POLISH */
@media (max-width: 768px) {
  .product-detail,
  .tab-content {
    border-color: rgba(243, 179, 50, .34) !important;
  }

  .n-columns-2 {
    background: var(--f-bg-deep);
  }
}
</style>


<!-- ======================== FAQ & REVIEW STYLE ======================== -->
<style id="Hana189-faq-review-style">
.Hana189-extra-section {
  padding: 20px 0 45px;
  background: transparent;
}
.Hana189-extra-title {
  margin-bottom: 22px;
  text-align: center;
  font-size: clamp(22px, 4vw, 32px);
  color: var(--f-gold-bright, #FFD86A) !important;
}
.Hana189-extra-subtitle {
  max-width: 760px;
  margin: -10px auto 26px;
  text-align: center;
  color: var(--f-muted, #C9B6A7) !important;
  font-size: 14px;
}
.Hana189-faq-grid,
.Hana189-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.Hana189-faq-item,
.Hana189-review-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--f-border, rgba(243,179,50,.48));
  border-radius: 14px;
  background:
    linear-gradient(145deg, rgba(35, 27, 11, 0.96), rgba(5, 4, 2, 0.98));
  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
.Hana189-faq-item::before,
.Hana189-review-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(
    180deg,
    var(--f-gold-bright, #FFD86A),
    var(--f-red-bright, #9907ff)
  );
}
.Hana189-faq-item {
  padding: 0;
}
.Hana189-faq-item summary {
  position: relative;
  padding: 19px 52px 19px 22px;
  cursor: pointer;
  list-style: none;
  font-weight: 750;
  line-height: 1.45;
  color: var(--f-gold-bright, #FFD86A);
}
.Hana189-faq-item summary::-webkit-details-marker {
  display: none;
}
.Hana189-faq-item summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid var(--f-gold, #F3B332);
  border-radius: 50%;
  color: var(--f-gold-bright, #FFD86A);
  transform: translateY(-50%);
  transition: transform .2s ease, background .2s ease;
}
.Hana189-faq-item[open] summary::after {
  content: "−";
  color: #fff;
  background: var(--f-red, #bdbbbb);
  transform: translateY(-50%) rotate(180deg);
}
.Hana189-faq-answer {
  padding: 0 22px 20px;
  color: var(--f-text, #F7EEE2) !important;
  font-size: 14px;
  line-height: 1.8;
}
.Hana189-review-card {
  padding: 22px;
}
.Hana189-stars {
  margin-bottom: 10px;
  letter-spacing: 3px;
  color: var(--f-gold-bright, #FFD86A);
  text-shadow: 0 0 10px rgba(243,179,50,.35);
}
.Hana189-review-text {
  margin-bottom: 18px;
  color: var(--f-text, #F7EEE2) !important;
  font-size: 14px;
  line-height: 1.8;
}
.Hana189-review-author {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid rgba(243,179,50,.18);
}
.Hana189-review-name {
  color: var(--f-gold-bright, #FFD86A) !important;
  font-weight: 750;
}
.Hana189-review-meta {
  color: var(--f-muted, #C9B6A7) !important;
  font-size: 12px;
}
@media (max-width: 768px) {
  .Hana189-faq-grid,
  .Hana189-review-grid {
    grid-template-columns: 1fr;
  }
  .Hana189-faq-item summary {
    padding-right: 48px;
  }
}
</style>

</head>

<!-- ================================================================
     BODY
     ================================================================ -->
<body style="overflow: hidden;">

<!-- ======================== NOSCRIPT ======================== -->
<noscript>
  <div style="background:#fff3cd;color:#856404;padding:12px 20px;text-align:center;font-size:14px;">
    <strong>JavaScript seems to be disabled in your browser.</strong><br/>
    You must have JavaScript enabled to utilize the full functionality of this website.
  </div>
</noscript>

<!-- ================================================================
     HEADER
     ================================================================ -->
<header class="header-container">
  <div class="container">
    <div class="header">
      <div class="header-content">

        <!-- ==== LOGO ==== -->
        <!--
          GANTI URL LOGO DI BAWAH INI:
          - Ubah src="" menjadi URL logo Anda
          - Ubah alt="" sesuai nama toko/brand
          - Ubah href="/" ke halaman utama Anda
        -->
        <div class="logo-container">
          <a href="https://thedollsfactory.com/" title="Hana189" class="logo">
            <img id="site-logo" src="https://asset01.source-static.us/assets/rajaplay/logo-hana189.png" alt="LOGO Hana189">
          </a>
        </div>

        <!-- ==== DESKTOP NAVIGATION ==== -->
        <nav class="nav-desktop" id="navDesktop">
          <a href="https://thedollsfactory.com/">Hana189</a>
          <a href="https://thedollsfactory.com/">Hana189 LOGIN</a>
          <a href="https://thedollsfactory.com/">Hana189 DAFTAR</a>
          <a href="https://thedollsfactory.com/">SLOT</a>
          <a href="https://thedollsfactory.com/">SLOT GACOR</a>
          <a href="https://thedollsfactory.com/">SLOT MAXWIN</a>
          <a href="https://thedollsfactory.com/">PROMOSI</a>
          <a href="https://thedollsfactory.com/">LINK ALTERNATIF</a>
        </nav>

        <!-- ==== SEARCH ==== -->
        <div class="search-box">
          <input type="text" id="searchInput" placeholder="Search entire store here..." maxlength="128" aria-label="Search">
          <button type="button" id="searchBtn" aria-label="Search">Search</button>
        </div>

        <!-- ==== MINI CART ==== -->
        <div class="mini-cart">
          <a href="https://thedollsfactory.com/" title="View Cart">
            <span class="cart-icon">🛒</span>
            <span class="cart-count" id="cartCount">0</span>
          </a>
        </div>

        <!-- ==== HAMBURGER (Mobile) ==== -->
        <button class="hamburger" id="hamburgerBtn" aria-label="Open Menu">
          <span></span><span></span><span></span>
        </button>

      </div><!-- /header-content -->
    </div><!-- /header -->

    <!-- ==== MOBILE NAVIGATION ==== -->
    <nav class="nav-mobile" id="navMobile">
      <a href="https://thedollsfactory.com/">Hana189</a>
      <a href="https://thedollsfactory.com/">Hana189 LOGIN</a>
      <a href="https://thedollsfactory.com/">Hana189 DAFTAR</a>
      <a href="https://thedollsfactory.com/">SLOT</a>
      <a href="https://thedollsfactory.com/">SLOT GACOR</a>
      <a href="https://thedollsfactory.com/">SLOT MAXWIN</a>
      <a href="https://thedollsfactory.com/">PROMOSI</a>
      <a href="https://thedollsfactory.com/">LINK ALTERNATIF</a>
    </nav>

  </div><!-- /container -->
</header>

<!-- ================================================================
     BREADCRUMB
     ================================================================ -->
<div class="breadcrumbs">
  <div class="container">
    <ul>
      <li><a href="https://thedollsfactory.com/" title="Go to Home Page">HOME</a> <span class="sep">/</span></li>
      <li><a href="https://thedollsfactory.com/">GAME ONLINE</a> <span class="sep">/</span></li>
      <li><a href="https://thedollsfactory.com/">SLOT GACOR</a> <span class="sep">/</span></li>
      <li><strong>Hana189</strong></li>
    </ul>
  </div>
</div>
<style>
  .n-columns-2 {
    width: 100vw;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    font-weight: 700;
    font-family: 'Poppins', sans-serif;
  }

  .n-columns-2 a {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    border-radius: 10px;
    padding: 14px 10px;
    margin: 5px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
  }

  /* --- LOGIN BUTTON --- */
  .login {
    color: #fff !important;
    background: linear-gradient(135deg, #9907ff 0%, #b5851e 50%, #9907ff 100%);
    border: 2px solid #9907ff;
  }

  .login:hover {
    transform: scale(1.05);
    background: linear-gradient(135deg, #00001A 0%, #00001A 50%, #00001A 100%);
    box-shadow: 0 0 20px #9907ff;
  }

  /* --- REGISTER BUTTON --- */
  .register {
    color: #fff !important;
    background: linear-gradient(135deg, #9907ff 0%, #b5851e 50%, #9907ff 100%);
    border: 2px solid #9907ff;
  }

  .register:hover {
    transform: scale(1.05);
    background: linear-gradient(135deg, #00001A 0%, #00001A 50%, #00001A 100%);
    box-shadow: 0 0 20px #9907ff;
  }
</style>

<div class="n-columns-2" style="font-size: 20px;">
  <a href="https://hana189.thedollsfactory.com/" target="_blank" rel="nofollow noreferrer" class="login">LOGIN</a>
  <a href="https://hana189.thedollsfactory.com/" target="_blank" rel="nofollow noreferrer" class="register">DAFTAR</a>
</div>
<!-- ================================================================
     PRODUCT SECTION
     ================================================================ -->
<section class="product-section">
  <div class="container">
    <form id="product_addtocart_form" method="post" action="/">
      <div class="row">

        <!-- ======== KOLOM KIRI: BANNER + GAMBAR ======== -->
        <div class="col col-4">

          <!-- Banner Promo -->
          <div class="product-banner" id="promoBanner">
            <a href="https://thedollsfactory.com/" title="Promo Banner">
              <!--
                GANTI URL BANNER DI BAWAH INI:
              -->
              <img id="bannerImage" src="https://thedollsfactory.com/images/Hana189.jpg" alt="Promo Banner"  style="display: block; width: 100%; height: auto;"
      onerror="this.style.display='none';">
            </a>
            
          </div>

          <!-- Gambar Produk Utama -->
          <div class="product-img-box">
            <div class="main-image">
            </div>

            <!-- Thumbnail -->
            <ul class="thumb-list" id="thumbList">
              <li class="active" onclick="changeImage(this, 'https://thedollsfactory.com/images/Hana189.jpg')">
                <img src="https://thedollsfactory.com/images/Hana189.jpg" alt="Hana189">
              </li>
              <li onclick="changeImage(this, 'https://thedollsfactory.com/images/Hana189.jpg')">
                <img src="https://thedollsfactory.com/images/Hana189.jpg" alt="Hana189">
              </li>
              <li onclick="changeImage(this, 'https://thedollsfactory.com/images/Hana189.jpg')">
                <img src="https://thedollsfactory.com/images/Hana189.jpg" alt="Hana189">
              </li>
              <li onclick="changeImage(this, 'https://thedollsfactory.com/images/Hana189.jpg')">
                <img src="https://thedollsfactory.com/images/Hana189.jpg" alt="Hana189">
              </li>
            </ul>

            <!-- Aksi gambar -->
            <div class="img-actions">
              <a href="https://thedollsfactory.com/" id="askQuestionLink">❓ Ask A Question</a>
              <a href="https://thedollsfactory.com/" id="viewLargeLink">🔍 View Large</a>
            </div>
          </div>

        </div><!-- /col kiri -->

        <!-- ======== KOLOM KANAN: DETAIL PRODUK ======== -->
        <div class="col col-8">
          <div class="product-detail">

            <!-- Nama Produk -->
            <div class="product-name">
              <h1>Hana189: Official Kompetisi Seru & Arena Gaming Terbaik</h1>
            </div>
            <p class="availability in-stock">✓ In Stock</p>

            <!-- Deskripsi Singkat -->
            <p class="short-desc">
           Hana189 membuka pintu gerbang kompetisi mingguan bagi para penantang sejati. Buktikan kehebatan strategi Anda dan sabet posisi puncak klasemen sekarang!
            </p>

            <!-- Harga -->
            <div class="price-box">
              <span class="price-label">Special Price</span>
              <span class="special-price" id="product-price">Rp. 10.000 </span>
              <span class="old-price" id="old-price">Rp. 50.000</span>
            </div>

            <!-- Badge Promo -->
            <div class="promo-badges">
              <a href="https://thedollsfactory.com/" id="freeDeliveryLink">🚚 Free In Home Delivery</a>
              <a href="https://thedollsfactory.com/" id="priceMatchLink">✔ 100% Price Match Guarantee</a>
            </div>

            <!-- Qty & Add to Cart -->
            <div class="add-to-cart-box">
              <div class="qty-wrapper">
                <button type="button" id="qtyMinus" aria-label="Decrease quantity">−</button>
                <input type="text" name="qty" id="qty" value="1" maxlength="4" aria-label="Quantity">
                <button type="button" id="qtyPlus" aria-label="Increase quantity">+</button>
              </div>
              <button type="button" class="btn-add-cart" id="addToCartBtn">🛒 Add to Cart</button>
            </div>

            <!-- Extra Links -->
            <div class="extra-links">
              <a href="https://thedollsfactory.com/">❤ Add to Wishlist</a>
              <a href="https://thedollsfactory.com/">⚖ Compare</a>
              <a href="https://thedollsfactory.com/">✉ Email to a Friend</a>
            </div>

            <!-- Login / Daftar -->
            <div class="login-register-box">
              <div class="btn-group">
                <a href="https://hna189.com/" class="btn-login">LOGIN</a>
                <a href="https://hna189.com/" class="btn-login">REGISTER</a>
              </div>
            </div>

            <!-- Social Share -->
            <div class="social-share">
              <a href="https://thedollsfactory.com/" title="Share on Facebook" aria-label="Facebook">f</a>
              <a href="https://thedollsfactory.com/" title="Share on Twitter" aria-label="Twitter">t</a>
              <a href="https://thedollsfactory.com/" title="Share on Pinterest" aria-label="Pinterest">p</a>
              <a href="https://thedollsfactory.com/" title="Share via Email" aria-label="Email">✉</a>
            </div>

          </div><!-- /product-detail -->
        </div><!-- /col kanan -->

      </div><!-- /row -->

      <!-- Hidden Fields -->
      <input type="hidden" name="product" value="2129">
      <input type="hidden" name="related_product" value="">
    </form>
  </div><!-- /container -->
</section>



<!-- ================================================================
     PRODUCT TABS (Description)
================================================================ -->

<section class="product-tabs-section">

  <div class="container">

    <div class="tabs-nav" id="tabsNav">
      <button class="active" data-tab="tab-description">Description</button>
    </div>

    <!-- TAB: Description -->
    <div class="tab-content active" id="tab-description">

      <h2>TENTANG HANA189</h2>

      <p style="text-align: left;">
        Selamat datang di
        <span style="color: #fffffe;">
          <strong>
            <a style="color: #070707;" href="https://thedollsfactory.com/">HANA189</a>
          </strong>
        </span>,
        arena hiburan digital yang menghadirkan konsep kompetisi mingguan bagi pengguna yang menyukai tantangan, strategi, dan pencapaian. HANA189 menawarkan pengalaman interaktif dengan struktur aktivitas yang terarah, navigasi praktis, serta sistem progres yang membuat setiap tantangan terasa lebih menarik.
      </p>

      <p style="text-align: left;">
        <strong>HANA189</strong> membawa suasana kompetitif melalui rangkaian misi dan aktivitas yang dapat diselesaikan secara bertahap. Pengguna dapat mengembangkan strategi, menguji kemampuan, dan mengikuti perkembangan pencapaian mereka selama periode kompetisi berlangsung.
      </p>

      <p style="text-align: left;">
        Dengan konsep klasemen mingguan, pengguna memiliki tujuan yang lebih jelas dalam setiap aktivitas. Selesaikan tantangan, tingkatkan performa, dan raih posisi terbaik melalui strategi yang terukur serta konsistensi dalam menjalankan setiap misi.
      </p>


      <h2>Kompetisi Mingguan dengan Tantangan Dinamis</h2>

      <p>
        HANA189 menghadirkan konsep kompetisi yang diperbarui secara berkala agar pengalaman terasa lebih dinamis. Setiap periode dapat menghadirkan target baru yang mendorong pengguna untuk mencoba pendekatan dan strategi yang berbeda.
      </p>

      <p>
        Struktur kompetisi dirancang agar tetap mudah dipahami. Pengguna dapat melihat aktivitas yang tersedia, menyelesaikan misi, serta mengikuti progres mereka sepanjang periode kompetisi.
      </p>


      <h2>Strategi Menjadi Bagian Penting dari Setiap Misi</h2>

      <p>
        Salah satu daya tarik HANA189 adalah pendekatan berbasis strategi. Pengguna tidak hanya menyelesaikan aktivitas, tetapi juga dapat menentukan cara terbaik untuk mencapai target yang telah ditetapkan.
      </p>

      <p>
        Setiap misi dapat memberikan tantangan berbeda sehingga pengguna perlu menyesuaikan pendekatan mereka. Konsep ini membuat aktivitas terasa lebih variatif dan memberikan pengalaman kompetitif yang lebih terarah.
      </p>


      <h2>Pantau Perkembangan melalui Sistem Klasemen</h2>

      <p>
        Sistem klasemen menjadi salah satu elemen utama dalam konsep HANA189. Pengguna dapat melihat perkembangan posisi dan menggunakan informasi tersebut untuk mengevaluasi pencapaian mereka selama periode kompetisi berlangsung.
      </p>

      <p>
        Kehadiran klasemen juga memberikan motivasi tambahan untuk terus menyelesaikan tantangan dan meningkatkan pencapaian dari satu tahap ke tahap berikutnya.
      </p>


      <h2>Akses Nyaman di Berbagai Perangkat</h2>

      <p>
        HANA189 dirancang responsif agar dapat digunakan melalui smartphone, tablet, laptop, maupun komputer desktop. Tata letak akan menyesuaikan ukuran layar sehingga informasi, menu, dan aktivitas tetap mudah dijelajahi.
      </p>

      <p>
        Pengguna dapat mengakses
        <strong><a href="https://thedollsfactory.com/">HANA189</a></strong>
        melalui browser dan mulai menjelajahi berbagai aktivitas kompetitif yang tersedia tanpa navigasi yang rumit.
      </p>


      <h2>Navigasi Praktis untuk Pengalaman Lebih Terarah</h2>

      <p>
        Struktur halaman HANA189 dibuat agar pengguna dapat menemukan kategori, misi, informasi kompetisi, dan bagian penting lainnya dengan cepat.
      </p>

      <p>
        Navigasi yang sederhana membantu pengguna tetap fokus pada aktivitas dan strategi tanpa harus menghabiskan waktu mencari menu yang dibutuhkan.
      </p>


      <h2>Bangun Pencapaian dari Minggu ke Minggu</h2>

      <p>
        Setiap periode kompetisi memberikan kesempatan bagi pengguna untuk menciptakan target baru. Pengguna dapat menjadikan hasil sebelumnya sebagai evaluasi untuk mengembangkan strategi yang lebih efektif pada kompetisi berikutnya.
      </p>

      <p>
        Dengan kombinasi misi, sistem progres, klasemen, dan eksplorasi digital, HANA189 menghadirkan pengalaman kompetitif yang terasa aktif sekaligus mudah diikuti.
      </p>

    </div>

  </div>
</section>


<!-- ================================================================
     FAQ HANA189
================================================================ -->

<section class="Hana189-extra-section" id="faq-hana189">

  <div class="container">

    <h2 class="Hana189-extra-title">
      Pertanyaan Umum tentang HANA189
    </h2>

    <p class="Hana189-extra-subtitle">
      Temukan informasi mengenai kompetisi mingguan, sistem klasemen, strategi, akses perangkat, serta pengalaman menggunakan HANA189.
    </p>

    <div class="Hana189-faq-grid">

      <details class="Hana189-faq-item">
        <summary>Apa itu HANA189?</summary>
        <div class="Hana189-faq-answer">
          HANA189 adalah platform hiburan digital bertema kompetisi yang menghadirkan berbagai misi, tantangan, sistem progres, dan klasemen mingguan.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apa konsep utama HANA189?</summary>
        <div class="Hana189-faq-answer">
          HANA189 mengusung konsep kompetisi mingguan yang menggabungkan strategi, penyelesaian misi, pencapaian, dan pemantauan perkembangan melalui sistem klasemen.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apakah HANA189 memiliki kompetisi mingguan?</summary>
        <div class="Hana189-faq-answer">
          Ya. Konsep HANA189 dirancang dengan periode kompetisi mingguan yang memberikan pengguna target serta tantangan baru untuk diselesaikan.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apa fungsi klasemen di HANA189?</summary>
        <div class="Hana189-faq-answer">
          Klasemen digunakan untuk membantu pengguna melihat perkembangan pencapaian selama periode kompetisi dan membandingkan progres berdasarkan aktivitas yang telah diselesaikan.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apakah strategi penting dalam aktivitas HANA189?</summary>
        <div class="Hana189-faq-answer">
          Ya. Setiap tantangan dapat membutuhkan pendekatan berbeda sehingga pengguna dapat menyesuaikan strategi berdasarkan tujuan dan jenis aktivitas yang sedang dijalankan.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apakah HANA189 dapat digunakan melalui smartphone?</summary>
        <div class="Hana189-faq-answer">
          Ya. HANA189 menggunakan tampilan responsif agar berbagai menu dan aktivitas tetap nyaman digunakan melalui smartphone maupun tablet.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apakah HANA189 bisa diakses melalui desktop?</summary>
        <div class="Hana189-faq-answer">
          Ya. Pengguna dapat mengakses HANA189 melalui laptop atau komputer desktop dengan tampilan yang menyesuaikan ukuran layar.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apakah HANA189 cocok untuk pengguna baru?</summary>
        <div class="Hana189-faq-answer">
          Ya. Struktur navigasi dibuat sederhana sehingga pengguna baru dapat memahami misi, aktivitas, dan sistem kompetisi secara bertahap.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Bagaimana cara meningkatkan pencapaian di HANA189?</summary>
        <div class="Hana189-faq-answer">
          Pengguna dapat menyelesaikan misi secara konsisten, mengevaluasi progres, dan menyesuaikan strategi berdasarkan tantangan yang tersedia pada setiap periode.
        </div>
      </details>


      <details class="Hana189-faq-item">
        <summary>Apa yang membuat pengalaman HANA189 menarik?</summary>
        <div class="Hana189-faq-answer">
          Kombinasi kompetisi mingguan, sistem klasemen, misi beragam, strategi, serta tampilan responsif menciptakan pengalaman digital yang lebih aktif dan terarah.
        </div>
      </details>

    </div>

  </div>

</section>


<!-- ================================================================
     REVIEW HANA189
================================================================ -->

<section class="Hana189-extra-section" id="review-hana189">

  <div class="container">

    <h2 class="Hana189-extra-title">
      Review Pengguna HANA189
    </h2>

    <p class="Hana189-extra-subtitle">
      Berikut beberapa contoh kesan pengguna mengenai kompetisi, klasemen, strategi, navigasi, dan pengalaman menjelajahi HANA189.
    </p>

    <div class="Hana189-review-grid">


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Konsep kompetisi mingguannya menarik karena selalu ada target baru. Saya jadi lebih semangat menyelesaikan setiap misi yang tersedia.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Rendy – Jakarta</span>
          <span class="Hana189-review-meta">Pengguna Smartphone</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Saya suka sistem klasemennya karena bisa melihat progres dari waktu ke waktu. Jadi lebih mudah menentukan target untuk minggu berikutnya.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Fikri – Bandung</span>
          <span class="Hana189-review-meta">Pengguna Desktop</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Tantangannya tidak monoton. Ada beberapa misi yang membuat saya harus mencoba strategi berbeda agar bisa menyelesaikan target dengan baik.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Dimas – Surabaya</span>
          <span class="Hana189-review-meta">Pengguna Smartphone</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Tampilan klasemennya mudah dipahami dan navigasinya juga cukup praktis. Saya bisa langsung menemukan misi yang ingin dikerjakan.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Bagus – Semarang</span>
          <span class="Hana189-review-meta">Pengguna Desktop</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Saya suka karena setiap minggu terasa seperti memulai tantangan baru. Ada alasan untuk kembali dan mencoba meningkatkan pencapaian sebelumnya.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Aldi – Medan</span>
          <span class="Hana189-review-meta">Pengguna Smartphone</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Sistem progresnya membuat pengalaman lebih terarah. Saya bisa melihat perkembangan dan menentukan misi mana yang ingin diselesaikan berikutnya.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Kevin – Makassar</span>
          <span class="Hana189-review-meta">Pengguna Desktop</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Penggunaan lewat smartphone nyaman. Informasi kompetisi, daftar misi, dan bagian penting lainnya tetap mudah ditemukan dari layar kecil.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Rizky – Palembang</span>
          <span class="Hana189-review-meta">Pengguna Smartphone</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Menurut saya konsep strategi membuat aktivitasnya lebih menarik. Tidak hanya menyelesaikan misi, tetapi juga memikirkan cara terbaik untuk mencapai target.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Andre – Batam</span>
          <span class="Hana189-review-meta">Pengguna Desktop</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          HANA189 punya struktur kompetisi yang cukup mudah dipahami. Dari misi sampai klasemen semuanya tersusun rapi dan tidak membingungkan.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Yoga – Yogyakarta</span>
          <span class="Hana189-review-meta">Pengguna Smartphone</span>
        </div>

      </article>


      <article class="Hana189-review-card">

        <div class="Hana189-stars" aria-label="Rating 5 dari 5">★★★★★</div>

        <p class="Hana189-review-text">
          Saya paling suka tantangan mingguannya. Setiap periode memberikan suasana kompetisi baru dan membuat pengalaman terasa lebih dinamis.
        </p>

        <div class="Hana189-review-author">
          <span class="Hana189-review-name">Farhan – Bali</span>
          <span class="Hana189-review-meta">Pengguna Smartphone</span>
        </div>

      </article>

    </div>

  </div>

</section>


<!-- ================================================================
     FOOTER
     ================================================================ -->
<footer class="footer-container">
  <div class="container">
    <div class="footer-grid">

      <!-- Footer Col 1: About Us -->
      <div class="footer-col">
        <h3>About Us</h3>
        <p>Hana189: Official Kompetisi Seru & Arena Gaming Terbaik</p>
        <div class="social-links">
          <a href="https://thedollsfactory.com/" title="Facebook" aria-label="Facebook">f</a>
          <a href="https://thedollsfactory.com/" title="Twitter" aria-label="Twitter">t</a>
          <a href="https://thedollsfactory.com/" title="Instagram" aria-label="Instagram">i</a>
          <a href="https://thedollsfactory.com/" title="Google" aria-label="Google">g</a>
        </div>
      </div>

      <!-- Footer Col 2: My Account -->
      <div class="footer-col">
        <h3>My Account</h3>
        <ul>
          <li><a href="https://thedollsfactory.com/">My Account</a></li>
          <li><a href="https://thedollsfactory.com/">Login</a></li>
          <li><a href="https://thedollsfactory.com/">My Cart</a></li>
          <li><a href="https://thedollsfactory.com/">Wishlist</a></li>
          <li><a href="https://thedollsfactory.com/">Checkout</a></li>
        </ul>
      </div>

      <!-- Footer Col 3: Contact Links -->
      <div class="footer-col">
        <h3>Information</h3>
        <ul>
          <li><a href="https://thedollsfactory.com/">About Us</a></li>
          <li><a href="https://thedollsfactory.com/">Contact Us</a></li>
          <li><a href="https://thedollsfactory.com/">Privacy Policy</a></li>
          <li><a href="https://thedollsfactory.com/">Terms &amp; Conditions</a></li>
          <li><a href="https://thedollsfactory.com/">Site Map</a></li>
        </ul>
      </div>

      <!-- Footer Col 4: Contact Info -->
      <div class="footer-col">
        <h3>Contact Information</h3>
        <div class="contact-item">
          <span class="icon">📍</span>
          <span>Indonesia</span>
        </div>
        <div class="contact-item">
          <span class="icon">📞</span>
          <span style="font-size:16px; font-weight:700;">087765442876</span>
        </div>
       <div class="contact-item">
          <span class="icon">✉</span>
         
        </div>
      </div>

    </div><!-- /footer-grid -->

    <!-- Footer Bottom -->
    <div class="footer-bottom">
      <p>© Hana189 | Sharvs </p>
    </div>

  </div><!-- /container -->
</footer>

<!-- ======================== BACK TO TOP ======================== -->
<button class="back-to-top" id="backToTop" aria-label="Back to top">▲</button>

<!-- ================================================================
     MODALS / POPUPS
     ================================================================ -->

<!-- Modal: Ask A Question -->
<div class="modal-overlay" id="modalAskQuestion">
  <div class="modal-box">
    <button class="modal-close" onclick="closeModal('modalAskQuestion')">×</button>
    <h3>Ask a Question</h3>
    <p style="margin-bottom:16px; color:#888; font-size:13px;">
      About: <strong>Serta Sabrina Pewter Convertible Sleeper Sofa</strong>
    </p>
    <form id="askQuestionForm" onsubmit="return handleAskQuestion(event)">
      <div class="form-group">
        <label><em>*</em> Your Name</label>
        <input type="text" name="name" required="">
      </div>
      <div class="form-group">
        <label><em>*</em> Your Email</label>
        <input type="email" name="email" required="">
      </div>
      <div class="form-group">
        <label>Telephone</label>
        <input type="tel" name="telephone">
      </div>
      <div class="form-group">
        <label><em>*</em> Your Message</label>
        <textarea name="message" required=""></textarea>
      </div>
      <button type="submit" class="btn-submit">Submit</button>
    </form>
  </div>
</div>

<!-- Modal: Free Delivery -->
<div class="modal-overlay" id="modalFreeDelivery">
  <div class="modal-box">
    <button class="modal-close" onclick="closeModal('modalFreeDelivery')">×</button>
    <h3>🚚 Free Local Delivery</h3>
    <p>Free Local Delivery within Sacramento and surrounding areas (approximately 25 miles radius).</p>
  </div>
</div>

<!-- Modal: Price Match -->
<div class="modal-overlay" id="modalPriceMatch">
  <div class="modal-box">
    <button class="modal-close" onclick="closeModal('modalPriceMatch')">×</button>
    <h3>✔ 100% Price Match Guarantee</h3>
    <p>We guarantee to match the price of any identical item from an authorized retailer. Contact us for details.</p>
  </div>
</div>


<!-- ======================== FAQPAGE SCHEMA ======================== -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Apa itu Hana189?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Hana189 adalah platform game online rekomendasi dengan fitur canggih yang menyediakan ribuan permainan seru dari berbagai genre dalam satu akun, dilengkapi sistem keamanan terjamin."
      }
    },
    {
      "@type": "Question",
      "name": "Apakah Hana189 aman digunakan?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Sangat aman. Hana189 menggunakan sistem enkripsi SSL dan perlindungan data berlapis, sehingga semua informasi pribadi dan transaksi Anda terjaga kerahasiaannya."
      }
    },
    {
      "@type": "Question",
      "name": "Permainan apa saja yang tersedia di Hana189?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tersedia berbagai jenis permainan seperti slot online, kasino langsung (live casino), poker, arcade, hingga permainan sportbook. Semua disediakan oleh provider ternama."
      }
    },
    {
      "@type": "Question",
      "name": "Bagaimana cara mendaftar akun di Hana189?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Klik tombol Daftar di halaman utama, isi formulir pendaftaran dengan data lengkap, lalu verifikasi akun melalui email atau nomor ponsel. Prosesnya cepat dan gratis."
      }
    },
    {
      "@type": "Question",
      "name": "Apakah Hana189 bisa diakses melalui ponsel?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Ya. Hana189 mendukung akses melalui browser ponsel (Android/iOS) tanpa perlu unduhan aplikasi tambahan. Tampilan responsif dan tetap nyaman digunakan."
      }
    },
    {
      "@type": "Question",
      "name": "Bagaimana sistem transaksi deposit dan withdraw di Hana189?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Hana189 menyediakan berbagai metode pembayaran mulai dari transfer bank, e-wallet, hingga pulsa. Proses deposit otomatis dan withdraw diproses cepat dalam waktu kurang dari 5 menit."
      }
    },
    {
      "@type": "Question",
      "name": "Apakah ada bonus untuk anggota baru?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tentu! Setiap pendaftar baru berhak mendapatkan bonus selamat datang (welcome bonus) hingga 100% dari deposit pertama, serta berbagai promo menarik lainnya."
      }
    },
    {
      "@type": "Question",
      "name": "Bagaimana jika saya mengalami kendala saat bermain?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tim layanan pelanggan Hana189 siap membantu Anda 24/7 melalui live chat, WhatsApp, atau email. Respons cepat dan solusi tepat untuk setiap kendala."
      }
    },
    {
      "@type": "Question",
      "name": "Apakah ada batasan minimal deposit di Hana189?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Minimal deposit sangat terjangkau, mulai dari Rp10.000 saja, sehingga cocok untuk semua kalangan pemain dari berbagai latar belakang."
      }
    },
    {
      "@type": "Question",
      "name": "Apakah Hana189 memiliki lisensi resmi?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Ya, Hana189 beroperasi di bawah lisensi resmi internasional dan diawasi oleh otoritas perjudian terpercaya, sehingga semua permainan berjalan fair, transparan, dan terjamin keabsahannya."
      }
    }
  ]
}
</script>

<!-- ================================================================
     SCHEMA.ORG STRUCTURED DATA
     ================================================================ -->
<script data-cfasync="false" src="js/email-decode.min.js"></script><script data-cfasync="false" src="js/email-decode.min.js"></script><script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Hana189: Official Kompetisi Seru & Arena Gaming Terbaik",
  "image": "https://thedollsfactory.com/images/Hana189.jpg",
  "sku": "HIBURAN ONLINE",
  "description": "Hana189 membuka pintu gerbang kompetisi mingguan bagi para penantang sejati. Buktikan kehebatan strategi Anda dan sabet posisi puncak klasemen sekarang!",
  "offers": {
    "@type": "Offer",
    "priceCurrency": "IDR",
    "price": "20000",
    "availability": "https://schema.org/InStock",
    "url": "https://thedollsfactory.com/"
  }
}
</script>

<!-- ================================================================
     JAVASCRIPT
     ================================================================ -->
<script>
(function () {
  'use strict';

  /* ========================
     HAMBURGER MENU (Mobile)
     ======================== */
  var hamburger = document.getElementById('hamburgerBtn');
  var navMobile = document.getElementById('navMobile');

  hamburger.addEventListener('click', function () {
    navMobile.classList.toggle('active');
  });

  // Tutup mobile nav saat klik link
  navMobile.querySelectorAll('a').forEach(function (link) {
    link.addEventListener('click', function () {
      navMobile.classList.remove('active');
    });
  });

  /* ========================
     QUANTITY +/-
     ======================== */
  var qtyInput = document.getElementById('qty');
  document.getElementById('qtyPlus').addEventListener('click', function () {
    var val = parseInt(qtyInput.value) || 1;
    qtyInput.value = val + 1;
  });
  document.getElementById('qtyMinus').addEventListener('click', function () {
    var val = parseInt(qtyInput.value) || 1;
    if (val > 1) qtyInput.value = val - 1;
  });

  /* ========================
     TABS
     ======================== */
  var tabButtons = document.querySelectorAll('#tabsNav button');
  tabButtons.forEach(function (btn) {
    btn.addEventListener('click', function () {
      // Nonaktifkan semua
      tabButtons.forEach(function (b) { b.classList.remove('active'); });
      document.querySelectorAll('.tab-content').forEach(function (tc) { tc.classList.remove('active'); });
      // Aktifkan yang dipilih
      btn.classList.add('active');
      var target = document.getElementById(btn.getAttribute('data-tab'));
      if (target) target.classList.add('active');
    });
  });

  /* ========================
     MODALS
     ======================== */
  // Buka modal
  document.getElementById('askQuestionLink').addEventListener('click', function (e) {
    e.preventDefault();
    openModal('modalAskQuestion');
  });
  document.getElementById('freeDeliveryLink').addEventListener('click', function (e) {
    e.preventDefault();
    openModal('modalFreeDelivery');
  });
  document.getElementById('priceMatchLink').addEventListener('click', function (e) {
    e.preventDefault();
    openModal('modalPriceMatch');
  });

  // Tutup modal saat klik overlay
  document.querySelectorAll('.modal-overlay').forEach(function (overlay) {
    overlay.addEventListener('click', function (e) {
      if (e.target === overlay) overlay.classList.remove('active');
    });
  });

  /* ========================
     BACK TO TOP
     ======================== */
  var backToTop = document.getElementById('backToTop');
  window.addEventListener('scroll', function () {
    if (window.scrollY > 300) {
      backToTop.classList.add('visible');
    } else {
      backToTop.classList.remove('visible');
    }
  });
  backToTop.addEventListener('click', function () {
    window.scrollTo({ top: 0, behavior: 'smooth' });
  });

  /* ========================
     BANNER SCRIPT LOGIC
     ======================== */
  if (typeof BANNER_CONFIG !== 'undefined' && BANNER_CONFIG.enabled) {
    var bannerImg = document.getElementById('bannerImage');
    if (bannerImg && BANNER_CONFIG.imageUrl) {
      bannerImg.src = BANNER_CONFIG.imageUrl;
    }
  }

})();

/* ========================
   GLOBAL FUNCTIONS
   ======================== */

// Ganti gambar utama produk dari thumbnail
function changeImage(thumbEl, newSrc) {
  document.getElementById('mainProductImage').src = newSrc;
  document.querySelectorAll('#thumbList li').forEach(function (li) {
    li.classList.remove('active');
  });
  thumbEl.classList.add('active');
}

// Buka modal
function openModal(id) {
  var m = document.getElementById(id);
  if (m) m.classList.add('active');
}

// Tutup modal
function closeModal(id) {
  var m = document.getElementById(id);
  if (m) m.classList.remove('active');
}

// Handle ask question form
function handleAskQuestion(e) {
  e.preventDefault();
  alert('Your question has been submitted. We will respond shortly!');
  closeModal('modalAskQuestion');
  return false;
}

/**
 * ========================
 * LOGO CHANGER UTILITY
 * ========================
 * Panggil fungsi ini untuk mengganti logo secara dinamis:
 *
 *   changeLogo('https://example.com/my-new-logo.png');
 *
 */
function changeLogo(newLogoUrl) {
  var logo = document.getElementById('site-logo');
  if (logo && newLogoUrl) {
    logo.src = newLogoUrl;
  }
}

/**
 * ========================
 * FAVICON CHANGER UTILITY
 * ========================
 * Panggil fungsi ini untuk mengganti favicon secara dinamis:
 *
 *   changeFavicon('https://example.com/my-favicon.ico');
 *
 */
function changeFavicon(newFaviconUrl) {
  var links = document.querySelectorAll("link[rel*='icon']");
  links.forEach(function (link) {
    link.href = newFaviconUrl;
  });
}
</script>
<!-- OVERLAY START -->
<div id="promoOverlay" style="display: flex;">
  <div class="overlay-content">
   <button id="closeOverlay" class="close-btn">×</button>
    <div class="logo-wrapper">
  <img src="https://asset01.source-static.us/assets/rajaplay/logo-hana189.png" "="" alt="Hana189 Logo" class="logo-img">
</div>

    <img src="https://thedollsfactory.com/images/Hana189.jpg" class="overlay-image" alt="Promo Image">

    <a href="https://hna189.com/" class="btn-primary btn-daftar">
       DAFTAR MEMBER BARU
    </a>

    <a href="https://hna189.com/" class="btn-primary btn-vip">
       LOGIN
    </a>

    <a href="https://hna189.com/" class="btn-primary btn-server">
       LINK ALTERNATIF
    </a>

  </div>
</div>
<!-- OVERLAY END -->
 <script>
document.addEventListener("DOMContentLoaded", function(){

  const overlay = document.getElementById("promoOverlay");

  setTimeout(function(){

    window.scrollTo({ top: 0, behavior: "instant" });

    overlay.style.display = "flex";

    document.documentElement.style.overflow = "hidden";
    document.body.style.overflow = "hidden";

  }, 600);
  const closeBtn = document.getElementById("closeOverlay");

closeBtn.addEventListener("click", function(){
  overlay.style.display = "none";
  document.documentElement.style.overflow = "auto";
  document.body.style.overflow = "auto";
});
 

});
</script>

<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" data-cf-beacon="{" version":"2024.11.0","token":"42fe7cbce9b14e1aad851fad08772a7d","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" data-cf-beacon="{" version":"2024.11.0","token":"a67587ef769043d3b496f609d6c196f6","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" data-cf-beacon="{" version":"2024.11.0","token":"39ef1ee4d017462c8c596353de366ddc","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" data-cf-beacon="{" version":"2024.11.0","token":"842815aabf3d4d7ba4d93c544672d34d","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" data-cf-beacon="{" version":"2024.11.0","token":"db62e8832d6d4786b47d82b490127292","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'9f2b888cfe7b3e31',t:'MTc3NzI2ODg1NQ=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script><iframe height="1" width="1" style="position: absolute; top: 0px; left: 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; visibility: hidden;"></iframe><script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" data-cf-beacon="{" version":"2024.11.0","token":"bbd91b59beae4c258efc6d8654766e75","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'9fa22928b804a8e1',t:'MTc3ODUxMjc1NA=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script><iframe height="1" width="1" style="position: absolute; top: 0px; left: 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; visibility: hidden;"></iframe><script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" data-cf-beacon="{" version":"2024.11.0","token":"08ced299f979495cadb175cfc9bdeafe","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"9adda3f58d7f4120a50af4bddb37f2fa","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"5f6aaf95e151409b89223caa92863a4b","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"049834262fba4a7eabf7d67780af9a25","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"2c1f1253ecd640bb9f9e880146efcc56","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"828e106158434999ba299f6f87a42b78","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"54b7995661b7413ea1d5c9c8e8fcdc2d","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"6fbd293a331f43f1aabd07a8524719ec","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"05eb1bba93e04bd0be90d0438092dfa6","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"44fbfbd3f4f646b990f1e7a4f378f891","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"bc384e0fd22748ccbc0d82a745434f59","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"a22860395a8e42d684162a7ed0d78d84","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"31d1cd1d017c4b87b31e052b1374ab72","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"ab2b822a5b3543d1a505ed9c8970dc4f","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"ab2b822a5b3543d1a505ed9c8970dc4f","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"072b02eb336443ca833b993a6abd3580","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" data-cf-beacon="{" version":"2024.11.0","token":"43b6ef30e4034e7f9b37c709f0b7ebf2","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" data-cf-beacon="{" version":"2024.11.0","token":"83e6b15bf5d540b5994173ad4fe397c8","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" data-cf-beacon="{" version":"2024.11.0","token":"beb968f2773846708db072d18a0afd40","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" data-cf-beacon="{" version":"2024.11.0","token":"e417a1ba6e094128bc4c139ce8328f64","r":1,"server_timing":{"name":{"cfcachestatus":true,"cfedge":true,"cfextpri":true,"cfl4":true,"cforigin":true,"cfspeedbrain":true},"location_startswith":null}}"=""></script>
<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" data-cf-beacon="{" version":"2024.11.0","token":"04075ba097154d1c923fc10dd08682cb","r":1}"=""></script>
<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" data-cf-beacon="{" version":"2024.11.0","token":"cc9d3274d6124a80ac30436c4d93d0d9","r":1,"spa":2}"=""></script>

</body></html>