1948 lines
48 KiB
Vue
1948 lines
48 KiB
Vue
<script setup>
|
||
import { gsap } from 'gsap'
|
||
import SiteHeader from '~/components/site/SiteHeader.vue'
|
||
import SiteFooter from '~/components/site/SiteFooter.vue'
|
||
|
||
const pageRoot = ref(null)
|
||
const { openConsultation } = useConsultation()
|
||
let animationContext
|
||
|
||
useHead({
|
||
title: '营销增长服务|大马棒·云途全域 GEO',
|
||
meta: [
|
||
{
|
||
name: 'description',
|
||
content:
|
||
'从品牌曝光、可信内容建设到精准线索承接,大马棒·云途全域 GEO 帮助企业建立可持续的 AI 搜索增长链路。'
|
||
}
|
||
]
|
||
})
|
||
|
||
const journey = [
|
||
{ number: '01', title: '被看见', text: '用户向 AI 提问时,品牌能够进入相关回答与推荐范围。' },
|
||
{ number: '02', title: '被信任', text: '权威媒体、真人内容与真实业务信息共同形成可信证据。' },
|
||
{ number: '03', title: '被选择', text: '高意向问题被内容承接,并顺畅进入咨询与成交链路。' }
|
||
]
|
||
|
||
const ringModels = [
|
||
{
|
||
title: '声量资产环',
|
||
image: '/images/lanhu/slices/home-group80-group83-image11@2x.png',
|
||
items: ['真人内容生产', '全域媒体分发', 'AI 信任构建', '品牌资产沉淀']
|
||
},
|
||
{
|
||
title: '获客转化环',
|
||
image: '/images/lanhu/slices/home-group86-group87-image12@2x.png',
|
||
items: ['精准意图触达', '内容种草引导', '线索留资转化', '数据优化迭代']
|
||
}
|
||
]
|
||
|
||
const serviceVisualImages = [
|
||
'/images/services/brand-exposure-visual.png',
|
||
'/images/services/lead-conversion-visual.png',
|
||
'/images/services/omnichannel-visual.png'
|
||
]
|
||
|
||
const services = [
|
||
{
|
||
id: 'brand-exposure',
|
||
index: '01',
|
||
eyebrow: 'Brand visibility',
|
||
title: '品牌曝光,不是多发几篇内容',
|
||
lead: '真正有效的曝光,是让用户在提问、比较和验证的每一个环节,都能看到一致、可信的品牌信息。',
|
||
pain: '品牌公开信息分散、AI 认知不完整,用户搜索时只看到竞品或过时内容。',
|
||
actions: [
|
||
'梳理品牌核心事实与高频用户问题',
|
||
'搭建真人内容与权威信源矩阵',
|
||
'围绕主流 AI 平台持续优化可见性'
|
||
],
|
||
outputs: ['品牌 AI 认知基线报告', '内容主题与信源分发清单', '品牌提及与引用监测报告'],
|
||
metric: '5 万',
|
||
metricLabel: '真人内容生产网络',
|
||
visualTitle: '可信声量生成器',
|
||
visualItems: ['真实业务信息', '真人体验内容', '权威媒体信源', 'AI 搜索引用']
|
||
},
|
||
{
|
||
id: 'lead-conversion',
|
||
index: '02',
|
||
eyebrow: 'Lead conversion',
|
||
title: '精准获客,把高意向问题接住',
|
||
lead: '我们不只看曝光量,更关心哪些问题带来访问、咨询和有效线索,让内容真正进入业务链路。',
|
||
pain: '内容有阅读却没有后续承接,用户看完之后找不到合适的咨询入口。',
|
||
actions: [
|
||
'按决策阶段搭建高意向问题库',
|
||
'设计从内容到官网与私域的承接路径',
|
||
'持续复盘线索质量并调整内容重点'
|
||
],
|
||
outputs: ['全旅程用户问题库', '转化内容与落地页建议', '线索来源及质量复盘'],
|
||
metric: '65%',
|
||
metricLabel: '客户转化链路效率平均提升',
|
||
visualTitle: '意图转化路径',
|
||
visualItems: ['用户提问', '可信回答', '品牌比较', '咨询留资']
|
||
},
|
||
{
|
||
id: 'omnichannel',
|
||
index: '03',
|
||
eyebrow: 'Omnichannel growth',
|
||
title: '全域营销,让曝光和获客不再断层',
|
||
lead: '从纯曝光、内容资产沉淀到精准获客转化,我们用同一套数据目标串起媒体、内容、官网和咨询入口。',
|
||
pain: '不同供应商各做一段,内容、投放和销售数据无法对齐,预算去向与增长结果说不清。',
|
||
actions: [
|
||
'统一品牌声量与获客目标',
|
||
'打通内容生产、媒体发布和线索承接',
|
||
'按月复盘并动态调整资源配比'
|
||
],
|
||
outputs: ['全域增长策略地图', '跨平台内容资产库', '曝光到咨询全链路报告'],
|
||
metric: '5000+',
|
||
metricLabel: '权威媒体资源矩阵',
|
||
visualTitle: '全域协同网络',
|
||
visualItems: ['媒体曝光', '内容资产', '搜索信任', '业务转化']
|
||
}
|
||
]
|
||
|
||
const processSteps = [
|
||
['需求诊断', '一对一沟通,分析品牌现状、AI 可见性与增长痛点。'],
|
||
['方案定制', '明确 GEO 策略、交付节点、内容重点与预期指标。'],
|
||
['内容落地', '真人内容生产与媒体矩阵分发,全流程同步进度。'],
|
||
['数据优化', '定期监测品牌提及、引用来源、流量与线索质量。'],
|
||
['资产沉淀', '交付可复用内容资产与增长报告,形成长期积累。']
|
||
]
|
||
|
||
const industries = [
|
||
{
|
||
name: '企业服务',
|
||
text: '在长决策链中提前建立专业信任,进入客户比选名单。',
|
||
stat: 'AI 曝光 +320%'
|
||
},
|
||
{
|
||
name: '教育培训',
|
||
text: '覆盖择校、课程比较与口碑验证,降低家长决策顾虑。',
|
||
stat: '线索成本 -45%'
|
||
},
|
||
{
|
||
name: '本地生活',
|
||
text: '占住同城搜索与到店决策入口,缩短从看到到进店。',
|
||
stat: '到店咨询 +170%'
|
||
},
|
||
{
|
||
name: '医疗健康',
|
||
text: '通过合规科普与权威形象建设,沉淀长期专业信任。',
|
||
stat: '合规策略定制'
|
||
},
|
||
{ name: '电商零售', text: '串起种草、主动搜索、店铺承接和直播转化。', stat: '自然流量占比 60%' }
|
||
]
|
||
|
||
function requestDiagnosis(source, extra = {}) {
|
||
openConsultation({
|
||
title: extra.title || '预约免费 GEO 诊断',
|
||
source,
|
||
industry: extra.industry || ''
|
||
})
|
||
}
|
||
|
||
function scrollToServices() {
|
||
document.getElementById('service-system')?.scrollIntoView({ behavior: 'smooth', block: 'start' })
|
||
}
|
||
|
||
onMounted(async () => {
|
||
if (window.matchMedia('(prefers-reduced-motion: reduce)').matches || !pageRoot.value) return
|
||
await nextTick()
|
||
|
||
animationContext = gsap.context(() => {
|
||
gsap.to('.hero-orbit-one', { rotation: 360, duration: 28, repeat: -1, ease: 'none' })
|
||
gsap.to('.hero-orbit-two', { rotation: -360, duration: 36, repeat: -1, ease: 'none' })
|
||
}, pageRoot.value)
|
||
})
|
||
|
||
onBeforeUnmount(() => animationContext?.revert())
|
||
</script>
|
||
|
||
<template>
|
||
<div ref="pageRoot" class="services-page">
|
||
<a class="skip-link" href="#main-content">跳到主要内容</a>
|
||
<SiteHeader />
|
||
|
||
<main id="main-content">
|
||
<section class="services-hero">
|
||
<div class="hero-mesh" aria-hidden="true"></div>
|
||
<div class="page-width services-hero-grid">
|
||
<div class="services-hero-copy">
|
||
<p class="page-eyebrow">大马棒 · 云途全域 GEO</p>
|
||
<h1>从被看见、被信任<br />到最终<span>被选择</span></h1>
|
||
<p class="hero-description">
|
||
围绕真实用户提问,系统建设品牌内容、可信信源与转化承接,让每一次 AI
|
||
搜索曝光都能沉淀为长期增长资产。
|
||
</p>
|
||
<div class="hero-badges" aria-label="服务核心能力">
|
||
<span>5 万真人内容网络</span><span>5000+ 权威媒体</span><span>全链路效果复盘</span>
|
||
</div>
|
||
<div class="hero-actions">
|
||
<button
|
||
class="primary-button"
|
||
type="button"
|
||
@click="requestDiagnosis('营销增长服务页 Hero')"
|
||
>
|
||
免费获取诊断 <AppIcon name="arrow-right" />
|
||
</button>
|
||
<button class="hero-text-link" type="button" @click="scrollToServices">
|
||
了解服务体系 <AppIcon name="bottom" />
|
||
</button>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="services-hero-visual" aria-label="GEO 品牌声量与获客转化协同示意图">
|
||
<div class="hero-orbit hero-orbit-one"><i></i><i></i><i></i></div>
|
||
<div class="hero-orbit hero-orbit-two"><i></i><i></i><i></i><i></i></div>
|
||
<div class="hero-core">
|
||
<small>GEO</small><strong>品效双环</strong><span>持续增长</span>
|
||
</div>
|
||
<!-- <div class="hero-data hero-data-top"><small>品牌提及</small><strong>+217%</strong></div>-->
|
||
<!-- <div class="hero-data hero-data-bottom">-->
|
||
<!-- <small>转化效率</small><strong>+64%</strong>-->
|
||
<!-- </div>-->
|
||
<!-- <div class="hero-visual-caption"><span></span> AI 搜索增长系统正在运行</div>-->
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="decision-section">
|
||
<div class="page-width decision-grid">
|
||
<header class="section-intro services-reveal">
|
||
<p class="section-kicker">决策路径正在改变</p>
|
||
<h2>用户先向 AI 提问,<br />再决定相信谁</h2>
|
||
<p>
|
||
企业要解决的不再只是“有没有排名”,而是品牌能否进入回答、形成可信证据,并承接下一步行动。
|
||
</p>
|
||
</header>
|
||
<div class="decision-journey services-reveal">
|
||
<article v-for="(item, index) in journey" :key="item.title">
|
||
<div class="journey-number">{{ item.number }}</div>
|
||
<div>
|
||
<h3>{{ item.title }}</h3>
|
||
<p>{{ item.text }}</p>
|
||
</div>
|
||
<span v-if="index < journey.length - 1" aria-hidden="true">→</span>
|
||
</article>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="model-deep-section">
|
||
<div class="page-width">
|
||
<header class="model-heading services-reveal">
|
||
<p class="section-kicker section-center">双环增长模型</p>
|
||
<h2>一边沉淀品牌声量,一边推动精准获客</h2>
|
||
<p>两个环路共享同一套业务事实、内容资产与数据目标,让品牌建设和转化结果互相增强。</p>
|
||
</header>
|
||
|
||
<div class="model-deep-grid services-reveal">
|
||
<div class="ring-stage">
|
||
<div
|
||
v-for="(ring, index) in ringModels"
|
||
:key="ring.title"
|
||
class="model-ring"
|
||
:class="`ring-${index + 1}`"
|
||
>
|
||
<img :src="ring.image" :alt="`${ring.title}示意图`" />
|
||
<div class="ring-copy">
|
||
<small>0{{ index + 1 }}</small
|
||
><strong>{{ ring.title }}</strong>
|
||
</div>
|
||
</div>
|
||
<div class="ring-connector"><span>数据</span><span>协同</span></div>
|
||
</div>
|
||
|
||
<div class="model-explanation">
|
||
<article v-for="(ring, index) in ringModels" :key="`copy-${ring.title}`">
|
||
<header>
|
||
<span>0{{ index + 1 }}</span>
|
||
<h3>{{ ring.title }}</h3>
|
||
</header>
|
||
<p>
|
||
{{
|
||
index === 0
|
||
? '把分散的品牌信息沉淀为真实、稳定、可被 AI 引用的数字信任资产。'
|
||
: '把高意向搜索场景与官网、私域和销售承接连接起来,持续优化线索质量。'
|
||
}}
|
||
</p>
|
||
<ul>
|
||
<li v-for="item in ring.items" :key="item">{{ item }}</li>
|
||
</ul>
|
||
</article>
|
||
<button
|
||
class="primary-button small"
|
||
type="button"
|
||
@click="requestDiagnosis('双环增长模型板块')"
|
||
>
|
||
评估我的增长链路 <AppIcon name="arrow-right" />
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section id="service-system" class="service-system-section">
|
||
<div class="page-width">
|
||
<header class="service-system-heading services-reveal">
|
||
<div>
|
||
<p class="section-kicker section-center">服务体系</p>
|
||
<h2>三类能力,服务同一个增长目标</h2>
|
||
</div>
|
||
<p>
|
||
不把服务拆成互不相干的资源采购,而是按照企业当前最急需解决的问题,组合成可追踪的增长路径。
|
||
</p>
|
||
</header>
|
||
|
||
<div class="service-stories">
|
||
<article
|
||
v-for="(service, serviceIndex) in services"
|
||
:id="service.id"
|
||
:key="service.id"
|
||
class="service-story services-reveal"
|
||
:class="{ reverse: serviceIndex % 2 === 1 }"
|
||
>
|
||
<div class="service-story-copy">
|
||
<p class="service-index">
|
||
{{ service.index }} <span>{{ service.eyebrow }}</span>
|
||
</p>
|
||
<h3>{{ service.title }}</h3>
|
||
<p class="service-lead">{{ service.lead }}</p>
|
||
<div class="pain-note">
|
||
<strong>常见问题</strong>
|
||
<p>{{ service.pain }}</p>
|
||
</div>
|
||
<div class="service-details">
|
||
<div>
|
||
<strong>我们怎么做</strong>
|
||
<ul>
|
||
<li v-for="item in service.actions" :key="item">{{ item }}</li>
|
||
</ul>
|
||
</div>
|
||
<div>
|
||
<strong>您会获得</strong>
|
||
<ul>
|
||
<li v-for="item in service.outputs" :key="item">{{ item }}</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<button
|
||
type="button"
|
||
class="service-action"
|
||
@click="
|
||
requestDiagnosis(`${service.title}板块`, {
|
||
title: `咨询${service.title.split(',')[0]}方案`
|
||
})
|
||
"
|
||
>
|
||
咨询这项服务 <AppIcon name="arrow-right" />
|
||
</button>
|
||
</div>
|
||
|
||
<div class="service-story-visual" :class="`visual-${serviceIndex + 1}`">
|
||
<div class="visual-topline">
|
||
<span>{{ service.visualTitle }}</span
|
||
><small>YUNTU GEO SYSTEM</small>
|
||
</div>
|
||
<img
|
||
v-if="serviceVisualImages[serviceIndex]"
|
||
class="visual-network-image"
|
||
:src="serviceVisualImages[serviceIndex]"
|
||
:alt="`${service.title}示意图`"
|
||
/>
|
||
<div v-else class="visual-network">
|
||
<div class="network-core">
|
||
<small>{{ service.index }}</small
|
||
><strong>{{ service.title.split(',')[0] }}</strong>
|
||
</div>
|
||
<span
|
||
v-for="(item, itemIndex) in service.visualItems"
|
||
:key="item"
|
||
:class="`network-item item-${itemIndex + 1}`"
|
||
>{{ item }}</span
|
||
>
|
||
<i v-for="line in 4" :key="line" :class="`network-line line-${line}`"></i>
|
||
</div>
|
||
<div
|
||
v-if="serviceIndex === 0 || !serviceVisualImages[serviceIndex]"
|
||
class="visual-metric"
|
||
>
|
||
<strong>{{ service.metric }}</strong
|
||
><span>{{ service.metricLabel }}</span>
|
||
</div>
|
||
</div>
|
||
</article>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="process-section">
|
||
<div class="process-background" aria-hidden="true"></div>
|
||
<div class="page-width">
|
||
<header class="process-heading services-reveal">
|
||
<p class="section-kicker section-center">标准化交付</p>
|
||
<h2>五步推进,每一步都有依据</h2>
|
||
<p>从第一次沟通到内容资产交付,节点透明、数据可查、方向可调整。</p>
|
||
</header>
|
||
<div class="process-timeline services-reveal">
|
||
<article v-for="(step, index) in processSteps" :key="step[0]">
|
||
<div class="step-marker">
|
||
<span>0{{ index + 1 }}</span>
|
||
</div>
|
||
<h3>{{ step[0] }}</h3>
|
||
<p>{{ step[1] }}</p>
|
||
</article>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="service-industries">
|
||
<div class="page-width industries-layout">
|
||
<header class="section-intro services-reveal">
|
||
<p class="section-kicker">行业适配</p>
|
||
<h2>行业不同,用户相信你的理由也不同</h2>
|
||
<p>我们根据行业决策周期、合规要求、用户问题和转化方式重新组合策略,不复制通用模板。</p>
|
||
<button
|
||
class="primary-button small"
|
||
type="button"
|
||
@click="requestDiagnosis('行业适配板块')"
|
||
>
|
||
获取行业建议 <AppIcon name="arrow-right" />
|
||
</button>
|
||
</header>
|
||
<div class="industry-list services-reveal">
|
||
<article v-for="(industry, index) in industries" :key="industry.name">
|
||
<span>0{{ index + 1 }}</span>
|
||
<div>
|
||
<h3>{{ industry.name }}</h3>
|
||
<p>{{ industry.text }}</p>
|
||
</div>
|
||
<strong>{{ industry.stat }}</strong>
|
||
<button
|
||
type="button"
|
||
:aria-label="`获取${industry.name}行业方案`"
|
||
@click="
|
||
requestDiagnosis(`${industry.name}行业入口`, {
|
||
title: `获取${industry.name}行业方案`,
|
||
industry: industry.name
|
||
})
|
||
"
|
||
>
|
||
→
|
||
</button>
|
||
</article>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="proof-section">
|
||
<div class="page-width proof-grid services-reveal">
|
||
<article class="featured-proof">
|
||
<div class="proof-tag">教育培训行业 · GEO 全链路案例</div>
|
||
<h2>420 个真实问题,5 个月进入 AI 推荐列表</h2>
|
||
<p class="add-white">
|
||
围绕家长“找方法、选机构、比课程、看口碑、做决策”的完整路径,搭建问题库、可信内容与持续监测体系。
|
||
</p>
|
||
<div class="proof-data">
|
||
<div><strong>11% → 88%</strong><span>核心问题覆盖率</span></div>
|
||
<div><strong>+215%</strong><span>官网 AI 来源流量</span></div>
|
||
<div><strong>+190%</strong><span>精准学员咨询量</span></div>
|
||
</div>
|
||
</article>
|
||
<aside class="proof-summary">
|
||
<p class="section-kicker">真实结果</p>
|
||
<h3>不是一次流量高峰,<br />而是一套持续积累的内容资产</h3>
|
||
<ul>
|
||
<li>210+ 篇合规内容</li>
|
||
<li>覆盖 15 类渠道</li>
|
||
<li>线索有效率提升至约 65%</li>
|
||
</ul>
|
||
<button
|
||
class="service-action"
|
||
type="button"
|
||
@click="
|
||
requestDiagnosis('代表案例板块', {
|
||
title: '获取同类行业增长方案',
|
||
industry: '教育培训'
|
||
})
|
||
"
|
||
>
|
||
获取同类方案 <AppIcon name="arrow-right" />
|
||
</button>
|
||
</aside>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="services-cta">
|
||
<div class="cta-wave" aria-hidden="true"></div>
|
||
<div class="page-width services-cta-content services-reveal">
|
||
<p class="section-center">从一次真实诊断开始</p>
|
||
<h2>你的品牌,应该先解决曝光问题,<br />还是转化问题?</h2>
|
||
<span>聊聊行业、现状和目标,我们会给出第一步建议。</span>
|
||
<button
|
||
class="primary-button"
|
||
type="button"
|
||
@click="requestDiagnosis('营销增长服务页底部 CTA')"
|
||
>
|
||
预约免费 GEO 诊断 <AppIcon name="arrow-right" />
|
||
</button>
|
||
</div>
|
||
</section>
|
||
</main>
|
||
|
||
<SiteFooter />
|
||
</div>
|
||
</template>
|
||
|
||
<style scoped>
|
||
.services-page {
|
||
--service-blue: #207bf2;
|
||
--service-blue-strong: #176fd8;
|
||
--service-cyan: #58b9df;
|
||
--service-ink: #414141;
|
||
--service-copy: #5d7087;
|
||
--service-muted: #7f91a6;
|
||
--service-line: rgba(74, 134, 204, 0.18);
|
||
--service-surface: #f4f8fc;
|
||
overflow: hidden;
|
||
color: var(--service-ink);
|
||
background: #fff;
|
||
}
|
||
.services-page .primary-button {
|
||
color: #fff;
|
||
background: linear-gradient(105deg, var(--service-blue-strong), #2694e9);
|
||
box-shadow: 0 10px 24px rgba(32, 123, 242, 0.2);
|
||
}
|
||
.skip-link {
|
||
position: fixed;
|
||
z-index: 100;
|
||
top: 10px;
|
||
left: 10px;
|
||
padding: 10px 14px;
|
||
color: #fff;
|
||
border-radius: 6px;
|
||
background: #1f70df;
|
||
transform: translateY(-150%);
|
||
transition: transform 0.2s;
|
||
}
|
||
.skip-link:focus {
|
||
transform: translateY(0);
|
||
}
|
||
.page-eyebrow,
|
||
.section-kicker {
|
||
margin: 0;
|
||
color: var(--service-blue);
|
||
font-size: 13px;
|
||
font-weight: 700;
|
||
letter-spacing: 0.14em;
|
||
}
|
||
.section-center {
|
||
justify-content: center;
|
||
margin: 0 auto !important;
|
||
}
|
||
.services-hero {
|
||
position: relative;
|
||
min-height: 650px;
|
||
display: grid;
|
||
align-items: center;
|
||
isolation: isolate;
|
||
background: #f3f8ff;
|
||
}
|
||
.hero-mesh {
|
||
position: absolute;
|
||
z-index: -1;
|
||
inset: 0;
|
||
background:
|
||
radial-gradient(circle at 72% 34%, rgba(78, 158, 255, 0.25), transparent 25%),
|
||
radial-gradient(circle at 12% 82%, rgba(104, 205, 234, 0.1), transparent 28%),
|
||
linear-gradient(108deg, #f7faff 0%, #eef5ff 52%, #e7f1ff 100%);
|
||
}
|
||
.hero-mesh::after {
|
||
position: absolute;
|
||
inset: 0;
|
||
content: '';
|
||
opacity: 0.2;
|
||
background-image:
|
||
linear-gradient(rgba(59, 122, 204, 0.08) 1px, transparent 1px),
|
||
linear-gradient(90deg, rgba(59, 122, 204, 0.08) 1px, transparent 1px);
|
||
background-size: 56px 56px;
|
||
mask-image: linear-gradient(90deg, transparent, #000);
|
||
}
|
||
.services-hero-grid {
|
||
min-height: 650px;
|
||
display: grid;
|
||
grid-template-columns: 0.92fr 1.08fr;
|
||
align-items: center;
|
||
gap: 55px;
|
||
padding-top: 42px;
|
||
padding-bottom: 52px;
|
||
}
|
||
.services-hero-copy {
|
||
position: relative;
|
||
z-index: 2;
|
||
}
|
||
.services-hero-copy h1 {
|
||
margin: 15px 0 0;
|
||
color: var(--service-ink);
|
||
font-size: 62px;
|
||
font-weight: 700;
|
||
letter-spacing: 0;
|
||
line-height: 1.2;
|
||
text-wrap: balance;
|
||
}
|
||
.services-hero-copy h1 span {
|
||
color: #1878ef;
|
||
}
|
||
.hero-description {
|
||
max-width: 610px;
|
||
margin: 24px 0 0;
|
||
color: var(--service-copy);
|
||
font-size: 17px;
|
||
line-height: 1.8;
|
||
text-wrap: pretty;
|
||
}
|
||
.hero-badges {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 10px 18px;
|
||
margin-top: 27px;
|
||
color: var(--service-copy);
|
||
font-size: 14px;
|
||
line-height: 1.6;
|
||
}
|
||
.hero-badges span {
|
||
position: relative;
|
||
padding-left: 17px;
|
||
}
|
||
.hero-badges span::before {
|
||
position: absolute;
|
||
top: 6px;
|
||
left: 0;
|
||
width: 7px;
|
||
height: 7px;
|
||
content: '';
|
||
border: 2px solid #2d8bf6;
|
||
border-radius: 50%;
|
||
}
|
||
.hero-actions {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 25px;
|
||
margin-top: 33px;
|
||
}
|
||
.hero-text-link {
|
||
color: var(--service-copy);
|
||
background: transparent;
|
||
font-size: 15px;
|
||
font-weight: 600;
|
||
}
|
||
.hero-text-link span {
|
||
display: inline-grid;
|
||
width: 28px;
|
||
height: 28px;
|
||
margin-left: 8px;
|
||
place-items: center;
|
||
border: 1px solid #bbcee4;
|
||
border-radius: 50%;
|
||
color: #237df0;
|
||
transition:
|
||
transform 0.22s,
|
||
background 0.22s;
|
||
}
|
||
.hero-text-link:hover span {
|
||
background: #fff;
|
||
transform: translateY(3px);
|
||
}
|
||
.services-hero-visual {
|
||
position: relative;
|
||
width: min(610px, 100%);
|
||
aspect-ratio: 1.12;
|
||
justify-self: end;
|
||
}
|
||
.services-hero-visual::before {
|
||
position: absolute;
|
||
inset: 9% 3% 2%;
|
||
content: '';
|
||
border-radius: 50%;
|
||
background:
|
||
radial-gradient(
|
||
circle,
|
||
rgba(255, 255, 255, 0.96) 0 24%,
|
||
rgba(145, 201, 255, 0.23) 25% 44%,
|
||
transparent 45%
|
||
),
|
||
url('/images/lanhu/slices/hero-geo-visual@2x.png') 72% 45% / 170% auto no-repeat;
|
||
filter: drop-shadow(0 30px 45px rgba(52, 120, 207, 0.18));
|
||
mask-image: radial-gradient(ellipse, #000 48%, transparent 73%);
|
||
}
|
||
.hero-core {
|
||
position: absolute;
|
||
z-index: 4;
|
||
top: 50%;
|
||
left: 50%;
|
||
width: 156px;
|
||
height: 156px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
align-items: center;
|
||
justify-content: center;
|
||
border: 0;
|
||
border-radius: 50%;
|
||
color: #fff;
|
||
background: linear-gradient(145deg, #176fd8, #1ca9de);
|
||
box-shadow:
|
||
0 22px 45px rgba(33, 116, 224, 0.28),
|
||
inset 0 1px 5px rgba(255, 255, 255, 0.7);
|
||
transform: translate(-50%, -50%);
|
||
}
|
||
.hero-core small {
|
||
font-size: 12px;
|
||
letter-spacing: 0.18em;
|
||
opacity: 0.85;
|
||
}
|
||
.hero-core strong {
|
||
margin-top: 7px;
|
||
color: #fff;
|
||
font-size: 20px;
|
||
}
|
||
.hero-core span {
|
||
margin-top: 4px;
|
||
font-size: 11px;
|
||
opacity: 0.8;
|
||
}
|
||
.hero-orbit {
|
||
position: absolute;
|
||
z-index: 3;
|
||
top: 50%;
|
||
left: 50%;
|
||
border: 0;
|
||
border-radius: 50%;
|
||
transform: translate(-50%, -50%);
|
||
}
|
||
.hero-orbit-one {
|
||
width: 360px;
|
||
height: 360px;
|
||
}
|
||
.hero-orbit-two {
|
||
width: 490px;
|
||
height: 490px;
|
||
opacity: 0.72;
|
||
}
|
||
.hero-orbit i {
|
||
position: absolute;
|
||
width: 13px;
|
||
height: 13px;
|
||
border: 0;
|
||
border-radius: 50%;
|
||
background: #2383f4;
|
||
box-shadow: 0 5px 15px rgba(32, 125, 237, 0.35);
|
||
}
|
||
.hero-orbit i:nth-child(1) {
|
||
top: -7px;
|
||
left: 50%;
|
||
}
|
||
.hero-orbit i:nth-child(2) {
|
||
right: 10%;
|
||
bottom: 18%;
|
||
background: #52c6e7;
|
||
}
|
||
.hero-orbit i:nth-child(3) {
|
||
bottom: 10%;
|
||
left: 15%;
|
||
background: var(--service-blue-strong);
|
||
}
|
||
.hero-orbit i:nth-child(4) {
|
||
top: 18%;
|
||
left: 2%;
|
||
background: #7bc6f8;
|
||
}
|
||
.hero-data {
|
||
position: absolute;
|
||
z-index: 5;
|
||
min-width: 135px;
|
||
padding: 14px 17px;
|
||
border: 1px solid rgba(255, 255, 255, 0.86);
|
||
border-radius: 10px;
|
||
background: rgba(255, 255, 255, 0.76);
|
||
box-shadow:
|
||
0 14px 35px rgba(50, 111, 187, 0.13),
|
||
inset 0 1px 0 #fff;
|
||
backdrop-filter: blur(12px);
|
||
}
|
||
.hero-data small {
|
||
display: block;
|
||
color: var(--service-muted);
|
||
font-size: 12px;
|
||
}
|
||
.hero-data strong {
|
||
display: block;
|
||
margin-top: 4px;
|
||
color: #207df0;
|
||
font-size: 25px;
|
||
font-variant-numeric: tabular-nums;
|
||
}
|
||
.hero-data-top {
|
||
top: 12%;
|
||
right: 4%;
|
||
}
|
||
.hero-data-bottom {
|
||
bottom: 14%;
|
||
left: 1%;
|
||
}
|
||
.hero-visual-caption {
|
||
position: absolute;
|
||
right: 8%;
|
||
bottom: 2%;
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 8px;
|
||
color: var(--service-muted);
|
||
font-size: 12px;
|
||
}
|
||
.hero-visual-caption span {
|
||
width: 7px;
|
||
height: 7px;
|
||
border-radius: 50%;
|
||
background: #29a3ed;
|
||
box-shadow: 0 0 0 5px rgba(41, 163, 237, 0.12);
|
||
}
|
||
.decision-section {
|
||
padding: 110px 0 126px;
|
||
}
|
||
.decision-grid {
|
||
display: grid;
|
||
grid-template-columns: 0.82fr 1.35fr;
|
||
gap: 80px;
|
||
align-items: center;
|
||
}
|
||
.section-intro h2,
|
||
.model-heading h2,
|
||
.service-system-heading h2,
|
||
.process-heading h2 {
|
||
margin: 14px 0 0;
|
||
color: var(--service-ink);
|
||
font-size: 44px;
|
||
font-weight: 700;
|
||
letter-spacing: 0;
|
||
line-height: 1.25;
|
||
text-wrap: balance;
|
||
}
|
||
.section-intro > p:last-of-type,
|
||
.model-heading > p:last-child,
|
||
.service-system-heading > p,
|
||
.process-heading > p:last-child {
|
||
max-width: 600px;
|
||
margin: 20px 0 0;
|
||
color: var(--service-copy);
|
||
font-size: 16px;
|
||
line-height: 1.8;
|
||
}
|
||
.decision-journey {
|
||
display: grid;
|
||
}
|
||
.decision-journey article {
|
||
position: relative;
|
||
min-height: 128px;
|
||
display: grid;
|
||
grid-template-columns: 78px 1fr 28px;
|
||
align-items: center;
|
||
gap: 23px;
|
||
padding: 22px 0;
|
||
border-bottom: 1px solid var(--service-line);
|
||
}
|
||
.decision-journey article:first-child {
|
||
border-top: 1px solid var(--service-line);
|
||
}
|
||
.journey-number {
|
||
color: #a4b8ce;
|
||
font-size: 13px;
|
||
font-weight: 700;
|
||
letter-spacing: 0.12em;
|
||
}
|
||
.decision-journey h3 {
|
||
margin: 0;
|
||
color: var(--service-ink);
|
||
font-size: 25px;
|
||
}
|
||
.decision-journey p {
|
||
max-width: 500px;
|
||
margin: 8px 0 0;
|
||
color: var(--service-copy);
|
||
font-size: 15px;
|
||
line-height: 1.72;
|
||
}
|
||
.decision-journey article > span {
|
||
color: #62a2ef;
|
||
font-size: 22px;
|
||
}
|
||
.model-deep-section {
|
||
position: relative;
|
||
padding: 110px 0 128px;
|
||
background:
|
||
radial-gradient(circle at 10% 90%, rgba(105, 201, 238, 0.16), transparent 26%), #edf7ff;
|
||
}
|
||
.model-heading {
|
||
max-width: 980px;
|
||
margin: 0 auto;
|
||
text-align: center;
|
||
}
|
||
.model-heading h2,
|
||
.process-heading h2,
|
||
.service-system-heading h2 {
|
||
width: 100%;
|
||
text-align: center !important;
|
||
white-space: nowrap;
|
||
}
|
||
.model-heading > p:last-child {
|
||
max-width: 860px;
|
||
margin-right: auto;
|
||
margin-left: auto;
|
||
text-align: center;
|
||
text-wrap: balance;
|
||
}
|
||
.model-deep-grid {
|
||
display: grid;
|
||
grid-template-columns: 1.05fr 0.95fr;
|
||
gap: 75px;
|
||
align-items: center;
|
||
margin-top: 72px;
|
||
}
|
||
.ring-stage {
|
||
position: relative;
|
||
min-height: 510px;
|
||
}
|
||
.model-ring {
|
||
position: absolute;
|
||
width: 345px;
|
||
aspect-ratio: 1;
|
||
overflow: hidden;
|
||
border: 0;
|
||
outline: 0;
|
||
box-shadow: none;
|
||
}
|
||
.model-ring img {
|
||
display: block;
|
||
width: calc(100% + 4px);
|
||
max-width: none;
|
||
margin: -2px;
|
||
border: 0;
|
||
outline: 0;
|
||
filter: drop-shadow(0 25px 32px rgba(58, 123, 205, 0.12));
|
||
box-shadow: none;
|
||
}
|
||
.ring-1 {
|
||
top: 10px;
|
||
left: 0;
|
||
}
|
||
.ring-2 {
|
||
right: 0;
|
||
bottom: 0;
|
||
}
|
||
.ring-copy {
|
||
position: absolute;
|
||
top: 50%;
|
||
left: 50%;
|
||
display: grid;
|
||
justify-items: center;
|
||
min-width: 106px;
|
||
padding: 10px 14px 11px;
|
||
border-radius: 999px;
|
||
background: rgba(255, 255, 255, 0.9);
|
||
box-shadow: 0 10px 24px rgba(42, 100, 180, 0.14);
|
||
transform: translate(-50%, -50%);
|
||
backdrop-filter: blur(10px);
|
||
}
|
||
.ring-copy small {
|
||
color: #6e8eb4;
|
||
font-size: 11px;
|
||
}
|
||
.ring-copy strong {
|
||
margin-top: 5px;
|
||
color: #135fbd;
|
||
font-size: 17px;
|
||
font-weight: 800;
|
||
}
|
||
.ring-connector {
|
||
position: absolute;
|
||
z-index: 3;
|
||
top: 45%;
|
||
left: 50%;
|
||
width: 92px;
|
||
height: 92px;
|
||
display: grid;
|
||
place-content: center;
|
||
border: 7px solid rgba(255, 255, 255, 0.84);
|
||
border-radius: 50%;
|
||
color: #fff;
|
||
background: linear-gradient(145deg, #448ff2, #43b9e9);
|
||
box-shadow: 0 16px 32px rgba(44, 130, 224, 0.22);
|
||
transform: translate(-50%, -50%);
|
||
font-size: 11px;
|
||
text-align: center;
|
||
}
|
||
.model-explanation {
|
||
display: grid;
|
||
gap: 26px;
|
||
}
|
||
.model-explanation article {
|
||
padding: 0 0 30px;
|
||
border-bottom: 1px solid var(--service-line);
|
||
}
|
||
.model-explanation header {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 13px;
|
||
}
|
||
.model-explanation header span {
|
||
color: #79a2d2;
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
letter-spacing: 0.12em;
|
||
}
|
||
.model-explanation h3 {
|
||
margin: 0;
|
||
color: var(--service-ink);
|
||
font-size: 24px;
|
||
}
|
||
.model-explanation p {
|
||
margin: 13px 0 15px;
|
||
color: var(--service-copy);
|
||
font-size: 15px;
|
||
line-height: 1.75;
|
||
}
|
||
.model-explanation ul {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
margin: 0;
|
||
padding: 0;
|
||
list-style: none;
|
||
}
|
||
.model-explanation li {
|
||
padding: 8px 12px;
|
||
border-radius: 5px;
|
||
color: #496b91;
|
||
background: rgba(255, 255, 255, 0.7);
|
||
font-size: 13px;
|
||
}
|
||
.service-system-section {
|
||
padding: 116px 0 134px;
|
||
}
|
||
.service-system-heading {
|
||
max-width: 980px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
align-items: center;
|
||
margin: 0 auto;
|
||
text-align: center;
|
||
}
|
||
.service-system-heading > div {
|
||
width: 100%;
|
||
}
|
||
.service-system-heading .section-kicker {
|
||
justify-content: center;
|
||
}
|
||
.service-system-heading > p {
|
||
max-width: 860px;
|
||
margin: 20px auto 0;
|
||
text-align: center;
|
||
text-wrap: balance;
|
||
}
|
||
.service-stories {
|
||
display: grid;
|
||
gap: 78px;
|
||
margin-top: 72px;
|
||
}
|
||
.service-story {
|
||
display: grid;
|
||
grid-template-columns: 0.93fr 1.07fr;
|
||
align-items: stretch;
|
||
gap: 68px;
|
||
padding: 52px 0 64px;
|
||
border-top: 1px solid var(--service-line);
|
||
}
|
||
.service-story.reverse .service-story-copy {
|
||
order: 2;
|
||
}
|
||
.service-story.reverse .service-story-visual {
|
||
order: 1;
|
||
}
|
||
.service-index {
|
||
margin: 0;
|
||
color: #87a3c3;
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
letter-spacing: 0.12em;
|
||
}
|
||
.service-index span {
|
||
font-size: 18px;
|
||
margin-left: 12px;
|
||
color: #2c80ed;
|
||
}
|
||
.service-story h3 {
|
||
max-width: 630px;
|
||
margin: 18px 0 0;
|
||
color: var(--service-ink);
|
||
font-size: 40px;
|
||
font-weight: 700;
|
||
letter-spacing: 0;
|
||
line-height: 1.25;
|
||
}
|
||
.service-lead {
|
||
margin: 19px 0 0;
|
||
color: var(--service-copy);
|
||
font-size: 16px;
|
||
line-height: 1.82;
|
||
text-wrap: balance;
|
||
}
|
||
.pain-note {
|
||
margin-top: 25px;
|
||
padding: 20px 24px;
|
||
border-left: 3px solid #3a8ef3;
|
||
background: var(--service-surface);
|
||
}
|
||
.pain-note strong {
|
||
color: #3d6faa;
|
||
font-size: 13px;
|
||
}
|
||
.pain-note p {
|
||
margin: 6px 0 0;
|
||
color: var(--service-copy);
|
||
font-size: 15px;
|
||
line-height: 1.72;
|
||
}
|
||
.service-details {
|
||
display: grid;
|
||
grid-template-columns: 1fr 1fr;
|
||
gap: 30px;
|
||
margin-top: 30px;
|
||
}
|
||
.service-details strong {
|
||
color: var(--service-ink);
|
||
font-size: 14px;
|
||
}
|
||
.service-details ul {
|
||
display: grid;
|
||
gap: 11px;
|
||
margin: 14px 0 0;
|
||
padding: 0;
|
||
list-style: none;
|
||
}
|
||
.service-details li {
|
||
position: relative;
|
||
padding-left: 14px;
|
||
color: var(--service-copy) !important;
|
||
font-size: 14px !important;
|
||
line-height: 1.65 !important;
|
||
}
|
||
.service-details li::before {
|
||
position: absolute;
|
||
top: 7px;
|
||
left: 0;
|
||
width: 5px;
|
||
height: 5px;
|
||
content: '';
|
||
border-radius: 50%;
|
||
background: #4b97ef;
|
||
}
|
||
.service-action {
|
||
min-height: 48px;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
gap: 9px;
|
||
margin-top: 27px;
|
||
padding: 0 24px !important;
|
||
border: 0;
|
||
border-radius: 999px;
|
||
color: #fff;
|
||
background: linear-gradient(100deg, #3158ff, #12aef5);
|
||
box-shadow: 0 12px 24px rgba(25, 106, 255, 0.2);
|
||
font-size: 14px;
|
||
font-weight: 600;
|
||
line-height: 1;
|
||
white-space: nowrap;
|
||
}
|
||
.service-action :deep(.app-icon) {
|
||
flex: 0 0 auto;
|
||
font-size: 1.05em;
|
||
transition: transform 0.2s;
|
||
}
|
||
.service-action:hover :deep(.app-icon) {
|
||
transform: translateX(3px);
|
||
}
|
||
.service-story-visual {
|
||
position: relative;
|
||
min-height: 520px;
|
||
overflow: hidden;
|
||
border: 1px solid rgba(255, 255, 255, 0.8);
|
||
border-radius: 8px;
|
||
background:
|
||
radial-gradient(circle at 70% 25%, rgba(84, 164, 255, 0.28), transparent 24%),
|
||
linear-gradient(145deg, #f1f8ff, #dfeeff);
|
||
box-shadow:
|
||
0 28px 60px rgba(62, 126, 204, 0.13),
|
||
inset 0 1px 0 #fff;
|
||
}
|
||
.visual-2 {
|
||
background:
|
||
radial-gradient(circle at 25% 70%, rgba(87, 190, 231, 0.27), transparent 25%),
|
||
linear-gradient(145deg, #e9f7ff, #e5edff);
|
||
}
|
||
.visual-3 {
|
||
background:
|
||
radial-gradient(circle at 75% 70%, rgba(97, 139, 241, 0.25), transparent 25%),
|
||
linear-gradient(145deg, #f4f8ff, #dcecff);
|
||
}
|
||
.visual-topline {
|
||
position: relative;
|
||
z-index: 2;
|
||
display: flex;
|
||
justify-content: space-between;
|
||
padding: 24px 27px;
|
||
color: #496b91;
|
||
font-size: 13px;
|
||
}
|
||
.visual-topline small {
|
||
color: var(--service-muted);
|
||
font-size: 11px;
|
||
letter-spacing: 0.12em;
|
||
}
|
||
.visual-network {
|
||
position: absolute;
|
||
top: 54%;
|
||
left: 50%;
|
||
width: 390px;
|
||
height: 340px;
|
||
transform: translate(-50%, -50%);
|
||
}
|
||
.visual-network-image {
|
||
position: absolute;
|
||
z-index: 1;
|
||
top: 54%;
|
||
left: 50%;
|
||
width: min(620px, 108%);
|
||
height: min(500px, 90%);
|
||
max-width: none;
|
||
object-fit: contain;
|
||
pointer-events: none;
|
||
filter: drop-shadow(0 22px 34px rgba(46, 121, 220, 0.16));
|
||
transform: translate(-50%, -48%);
|
||
}
|
||
.network-core {
|
||
position: absolute;
|
||
z-index: 3;
|
||
top: 50%;
|
||
left: 50%;
|
||
width: 135px;
|
||
height: 135px;
|
||
display: grid;
|
||
place-content: center;
|
||
justify-items: center;
|
||
border: 12px solid rgba(255, 255, 255, 0.6);
|
||
border-radius: 50%;
|
||
color: #fff;
|
||
background: linear-gradient(145deg, var(--service-blue-strong), var(--service-cyan));
|
||
box-shadow: 0 22px 38px rgba(37, 125, 226, 0.28);
|
||
transform: translate(-50%, -50%);
|
||
}
|
||
.network-core small {
|
||
font-size: 11px;
|
||
opacity: 0.7;
|
||
}
|
||
.network-core strong {
|
||
margin-top: 5px;
|
||
color: #fff;
|
||
font-size: 17px;
|
||
}
|
||
.network-item {
|
||
position: absolute;
|
||
z-index: 2;
|
||
min-width: 105px;
|
||
padding: 11px 14px;
|
||
border: 1px solid rgba(255, 255, 255, 0.92);
|
||
border-radius: 7px;
|
||
color: #496b91;
|
||
background: rgba(255, 255, 255, 0.8);
|
||
box-shadow: 0 12px 24px rgba(55, 116, 190, 0.1);
|
||
font-size: 12px;
|
||
text-align: center;
|
||
backdrop-filter: blur(8px);
|
||
}
|
||
.item-1 {
|
||
top: 0;
|
||
left: 50%;
|
||
transform: translateX(-50%);
|
||
}
|
||
.item-2 {
|
||
top: 50%;
|
||
right: 0;
|
||
transform: translateY(-50%);
|
||
}
|
||
.item-3 {
|
||
bottom: 0;
|
||
left: 50%;
|
||
transform: translateX(-50%);
|
||
}
|
||
.item-4 {
|
||
top: 50%;
|
||
left: 0;
|
||
transform: translateY(-50%);
|
||
}
|
||
.network-line {
|
||
position: absolute;
|
||
z-index: 1;
|
||
top: 50%;
|
||
left: 50%;
|
||
width: 2px;
|
||
height: 118px;
|
||
background: linear-gradient(#65a7ef, transparent);
|
||
transform-origin: top;
|
||
}
|
||
.line-1 {
|
||
transform: rotate(180deg);
|
||
}
|
||
.line-2 {
|
||
transform: rotate(90deg);
|
||
}
|
||
.line-3 {
|
||
transform: rotate(0);
|
||
}
|
||
.line-4 {
|
||
transform: rotate(-90deg);
|
||
}
|
||
.visual-metric {
|
||
position: absolute;
|
||
z-index: 2;
|
||
right: 24px;
|
||
bottom: 22px;
|
||
display: grid;
|
||
justify-items: end;
|
||
}
|
||
.visual-metric strong {
|
||
color: #2780ed;
|
||
font-size: 27px;
|
||
font-variant-numeric: tabular-nums;
|
||
}
|
||
.visual-metric span {
|
||
margin-top: 3px;
|
||
color: var(--service-muted);
|
||
font-size: 12px;
|
||
}
|
||
.process-section {
|
||
position: relative;
|
||
padding: 112px 0 128px;
|
||
isolation: isolate;
|
||
background: #edf7ff;
|
||
}
|
||
.process-background {
|
||
position: absolute;
|
||
z-index: -1;
|
||
inset: 0;
|
||
background: url('/images/lanhu/slices/home-group95-image21@2x.png') center 10% / cover no-repeat;
|
||
opacity: 0.16;
|
||
mask-image: linear-gradient(#000, transparent 88%);
|
||
}
|
||
.process-heading {
|
||
max-width: 980px;
|
||
margin: 0 auto;
|
||
text-align: center;
|
||
}
|
||
.process-heading > p:last-child {
|
||
max-width: 860px;
|
||
margin-right: auto;
|
||
margin-left: auto;
|
||
text-align: center;
|
||
text-wrap: balance;
|
||
}
|
||
.process-timeline {
|
||
position: relative;
|
||
display: grid;
|
||
grid-template-columns: repeat(5, 1fr);
|
||
gap: 22px;
|
||
margin-top: 66px;
|
||
}
|
||
.process-timeline::before {
|
||
position: absolute;
|
||
top: 26px;
|
||
right: 9%;
|
||
left: 9%;
|
||
height: 1px;
|
||
content: '';
|
||
background: linear-gradient(90deg, transparent, #7eb5f0 12% 88%, transparent);
|
||
}
|
||
.process-timeline article {
|
||
position: relative;
|
||
z-index: 2;
|
||
padding: 0 18px;
|
||
text-align: center;
|
||
}
|
||
.step-marker {
|
||
width: 54px;
|
||
height: 54px;
|
||
display: grid;
|
||
margin: 0 auto 22px;
|
||
place-items: center;
|
||
border: 7px solid rgba(255, 255, 255, 0.9);
|
||
border-radius: 50%;
|
||
color: #fff;
|
||
background: #358af0;
|
||
box-shadow: 0 11px 24px rgba(51, 135, 235, 0.22);
|
||
}
|
||
.step-marker span {
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.process-timeline h3 {
|
||
margin: 0;
|
||
color: var(--service-ink);
|
||
font-size: 18px;
|
||
}
|
||
.process-timeline p {
|
||
margin: 11px 0 0;
|
||
color: var(--service-copy);
|
||
font-size: 14px;
|
||
line-height: 1.72;
|
||
}
|
||
.service-industries {
|
||
padding: 116px 0 132px;
|
||
}
|
||
.industries-layout {
|
||
display: grid;
|
||
grid-template-columns: 0.72fr 1.28fr;
|
||
gap: 88px;
|
||
align-items: start;
|
||
}
|
||
.industries-layout .section-intro {
|
||
position: sticky;
|
||
top: 112px;
|
||
}
|
||
.industries-layout .primary-button {
|
||
margin-top: 28px;
|
||
}
|
||
.industry-list {
|
||
display: grid;
|
||
}
|
||
.industry-list article {
|
||
min-height: 128px;
|
||
display: grid;
|
||
grid-template-columns: 44px 1fr auto 42px;
|
||
align-items: center;
|
||
gap: 24px;
|
||
padding: 18px 0;
|
||
border-bottom: 1px solid var(--service-line);
|
||
transition:
|
||
padding 0.25s,
|
||
background 0.25s;
|
||
}
|
||
.industry-list article:first-child {
|
||
border-top: 1px solid var(--service-line);
|
||
}
|
||
.industry-list article:hover {
|
||
padding-right: 13px;
|
||
padding-left: 13px;
|
||
background: #f7fbff;
|
||
}
|
||
.industry-list > article > span {
|
||
color: #9bb0c7;
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.industry-list h3 {
|
||
margin: 0;
|
||
color: var(--service-ink);
|
||
font-size: 21px;
|
||
}
|
||
.industry-list p {
|
||
margin: 7px 0 0;
|
||
color: var(--service-copy);
|
||
font-size: 15px;
|
||
line-height: 1.68;
|
||
}
|
||
.industry-list strong {
|
||
color: var(--service-blue);
|
||
font-size: 14px;
|
||
font-variant-numeric: tabular-nums;
|
||
white-space: nowrap;
|
||
}
|
||
.industry-list button {
|
||
width: 34px;
|
||
height: 34px;
|
||
border: 1px solid #b9d0e9;
|
||
border-radius: 50%;
|
||
color: #3184ec;
|
||
background: #fff;
|
||
transition:
|
||
transform 0.2s,
|
||
background 0.2s,
|
||
color 0.2s;
|
||
}
|
||
.industry-list button:hover {
|
||
color: #fff;
|
||
background: #3184ec;
|
||
transform: translateX(3px);
|
||
}
|
||
.proof-section {
|
||
padding: 104px 0 122px;
|
||
background: #f2f8ff;
|
||
}
|
||
.proof-grid {
|
||
display: grid;
|
||
grid-template-columns: 1.35fr 0.65fr;
|
||
gap: 30px;
|
||
}
|
||
.featured-proof {
|
||
min-height: 430px;
|
||
padding: 52px;
|
||
border-radius: 8px;
|
||
color: #fff;
|
||
background:
|
||
linear-gradient(120deg, rgba(26, 82, 167, 0.95), rgba(38, 142, 222, 0.82)),
|
||
url('/images/lanhu/slices/home-group90-image15@2x.png') center / cover;
|
||
box-shadow: 0 28px 60px rgba(40, 100, 177, 0.18);
|
||
}
|
||
.proof-tag {
|
||
font-size: 12px;
|
||
letter-spacing: 0.12em;
|
||
opacity: 0.72;
|
||
}
|
||
.add-white {
|
||
color: white !important;
|
||
}
|
||
.featured-proof h2 {
|
||
max-width: 720px;
|
||
margin: 26px 0 0;
|
||
color: #fff;
|
||
font-size: 44px;
|
||
font-weight: 700;
|
||
letter-spacing: 0;
|
||
line-height: 1.25;
|
||
}
|
||
.featured-proof > p {
|
||
max-width: 680px;
|
||
margin: 19px 0 0;
|
||
font-size: 16px;
|
||
line-height: 1.8;
|
||
opacity: 0.8;
|
||
}
|
||
.proof-data {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, 1fr);
|
||
gap: 20px;
|
||
margin-top: 52px;
|
||
}
|
||
.proof-data div {
|
||
padding-top: 18px;
|
||
border-top: 1px solid rgba(255, 255, 255, 0.34);
|
||
}
|
||
.proof-data strong {
|
||
display: block;
|
||
color: #fff;
|
||
font-size: 25px;
|
||
font-variant-numeric: tabular-nums;
|
||
}
|
||
.proof-data span {
|
||
display: block;
|
||
margin-top: 7px;
|
||
font-size: 13px;
|
||
opacity: 0.7;
|
||
}
|
||
.proof-summary {
|
||
padding: 45px 40px;
|
||
border-radius: 8px;
|
||
background: #fff;
|
||
box-shadow: 0 22px 50px rgba(63, 119, 185, 0.1);
|
||
}
|
||
.proof-summary h3 {
|
||
margin: 18px 0 0;
|
||
color: var(--service-ink);
|
||
font-size: 27px;
|
||
line-height: 1.45;
|
||
}
|
||
.proof-summary ul {
|
||
display: grid;
|
||
gap: 13px;
|
||
margin: 28px 0 0;
|
||
padding: 0;
|
||
list-style: none;
|
||
}
|
||
.proof-summary li {
|
||
padding-bottom: 13px;
|
||
border-bottom: 1px solid #e4edf6;
|
||
color: var(--service-copy);
|
||
font-size: 15px;
|
||
}
|
||
.services-cta {
|
||
position: relative;
|
||
min-height: 430px;
|
||
display: grid;
|
||
place-items: center;
|
||
overflow: hidden;
|
||
isolation: isolate;
|
||
}
|
||
.cta-wave {
|
||
position: absolute;
|
||
z-index: -1;
|
||
inset: 0;
|
||
background:
|
||
linear-gradient(rgba(247, 251, 255, 0.22), rgba(236, 247, 255, 0.5)),
|
||
url('/images/lanhu/slices/home-group105-image31@2x.png') center / cover no-repeat;
|
||
}
|
||
.services-cta-content {
|
||
padding: 76px 0;
|
||
text-align: center;
|
||
}
|
||
.services-cta-content > p {
|
||
margin: 0;
|
||
color: #237df0;
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
letter-spacing: 0.14em;
|
||
}
|
||
.services-cta-content h2 {
|
||
margin: 17px 0 0;
|
||
color: var(--service-ink);
|
||
font-size: 48px;
|
||
letter-spacing: 0;
|
||
line-height: 1.3;
|
||
}
|
||
.services-cta-content > span {
|
||
display: block;
|
||
margin-top: 14px;
|
||
color: var(--service-copy);
|
||
font-size: 16px;
|
||
}
|
||
.services-cta-content .primary-button {
|
||
margin-top: 28px;
|
||
}
|
||
@media (max-width: 1050px) {
|
||
.services-hero-grid {
|
||
grid-template-columns: 0.9fr 1.1fr;
|
||
gap: 25px;
|
||
}
|
||
.hero-orbit-two {
|
||
width: 420px;
|
||
height: 420px;
|
||
}
|
||
.hero-orbit-one {
|
||
width: 320px;
|
||
height: 320px;
|
||
}
|
||
.model-deep-grid {
|
||
gap: 35px;
|
||
}
|
||
.model-ring {
|
||
width: 310px;
|
||
}
|
||
.service-story {
|
||
gap: 36px;
|
||
}
|
||
.service-story-visual {
|
||
min-height: 490px;
|
||
}
|
||
.industries-layout {
|
||
gap: 55px;
|
||
}
|
||
}
|
||
@media (max-width: 1080px) {
|
||
.services-hero,
|
||
.services-hero-grid {
|
||
min-height: auto;
|
||
}
|
||
.services-hero-grid {
|
||
grid-template-columns: 1fr;
|
||
padding-top: 72px;
|
||
padding-bottom: 60px;
|
||
}
|
||
.services-hero-copy {
|
||
max-width: 760px;
|
||
}
|
||
.services-hero-copy h1 {
|
||
font-size: 52px;
|
||
}
|
||
.section-intro h2,
|
||
.model-heading h2,
|
||
.service-system-heading h2,
|
||
.process-heading h2 {
|
||
font-size: 40px;
|
||
}
|
||
.model-heading h2,
|
||
.service-system-heading h2,
|
||
.process-heading h2 {
|
||
max-width: 18em;
|
||
white-space: normal;
|
||
}
|
||
.service-story h3 {
|
||
font-size: 38px;
|
||
}
|
||
.featured-proof h2,
|
||
.services-cta-content h2 {
|
||
font-size: 42px;
|
||
}
|
||
.services-hero-visual {
|
||
width: min(570px, 100%);
|
||
justify-self: center;
|
||
margin-top: 28px;
|
||
}
|
||
.decision-grid,
|
||
.model-deep-grid,
|
||
.service-system-heading,
|
||
.service-story,
|
||
.industries-layout,
|
||
.proof-grid {
|
||
grid-template-columns: 1fr;
|
||
}
|
||
.decision-grid {
|
||
gap: 45px;
|
||
}
|
||
.model-deep-grid {
|
||
gap: 50px;
|
||
}
|
||
.ring-stage {
|
||
width: min(650px, 100%);
|
||
margin: auto;
|
||
}
|
||
.service-system-heading {
|
||
gap: 0;
|
||
}
|
||
.service-system-heading > p {
|
||
margin-top: 18px;
|
||
}
|
||
.service-story-copy {
|
||
max-width: 780px;
|
||
}
|
||
.service-story.reverse .service-story-copy,
|
||
.service-story.reverse .service-story-visual {
|
||
order: initial;
|
||
}
|
||
.service-story-visual {
|
||
width: min(720px, 100%);
|
||
min-height: 500px;
|
||
justify-self: center;
|
||
}
|
||
.process-timeline {
|
||
grid-template-columns: 1fr;
|
||
gap: 0;
|
||
}
|
||
.process-timeline::before {
|
||
top: 28px;
|
||
bottom: 28px;
|
||
left: 26px;
|
||
width: 1px;
|
||
height: auto;
|
||
}
|
||
.process-timeline article {
|
||
min-height: 118px;
|
||
display: grid;
|
||
grid-template-columns: 54px 1fr;
|
||
grid-template-rows: auto auto;
|
||
gap: 4px 20px;
|
||
padding: 0 0 28px;
|
||
text-align: left;
|
||
}
|
||
.step-marker {
|
||
grid-row: 1 / 3;
|
||
margin: 0;
|
||
}
|
||
.process-timeline p {
|
||
margin-top: 4px;
|
||
}
|
||
.industries-layout .section-intro {
|
||
position: static;
|
||
max-width: 720px;
|
||
}
|
||
.proof-summary {
|
||
padding: 38px;
|
||
}
|
||
}
|
||
@media (max-width: 600px) {
|
||
.services-hero-grid {
|
||
min-width: 0;
|
||
padding-top: 54px;
|
||
}
|
||
.services-hero-copy {
|
||
width: 100%;
|
||
min-width: 0;
|
||
}
|
||
.services-hero-copy h1 {
|
||
max-width: 100%;
|
||
font-size: 38px;
|
||
letter-spacing: 0;
|
||
overflow-wrap: normal;
|
||
word-break: normal;
|
||
}
|
||
.services-hero-copy h1 br,
|
||
.section-intro h2 br,
|
||
.proof-summary h3 br {
|
||
display: none;
|
||
}
|
||
.section-intro h2,
|
||
.model-heading h2,
|
||
.service-system-heading h2,
|
||
.process-heading h2,
|
||
.featured-proof h2,
|
||
.services-cta-content h2 {
|
||
font-size: 32px;
|
||
}
|
||
.service-story h3 {
|
||
font-size: 30px;
|
||
}
|
||
.hero-description {
|
||
width: 100%;
|
||
max-width: 100%;
|
||
font-size: 15px;
|
||
overflow-wrap: normal;
|
||
word-break: normal;
|
||
}
|
||
.hero-badges {
|
||
display: grid;
|
||
grid-template-columns: 1fr;
|
||
gap: 10px;
|
||
}
|
||
.hero-actions {
|
||
align-items: flex-start;
|
||
flex-direction: column;
|
||
gap: 18px;
|
||
}
|
||
.services-hero-visual {
|
||
width: min(340px, 100%);
|
||
aspect-ratio: 0.95;
|
||
}
|
||
.hero-orbit-two {
|
||
width: 330px;
|
||
height: 330px;
|
||
}
|
||
.hero-orbit-one {
|
||
width: 250px;
|
||
height: 250px;
|
||
}
|
||
.hero-core {
|
||
width: 124px;
|
||
height: 124px;
|
||
}
|
||
.hero-core strong {
|
||
font-size: 17px;
|
||
}
|
||
.hero-data {
|
||
min-width: 112px;
|
||
padding: 11px 13px;
|
||
}
|
||
.hero-data strong {
|
||
font-size: 20px;
|
||
}
|
||
.decision-section,
|
||
.model-deep-section,
|
||
.service-system-section,
|
||
.service-industries {
|
||
padding-top: 76px;
|
||
padding-bottom: 86px;
|
||
}
|
||
.decision-journey article {
|
||
grid-template-columns: 44px 1fr;
|
||
gap: 13px;
|
||
padding: 22px 4px;
|
||
}
|
||
.decision-journey article > span {
|
||
display: none;
|
||
}
|
||
.decision-journey h3 {
|
||
font-size: 21px;
|
||
}
|
||
.ring-stage {
|
||
min-height: 390px;
|
||
}
|
||
.model-ring {
|
||
width: 235px;
|
||
}
|
||
.ring-copy strong {
|
||
font-size: 13px;
|
||
}
|
||
.ring-connector {
|
||
width: 70px;
|
||
height: 70px;
|
||
border-width: 5px;
|
||
}
|
||
.service-stories {
|
||
gap: 40px;
|
||
margin-top: 45px;
|
||
}
|
||
.service-story {
|
||
gap: 32px;
|
||
padding-top: 35px;
|
||
}
|
||
.service-details {
|
||
grid-template-columns: 1fr;
|
||
}
|
||
.service-story-visual {
|
||
min-height: 410px;
|
||
}
|
||
.visual-network {
|
||
width: 310px;
|
||
height: 280px;
|
||
}
|
||
.visual-network-image {
|
||
top: 52%;
|
||
width: min(500px, 118%);
|
||
height: 360px;
|
||
}
|
||
.network-core {
|
||
width: 108px;
|
||
height: 108px;
|
||
border-width: 8px;
|
||
}
|
||
.network-core strong {
|
||
font-size: 14px;
|
||
}
|
||
.network-item {
|
||
min-width: 86px;
|
||
padding: 9px;
|
||
font-size: 11px;
|
||
}
|
||
.network-line {
|
||
height: 92px;
|
||
}
|
||
.process-section {
|
||
padding-top: 76px;
|
||
padding-bottom: 84px;
|
||
}
|
||
.industry-list article {
|
||
grid-template-columns: 30px 1fr 36px;
|
||
gap: 10px;
|
||
padding: 22px 4px;
|
||
}
|
||
.industry-list strong {
|
||
grid-column: 2 / 3;
|
||
}
|
||
.industry-list button {
|
||
grid-column: 3;
|
||
grid-row: 1 / 3;
|
||
}
|
||
.featured-proof {
|
||
min-height: 0;
|
||
padding: 34px 24px;
|
||
}
|
||
.proof-data {
|
||
grid-template-columns: 1fr;
|
||
gap: 16px;
|
||
margin-top: 36px;
|
||
}
|
||
.proof-summary {
|
||
padding: 32px 24px;
|
||
}
|
||
.services-cta {
|
||
min-height: 390px;
|
||
}
|
||
.services-cta-content h2 br {
|
||
display: none;
|
||
}
|
||
}
|
||
@media (prefers-reduced-motion: reduce) {
|
||
.services-page *,
|
||
.services-page *::before,
|
||
.services-page *::after {
|
||
scroll-behavior: auto !important;
|
||
animation-duration: 0.01ms !important;
|
||
transition-duration: 0.01ms !important;
|
||
}
|
||
}
|
||
</style>
|