/* =========================================================
   苏州市技术经理人协会 · 官网样式 v1.0（PC 优先，向下自适应）
   依赖 base.css 的品牌令牌，不覆盖手机外壳规则
   ========================================================= */

/* ---------- 容器 ---------- */
.site-body{background:#fff;color:var(--text);font-size:14px;line-height:1.6}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px}
.site-body img{max-width:100%}

/* ---------- 顶栏 ---------- */
.site-top{
  position:sticky;top:0;z-index:60;
  background:rgba(255,255,255,.97);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--hair);
}
.site-top .wrap{display:flex;align-items:center;gap:44px;height:74px}
.brand{display:flex;align-items:center;gap:13px;flex:0 0 auto}
.brand .lg{width:46px;height:46px;flex:0 0 46px;border-radius:50%;display:block;box-shadow:0 1px 3px rgba(18,39,92,.16)}
.brand .logo-wide{height:44px;width:auto;display:block}
.brand .tt b{font-size:16px;font-weight:600;letter-spacing:.3px;display:block;line-height:1.2;color:var(--text)}
.brand .tt span{font-size:9.5px;color:var(--gray);display:block;margin-top:4px;letter-spacing:.9px}

.site-nav{display:flex;align-items:center;gap:6px;flex:1}
.site-nav a{
  height:36px;padding:0 14px;border-radius:8px;font-size:13.5px;color:var(--text-2);
  display:inline-flex;align-items:center;transition:background .16s,color .16s;
}
.site-nav a:hover{background:var(--soft);color:var(--ink)}
.site-nav a.on{color:var(--brand-600);font-weight:600;background:var(--brand-50)}

.top-act{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.btn-site{
  height:38px;padding:0 20px;border-radius:9px;font-size:13.5px;font-weight:500;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  transition:transform .16s,box-shadow .16s,background .16s;
}
.btn-site.primary{
  background:linear-gradient(140deg,var(--brand-500),var(--brand-700));color:#fff;
  box-shadow:0 6px 16px -8px rgba(18,39,92,.55);
}
.btn-site.primary:hover{transform:translateY(-1px);box-shadow:0 10px 22px -10px rgba(18,39,92,.62)}
.btn-site.line{background:#fff;color:var(--brand-600);box-shadow:inset 0 0 0 1px var(--brand-200)}
.btn-site.line:hover{background:var(--brand-50)}
.btn-site.lg{height:46px;padding:0 28px;font-size:14.5px;border-radius:11px}
.btn-site.ghost{color:var(--text-2)}
.btn-site.ghost:hover{background:var(--soft)}

/* ---------- Hero ---------- */
.hero-site{
  position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(780px 400px at 82% -10%,rgba(92,127,204,.42) 0%,rgba(92,127,204,0) 62%),
    radial-gradient(520px 320px at 6% 108%,rgba(15,110,140,.34) 0%,rgba(15,110,140,0) 66%),
    linear-gradient(152deg,#2A4C93 0%,#1A3572 46%,#101F4C 100%);
  padding:84px 0 92px;
}
.hero-site::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(70% 62% at 50% 34%,#000 0%,transparent 78%);
  mask-image:radial-gradient(70% 62% at 50% 34%,#000 0%,transparent 78%);
}
.hero-site .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.hero-kicker{
  display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 14px;border-radius:15px;
  background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
  font-size:12px;color:#DCE6F8;letter-spacing:.4px;
}
.hero-kicker .dot-live{width:6px;height:6px;border-radius:3px;background:#6FD3B4;box-shadow:0 0 0 4px rgba(111,211,180,.22)}
.hero-site h1{
  font-size:44px;line-height:1.28;font-weight:600;margin:20px 0 0;letter-spacing:-.6px;
}
.hero-site h1 em{font-style:normal;color:#A8C4FF}
.hero-site p.lead{
  font-size:15.5px;line-height:1.85;color:#C3D1EC;margin:20px 0 0;max-width:520px;
}
.hero-btns{display:flex;align-items:center;gap:12px;margin-top:32px}
.hero-btns .btn-site.line{background:rgba(255,255,255,.10);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.26)}
.hero-btns .btn-site.line:hover{background:rgba(255,255,255,.18)}
.hero-facts{display:flex;gap:34px;margin-top:40px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14)}
.hero-facts .f b{font-size:26px;font-weight:600;letter-spacing:-.5px;display:block;line-height:1}
.hero-facts .f span{font-size:12px;color:#9FB4D8;display:block;margin-top:8px}

/* Hero 右侧：预审流程卡 */
.hero-card{
  background:rgba(255,255,255,.96);border-radius:16px;padding:22px 22px 20px;color:var(--text);
  box-shadow:0 30px 60px -30px rgba(6,16,44,.72),0 0 0 1px rgba(255,255,255,.5);
}
.hero-card .hc-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.hero-card .hc-h .t{font-size:13px;font-weight:600;color:var(--text)}
.hero-card .hc-h .m{font-size:11px;color:var(--gray)}
.hc-step{display:flex;align-items:center;gap:11px;padding:9px 0}
.hc-step .n{
  width:24px;height:24px;border-radius:12px;flex:0 0 24px;display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:600;background:var(--brand-100);color:var(--brand-700);
}
.hc-step.done .n{background:var(--greenbg);color:var(--green)}
.hc-step .tx{font-size:12.5px;color:var(--text-2);flex:1}
.hc-step .st{font-size:10.5px;color:var(--gray)}
.hc-step .st.ok{color:var(--green)}
.hc-step .st.warn{color:var(--amber)}
.hc-line{height:1px;background:var(--hair);margin:14px 0 12px}
.hc-foot{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;color:var(--gray)}
.hc-foot b{font-size:15px;color:var(--red);font-weight:600}

/* ---------- 区块 ---------- */
.sect{padding:76px 0}
.sect.alt{background:var(--paper)}
.sect-h{margin-bottom:38px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.sect-h .k{font-size:11.5px;color:var(--accent-ink);letter-spacing:2px;font-weight:600}
.sect-h h2{font-size:29px;font-weight:600;margin:10px 0 0;letter-spacing:-.4px;line-height:1.35}
.sect-h p{font-size:13.5px;color:var(--gray2);margin:10px 0 0;max-width:640px;line-height:1.8}
.sect-h .more{font-size:13px;color:var(--brand-600);white-space:nowrap;padding-bottom:6px}
.sect-h .more:hover{text-decoration:underline}

/* 服务三卡 */
.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.svc-c{
  background:#fff;border-radius:14px;padding:26px 24px 24px;box-shadow:var(--shadow-1);
  display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;
}
.svc-c:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(18,39,92,.34)}
.svc-c .ic{
  width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,var(--brand-100),var(--brand-200));margin-bottom:18px;
}
.svc-c h3{font-size:16.5px;font-weight:600;margin:0}
.svc-c p{font-size:13px;color:var(--gray2);line-height:1.85;margin:10px 0 0;flex:1}
.svc-c .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.svc-c .tags i{
  font-style:normal;font-size:11px;color:var(--brand-700);background:var(--brand-50);
  padding:3px 9px;border-radius:6px;
}
.svc-c .go{margin-top:18px;font-size:12.5px;color:var(--brand-600);display:inline-flex;align-items:center;gap:5px}

/* 开班卡 */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bc-c{
  background:#fff;border-radius:14px;box-shadow:var(--shadow-1);padding:22px 22px 20px;
  display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;
}
.bc-c:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(18,39,92,.32)}
.bc-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.tag-s{font-size:11px;padding:3px 10px;border-radius:6px;font-weight:500}
.tag-s.green{background:var(--greenbg);color:var(--green)}
.tag-s.amber{background:var(--amberbg);color:var(--amber)}
.tag-s.gray{background:var(--soft2);color:var(--gray2)}
.tag-s.blue{background:var(--brand-50);color:var(--brand-700)}
.bc-c .dt{font-size:11px;color:var(--gray)}
.bc-c h4{font-size:15.5px;font-weight:600;line-height:1.55;margin:0 0 12px}
.bc-meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--gray2)}
.bc-meta span{display:inline-flex;align-items:center;gap:5px}
.bc-foot{
  margin-top:auto;padding-top:16px;margin-top:18px;border-top:1px solid var(--hair);
  display:flex;align-items:center;justify-content:space-between;
}
.bc-fee{font-size:14px;font-weight:600;color:var(--accent-ink)}
.bc-go{font-size:12.5px;color:var(--brand-600);display:inline-flex;align-items:center;gap:4px}

/* 活动卡 */
.ac-c{
  display:block;background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--shadow-1);
  transition:transform .18s,box-shadow .18s;
}
.ac-c:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(18,39,92,.32)}
.ac-thumb{
  position:relative;overflow:hidden;
  height:132px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,var(--brand-50),var(--brand-100));
}
.ac-thumb::after{
  content:"";position:absolute;right:-46px;bottom:-66px;width:150px;height:150px;border-radius:50%;
  background:radial-gradient(circle,rgba(92,127,204,.20),rgba(92,127,204,0) 70%);
}
.ac-thumb.video{background:linear-gradient(145deg,#E4EDFA,#CBDCF4)}
.ac-b{padding:16px 18px 18px}
.ac-b .kind{font-size:11px;color:var(--accent-ink);letter-spacing:.5px}
.ac-b h4{font-size:14px;font-weight:600;line-height:1.6;margin:7px 0 0}
.ac-b .dt{font-size:11.5px;color:var(--gray);margin-top:9px}

/* 数据条 */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-radius:14px;overflow:hidden}
.stats .s{background:#fff;padding:28px 26px;text-align:center}
.stats .s b{font-size:31px;font-weight:600;letter-spacing:-1px;display:block;color:var(--brand-700);line-height:1}
.stats .s span{font-size:12.5px;color:var(--gray2);display:block;margin-top:10px}

/* CTA */
.cta{
  border-radius:18px;padding:52px 48px;color:#fff;position:relative;overflow:hidden;
  background:linear-gradient(135deg,#20408A 0%,#12275C 62%,#0D1B3F 100%);
  display:flex;align-items:center;justify-content:space-between;gap:40px;
}
.cta::after{
  content:"";position:absolute;right:-90px;top:-90px;width:320px;height:320px;border-radius:160px;
  background:radial-gradient(circle,rgba(92,127,204,.42),rgba(92,127,204,0) 70%);
}
.cta .t{position:relative;z-index:2}
.cta h3{font-size:25px;font-weight:600;margin:0;letter-spacing:-.3px}
.cta p{font-size:13.5px;color:#B9CAE8;margin:11px 0 0;line-height:1.8}
.cta .acts{position:relative;z-index:2;display:flex;gap:12px;flex:0 0 auto}
.cta .btn-site.primary{background:#fff;color:var(--brand-800);box-shadow:0 8px 20px -10px rgba(0,0,0,.5)}
.cta .btn-site.line{background:rgba(255,255,255,.10);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.cta .btn-site.line:hover{background:rgba(255,255,255,.18)}

/* ---------- 页脚 ---------- */
.site-foot{background:#0E1B3C;color:#93A6C9;padding:56px 0 0;font-size:13px}
.site-foot .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:44px;padding-bottom:44px}
.site-foot .brand .tt b{color:#fff;font-size:15px}
.site-foot .brand .tt span{color:#7A8FB8}
.site-foot .brand .lg{width:44px;height:44px;flex:0 0 44px;box-shadow:none}
.site-foot .desc{font-size:12.5px;line-height:1.9;color:#7F92B8;margin-top:18px;max-width:300px}
.site-foot h5{font-size:12.5px;color:#fff;font-weight:600;margin:0 0 16px;letter-spacing:.5px}
.site-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.site-foot ul a{font-size:12.5px;color:#8CA0C4}
.site-foot ul a:hover{color:#fff}
.site-foot .contact li{font-size:12.5px;line-height:1.8;color:#8CA0C4}
.site-foot .foot-bar{
  border-top:1px solid rgba(255,255,255,.09);padding:20px 0 26px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  font-size:11.5px;color:#6C7FA4;
}
.site-foot .foot-bar .links{display:flex;gap:20px}

/* ---------- 页面头部（内页） ---------- */
.page-head{
  background:linear-gradient(150deg,#2A4C93 0%,#1A3572 58%,#12275C 100%);
  color:#fff;padding:56px 0 52px;position:relative;overflow:hidden;
}
.page-head::after{
  content:"";position:absolute;right:-70px;bottom:-120px;width:340px;height:340px;border-radius:170px;
  background:radial-gradient(circle,rgba(92,127,204,.34),rgba(92,127,204,0) 70%);
}
.page-head .wrap{position:relative;z-index:2}
.crumb-s{display:flex;align-items:center;gap:8px;font-size:12px;color:#9FB4D8}
.crumb-s a:hover{color:#fff}
.page-head h1{font-size:32px;font-weight:600;margin:14px 0 0;letter-spacing:-.4px;line-height:1.4}
.page-head p{font-size:13.5px;color:#BCCCE8;margin:12px 0 0;max-width:660px;line-height:1.8}

/* 深色页头里的状态标签：换成半透明底 + 浅色字，保证在深蓝上可读 */
.page-head .tag-s{background:rgba(255,255,255,.14);color:#C9D7EF}
.page-head .tag-s.green{background:rgba(111,211,180,.18);color:#84E4C2}
.page-head .tag-s.amber{background:rgba(255,200,110,.18);color:#FFD08A}
.page-head .tag-s.blue{background:rgba(168,196,255,.18);color:#BFD4FF}
.page-head .tag-s.gray{background:rgba(255,255,255,.13);color:#AFBEDA}

/* 内页容器 */
.page-main{padding:48px 0 76px;background:var(--paper);min-height:50vh}
.page-main .wrap{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}
.page-main.single .wrap{grid-template-columns:1fr}
.panel-s{background:#fff;border-radius:14px;padding:28px 30px;box-shadow:var(--shadow-1)}
.panel-s + .panel-s{margin-top:20px}
.panel-s h2{font-size:17px;font-weight:600;margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--hair)}
.panel-s h3{font-size:14.5px;font-weight:600;margin:22px 0 10px}
.panel-s p{font-size:13.5px;line-height:1.95;color:var(--text-2);margin:0 0 12px}
.panel-s ul{margin:0 0 14px;padding-left:20px;font-size:13.5px;line-height:2;color:var(--text-2)}

/* 侧栏信息卡 */
.side-card{background:#fff;border-radius:14px;padding:24px;box-shadow:var(--shadow-1);position:sticky;top:96px}
.side-card .fee{font-size:27px;font-weight:600;color:var(--accent-ink);letter-spacing:-.6px}
.side-card .fee small{font-size:12px;font-weight:400;color:var(--gray);margin-left:4px}
.side-card dl{margin:20px 0 0;display:flex;flex-direction:column;gap:0}
.side-card dl .r{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid var(--hair);font-size:12.5px}
.side-card dl .r dt{color:var(--gray)}
.side-card dl .r dd{margin:0;color:var(--text);text-align:right;font-weight:500}
.side-card .btn-site{width:100%;margin-top:20px}
.side-card .hint{font-size:11.5px;color:var(--gray);text-align:center;margin-top:12px;line-height:1.7}

/* 列表页筛选 */
.filter-s{display:flex;align-items:center;gap:8px;margin-bottom:24px;flex-wrap:wrap}
.filter-s a{
  height:34px;padding:0 16px;border-radius:8px;font-size:13px;color:var(--text-2);
  background:#fff;box-shadow:inset 0 0 0 1px var(--line);display:inline-flex;align-items:center;
}
.filter-s a.on{background:var(--brand-600);color:#fff;box-shadow:none;font-weight:500}

/* 活动详情播放器 */
.player{
  position:relative;overflow:hidden;
  aspect-ratio:16/9;border-radius:14px;background:linear-gradient(145deg,#1A3572,#0D1B3F);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#fff;
}
.player iframe,.player video{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;object-fit:cover}
.player .pb{
  width:66px;height:66px;border-radius:33px;background:rgba(255,255,255,.14);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24);display:flex;align-items:center;justify-content:center;
}
.player .pt{font-size:12.5px;color:#B9CAE8}

/* 官网内页表格 */
.tbl-s{width:100%;border-collapse:collapse;font-size:13px}
.tbl-s th{
  text-align:left;font-size:11.5px;font-weight:500;color:var(--gray);letter-spacing:.4px;
  padding:0 12px 11px;border-bottom:1px solid var(--line);
}
.tbl-s td{padding:12px;border-bottom:1px solid var(--hair);color:var(--text-2)}
.tbl-s tr:last-child td{border-bottom:0}
.tbl-s tr:hover td{background:var(--brand-50)}

/* 禁用态按钮 */
.btn-site.disabled{background:var(--soft2);color:var(--gray);cursor:not-allowed;box-shadow:none}

/* 空状态 */
.empty-s{background:#fff;border-radius:14px;padding:64px 30px;text-align:center;box-shadow:var(--shadow-1)}
.empty-s .ic{width:56px;height:56px;border-radius:16px;background:var(--brand-50);margin:0 auto 18px;display:flex;align-items:center;justify-content:center}
.empty-s .t{font-size:15px;font-weight:600}
.empty-s .m{font-size:13px;color:var(--gray);margin-top:8px}

/* ---------- 登录页：居中卡片 + 左右分栏（内容向中线收拢） ---------- */
.auth-body{
  background:var(--paper);min-height:100vh;
  display:flex;align-items:center;justify-content:center;padding:48px 32px;
}
.auth-grid{
  width:100%;max-width:1000px;min-height:640px;
  display:grid;grid-template-columns:1.05fr .95fr;
  background:#fff;border-radius:20px;overflow:hidden;
  box-shadow:0 26px 64px -28px rgba(16,31,76,.34),0 0 0 1px rgba(16,31,76,.05);
}
.auth-left{
  position:relative;overflow:hidden;color:#fff;padding:54px 48px 42px;
  background:linear-gradient(155deg,#2A4C93 0%,#1A3572 50%,#101F4C 100%);
  display:flex;flex-direction:column;
}
.auth-left::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:58px 58px;
  -webkit-mask-image:radial-gradient(64% 58% at 40% 28%,#000,transparent 76%);
  mask-image:radial-gradient(64% 58% at 40% 28%,#000,transparent 76%);
}
.auth-left .inner{
  position:relative;z-index:2;flex:1;display:flex;flex-direction:column;
  width:100%;max-width:396px;margin-left:auto;   /* 靠中线一侧 */
}
.auth-left h2{font-size:34px;line-height:1.36;font-weight:600;margin:34px 0 0;letter-spacing:-.6px}
.auth-left p{font-size:14px;line-height:1.9;color:#BFCFEC;margin:16px 0 0;max-width:396px}
.auth-points{margin-top:38px;display:flex;flex-direction:column;gap:18px}
.auth-points .pt{display:flex;gap:13px;align-items:flex-start}
.auth-points .pt .ic{
  width:34px;height:34px;border-radius:10px;flex:0 0 34px;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
}
.auth-points .pt b{font-size:13px;font-weight:600;display:block}
.auth-points .pt span{font-size:12px;color:#A9BCDE;display:block;margin-top:4px;line-height:1.7}
.auth-left .auth-foot{margin-top:auto;padding-top:36px;font-size:11.5px;color:#7E93BC}

.auth-right{
  display:flex;align-items:center;justify-content:center;
  padding:52px 44px;background:#fff;
}
.auth-box{width:100%;max-width:344px}
.auth-box .ttl{font-size:23px;font-weight:600;letter-spacing:-.3px}
.auth-box .sub{font-size:12.5px;color:var(--gray);margin-top:9px;line-height:1.7}
.auth-box .link-home{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--gray2);margin-bottom:26px}
.auth-box .link-home:hover{color:var(--brand-600)}
.fld-s{margin-top:18px}
.fld-s.first{margin-top:30px}
.fld-s label{display:block;font-size:12.5px;color:var(--text-2);font-weight:500;margin-bottom:8px}
.fld-s input{
  width:100%;height:44px;border-radius:10px;border:1px solid var(--line);background:#fff;
  padding:0 14px;font-size:14px;transition:border-color .16s,box-shadow .16s;
}
.fld-s input:focus{outline:none;border-color:var(--brand-400);box-shadow:0 0 0 3px rgba(58,97,180,.12)}
.auth-err{
  background:var(--redbg);color:var(--red);font-size:12.5px;border-radius:9px;padding:11px 14px;
  margin-top:18px;line-height:1.6;
}
.auth-agree{display:flex;align-items:flex-start;gap:9px;margin-top:18px;font-size:12.5px;color:var(--gray2);line-height:1.6}
.auth-agree input{width:15px;height:15px;margin-top:2px;flex:0 0 15px;accent-color:var(--brand-600)}
.auth-agree a{color:var(--brand-600)}
.auth-box .btn-site{width:100%;margin-top:24px;height:46px;font-size:14.5px}
.auth-tip{font-size:12px;color:var(--gray);margin-top:20px;line-height:1.75}
.auth-tip b{color:var(--text-2)}
.auth-switch{font-size:12.5px;color:var(--gray);margin-top:14px;text-align:center}
.auth-switch a{color:var(--brand-600);font-weight:500}

/* ---------- 响应式 ---------- */
@media (max-width:1080px){
  .hero-site .wrap{grid-template-columns:1fr;gap:40px}
  .hero-card{max-width:460px}
  .hero-site h1{font-size:36px}
  .svc,.grid-3{grid-template-columns:repeat(2,1fr)}
  .stats{grid-template-columns:repeat(2,1fr)}
  .site-foot .cols{grid-template-columns:1fr 1fr;gap:32px}
  .page-main .wrap{grid-template-columns:1fr}
  .side-card{position:static}
  .auth-grid{grid-template-columns:1fr;max-width:452px;min-height:0}
  .auth-left{display:none}
  .auth-right{padding:46px 40px;justify-content:center}
}
@media (max-width:860px){
  .site-top .wrap{gap:20px}
  .site-nav{display:none}
  .wrap{padding:0 20px}
  .hero-site{padding:56px 0 60px}
  .hero-site h1{font-size:30px}
  .hero-site p.lead{font-size:14px}
  .sect{padding:52px 0}
  .sect-h h2{font-size:23px}
  .sect-h{flex-direction:column;align-items:flex-start;gap:10px}
  .svc,.grid-3{grid-template-columns:1fr}
  .hero-facts{flex-wrap:wrap;gap:22px 30px}
  .cta{flex-direction:column;align-items:flex-start;padding:34px 26px;gap:24px}
  .site-foot .cols{grid-template-columns:1fr;gap:28px}
  .site-foot .foot-bar{flex-direction:column;align-items:flex-start;gap:10px}
  .page-head{padding:38px 0 34px}
  .page-head h1{font-size:24px}
  .panel-s{padding:22px 20px}
  .auth-right{padding:36px 22px}
  .hero-btns{flex-direction:column;align-items:stretch}
  .hero-btns .btn-site{width:100%}
}
@media (max-width:520px){
  .auth-body{padding:22px 14px}
  .auth-grid{border-radius:14px}
  .auth-right{padding:32px 22px}
  .auth-box .ttl{font-size:21px}
}
