/* ===== Bowlea New Theme v3 ===== */
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",-apple-system,BlinkMacSystemFont,sans-serif;
  color:#2b2b2b; background:#fff; line-height:1.8; font-size:17px;
  -webkit-font-smoothing:antialiased; width:100%; overflow-x:hidden;
}
a { text-decoration:none; color:inherit; transition:color .25s; }
img { max-width:100%; display:block; }
.container, .wrap { max-width:1240px; margin:0 auto; padding:0 32px; }

/* Top Bar */
.topbar { background:#111; color:rgba(255,255,255,.6); font-size:14px; padding:8px 0; }
.topbar .container, .topbar .wrap { display:flex; justify-content:space-between; align-items:center; }
.topbar .reg b { color:#c9a961; font-weight:500; }
.topbar .lang a { margin:0 8px; cursor:pointer; }
.topbar .lang a.on { color:#c9a961; }

/* Logo + Nav */
.site-header { background:#fff; border-bottom:1px solid #e8e8e8; position:sticky; top:0; z-index:100; }
.site-header .container, .site-header .wrap { display:flex; align-items:center; justify-content:space-between; height:78px !important; }
.site-logo { display:flex; align-items:center; margin-left:530px; }
.site-logo img { height:42px !important; width:auto !important; max-height:42px !important; }
.site-nav { display:flex !important; list-style:none !important; gap:2px !important; margin:0 !important; padding:0 !important; white-space:nowrap; flex-wrap:nowrap; }
.site-nav > li { position:relative; }
.site-nav > li > a { display:block; padding:10px 10px; font-size:15px; font-weight:400; color:#222; white-space:nowrap; }
.site-nav > li > a:hover, .site-nav > li.active > a, .site-nav > li.nav-hover > a { color:#c9a961; }
.site-nav .nav-sub {
  position:absolute; top:100%; left:0; background:#fff; min-width:210px;
  box-shadow:0 12px 32px rgba(0,0,0,.1); padding:8px 0;
  opacity:0; visibility:hidden; transform:translateY(8px); transition:all .25s;
  border-top:2px solid #c9a961; list-style:none;
}
.site-nav li:hover .nav-sub { opacity:1; visibility:visible; transform:translateY(0); }
.site-nav .nav-sub a { display:block; padding:9px 20px; font-size:15px; color:#555; }
.site-nav .nav-sub a:hover { background:#faf7f2; color:#c9a961; padding-left:24px; }

/* Hero Banner */
.hero-new {
  position:relative; height:380px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg,rgba(17,17,17,.55) 0%,rgba(17,17,17,.78) 100%);
  color:#fff; text-align:center; overflow:hidden;
}
.hero-new .hero-bg {
  position:absolute; inset:0; background-size:cover; background-position:center; z-index:0;
}
.hero-new h1 {
  font-size:42px; font-weight:600; letter-spacing:6px; margin-bottom:12px;
  font-family:"Noto Serif SC",Georgia,"Songti SC",serif;
}
.hero-new .en { font-size:14px; letter-spacing:6px; opacity:.75; text-transform:uppercase; margin-bottom:22px; }
.hero-new .line { width:46px; height:2px; background:#c9a961; margin:0 auto; }
.hero-new > .container { position:relative; z-index:1; }

/* Section Common */
section.block { padding:38px 0; }
.sec-head { text-align:center; margin-bottom:32px; }
.sec-head .en-tag { font-size:12px; letter-spacing:4px; color:#c9a961; text-transform:uppercase; display:block; margin-bottom:8px; }
.sec-head h2 { font-size:30px; font-weight:600; color:#111; letter-spacing:2px; font-family:"Noto Serif SC",Georgia,serif; }
.sec-head .line { width:32px; height:2px; background:#c9a961; margin:14px auto 0; }

/* About */
.about-sec { background:#faf9f6; }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:44px; align-items:center; }
.about-img { overflow:hidden; }
.about-img img { width:100%; height:300px; object-fit:cover; }
.about-text h3 { font-size:22px; color:#111; margin-bottom:16px; font-weight:600; line-height:1.5;  }
.about-text p { color:#555; margin-bottom:12px; text-align:justify; font-size:16px; line-height:1.9; }
.about-text .reg-box { margin-top:16px; padding:14px 18px; background:#fff; border-left:3px solid #c9a961; font-size:16px; color:#666;  }
.about-text .reg-box b { color:#111; }

/* Business cells */
.biz-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.biz-cell { padding:0; text-align:center; border-radius:6px; transition:all .3s; background:#fff; position:relative; overflow:hidden; box-shadow:0 2px 12px rgba(0,0,0,.08); }
.biz-cell:hover { transform:translateY(-6px); box-shadow:0 12px 32px rgba(0,0,0,.15); }
.biz-cell .biz-img { height:120px; display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.biz-cell .biz-icon { font-size:46px; color:#c9a961; font-family:Georgia,serif; font-weight:400; text-shadow:0 2px 8px rgba(0,0,0,.4); }
.biz-cell .cn { font-size:21px; color:#111; font-weight:600; margin-bottom:4px; letter-spacing:1px; padding:0 10px; }
.biz-cell .en { font-size:14px; color:#999; letter-spacing:2px; text-transform:uppercase; margin-top:4px; padding-bottom:20px; }
.biz-cell:hover .cn { color:#c9a961; }

/* News list */
.news-sec { background:#f0ece4; }
.news-list-new { max-width:900px; margin:0 auto; }
.news-row { display:flex; align-items:baseline; padding:14px 0; border-bottom:1px solid #e5e5e5; }
.news-row .date { flex-shrink:0; width:110px; color:#999; font-size:16px; font-family:Georgia,serif; }
.news-row h4 { font-size:16px; color:#2b2b2b; font-weight:400; line-height:1.6; }
.news-row:hover h4 { color:#c9a961; }
.center-btn { text-align:center; margin-top:28px; }
.btn-line { display:inline-block; padding:10px 36px; border:1px solid #111; color:#111; font-size:14px; letter-spacing:2px; transition:all .25s; }
.btn-line:hover { background:#111; color:#fff; }

/* CTA */
.cta-new { background:#111; color:#fff; text-align:center; padding:18px 0 14px !important; line-height:1.4 !important; }
.cta-new h3 { font-size:18px; font-weight:600; margin-bottom:6px; letter-spacing:2px; font-family:"Noto Serif SC",Georgia,serif; }
.cta-new p { opacity:1 !important; margin-bottom:8px !important; font-size:15px; color:#fff !important; font-weight:400 !important; line-height:1.6 !important; font-family:"Noto Serif SC",Georgia,serif; }
.cta-new .phone { font-size:18px; color:#c9a961; letter-spacing:2px; font-weight:600; font-family:"Noto Serif SC",Georgia,serif; }
.cta-new .email { margin-top:2px; opacity:1 !important; font-size:17px !important; color:#fff !important; font-weight:400 !important; font-family:Georgia,serif; letter-spacing:1px; }
.cta-new .copyright { margin-top:6px; opacity:.6; font-size:13px; color:#fff; font-family:"Noto Serif SC",Georgia,serif; }
.cta-new .copyright a { color:rgba(255,255,255,.6); }
.cta-new .copyright a:hover { color:#c9a961; }

/* Hide old footer */
.footer { display:none !important; }

/* Hide old elements */
.top.lg, .nav.clearfix, .banner, .index-bg, .index-prj, .index-about, .index-tz { display:none !important; }

/* Hamburger button */
.menu-toggle { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:8px; }
.menu-toggle span { display:block; width:24px; height:2px; background:#111; transition:.3s; }
body.menu-open .menu-toggle span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
body.menu-open .menu-toggle span:nth-child(2) { opacity:0; }
body.menu-open .menu-toggle span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.mobile-nav { display:none; }

/* Responsive - Tablet */
@media (max-width:1024px) {
  .container, .wrap { padding:0 20px; }
  section.block { padding:30px 0; }
}

/* Responsive - Mobile */
@media (max-width:760px) {
  .site-nav { display:none !important; }
  .menu-toggle { display:flex; }
  .mobile-nav { display:flex; flex-direction:column; position:fixed; top:0; right:-100%; width:280px; max-width:85vw; height:100vh; background:#111; z-index:10000; padding:80px 30px 30px; gap:0; transition:right .3s; overflow-y:auto; }
  body.menu-open .mobile-nav { right:0; }
  .mobile-nav a { display:block; padding:14px 0; color:#fff; text-decoration:none; font-size:17px; font-weight:600; border-bottom:1px solid #2a2a2a; }
  .mobile-nav a:active { color:#c9a961; }
  body.menu-open { overflow:hidden; }

  .container, .wrap { padding:0 16px; }
  section.block { padding:28px 0 !important; }

  .topbar { font-size:11px !important; padding:6px 0; }
  .topbar .reg { font-size:11px; }

  .site-header .site-logo img { height:36px; }
  .site-header { padding:10px 0; height:auto !important; }
  .site-logo { margin-left:0 !important; }
  .site-header .container { height:60px !important; }

  /* Hero */
  section[style*="padding:70px 0 50px"] { padding:40px 0 30px !important; }
  section[style*="padding:80px 0 60px"] { padding:40px 0 30px !important; }
  h1[style*="font-size:30px"] { font-size:22px !important; }
  h1[style*="font-size:36px"] { font-size:22px !important; }

  /* About section */
  .about-grid { grid-template-columns:1fr !important; gap:20px; }
  .about-text h3 { font-size:22px !important; }

  /* Business cards - 2x2 */
  .biz-grid { grid-template-columns:repeat(2,1fr) !important; gap:10px !important; }
  .biz-cell .cn { font-size:15px !important; }
  .biz-cell .en { font-size:11px !important; padding-bottom:12px; }

  /* IPO section - cards stack */
  #ipo .container > div[style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns:1fr !important; gap:12px !important; max-width:100% !important;
  }
  #ipo p { font-size:16px !important; line-height:1.7 !important; }
  #ipo h2 { font-size:26px !important; }

  /* Contact page */
  .container > div[style*="grid-template-columns:1.2fr 1fr"] {
    grid-template-columns:1fr !important; gap:20px !important;
  }
  img[style*="height:450px"] { height:220px !important; }
  img[style*="height:360px"] { height:220px !important; }
  img[style*="height:200px"] { height:140px !important; }

  /* Article content */
  section[style*="padding:60px 0"] > .container { padding:0 16px !important; }
  div[style*="padding:50px 55px"] { padding:24px 18px !important; }
  div[style*="padding:50px 55px"] p { font-size:16px !important; }

  /* List page - date block */
  .flex-shrink\:0 { width:80px !important; padding:12px 0 !important; }
  .flex-shrink\:0 div { font-size:14px !important; }

  /* Tables - horizontal scroll */
  table { font-size:12px !important; display:block; overflow-x:auto; white-space:nowrap; }

  /* CTA */
  .cta-new { padding:14px 16px 10px !important; }
  .cta-new p { font-size:14px !important; }

  /* Footer */
  footer { font-size:12px !important; padding:20px 16px !important; }

  /* Mobile font optimization - reduce boldness */
  body { -webkit-text-size-adjust:100%; }
  h1, h2, h3, h4 { font-weight:500 !important; -webkit-font-smoothing:antialiased; }
  .site-nav > li > a { font-weight:500 !important; }
  .about-text h3 { font-weight:600 !important; }
  .sec-head h2 { font-weight:600 !important; }
  .biz-cell .cn { font-weight:600 !important; }
  #ipo h2 { font-weight:500 !important; }
  #ipo p { font-weight:400 !important; }
  .mobile-nav a { font-weight:500 !important; }
  .news-row { font-weight:400 !important; }
  .news-row a { font-weight:400 !important; }
  .cta-new h3 { font-weight:500 !important; }
  section[style*="font-weight:400"] { font-weight:500 !important; }
  section[style*="font-weight:600"] { font-weight:500 !important; }
}

/* Article tables - global */
table { width:100% !important; border-collapse:collapse; margin:20px 0 !important; font-size:14px; table-layout:auto; }
table th { background:#111 !important; color:#fff !important; padding:12px 14px !important; text-align:left !important; font-weight:500 !important; font-size:13px; letter-spacing:1px; border:1px solid #111 !important; }
table td { padding:12px 14px !important; border:1px solid #e0e0e0 !important; color:#333 !important; vertical-align:top; }
table tr:nth-child(even) td { background:#f7f5f0 !important; }
table tr:hover td { background:#eee8dc !important; }

/* Pagination */
.pagination, div.pagination, ul.page-list { display:flex !important; justify-content:center; gap:8px; list-style:none; padding:0; margin:30px 0 !important; }
.pagination li, .pagination span, .pagination a, div.pagination *, ul.page-list * { display:inline-block !important; }
.pagination li a, .pagination li span, div.pagination a, div.pagination span, ul.page-list .page-list-item { display:inline-block; padding:8px 16px; background:#fff; color:#333; text-decoration:none; font-size:14px; border:1px solid #e0e0e0; }
.pagination li.active span, .pagination li.active a, div.pagination .active, div.pagination .current, ul.page-list .page-list-item.active { background:#111 !important; color:#c9a961 !important; border-color:#111 !important; }
.pagination li a:hover, div.pagination a:hover, ul.page-list .page-list-item:hover { background:#111; color:#fff; }
ul.page-list .page-list-item.disabled { opacity:.5; cursor:default; }


/* 正文图片响应式 */
.article-body img, .show-content img, .content img, .article-content img,
.show-detail img, .detail-content img, .cms-show img, .editor img {
  max-width: 100% !important;
  height: auto !important;
  display: block;
  margin: 16px auto;
  object-fit: contain;
}
