:root{color-scheme:light;--bg:#f5f8fd;--soft:#eef3fb;--ink:#0c1322;--ink-2:#44506a;--ink-3:#6e7991;--line:#e2e8f3;--blue:#1e6fe9;--blue-strong:#0d56c5;--navy:#0a1730;--maxw:1140px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:19px/1.65 "Inter","Noto Sans SC",system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.wrap{width:min(calc(100% - 48px),var(--maxw));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(245,248,253,.9);border-bottom:1px solid rgba(226,232,243,.8);backdrop-filter:blur(18px)}
.nav{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:13px;font-size:22px;font-weight:700;white-space:nowrap}
.brand img{width:44px;height:44px;object-fit:cover;border-radius:10px;box-shadow:0 4px 12px rgba(30,111,233,.2)}
.nav-links{display:flex;align-items:center;gap:28px;margin-left:auto;color:var(--ink-2);font-size:18px;font-weight:600;white-space:nowrap}
.nav-links a{position:relative;padding:29px 0 26px;transition:color .2s ease}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:19px;height:2px;border-radius:999px;background:var(--blue);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--blue-strong)}
.nav-links a:hover::after,.nav-links a[aria-current="page"]::after{transform:scaleX(1)}
.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 23px;border:1px solid var(--blue);border-radius:11px;background:var(--blue);color:#fff;font-size:17px;font-weight:700;white-space:nowrap;box-shadow:0 6px 18px rgba(30,111,233,.22);transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.nav-cta:hover,.button:hover{background:var(--blue-strong);transform:translateY(-2px);box-shadow:0 12px 26px rgba(30,111,233,.28)}
.button.secondary{color:var(--ink);background:rgba(255,255,255,.75);border-color:#cfd9ea;box-shadow:none}
.button.secondary:hover{color:var(--blue-strong);border-color:var(--blue)}
.hero-shell{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 20%,#dce9ff 0,transparent 42%),radial-gradient(circle at 84% 45%,#c8dcff 0,transparent 38%),var(--bg)}
.hero-shell::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(139,164,210,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(139,164,210,.13) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}
.crumb{position:relative;padding-top:25px;color:var(--ink-3);font-size:13px}
.crumb a:hover{color:var(--blue-strong)}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.07fr) minmax(320px,.93fr);align-items:center;gap:55px;min-height:570px;padding:54px 0 86px}
.eyebrow{display:inline-flex;align-items:center;padding:7px 15px;border:1px solid #cfe0fb;border-radius:999px;background:rgba(232,240,254,.82);color:var(--blue-strong);font-size:15px;font-weight:700}
.hero h1{margin:22px 0 0;max-width:15ch;font-size:clamp(40px,4.8vw,60px);line-height:1.1;letter-spacing:-.035em}
.hero h1 span{color:var(--blue-strong)}
.hero .lead{max-width:34em;margin:23px 0 0;color:var(--ink-2);font-size:21px;line-height:1.75}
.actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}
.fact-panel{background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.94);border-radius:20px;padding:30px;box-shadow:0 3px 12px rgba(16,32,64,.06),0 27px 65px rgba(16,32,64,.12);backdrop-filter:blur(14px)}
.panel-heading{display:flex;align-items:center;gap:13px;padding-bottom:21px;border-bottom:1px solid var(--line)}
.panel-heading img{width:50px;height:50px;object-fit:cover;border-radius:10px}
.panel-heading p{margin:0 0 2px;color:var(--blue-strong);font-size:12px;font-weight:700}
.fact-panel h2{margin:0;font-size:20px;line-height:1.3}
.fact-panel dl{display:grid;gap:18px;margin:24px 0 0}
.fact-panel dt{color:var(--ink-3);font-size:13px}
.fact-panel dd{margin:2px 0 0;color:var(--ink);font-size:16px;font-weight:700}
.fact-panel dd a,.article-meta a{color:var(--blue-strong);text-decoration:underline;text-underline-offset:3px}
.panel-link{display:inline-block;margin-top:24px;color:var(--blue-strong);font-size:14px;font-weight:700}
.panel-link:hover{text-decoration:underline}
.section{padding:88px 0}
.section h2,.system-band h2{margin:0;font-size:clamp(27px,3.4vw,40px);line-height:1.22;letter-spacing:-.025em}
.section-intro{max-width:60ch;margin:15px 0 0;color:var(--ink-2);font-size:20px}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 54px;margin-top:40px}
.method-grid article{border-top:2px solid var(--blue);padding-top:21px}
.method-grid h3{margin:0 0 9px;font-size:21px}
.method-grid p{margin:0;color:var(--ink-2);font-size:17px;line-height:1.75}
.system-band{margin:12px auto 0;padding:55px 52px 50px;border-radius:24px;background:linear-gradient(135deg,#0a2f7a,#0d56c5 58%,#1769e6);color:#fff;box-shadow:0 22px 52px rgba(13,65,154,.2)}
.system-band .eyebrow{margin-bottom:17px;border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.12);color:#fff}
.system-band .system-lead{max-width:60ch;margin:14px 0 0;color:#d8e6ff;font-size:18px}
.system-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px}
.system-grid article{min-height:185px;padding:22px;border:1px solid rgba(255,255,255,.24);border-radius:16px;background:rgba(255,255,255,.11)}
.system-grid h3{margin:0 0 10px;font-size:18px;line-height:1.35}
.system-grid p{margin:0;color:#dbe8ff;font-size:15px;line-height:1.65}
.system-foot{margin:25px 0 0;color:#d8e6ff;font-size:15px}
.system-foot a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.section-soft{background:var(--soft)}
.city-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:32px 0 0;padding:0;list-style:none}
.city-list li{display:flex;align-items:center;min-height:62px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.78);color:var(--ink-2);font-size:15px}
.city-list a{color:var(--blue-strong);font-weight:700}
.city-list a:hover{text-decoration:underline}
.note{max-width:72ch;margin-top:27px;padding:17px 20px;border-left:3px solid var(--blue);background:#e7effd;color:var(--ink-2);font-size:15px}
.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px}
.two-col article{padding:26px 28px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.83)}
.two-col h3{margin:0 0 9px;font-size:19px}
.two-col p{margin:0;color:var(--ink-2);font-size:17px}
.section-copy{max-width:70ch;color:var(--ink-2);font-size:18px}
.section-copy a{color:var(--blue-strong);font-weight:700}
.section-copy a:hover{text-decoration:underline}
.contact-band{margin:0 auto 86px;padding:52px;border-radius:24px;background:#e4edfd}
.contact-band h2{margin:0 0 14px;font-size:clamp(27px,3vw,36px)}
.contact-band p{max-width:65ch;margin:0 0 21px;color:var(--ink-2);font-size:19px}
.contact-links{display:flex;align-items:center;flex-wrap:wrap;gap:16px 27px}
.contact-links a:not(.button){color:var(--blue-strong);font-weight:700}
.page-footer{padding:55px 0 32px;background:var(--navy);color:#c9d6ef}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:48px}
.page-footer .brand{color:#fff}
.page-footer .brand img{width:40px;height:40px}
.page-footer p{max-width:54ch;margin:16px 0 0;font-size:16px}
.page-footer nav{display:flex;flex-wrap:wrap;align-content:start;gap:10px 23px}
.page-footer nav a{color:#c9d6ef;font-size:16px}
.page-footer nav a:hover{color:#fff}
.footer-bottom{margin-top:35px;padding-top:21px;border-top:1px solid rgba(255,255,255,.13);color:#9aa8c4;font-size:13px}
.content-hero{padding:84px 0 76px}
.content-hero .content-kicker{margin:0 0 18px;color:var(--blue-strong);font-size:15px;font-weight:700;letter-spacing:.08em}
.content-hero h1{max-width:18ch;margin:0;font-size:clamp(38px,5vw,62px);line-height:1.1;letter-spacing:-.045em;text-wrap:balance}
.content-hero .lead{max-width:61ch;margin:22px 0 0;color:var(--ink-2);font-size:19px;line-height:1.8}
.article-meta{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:27px;color:var(--ink-3);font-size:13px}
.content-index{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:28px;align-items:start}
.feature-link{display:block;padding:37px;border-radius:22px;background:var(--navy);color:#fff;box-shadow:0 24px 55px rgba(10,23,48,.16);transition:transform .22s ease,box-shadow .22s ease}
.feature-link:hover{transform:translateY(-4px);box-shadow:0 30px 70px rgba(10,23,48,.22)}
.feature-link .label,.resource-link .label{display:block;margin-bottom:16px;color:#91baff;font-size:12px;font-weight:700;letter-spacing:.08em}
.feature-link h2{max-width:18ch;font-size:clamp(28px,3vw,40px)}
.feature-link p{max-width:48ch;margin:17px 0 28px;color:#c9d6ef}
.feature-link strong{color:#fff;font-size:14px}
.resource-stack{display:grid;gap:16px}
.resource-link{display:block;padding:26px 27px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.82);transition:border-color .2s ease,transform .2s ease}
.resource-link:hover{border-color:#9fbdeb;transform:translateY(-3px)}
.resource-link .label{margin-bottom:10px;color:var(--blue-strong)}
.resource-link h2{font-size:21px;line-height:1.35}
.resource-link p{margin:10px 0 0;color:var(--ink-2);font-size:15px}
.answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:34px}
.answer-card{display:flex;min-height:220px;flex-direction:column;padding:28px;border-top:3px solid var(--blue);border-radius:0 0 16px 16px;background:rgba(255,255,255,.82)}
.answer-card .label{color:var(--blue-strong);font-size:12px;font-weight:700}
.answer-card h3{margin:12px 0 10px;font-size:20px;line-height:1.4}
.answer-card p{margin:0;color:var(--ink-2);font-size:15px}
.answer-card a{margin-top:auto;padding-top:20px;color:var(--blue-strong);font-size:14px;font-weight:700}
.answer-card a:hover{text-decoration:underline}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:64px;align-items:start;padding-bottom:94px}
.article-body{min-width:0}
.article-body h2{margin:64px 0 17px;font-size:clamp(27px,3vw,38px);line-height:1.25;letter-spacing:-.025em;text-wrap:balance}
.article-body h3{margin:34px 0 11px;font-size:21px;line-height:1.35}
.article-body p,.article-body li{color:var(--ink-2);font-size:18px;line-height:1.85}
.article-body p{max-width:68ch;margin:0 0 18px}
.article-body ul,.article-body ol{max-width:68ch;margin:14px 0 22px;padding-left:24px}
.article-body li+li{margin-top:9px}
.direct-answer{margin:0 0 42px;padding:29px 31px;border-left:4px solid var(--blue);border-radius:0 16px 16px 0;background:#e7effd}
.direct-answer strong{display:block;margin-bottom:8px;color:var(--blue-strong);font-size:13px;letter-spacing:.06em}
.direct-answer p{margin:0;color:var(--ink);font-size:19px;font-weight:600;line-height:1.75}
.evidence-panel{margin:30px 0;padding:30px;border:1px solid #cfdcf1;border-radius:18px;background:rgba(255,255,255,.88)}
.evidence-panel h3{margin:0 0 16px}
.evidence-panel dl{display:grid;gap:15px;margin:0}
.evidence-panel dl div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding-top:15px;border-top:1px solid var(--line)}
.evidence-panel dl div:first-child{padding-top:0;border-top:0}
.evidence-panel dt{color:var(--ink-3);font-size:14px}
.evidence-panel dd{margin:0;color:var(--ink);font-size:15px;font-weight:600}
.evidence-panel a,.article-body a{color:var(--blue-strong);text-decoration:underline;text-underline-offset:3px}
.comparison{width:100%;margin:24px 0 30px;border-collapse:collapse;border-radius:14px;overflow:hidden;background:rgba(255,255,255,.85);box-shadow:0 0 0 1px var(--line)}
.comparison th,.comparison td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.comparison th{background:#e7effd;color:var(--ink);font-size:14px}
.comparison td{color:var(--ink-2);font-size:15px;line-height:1.65}
.comparison tr:last-child td{border-bottom:0}
.article-aside{position:sticky;top:105px;padding:24px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.82)}
.article-aside h2{margin:0 0 14px;font-size:16px}
.article-aside nav{display:grid;gap:10px}
.article-aside a{color:var(--ink-2);font-size:14px}
.article-aside a:hover{color:var(--blue-strong)}
.article-aside .aside-divider{height:1px;margin:20px 0;background:var(--line)}
.article-aside p{margin:0;color:var(--ink-3);font-size:13px;line-height:1.7}
@media(max-width:1050px){.nav-links{gap:16px;font-size:16px}.brand{font-size:19px}.system-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.article-layout{grid-template-columns:1fr;gap:28px}.article-aside{position:static}.content-index{grid-template-columns:1fr}.answer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.nav-links{display:none}.hero{min-height:0;grid-template-columns:1fr;gap:34px;padding:42px 0 64px}.hero h1{max-width:16ch}.section{padding:66px 0}.system-band{padding:39px 27px}.method-grid{gap:27px}.city-list{grid-template-columns:repeat(2,minmax(0,1fr))}.content-hero{padding:58px 0}.article-layout{padding-bottom:70px}}
@media(max-width:580px){.wrap{width:min(calc(100% - 32px),var(--maxw))}.nav{min-height:68px;gap:10px}.brand{gap:7px;font-size:15px}.brand img{width:34px;height:34px}.nav-cta{min-height:39px;padding:8px 11px;font-size:12px}.hero h1{font-size:37px}.hero .lead{font-size:16px}.fact-panel{padding:23px}.method-grid,.system-grid,.two-col,.footer-grid,.answer-grid{grid-template-columns:1fr}.system-grid article{min-height:0}.city-list{gap:8px}.city-list li{min-height:58px;padding:10px;font-size:13px}.contact-band{padding:31px 23px;margin-bottom:65px}.page-footer{padding-top:44px}.content-hero h1{font-size:37px}.content-hero .lead{font-size:17px}.feature-link{padding:28px}.resource-link{padding:23px}.direct-answer{padding:24px}.direct-answer p{font-size:17px}.article-body p,.article-body li{font-size:16px}.evidence-panel{padding:22px}.evidence-panel dl div{grid-template-columns:1fr;gap:4px}.comparison{display:block;overflow-x:auto}.comparison th,.comparison td{min-width:170px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav-cta,.button{transition:none}.nav-cta:hover,.button:hover{transform:none}}
