/* ============================================================
   gn-rail  —  嘉盛外汇返佣网 · 左侧栏目轨道 Shell 设计系统(第五套全新骨架)
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --gn-bg:#f5f4fb; --gn-bg-2:#ecebf6; --gn-card:#ffffff;
  --gn-ink:#1c1b2e; --gn-ink-2:#4a4860; --gn-ink-3:#8b89a3;
  --gn-line:#e6e4f1; --gn-line-2:#d2cfe6;
  --gn-brand:#6a3df0; --gn-brand-2:#5326cf; --gn-brand-soft:#ece7fe;
  --gn-rose:#ff4d6d; --gn-rose-soft:#ffe4ea;
  --gn-pos:#17a673; --gn-neg:#e5484d; --gn-star:#ffb020;
  --gn-side:248px; --gn-wrap:1080px;
  --gn-font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Roboto,system-ui,sans-serif;
  --gn-r:14px; --gn-r-sm:9px;
  --gn-sh:0 6px 20px rgba(28,27,46,.06);
  --gn-sh-lg:0 18px 46px rgba(28,27,46,.14);
}
html,body{width:100%;max-width:100%;overflow-x:clip}
body{font-family:var(--gn-font);background:var(--gn-bg);color:var(--gn-ink-2);line-height:1.7;-webkit-font-smoothing:antialiased}
img,video,iframe{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{font:inherit;color:inherit;border:none;background:none;cursor:pointer}
table{width:100%;border-collapse:collapse}

/* ===== Shell ===== */
.gn-shell{min-height:100vh}
.gn-main{margin-left:var(--gn-side);min-width:0}
.gn-wrap{max-width:var(--gn-wrap);margin:0 auto;padding:0 30px}

/* ===== 左侧固定轨道 ===== */
.gn-side{position:fixed;top:0;left:0;bottom:0;width:var(--gn-side);background:var(--gn-card);border-right:1px solid var(--gn-line);display:flex;flex-direction:column;z-index:200}
.gn-brand{display:flex;align-items:center;gap:10px;padding:22px 20px;border-bottom:1px solid var(--gn-line)}
.gn-brand img{width:38px;height:38px;border-radius:10px;object-fit:cover;flex-shrink:0}
.gn-brand b{font-size:17px;font-weight:800;color:var(--gn-ink);line-height:1.2;letter-spacing:-.3px}
.gn-snav{flex:1;padding:14px 12px}
.gn-snav-item{position:relative;margin-bottom:2px}
.gn-snav-link{display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:var(--gn-r-sm);font-size:14.5px;font-weight:600;color:var(--gn-ink-2);transition:background .18s,color .18s}
.gn-snav-link .ic{width:20px;text-align:center;font-size:16px;flex-shrink:0}
.gn-snav-item:hover>.gn-snav-link{background:var(--gn-brand-soft);color:var(--gn-brand-2)}
.gn-snav-item.has-fly>.gn-snav-link::after{content:"";margin-left:auto;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .2s}
.gn-snav-item.has-fly:hover>.gn-snav-link::after{transform:rotate(45deg)}
.gn-fly{position:fixed;top:76px;left:calc(var(--gn-side) + 8px);min-width:280px;max-width:330px;max-height:calc(100vh - 16px);overflow-y:auto;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);box-shadow:var(--gn-sh-lg);padding:12px;opacity:0;visibility:hidden;transform:translateX(-8px);transition:opacity .2s,transform .2s,visibility .2s;z-index:230}
.gn-fly::before{content:"";position:absolute;left:-14px;top:0;bottom:0;width:14px}
.gn-snav-item:hover>.gn-fly,.gn-snav-item:focus-within>.gn-fly{opacity:1;visibility:visible;transform:translateX(0)}
.gn-fly-h{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--gn-ink-3);padding:4px 10px 10px}
.gn-fly-a{display:flex;align-items:center;gap:10px;min-width:0;padding:9px 10px;border-radius:var(--gn-r-sm);transition:background .15s}
.gn-fly-a:hover{background:var(--gn-bg)}
.gn-fly-a img{width:30px;height:30px;border-radius:7px;background:var(--gn-bg);object-fit:contain;padding:3px;flex-shrink:0}
.gn-fly-a span{min-width:0}
.gn-fly-a b{display:block;font-size:13.5px;font-weight:700;color:var(--gn-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gn-fly-a em{font-style:normal;display:block;font-size:11.5px;color:var(--gn-ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gn-fly-chips{display:flex;flex-wrap:wrap;gap:6px;padding:10px 10px 2px;border-top:1px solid var(--gn-line);margin-top:6px}
.gn-fly-chips a{font-size:12px;color:var(--gn-ink-3);background:var(--gn-bg);padding:4px 10px;border-radius:var(--gn-r-sm)}
.gn-fly-chips a:hover{background:var(--gn-brand-soft);color:var(--gn-brand-2)}
.gn-side-cta{padding:16px;border-top:1px solid var(--gn-line);display:flex;flex-direction:column;gap:9px}

/* ===== 内容区顶部工具条 ===== */
.gn-utility{position:sticky;top:0;z-index:150;background:rgba(245,244,251,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--gn-line)}
.gn-utility-in{max-width:var(--gn-wrap);margin:0 auto;padding:11px 30px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.gn-utility-in .lt{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--gn-ink-3)}
.gn-pulse{width:7px;height:7px;border-radius:50%;background:var(--gn-pos);display:inline-block;box-shadow:0 0 0 3px rgba(23,166,115,.2)}
.gn-utility-in .rt{display:flex;align-items:center;gap:14px;font-size:12.5px;color:var(--gn-ink-3)}
.gn-utility-in .rt a:hover{color:var(--gn-brand-2)}

/* ===== 移动顶栏 + 底部 sheet ===== */
.gn-mtop{display:none;position:sticky;top:0;z-index:150;background:var(--gn-card);border-bottom:1px solid var(--gn-line);padding:11px 16px;align-items:center;justify-content:space-between}
.gn-mtop .gn-brand{padding:0;border:none}
.gn-mtop .gn-brand b{font-size:16px}
.gn-burger{width:42px;height:42px;border-radius:var(--gn-r-sm);background:var(--gn-brand-soft);display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.gn-burger span{width:19px;height:2px;border-radius:2px;background:var(--gn-brand-2)}
.gn-mask{position:fixed;inset:0;background:rgba(28,27,46,.5);opacity:0;visibility:hidden;transition:.3s;z-index:399}
.gn-mask.open{opacity:1;visibility:visible}
.gn-sheet{position:fixed;left:0;right:0;bottom:0;z-index:400;background:var(--gn-card);border-radius:22px 22px 0 0;transform:translateY(102%);transition:transform .38s cubic-bezier(.5,0,.2,1);max-height:86vh;overflow-y:auto;box-shadow:var(--gn-sh-lg)}
.gn-sheet.open{transform:translateY(0)}
.gn-sheet-grip{width:42px;height:5px;border-radius:3px;background:var(--gn-line-2);margin:12px auto 4px}
.gn-sheet-top{display:flex;align-items:center;justify-content:space-between;padding:8px 20px 14px;border-bottom:1px solid var(--gn-line)}
.gn-sheet-top b{font-size:15px;font-weight:800;color:var(--gn-ink)}
.gn-sheet-close{width:38px;height:38px;border-radius:var(--gn-r-sm);background:var(--gn-bg-2);color:var(--gn-ink);font-size:19px;display:flex;align-items:center;justify-content:center}
.gn-sheet-body{padding:14px 18px 30px}
.gn-m-link{display:block;font-size:15.5px;font-weight:700;color:var(--gn-ink);padding:13px 14px;border-radius:var(--gn-r-sm);background:var(--gn-bg);margin-bottom:8px}
.gn-m-grp{background:var(--gn-bg);border-radius:var(--gn-r-sm);margin-bottom:8px;overflow:hidden}
.gn-m-grp>button{width:100%;display:flex;align-items:center;justify-content:space-between;font-size:15.5px;font-weight:700;color:var(--gn-ink);padding:13px 14px}
.gn-m-grp>button::after{content:"+";font-size:20px;color:var(--gn-brand);transition:transform .25s}
.gn-m-grp.open>button::after{transform:rotate(45deg)}
.gn-m-sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.gn-m-grp.open .gn-m-sub{grid-template-rows:1fr}
.gn-m-subin{overflow:hidden;min-height:0}
.gn-m-sub a{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 14px 10px 20px;font-size:13.5px;color:var(--gn-ink-2);border-top:1px solid var(--gn-line);overflow-wrap:anywhere;word-break:break-word}
.gn-m-sub a img{width:24px;height:24px;border-radius:6px;background:var(--gn-card);object-fit:contain;padding:3px;flex-shrink:0}
.gn-m-sub a span{min-width:0;flex:1}
.gn-m-cta{display:block;text-align:center;margin-top:14px;padding:14px;background:var(--gn-brand);color:#fff;font-weight:700;border-radius:var(--gn-r-sm)}

/* 标题/按钮/标签 */
.gn-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--gn-brand-2);margin-bottom:13px}
.gn-eyebrow::before{content:"";width:18px;height:2px;background:var(--gn-rose);border-radius:2px}
.gn-htitle{font-size:clamp(23px,2.8vw,34px);font-weight:800;color:var(--gn-ink);line-height:1.2;letter-spacing:-.5px}
.gn-htitle em{font-style:normal;color:var(--gn-brand)}
.gn-sec{padding:clamp(40px,4.5vw,72px) 0}
.gn-sechead{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:30px}
.gn-lead{color:var(--gn-ink-3);font-size:15px;max-width:600px;margin-top:7px}
.gn-more{font-size:13.5px;font-weight:700;color:var(--gn-brand-2);white-space:nowrap}
.gn-more:hover{color:var(--gn-rose)}
.gn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:var(--gn-r-sm);font-weight:700;font-size:14px;transition:transform .15s,box-shadow .2s,background .2s,color .2s}
.gn-btn-brand{background:var(--gn-brand);color:#fff;box-shadow:0 8px 18px rgba(106,61,240,.28)}
.gn-btn-brand:hover{background:var(--gn-brand-2);transform:translateY(-2px)}
.gn-btn-rose{background:var(--gn-rose);color:#fff}
.gn-btn-rose:hover{transform:translateY(-2px)}
.gn-btn-line{background:var(--gn-card);color:var(--gn-brand-2);border:1.5px solid var(--gn-line-2)}
.gn-btn-line:hover{border-color:var(--gn-brand);transform:translateY(-2px)}
.gn-btn-sm{padding:8px 15px;font-size:12.5px}
.gn-pill{display:inline-block;font-size:11.5px;font-weight:700;color:var(--gn-brand-2);background:var(--gn-brand-soft);padding:3px 11px;border-radius:999px}

/* 富文本 */
.gn-rich{font-size:16.5px;line-height:1.95;color:var(--gn-ink-2);overflow-wrap:anywhere;word-break:break-word;max-width:100%}
.gn-rich *{max-width:100%;overflow-wrap:break-word;word-break:break-word}
.gn-rich table,.gn-rich .gn-tablewrap{max-width:none}
.gn-rich p,.gn-rich div,.gn-rich span,.gn-rich li,.gn-rich td,.gn-rich th,.gn-rich h1,.gn-rich h2,.gn-rich h3,.gn-rich h4,.gn-rich a,.gn-rich strong,.gn-rich em{white-space:normal !important}
.gn-rich p{margin:0 0 18px}
.gn-rich h2,.gn-rich h3,.gn-rich h4{color:var(--gn-ink);line-height:1.3;margin:30px 0 13px;font-weight:800}
.gn-rich h2{font-size:22px}.gn-rich h2::before{content:"#";color:var(--gn-rose);margin-right:8px;font-weight:800}
.gn-rich h3{font-size:18px}
.gn-rich a{color:var(--gn-brand-2);text-decoration:underline;text-underline-offset:3px;word-break:break-all}
.gn-rich ul,.gn-rich ol{margin:0 0 18px 22px}.gn-rich li{margin-bottom:8px;list-style:disc}.gn-rich ol li{list-style:decimal}
.gn-rich img{margin:20px 0;border-radius:var(--gn-r-sm)}
.gn-rich blockquote{margin:20px 0;padding:14px 20px;background:var(--gn-brand-soft);border-radius:var(--gn-r-sm);color:var(--gn-ink)}
.gn-rich pre{max-width:100%;overflow-x:auto;white-space:pre-wrap;word-break:break-word;background:var(--gn-ink);color:#e6e2fb;padding:16px;margin:18px 0;font-size:13.5px;border-radius:var(--gn-r-sm)}
.gn-rich code{font-family:ui-monospace,Consolas,monospace;word-break:break-word}
.gn-rich table{width:100%;margin:20px 0;font-size:14.5px;border:1px solid var(--gn-line)}
.gn-rich th,.gn-rich td{padding:11px 14px;border:1px solid var(--gn-line);text-align:left;overflow-wrap:anywhere;word-break:break-word}
.gn-rich th{background:var(--gn-brand-soft);color:var(--gn-ink);font-weight:700}
.gn-rich tbody tr:nth-child(even){background:var(--gn-bg)}
@media(max-width:760px){.gn-rich .gn-tablewrap{overflow-x:auto}.gn-rich table{width:100%;max-width:none;table-layout:auto}.gn-rich th,.gn-rich td{min-width:96px}}

/* FAQ 编号手风琴 */
.gn-faq-item{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r-sm);margin-bottom:11px;overflow:hidden;counter-increment:fq}
.gn-faq-q{width:100%;display:flex;align-items:center;gap:14px;padding:17px 20px;text-align:left;font-size:15.5px;font-weight:700;color:var(--gn-ink)}
.gn-faq-q::before{content:counter(fq,decimal-leading-zero);font-size:13px;font-weight:800;color:var(--gn-brand);background:var(--gn-brand-soft);width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.gn-faq-q::after{content:"+";margin-left:auto;font-size:22px;color:var(--gn-rose);flex-shrink:0;transition:transform .25s}
.gn-faq-item.open .gn-faq-q::after{transform:rotate(45deg)}
.gn-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.gn-faq-item.open .gn-faq-a{grid-template-rows:1fr}
.gn-faq-a>div{overflow:hidden;min-height:0}
.gn-faq-a p{padding:0 20px 18px 64px;color:var(--gn-ink-2);font-size:14.5px;line-height:1.8}
.gn-faq{counter-reset:fq}

/* 分页 */
.gn-pager{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin-top:40px}
.gn-pager a{min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border-radius:var(--gn-r-sm);background:var(--gn-card);border:1px solid var(--gn-line);color:var(--gn-ink-2);font-size:14px;font-weight:700}
.gn-pager a:hover,.gn-pager a.active,.gn-pager a.current{background:var(--gn-brand);color:#fff;border-color:var(--gn-brand)}

/* 页脚 */
.gn-foot{background:var(--gn-card);border-top:1px solid var(--gn-line);margin-top:8px}
.gn-foot-main{max-width:var(--gn-wrap);margin:0 auto;padding:48px 30px 28px;display:grid;grid-template-columns:1.6fr repeat(4,minmax(0,1fr));gap:28px}
.gn-foot-brand b{display:flex;align-items:center;gap:9px;font-size:18px;color:var(--gn-ink);font-weight:800}
.gn-foot-brand b img{width:32px;height:32px;border-radius:8px}
.gn-foot-brand p{font-size:13px;line-height:1.75;margin:13px 0;max-width:320px;color:var(--gn-ink-3);overflow-wrap:anywhere}
.gn-foot-contact span{display:block;font-size:12.5px;margin-bottom:5px;color:var(--gn-ink-3)}
.gn-foot-contact a:hover{color:var(--gn-brand-2)}
.gn-foot h4{color:var(--gn-ink);font-size:12px;letter-spacing:1px;text-transform:uppercase;margin-bottom:13px}
.gn-foot-col li{margin-bottom:9px}
.gn-foot-col a{font-size:13.5px;color:var(--gn-ink-3)}
.gn-foot-col a:hover{color:var(--gn-brand-2)}
.gn-foot-social{display:flex;gap:10px;margin-top:8px}
.gn-foot-bottom{border-top:1px solid var(--gn-line)}
.gn-foot-bottom div{max-width:var(--gn-wrap);margin:0 auto;padding:18px 30px;font-size:12.5px;color:var(--gn-ink-3);text-align:center}

/* 返回顶部 */
.gn-top{position:fixed;right:22px;bottom:24px;width:46px;height:46px;border-radius:14px;background:var(--gn-brand);color:#fff;font-size:19px;display:flex;align-items:center;justify-content:center;z-index:120;box-shadow:var(--gn-sh-lg);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s}
.gn-top.show{opacity:1;visibility:visible;transform:translateY(0)}
.gn-top:hover{background:var(--gn-rose)}

/* 通用卡 */
.gn-card{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);transition:transform .2s,box-shadow .2s,border-color .2s}
.gn-card:hover{transform:translateY(-3px);box-shadow:var(--gn-sh-lg);border-color:var(--gn-line-2)}

@media(max-width:1100px){
  .gn-side{display:none}
  .gn-main{margin-left:0}
  .gn-mtop{display:flex}
  .gn-utility{display:none}
  .gn-foot-main{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:440px){
  .gn-wrap{padding:0 16px}
  .gn-foot-main{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.gn-page{padding:clamp(28px,3.5vw,48px) 0}
.gn-phead{padding:0 0 8px}
.gn-crumb{font-size:12.5px;color:var(--gn-ink-3);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:7px;padding-top:6px}
.gn-crumb a:hover{color:var(--gn-brand-2)}.gn-crumb .s{opacity:.5}
.gn-ph-title{font-size:clamp(24px,3.4vw,40px);font-weight:800;color:var(--gn-ink);line-height:1.16;letter-spacing:-.5px;overflow-wrap:anywhere}
.gn-ph-title em{font-style:normal;color:var(--gn-brand)}
.gn-ph-desc{color:var(--gn-ink-2);font-size:clamp(14px,1.4vw,16px);margin-top:12px;max-width:760px;overflow-wrap:anywhere}
.gn-ph-sep{height:1px;background:var(--gn-line);margin:22px 0 0}

/* 频道胶囊条 */
.gn-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.gn-chips a{font-size:13.5px;font-weight:600;color:var(--gn-ink-2);background:var(--gn-card);border:1px solid var(--gn-line);padding:8px 16px;border-radius:999px}
.gn-chips a:hover,.gn-chips a.active{background:var(--gn-brand);color:#fff;border-color:var(--gn-brand)}

/* 瀑布列表(list/tag) */
.gn-masonry2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gn-masonry2 .gn-ms-card{display:flex;flex-direction:column;margin-bottom:0}.gn-masonry2 .gn-ms-im{aspect-ratio:16/9}.gn-masonry2 .gn-ms-im img{height:100%;object-fit:cover}.gn-masonry2 .gn-ms-bd{flex:1;display:flex;flex-direction:column}.gn-masonry2 .gn-ms-bd h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gn-ms-card{display:block;break-inside:avoid;margin-bottom:18px;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);overflow:hidden;transition:transform .2s,box-shadow .2s}
.gn-ms-card:hover{transform:translateY(-3px);box-shadow:var(--gn-sh-lg)}
.gn-ms-im{display:block;overflow:hidden;background:var(--gn-bg-2)}
.gn-ms-im img{width:100%;display:block;transition:transform .4s}
.gn-ms-card:hover .gn-ms-im img{transform:scale(1.05)}
.gn-ms-bd{padding:16px;min-width:0}
.gn-ms-bd .mt{font-size:11.5px;color:var(--gn-rose);font-weight:700}
.gn-ms-bd h3{font-size:17px;color:var(--gn-ink);line-height:1.4;margin:7px 0;overflow-wrap:anywhere}
.gn-ms-card:hover h3{color:var(--gn-brand)}
.gn-ms-bd p{font-size:13px;color:var(--gn-ink-3);line-height:1.65;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gn-ms-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}

/* 文章详情:左 meta 轨 + 右正文 */
.gn-artwrap{display:grid;grid-template-columns:80px minmax(0,1fr);gap:26px;align-items:start}
.gn-metarail{position:sticky;top:90px;display:flex;flex-direction:column;gap:12px;text-align:center}
.gn-metarail .av{width:56px;height:56px;border-radius:50%;background:var(--gn-brand-soft);color:var(--gn-brand-2);font-size:22px;display:flex;align-items:center;justify-content:center;margin:0 auto}
.gn-metarail .mi{font-size:11px;color:var(--gn-ink-3)}.gn-metarail .mi b{display:block;font-size:14px;color:var(--gn-ink)}
.gn-metarail .sh{width:40px;height:40px;border-radius:50%;border:1px solid var(--gn-line);display:flex;align-items:center;justify-content:center;margin:0 auto;color:var(--gn-ink-2)}
.gn-artbody{min-width:0;max-width:100%}
.gn-artfig{margin:0 0 22px;border-radius:var(--gn-r);overflow:hidden;border:1px solid var(--gn-line)}
.gn-artfig img{width:100%;display:block}
.gn-tagrow{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.gn-tagrow a{font-size:12.5px;color:var(--gn-brand-2);background:var(--gn-brand-soft);padding:5px 13px;border-radius:999px}
.gn-postnav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
.gn-postnav a{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r-sm);padding:15px 18px;font-size:14px;color:var(--gn-ink);font-weight:600;overflow-wrap:anywhere}
.gn-postnav a:hover{border-color:var(--gn-brand);color:var(--gn-brand)}.gn-postnav a:last-child{text-align:right}

/* 横滑相关 */
.gn-hscroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:16px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory}
.gn-hscroll>*{scroll-snap-align:start}

/* 卡 */
.gn-card-im{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--gn-bg-2)}
.gn-card-im img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.gn-acard{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);overflow:hidden;min-width:0;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.gn-acard:hover{transform:translateY(-3px);box-shadow:var(--gn-sh-lg)}
.gn-acard:hover .gn-card-im img{transform:scale(1.05)}
.gn-acard-bd{padding:15px;min-width:0}
.gn-acard-bd .mt{font-size:11.5px;color:var(--gn-rose);font-weight:700}
.gn-acard-bd h3{font-size:15px;color:var(--gn-ink);line-height:1.4;margin:7px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gn-acard:hover h3{color:var(--gn-brand)}
.gn-acard-bd p{font-size:12.5px;color:var(--gn-ink-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* 经纪商手风琴行 */
.gn-acc{display:flex;flex-direction:column;gap:12px}
.gn-acc-item{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);overflow:hidden}
.gn-acc-item>button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:16px 20px;text-align:left}
.gn-acc-hd-bk{display:flex;align-items:center;gap:12px;min-width:0}
.gn-acc-hd-bk img{width:44px;height:44px;border-radius:11px;background:var(--gn-bg);object-fit:contain;padding:5px;flex-shrink:0}
.gn-acc-hd-bk b{display:block;font-size:15.5px;font-weight:800;color:var(--gn-ink)}
.gn-acc-hd-bk em{font-style:normal;font-size:12px;color:var(--gn-ink-3)}
.gn-acc-rate{font-size:14px;font-weight:800;color:var(--gn-brand);white-space:nowrap}
.gn-acc-tg{font-size:22px;color:var(--gn-rose);transition:transform .25s}
.gn-acc-item.open .gn-acc-tg{transform:rotate(45deg)}
.gn-acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.gn-acc-item.open .gn-acc-panel{grid-template-rows:1fr}
.gn-acc-panel>div{overflow:hidden;min-height:0}
.gn-acc-body{padding:0 20px 18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:0;border-top:1px solid var(--gn-line)}
.gn-acc-kv{padding:14px 8px}.gn-acc-kv span{display:block;font-size:11px;color:var(--gn-ink-3);margin-bottom:4px}.gn-acc-kv b{font-size:15px;color:var(--gn-ink);font-weight:800;word-break:break-word}
.gn-acc-act{padding:0 20px 18px;display:flex;gap:10px;flex-wrap:wrap}

/* 详情通用:tab 分段 / section */
.gn-tabnav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;position:sticky;top:84px;z-index:50;background:var(--gn-bg);padding:8px 0}
.gn-tabnav a{font-size:13.5px;font-weight:700;color:var(--gn-ink-2);background:var(--gn-card);border:1px solid var(--gn-line);padding:8px 16px;border-radius:999px}
.gn-tabnav a:hover{background:var(--gn-brand);color:#fff;border-color:var(--gn-brand)}
.gn-block{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);margin-bottom:18px;overflow:hidden;scroll-margin-top:90px}
.gn-block-h{font-size:16px;font-weight:800;color:var(--gn-ink);padding:15px 22px;border-bottom:1px solid var(--gn-line);display:flex;align-items:center;gap:9px}
.gn-block-h::before{content:"";width:8px;height:8px;border-radius:3px;background:var(--gn-rose)}
.gn-block-b{padding:22px;min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.gn-brokerhero{background:linear-gradient(120deg,var(--gn-brand),var(--gn-brand-2));border-radius:var(--gn-r);padding:26px;color:#fff;display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:18px}
.gn-brokerhero img{width:72px;height:72px;border-radius:16px;background:#fff;object-fit:contain;padding:8px;flex-shrink:0}
.gn-brokerhero .bd{min-width:0;flex:1}.gn-brokerhero b{font-size:22px;font-weight:800;color:#fff;display:block}.gn-brokerhero p{font-size:13.5px;color:rgba(255,255,255,.86);margin-top:5px;overflow-wrap:anywhere}
.gn-brokerhero .sc{text-align:center;flex-shrink:0}.gn-brokerhero .sc b{font-size:30px}.gn-brokerhero .sc span{font-size:11px;color:rgba(255,255,255,.8)}
.gn-statgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:0;border:1px solid var(--gn-line);border-radius:var(--gn-r-sm);overflow:hidden;margin:6px 0}
.gn-stat{padding:14px 16px;border-right:1px solid var(--gn-line);border-bottom:1px solid var(--gn-line)}
.gn-stat span{display:block;font-size:11px;color:var(--gn-ink-3);margin-bottom:4px}.gn-stat b{font-size:16px;color:var(--gn-ink);font-weight:800;word-break:break-word}
.gn-proscons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0 4px}
.gn-pc{border-radius:var(--gn-r-sm);padding:16px 18px}.gn-pc.pos{background:#e6f7f0;border-left:4px solid var(--gn-pos)}.gn-pc.neg{background:#fdecec;border-left:4px solid var(--gn-neg)}
.gn-pc h4{font-size:14.5px;margin-bottom:9px;color:var(--gn-ink)}
.gn-cta-inline{background:var(--gn-ink);color:#fff;border-radius:var(--gn-r);padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:4px}
.gn-cta-inline b{font-size:17px;font-weight:800;color:#fff}.gn-cta-inline p{font-size:13px;color:#b6afda;margin-top:5px}
.gn-simplelist a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--gn-line);font-size:14px;color:var(--gn-ink-2);min-width:0}
.gn-simplelist a:last-child{border-bottom:none}.gn-simplelist a:hover{color:var(--gn-brand)}
.gn-simplelist a span{min-width:0;overflow-wrap:anywhere}.gn-simplelist a::after{content:"›";color:var(--gn-rose);flex-shrink:0;font-weight:800}

/* 产品图廊:左竖缩略 + 右大图 */
.gn-gallery{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px}
.gn-gal-th{display:flex;flex-direction:column;gap:8px}
.gn-gal-th img{width:84px;height:60px;object-fit:cover;border-radius:var(--gn-r-sm);border:2px solid transparent;cursor:pointer;opacity:.6;transition:.2s}
.gn-gal-th img:hover,.gn-gal-th img.on{opacity:1;border-color:var(--gn-brand)}
.gn-gal-main{aspect-ratio:16/11;background:var(--gn-bg-2);border-radius:var(--gn-r-sm);overflow:hidden;border:1px solid var(--gn-line)}
.gn-gal-main img{width:100%;height:100%;object-fit:cover}
.gn-params{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:8px 0}
.gn-param{background:var(--gn-bg);border-radius:var(--gn-r-sm);padding:13px 16px}
.gn-param span{display:block;font-size:11px;color:var(--gn-ink-3);margin-bottom:4px}.gn-param b{font-size:14.5px;color:var(--gn-ink);font-weight:800;word-break:break-word}

/* 工具列表 编号分组 */
.gn-toolgroup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gn-tg-i{display:flex;align-items:center;gap:14px;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:16px;counter-increment:tg;min-width:0;transition:transform .15s,border-color .2s}
.gn-tg-i:hover{transform:translateX(3px);border-left:3px solid var(--gn-brand)}
.gn-tg-i::before{content:counter(tg,decimal-leading-zero);font-size:15px;font-weight:800;color:var(--gn-brand);flex-shrink:0}
.gn-tg-i .ic{width:42px;height:42px;border-radius:11px;background:var(--gn-brand-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.gn-tg-i .ic img{width:24px;height:24px;object-fit:contain}
.gn-tg-i .bd{min-width:0}.gn-tg-i b{display:block;font-size:14.5px;color:var(--gn-ink)}.gn-tg-i em{font-style:normal;font-size:12px;color:var(--gn-ink-3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.gn-toollist{counter-reset:tg}

/* 工具详情:左卡 sticky + 右内容 */
.gn-toolwrap{display:grid;grid-template-columns:280px minmax(0,1fr);gap:26px;align-items:start}
.gn-toolcard-side{position:sticky;top:90px;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:22px;text-align:center}
.gn-toolcard-side .ic{width:64px;height:64px;border-radius:16px;background:var(--gn-brand-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.gn-toolcard-side .ic img{width:34px;height:34px;object-fit:contain}
.gn-toolcard-side h3{font-size:17px;color:var(--gn-ink);margin-bottom:8px}.gn-toolcard-side p{font-size:13px;color:var(--gn-ink-3);line-height:1.6;margin-bottom:14px}

/* 视频列表:左特征 + 右清单 */
.gn-videowrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px;align-items:start}
.gn-vfeature{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);overflow:hidden}
.gn-vthumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--gn-bg-2)}
.gn-vthumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gn-vthumb:hover img{transform:scale(1.05)}
.gn-vthumb .pl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:34px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.gn-vthumb .du{position:absolute;right:8px;bottom:8px;background:rgba(28,27,46,.85);color:#fff;font-size:11px;padding:2px 8px;border-radius:6px}
.gn-vfeature .bd{padding:16px}.gn-vfeature h3{font-size:17px;color:var(--gn-ink);line-height:1.4}.gn-vfeature p{font-size:13px;color:var(--gn-ink-3);margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gn-vplaylist{display:flex;flex-direction:column;gap:10px}
.gn-vpl-i{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r-sm);overflow:hidden;min-width:0}
.gn-vpl-i:hover{border-color:var(--gn-brand)}
.gn-vpl-th{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--gn-bg-2)}
.gn-vpl-th img{width:100%;height:100%;object-fit:cover}.gn-vpl-th .du{position:absolute;right:5px;bottom:5px;background:rgba(28,27,46,.85);color:#fff;font-size:10px;padding:1px 6px;border-radius:5px}
.gn-vpl-bd{padding:10px 12px 10px 0;min-width:0;align-self:center}.gn-vpl-bd h3{font-size:13.5px;color:var(--gn-ink);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gn-vpl-i:hover h3{color:var(--gn-brand)}

/* 视频网格 (相关) */
.gn-vgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gn-vcard{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);overflow:hidden;min-width:0}
.gn-vcard:hover{box-shadow:var(--gn-sh-lg)}
.gn-vcard .bd{padding:13px;min-width:0}.gn-vcard h3{font-size:14px;color:var(--gn-ink);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gn-vcard p{font-size:12px;color:var(--gn-ink-3);margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* 视频播放器 */
.gn-player{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:var(--gn-r-sm);overflow:hidden}
.gn-player iframe,.gn-player video{position:absolute;inset:0;width:100%;height:100%;border:0}

/* 下载 */
.gn-dlrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}
.gn-dl{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:26px 22px;text-align:center}
.gn-dl .ic{width:56px;height:56px;border-radius:16px;background:var(--gn-brand-soft);display:flex;align-items:center;justify-content:center;font-size:27px;margin:0 auto 13px}
.gn-dl h3{font-size:16px;color:var(--gn-ink);margin-bottom:7px}.gn-dl p{font-size:12.5px;color:var(--gn-ink-3);margin-bottom:14px;line-height:1.55}
.gn-cmp{width:100%;border:1px solid var(--gn-line);border-radius:var(--gn-r);overflow:hidden;background:var(--gn-card)}
.gn-cmp th,.gn-cmp td{padding:13px 16px;border-bottom:1px solid var(--gn-line);font-size:14px;text-align:left}
.gn-cmp th{background:var(--gn-brand-soft);color:var(--gn-ink);font-weight:700}
.gn-cmp td{color:var(--gn-ink-2)}

/* steps */
.gn-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gn-step{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:20px;border-top:3px solid var(--gn-brand)}
.gn-step .n{font-size:22px;font-weight:800;color:var(--gn-brand);display:block;margin-bottom:7px}
.gn-step h4{font-size:14.5px;color:var(--gn-ink);margin-bottom:5px}.gn-step p{font-size:12.5px;color:var(--gn-ink-3);line-height:1.55}

/* about 叙事 */
.gn-aboutwrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:30px;align-items:start}
.gn-narr h3{font-size:19px;color:var(--gn-ink);margin:22px 0 9px}.gn-narr h3:first-child{margin-top:0}.gn-narr p{font-size:14.5px;color:var(--gn-ink-2);line-height:1.85;margin-bottom:14px}
.gn-statcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gn-statcard{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:22px}
.gn-statcard b{font-size:28px;font-weight:800;color:var(--gn-brand);display:block}.gn-statcard span{font-size:13px;color:var(--gn-ink-3)}

/* 标签墙 */
.gn-tagwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.gn-tagblock{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:20px;transition:transform .2s,box-shadow .2s}
.gn-tagblock:hover{transform:translateY(-3px);box-shadow:var(--gn-sh-lg)}
.gn-tagblock .h{font-size:11px;font-weight:800;color:var(--gn-rose);letter-spacing:1px}
.gn-tagblock b{display:block;font-size:18px;color:var(--gn-ink);font-weight:800;margin:8px 0 4px;overflow-wrap:anywhere}.gn-tagblock:hover b{color:var(--gn-brand)}
.gn-tagblock em{font-style:normal;font-size:12px;color:var(--gn-ink-3)}

.gn-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gn-grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}

@media(max-width:1100px){
  .gn-masonry2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gn-artwrap{grid-template-columns:1fr}
  .gn-metarail{position:static;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:16px;text-align:left}
  .gn-metarail .av{margin:0}
  .gn-toolwrap,.gn-videowrap,.gn-aboutwrap{grid-template-columns:1fr}
  .gn-toolcard-side{position:static}
  .gn-grid3,.gn-vgrid,.gn-toolgroup{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gn-grid4,.gn-dlrow,.gn-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .gn-masonry2{grid-template-columns:1fr}
  .gn-proscons{grid-template-columns:1fr}
  .gn-postnav{grid-template-columns:1fr}.gn-postnav a:last-child{text-align:left}
  .gn-grid3,.gn-grid4,.gn-vgrid,.gn-toolgroup,.gn-dlrow,.gn-steps{grid-template-columns:1fr}
  .gn-acc-item>button{grid-template-columns:auto minmax(0,1fr) auto}.gn-acc-rate{display:none}
  .gn-vpl-i{grid-template-columns:100px minmax(0,1fr)}
}
@media(max-width:440px){
  .gn-gallery{grid-template-columns:1fr}.gn-gal-th{flex-direction:row;flex-wrap:wrap}
}

.gn-hero{padding:clamp(30px,3.5vw,52px) 0}
.gn-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:34px;align-items:center}
.gn-hero-h1{font-size:clamp(30px,4vw,50px);font-weight:800;color:var(--gn-ink);line-height:1.12;letter-spacing:-1.2px;margin-bottom:16px}
.gn-hero-h1 em{font-style:normal;color:var(--gn-brand)}
.gn-hero-p{font-size:16px;color:var(--gn-ink-2);line-height:1.8;max-width:540px;margin-bottom:20px}
.gn-hero-btns{display:flex;gap:11px;flex-wrap:wrap}
.gn-hero-marquee{background:var(--gn-ink);border-radius:var(--gn-r);padding:20px;color:#fff;overflow:hidden}
.gn-mq-h{font-size:13px;font-weight:800;margin-bottom:13px;color:#cfc8f7}
.gn-mq-track{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}
.gn-mq-i{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:8px;font-size:13.5px;background:rgba(255,255,255,.05)}
.gn-mq-i span{color:#b6afda;font-weight:600}.gn-mq-i b{color:#fff;font-variant-numeric:tabular-nums}
.gn-mq-i i{font-style:normal;font-weight:700;font-size:12.5px}.gn-mq-i i.up{color:#43e0a0}.gn-mq-i i.dn{color:#ff8095}
.gn-mq-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid rgba(255,255,255,.12);padding-top:14px}
.gn-mq-stats div{text-align:center}.gn-mq-stats b{display:block;font-size:21px;font-weight:800;color:#fff}.gn-mq-stats span{font-size:11px;color:#b6afda}

.gn-sec-soft{background:var(--gn-bg-2)}

/* 工具编号清单 */
.gn-toolnum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gn-toolnum-i{display:flex;align-items:center;gap:14px;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:14px 16px;min-width:0;transition:border-color .2s,transform .15s}
.gn-toolnum-i:hover{border-left:3px solid var(--gn-brand);transform:translateX(3px)}
.gn-toolnum-i .ic{width:44px;height:44px;border-radius:11px;background:var(--gn-brand-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.gn-toolnum-i .ic img{width:24px;height:24px;object-fit:contain}
.gn-toolnum-i .bd{min-width:0;flex:1}
.gn-toolnum-i b{display:block;font-size:14.5px;color:var(--gn-ink);margin-bottom:2px}
.gn-toolnum-i em{font-style:normal;font-size:12px;color:var(--gn-ink-3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.gn-toolnum-i .go{color:var(--gn-brand);font-weight:800;flex-shrink:0}

/* 经纪商横向 snap */
.gn-bk-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:18px;overflow-x:auto;padding:4px 0 12px;scroll-snap-type:x mandatory}
.gn-bk-card{background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:20px;scroll-snap-align:start;min-width:0}
.gn-bk-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.gn-bk-top img{width:46px;height:46px;border-radius:11px;background:var(--gn-bg);object-fit:contain;padding:5px;flex-shrink:0}
.gn-bk-top b{display:block;font-size:15.5px;font-weight:800;color:var(--gn-ink)}
.gn-bk-top em{font-style:normal;font-size:12.5px;color:var(--gn-ink-3)}
.gn-star{font-style:normal;color:var(--gn-star)}
.gn-bk-reg{margin-bottom:13px}
.gn-bk-kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:13px;background:var(--gn-bg);border-radius:var(--gn-r-sm);margin-bottom:14px}
.gn-bk-kv div{text-align:center;min-width:0}.gn-bk-kv span{display:block;font-size:10.5px;color:var(--gn-ink-3)}.gn-bk-kv b{font-size:13.5px;color:var(--gn-ink);font-weight:800;word-break:break-word}
.gn-bk-act{display:flex;gap:9px}.gn-bk-act a{flex:1}

/* 资讯:整齐等高网格 */
.gn-masonry{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gn-masonry .gn-ms-card{display:flex;flex-direction:column;margin-bottom:0;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);overflow:hidden;transition:transform .2s,box-shadow .2s}
.gn-masonry .gn-ms-card:hover{transform:translateY(-3px);box-shadow:var(--gn-sh-lg)}
.gn-masonry .gn-ms-im{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--gn-bg-2)}
.gn-masonry .gn-ms-im img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.gn-masonry .gn-ms-card:hover .gn-ms-im img{transform:scale(1.05)}
.gn-masonry .gn-ms-bd{padding:15px;min-width:0;flex:1;display:flex;flex-direction:column}
.gn-masonry .gn-ms-bd .mt{font-size:11.5px;color:var(--gn-rose);font-weight:700}
.gn-masonry .gn-ms-bd b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:16px;color:var(--gn-ink);line-height:1.4;margin:7px 0;overflow-wrap:anywhere}
.gn-masonry .gn-ms-card:hover .gn-ms-bd b{color:var(--gn-brand)}
.gn-masonry .gn-ms-bd em{font-style:normal;font-size:13px;color:var(--gn-ink-3);line-height:1.6;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* zigzag */
.gn-zig{display:flex;flex-direction:column;gap:14px;position:relative}
.gn-zig-i{display:flex;align-items:center;gap:18px;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:20px 24px;width:72%}
.gn-zig-i:nth-child(even){align-self:flex-end;flex-direction:row-reverse;text-align:right}
.gn-zig-i .n{font-size:30px;font-weight:800;color:var(--gn-brand);flex-shrink:0}
.gn-zig-i:nth-child(even) .n{color:var(--gn-rose)}
.gn-zig-i h4{font-size:16px;color:var(--gn-ink);margin-bottom:5px}.gn-zig-i p{font-size:13.5px;color:var(--gn-ink-3);line-height:1.6}

/* 产品横幅条 */
.gn-prodband{display:flex;flex-direction:column;gap:12px}
.gn-pb-i{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:18px;background:var(--gn-card);border:1px solid var(--gn-line);border-radius:var(--gn-r);padding:14px 18px;min-width:0;transition:border-color .2s,transform .15s}
.gn-pb-i:hover{border-color:var(--gn-line-2);transform:translateX(3px)}
.gn-pb-i .im{width:96px;height:64px;border-radius:var(--gn-r-sm);overflow:hidden;background:var(--gn-bg-2)}
.gn-pb-i .im img{width:100%;height:100%;object-fit:cover}
.gn-pb-i .bd{min-width:0}
.gn-pb-i b{display:block;font-size:15.5px;color:var(--gn-ink);margin-bottom:3px}
.gn-pb-i em{font-style:normal;font-size:13px;color:var(--gn-ink-3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.gn-pb-i .tag{flex-shrink:0}

/* topics */
.gn-topics{display:flex;flex-wrap:wrap;gap:9px}
.gn-topic{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:var(--gn-ink-2);background:var(--gn-card);border:1px solid var(--gn-line);padding:9px 16px;border-radius:999px;transition:.2s}
.gn-topic:hover{background:var(--gn-brand);color:#fff;border-color:var(--gn-brand)}
.gn-topic i{font-style:normal;font-size:11px;color:var(--gn-ink-3)}.gn-topic:hover i{color:#cfc8f7}

/* faq */
.gn-faq-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:38px;align-items:start}

/* cta */
.gn-ctabox{background:linear-gradient(120deg,var(--gn-brand),var(--gn-brand-2));border-radius:var(--gn-r);padding:clamp(28px,3.5vw,44px);display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}
.gn-ctabox p{color:rgba(255,255,255,.88);margin-top:9px}
.gn-ctabox-btns{display:flex;gap:11px;flex-wrap:wrap}
.gn-ctabox .gn-btn-line{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.4)}

@media(max-width:1100px){
  .gn-hero-grid{grid-template-columns:1fr;gap:24px}
  .gn-toolnum{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gn-masonry{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gn-zig-i,.gn-zig-i:nth-child(even){width:100%;align-self:auto;flex-direction:row;text-align:left}
  .gn-faq-wrap{grid-template-columns:1fr;gap:22px}
}
@media(max-width:760px){
  .gn-toolnum{grid-template-columns:1fr}
  .gn-masonry{grid-template-columns:1fr}
  .gn-pb-i{grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto}
  .gn-pb-i .tag{grid-column:2}
}
@media(max-width:440px){
  .gn-mq-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gn-pb-i{grid-template-columns:1fr}.gn-pb-i .im{width:100%;height:120px}
}
