/* EBOT final stability fixes: mobile nav, product dropdown, homepage hero, latest news */

/* language visibility must be deterministic */
body:not(.zh-mode) .zh-content { display: none !important; }
body.zh-mode .en-content { display: none !important; }
body:not(.zh-mode) .nav-tools .nav-cta.en-content,
body.zh-mode .nav-tools .nav-cta.zh-content { display: inline-flex !important; }
body:not(.zh-mode) .nav-dropbtn .en-content,
body.zh-mode .nav-dropbtn .zh-content,
body:not(.zh-mode) .compact-news-head .en-content,
body.zh-mode .compact-news-head .zh-content,
body:not(.zh-mode) .compact-news-action.en-content,
body.zh-mode .compact-news-action.zh-content { display: inline !important; }

/* main nav product dropdown */
.nav-dropdown { position: relative; }
.nav-dropbtn {
  appearance: none;
  border: 0;
  background: transparent;
  color: rgba(255,255,255,0.78);
  font: inherit;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  cursor: pointer;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0;
  white-space: nowrap;
}
.nav-dropbtn:hover { color: var(--gold-light, #e8c97a); }
.nav-caret { display: inline-block !important; margin-left: 0.15rem; line-height: 1; }
.nav-dropdown-menu {
  display: none;
  position: absolute;
  top: calc(100% + 16px);
  left: 50%;
  transform: translateX(-50%);
  min-width: 245px;
  list-style: none;
  margin: 0;
  padding: 10px;
  background: rgba(10,22,40,0.98);
  border: 1px solid rgba(201,168,76,0.28);
  box-shadow: 0 18px 42px rgba(0,0,0,0.35);
  backdrop-filter: blur(16px);
  z-index: 2000;
}
.nav-dropdown:hover > .nav-dropdown-menu,
.nav-dropdown:focus-within > .nav-dropdown-menu,
.nav-dropdown.is-open > .nav-dropdown-menu { display: block; }
.nav-dropdown-menu a {
  display: block !important;
  width: 100%;
  padding: 11px 13px;
  color: rgba(255,255,255,0.82) !important;
  text-decoration: none !important;
  white-space: nowrap;
}
.nav-dropdown-menu a:hover { color: var(--gold-light, #e8c97a) !important; background: rgba(255,255,255,0.04); }

/* homepage latest news board */
.latest-news-section {
  background: #071426;
  padding: clamp(72px, 9vw, 130px) 6vw;
  border-top: 1px solid rgba(201,168,76,0.12);
  border-bottom: 1px solid rgba(201,168,76,0.12);
}
.latest-news-inner.compact-news-layout {
  width: min(1500px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(260px, 0.68fr) minmax(0, 1.32fr);
  gap: clamp(36px, 6vw, 88px);
  align-items: start;
}
.latest-news-heading .section-label {
  color: var(--gold, #c9a84c);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  margin: 0 0 16px;
}
.latest-news-heading .section-title {
  font-family: 'Cormorant Garamond','Noto Serif TC',serif;
  font-size: clamp(3rem, 6vw, 5.8rem);
  line-height: 0.95;
  font-weight: 300;
  color: #fff;
  margin: 0;
}
.latest-news-heading .section-title em { color: var(--gold-light, #e8c97a); font-style: normal; }
.latest-news-heading .divider {
  width: 70px;
  height: 1px;
  background: var(--gold, #c9a84c);
  margin-top: 34px;
}
.compact-news-board {
  background: rgba(16,34,62,0.78);
  border: 1px solid rgba(201,168,76,0.28);
  border-radius: 14px;
  padding: clamp(22px, 3vw, 38px);
  box-shadow: 0 22px 60px rgba(0,0,0,0.18);
}
.compact-news-head {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 18px;
  margin-bottom: 22px;
  border-bottom: 1px solid rgba(201,168,76,0.18);
  color: var(--gold-light, #e8c97a);
  font-size: 1.05rem;
  font-weight: 700;
}
.compact-news-head a {
  color: rgba(255,255,255,0.75) !important;
  text-decoration: none !important;
  font-size: 0.9rem;
  font-weight: 700;
}
.compact-news-grid {
  display: grid;
  grid-template-columns: 1.4fr 0.82fr 0.82fr;
  gap: 20px;
}
.compact-news-card {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  min-height: 280px;
  padding: clamp(22px, 2.4vw, 34px);
  background: rgba(24,47,84,0.74);
  border: 1px solid rgba(201,168,76,0.18);
  border-radius: 12px;
  color: rgba(255,255,255,0.86) !important;
  text-decoration: none !important;
  overflow: hidden;
}
.compact-news-card * { text-decoration: none !important; }
.compact-news-tag {
  color: var(--gold-light, #e8c97a);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 18px;
}
.compact-news-card h3 {
  color: #fff;
  font-family: 'Cormorant Garamond','Noto Serif TC',serif;
  font-size: clamp(1.55rem, 2.2vw, 2.35rem);
  line-height: 1.28;
  margin: 0 0 18px;
}
.compact-news-card p {
  color: rgba(255,255,255,0.68);
  font-size: 0.98rem;
  line-height: 1.8;
  margin: 0 0 22px;
}
.compact-news-action {
  color: var(--gold-light, #e8c97a) !important;
  font-weight: 800;
  letter-spacing: 0.08em;
  margin-top: auto;
}
.compact-news-empty { min-height: 280px; justify-content: center; }
.compact-news-empty h3 { margin: 0; font-size: clamp(2rem, 3vw, 3rem); }

/* Product pages: dropdown and logo safety */
.product-site-menu { position: relative; }
.product-menu-trigger { display: inline-flex !important; align-items: center; gap: .35rem; white-space: nowrap; }
.product-menu-trigger::after { content: '▾'; font-size: .72em; line-height: 1; }
.site-product-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 14px);
  left: 50%;
  transform: translateX(-50%);
  min-width: 220px;
  padding: .55rem;
  background: rgba(8,12,20,.98);
  border: 1px solid currentColor;
  box-shadow: 0 18px 36px rgba(0,0,0,.35);
  z-index: 50;
}
.product-site-menu.open .site-product-dropdown,
.product-site-menu:hover .site-product-dropdown,
.product-site-menu:focus-within .site-product-dropdown { display: flex; flex-direction: column; gap: .1rem; }
.site-product-dropdown a { padding: .75rem .9rem; text-decoration: none !important; white-space: nowrap; }

@media (max-width: 900px) {
  /* homepage nav + dropdown */
  nav#mainNav {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    z-index: 5000 !important;
    padding: 26px 24px 18px !important;
    min-height: 144px !important;
    background: rgba(10,22,40,0.98) !important;
    border-bottom: 1px solid rgba(201,168,76,0.2) !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 16px !important;
  }
  nav#mainNav .nav-logo { flex: 1 1 100% !important; min-width: 0 !important; }
  nav#mainNav .nav-tools { width: 100% !important; margin-left: 0 !important; justify-content: flex-end !important; gap: 12px !important; }
  nav#mainNav .nav-tools .nav-cta { min-width: 136px !important; height: 46px !important; font-size: .78rem !important; }
  nav#mainNav .lang-select { min-width: 112px !important; height: 46px !important; }
  nav#mainNav .nav-toggle { display: inline-flex !important; width: 48px !important; height: 46px !important; flex: 0 0 48px !important; }

  nav#mainNav .nav-links {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 6000 !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 24px 28px 34px !important;
    margin: 0 !important;
    background: rgba(10,22,40,0.985) !important;
    border-top: 1px solid rgba(201,168,76,0.18) !important;
    border-bottom: 1px solid rgba(201,168,76,0.18) !important;
    box-shadow: 0 24px 42px rgba(0,0,0,0.22) !important;
  }
  nav#mainNav .nav-links.mobile-open { display: flex !important; }
  nav#mainNav .nav-links li { width: 100% !important; list-style: none !important; }
  nav#mainNav .nav-links a,
  nav#mainNav .nav-dropbtn {
    width: 100% !important;
    min-height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(201,168,76,0.36) !important;
    background: transparent !important;
    color: rgba(255,255,255,0.84) !important;
    font-family: 'Noto Serif TC','DM Sans',serif !important;
    font-size: 1.25rem !important;
    letter-spacing: .06em !important;
    text-transform: none !important;
    text-decoration: none !important;
  }
  nav#mainNav .nav-caret { margin-left: .35rem !important; transform: translateY(1px); }
  nav#mainNav .nav-dropdown-menu {
    position: static !important;
    transform: none !important;
    min-width: 0 !important;
    width: 100% !important;
    display: none !important;
    padding: 10px 0 10px 20px !important;
    margin: 0 0 10px !important;
    background: rgba(16,34,62,0.72) !important;
    border: 1px solid rgba(201,168,76,0.22) !important;
    box-shadow: none !important;
  }
  nav#mainNav .nav-dropdown.is-open > .nav-dropdown-menu { display: block !important; }
  nav#mainNav .nav-dropdown-menu a {
    min-height: 48px !important;
    font-size: 1.05rem !important;
    border-bottom: 0 !important;
    padding: 0 0 0 14px !important;
    white-space: normal !important;
  }

  /* homepage hero mobile: image first, text second, no mixing/no disappearing */
  .page-home .hero {
    height: auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    overflow: visible !important;
    background: #071426 !important;
  }
  .page-home .hero-bg,
  .page-home .hero-overlay { display: none !important; }
  .page-home .home-hero-photo {
    position: relative !important;
    order: 1 !important;
    inset: auto !important;
    width: 100% !important;
    height: 360px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
  }
  .page-home .home-hero-photo-frame {
    width: 100% !important;
    height: 100% !important;
    clip-path: none !important;
    overflow: hidden !important;
  }
  .page-home .home-hero-photo-frame img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 42% !important;
    opacity: .55 !important;
    display: block !important;
  }
  .page-home .hero-content {
    position: relative !important;
    order: 2 !important;
    z-index: 2 !important;
    max-width: none !important;
    width: 100% !important;
    padding: 46px 28px 64px !important;
    margin: 0 !important;
    animation: none !important;
  }
  .page-home .hero-title { font-size: clamp(3.2rem, 13vw, 5.2rem) !important; line-height: 1.08 !important; margin-bottom: 28px !important; }
  .page-home .hero-subtitle { max-width: 100% !important; font-size: 1.12rem !important; line-height: 1.85 !important; color: rgba(255,255,255,.76) !important; }
  .page-home .hero-overline { white-space: normal !important; line-height: 1.45 !important; }
  .page-home .hero-btns { display: flex !important; flex-direction: column !important; gap: 14px !important; }
  .page-home .hero-btns a { width: 100% !important; text-align: center !important; justify-content: center !important; }
  .page-home .hero-scroll { display: none !important; }

  /* latest news mobile */
  .latest-news-section { padding: 58px 24px 72px !important; }
  .latest-news-inner.compact-news-layout { display: block !important; width: 100% !important; }
  .latest-news-heading { margin-bottom: 34px !important; }
  .latest-news-heading .section-title { font-size: clamp(3.2rem, 15vw, 5rem) !important; }
  .compact-news-board { padding: 20px !important; border-radius: 14px !important; }
  .compact-news-head { display: flex !important; align-items: flex-start !important; flex-direction: column !important; gap: 8px !important; }
  .compact-news-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 16px !important; }
  .compact-news-card { min-height: 0 !important; padding: 24px !important; }
  .compact-news-card h3 { font-size: 1.85rem !important; line-height: 1.32 !important; }
  .compact-news-card p { font-size: 1rem !important; line-height: 1.75 !important; }
  .compact-news-empty { min-height: 92px !important; }
  .compact-news-empty h3 { font-size: 2.2rem !important; }
}

@media (max-width: 420px) {
  nav#mainNav { padding-left: 20px !important; padding-right: 20px !important; }
  nav#mainNav .nav-tools .nav-cta { min-width: 124px !important; padding: 0 12px !important; }
  nav#mainNav .lang-select { min-width: 96px !important; }
  .page-home .hero-title { font-size: clamp(3rem, 14vw, 4.8rem) !important; }
}

@media (max-width: 780px) {
  /* product page mobile nav/dropdown */
  .version.active .nav { position: relative !important; z-index: 100 !important; }
  .version.active .nav-logo { flex: 0 1 auto !important; min-width: 0 !important; max-width: 36vw !important; overflow: hidden !important; text-overflow: clip !important; white-space: nowrap !important; font-size: clamp(1.25rem, 7.2vw, 2rem) !important; letter-spacing: .16em !important; }
  .version.active .nav-right { gap: .6rem !important; margin-left: auto !important; }
  .version.active .nav-cta.nav-inquiry { display: inline-flex !important; min-width: 80px !important; max-width: 118px !important; height: 44px !important; padding: 0 .7rem !important; align-items: center !important; justify-content: center !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; font-size: .74rem !important; }
  .version.active .lang-select { min-width: 82px !important; height: 44px !important; }
  .version.active .product-mobile-toggle { display: inline-flex !important; width: 44px !important; height: 44px !important; align-items: center !important; justify-content: center !important; }
  .version.active .site-main-links {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 120 !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 1.2rem 1.5rem 1.6rem !important;
    background: rgba(7,12,20,.985) !important;
    border-top: 1px solid currentColor !important;
    border-bottom: 1px solid currentColor !important;
  }
  .version.active .site-main-links.open { display: flex !important; }
  .version.active .site-main-links li { width: 100% !important; list-style: none !important; }
  .version.active .site-main-links > li > a,
  .version.active .product-menu-trigger {
    min-height: 50px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    border-bottom: 1px solid currentColor !important;
    text-decoration: none !important;
  }
  .version.active .site-product-dropdown {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    min-width: 0 !important;
    display: none !important;
    padding: .45rem 0 .45rem 1rem !important;
    margin: 0 0 .4rem !important;
    background: rgba(255,255,255,.04) !important;
    border-left: 2px solid currentColor !important;
    border-top: 0 !important;
    box-shadow: none !important;
  }
  .version.active .product-site-menu.open .site-product-dropdown { display: flex !important; }
  .version.active .site-product-dropdown a { padding: .75rem 0 .75rem .7rem !important; white-space: normal !important; }
}



/* ==== FINAL HOTFIX 20260724 NAV LANGUAGE + MOBILE MENU ==== */

/* Main EBOT site: one language button only. Overrides mobile CTA display rules. */
body.zh-mode nav#mainNav .nav-tools > .nav-cta.en-content,
body:not(.zh-mode) nav#mainNav .nav-tools > .nav-cta.zh-content {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}
body:not(.zh-mode) nav#mainNav .nav-tools > .nav-cta.en-content,
body.zh-mode nav#mainNav .nav-tools > .nav-cta.zh-content {
  display: inline-flex !important;
  visibility: visible !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: none !important;
  height: 46px !important;
  padding: 0 22px !important;
  border: 1px solid var(--gold, #c9a84c) !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

@media (max-width: 900px) {
  nav#mainNav .nav-tools {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    overflow: visible !important;
  }
  body:not(.zh-mode) nav#mainNav .nav-tools > .nav-cta.en-content,
  body.zh-mode nav#mainNav .nav-tools > .nav-cta.zh-content {
    min-width: 136px !important;
    max-width: 136px !important;
    width: 136px !important;
    flex: 0 0 136px !important;
    height: 46px !important;
    padding: 0 10px !important;
    font-size: .78rem !important;
    white-space: nowrap !important;
  }
  nav#mainNav .nav-links {
    top: 100% !important;
    z-index: 8000 !important;
  }
}




/* ==== FINAL HOTFIX 20260724 PRODUCT MOBILE HEADER + DROPDOWN ==== */
@media (max-width: 900px) {
  body .version.active nav.nav {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    min-height: 76px !important;
    height: 76px !important;
    padding: 0 10px !important;
    gap: 5px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    overflow: visible !important;
    z-index: 9000 !important;
  }

  body .version.active nav.nav .nav-logo {
    flex: 0 0 82px !important;
    width: 82px !important;
    min-width: 82px !important;
    max-width: 82px !important;
    display: block !important;
    overflow: visible !important;
    white-space: nowrap !important;
    text-overflow: clip !important;
    transform: none !important;
    font-size: .78rem !important;
    line-height: 1 !important;
    letter-spacing: .035em !important;
  }

  body .version.active nav.nav .nav-right {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin-left: auto !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    overflow: visible !important;
  }

  body .version.active nav.nav .nav-cta.nav-inquiry {
    display: inline-flex !important;
    flex: 0 0 68px !important;
    width: 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;
    height: 38px !important;
    padding: 0 4px !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: clip !important;
    font-size: .58rem !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
  }
  body.zh-mode .version.active nav.nav .nav-cta.nav-inquiry {
    font-size: .66rem !important;
  }
  body .version.active nav.nav .nav-cta.nav-inquiry::before,
  body .version.active nav.nav .nav-cta.nav-inquiry::after {
    content: none !important;
    display: none !important;
  }

  body .version.active nav.nav .lang-select {
    flex: 0 0 62px !important;
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    height: 38px !important;
    padding: 0 18px 0 5px !important;
    font-size: .78rem !important;
    text-align: center !important;
    text-align-last: center !important;
  }

  body .version.active nav.nav .product-mobile-toggle {
    display: inline-flex !important;
    flex: 0 0 38px !important;
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.2rem !important;
    line-height: 1 !important;
  }

  body .version.active nav.nav .site-main-links,
  body .version.active nav.nav .product-page-main-links {
    display: none !important;
    position: fixed !important;
    top: 76px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    max-height: calc(100vh - 76px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    margin: 0 !important;
    padding: 18px 24px 24px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    background: rgba(6,10,20,.988) !important;
    border-top: 1px solid rgba(200,169,110,.22) !important;
    border-bottom: 1px solid rgba(200,169,110,.22) !important;
    box-shadow: 0 24px 42px rgba(0,0,0,.34) !important;
    z-index: 9100 !important;
    list-style: none !important;
    transform: none !important;
  }

  body .version.active nav.nav .site-main-links.site-mobile-open,
  body .version.active nav.nav .site-main-links.mobile-open,
  body .version.active nav.nav .product-page-main-links.site-mobile-open,
  body .version.active nav.nav .product-page-main-links.mobile-open {
    display: flex !important;
  }

  body .version.active nav.nav .site-main-links > li,
  body .version.active nav.nav .product-page-main-links > li {
    width: 100% !important;
    list-style: none !important;
  }

  body .version.active nav.nav .site-main-links a,
  body .version.active nav.nav .product-page-main-links a,
  body .version.active nav.nav .product-menu-trigger {
    width: 100% !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .35em !important;
    padding: 13px 0 !important;
    border-bottom: 1px solid rgba(200,169,110,.25) !important;
    color: rgba(255,255,255,.84) !important;
    text-decoration: none !important;
    white-space: normal !important;
    background: transparent !important;
  }

  body .version.active nav.nav .product-site-menu > .site-product-dropdown {
    position: static !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 8px 0 !important;
    padding: 6px 0 8px 18px !important;
    background: rgba(15,32,64,.74) !important;
    border: 0 !important;
    border-left: 2px solid rgba(200,169,110,.42) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  body .version.active nav.nav .product-site-menu.product-menu-open > .site-product-dropdown,
  body .version.active nav.nav .product-site-menu.product-submenu-open > .site-product-dropdown,
  body .version.active nav.nav .product-site-menu.open > .site-product-dropdown {
    display: flex !important;
    flex-direction: column !important;
  }

  body .version.active nav.nav .site-product-dropdown a {
    min-height: 40px !important;
    padding: 10px 0 !important;
    border-bottom: 0 !important;
    white-space: normal !important;
  }

  body .version.active .hero {
    padding-top: 108px !important;
  }
}

@media (max-width: 380px) {
  body .version.active nav.nav {
    padding-left: 8px !important;
    padding-right: 8px !important;
    gap: 4px !important;
  }
  body .version.active nav.nav .nav-logo {
    flex-basis: 76px !important;
    width: 76px !important;
    min-width: 76px !important;
    max-width: 76px !important;
    font-size: .72rem !important;
    letter-spacing: .02em !important;
  }
  body .version.active nav.nav .nav-cta.nav-inquiry {
    flex-basis: 62px !important;
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    font-size: .53rem !important;
  }
  body.zh-mode .version.active nav.nav .nav-cta.nav-inquiry {
    font-size: .62rem !important;
  }
  body .version.active nav.nav .lang-select {
    flex-basis: 58px !important;
    width: 58px !important;
    min-width: 58px !important;
  }
  body .version.active nav.nav .product-mobile-toggle {
    flex-basis: 36px !important;
    width: 36px !important;
    min-width: 36px !important;
  }
}

/* =========================================================
   EBOT VERIFIED HOTFIX 20260724
   Fixes: desktop home text-left/image-right, language display,
   latest news card fallback, company timeline, product mobile nav/logo.
   ========================================================= */

/* Language: only one language visible. Do not force block elements to inline. */
body:not(.zh-mode) .zh-content,
body.zh-mode .en-content { display: none !important; }
body:not(.zh-mode) .en-content,
body.zh-mode .zh-content { display: revert !important; }
body:not(.zh-mode) .nav-cta.en-content,
body.zh-mode .nav-cta.zh-content,
body:not(.zh-mode) .btn-primary.en-content,
body.zh-mode .btn-primary.zh-content,
body:not(.zh-mode) .btn-outline.en-content,
body.zh-mode .btn-outline.zh-content { display: inline-flex !important; }
body:not(.zh-mode) span.en-content,
body.zh-mode span.zh-content { display: inline !important; }
body:not(.zh-mode) a.en-content,
body.zh-mode a.zh-content { display: inline-flex !important; }

/* Desktop home hero: text on the LEFT, image on the RIGHT */
@media (min-width: 901px) {
  body.page-home .hero {
    position: relative !important;
    min-height: 860px !important;
    height: auto !important;
    padding: 150px clamp(60px, 6vw, 110px) 100px !important;
    display: grid !important;
    grid-template-columns: minmax(460px, 0.92fr) minmax(520px, 1.08fr) !important;
    gap: clamp(64px, 7vw, 120px) !important;
    align-items: center !important;
    overflow: hidden !important;
    background: var(--navy, #071426) !important;
  }
  body.page-home .hero-bg,
  body.page-home .hero-overlay { display: none !important; }
  body.page-home .hero-content {
    position: relative !important;
    z-index: 2 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 680px !important;
    padding: 0 !important;
    margin: 0 !important;
    justify-self: start !important;
    text-align: left !important;
  }
  body.page-home .home-hero-photo {
    position: relative !important;
    z-index: 1 !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: min(620px, 68vh) !important;
    display: block !important;
    justify-self: stretch !important;
    align-self: center !important;
    margin: 0 !important;
    padding: 0 !important;
    inset: auto !important;
  }
  body.page-home .home-hero-photo-frame {
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    clip-path: polygon(14% 0, 100% 0, 100% 100%, 0 100%) !important;
    background: rgba(255,255,255,.04) !important;
  }
  body.page-home .home-hero-photo-frame::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(7,20,38,.08), rgba(7,20,38,.72)) !important;
    pointer-events: none !important;
  }
  body.page-home .home-hero-photo-frame img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    opacity: .68 !important;
  }
  body.page-home .hero-overline {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    white-space: nowrap !important;
    margin-bottom: 28px !important;
  }
  body.page-home .hero-title {
    font-size: clamp(4rem, 6.4vw, 7.2rem) !important;
    line-height: .98 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 28px !important;
    max-width: 680px !important;
  }
  body.page-home .hero-subtitle {
    max-width: 650px !important;
    font-size: clamp(.96rem, 1.05vw, 1.12rem) !important;
    line-height: 1.85 !important;
    margin: 0 0 34px !important;
  }
  body.page-home .hero-btns {
    display: flex !important;
    gap: 18px !important;
    flex-wrap: wrap !important;
  }
  body.page-home .hero-btns a {
    width: auto !important;
    min-width: 170px !important;
    justify-content: center !important;
  }
  body.page-home .hero-scroll { right: 54px !important; bottom: 60px !important; }
}

/* About intro text must not be clipped by fixed nav */
@media (min-width: 901px) {
  body.page-about .page-intro,
  body.page-technology .page-intro,
  body.page-contact .page-intro,
  body.page-team .page-intro {
    padding-top: 170px !important;
    padding-bottom: 82px !important;
  }
  body.page-about .page-intro-inner { max-width: 1180px !important; }
  body.page-about .page-intro .section-title,
  body.page-contact .page-intro .section-title,
  body.page-technology .page-intro .section-title,
  body.page-team .page-intro .section-title {
    font-size: clamp(3.2rem, 5vw, 5.6rem) !important;
    line-height: 1.08 !important;
    margin: 0 0 22px !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
  }
}

/* Company timeline: restore card layout */
.company-timeline-section {
  background: var(--navy, #071426) !important;
  padding: clamp(90px, 10vw, 150px) clamp(44px, 7vw, 120px) !important;
  border-top: 1px solid rgba(201,168,76,.16) !important;
  border-bottom: 1px solid rgba(201,168,76,.16) !important;
}
.company-timeline-layout {
  width: min(1360px, 100%) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(300px, .55fr) minmax(0, 1fr) !important;
  gap: clamp(48px, 7vw, 92px) !important;
  align-items: start !important;
}
.company-timeline-section .section-title {
  font-size: clamp(2.8rem, 4.7vw, 5.4rem) !important;
  line-height: 1.08 !important;
  margin-bottom: 20px !important;
}
.company-timeline-section .section-body {
  max-width: 520px !important;
  color: rgba(255,255,255,.66) !important;
}
.company-timeline {
  position: relative !important;
  display: grid !important;
  gap: 28px !important;
  padding-left: 70px !important;
}
.company-timeline::before {
  content: '' !important;
  position: absolute !important;
  left: 25px !important;
  top: 24px !important;
  bottom: 24px !important;
  width: 1px !important;
  background: rgba(201,168,76,.42) !important;
}
.timeline-item {
  position: relative !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
}
.timeline-dot {
  position: absolute !important;
  left: -70px !important;
  top: 8px !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(201,168,76,.68) !important;
  background: var(--navy-mid, #102240) !important;
  color: var(--gold-light, #e8c97a) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font: 700 .78rem/1 'Cormorant Garamond','Noto Serif TC',serif !important;
  letter-spacing: .08em !important;
  z-index: 2 !important;
}
.timeline-card {
  grid-column: 2 !important;
  width: 100% !important;
  min-height: 128px !important;
  padding: 28px 34px !important;
  background: rgba(16,34,62,.70) !important;
  border: 1px solid rgba(201,168,76,.24) !important;
  border-radius: 10px !important;
  box-shadow: 0 20px 40px rgba(0,0,0,.12) !important;
}
.timeline-date {
  display: block !important;
  color: var(--gold-light, #e8c97a) !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  font-size: .84rem !important;
  margin-bottom: 10px !important;
}
.timeline-title {
  display: block !important;
  color: #fff !important;
  font-family: 'Noto Serif TC','Cormorant Garamond',serif !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin-bottom: 10px !important;
}
.timeline-desc {
  display: block !important;
  color: rgba(255,255,255,.62) !important;
  font-size: .94rem !important;
  line-height: 1.75 !important;
  margin: 0 !important;
}

/* Keep latest-news card styling even if browser loads old defaults */
.latest-news-section a,
.latest-news-section a:visited { color: inherit !important; text-decoration: none !important; }
.latest-news-inner.compact-news-layout { display: grid !important; }
.compact-news-grid { display: grid !important; }
.compact-news-card { text-decoration: none !important; color: rgba(255,255,255,.84) !important; }
.compact-news-card * { text-decoration: none !important; }

@media (max-width: 900px) {
  body.page-home .hero {
    height: auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #071426 !important;
  }
  body.page-home .home-hero-photo {
    order: 1 !important;
    position: relative !important;
    width: 100% !important;
    height: 300px !important;
    display: block !important;
  }
  body.page-home .hero-content {
    order: 2 !important;
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    padding: 46px 28px 64px !important;
  }
  body.page-home .hero-title { font-size: clamp(3.2rem, 12vw, 5rem) !important; line-height: 1.08 !important; }
  .company-timeline-section { padding: 70px 24px !important; }
  .company-timeline-layout { display: block !important; }
  .company-timeline { margin-top: 38px !important; padding-left: 0 !important; gap: 18px !important; }
  .company-timeline::before { display: none !important; }
  .timeline-item { display: block !important; }
  .timeline-dot {
    position: static !important;
    width: 44px !important;
    height: 44px !important;
    margin-bottom: 12px !important;
  }
  .timeline-card { grid-column: auto !important; padding: 22px !important; min-height: 0 !important; }
}

/* Product pages: Quicker logo and menu stability */
@media (max-width: 900px) {
  .nav-logo,
  .lang-logo {
    font-size: clamp(.8rem, 4.6vw, 1.04rem) !important;
    letter-spacing: .11em !important;
    max-width: 104px !important;
    min-width: 92px !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
  }
  .nav-cta.nav-inquiry::after { content: none !important; display: none !important; }
  .nav-cta.nav-inquiry {
    width: auto !important;
    min-width: 68px !important;
    max-width: 86px !important;
    height: 44px !important;
    padding: 0 10px !important;
    font-size: .62rem !important;
    letter-spacing: .01em !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-align: center !important;
    justify-content: center !important;
  }
  .product-mobile-toggle { display: inline-flex !important; }
  .nav .site-main-links,
  nav .site-main-links,
  .product-page-main-links {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 20px 28px 28px !important;
    margin: 0 !important;
    background: rgba(8,12,22,.985) !important;
    border-top: 1px solid rgba(0,212,255,.2) !important;
    border-bottom: 1px solid rgba(0,212,255,.2) !important;
    z-index: 9999 !important;
  }
  .nav .site-main-links.site-mobile-open,
  nav .site-main-links.site-mobile-open,
  .product-page-main-links.site-mobile-open,
  .nav .site-main-links.mobile-open,
  nav .site-main-links.mobile-open,
  .product-page-main-links.mobile-open {
    display: flex !important;
  }
  .site-main-links li,
  .product-page-main-links li { list-style: none !important; width: 100% !important; }
  .site-main-links a,
  .product-page-main-links a {
    display: flex !important;
    align-items: center !important;
    min-height: 48px !important;
    color: var(--text, #e8eaf2) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    text-decoration: none !important;
  }
  .site-product-dropdown {
    display: none !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 8px 0 8px 16px !important;
    background: rgba(0,212,255,.06) !important;
    border: 1px solid rgba(0,212,255,.15) !important;
    box-shadow: none !important;
  }
  .product-site-menu.product-menu-open > .site-product-dropdown,
  .product-site-menu.open > .site-product-dropdown,
  .product-site-menu.product-submenu-open > .site-product-dropdown { display: block !important; }
}


/* ==== EBOT FINAL CASCADE GUARD 20260724 ==== */
.reveal { opacity: 1 !important; transform: none !important; }
body.zh-mode .en-content,
body:not(.zh-mode) .zh-content { display: none !important; visibility: hidden !important; }
body:not(.zh-mode) .en-content,
body.zh-mode .zh-content { visibility: visible !important; }


/* ==== EBOT FINAL VISIBILITY GUARD 20260724 ==== */
body.page-home .hero-content { opacity: 1 !important; transform: none !important; animation: none !important; }
body.page-home .hero-title { color: var(--white, #ffffff) !important; }
body.page-home .hero-title em { color: var(--gold-light, #e8c97a) !important; -webkit-text-fill-color: var(--gold-light, #e8c97a) !important; }


/* ==== EBOT LAST PATCH ADDENDUM: product-page nav compatibility ==== */
@media (max-width: 900px) {
  body nav { position: relative !important; overflow: visible !important; }
  body nav .product-mobile-toggle,
  body nav .nav-toggle { display: inline-flex !important; }
  body nav .site-main-links,
  body nav .product-page-main-links,
  body nav .nav-links {
    display: none !important;
  }
  body nav .site-main-links.mobile-open,
  body nav .site-main-links.site-mobile-open,
  body nav .site-main-links.open,
  body nav .product-page-main-links.mobile-open,
  body nav .product-page-main-links.site-mobile-open,
  body nav .product-page-main-links.open,
  body nav .nav-links.mobile-open,
  body nav .nav-links.site-mobile-open,
  body nav .nav-links.open {
    display: flex !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 22px 28px 30px !important;
    margin: 0 !important;
    background: rgba(8,12,22,.985) !important;
    border-top: 1px solid rgba(201,168,76,.18) !important;
    border-bottom: 1px solid rgba(201,168,76,.18) !important;
    box-shadow: 0 26px 45px rgba(0,0,0,.28) !important;
    z-index: 9999 !important;
  }
  body nav .site-main-links.mobile-open > li,
  body nav .site-main-links.site-mobile-open > li,
  body nav .product-page-main-links.mobile-open > li,
  body nav .product-page-main-links.site-mobile-open > li,
  body nav .nav-links.mobile-open > li,
  body nav .nav-links.site-mobile-open > li {
    width: 100% !important;
    list-style: none !important;
  }
  body nav .site-main-links.mobile-open a,
  body nav .site-main-links.site-mobile-open a,
  body nav .product-page-main-links.mobile-open a,
  body nav .product-page-main-links.site-mobile-open a,
  body nav .nav-links.mobile-open a,
  body nav .nav-links.site-mobile-open a,
  body nav .nav-dropbtn,
  body nav .product-menu-trigger {
    min-height: 48px !important;
    color: var(--text,#e8eaf2) !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
    text-decoration: none !important;
  }
}

/* ==== EBOT ABOUT INSERT - PRESERVE ORIGINAL LAYOUT 20260819 ==== */
.ebot-about-insert {
  margin-top: 30px !important;
  padding-top: 28px !important;
  border-top: 1px solid rgba(201,168,76,0.20) !important;
}
.ebot-about-insert-title {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
  font-size: clamp(1.35rem, 2vw, 1.8rem) !important;
  font-weight: 400 !important;
  color: var(--gold-light) !important;
  margin: 0 0 18px !important;
  letter-spacing: .01em !important;
}
.ebot-about-insert .section-body {
  margin-bottom: 16px !important;
}
.ebot-about-insert .section-body strong {
  color: var(--gold-light) !important;
  font-weight: 700 !important;
}
.ebot-core-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 22px 0 22px !important;
}
.ebot-core-card {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 12px !important;
  padding: 18px 16px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(201,168,76,0.22) !important;
  background: rgba(255,255,255,0.035) !important;
}
.ebot-core-letter {
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--gold-light) !important;
  color: var(--navy) !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}
.ebot-core-card h4 {
  margin: 0 0 7px !important;
  color: var(--white) !important;
  font-size: .88rem !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
}
.ebot-core-card p {
  margin: 0 !important;
  color: rgba(255,255,255,0.62) !important;
  font-size: .82rem !important;
  line-height: 1.65 !important;
  font-weight: 300 !important;
}
@media (max-width: 900px) {
  .ebot-core-grid {
    grid-template-columns: 1fr !important;
  }
  .ebot-about-insert {
    margin-top: 24px !important;
    padding-top: 24px !important;
  }
}

/* ==== EBOT ABOUT CORE SECTION PLACEMENT 20260819 ==== */
.about > .ebot-about-core-section {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin-top: clamp(28px, 4vw, 56px) !important;
  padding-top: clamp(42px, 5vw, 68px) !important;
  border-top: 1px solid rgba(201,168,76,0.18) !important;
}
.about > .ebot-about-core-section .ebot-about-insert {
  max-width: min(1180px, 100%) !important;
  margin: 0 auto !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}
.about > .ebot-about-core-section .ebot-about-insert-title {
  font-size: clamp(1.6rem, 2.6vw, 2.35rem) !important;
}
@media (max-width: 900px) {
  .about > .ebot-about-core-section {
    margin-top: 10px !important;
    padding-top: 34px !important;
  }
}
