@media (max-width:1000px) {
  .top-partner-grid {
    grid-template-columns: 1fr 1fr;
    gap: 28px 20px;
  }
  .payment-items {
    grid-template-columns: repeat(5, 52px);
  }
}
/*
 * =========================
 * MOBILE
 * =========================
 */
@media (max-width:600px) {
  .footer-sponsors {
    padding: 22px 0;
  }
  .top-partner-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .payment-items {
    grid-template-columns: repeat(3, 60px);
  }
  .provider-items {
    grid-template-columns: repeat(4, 60px);
  }
  .ecosystem-items {
    gap: 14px;
    flex-wrap: wrap;
  }
}
/*
 * =========================================
 * MAIN FOOTER
 * =========================================
 */
.footer-main {
  background: #fff;
}
.footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.2fr;
  gap: 55px;
  padding: 34px 0 36px;
  border-top: 1px dotted #aeb5bf;
  border-bottom: 1px dotted #aeb5bf;
}
/* heading */
.footer-col h3 {
  margin: 0 0 16px;
  font-size: 17px;
  font-weight: 800;
  color: #0f172a;
}
/* logo */
.footer-brand-logo {
  width: 155px;
  height: auto;
  margin: 0 0 15px;
  object-fit: contain;
}
/* description */
.footer-about p {
  max-width: 355px;
  margin: 0 0 10px;
  font-size: 12px;
  line-height: 1.7;
  color: #475569;
}
/* links */
.footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-col li {
  margin: 0 0 8px;
}
.footer-col a {
  font-size: 14px;
  color: #111827;
  transition: .15s;
}
.footer-col a:hover {
  color: #0757b8;
}
/*
 * =========================================
 * BIG SECURITY
 * =========================================
 */
.footer-security-big {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}
.footer-security-big > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
}
.footer-security-big img {
  width: 38px;
  height: 38px;
  object-fit: contain;
  opacity: .72;
}
.footer-security-big span {
  color: #64748b;
  font-size: 10px;
}
/*
 * =========================================
 * BOTTOM SECTION
 * =========================================
 */
.footer-bottom-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 40px;
  padding: 29px 0 30px;
}
.footer-bottom-col h4 {
  margin: 0 0 17px;
  color: #111827;
  font-size: 16px;
  font-weight: 800;
}
/*
 * =========================================
 * PAYMENT
 * =========================================
 */
.footer-payment {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
}
.footer-payment img {
  width: auto;
  height: 29px;
  max-width: 55px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: .70;
  transition: .2s;
}
.footer-payment img:hover {
  filter: grayscale(0);
  opacity: 1;
}
/*
 * =========================================
 * SOCIAL
 * =========================================
 */
.footer-social {
  display: flex;
  align-items: center;
  gap: 13px;
}
.footer-social a {
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer-social img {
  width: 27px;
  height: 27px;
  object-fit: contain;
  opacity: .72;
  transition: .2s;
}
.footer-social img:hover {
  opacity: 1;
  transform: translateY(-2px);
}
/*
 * =========================================
 * SECURITY
 * =========================================
 */
.footer-security {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
}
.footer-security img {
  width: 30px;
  height: 30px;
  object-fit: contain;
  opacity: .65;
}
/*
 * =========================================
 * RESPONSIBLE
 * =========================================
 */
.responsible-list {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #5f6e82;
  font-size: 13px;
  font-weight: 700;
}
.age-18 {
  width: 39px;
  height: 39px;
  border: 2px solid #657386;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #455468;
  font-size: 13px;
  font-weight: 900;
}
/*
 * =========================================
 * COPYRIGHT
 * =========================================
 */
.footer-copy {
  background: #050505;
  padding: 19px 0;
  color: #fff;
  font-size: 13px;
}
/*
 * =========================================
 * TABLET
 * =========================================
 */
@media (max-width:1000px) {
  .sponsor-old {
    flex-basis: 100%;
  }
  .footer-grid {
    grid-template-columns: 1fr 1fr;
  }
  .footer-bottom-grid {
    grid-template-columns: 1fr 1fr;
  }
}
/*
 * =========================================
 * MOBILE
 * =========================================
 */
@media (max-width:600px) {
  .footer-sponsors {
    padding: 30px 0;
  }
  .sponsor-groups {
    gap: 28px 20px;
  }
  .sponsor-logo-row {
    gap: 15px;
  }
  .sponsor-logo-item img {
    width: 65px;
    height: 65px;
  }
  .sponsor-old {
    width: 100%;
  }
  .old-sponsor-row {
    gap: 14px;
  }
  .old-sponsor-row > div {
    width: 52px;
  }
  .old-sponsor-row img {
    width: 44px;
    height: 44px;
  }
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .footer-bottom-grid {
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .footer-brand-logo {
    width: 140px;
  }
}
.sponsor-payments .sponsor-logo-row {
  display: grid;
  grid-template-columns: repeat(5, 58px);
  justify-content: center;
  gap: 16px 10px;
}
.sponsor-payments .sponsor-logo-item {
  min-width: 0;
  width: 58px;
}
.sponsor-payments .sponsor-logo-item img {
  width: 38px;
  height: 38px;
  object-fit: contain;
  margin: 0 auto 6px;
}

/* MOBILE */
@media (max-width:900px) {
  .menu {
    display: none;
  }
  .nav {
    gap: 12px;
  }
  .nav-actions {
    margin-left: auto;
  }
  .hero {
    height: 390px;
  }
  .hero-art {
    grid-template-columns: 1fr;
    padding: 34px 24px;
  }
  .visual {
    display: none;
  }
  .hero-copy h1 {
    font-size: 34px;
  }
  .provider-strip,.media-strip {
    grid-template-columns: repeat(3, 1fr);
  }
  .feature-row {
    grid-template-columns: 1fr;
  }
  .feature-copy {
    padding: 28px 0;
  }
  .feature-visual {
    min-height: 220px;
  }
  .games {
    grid-template-columns: repeat(2, 1fr);
  }
  .why-card {
    padding: 35px 25px;
  }
  .why-grid {
    grid-template-columns: 1fr;
  }
  .host {
    display: none;
  }
  .icons {
    grid-template-columns: repeat(2, 1fr);
  }
  .sponsor-grid {
    grid-template-columns: repeat(4, 1fr);
  }
  .footer-cols,.payments {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width:560px) {
  .btn-register {
    box-shadow: none;
    padding: 10px 12px;
  }
  .lang {
    display: none;
  }
  .provider-strip,.media-strip {
    grid-template-columns: repeat(2, 1fr);
    padding: 16px;
  }
  .article h2 {
    font-size: 25px;
  }
  .games {
    grid-template-columns: 1fr;
  }
  .icons {
    grid-template-columns: 1fr 1fr;
    gap: 24px 12px;
  }
  .footer-cols,.payments {
    grid-template-columns: 1fr;
  }
  .sponsor-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width:900px) {
  .nav {
    gap: 12px;
  }
  .menu {
    display: none;
  }
  .nav-actions {
    margin-left: auto;
  }
}
@media (max-width:560px) {
  .btn-register {
    box-shadow: none;
    min-width: 68px;
    height: 38px;
    padding: 0 12px;
  }
}
/* DROPDOWN LAINNYA */
.menu-dropdown {
  position: relative;
  height: 64px;
  display: flex;
  align-items: center;
}
.menu-dropdown > a {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 64px;
}
/* panah kecil */
.menu-dropdown > a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid #111827;
  border-bottom: 1.5px solid #111827;
  transform: rotate(45deg);
  margin-top: -4px;
}
.dropdown-menu {
  position:absolute;
  top:64px;
  left:50%;
  right:auto;
  min-width:170px;
  background:#fff;
  border:1px solid #eceff3;
  box-shadow:0 8px 20px rgba(0,0,0,.12);
  padding:6px 0;
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,-8px);
  transition:
    opacity .18s ease,
    transform .18s ease,
    visibility .18s ease;
  z-index:9999;
  pointer-events:none;
}
.dropdown-menu a {
  display:block;
  height:auto;
  padding:10px 13px;
  font-size:12px;
  line-height:1.2;
  color:#111827;
  white-space:nowrap;
}
.dropdown-menu a:hover {
  background: #f5f6f8;
  color: var(--blue);
}
.menu-dropdown:hover .dropdown-menu {
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
  pointer-events:auto;
}
.slide a {
  display: block;
  width: 100%;
  height: 100%;
}
.slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
/*
 * =====================================================
 * MOBILE RESPONSIVE - SUSUNAN TETAP SEPERTI DESKTOP
 * =====================================================
 */
@media (max-width: 768px) {
  /* ---------- GLOBAL ---------- */
  .container {
    width: calc(100% - 20px);
    max-width: 100%;
  }
  body {
    overflow-x: hidden;
  }
  /*
   * ==================================================
   * HEADER MOBILE
   * BARIS 1 = LOGO + MASUK/DAFTAR
   * BARIS 2 = MENU
   * ==================================================
   */
  .nav {
    width: calc(100% - 20px) !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 8px 0 0;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center;
    justify-content: space-between;
    gap: 0 !important;
  }
  /*
   * =========================
   * LOGO - BARIS ATAS KIRI
   * =========================
   */
  .brand {
    order: 1;
    height: 44px !important;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
  }
  .brand img {
    width: auto;
    height: 29px !important;
    object-fit: contain;
  }
  /*
   * =========================
   * LOGIN / DAFTAR
   * BARIS ATAS KANAN
   * =========================
   */
  .nav-actions {
    order: 2;
    margin-left: auto !important;
    display: flex !important;
    align-items: center;
    gap: 7px !important;
    flex: 0 0 auto;
  }
  .nav-actions > a:first-child {
    font-size: 12px;
  }
  .btn-register {
    min-width: 58px !important;
    height: 34px !important;
    padding: 0 11px !important;
    font-size: 11px !important;
    border-radius: 10px;
  }
  .lang {
    display: none !important;
  }
  /*
   * =========================
   * MENU - BARIS KEDUA
   * =========================
   */
  .menu {
    order: 3;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 38px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 11px !important;
    overflow: visible !important;
    padding: 0;
    border-top: 1px solid #f0f1f3;
    scrollbar-width: none;
  }
  .menu::-webkit-scrollbar {
    display: none;
  }
  .menu > a {
    height: 38px !important;
    display: flex;
    align-items: center;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1;
    white-space: nowrap;
    flex: 0 0 auto;
  }
  /*
   * =========================
   * LAINNYA
   * =========================
   */
.menu-dropdown {
  position:relative;
  height:38px !important;
  display:flex;
  align-items:center;
  flex:0 0 auto;
}
  .menu-dropdown > a {
    height: 38px !important;
    display: flex;
    align-items: center;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1;
  }
  .menu-dropdown > a::after {
    width: 5px;
    height: 5px;
    margin-left: 1px;
    margin-top: -3px;
  }
  /* dropdown muncul dari bawah menu */
.dropdown-menu {
  top:38px !important;
  left:50% !important;
  right:auto !important;
  min-width:145px;
  max-width:170px;
  padding:5px 0;
  transform:translate(-50%,-6px);
}

.menu-dropdown.open .dropdown-menu {
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
  pointer-events:auto;
}
  /*
   * ==================================================
   * HERO MOBILE
   * GAMBAR WAJIB TAMPIL FULL
   * ==================================================
   */
  .hero-wrap {
    width: 100%;
    background: #001331;
  }
  /*
   * Banner kamu rasio lebar.
   * Jangan kasih tinggi 220px karena akan crop.
   */
  .hero, .hero-wrap .hero {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1334 / 350;
    position: relative;
    overflow: hidden;
  }
  /*
   * Slide tetap absolute supaya
   * JS slider kamu tidak berubah
   */
  .slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .slide a {
    width: 100%;
    height: 100%;
    display: block;
  }
  /*
   * PENTING:
   * contain = seluruh banner masuk
   * cover   = banner dipotong
   */
  .slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block;
  }
  /* DOT SLIDER */
  .hero-dots {
    left: 50% !important;
    bottom: 5px !important;
    transform: translateX(-50%);
    gap: 6px !important;
  }
  .hero-dots button {
    width: 7px;
    height: 7px;
  }
  .hero-dots button.active {
    width: 20px;
  }
  /* ---------- BERITA ---------- */
  .announcement {
    padding: 16px 0 22px;
  }
  .newsline {
    font-size: 11px;
  }
  /*
   * ---------- PROVIDER ----------
   * Desktop = 7 kolom
   * Mobile tetap 7 kolom
   */
  .provider-strip {
    grid-template-columns: repeat(7, 1fr) !important;
    gap: 5px !important;
    padding: 10px !important;
  }
  .provider {
    min-width: 0;
    height: 46px;
    padding: 4px;
  }
  .provider img {
    max-width: 100%;
    max-height: 35px;
    object-fit: contain;
  }
  .section-title {
    font-size: 15px;
    margin-bottom: 12px;
  }
  /* ---------- ARTICLE ---------- */
  .article {
    padding: 28px 0 20px;
  }
  .article h1 {
    font-size: 23px;
    line-height: 1.3;
  }
  .article h2 {
    font-size: 22px !important;
  }
  .article h3 {
    font-size: 17px;
  }
  .article p {
    font-size: 13px;
    line-height: 1.65;
  }
  .market-links {
    gap: 8px 12px;
    font-size: 12px;
  }
  /*
   * ---------- MEDIA ----------
   * PC = 7 kolom, mobile tetap 7
   */
  .media-strip {
    grid-template-columns: repeat(7, 1fr) !important;
    gap: 5px;
    padding: 10px;
  }
  .media-logo {
    height: 55px;
    padding: 5px;
  }
  .media-logo img {
    max-width: 100%;
    max-height: 42px;
    object-fit: contain;
  }
  /*
   * =========================================
   * FEATURE BANNER MOBILE - FINAL
   * =========================================
   */
  .blue-stack {
    width: 100%;
    margin-top: 30px;
  }
  .blue-stack .container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 10px !important;
  }
  .feature-row {
    position: relative;
    width: 100%;
    height: 155px !important;
    min-height: 155px !important;
    overflow: hidden;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
  }
  .feature-visual {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .feature-visual img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center 40% !important;
    display: block;
    background: #0757b8;
    position: relative;
    top: -20px;
    right: auto;
    bottom: auto;
    left: auto;
    transform: none;
  }
  .feature-copy {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    width: 60% !important;
    height: 100%;
    padding: 11px 8px 11px 12px !important;
    display: flex;
    flex-direction: column;
    justify-content: center !important;
    background: linear-gradient( 90deg, rgba(5, 77, 177, 1) 0%, rgba(5, 77, 177, .98) 68%, rgba(5, 77, 177, .65) 86%, rgba(5, 77, 177, 0) 100% ) !important;
  }
  .feature-copy h3{
    margin:0 0 6px;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:700;
  }
  .feature-copy p{
    margin:0 0 8px;
    font-size:8.8px !important;
    line-height:1.35 !important;
    max-width:none !important;
  }
  .orange-btn{
    width:max-content;
    padding:7px 11px !important;
    font-size:8.5px !important;
    line-height:1;
    border-radius:5px;
  }
  /*
   * ---------- GAME SLIDER ----------
   * Tetap horizontal seperti PC
   */
  .game-section {
    padding: 25px 0;
  }
  .game-card {
    flex: 0 0 150px !important;
  }
  .game-card img {
    width: 150px !important;
    height: 94px !important;
  }
  .game-track {
    gap: 10px;
  }
  .game-title {
    font-size: 12px;
    margin-top: 7px;
  }
  .provider-name {
    font-size: 10px;
  }
  .rtp {
    font-size: 9px;
    padding: 3px 6px;
  }
  /*
   * =========================================
   * WHY SENYUMTOTO MOBILE - FINAL
   * =========================================
   */
  .why {
    padding: 25px 0;
  }
  .why-card {
    position: relative;
    min-height: 560px !important;
    padding: 24px 20px 30px !important;
    overflow: hidden;
  }
  /* Judul pakai lebar penuh */
  .why-card h2 {
    position: relative;
    z-index: 3;
    width: 100%;
    margin: 0 0 10px !important;
    padding: 0 !important;
    text-align: center;
    font-size: 17px !important;
    line-height: 1.3;
  }
  /* Intro juga pakai lebar penuh */
  .why-card > .intro {
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: 100% !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    text-align: center;
    font-size: 11px !important;
    line-height: 1.55;
  }
  /* grid utama tetap 2 kolom */
  .why-grid {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px 18px !important;
    width: 100%;
  }
  /* item normal boleh pakai area penuh */
  .why-item {
    min-width: 0;
  }
  .why-item h3 {
    margin: 0 0 7px;
    font-size: 12px !important;
    line-height: 1.25;
  }
  .why-item p {
    margin: 0;
    font-size: 9px !important;
    line-height: 1.5;
  }
  .why-item:nth-child(5) {
    position: relative;
    z-index: 3;
    grid-column: 1 / 2 !important;
    grid-row: auto;
    min-height: auto;
  }
  .why-item:nth-child(6) {
    position: relative;
    z-index: 3;
    grid-column: 1 / 2 !important;
    grid-row: auto;
    min-height: auto;
    margin-top: -6px;
  }
  /* hapus efek sempit pada teks item ke-6 */
  .why-item:nth-child(6) h3, .why-item:nth-child(6) p {
    width: 100% !important;
    max-width: 100% !important;
  }
  .why-host {
    display: block !important;
    position: absolute;
    width: 180px !important;
    max-height: 255px !important;
    right: 10px;
    bottom: 0;
    object-fit: contain;
    object-position: right bottom;
    z-index: 2;
    pointer-events: none;
  }
  .icons {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 8px !important;
    padding: 30px 0 40px;
  }
  .icon-round {
    width: 70px;
    height: 70px;
    margin-bottom: 10px;
  }
  .icon-round img {
    width: 65px;
    height: 65px;
  }
  .icon-box h3 {
    font-size: 12px;
  }
  .icon-box p {
    font-size: 9px;
    line-height: 1.4;
  }
  /* ---------- FAQ ---------- */
  .faq {
    padding: 30px 0 40px;
  }
  .faq h2 {
    font-size: 18px;
    margin-bottom: 20px;
  }
  .faq summary {
    min-height: 45px;
    padding: 12px 42px 12px 13px;
    font-size: 13px;
  }
  .faq details p {
    padding: 7px 13px 16px;
    font-size: 11px;
  }
  /*
   * =========================================
   * FOOTER MOBILE RAPI
   * =========================================
   */
  .footer-pro .container {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
  }
  /*
   * =========================================
   * PARTNER ATAS
   * 2 KOLOM
   * =========================================
   */
  .footer-sponsors {
    padding: 22px 0 !important;
  }
  .top-partner-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 24px 14px !important;
    align-items: start;
  }
  .partner-block {
    padding: 0 4px !important;
  }
  .partner-block h4, .ecosystem-strip h4 {
    margin-bottom: 11px;
    font-size: 8px !important;
    line-height: 1.3;
    letter-spacing: .8px;
  }
  /* partner icon */
  .partner-items {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 10px 7px !important;
  }
  .partner-item {
    width: 48px !important;
  }
  .partner-item img {
    width: 31px !important;
    height: 31px !important;
    margin: 0 auto 5px;
  }
  .partner-item span {
    font-size: 7px !important;
    line-height: 1.2;
    white-space: normal !important;
  }
  /* payment */
  .payment-items {
    display: grid !important;
    grid-template-columns: repeat(4, 45px) !important;
    justify-content: center;
    gap: 10px 5px !important;
  }
  .payment-items .partner-item {
    width: 45px !important;
  }
  .payment-items .partner-item img {
    width: 30px !important;
    height: 30px !important;
  }
  /* provider */
  .provider-items {
    display: grid !important;
    grid-template-columns: repeat(3, 52px) !important;
    justify-content: center;
    gap: 10px 6px !important;
  }
  .provider-item {
    width: 52px !important;
  }
  .provider-item img {
    width: 45px !important;
    height: 25px !important;
  }
  .provider-item span {
    font-size: 7px !important;
  }
  /*
   * =========================================
   * EKOSISTEM
   * =========================================
   */
  .ecosystem-strip {
    margin-top: 22px;
    padding-top: 18px;
  }
  .ecosystem-items {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px !important;
  }
  .ecosystem-item {
    width: auto !important;
  }
  .ecosystem-item img {
    width: 28px;
    height: 28px;
    margin: auto;
  }
  .ecosystem-item span {
    font-size: 7px !important;
    white-space: normal !important;
  }
  /*
   * =========================================
   * FOOTER MAIN
   * 2 KOLOM
   * =========================================
   */
  .footer-grid {
    display: grid !important;
    grid-template-columns: 1.4fr 1fr !important;
    gap: 24px 18px !important;
    padding: 27px 0 !important;
  }
  .footer-brand-logo {
    width: 115px !important;
  }
  .footer-about p {
    max-width: none;
    font-size: 10px !important;
    line-height: 1.6 !important;
  }
  .footer-col h3 {
    margin-bottom: 12px;
    font-size: 13px !important;
  }
  .footer-col li {
    margin-bottom: 7px;
  }
  .footer-col a {
    font-size: 11px !important;
  }
  /* security besar */
  .footer-security-big {
    gap: 10px !important;
  }
  .footer-security-big img {
    width: 29px !important;
    height: 29px !important;
  }
  .footer-security-big span {
    font-size: 7px !important;
  }
  /*
   * =========================================
   * FOOTER BOTTOM
   * 2 KOLOM
   * =========================================
   */
  .footer-bottom-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 22px 16px !important;
    padding: 24px 0 !important;
  }
  .footer-bottom-col h4 {
    margin-bottom: 12px;
    font-size: 12px !important;
  }
  /* pembayaran bawah */
  .footer-payment {
    gap: 9px !important;
  }
  .footer-payment img {
    height: 22px !important;
    max-width: 44px !important;
  }
  /* social */
  .footer-social {
    gap: 9px !important;
  }
  .footer-social img {
    width: 23px !important;
    height: 23px !important;
  }
  /* security */
  .footer-security {
    gap: 9px !important;
  }
  .footer-security img {
    width: 24px !important;
    height: 24px !important;
  }
  /* responsible */
  .responsible-list {
    gap: 8px !important;
    font-size: 10px !important;
  }
  .age-18 {
    width: 31px !important;
    height: 31px !important;
    font-size: 10px !important;
  }
  /* copyright */
  .footer-copy {
    padding: 14px 0 !important;
    font-size: 10px !important;
    text-align: center;
  }
  /* ---------- CHAT ---------- */
  .live-chat-btn {
    right: 12px;
    bottom: 14px;
    width: 48px;
    height: 48px;
  }
}

/* =========================================
   FIX HORIZONTAL SCROLL MOBILE
========================================= */

@media (max-width:768px){

  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body{
    position:relative;
  }

  .topbar,
  main,
  section,
  footer,
  .hero-wrap,
  .blue-stack,
  .why,
  .footer-pro{
    width:100%;
    max-width:100%;
  }

  .container{
    max-width:100% !important;
  }

  /* grid/flex tidak boleh memaksa halaman melebar */
  .menu,
  .provider-strip,
  .media-strip,
  .why-grid,
  .icons,
  .top-partner-grid,
  .footer-grid,
  .footer-bottom-grid,
  .ecosystem-items{
    min-width:0 !important;
    max-width:100% !important;
  }

  .provider,
  .media-logo,
  .why-item,
  .icon-box,
  .partner-block,
  .footer-col,
  .footer-bottom-col{
    min-width:0 !important;
  }

  /* gambar tidak boleh memperlebar parent */
  img{
    max-width:100%;
  }

  /* slider game tetap boleh panjang,
     tapi panjangnya dipotong oleh wrapper */
  .game-slider{
    width:100%;
    max-width:100%;
    overflow:hidden !important;
  }
}

.live-chat-btn {
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #1677ff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.22);
  z-index: 9999;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  animation: liveChatPulse 1.5s ease-out infinite;
}
@keyframes liveChatPulse {
  0% {
    box-shadow:
      0 10px 25px rgba(0, 0, 0, 0.22),
      0 0 0 0 rgba(22, 119, 255, 0.45);
  }

  70% {
    box-shadow:
      0 10px 25px rgba(0, 0, 0, 0.22),
      0 0 0 16px rgba(22, 119, 255, 0);
  }

  100% {
    box-shadow:
      0 10px 25px rgba(0, 0, 0, 0.22),
      0 0 0 0 rgba(22, 119, 255, 0);
  }
}

.live-chat-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.26);
}

.live-chat-btn svg {
  width: 38px;
  height: 38px;
  fill: #fff;
  display: block;
  margin-top: 6px;
}