/* =========================================================
   医师到家 · 娇医师 门户官网 — 共享样式 v2（高端改版）
   配色：深墨蓝 + 医疗青 + 玫瑰粉，细发丝线 + 多层柔和阴影
   ========================================================= */
:root{
  --cyan:#1aa6cc; --cyan-bright:#3fc0e0; --cyan-deep:#0a7096; --cyan-ink:#0b5f80;
  --navy:#0b2b3c; --navy-2:#144257; --ink-soft:#3d5c6d;
  --pink:#ec8aa4; --pink-deep:#d9627f;
  --bg:#f6fafc; --bg-2:#eef5f9; --card:#ffffff;
  --line:rgba(11,60,84,.10); --line-strong:rgba(11,60,84,.16);
  --muted:#6b8898; --radius:20px; --radius-lg:26px;
  --shadow-sm:0 1px 2px rgba(11,43,60,.05), 0 6px 16px -10px rgba(11,43,60,.16);
  --shadow:0 1px 2px rgba(11,43,60,.04), 0 18px 40px -20px rgba(11,43,60,.28);
  --shadow-lg:0 2px 4px rgba(11,43,60,.05), 0 34px 70px -30px rgba(11,43,60,.34);
  --grad-cyan:linear-gradient(135deg,#3fc0e0 0%,#0a7096 100%);
  --grad-rose:linear-gradient(135deg,#f3a3b8 0%,#d9627f 100%);
  --grad-ink:linear-gradient(150deg,#123a4e 0%,#0b2b3c 60%,#08222f 100%);
  --font:"PingFang SC","HarmonyOS Sans SC","MiSans","Microsoft YaHei","Segoe UI",Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font);background:var(--bg);color:var(--navy);
  line-height:1.75;font-size:16px;letter-spacing:.005em;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
.container{max-width:1200px;margin:0 auto;padding:0 28px}
section{padding:clamp(64px,7vw,104px) 0}
h1,h2,h3,h4,h5{line-height:1.25;letter-spacing:-.015em;font-weight:800}
.num,.stat .num,.opp .big,.profit .num,.news-date .d,.tl-item .year,.bp .yr{font-variant-numeric:tabular-nums}
::selection{background:rgba(26,166,204,.22)}

/* ===== header ===== */
header{
  position:sticky;top:0;z-index:120;
  background:rgba(255,255,255,.78);backdrop-filter:saturate(180%) blur(18px);
  -webkit-backdrop-filter:saturate(180%) blur(18px);
  border-bottom:1px solid transparent;transition:border-color .3s,box-shadow .3s,background .3s;
}
header.scrolled{border-bottom-color:var(--line);box-shadow:0 10px 30px -22px rgba(11,43,60,.45);background:rgba(255,255,255,.9)}
.nav{display:flex;align-items:center;justify-content:space-between;height:78px}
.logo img{height:34px;width:auto;filter:drop-shadow(0 2px 6px rgba(11,43,60,.10))}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-links a{
  font-size:15px;font-weight:600;color:var(--navy-2);position:relative;
  padding:9px 13px;border-radius:999px;transition:color .2s,background .2s;white-space:nowrap;
}
.nav-links a:hover{color:var(--cyan-deep);background:rgba(26,166,204,.07)}
.nav-links a.active{color:var(--cyan-deep);background:rgba(26,166,204,.10)}
.nav-links a::after{display:none}
.nav-right{display:flex;align-items:center;gap:12px}
.lang-btn{
  border:1px solid var(--line-strong);color:var(--navy-2);background:rgba(255,255,255,.7);
  font-weight:700;font-size:13.5px;letter-spacing:.06em;padding:8px 18px;border-radius:999px;
  cursor:pointer;transition:.22s;
}
.lang-btn:hover{border-color:var(--cyan);color:var(--cyan-deep);background:#fff}
.cta-btn{
  background:var(--grad-cyan);color:#fff;font-weight:700;font-size:14.5px;padding:11px 24px;border-radius:999px;
  box-shadow:0 10px 24px -12px rgba(10,112,150,.9), inset 0 1px 0 rgba(255,255,255,.34);
  transition:transform .22s,box-shadow .22s;
}
.cta-btn:hover{transform:translateY(-2px);box-shadow:0 16px 32px -14px rgba(10,112,150,.95), inset 0 1px 0 rgba(255,255,255,.4)}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.burger span{width:22px;height:2px;background:var(--navy);border-radius:2px;transition:.25s}

/* ===== hero ===== */
.hero{
  position:relative;overflow:hidden;
  padding:clamp(56px,7vw,96px) 0 clamp(64px,8vw,110px);
  background:
    radial-gradient(1100px 520px at 88% -14%,rgba(63,192,224,.22),transparent 62%),
    radial-gradient(820px 460px at -8% 108%,rgba(236,138,164,.16),transparent 62%),
    linear-gradient(170deg,#f2fafd 0%,#fbfdff 48%,#eef6fa 100%);
}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(rgba(11,95,128,.10) 1px,transparent 1px);
  background-size:22px 22px;
  mask-image:radial-gradient(720px 500px at 78% 12%,#000 10%,transparent 72%);
  -webkit-mask-image:radial-gradient(720px 500px at 78% 12%,#000 10%,transparent 72%);
}
.hero::after{
  content:"";position:absolute;width:520px;height:520px;right:-160px;top:-120px;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,rgba(63,192,224,.28),rgba(63,192,224,0) 68%);
  filter:blur(4px);pointer-events:none;
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,5vw,64px);align-items:center;position:relative;z-index:1}
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.16em;
  color:var(--cyan-deep);background:rgba(255,255,255,.85);border:1px solid var(--line);
  padding:8px 18px 8px 14px;border-radius:999px;box-shadow:var(--shadow-sm);backdrop-filter:blur(8px);
}
.eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pink-deep);box-shadow:0 0 0 4px rgba(217,98,127,.16)}
.hero h1{
  font-size:clamp(38px,4.6vw,62px);margin:26px 0 16px;letter-spacing:-.03em;line-height:1.12;
  background:linear-gradient(150deg,#0b2b3c 26%,#0a7096 88%);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero h1 .hl{
  background:linear-gradient(135deg,#3fc0e0,#0a7096);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero .slogan{font-size:clamp(17px,1.5vw,20px);font-weight:700;color:var(--pink-deep);margin-bottom:16px;letter-spacing:-.01em}
.hero .sub{font-size:16.5px;color:var(--ink-soft);max-width:600px}
.hero-chips{display:flex;flex-wrap:wrap;gap:11px;margin:32px 0 36px}
.chip{
  background:rgba(255,255,255,.86);border:1px solid var(--line);color:var(--cyan-ink);
  font-weight:650;font-size:14.5px;padding:9px 18px 9px 10px;border-radius:999px;
  display:inline-flex;align-items:center;gap:9px;box-shadow:var(--shadow-sm);
  transition:transform .22s,box-shadow .22s,border-color .22s;backdrop-filter:blur(6px);
}
.chip:hover{transform:translateY(-3px);border-color:rgba(26,166,204,.4);box-shadow:var(--shadow)}
.chip b{
  display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;
  background:var(--grad-cyan);color:#fff;font-size:11px;font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;font-size:15.5px;
  padding:15px 32px;border-radius:999px;transition:transform .22s,box-shadow .22s,background .22s,color .22s;
}
.btn-primary{
  background:var(--grad-cyan);color:#fff;
  box-shadow:0 18px 36px -18px rgba(10,112,150,1), inset 0 1px 0 rgba(255,255,255,.36);
}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 26px 46px -20px rgba(10,112,150,1), inset 0 1px 0 rgba(255,255,255,.42)}
.btn-ghost{border:1px solid var(--line-strong);color:var(--cyan-ink);background:rgba(255,255,255,.8);backdrop-filter:blur(6px)}
.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan-deep);background:#fff;transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.hero-visual{position:relative}
.hero-visual .frame{
  border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.7);
  box-shadow:var(--shadow-lg);background:linear-gradient(180deg,#e2f4fb,#bfe7f5);position:relative;
}
.hero-visual .frame::after{
  content:"";position:absolute;inset:0;border-radius:var(--radius-lg);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);pointer-events:none;
}
.hero-visual img{width:100%;height:580px;object-fit:cover;object-position:top}
.hero-badge{
  position:absolute;left:-22px;bottom:40px;background:rgba(255,255,255,.92);
  border-radius:18px;padding:16px 24px;box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.8);
  backdrop-filter:blur(14px);
}
.hero-badge .t{font-size:12.5px;color:var(--muted);letter-spacing:.08em;font-weight:600}
.hero-badge .v{font-size:22px;font-weight:800;color:var(--cyan-deep);letter-spacing:-.02em}

/* ===== stats ===== */
.stats{background:var(--grad-ink);padding:0;position:relative;overflow:hidden}
.stats::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(600px 200px at 20% -40%,rgba(63,192,224,.28),transparent 70%),
             radial-gradient(600px 220px at 84% 140%,rgba(236,138,164,.22),transparent 70%);
}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);position:relative;z-index:1}
.stat{padding:44px 20px;text-align:center;border-left:1px solid rgba(255,255,255,.10)}
.stat:first-child{border-left:none}
.stat .num{font-size:clamp(32px,3.2vw,42px);font-weight:800;color:#fff;letter-spacing:-.03em;line-height:1}
.stat .num small{font-size:19px;font-weight:700;margin-left:3px;color:rgba(255,255,255,.86)}
.stat .lab{font-size:13.5px;color:rgba(219,238,247,.78);margin-top:8px;letter-spacing:.03em}

/* ===== section head ===== */
.sec-head{text-align:center;max-width:800px;margin:0 auto clamp(40px,4.5vw,60px)}
.sec-head .en{
  display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:800;letter-spacing:.26em;
  color:var(--cyan);text-transform:uppercase;
}
.sec-head .en::before,.sec-head .en::after{content:"";width:28px;height:1px;background:linear-gradient(90deg,transparent,var(--cyan))}
.sec-head .en::after{background:linear-gradient(90deg,var(--cyan),transparent)}
.sec-head h2{font-size:clamp(28px,3.2vw,42px);margin:12px 0 16px;letter-spacing:-.03em}
.sec-head p{color:var(--muted);font-size:16.5px}
.sec-head .bar{
  width:76px;height:4px;border-radius:99px;margin:22px auto 0;
  background:var(--grad-cyan);box-shadow:0 6px 14px -8px rgba(10,112,150,.9);
}

/* ===== about ===== */
.about-top{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(28px,3.4vw,44px);align-items:start;margin-bottom:52px}
.about-lead{
  background:var(--card);border-radius:var(--radius-lg);padding:clamp(28px,3vw,40px);
  box-shadow:var(--shadow);border:1px solid var(--line);position:relative;overflow:hidden;
}
.about-lead::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:var(--grad-cyan)}
.about-lead h3{font-size:21px;margin-bottom:14px;color:var(--cyan-ink);letter-spacing:-.02em}
.about-lead p{color:var(--ink-soft);font-size:15.5px}
.pillars{display:grid;gap:18px}
.pillar{
  background:var(--card);border-radius:var(--radius);padding:26px 28px;box-shadow:var(--shadow-sm);
  border:1px solid var(--line);transition:transform .25s,box-shadow .25s,border-color .25s;
}
.pillar:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(26,166,204,.28)}
.pillar h4{font-size:16.5px;color:var(--pink-deep);margin-bottom:10px;letter-spacing:-.01em}
.pillar .tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.pillar .tags span{
  background:rgba(26,166,204,.08);color:var(--cyan-ink);border:1px solid rgba(26,166,204,.16);
  font-size:13px;font-weight:650;padding:4px 14px;border-radius:999px;
}
.pillar p{font-size:14.3px;color:var(--muted)}
.stores{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:52px}
.store{
  background:linear-gradient(160deg,#f4fcfe 0%,#eaf6fc 55%,#eef4fb 100%);
  border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);
  border:1px solid var(--line);transition:transform .28s,box-shadow .28s;
}
.store:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.store img{
  width:100%;height:290px;object-fit:contain;object-position:center bottom;
  padding:26px 30px 0;filter:drop-shadow(0 20px 24px rgba(11,43,60,.18));
}
.store .cap{padding:16px 22px;font-size:14.8px;font-weight:700;color:var(--cyan-ink);background:#fff;border-top:1px solid var(--line)}

/* timeline */
.timeline{position:relative;margin:clamp(50px,6vw,80px) auto 0;max-width:900px;padding-left:40px}
.timeline::before{
  content:"";position:absolute;left:11px;top:8px;bottom:8px;width:2px;
  background:linear-gradient(180deg,rgba(26,166,204,.5),rgba(236,138,164,.5));
}
.tl-item{position:relative;padding:0 0 36px 28px}
.tl-item::before{
  content:"";position:absolute;left:-36px;top:6px;width:14px;height:14px;border-radius:50%;
  background:#fff;border:3px solid var(--cyan);box-shadow:0 0 0 5px rgba(26,166,204,.12);
}
.tl-item:nth-child(even)::before{border-color:var(--pink);box-shadow:0 0 0 5px rgba(236,138,164,.14)}
.tl-item .year{font-size:23px;font-weight:800;color:var(--cyan-deep);letter-spacing:-.02em}
.tl-item:nth-child(even) .year{color:var(--pink-deep)}
.tl-item h4{font-size:17px;margin:2px 0 8px}
.tl-item p{font-size:14.5px;color:var(--muted)}

/* culture */
.culture{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px}
.cul-card{
  background:var(--card);border-radius:var(--radius-lg);padding:34px 32px;box-shadow:var(--shadow-sm);
  border:1px solid var(--line);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;
}
.cul-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--grad-cyan)}
.cul-card:nth-child(2)::before{background:var(--grad-rose)}
.cul-card:nth-child(3)::before{background:linear-gradient(135deg,#144257,#0b2b3c)}
.cul-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.cul-card .ico{
  width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:16px;font-size:24px;
  background:rgba(26,166,204,.09);margin-bottom:16px;
}
.cul-card h4{font-size:18.5px;margin-bottom:12px;letter-spacing:-.02em}
.cul-card p{font-size:14.4px;color:var(--muted)}
.cul-wide{
  grid-column:1/-1;text-align:center;padding:42px 32px;border-radius:var(--radius-lg);
  background:linear-gradient(120deg,rgba(26,166,204,.10),rgba(236,138,164,.12));
  border:1px solid var(--line);
}
.cul-wide .zh{font-size:clamp(21px,2.2vw,27px);font-weight:800;color:var(--pink-deep);letter-spacing:-.02em}
.cul-wide .en{font-size:13.5px;color:var(--muted);margin-top:8px;letter-spacing:.06em}

/* quals */
.quals{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:56px}
.qual{
  background:var(--card);border-radius:var(--radius);padding:30px 26px;box-shadow:var(--shadow-sm);
  border:1px solid var(--line);text-align:center;transition:transform .25s,box-shadow .25s;
}
.qual:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.qual .num{
  width:54px;height:54px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;
  border-radius:17px;background:var(--grad-cyan);color:#fff;font-weight:800;font-size:18px;
  box-shadow:0 12px 26px -14px rgba(10,112,150,.95), inset 0 1px 0 rgba(255,255,255,.34);
}
.qual:nth-child(even) .num{background:var(--grad-rose);box-shadow:0 12px 26px -14px rgba(217,98,127,.95), inset 0 1px 0 rgba(255,255,255,.34)}
.qual h4{font-size:16px;margin-bottom:9px;letter-spacing:-.01em}
.qual p{font-size:13.4px;color:var(--muted)}

/* ===== services ===== */
.svc{background:#fff}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.svc-card{
  background:linear-gradient(180deg,#fbfdff,var(--bg));border-radius:var(--radius-lg);padding:32px 30px;
  border:1px solid var(--line);transition:transform .26s,box-shadow .26s,border-color .26s;position:relative;overflow:hidden;
}
.svc-card::after{
  content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;
  background:radial-gradient(circle,rgba(26,166,204,.14),transparent 70%);transition:.3s;
}
.svc-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:rgba(26,166,204,.3)}
.svc-card:hover::after{transform:scale(1.15)}
.svc-card .no{font-size:13px;font-weight:800;letter-spacing:.14em;color:var(--cyan);display:inline-block;padding-bottom:8px}
.svc-card h4{font-size:19.5px;margin:6px 0 12px;letter-spacing:-.02em}
.svc-card p{font-size:14.4px;color:var(--muted)}
.svc-photos{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:48px}
.svc-photo{border-radius:var(--radius-lg);overflow:hidden;position:relative;box-shadow:var(--shadow)}
.svc-photo img{width:100%;height:320px;object-fit:cover;transition:transform .5s}
.svc-photo:hover img{transform:scale(1.04)}
.svc-photo .cap{
  position:absolute;left:0;right:0;bottom:0;color:#fff;padding:56px 24px 20px;font-weight:700;font-size:15.5px;
  background:linear-gradient(transparent,rgba(8,34,47,.86));
}

/* tables */
.tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:clamp(48px,5vw,64px) 0 30px}
.tab-btn{
  border:1px solid var(--line-strong);background:rgba(255,255,255,.8);color:var(--navy-2);font-weight:700;
  font-size:14.5px;padding:11px 24px;border-radius:999px;cursor:pointer;transition:.22s;
}
.tab-btn:hover{border-color:var(--cyan);color:var(--cyan-deep);background:#fff}
.tab-btn.active{
  background:var(--grad-cyan);color:#fff;border-color:transparent;
  box-shadow:0 14px 30px -16px rgba(10,112,150,1), inset 0 1px 0 rgba(255,255,255,.34);
}
.tab-panel{display:none}
.tab-panel.active{display:block;animation:fade .4s cubic-bezier(.22,.8,.3,1)}
@keyframes fade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.tbl-wrap{
  overflow-x:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--line);background:#fff;
  -webkit-overflow-scrolling:touch;
}
table{width:100%;border-collapse:collapse;background:#fff;min-width:780px}
thead th{
  background:var(--grad-ink);color:#fff;font-size:14.5px;font-weight:700;letter-spacing:.04em;
  padding:17px 20px;text-align:left;white-space:nowrap;
}
tbody td{padding:16px 20px;border-bottom:1px solid var(--line);font-size:14.3px;color:var(--ink-soft);vertical-align:top}
tbody tr:last-child td{border-bottom:none}
tbody tr{transition:background .18s}
tbody tr:hover{background:#f4fafd}
tbody td.k{font-weight:700;color:var(--navy);white-space:nowrap}
tbody td.d{font-weight:700;color:var(--pink-deep);white-space:nowrap}
.health-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.health-card{
  background:#fff;border-radius:var(--radius);padding:28px;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s;
}
.health-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.health-card h4{font-size:16.5px;color:var(--pink-deep);margin-bottom:10px;letter-spacing:-.01em}
.health-card p{font-size:14.3px;color:var(--muted)}

/* ===== insights ===== */
.ins{
  background:
    radial-gradient(900px 420px at 100% 0,rgba(236,138,164,.10),transparent 60%),
    radial-gradient(700px 380px at 0 100%,rgba(26,166,204,.10),transparent 60%),
    var(--bg);
}
.wind-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-bottom:56px}
.wind{
  background:#fff;border-radius:var(--radius);padding:30px;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);display:flex;gap:20px;transition:transform .25s,box-shadow .25s;
}
.wind:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.wind .no{
  flex:0 0 48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;
  background:var(--grad-cyan);color:#fff;font-weight:800;font-size:17px;
  box-shadow:0 12px 24px -14px rgba(10,112,150,.95), inset 0 1px 0 rgba(255,255,255,.3);
}
.wind:nth-child(even) .no{background:var(--grad-rose);box-shadow:0 12px 24px -14px rgba(217,98,127,.95), inset 0 1px 0 rgba(255,255,255,.3)}
.wind h4{font-size:17px;margin-bottom:8px;letter-spacing:-.015em}
.wind p{font-size:14.3px;color:var(--muted)}
.opp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-bottom:60px}
.opp{
  border-radius:var(--radius-lg);padding:30px 26px;color:#fff;position:relative;overflow:hidden;
  box-shadow:var(--shadow);transition:transform .26s,box-shadow .26s;
}
.opp::after{content:"";position:absolute;right:-50px;bottom:-60px;width:170px;height:170px;border-radius:50%;background:rgba(255,255,255,.10)}
.opp:nth-child(odd){background:linear-gradient(150deg,#1aa6cc,#0a7096)}
.opp:nth-child(even){background:linear-gradient(150deg,#ec8aa4,#d9627f)}
.opp:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.opp .cat{font-size:12.6px;opacity:.94;font-weight:650;letter-spacing:.03em;position:relative}
.opp .big{font-size:clamp(30px,3vw,38px);font-weight:800;margin:10px 0 4px;letter-spacing:-.03em;position:relative}
.opp .big small{font-size:15px;font-weight:650;margin-left:2px}
.opp h4{font-size:16px;margin-bottom:8px;position:relative}
.opp p{font-size:13.4px;opacity:.95;position:relative}
.pain-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-bottom:60px}
.pain{
  background:#fff;border-radius:18px;padding:24px 20px;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s;
}
.pain:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.pain .ico{
  width:42px;height:42px;border-radius:13px;background:rgba(236,138,164,.12);color:var(--pink-deep);
  display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:14px;
}
.pain h5{font-size:15px;margin-bottom:8px;letter-spacing:-.01em}
.pain p{font-size:12.9px;color:var(--muted);line-height:1.68}
.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.policy{
  background:#fff;border-radius:var(--radius-lg);padding:34px 32px;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);position:relative;overflow:hidden;
}
.policy::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--grad-cyan)}
.policy:nth-child(2)::before{background:var(--grad-rose)}
.policy h4{font-size:18px;margin-bottom:16px;letter-spacing:-.02em}
.policy li{font-size:14.3px;color:var(--muted);padding:7px 0 7px 26px;position:relative}
.policy li::before{
  content:"";position:absolute;left:0;top:15px;width:7px;height:7px;border-radius:2px;
  background:var(--cyan);transform:rotate(45deg);
}
.policy:nth-child(2) li::before{background:var(--pink-deep)}

/* ===== franchise ===== */
.fra{background:#fff}
.fra-lead{text-align:center;max-width:840px;margin:0 auto 52px}
.fra-lead .big-zh{font-size:clamp(22px,2.4vw,29px);font-weight:800;color:var(--navy);letter-spacing:-.025em}
.fra-lead .big-zh em{font-style:normal;color:var(--pink-deep)}
.fra-lead p{color:var(--muted);margin-top:14px}
.emp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.emp{
  background:linear-gradient(180deg,#fbfdff,var(--bg));border-radius:var(--radius);padding:30px 26px;
  border:1px solid var(--line);transition:transform .25s,box-shadow .25s,border-color .25s;
}
.emp:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(26,166,204,.3)}
.emp .no{
  display:inline-flex;width:42px;height:42px;border-radius:14px;align-items:center;justify-content:center;
  background:var(--grad-cyan);color:#fff;font-weight:800;font-size:15px;margin-bottom:16px;
  box-shadow:0 12px 24px -14px rgba(10,112,150,.95), inset 0 1px 0 rgba(255,255,255,.3);
}
.emp:nth-child(even) .no{background:var(--grad-rose);box-shadow:0 12px 24px -14px rgba(217,98,127,.95), inset 0 1px 0 rgba(255,255,255,.3)}
.emp h4{font-size:17px;margin-bottom:10px;letter-spacing:-.015em}
.emp p{font-size:13.9px;color:var(--muted)}
.banner{
  margin:56px 0;border-radius:var(--radius-lg);padding:40px 36px;text-align:center;color:#fff;
  background:var(--grad-ink);box-shadow:var(--shadow-lg);position:relative;overflow:hidden;
}
.banner::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(600px 220px at 18% -30%,rgba(63,192,224,.34),transparent 70%),
             radial-gradient(560px 220px at 86% 140%,rgba(236,138,164,.28),transparent 70%);
}
.banner .t{font-size:clamp(20px,2.1vw,26px);font-weight:800;position:relative;letter-spacing:-.02em}
.banner .s{font-size:14.4px;opacity:.9;margin-top:12px;position:relative;max-width:820px;margin-left:auto;margin-right:auto}
.profit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:60px}
.profit{
  background:#fff;border-radius:var(--radius-lg);padding:34px 30px;border:1px solid var(--line);
  text-align:center;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s;
}
.profit:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.profit .lab{
  display:inline-block;font-size:12.6px;font-weight:700;color:var(--cyan-ink);background:rgba(26,166,204,.10);
  border:1px solid rgba(26,166,204,.18);border-radius:999px;padding:6px 18px;margin-bottom:18px;letter-spacing:.04em;
}
.profit:nth-child(2) .lab{background:rgba(236,138,164,.12);border-color:rgba(236,138,164,.22);color:var(--pink-deep)}
.profit .num{font-size:clamp(38px,4vw,48px);font-weight:800;color:var(--cyan-deep);letter-spacing:-.035em;line-height:1}
.profit:nth-child(2) .num{color:var(--pink-deep)}
.profit .num small{font-size:18px;font-weight:700}
.profit p{font-size:13.5px;color:var(--muted);margin-top:16px;text-align:left}
.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:60px}
.level{
  background:#fff;border-radius:var(--radius-lg);padding:32px 30px;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;
}
.level:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.level::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--grad-cyan)}
.level:nth-child(2)::before{background:var(--grad-rose)}
.level:nth-child(3)::before{background:linear-gradient(135deg,#144257,#0b2b3c)}
.level .lv{font-size:12.5px;font-weight:800;letter-spacing:.16em;color:var(--cyan)}
.level:nth-child(2) .lv{color:var(--pink-deep)}
.level:nth-child(3) .lv{color:var(--navy-2)}
.level h4{font-size:19px;margin:6px 0 12px;letter-spacing:-.02em}
.level .tag{
  display:inline-block;font-size:12.4px;font-weight:700;color:#fff;background:var(--grad-cyan);
  border-radius:999px;padding:5px 16px;margin-bottom:14px;letter-spacing:.04em;
}
.level:nth-child(2) .tag{background:var(--grad-rose)}
.level:nth-child(3) .tag{background:linear-gradient(135deg,#144257,#0b2b3c)}
.level p{font-size:14px;color:var(--muted)}
.target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:60px}
.target{
  background:#fff;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);transition:transform .26s,box-shadow .26s;display:flex;flex-direction:column;
}
.target:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.target .head{padding:22px 26px;display:flex;align-items:center;gap:14px}
.target:nth-child(1) .head{background:linear-gradient(135deg,#1aa6cc,#0a7096)}
.target:nth-child(2) .head{background:linear-gradient(135deg,#ec8aa4,#d9627f)}
.target:nth-child(3) .head{background:var(--grad-ink)}
.target .head .no{font-size:13px;font-weight:800;opacity:.9;letter-spacing:.08em}
.target .head h4{color:#fff;font-size:17.5px;letter-spacing:-.015em}
.target .body{padding:26px;flex:1}
.target .body p{font-size:14.2px;color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-bottom:64px}
.step{
  background:linear-gradient(180deg,#fbfdff,var(--bg));border-radius:var(--radius);padding:28px 26px;
  border:1px solid var(--line);position:relative;transition:transform .25s,box-shadow .25s;
}
.step:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.step .no{
  width:46px;height:46px;border-radius:15px;background:var(--grad-cyan);color:#fff;font-weight:800;font-size:16px;
  display:flex;align-items:center;justify-content:center;margin-bottom:16px;
  box-shadow:0 12px 24px -14px rgba(10,112,150,.95), inset 0 1px 0 rgba(255,255,255,.3);
}
.step h4{font-size:16.5px;margin-bottom:10px;letter-spacing:-.015em}
.step p{font-size:13.7px;color:var(--muted)}
.step::after{content:"";position:absolute;right:-19px;top:46px;width:16px;height:1px;background:var(--line-strong);z-index:2}
.step:last-child::after{display:none}
.blueprint{
  border-radius:var(--radius-lg);padding:clamp(32px,4vw,52px) clamp(24px,3.4vw,44px);
  background:linear-gradient(150deg,rgba(26,166,204,.08),rgba(236,138,164,.09));border:1px solid var(--line);
}
.bp-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:34px}
.bp{
  background:#fff;border-radius:16px;padding:22px 16px;text-align:center;
  border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s;
}
.bp:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.bp .yr{font-size:19px;font-weight:800;color:var(--cyan-deep);letter-spacing:-.02em}
.bp:nth-child(even) .yr{color:var(--pink-deep)}
.bp .star{font-size:14px;font-weight:800;margin:8px 0 6px}
.bp p{font-size:12.4px;color:var(--muted);line-height:1.6}
.bp-goal{margin-top:30px;text-align:center;font-size:clamp(17px,1.8vw,20px);font-weight:800;color:var(--cyan-ink);letter-spacing:-.02em}
.bp-goal b{color:var(--pink-deep)}

/* faq */
.faq-list{max-width:880px;margin:0 auto;display:grid;gap:14px}
details{
  background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm);
  overflow:hidden;transition:box-shadow .25s,border-color .25s;
}
details:hover{box-shadow:var(--shadow);border-color:rgba(26,166,204,.24)}
summary{cursor:pointer;font-weight:700;font-size:16px;padding:20px 24px;display:flex;align-items:center;gap:14px;list-style:none}
summary::-webkit-details-marker{display:none}
summary::before{
  content:"Q";flex:0 0 32px;height:32px;border-radius:11px;background:var(--grad-rose);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:13.5px;font-weight:800;
  box-shadow:0 10px 20px -12px rgba(217,98,127,.95), inset 0 1px 0 rgba(255,255,255,.34);
}
details .ans{padding:0 24px 22px 70px;font-size:14.3px;color:var(--muted)}
details[open] summary{color:var(--cyan-deep)}

/* ===== contact ===== */
.contact{
  background:
    radial-gradient(800px 380px at 88% 6%,rgba(26,166,204,.14),transparent 62%),
    linear-gradient(165deg,#eef8fc,#fbfdff);
}
.contact-card{
  background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--line);
  overflow:hidden;display:grid;grid-template-columns:1.15fr .85fr;
}
.contact-l{padding:clamp(30px,3.6vw,48px)}
.contact-l h3{font-size:clamp(22px,2.4vw,28px);margin-bottom:10px;letter-spacing:-.025em}
.contact-l .sub{color:var(--muted);margin-bottom:30px;font-size:15px}
.c-item{display:flex;align-items:center;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}
.c-item:last-child{border-bottom:none}
.c-item .ico{
  flex:0 0 48px;height:48px;border-radius:15px;background:var(--grad-cyan);display:flex;align-items:center;
  justify-content:center;color:#fff;font-size:19px;
  box-shadow:0 12px 24px -14px rgba(10,112,150,.95), inset 0 1px 0 rgba(255,255,255,.3);
}
.c-item:nth-child(4) .ico,.c-item:nth-child(5) .ico{background:var(--grad-rose);box-shadow:0 12px 24px -14px rgba(217,98,127,.95), inset 0 1px 0 rgba(255,255,255,.3)}
.c-item .k{font-size:12.6px;color:var(--muted);letter-spacing:.05em}
.c-item .v{font-size:17.5px;font-weight:800;color:var(--navy);letter-spacing:-.02em}
.c-item .v a:hover{color:var(--cyan-deep)}
.contact-r{
  background:linear-gradient(160deg,#eef8fc,#fdeff4);display:flex;flex-direction:column;align-items:center;
  justify-content:center;padding:44px;text-align:center;
}
.contact-r img{width:200px;border-radius:18px;background:#fff;padding:12px;box-shadow:var(--shadow)}
.contact-r .cap{font-weight:800;margin-top:18px;color:var(--cyan-ink);letter-spacing:-.01em}
.contact-r .tel{margin-top:8px;font-size:13.8px;color:var(--muted)}

/* ===== footer ===== */
footer{background:var(--grad-ink);color:#a9c6d4;padding:64px 0 0;position:relative;overflow:hidden}
footer::before{
  content:"";position:absolute;inset:0 0 auto;height:1px;
  background:linear-gradient(90deg,transparent,rgba(63,192,224,.5),rgba(236,138,164,.45),transparent);
}
footer::after{
  content:"";position:absolute;width:520px;height:520px;right:-180px;bottom:-260px;border-radius:50%;
  background:radial-gradient(circle,rgba(63,192,224,.14),transparent 68%);pointer-events:none;
}
.f-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;padding-bottom:44px;position:relative;z-index:1}
.f-brand img{height:42px;border-radius:14px;background:#fff;padding:9px 14px;box-shadow:0 14px 30px -18px rgba(0,0,0,.6)}
.f-brand p{font-size:14px;margin-top:18px;color:#8fb0c0;max-width:420px}
footer h5{color:#fff;font-size:15px;margin-bottom:18px;letter-spacing:.02em}
footer li{margin-bottom:11px;font-size:14px}
footer li a{transition:color .2s;color:#a9c6d4}
footer li a:hover{color:#fff}
.f-bar{
  border-top:1px solid rgba(255,255,255,.10);padding:22px 0;text-align:center;font-size:13px;color:#7ea6ba;
  position:relative;z-index:1;line-height:2;
}
.f-bar a{color:#9cc6d9}
.f-bar a:hover{color:#fff}

/* ===== 子页面 banner ===== */
.page-hero{
  position:relative;overflow:hidden;text-align:center;
  padding:clamp(48px,5.6vw,78px) 0 clamp(44px,5vw,66px);
  background:
    radial-gradient(900px 420px at 86% -20%,rgba(63,192,224,.20),transparent 62%),
    radial-gradient(680px 380px at -6% 116%,rgba(236,138,164,.14),transparent 62%),
    linear-gradient(170deg,#f0f9fd 0%,#fbfdff 55%,#eef6fa 100%);
}
.page-hero::before{
  content:"";position:absolute;inset:0;opacity:.45;pointer-events:none;
  background-image:radial-gradient(rgba(11,95,128,.10) 1px,transparent 1px);background-size:22px 22px;
  mask-image:radial-gradient(620px 320px at 50% 0,#000 8%,transparent 74%);
  -webkit-mask-image:radial-gradient(620px 320px at 50% 0,#000 8%,transparent 74%);
}
.page-hero .en{font-size:12px;font-weight:800;letter-spacing:.26em;color:var(--cyan);text-transform:uppercase}
.page-hero h1{font-size:clamp(30px,3.6vw,46px);margin:14px 0 14px;letter-spacing:-.03em;position:relative}
.page-hero p{max-width:760px;margin:0 auto;color:var(--ink-soft);font-size:16px;position:relative}
.page-hero .bar{
  width:76px;height:4px;border-radius:99px;margin:24px auto 0;background:var(--grad-cyan);
  box-shadow:0 6px 14px -8px rgba(10,112,150,.9);
}

/* ===== 新闻资讯 ===== */
.filter-bar{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:44px}
.news-list{display:grid;gap:20px;max-width:980px;margin:0 auto}
.news-card{
  background:#fff;border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-sm);
  padding:30px 34px;display:grid;grid-template-columns:112px 1fr;gap:28px;
  transition:transform .26s,box-shadow .26s,border-color .26s;
}
.news-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(26,166,204,.26)}
.news-card.policy-news{border-left:4px solid var(--pink-deep)}
.news-date{align-self:start;text-align:center;border-right:1px solid var(--line);padding-right:22px}
.news-date .d{
  font-size:36px;font-weight:800;letter-spacing:-.04em;line-height:1;
  background:var(--grad-cyan);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.news-card.policy-news .news-date .d{background:var(--grad-rose);-webkit-background-clip:text;background-clip:text;color:transparent}
.news-date .ym{font-size:12.5px;color:var(--muted);margin-top:8px;letter-spacing:.04em}
.news-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.news-tag{display:inline-block;font-size:12.2px;font-weight:750;padding:4px 14px;border-radius:999px;white-space:nowrap;letter-spacing:.03em}
.tag-company{background:rgba(26,166,204,.11);color:var(--cyan-ink)}
.tag-policy{background:rgba(236,138,164,.14);color:var(--pink-deep)}
.tag-activity{background:rgba(30,158,106,.12);color:#127d51}
.news-top time{font-size:12.6px;color:var(--muted);letter-spacing:.03em}
.news-card h3{font-size:18.5px;margin:12px 0 10px;line-height:1.5;letter-spacing:-.02em}
.news-card .excerpt{font-size:14.4px;color:var(--muted)}
.news-full{display:none;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-size:14.6px;color:var(--ink-soft);line-height:1.9}
.news-full p{margin-bottom:12px}
.news-card.open .news-full{display:block}
.link-btn{
  margin-top:14px;display:inline-flex;align-items:center;gap:6px;background:none;border:none;
  color:var(--cyan-deep);font-weight:750;font-size:14.2px;cursor:pointer;padding:0;transition:color .2s;
}
.link-btn:hover{color:var(--pink-deep)}
.news-toggle .t-less{display:none}
.news-card.open .news-toggle .t-more{display:none}
.news-card.open .news-toggle .t-less{display:inline}
.policy-note{
  max-width:980px;margin:0 auto 40px;border-radius:var(--radius);padding:20px 28px;font-size:14.4px;
  color:var(--ink-soft);display:flex;gap:14px;align-items:flex-start;
  background:linear-gradient(120deg,rgba(26,166,204,.09),rgba(236,138,164,.10));
  border:1px solid var(--line);
}
.policy-note .ico{font-size:19px;flex:0 0 auto;line-height:1.6}

/* ===== 宣传活动 ===== */
.act-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:60px}
.act-card{
  background:#fff;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);transition:transform .28s,box-shadow .28s;display:flex;flex-direction:column;
}
.act-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-lg)}
.act-band{height:132px;display:flex;align-items:flex-end;padding:18px 24px;color:#fff;position:relative}
.act-band::after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(220px 140px at 88% 0,rgba(255,255,255,.24),transparent 70%);
}
.act-band .ico{font-size:32px;margin-right:12px;position:relative}
.act-band h3{font-size:19px;font-weight:800;text-shadow:0 2px 12px rgba(0,0,0,.24);position:relative;letter-spacing:-.02em}
.act-band .st{
  position:absolute;top:16px;right:16px;font-size:12.2px;font-weight:750;padding:5px 15px;border-radius:999px;
  background:rgba(255,255,255,.94);z-index:2;letter-spacing:.04em;box-shadow:0 6px 16px -8px rgba(0,0,0,.4);
}
.st-open{color:#127d51}
.st-ongoing{color:var(--cyan-deep)}
.st-done{color:#8d9aa3}
.act-card .body{padding:24px 26px 28px;flex:1;display:flex;flex-direction:column}
.act-card .body p{font-size:14.1px;color:var(--muted);flex:1}
.act-meta{margin-top:18px;display:grid;gap:8px;font-size:13.4px;color:var(--ink-soft);padding-top:16px;border-top:1px solid var(--line)}
.act-meta span{display:flex;gap:9px;align-items:flex-start;line-height:1.55}
.cta-strip{
  border-radius:var(--radius-lg);padding:36px 40px;color:#fff;display:flex;align-items:center;
  justify-content:space-between;gap:24px;flex-wrap:wrap;box-shadow:var(--shadow-lg);
  background:var(--grad-ink);position:relative;overflow:hidden;
}
.cta-strip::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(560px 220px at 12% -40%,rgba(63,192,224,.34),transparent 70%),
             radial-gradient(520px 220px at 90% 150%,rgba(236,138,164,.26),transparent 70%);
}
.cta-strip .t{font-size:clamp(18px,1.9vw,22px);font-weight:800;position:relative;letter-spacing:-.02em}
.cta-strip .s{font-size:14px;opacity:.9;margin-top:6px;position:relative}
.cta-strip .btn{background:#fff;color:var(--cyan-deep);position:relative;font-weight:800;box-shadow:0 16px 32px -18px rgba(0,0,0,.6)}
.cta-strip .btn:hover{transform:translateY(-3px)}

/* reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,.8,.3,1),transform .7s cubic-bezier(.22,.8,.3,1)}
.reveal.on{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* ===== responsive ===== */
@media(max-width:1120px){
  .nav-links{gap:2px}
  .nav-links a{padding:9px 10px;font-size:14.4px}
  .cta-btn{display:none}
}
@media(max-width:1024px){
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{max-width:440px;margin:0 auto}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .stat{border-left:none;border-top:1px solid rgba(255,255,255,.10);padding:34px 16px}
  .stat:nth-child(-n+2){border-top:none}
  .about-top{grid-template-columns:1fr}
  .quals,.emp-grid,.opp-grid{grid-template-columns:repeat(2,1fr)}
  .svc-grid,.culture,.profit-grid,.level-grid,.target-grid,.steps{grid-template-columns:repeat(2,1fr)}
  .pain-grid{grid-template-columns:repeat(2,1fr)}
  .step::after{display:none}
  .bp-grid{grid-template-columns:repeat(3,1fr)}
  .f-grid{grid-template-columns:1.2fr 1fr 1fr;gap:32px}
}
@media(max-width:900px){
  .nav-links{
    display:none;position:absolute;top:70px;left:0;right:0;flex-direction:column;
    background:rgba(255,255,255,.97);backdrop-filter:blur(18px);padding:14px 20px 20px;gap:2px;
    border-bottom:1px solid var(--line);box-shadow:0 24px 48px -24px rgba(11,43,60,.4);
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:13px 16px;border-radius:14px;font-size:15.5px}
  .burger{display:flex}
  .nav{height:70px}
}
@media(max-width:720px){
  body{font-size:15.5px}
  .container{padding:0 20px}
  section{padding:56px 0}
  .hero h1{font-size:36px}
  .hero-visual img{height:430px}
  .hero-badge{left:-8px;bottom:20px;padding:12px 18px}
  .svc-grid,.culture,.stores,.svc-photos,.wind-grid,.opp-grid,.quals,.emp-grid,.profit-grid,
  .level-grid,.target-grid,.steps,.health-grid,.policy-grid,.pain-grid,.act-grid{grid-template-columns:1fr}
  .store img{height:220px;padding:18px 18px 0}
  .bp-grid{grid-template-columns:repeat(2,1fr)}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .contact-card{grid-template-columns:1fr}
  .f-grid{grid-template-columns:1fr;gap:34px}
  .fra-lead .big-zh{font-size:22px}
  .btn{padding:14px 26px;font-size:15px}
  .hero-actions .btn{flex:1}
  .blueprint{padding:28px 20px}
  .banner{padding:30px 22px}
  .cta-strip{padding:28px 24px}
}
@media(max-width:560px){
  .news-card{grid-template-columns:1fr;padding:24px;gap:18px}
  .news-date{display:flex;align-items:baseline;gap:10px;text-align:left;border-right:none;border-bottom:1px solid var(--line);padding:0 0 14px}
  .news-date .d{font-size:30px}
  .page-hero h1{font-size:29px}
  .tabs{gap:8px}
  .tab-btn{padding:10px 18px;font-size:13.8px}
  thead th{padding:14px 16px;font-size:13.8px}
  tbody td{padding:14px 16px;font-size:13.6px}
}

/* noanim 调试/截图模式 */
html.noanim .reveal{opacity:1 !important;transform:none !important;transition:none !important}
