@media (min-width: 1025px) and (max-width: 1200px) {
  .elementor-25363 .elementor-element.elementor-element-047aa30 .elementor-tabs-wrapper {
    width: 25% !important;
  }

  .menu-column {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 280px !important;
  }

  .menu-column li {
    margin: 8px;
    display: flex;
    align-items: start;
  }

  .menu-column li a {
    font-size: 14px;
    width: 90% !important;
    gap: 5px;
    padding: 6px 10px;
  }

  .menu-container {
    gap: 5px !important;
    flex-wrap: nowrap !important;
  }
}

@media (min-width: 1201px) and (max-width: 1440px) {
  .elementor-25363 .elementor-element.elementor-element-047aa30 .elementor-tabs-wrapper {
    width: 30% !important;
  }

  .menu-column {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 260px !important;
  }

  .menu-column li {
    margin: 8px;
    display: flex;
    align-items: start;
  }

  .menu-column li a {
    font-size: 14px;
    width: 90% !important;
    gap: 10px;
    padding: 6px 10px;
  }

  .menu-container {
    gap: 10px !important;
    flex-wrap: nowrap !important;
  }

}

.menu-container {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.menu-column {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 250px;
}

.menu-column li {
  margin-bottom: 15px;
}

.menu-column li a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 15px;
  border-radius: 10px;
  transition: background-color 0.3s ease, color 0.3s ease;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  font-family: 'Poppins', sans-serif;
    width: 100%; /* ✅ fix */
    box-sizing: border-box; /* ✅ fix */
}

.menu-column li a i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background-color: #eaf2ff;
  color: #0066cc;
  border-radius: 8px;
  font-size: 16px;
}

.menu-column li a:hover {
  background-color: #eaf2ff;
  color: #0066cc;
}

.menu-column li a.active {
  background-color: #eaf2ff;
  font-weight: 600;
}

.menu-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  border-radius: 10px;
  font-weight: bold;
  color: #000;
  transition: background-color 0.3s ease, color 0.3s ease;
  cursor: pointer;
  background-color: transparent;
}

.menu-item:hover,
.menu-item.active {
  background-color: #eaf2ff;
  color: #0066cc;
}

.menu-item .chevron-icon {
  margin-left: 10px;
  color: #0066cc;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.menu-item:hover .chevron-icon,
.menu-item.active .chevron-icon {
  opacity: 1;
}

.elementor-tab-title.elementor-active {
  background-color: #eaf2ff;
  color: #0066cc;
  border-radius: 10px;
}

.menu-item:hover, .menu-item.active {
  background-color: #ffffff;
  color: #0066cc;
}

/* =====================================================
   DEFAULT: HIDE ONLY CONTROLLED ELEMENTS
   ===================================================== */
#globallogo, #globallogofooter,
    #demogl, #demoglobe,
    #discoverycall, #btnin, #btngl,
    #mobus, #mobin, #mobmy, #mobsa,
    #glmobfoot, #inmobfoot, #mymobfoot, #samobfoot,
    /* ✅ ZA-only logos */
    #zalogo, #zafootlogo,
    /* ✅ Contact blocks */
    #glcontact, #zacontact, #aumobfoot, #mobau {
    display: none!important;
}

/* =====================================================
   GLOBAL: DEFAULT DISPLAY
   ===================================================== */
html:not([class*="country-"]) #globallogo,
    html:not([class*="country-"]) #globallogofooter,
    html:not([class*="country-"]) #demogl,
    html:not([class*="country-"]) #demoglobe,
    html:not([class*="country-"]) #btngl,
    html:not([class*="country-"]) #mobus,
    html:not([class*="country-"]) #glmobfoot,
    html:not([class*="country-"]) #glcontact {
    display: block!important;
}

/* =====================================================
   INDIA
   ===================================================== */
html.country-in #globallogo,
    html.country-in #globallogofooter,
    html.country-in #discoverycall,
    html.country-in #btnin,
    html.country-in #mobin,
    html.country-in #inmobfoot {
    display: block!important;
}

/* =====================================================
   MALAYSIA
   ===================================================== */
html.country-my #globallogo,
    html.country-my #globallogofooter,
    html.country-my #mobmy,
    html.country-my #mymobfoot,
    html.country-my #btngl,
    html.country-my #demogl,
    html.country-my #demoglobe {
    display: block!important;
}

/* =====================================================
   AUSTRALIA
   ===================================================== */
html.country-au #globallogo,
    html.country-au #globallogofooter,
    html.country-au #mobau,
    html.country-au #aumobfoot,
    html.country-au #btngl,
    html.country-au #demogl,
    html.country-au #demoglobe {
    display: block!important;
}

/* =====================================================
   SOUTH AFRICA
   ===================================================== */
html.country-za #mobsa,
    html.country-za #samobfoot,
    html.country-za #btngl,
    html.country-za #demogl,
    html.country-za #demoglobe,
    html.country-za #zalogo,
    html.country-za #zafootlogo,
    html.country-za #zacontact {
    display: block!important;
}

/* =====================================================
   GLOBAL
   ===================================================== */
html.country-global #globallogo,
    html.country-global #globallogofooter,
    html.country-global #mobus,
    html.country-global #glmobfoot,
    html.country-global #btngl,
    html.country-global #demogl,
    html.country-global #demoglobe {
    display: block!important;
}

/* =====================================================
   Global contact – visible everywhere EXCEPT South Africa
   ===================================================== */
html:not(.country-za) #glcontact {
    display: block!important;
}

/* =====================================================
   MOBILE PORTRAIT RULES
   ===================================================== */
@media(max-width: 900px) and (orientation: portrait) {
    html.country-in #discoverycall { display: none!important; }
    html.country-my #demoglobe,
    html.country-za #demoglobe,
    html.country-global #demoglobe {
        display: none!important;
    }
}

/* ===============================
   ELEMENTOR-SAFE LEGAL NUMBERING
   =============================== */

.legal-document {
  counter-reset: section;
}

/* Increment section ACROSS widgets */
.legal-section {
  counter-increment: section;
  margin-bottom: 2rem;
}

/* Section title: 1. DEFINITIONS */
.legal-title {
  font-weight: 700;
  margin-bottom: 0.75rem;
  position: relative;
  padding-left: 2.4rem;
}

.legal-title::before {
  content: counter(section) ". ";
  position: absolute;
  left: 0;
}

/* Reset subsection numbering PER section */
.legal-list {
  list-style: none;
  padding-left: 0;
  counter-reset: subsection;
}

/* Subsections: 1.1, 1.2, 2.1, etc */
.legal-list > li {
  counter-increment: subsection;
  position: relative;
  padding-left: 3.2rem;
  margin-bottom: 0.6rem;
}

.legal-list > li::before {
  content: counter(section) "." counter(subsection) ". ";
  position: absolute;
  left: 0;
  font-weight: 600;
}

@view-transition {
  navigation: auto;
}

/* New page enters */
::view-transition-new(root) {
  animation: 500ms ease-out both slide-in-from-left;
}

/* Old page exits */
::view-transition-old(root) {
  animation: 500ms ease-in both fade-out-scale-down;
}

/* Animations */
@keyframes slide-in-from-left {
  from {
    transform: translateX(-30px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-out-scale-down {
  from {
    transform: scale(1);
    opacity: 1;
  }
  to {
    transform: scale(0.98);
    opacity: 0;
  }
}
