/* XSARCH visual layer. Loaded after either original theme colour stylesheet. */
.xs-site { --xs-ink:#152c3b; --xs-muted:#63727b; --xs-gold:#e7bb70; --xs-line:#dce3e5; scroll-behavior:smooth; scroll-padding-top:100px; }
.xs-site body { margin:0; background:#f7f8f8; color:var(--xs-ink); font-family:"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif; font-size:15px; line-height:1.7; word-break:normal; overflow-wrap:break-word; transition:none; }
.xs-site *, .xs-site *::before, .xs-site *::after { box-sizing:border-box; }
.xs-site a { color:inherit; }
.xs-site a:hover { color:#96703a; }
.xs-site a:focus-visible,.xs-site button:focus-visible { outline:3px solid #bd882e; outline-offset:5px; }
.xs-site .wrap { width:calc(100% - 64px); max-width:1200px; margin-left:auto; margin-right:auto; }
.xs-site .tlheader { position:sticky; top:0; height:auto; padding:0; background:#fff; border-bottom:1px solid var(--xs-line); box-shadow:none; z-index:100; transition:none; }
.xs-site .header { min-height:82px; display:flex; align-items:center; gap:28px; flex-wrap:wrap; padding-top:12px; padding-bottom:12px; }
.xs-site .logo { float:none; flex:0 0 180px; width:180px; margin:0; }
.xs-site .logo a { width:180px; height:50px; margin:0; background-position:left center; }
.xs-site .nav { float:none; margin-left:auto; line-height:1.5; max-width:100%; }
.xs-site .nav .navbar { display:flex; align-items:center; flex-wrap:wrap; gap:6px; padding:0; margin:0; }
.xs-site .nav li { padding:0; font-size:14px; }
.xs-site .nav li a { display:block; padding:11px 14px; color:var(--xs-ink); border-radius:6px; }
.xs-site .nav li a:hover,.xs-site .nav li.active>a { color:#81602d; background:#f6f2ea; }
.xs-site .nav li ul { min-width:180px; padding:8px; border:1px solid var(--xs-line); border-radius:8px; box-shadow:0 14px 30px #152c3b12; }
.xs-site .nav li:focus-within>ul { display:block; }
.xs-site .xs-menu-toggle { display:none; border:1px solid var(--xs-line); border-radius:6px; padding:9px 12px; color:var(--xs-ink); background:white; font:inherit; cursor:pointer; }
.xs-site .xs-hero { color:#fff; background:#102a3a; overflow:hidden; position:relative; }
.xs-site .xs-hero-grid { display:grid; grid-template-columns:1fr 1.05fr; gap:44px; align-items:center; min-height:530px; padding-top:56px; padding-bottom:56px; }
.xs-site .xs-eyebrow { margin:0 0 25px; font-size:12px; letter-spacing:2.2px; color:#c5d2d9; display:flex; align-items:center; gap:10px; }
.xs-site .xs-eyebrow>span { width:7px; height:7px; border-radius:50%; background:var(--xs-gold); }
.xs-site .xs-hero h1 { font-size:clamp(32px,3.7vw,50px); line-height:1.35; letter-spacing:-1px; font-weight:650; margin:0 0 22px; color:#fff; }
.xs-site .xs-hero h1 em { font-style:normal; color:var(--xs-gold); }
.xs-site .xs-hero-intro { color:#bccbd4; font-size:16px; line-height:1.9; margin:0 0 30px; }
.xs-site .xs-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.xs-site .xs-button { display:inline-flex; gap:22px; align-items:center; justify-content:center; padding:13px 21px; border:1px solid transparent; border-radius:5px; font-size:14px; font-weight:600; transition:background .2s,transform .2s; }
.xs-site .xs-button:hover { transform:translateY(-2px); }
.xs-site .xs-button-primary { background:var(--xs-gold); color:#192f3b; }
.xs-site .xs-button-primary:hover { background:#f2ce90; color:#192f3b; }
.xs-site .xs-button-secondary { color:#edf3f6; border-color:#476070; }
.xs-site .xs-button-secondary:hover { background:#203d4f; color:#fff; }
.xs-site .xs-hero-meta { display:flex; flex-wrap:wrap; gap:18px; margin-top:30px; font-size:12px; color:#adc0cb; }
.xs-site .xs-hero-meta span+span { border-left:1px solid #4c6270; padding-left:18px; }
.xs-site .xs-hero-art { border:1px solid #476070; border-radius:10px; background:#153242; overflow:hidden; transform:rotate(-2deg); box-shadow:0 24px 60px #06172240; }
.xs-site .xs-art-top,.xs-site .xs-art-bottom { display:flex; justify-content:space-between; align-items:center; padding:16px 20px; font-size:10px; letter-spacing:1.5px; color:#b4c6d0; }
.xs-site .xs-art-top { border-bottom:1px solid #385363; }
.xs-site .xs-art-top i { display:inline-block; width:6px; height:6px; background:var(--xs-gold); border-radius:50%; margin-right:8px; }
.xs-site .xs-hero-art img { display:block; width:100%; height:auto; }
.xs-site .xs-art-bottom { border-top:1px solid #385363; font-size:11px; letter-spacing:1px; }
.xs-site .main { margin-top:42px; }
.xs-site #xs-products { scroll-margin-top:100px; }
.xs-site .mainbody { width:100%; }
.xs-site .home_about { padding:20px 0 0; margin-bottom:48px; background:transparent; box-shadow:none; border:0; }
.xs-site .xs-section-label { font-size:11px; color:#8c6a35; letter-spacing:2px; margin:0 0 10px; font-weight:650; }
.xs-site .home_about .title { text-align:left; margin-bottom:28px; }
.xs-site .home_about .title h2 { color:var(--xs-ink); font-size:29px; line-height:1.4; font-weight:650; margin:0 0 10px; }
.xs-site .home_about .title p { color:var(--xs-muted); font-size:15px; }
.xs-site .home_about>ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; text-align:left; padding:0; margin:0; width:100%; }
.xs-site .home_about li { display:flex; flex-direction:column; width:auto; margin:0; border:1px solid var(--xs-line); border-radius:10px; text-align:left; box-shadow:0 4px 16px #152c3b04; overflow:hidden; transition:transform .2s,box-shadow .2s,border-color .2s; }
.xs-site .home_about li:hover { transform:translateY(-4px); border-color:#bcad91; box-shadow:0 12px 30px #152c3b0d; }
.xs-site .home_about li>a { display:flex; flex-direction:column; flex:1; color:inherit; }
.xs-site .home_about li .img { width:100%; height:240px; padding:25px 40px; display:flex; justify-content:center; align-items:center; background:#edf1f1; border-bottom:1px solid var(--xs-line); }
.xs-site .home_about li .img img { width:auto; height:auto; max-width:100%; max-height:170px; object-fit:contain; }
.xs-site .home_about li .info { padding:27px 30px 25px; display:flex; flex-direction:column; flex:1; }
.xs-site .home_about li .info h3 { color:var(--xs-ink); font-size:23px; line-height:1.5; font-weight:650; text-align:left; margin:0 0 12px; }
.xs-site .home_about li .info p { color:var(--xs-muted); font-size:14px; line-height:1.9; margin:0 0 22px; }
.xs-site .xs-product-link { display:flex; justify-content:space-between; align-items:center; color:#8b652e; font-size:13px; font-weight:650; border-top:1px solid #e8ecee; padding-top:17px; margin-top:auto; }
.xs-site .xs-product-link span { font-size:20px; }
.xs-site .main_c { width:calc(100% - 320px); }
.xs-site .sidebar { width:290px; }
.xs-site .post,.xs-site .list_small,.xs-site .list_big,.xs-site .list_img_more,.xs-site .widget,.xs-site .catebox { border:1px solid var(--xs-line); border-radius:9px; box-shadow:none; background:#fff; }
.xs-site .post { padding:30px; }
.xs-site .post .title h1 { color:var(--xs-ink); font-size:30px; line-height:1.5; }
.xs-site .post .title span { color:var(--xs-muted); }
.xs-site .article_content { font-size:16px; line-height:1.95; overflow-wrap:anywhere; }
.xs-site .article_content img,.xs-site .article_content video,.xs-site .article_content iframe { max-width:100%; }
.xs-site .article_content img { height:auto; }
.xs-site .article_content pre { overflow:auto; max-width:100%; }
.xs-site .article_content table { display:block; max-width:100%; overflow:auto; }
.xs-site .article_content a { color:#2d657a; text-decoration:underline; text-underline-offset:3px; }
.xs-site .list_image>ul { display:flex; flex-wrap:wrap; gap:20px; }
.xs-site .list_image>ul>li { width:calc((100% - 40px)/3); margin:0; border:1px solid var(--xs-line); border-radius:8px; overflow:hidden; box-shadow:none; }
.xs-site .pagebar a,.xs-site .pagebar span { border-radius:5px; }
.xs-site #footer { margin-top:60px; background:#102a3a; padding:42px 0 32px; color:#c4d0d7; }
.xs-site .xs-footer-brand { display:flex; gap:22px; align-items:center; flex-wrap:wrap; padding-bottom:25px; margin-bottom:24px; border-bottom:1px solid #36505f; }
.xs-site .xs-footer-brand strong { font-size:23px; color:#fff; font-weight:600; }
.xs-site .xs-footer-brand>span { font-size:13px; color:#aec1cc; }
.xs-site .footer .fnav { margin-bottom:18px; padding-right:170px; }
.xs-site .footer .fnav a { font-size:13px; margin-right:24px; color:#dce5ea; line-height:2.2; }
.xs-site .footer .copyright,.xs-site .footer .copyright a { color:#a9bdc9; font-size:12px; line-height:1.9; }
.xs-site .footer .fcontact { top:90px; right:0; }
.xs-site #goTop { right:22px; bottom:22px; left:auto; margin:0; background:#274353; border-radius:6px; width:42px; height:42px; line-height:42px; }
@media (max-width:1050px) {
  .xs-site .header { gap:12px; }
  .xs-site .nav li a { padding:10px; }
  .xs-site .xs-hero-grid { gap:28px; }
  .xs-site .main_c,.xs-site .sidebar { width:100%; float:none; }
  .xs-site .sidebar { margin-top:24px; }
}
@media (max-width:850px) {
  .xs-site .wrap { width:calc(100% - 40px); }
  .xs-site .header { min-height:70px; justify-content:space-between; padding:10px 0; }
  .xs-site .logo,.xs-site .logo a { width:154px; flex-basis:154px; }
  .xs-site .logo a { height:45px; }
  .xs-site .xs-menu-toggle:not([hidden]) { display:block; }
  .xs-site .nav { display:block; position:static; width:100%; margin:0; box-shadow:none; background:white; }
  .xs-site .nav.xs-nav-enhanced { display:none !important; }
  .xs-site .nav.xs-nav-enhanced.xs-nav-open { display:block !important; }
  .xs-site .nav .navbar { display:block; padding:8px 0; border-top:1px solid var(--xs-line); }
  .xs-site .nav li { display:block; }
  .xs-site .nav li ul,.xs-site .nav li ul ul { display:block; position:static; box-shadow:none; border:0; padding:0 0 0 16px; background:#f7f8f8; }
  .xs-site .nav ul li li { display:block; }
  .xs-site .nav li a::after { display:none; }
  .xs-site .mnav { display:none !important; }
  .xs-site .xs-hero-grid { grid-template-columns:1fr; padding-top:44px; padding-bottom:44px; gap:36px; }
  .xs-site .xs-hero h1 { font-size:42px; }
  .xs-site .xs-hero-art { max-width:550px; width:100%; margin:0 auto; transform:none; }
  .xs-site .xs-hero-art img { max-height:300px; object-fit:contain; }
  .xs-site .home_about li .img { height:190px; padding:20px; }
  .xs-site .home_about li .info { padding:22px; }
  .xs-site .home_about li .info h3 { font-size:21px; }
}
@media (max-width:600px) {
  .xs-site .wrap { width:calc(100% - 36px); }
  .xs-site .xs-hero h1 { font-size:36px; }
  .xs-site .xs-hero-intro { font-size:14px; }
  .xs-site .xs-eyebrow { font-size:10px; margin-bottom:20px; }
  .xs-site .xs-button { padding:12px 15px; gap:14px; font-size:13px; }
  .xs-site .xs-hero-meta { gap:12px; font-size:11px; margin-top:24px; }
  .xs-site .xs-hero-meta span+span { padding-left:12px; }
  .xs-site .xs-art-top,.xs-site .xs-art-bottom { padding:12px 14px; letter-spacing:.5px; }
  .xs-site .main { margin-top:28px; }
  .xs-site .home_about { padding-top:12px; }
  .xs-site .home_about .title h2 { font-size:25px; }
  .xs-site .home_about .title p { font-size:13px; }
  .xs-site .home_about>ul { grid-template-columns:1fr; gap:20px; }
  .xs-site .home_about li .img { height:210px; }
  .xs-site .post { padding:20px 16px; }
  .xs-site .post .title h1 { font-size:24px; }
  .xs-site .article_content { font-size:15px; }
  .xs-site .list_image>ul>li { width:100%; }
  .xs-site .xs-footer-brand { gap:8px; align-items:flex-start; flex-direction:column; }
  .xs-site .footer .fnav { padding-right:0; }
  .xs-site .footer .fcontact { position:static; margin-top:20px; }
  .xs-site #footer { margin-top:36px; }
}
@media (prefers-reduced-motion:reduce) {
  .xs-site { scroll-behavior:auto; }
  .xs-site *, .xs-site *::before,.xs-site *::after { transition:none !important; animation:none !important; }
}

/* Upcoming product: decorative point field, no unavailable product link. */
.xs-site .xs-point-cloud { display:block; width:150px; height:150px; border-radius:24px; background-color:#153242; background-image:radial-gradient(circle,#e7bb70 2px,transparent 3px); background-size:15px 15px; border:10px solid #153242; box-shadow:0 8px 18px #152c3b18; transform:rotate(-6deg); }
.xs-site .home_about li.xs-coming-soon:hover { transform:none; border-color:var(--xs-line); box-shadow:0 4px 16px #152c3b04; }
@media (min-width:601px) and (max-width:850px) { .xs-site .home_about>ul { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Approved XSARCH logo: fit the artwork, allowing for transparent canvas margins. */
.xs-site .logo { flex-basis:220px; width:220px; }
.xs-site .logo a { width:220px; height:56px; background-size:100% auto; background-position:center; }
@media (max-width:850px) {
  .xs-site .logo { flex-basis:180px; width:180px; }
  .xs-site .logo a { width:180px; height:48px; }
}
