/* Homepage visual system. Deliberately scoped: hero and inner pages stay unchanged. */
/* Icon: Tabler arrow-bar-to-up, MIT; see tabler-icons-LICENSE.txt. */
.home-unified .back-to-top{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:1000;display:grid;place-items:center;width:50px;height:50px;padding:0;border:1px solid #ffffff50;border-radius:14px;background:#2d65e8;box-shadow:0 6px 20px #214fa82b;cursor:pointer;transition:background .18s,transform .18s}
.home-unified .back-to-top[hidden]{display:none}
.home-unified .back-to-top img{display:block;width:26px;height:26px;filter:brightness(0) invert(1);pointer-events:none}
.home-unified .back-to-top:hover{background:#2055ce;transform:translateY(-2px)}
.home-unified .back-to-top:focus-visible{outline:3px solid #89afff;outline-offset:4px}
@media(max-width:620px){.home-unified .back-to-top{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:46px;height:46px;border-radius:12px}}
@media(prefers-reduced-motion:reduce){.home-unified .back-to-top{transition:none}}
.home-unified{--home-ink:#202c3d;--home-body:#5e6979;--home-muted:#758093;--home-line:#e4e9f0;--home-tint:#f5f7fb;--home-blue:#2d65d8}
.home-unified .home-section{padding:30px 0;background:#fff;scroll-margin-top:96px}
.home-unified .home-section :is(.home-section-head,.delivery-heading,.insights-heading){margin-bottom:32px}
.home-unified .home-section :is(.home-section-head h2,.geo-why-intro h2,.source-intro h2,.delivery-heading h2,.insights-heading h2,.decision-faq-heading h2){font-size:clamp(28px,2.4vw,34px);font-weight:650;line-height:1.4;letter-spacing:-.035em;color:var(--home-ink)}
.home-unified .home-section :is(.home-section-head>p,.geo-why-intro>p,.source-intro>p,.delivery-heading>p,.insights-heading p,.decision-faq-heading>p){font-size:16px;line-height:1.8;color:var(--home-body)}
.home-unified .hero .eyebrow{display:block;margin:0 0 18px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#5e718c;font-size:14px;font-weight:500;line-height:1.6;letter-spacing:normal;text-transform:none}
.home-unified .hero .eyebrow::before{content:none;display:none}
.home-unified .source-intro h2{margin-top:0}
.home-unified .home-section :is(.home-section-head>p){max-width:860px;margin-top:14px}
/* Homepage only: section headings centred, subtitle centred directly underneath. */
.home-unified.home-index .home-section .home-section-head{display:block;text-align:center;margin-bottom:38px}
.home-unified.home-index .home-section .home-section-head>div{max-width:none}
.home-unified.home-index .home-section .home-section-head>p{max-width:820px;margin:14px auto 0}
.home-unified .home-section :is(.service-overview-card,.platform-card){border-color:var(--home-line);border-radius:14px;box-shadow:none}
.home-unified .home-section :is(.service-overview-card,.platform-card):hover{transform:translateY(-2px);box-shadow:0 8px 24px #243b5b08}
.home-unified .home-section :is(.service-overview-card>a,.platform-card>a,.source-cta,.process-preparation a,.evaluation-link,.insights-all,.decision-faq-heading>a){font-size:14px;font-weight:500;color:var(--home-blue)}
.home-unified .home-section :is(.service-overview-card p,.platform-card>p,.process-step-body>p,.delivery-grid article>p){color:var(--home-body);font-size:14px;line-height:1.8}
/* White introductory chapter: cards for choices, an open layout for explanation. */
.home-unified .home-services{padding-bottom:40px}
.home-unified .service-overview-card.featured{background:#f5f8fe;border-color:#dce5f4}
.home-unified .geo-why{padding-top:32px}
.home-unified .geo-why-shell{padding:40px 0 0;border:0;border-top:1px solid var(--home-line);border-radius:0;background:none;box-shadow:none;column-gap:56px}
/* Platform answers and their source material share one continuous background. */
.home-unified .home-platform-section,.home-unified .source-section{background:var(--home-tint)}
.home-unified .home-platform-section{padding-bottom:32px}
.home-unified .source-section{padding-top:24px}
.home-unified .source-section>.container{padding-top:40px;position:relative}
.home-unified .source-section>.container::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--home-line)}
.home-unified .platform-selection-card{background:#edf2fb;border-color:#e0e7f2;border-radius:14px}
.home-unified .platform-card-heading{margin-bottom:14px}
.home-unified .platform-logo{border:0;background:transparent;box-shadow:none}
.home-unified .platform-focus{margin:16px 0 8px;padding:12px 0 0;border:0;border-top:1px solid var(--home-line);border-radius:0;background:none}
.home-unified .platform-card>a>span{border:0;background:transparent}
.home-unified .source-group{padding:20px 0;border:0;border-radius:0;background:none}
.home-unified .source-group:first-child{padding-top:0}
.home-unified .source-group+.source-group{border-top:1px solid var(--home-line)}
.home-unified .source-groups{gap:10px}
.home-unified .source-logo{border:0;border-radius:10px}
.home-unified .source-group>p,.home-unified .source-points span{font-size:13px;color:var(--home-body)}
.home-unified .source-note{color:var(--home-muted);font-size:12px;border-color:var(--home-line)}
/* Delivery chapter: a connected process, one report focal point, then assurances. */
.home-unified .home-process{padding-bottom:40px}
.home-unified .process-delivery{padding:14px 0 0;border-top:1px solid var(--home-line);border-radius:0;background:none}
.home-unified .process-step-number{background:#f2f6fd;border-color:#dce5f3;box-shadow:none}
.home-unified .home-cases{padding-top:32px;padding-bottom:40px}
.home-unified .evaluation-report{border-radius:16px;box-shadow:0 10px 28px #243b5b06;border-color:var(--home-line)}
.home-unified .evaluation-method{border:0;border-radius:16px;background:#f2f6fc}
.home-unified .evaluation-method>.evaluation-link{color:var(--home-blue);padding:0;background:transparent;gap:16px}
.home-unified .evaluation-method>.evaluation-link>span{color:inherit}
.home-unified .delivery-section{padding-top:24px}
.home-unified .delivery-shell{padding:36px 0 0;border:0;border-top:1px solid var(--home-line);border-radius:0;background:none}
.home-unified .delivery-grid article{border-color:var(--home-line)}
.home-unified .delivery-footer{border-color:var(--home-line)}
.home-unified .delivery-footer a{background:none;padding:0;color:var(--home-blue);font-size:14px}
.home-unified .delivery-footer a:hover{background:none;color:#174cab}
.home-unified .delivery-icon{background:#f0f4fc;border-radius:10px}
/* Reading and questions form a quiet closing chapter; only the final CTA is solid blue. */
.home-unified .insights-section,.home-unified .decision-faq{background:var(--home-tint)}
.home-unified .insights-section{padding-bottom:40px}
.home-unified .decision-faq{padding-top:32px}
.home-unified .decision-faq-item[open]{background:#edf2fa}
.home-unified .decision-faq-heading{padding-top:0}
.home-unified .decision-faq-answer p{font-size:14px;color:var(--home-body)}
.home-unified .closing-cta{padding:56px 0 0;background:#fff}
.home-unified .closing-cta-panel{border-radius:20px;box-shadow:none}
.home-unified footer.home-footer{margin-top:48px}
.home-unified .home-section a:focus-visible{outline:2px solid var(--home-blue);outline-offset:4px}
@media(max-width:900px){
 .home-unified .home-section{padding:52px 0}
 .home-unified .home-services,.home-unified .home-platform-section,.home-unified .home-process,.home-unified .home-cases,.home-unified .insights-section{padding-bottom:28px}
 .home-unified .geo-why,.home-unified .source-section,.home-unified .home-cases,.home-unified .delivery-section,.home-unified .decision-faq{padding-top:24px}
 .home-unified .geo-why-shell{grid-template-columns:1fr;gap:28px;padding-top:28px}
 .home-unified .home-section :is(.home-section-head,.delivery-heading,.insights-heading){margin-bottom:26px}
}
@media(max-width:620px){
 .home-unified .home-section{padding:40px 0}
 .home-unified .home-section :is(.home-section-head h2,.geo-why-intro h2,.source-intro h2,.delivery-heading h2,.insights-heading h2,.decision-faq-heading h2){font-size:27px;line-height:1.45}
 .home-unified .home-section :is(.home-section-head>p,.geo-why-intro>p,.source-intro>p,.delivery-heading>p,.insights-heading p,.decision-faq-heading>p){font-size:15px}
 .home-unified .home-services,.home-unified .home-platform-section,.home-unified .home-process,.home-unified .home-cases,.home-unified .insights-section{padding-bottom:24px}
 .home-unified .geo-why,.home-unified .source-section,.home-unified .home-cases,.home-unified .delivery-section,.home-unified .decision-faq{padding-top:20px}
 .home-unified .source-section>.container{padding-top:28px}
 .home-unified .source-group{padding:20px 0}
 .home-unified .delivery-shell{padding:28px 0 0}
 .home-unified .closing-cta{padding-top:36px}
 .home-unified footer.home-footer{margin-top:36px}
}
@media(prefers-reduced-motion:reduce){.home-unified .home-section *{transition:none!important;animation:none!important}}

/* Brand monitoring pain points (home section 2) */
/* Pain cards: 6-column track so row 2 (04/05) reads as two wide cards, content centred. */
.home-unified .pain-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.home-unified .pain-card{position:relative;grid-column:span 2;padding:34px 26px 30px;border:1px solid var(--home-line);border-radius:14px;background:linear-gradient(150deg,#f4f8ff,#fff 52%);overflow:hidden;text-align:center;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.home-unified .pain-card:nth-child(4),.home-unified .pain-card:nth-child(5){grid-column:span 3}
.home-unified .pain-card:hover{transform:translateY(-4px);border-color:#c3d5f2;box-shadow:0 10px 26px #243b5b12}
.home-unified .pain-index{position:absolute;top:16px;right:20px;font-size:30px;font-weight:700;line-height:1;color:#d8e4f9;letter-spacing:-.02em}
.home-unified .pain-head{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 0 20px}
.home-unified .pain-icon{display:inline-grid;place-items:center;width:60px;height:60px;border-radius:16px;background:#eaf1fd}
.home-unified .pain-icon img{display:block;width:34px;height:34px}
.home-unified .pain-head b{font-size:19px;font-weight:650;color:var(--home-blue);letter-spacing:-.01em}
.home-unified .pain-card h3{margin:0 0 12px;font-size:16.5px;font-weight:650;line-height:1.65;color:var(--home-ink)}
.home-unified .pain-card p{margin:0;font-size:14px;line-height:1.8;color:var(--home-body)}
@media(max-width:1000px){.home-unified .pain-grid{grid-template-columns:1fr 1fr}.home-unified .pain-grid .pain-card{grid-column:auto}}
@media(max-width:620px){.home-unified .pain-grid{grid-template-columns:1fr}.home-unified .pain-card{padding:26px 20px 24px}.home-unified .pain-index{font-size:26px}}

/* Product matrix (home section 3) */
.home-unified .pm-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.home-unified .pm-card{position:relative;padding:26px 20px 22px;border:1px solid var(--home-line);border-top:3px solid var(--home-blue);border-radius:14px;background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.home-unified .pm-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #243b5b08}
.home-unified .pm-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-bottom:14px;border-radius:8px;background:#eef3fc;color:var(--home-blue);font-size:13px;font-weight:700}
.home-unified .pm-card h3{margin:0 0 8px;font-size:16px;font-weight:650;line-height:1.6;color:var(--home-ink)}
.home-unified .pm-card p{margin:0;font-size:13.5px;line-height:1.8;color:var(--home-body)}
@media(max-width:1100px){.home-unified .pm-grid{grid-template-columns:1fr 1fr}.home-unified .pm-card:last-child{grid-column:1/-1}}
@media(max-width:620px){.home-unified .pm-grid{grid-template-columns:1fr}}

/* Why choose us (home section 4) */
/* Why-us cards: icon tile top-left, blue tag top-right, copy stays left aligned. */
.home-unified .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.home-unified .why-card{padding:28px 24px 26px;border:1px solid var(--home-line);border-radius:14px;background:linear-gradient(150deg,#f4f8ff,#fff 52%);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.home-unified .why-card:hover{transform:translateY(-4px);border-color:#c3d5f2;box-shadow:0 10px 26px #243b5b12}
.home-unified .why-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:22px}
.home-unified .why-icon{display:inline-grid;place-items:center;width:60px;height:60px;border-radius:16px;background:#eaf1fd}
.home-unified .why-icon img{display:block;width:34px;height:34px}
.home-unified .why-tag{margin-top:5px;padding:5px 12px;border-radius:8px;background:#eaf1fd;color:var(--home-blue);font-size:12.5px;font-weight:500;line-height:1.5;white-space:nowrap}
.home-unified .why-card h3{margin:0 0 8px;font-size:16px;font-weight:650;line-height:1.65;color:var(--home-ink)}
.home-unified .why-card p{margin:0;font-size:14px;line-height:1.8;color:var(--home-body)}
@media(max-width:1000px){.home-unified .why-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.home-unified .why-grid{grid-template-columns:1fr}.home-unified .why-card{padding:22px 20px 20px}}

/* Industries, clients, FAQ (home latter sections) */
/* Industry tiles: 12-column track, first four span 3 (row of 4), last three span 4 (row of 3). */
.home-unified .industry-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.home-unified .industry-tile{position:relative;display:block;grid-column:span 3;padding:30px 20px 26px;border:1px solid var(--home-line);border-radius:14px;background:linear-gradient(150deg,#f4f8ff,#fff 52%);text-align:center;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.home-unified .industry-tile:nth-child(n+5){grid-column:span 4}
.home-unified .industry-tile:hover{transform:translateY(-4px);box-shadow:0 10px 26px #243b5b12;border-color:#c3d5f2}
.home-unified .industry-index{position:absolute;top:16px;right:20px;font-size:30px;font-weight:700;line-height:1;color:#d8e4f9;letter-spacing:-.02em}
.home-unified .industry-head{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 0 18px}
.home-unified .industry-icon{display:inline-grid;place-items:center;width:60px;height:60px;border-radius:16px;background:#eaf1fd}
.home-unified .industry-icon img{display:block;width:34px;height:34px}
.home-unified .industry-head b{font-size:18px;font-weight:650;color:var(--home-blue);letter-spacing:-.01em}
.home-unified .industry-divider{display:block;width:40px;height:1px;margin:0 auto 14px;background:#e2eaf6}
.home-unified .industry-tile p{margin:0;font-size:13.5px;line-height:1.7;color:var(--home-body)}
.home-unified .client-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.home-unified .client-card{margin:0;padding:32px 27px 26px;border:1px solid var(--home-line);border-radius:14px;background:#fff;text-align:center;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.home-unified .client-card:hover{transform:translateY(-4px);box-shadow:0 10px 26px #243b5b12;border-color:#c3d5f2}
.home-unified .client-logo{display:block}
.home-unified .client-logo img{display:block;width:100%;height:auto}
.home-unified .client-card p{margin:18px 0 0;font-size:16px;line-height:1.6;color:var(--home-body)}
.home-unified .client-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;padding:22px 0;border:1px solid #e1eaf7;border-radius:14px;background:#f3f8fe}
.home-unified .client-stat{position:relative;text-align:center}
.home-unified .client-stat+.client-stat::before{content:'';position:absolute;top:4px;bottom:4px;left:0;width:1px;background:#dde7f6}
.home-unified .client-stat-num{display:block;font-size:clamp(28px,2.9vw,38px);font-weight:700;line-height:1.2;letter-spacing:-.03em;color:var(--home-blue)}
.home-unified .client-stat-num i{font-style:normal;margin-left:1px;font-size:.6em;vertical-align:.18em}
.home-unified .client-stat-label{display:block;margin-top:6px;font-size:16px;line-height:1.6;color:var(--home-body)}
.home-unified .client-more{display:flex;justify-content:center;margin-top:28px}
.home-unified .client-case{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;min-width:230px;padding:14px 22px 14px 26px;border:1px solid var(--home-line);border-radius:999px;background:#fff;font-size:16px;font-weight:600;line-height:1.5;color:var(--home-ink);text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,color .2s ease}
.home-unified .client-case:hover{border-color:#c9d8f2;box-shadow:0 8px 24px #243b5b08;transform:translateY(-2px);color:var(--home-blue)}
.home-unified .client-case i{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:50%;background:#eef3fc;color:var(--home-blue);transition:background .2s ease}
.home-unified .client-case:hover i{background:var(--home-blue);color:#fff}
.home-unified .client-case i svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.home-unified .faq-list{max-width:880px}
.home-unified.home-index .faq-list{margin:0 auto}
.home-unified .faq-item{border:1px solid var(--home-line);border-radius:14px;background:#fff;margin-bottom:12px;overflow:hidden}
.home-unified .faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;cursor:pointer;list-style:none}
.home-unified .faq-item summary::-webkit-details-marker{display:none}
.home-unified .faq-item summary h3{margin:0;font-size:16px;font-weight:600;line-height:1.6;color:var(--home-ink)}
.home-unified .faq-toggle{position:relative;flex:none;width:22px;height:22px;border-radius:50%;background:#eef3fc}
.home-unified .faq-toggle::before,.home-unified .faq-toggle::after{content:'';position:absolute;top:50%;left:50%;width:10px;height:2px;border-radius:1px;background:var(--home-blue);transform:translate(-50%,-50%)}
.home-unified .faq-toggle::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s ease}
.home-unified .faq-item[open] .faq-toggle::after{transform:translate(-50%,-50%) rotate(0deg)}
.home-unified .faq-item>div{padding:0 22px 20px}
.home-unified .faq-item>div p{margin:0;font-size:14.5px;line-height:1.9;color:var(--home-body)}
.home-unified .faq-item>div a{color:var(--home-blue);text-decoration:none;font-weight:500}
@media(max-width:1000px){.home-unified .industry-grid{grid-template-columns:1fr 1fr}.home-unified .industry-grid .industry-tile{grid-column:auto}}
@media(max-width:620px){.home-unified .industry-grid{grid-template-columns:1fr}.home-unified .client-card{padding:24px 20px 20px}.home-unified .client-card p{margin-top:16px;font-size:14px}.home-unified .client-stats{padding:18px 0}.home-unified .client-stat-num{font-size:26px}.home-unified .client-stat-label{margin-top:4px;font-size:12px}.home-unified .client-case{min-width:0;padding:12px 18px 12px 20px;font-size:15px}}

/* Footer: slogan lead form, phones, wecom qr, sitemap */
.home-unified .footer-slogan{color:#e6edf8;font-size:14px;font-weight:500}
.home-unified .footer-lead{display:flex;gap:8px;max-width:380px;margin-top:12px}
.home-unified .footer-lead input{flex:1;min-width:0;height:42px;padding:0 14px;border:1px solid #2b3a52;border-radius:10px;background:#0e1828;color:#e6edf8;font-size:13px}
.home-unified .footer-lead input::placeholder{color:#6d7f9a}
.home-unified .footer-lead input:focus{outline:none;border-color:var(--home-blue)}
.home-unified .footer-lead button{flex:none;height:42px;padding:0 18px;border:0;border-radius:10px;background:var(--home-blue);color:#fff;font-size:13px;font-weight:600;cursor:pointer}
.home-unified .footer-lead button:hover{background:#2456b8}
.home-unified .footer-leads-link{margin-top:8px}
.home-unified .footer-phones{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:14px;font-size:13px;color:#aebed3}
.home-unified .footer-phones a{color:#c0d5f8;font-weight:600;text-decoration:none}
.home-unified .footer-phones a:hover{color:#fff}
.home-unified .site-footer-right{display:flex;align-items:flex-start;gap:48px;padding-top:6px}
.home-unified .footer-wechat{flex:none;text-align:center;color:#aebed3;font-size:12px;line-height:1.7}
.home-unified .footer-wechat img{display:block;width:96px;height:96px;margin:0 auto 8px;padding:6px;border-radius:10px;background:#fff}
.home-unified .footer-sitemap{flex:1;min-width:0}
.home-unified .footer-sitemap h2{margin:0 0 13px;color:#eef3fb;font-size:13px;font-weight:600;letter-spacing:.02em}
@media(max-width:1000px){.home-unified .site-footer-main{grid-template-columns:1fr!important;gap:32px!important}.home-unified .site-footer-right{flex-direction:column-reverse;gap:28px}}
