/* ================================================================
   同与HR V3 - 深浅交替 + 遮罩揭示动画 + 3D粒子 + 视觉冲击力
   参考JF Vision专业设计水准
   ================================================================ */

/* ---- Web Font: Noto Sans SC (跨平台一致渲染) ---- */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;700;900&display=swap');

/* ---- CSS Variables (Design Tokens) ---- */
:root {
  /* Typography Scale */
  --font-h1: 48px;
  --font-h2: 36px;
  --font-h3: 28px;
  --font-h4: 22px;
  --font-lg: 17px;
  --font-base: 15px;
  --font-sm: 13px;
  --font-xs: 11px;
  
  /* Line Height */
  --line-h1: 1.25;
  --line-h2: 1.35;
  --line-h3: 1.4;
  --line-base: 1.8;
  
  /* Font Weight */
  --weight-black: 700;
  --weight-bold: 700;
  --weight-semibold: 600;
  --weight-medium: 500;
  --weight-normal: 400;
  
  /* Colors - Primary */
  --color-primary: #c0392b;
  --color-primary-light: #e74c3c;
  --color-primary-dark: #a02520;
  --color-primary-soft: rgba(192,57,43,.08);
  
  /* Colors - Neutral */
  --color-dark-900: #0a0a0a;
  --color-dark-800: #141c2b;
  --color-dark-700: #1a2332;
  /* 底部浅色主题（米白，便于后续整体更换） */
  --color-footer-bg: #f7f5f0;
  --color-footer-bg-deep: #efece4;
  --color-gray-100: #f5f6f8;
  --color-gray-400: #7c8189;
  --color-gray-600: #5a6069;
  --color-gray-900: #111;
  --color-white: #ffffff;

  /* Colors - Light Surfaces（整站提亮基调） */
  --surface-1: #ffffff;
  --surface-2: #f7f8fa;
  --surface-3: #eef1f6;
  --surface-tint: #f4f7fb;
  --border-soft: rgba(17,24,39,.08);
  --text-strong: #16202e;
  --text-body: #5a6069;
  --text-muted: #8a9099;
  --text-nav: #4a5462;

  /* Colors - Overlay & Shadow（图片遮罩与投影统一口径） */
  --hero-bg: #e7ecf2;
  --header-bg: rgba(255,255,255,.5);
  --header-bg-scrolled: rgba(255,255,255,.85);
  --header-border: rgba(255,255,255,.22);
  --scrim-1: rgba(10,18,30,.16);
  --scrim-2: rgba(10,18,30,.28);
  --scrim-3: rgba(10,18,30,.5);
  --scrim-4: rgba(10,18,30,.72);
  --scrim-5: rgba(10,18,30,.85);
  --on-image-strong: #ffffff;
  --on-image-soft: rgba(255,255,255,.85);
  --on-image-dim: rgba(255,255,255,.6);
  --shadow-sm: 0 4px 18px rgba(17,24,39,.05);
  --shadow-md: 0 10px 30px rgba(17,24,39,.10);
  --shadow-lg: 0 18px 50px rgba(17,24,39,.14);
  --text-shadow-strong: 0 4px 24px rgba(10,18,30,.6);
  --text-shadow-soft: 0 2px 14px rgba(10,18,30,.55);
  
  /* Spacing */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
  --space-2xl: 48px;
  --space-3xl: 64px;
  --space-4xl: 96px;
}

/* ---- Reset & Base ---- */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:"Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;color:#333;background:#fff;line-height:1.7;overflow-x:hidden}
a{text-decoration:none;color:inherit;transition:color .3s}
img{max-width:100%;display:block}
ul,ol{list-style:none}
.container{max-width:1200px;margin:0 auto;padding:0 40px}

/* ---- Loading (Cinematic) ---- */
#loading{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--surface-2);z-index:9999;display:flex;align-items:center;justify-content:center;transition:opacity .8s ease,visibility .8s}
#loading.hide{opacity:0;visibility:hidden;pointer-events:none}
.loader{display:flex;gap:10px}
.loader .dot{width:8px;height:8px;border-radius:50%;background:var(--color-primary);animation:loaderPulse 1.4s ease-in-out infinite}
.loader .dot:nth-child(2){animation-delay:.15s}
.loader .dot:nth-child(3){animation-delay:.3s}
.loader .dot:nth-child(4){animation-delay:.45s}
@keyframes loaderPulse{0%,80%,100%{transform:scale(.4);opacity:.3}40%{transform:scale(1);opacity:1}}

/* ---- Header - 顶部全透明 / 滚动后玻璃 ---- */ 
#header{position:fixed;top:0;left:0;width:100%;z-index:100;padding:18px 60px;display:flex;align-items:center;justify-content:space-between;transition:all .4s;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid transparent}
#header.scrolled{padding:12px 60px;background:var(--header-bg-scrolled);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);box-shadow:0 4px 24px var(--border-soft);border-bottom:1px solid var(--border-soft)}
/* 顶部半透明态：加深文字以保证在图片上的对比度 */
#header:not(.scrolled) .nav-item a,#header:not(.scrolled) #nav-menu > a,#header:not(.scrolled) .nav-trigger{color:var(--text-strong)}
#header:not(.scrolled) .nav-item a:hover,#header:not(.scrolled) .nav-item a.active,#header:not(.scrolled) #nav-menu > a:hover,#header:not(.scrolled) #nav-menu > a.active,#header:not(.scrolled) .nav-trigger:hover{color:var(--color-primary)}
#header .brand img{height:72px;min-width:200px;object-fit:contain;transition:all .35s cubic-bezier(.4,0,.2,1)}
#header.scrolled .brand img{height:50px}
#header .brand .logo-on-image{position:absolute;top:0;left:0;opacity:1;transition:opacity .35s ease,height .35s cubic-bezier(.4,0,.2,1)}
#header.scrolled .brand .logo-on-image{opacity:0}
#header:not(.scrolled) .brand .logo-default{opacity:0}
#nav-menu{display:flex;align-items:center;gap:36px}
.nav-item,.nav-dropdown{position:relative;display:inline-block}
.nav-item a,#nav-menu > a{font-size:15px;color:var(--text-nav);letter-spacing:0.5px;padding:8px 14px;position:relative;transition:all .3s ease;font-weight:500;display:block;white-space:nowrap}
.nav-item a:hover,#nav-menu > a:hover,.nav-item a.active,#nav-menu > a.active{color:var(--color-primary)}
.nav-item::before{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);transform:translateX(-50%);transition:width .3s ease}
.nav-item:hover::before{width:80%}
.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:101}
.nav-toggle span{width:24px;height:2px;background:var(--text-strong);transition:all .3s}
#header.scrolled .nav-toggle span{background:var(--text-strong)}
/* 首屏透明态：导航文字为黑色 */
#header:not(.scrolled) .nav-item a,#header:not(.scrolled) #nav-menu > a,#header:not(.scrolled) .nav-trigger{color:var(--text-strong);text-shadow:none}
#header:not(.scrolled) .nav-item a:hover,#header:not(.scrolled) #nav-menu > a:hover,#header:not(.scrolled) .nav-item a.active,#header:not(.scrolled) #nav-menu > a.active,#header:not(.scrolled) .nav-trigger:hover{color:var(--color-primary)}
#header:not(.scrolled) .nav-item::before,#header:not(.scrolled) .nav-dropdown::before{background:linear-gradient(90deg,transparent,var(--color-primary),transparent)}
#header:not(.scrolled) .nav-toggle span{background:var(--text-strong)}
/* 滚动态导航自动隐藏 */
#header.nav-hidden{transform:translateY(-110%)}

/* ---- Dropdown Menu - 3D翻转效果 ---- */
.nav-trigger{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:15px;color:var(--text-nav);padding:8px 14px;transition:all .3s ease;font-weight:500;white-space:nowrap}
.nav-trigger:hover{color:var(--color-primary)}
.nav-dropdown::before{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);transform:translateX(-50%);transition:width .3s ease}
.nav-dropdown:hover::before{width:80%}
.nav-trigger .dropdown-icon{display:none}
.nav-dropdown-panel{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);transform-origin:top center;min-width:240px;background:#fff;backdrop-filter:blur(16px);padding:16px 12px;perspective:1000px;transform-style:preserve-3d;box-shadow:var(--shadow-lg);border-radius:8px;border:1px solid var(--border-soft);z-index:1000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease, visibility .3s ease}
.nav-dropdown:hover .nav-dropdown-panel,.nav-dropdown:focus-within .nav-dropdown-panel,.nav-dropdown.open .nav-dropdown-panel{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
/* 触发项与面板之间的 hover 缓冲，鼠标下移过程中不收起 */
.nav-dropdown-panel::before{content:'';position:absolute;top:-12px;left:0;right:0;height:12px}
.nav-dropdown-panel a{display:block;padding:14px 24px;font-size:15px;color:var(--text-nav);transition:all .25s ease;border-radius:6px;font-weight:500;letter-spacing:0.5px;text-align:center;transform-origin:top;transform:rotateX(-90deg);opacity:0}
.nav-dropdown:hover .nav-dropdown-panel a,.nav-dropdown.open .nav-dropdown-panel a{animation:flipIn .4s ease forwards}
.nav-dropdown-panel a:nth-child(1){animation-delay:.08s}
.nav-dropdown-panel a:nth-child(2){animation-delay:.14s}
.nav-dropdown-panel a:nth-child(3){animation-delay:.2s}
.nav-dropdown-panel a:nth-child(4){animation-delay:.26s}
.nav-dropdown-panel a:nth-child(5){animation-delay:.32s}
.nav-dropdown-panel a:nth-child(6){animation-delay:.38s}
.nav-dropdown-panel a:hover{background:var(--surface-tint);color:var(--color-primary);transform:rotateX(0) scale(1.02)}
@keyframes flipIn{0%{transform:rotateX(-90deg);opacity:0}100%{transform:rotateX(0);opacity:1}}

/* ---- Fullpage 整页吸附引擎 ---- */
html,body{height:100%}
body.fp-active{overflow:hidden}
body.fp-active #fullpage{height:100vh;overflow:hidden;position:relative}
.fp-wrapper{transition:transform 1s cubic-bezier(.86,0,.07,1)}
body.fp-active .fp-wrapper{will-change:transform}
body.fp-active .fp-section{height:100vh;width:100%;overflow:hidden}
body.fp-active .fp-section.fp-scrollable{overflow-y:auto}
body.fp-active .fp-section.section,
body.fp-active .fp-section.stats-section,
body.fp-active .fp-section.cta-section,
body.fp-active .fp-section.page-hero,
body.fp-active .fp-section.about-flex,
body.fp-active .fp-section.img-text-block{min-height:0}
/* CTA 屏（独立一屏，居中） */
.cta-screen{display:flex;flex-direction:column;justify-content:center;background:var(--surface-2)}
.cta-screen .cta-section{flex:1 1 auto;min-height:0;background:transparent}
.cta-screen .cta-section::before{width:760px;height:760px}
/* 页脚屏（独立一屏，居中） */
.fp-footer{display:flex;flex-direction:column;justify-content:center;background:var(--surface-3);position:relative}
.fp-footer::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:60px;height:3px;background:var(--color-primary)}
.fp-footer footer{background:transparent;width:100%}
.fp-footer .footer-main{padding:0 50px 44px}
.fp-footer .footer-bottom{border-top:1px solid var(--border-soft)}
/* CTA + 页脚 合并屏 */
.cta-footer-screen{display:flex;flex-direction:column;justify-content:flex-start;background:var(--color-footer-bg)}
.cta-footer-screen .cta-section{flex:1 1 auto;min-height:0;padding:96px 0 72px;background:transparent}
.cta-footer-screen .cta-section::before{width:560px;height:560px;top:44%}
.cta-footer-screen .cta-section h2{margin-bottom:14px}
.cta-footer-screen .cta-section p{margin-bottom:32px}
.cta-footer-screen footer{background:transparent;width:100%;flex:0 0 auto;position:relative}
.cta-footer-screen .footer-main{grid-template-columns:1.5fr repeat(3,minmax(0,1fr));gap:48px;padding:44px 60px 30px;max-width:1200px;border-top:1px solid var(--border-soft)}
.cta-footer-screen .footer-brand-text{margin-top:18px;font-size:14px;line-height:1.85;max-width:300px}
.cta-footer-screen .footer-col h5{margin-bottom:16px}
.cta-footer-screen .footer-col a{padding:6px 0}
.cta-footer-screen .footer-bottom{padding:18px 60px;max-width:1200px;border-top:1px solid var(--border-soft)}
/* 点击展示联系方式 */
.contact-reveal{display:none;margin-top:22px;gap:14px;justify-content:center;flex-wrap:wrap;animation:fadeReveal .4s ease}
.contact-reveal.show{display:flex}
.contact-reveal a{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border:1px solid var(--border-soft);background:var(--surface-1);color:var(--text-strong);font-size:14px;letter-spacing:1px;border-radius:4px;transition:all .3s}
.contact-reveal a iconify-icon{color:var(--color-primary);font-size:17px}
.contact-reveal a:hover{background:var(--color-primary);border-color:var(--color-primary)}
.contact-reveal a:hover iconify-icon{color:#fff}
@keyframes fadeReveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
/* 点状导航 */
.fp-dots{position:fixed;right:28px;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;gap:14px;transition:all .3s ease}
.fp-dots.dots-hidden{transform:translateY(-50%) translateX(100%);opacity:0}
body:not(.fp-active) .fp-dots{display:none}
.fp-dot{width:11px;height:11px;border-radius:50%;border:1px solid rgba(22,32,46,.35);background:rgba(255,255,255,.65);cursor:pointer;padding:0;transition:all .3s;box-shadow:0 0 0 1px var(--on-image-soft)}
.fp-dot:hover{border-color:var(--color-primary)}
.fp-dot.active{background:#c0392b;border-color:#c0392b;transform:scale(1.35)}
/* 隐藏内部滚动条 */
.fp-section.fp-scrollable{scrollbar-width:none;-ms-overflow-style:none}
.fp-section.fp-scrollable::-webkit-scrollbar{width:0;height:0;background:transparent}

/* ---- Hero (Full-screen image carousel + particle canvas + 3D景深) ---- */
.hero{position:relative;height:100vh;overflow:hidden;background:var(--hero-bg);perspective:1000px;display:flex;align-items:center;justify-content:center;padding-top:120px}
.hero-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 1.5s ease;transform-style:preserve-3d;background:#0c1a24}
.hero-slide.active{opacity:1}
.hero-slide img{width:100%;height:100%;object-fit:cover;transform:translateZ(0);transition:transform .3s ease}
.hero-slide.wide::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:url(../images/hero1.jpg) center/cover no-repeat;filter:blur(40px) brightness(.8) saturate(1.05);transform:scale(1.16)}
@media (min-aspect-ratio:6/5){.hero-slide.wide img{position:absolute;left:0;top:50%;height:auto;max-height:100%;transform:translateY(-50%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 20%,#000 80%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 20%,#000 80%,transparent 100%)}}
.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(10,18,30,.08) 0%,rgba(10,18,30,.16) 55%,rgba(10,18,30,.08) 100%)}

.hero-content{position:relative;z-index:3;text-align:center;width:90%;max-width:850px;will-change:transform;transition:all .6s ease}
.hero-content h2{font-size:13px;color:rgba(255,255,255,.9);letter-spacing:6px;text-transform:uppercase;margin-bottom:12px;font-weight:500;white-space:nowrap;transition:opacity .4s;text-shadow:var(--text-shadow-soft)}
.hero-content h1{font-size:clamp(30px,4.5vw,52px);color:#fff;font-weight:700;line-height:1.25;margin-bottom:16px;letter-spacing:3px;transition:all .4s;text-shadow:var(--text-shadow-strong)}
.hero-content p{font-size:17px;color:rgba(255,255,255,.92);line-height:1.7;margin-bottom:26px;letter-spacing:1px;transition:opacity .4s;text-shadow:var(--text-shadow-soft)}
.hero-btn{display:inline-block;padding:16px 48px;border:2px solid var(--on-image-soft);color:var(--on-image-strong);font-size:16px;letter-spacing:2px;font-weight:600;transition:all .4s ease;position:relative;overflow:hidden;backdrop-filter:blur(4px);background:rgba(255,255,255,0.16);will-change:transform}
.hero-controls{position:absolute;bottom:50px;right:60px;z-index:3;display:flex;align-items:center;gap:16px;transition:opacity .4s}
.hero-btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,0.2);border-radius:50%;transform:translate(-50%,-50%);transition:width .5s ease,height .5s ease}
.hero-btn:hover::before{width:300%;height:300%}
.hero-btn:hover{border-color:#fff;transform:translateY(-2px) scale(1.02);box-shadow:0 8px 24px rgba(0,0,0,0.3)}
.hero-num{font-size:56px;font-weight:900;color:rgba(255,255,255,.45);letter-spacing:2px;line-height:1;font-style:italic;font-family:Georgia,serif}
.hero-arrows{display:flex;gap:4px}
.hero-arrow{width:44px;height:44px;border:1px solid rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:16px;transition:all .3s}
.hero-arrow:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5)}

/* ---- Section Common ---- */
.section{padding:80px 40px;position:relative;display:flex;flex-direction:column;justify-content:center}
.section-light{background:var(--surface-1)}
.section-gray{background:var(--surface-2)}
.section-dark{background:var(--surface-3);color:var(--text-strong)}
.section-dark .section-title{color:var(--text-strong)}
.section-dark .section-desc{color:var(--text-body)}
.section-dark .section-label{color:#c0392b}
.section-header{text-align:center;margin-bottom:24px}
.section-label{font-size:13px;color:#c0392b;letter-spacing:4px;text-transform:uppercase;font-weight:700;margin-bottom:14px}
.section-title{font-size:clamp(22px,2.8vw,36px);font-weight:700;color:#111;line-height:1.25;margin-bottom:18px;letter-spacing:1px}
.section-desc{font-size:15px;color:var(--text-body);max-width:600px;margin:0 auto;line-height:2;letter-spacing:.5px}

/* ---- Dual Title (双语标题) ---- */
.dual-title{margin-bottom:24px}
.title-en{font-size:13px;color:var(--color-primary);letter-spacing:4px;text-transform:uppercase;font-weight:var(--weight-bold);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.title-en .svg-icon{font-size:18px}
.title-cn{font-size:clamp(26px,3vw,36px);font-weight:var(--weight-bold);color:var(--color-gray-900);line-height:1.3;letter-spacing:1px}
.block-content-dark .title-cn{color:var(--text-strong)}

/* ---- Full-width image+text block (核心设计组件 - 深浅交替) ---- */
.img-text-block{display:flex;align-items:stretch;position:relative;overflow:hidden;min-height:100vh}
.img-text-block.reverse{flex-direction:row-reverse}

/* 图片侧 - 带遮罩揭示动画 */
.img-text-block .block-image{flex:1;overflow:hidden;position:relative}
.img-text-block .block-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.25,.46,.45,.94)}
.img-text-block:hover .block-image img{transform:scale(1.04)}
/* 遮罩揭示 */
.img-text-block .block-image::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:var(--surface-3);transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.175,1) .2s}
.img-text-block.visible .block-image::after{transform:scaleX(0)}
.img-text-block.reverse .block-image::after{transform-origin:left}

/* 内容侧 - 白色背景 */
.block-content-light{flex:1;padding:80px 70px;display:flex;flex-direction:column;justify-content:center;background:#fff}
/* 内容侧 - 深色背景（已改为浅蓝灰深浅交替面） */
.block-content-dark{flex:1;padding:80px 70px;display:flex;flex-direction:column;justify-content:center;background:var(--surface-tint);color:var(--text-strong)}
.block-content-dark h3{color:var(--text-strong)!important}
.block-content-dark p{font-size:16px;color:var(--text-body)!important;line-height:2.1;margin-bottom:20px;letter-spacing:.5px}
.block-content-dark .block-tag{background:var(--surface-1);color:var(--text-body);border-color:var(--border-soft)}
.block-content-dark .en-label{color:#c0392b!important}

/* 灰色背景 */
.block-content-gray{flex:1;padding:80px 70px;display:flex;flex-direction:column;justify-content:center;background:#f5f6f8}

.en-label{font-size:13px;color:#c0392b;letter-spacing:6px;text-transform:uppercase;margin-bottom:28px;font-weight:700;display:flex;align-items:center;gap:8px}
.block-content-light h3,.block-content-gray h3{font-size:clamp(26px,3vw,36px);font-weight:700;color:#111;margin-bottom:28px;line-height:1.3;letter-spacing:1px}
.block-content-light p,.block-content-gray p{font-size:16px;color:#666;line-height:2.1;margin-bottom:20px;letter-spacing:.5px}
.block-features{display:flex;flex-direction:column;gap:24px;margin-top:36px}
.block-feature-item{display:flex;align-items:flex-start;gap:16px}
.block-feature-item strong{display:block;font-size:16px;font-weight:700;color:#111;margin-bottom:6px;letter-spacing:1px}
.block-feature-item span{font-size:15px;color:#666;line-height:1.9}
.block-content-dark .block-feature-item strong{color:var(--text-strong);font-size:16px}
.block-content-dark .block-feature-item span{color:var(--text-body);font-size:15px}
.block-tags{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.block-tag{padding:11px 24px;font-size:15px;background:#f0f2f5;color:#333;border:1px solid #e5e7eb;letter-spacing:1.5px;font-weight:500;transition:all .3s}
.block-tag:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}

/* ---- About Block (首页用 - image+text) ---- */
.about-flex{display:flex;align-items:stretch;overflow:hidden;position:relative;min-height:100vh;transition:margin-top .6s ease}
.about-image{flex:1;overflow:hidden;min-height:450px;position:relative}
.about-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s}
.about-image::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:var(--surface-3);transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.175,1) .2s}
.about-flex.visible .about-image::after{transform:scaleX(0)}
.about-text{flex:1;padding:80px 70px;display:flex;flex-direction:column;justify-content:center;background:#f5f6f8}
.about-text .section-label{text-align:left;font-size:13px;letter-spacing:4px}
.about-text h3{font-size:clamp(26px,3vw,36px);font-weight:700;color:#111;margin-bottom:28px;line-height:1.3}
.about-text p{font-size:16px;color:#666;line-height:2.1;margin-bottom:18px}
.about-tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.about-tag{padding:11px 24px;font-size:15px;background:#fff;color:#333;border:1px solid #e5e7eb;letter-spacing:1.5px;font-weight:500;transition:all .3s}
.about-tag:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}

/* ---- Service Grid (image cards 3x2) ---- */
.services-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0}
.services-grid.grid-2col{grid-template-columns:repeat(2,1fr)}
.service-card{position:relative;overflow:hidden;cursor:pointer;height:clamp(180px,28vh,300px);transition:all .4s;grid-column:span 2}
.services-grid .service-card:nth-child(n+4){grid-column:span 3}
.service-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(192,57,43,0.15) 0%,transparent 50%);opacity:0;transition:opacity .4s;z-index:1}
.service-card:hover::before{opacity:1}
.service-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.25,.46,.45,.94);filter:brightness(1.06) saturate(1.05)}
.service-card:hover img{transform:scale(1.12) rotate(1deg);filter:brightness(1)}
@media (max-width:1199px){.services-grid{grid-template-columns:1fr}.services-grid .service-card{grid-column:1}}
.service-card-overlay{position:absolute;bottom:0;left:0;width:100%;padding:36px;background:linear-gradient(0deg,var(--scrim-4) 0%,var(--scrim-2) 45%,transparent 78%);transition:all .5s}
.service-card:hover .service-card-overlay{padding-bottom:50px;background:linear-gradient(0deg,var(--scrim-5) 0%,var(--scrim-3) 55%,transparent 88%)}
.service-card h4{font-size:20px;font-weight:700;color:#fff;margin-bottom:6px;display:flex;align-items:center;gap:10px;letter-spacing:1px;text-shadow:var(--text-shadow-soft)}
.service-card .card-en,.service-card p{text-shadow:var(--text-shadow-soft)}
.service-card h4 iconify-icon{font-size:20px;color:var(--color-primary-light)}
.service-card .card-en{font-size:12px;color:var(--on-image-dim);letter-spacing:2px;text-transform:uppercase;margin-bottom:8px}
.service-card p{font-size:14px;color:rgba(255,255,255,.82);line-height:1.8;max-height:0;overflow:hidden;transition:max-height .5s}
.service-card:hover p{max-height:100px}

/* ---- Stats ---- */
.stats-section{padding:40px 0 0;background:linear-gradient(180deg,var(--surface-1) 0%,var(--surface-tint) 100%);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}

/* ---- Client Logos ---- */
.clients-area{padding:20px 40px 26px;text-align:center;flex:1;display:flex;flex-direction:column;justify-content:center}
.stats-section::before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border-soft),transparent)}
.stats-section::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border-soft),transparent)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}
.stat-item{position:relative;padding:20px}
.stat-item::after{content:'';position:absolute;right:0;top:20%;height:60%;width:1px;background:var(--border-soft)}
.stat-item:last-child::after{display:none}
.stat-number{font-size:clamp(40px,4.5vw,60px);font-weight:900;color:var(--text-strong);line-height:1.1;font-style:italic;font-family:Georgia,serif}
.stat-suffix{font-size:clamp(22px,2.5vw,32px);font-weight:700;color:#c0392b}
.stat-label{font-size:14px;color:var(--text-muted);margin-top:12px;letter-spacing:3px;text-transform:uppercase}

/* ---- CTA ---- */
.cta-section{padding:120px 0;text-align:center;background:var(--surface-2);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.cta-section::before{content:'';position:absolute;top:50%;left:50%;width:600px;height:600px;background:radial-gradient(circle,rgba(192,57,43,.08) 0%,transparent 70%);transform:translate(-50%,-50%);border-radius:50%}
.cta-section .section-label{color:var(--text-muted)}
.cta-section h2{font-size:clamp(28px,3.5vw,42px);font-weight:700;color:var(--text-strong);margin-bottom:16px;letter-spacing:1px}
.cta-section p{font-size:16px;color:var(--text-body);margin-bottom:40px;letter-spacing:.5px}
.cta-btn{display:inline-block;padding:18px 52px;background:#c0392b;color:#fff;font-size:15px;letter-spacing:3px;text-transform:uppercase;transition:all .4s;border:none;cursor:pointer}
.cta-btn:hover{background:#e74c3c;transform:translateY(-3px);box-shadow:0 15px 40px rgba(192,57,43,.3)}

/* ---- Footer ---- */
footer{background:var(--surface-3);color:var(--text-body)}
.footer-main{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:60px;padding:70px 60px 60px;max-width:1280px;margin:0 auto}
.footer-brand-text{font-size:15px;line-height:1.9;margin-top:24px;max-width:320px;color:var(--text-body)}
.footer-col h5{font-size:14px;font-weight:700;color:var(--text-strong);margin-bottom:24px;letter-spacing:2.5px;text-transform:uppercase}
.footer-col a{display:block;font-size:14px;color:var(--text-body);padding:8px 0;transition:all .3s;letter-spacing:.5px}
.footer-col a:hover{color:#c0392b;transform:translateX(6px)}
.footer-col a .svg-icon{font-size:16px;vertical-align:middle}
.footer-bottom{padding:28px 60px;max-width:1280px;margin:0 auto;border-top:1px solid var(--border-soft);display:flex;justify-content:space-between;font-size:13px;color:var(--text-muted);letter-spacing:.5px;flex-wrap:wrap;gap:12px}
.footer-bottom a{color:var(--text-muted)}
.footer-bottom a:hover{color:#c0392b}

/* ---- 底部浅色主题（首页 CTA + 页脚） ---- */
.cta-screen.bottom-light{background:var(--color-footer-bg)}
.bottom-light .cta-section{background:transparent}
.bottom-light .cta-section::before{background:radial-gradient(circle,rgba(192,57,43,.06) 0%,transparent 70%)}
.bottom-light .cta-section .section-label{color:var(--color-gray-400)}
.bottom-light .cta-section h2{color:var(--color-gray-900)}
.bottom-light .cta-section p{color:var(--color-gray-600)}
.bottom-light .contact-reveal a{border-color:rgba(0,0,0,.2);color:var(--color-gray-900)}
.bottom-light .contact-reveal a:hover{color:#fff}
.fp-footer.bottom-light{background:var(--color-footer-bg-deep)}
.fp-footer.bottom-light footer{color:var(--color-gray-600)}
.cta-footer-screen.bottom-light{background:var(--color-footer-bg)}
.cta-footer-screen.bottom-light footer{color:var(--color-gray-600);border-top:1px solid rgba(0,0,0,.06)}
.bottom-light .footer-brand-text{color:var(--color-gray-600)}
.bottom-light .footer-col h5{color:var(--color-gray-900)}
.bottom-light .footer-col a{color:var(--color-gray-600)}
.bottom-light .footer-bottom,.fp-footer.bottom-light .footer-bottom{border-top:1px solid rgba(0,0,0,.08);color:#9a958c}
.bottom-light .footer-bottom a{color:#9a958c}
.bottom-light .brand img{filter:none!important}

/* ---- 服务领域卡（六大高科技赛道） ---- */
.fields-head{margin-bottom:14px}
.fields-head .fields-en{font-size:11px;letter-spacing:3px;color:var(--color-primary);font-weight:600;margin-bottom:6px;text-transform:uppercase}
.fields-head h3{font-size:26px;font-weight:700;color:var(--text-strong);letter-spacing:2px}
.fields-head .fields-sub{font-size:14px;color:var(--text-body);letter-spacing:.5px;max-width:760px;margin:6px auto 0}
.fields-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 20px;width:92%;max-width:1400px;margin:0 auto}
.field-card{position:relative;display:flex;align-items:flex-start;gap:12px;padding:12px 42px 12px 14px;background:var(--surface-1);border:1px solid var(--border-soft);border-radius:12px;overflow:hidden;text-align:left;transition:all .3s;box-shadow:var(--shadow-sm)}
.field-card::before{content:'';position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--color-primary)}
.field-card:hover{transform:translateY(-3px);border-color:var(--color-primary);box-shadow:var(--shadow-md)}
.field-icon{width:38px;height:38px;flex-shrink:0;border-radius:10px;background:var(--color-primary-soft);display:flex;align-items:center;justify-content:center}
.field-icon .svg-icon{font-size:21px;color:var(--color-primary)}
.field-body{min-width:0;flex:1}
.field-no{position:absolute;top:10px;right:14px;font-size:18px;font-weight:700;line-height:1;color:var(--color-primary-light);opacity:.4;font-family:Georgia,serif;font-style:italic}
.field-card h4{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:16px;font-weight:700;color:var(--text-strong);letter-spacing:1px;margin-bottom:4px}
.field-en{font-size:9px;letter-spacing:.6px;color:var(--color-primary);font-weight:600;text-transform:uppercase}
.field-desc{font-size:12px;color:var(--text-body);line-height:1.55}
.field-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.field-tags span{font-size:11px;color:var(--text-muted);background:var(--surface-2);padding:2px 9px;border-radius:11px}
@media(max-width:900px){.fields-grid{grid-template-columns:1fr;width:92%}}
@media(max-width:700px){.fields-head h3{font-size:23px}}
@media(max-height:820px) and (min-width:901px){.stats-grid{margin-bottom:0}.fields-head{margin-bottom:10px}.fields-head h3{font-size:23px}.fields-head .fields-sub{font-size:13px;margin-top:4px}.fields-grid{gap:8px 20px}.field-card{padding:10px 40px 10px 14px}.field-card h4{font-size:15px;margin-bottom:3px}.field-desc{font-size:11.5px;line-height:1.5}.field-tags{margin-top:4px}}

/* ---- 客户构成与典型案例 ---- */
.client-profile{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;width:85%;max-width:1280px;margin:0 auto 36px}
.profile-item{display:flex;align-items:flex-start;gap:14px;padding:22px 24px;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:8px}
.profile-item .svg-icon{font-size:26px;color:var(--color-primary);flex-shrink:0;margin-top:2px}
.profile-item p{font-size:14px;color:var(--color-gray-600);line-height:1.9;margin:0;text-align:left}
.cases-note{text-align:center;font-size:14px;color:var(--color-gray-400);letter-spacing:1px;margin:0 auto 22px}
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;width:85%;max-width:1280px;margin:0 auto}
.case-card{padding:28px;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:8px;text-align:left;transition:all .3s}
.case-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(0,0,0,.08)}
.case-tag{display:inline-block;font-size:12px;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:20px;padding:3px 12px;letter-spacing:1px;margin-bottom:14px}
.case-card h4{font-size:17px;font-weight:700;color:var(--color-gray-900);margin-bottom:10px;letter-spacing:.5px}
.case-card .case-need{font-size:13.5px;color:var(--color-gray-600);line-height:1.8;margin-bottom:12px}
.case-card .case-result{font-size:13.5px;color:var(--color-primary);line-height:1.8;font-weight:600;margin:0}
@media (max-width:1199px){.client-profile,.cases-grid{grid-template-columns:1fr;width:92%}}

/* ---- 同与之道（一屏六卡） ---- */
.tao-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;width:88%;max-width:1320px;margin:0 auto}
.tao-card{padding:24px 26px;background:#fafafa;border:1px solid rgba(0,0,0,.06);border-radius:8px;text-align:left;transition:all .3s}
.tao-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(0,0,0,.08);background:#fff}
.tao-card-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.tao-card-head .svg-icon{font-size:22px;color:var(--color-primary)}
.tao-card-head h4{font-size:16px;font-weight:700;color:var(--color-gray-900);letter-spacing:1px;margin:0}
.tao-card .tao-core{font-size:13.5px;font-weight:600;color:var(--color-primary);line-height:1.7;margin-bottom:8px}
.tao-card p{font-size:13px;color:var(--color-gray-600);line-height:1.9;margin:0}
.tao-outro{text-align:center;font-size:14px;color:var(--color-gray-600);width:80%;max-width:1000px;margin:26px auto 0;line-height:1.9}
.tao-outro strong{color:var(--color-gray-900)}
@media (max-width:1199px){.tao-grid{grid-template-columns:1fr;width:92%}}

/* ---- Page Hero (subpages) ---- */
.page-hero{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;padding:120px 40px 80px;background:var(--surface-3)}
.page-hero img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;filter:brightness(1.05) saturate(1.05)}
.page-hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse 60% 45% at 50% 52%,var(--scrim-3) 0%,var(--scrim-1) 70%,transparent 100%),linear-gradient(180deg,var(--scrim-1),var(--scrim-2) 60%,rgba(247,248,250,.45))}
.page-hero .en{position:relative;z-index:2;font-size:11px;color:var(--on-image-soft);letter-spacing:6px;text-transform:uppercase;margin-bottom:12px;text-shadow:var(--text-shadow-soft)}
.page-hero h1{position:relative;z-index:2;font-size:clamp(32px,4.5vw,50px);font-weight:700;color:var(--on-image-strong);letter-spacing:4px;text-shadow:var(--text-shadow-strong)}
.page-hero-line{position:relative;z-index:2;width:50px;height:2px;background:#c0392b;margin:20px auto 0}

/* ---- Contact Cards ---- */
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.contact-card{padding:50px 40px;text-align:center;transition:all .5s;position:relative;border:1px solid #eee}
.contact-card:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
.contact-card:hover h4{color:#fff!important}
.contact-card:hover p{color:rgba(255,255,255,.85)!important}
.contact-card:hover .svg-icon{color:#fff!important}
.contact-card:hover a{color:#fff!important}
.contact-card .svg-icon{font-size:28px;color:#111;margin-bottom:20px;display:block;transition:color .3s}
.contact-card h4{font-size:16px;font-weight:700;color:#111;margin-bottom:10px;transition:color .3s;letter-spacing:1px}
.contact-card p{font-size:13px;color:#888;line-height:1.8;transition:color .3s}
/* 内部系统入口卡（浅色卡片） */
.contact-card.sys-card{background:var(--surface-1);border-color:var(--border-soft);box-shadow:var(--shadow-sm)}
.contact-card.sys-card .svg-icon{color:var(--color-primary)}
.contact-card.sys-card h4{color:var(--text-strong)}
.contact-card.sys-card .sys-desc{font-size:12px;color:var(--text-body);margin-bottom:14px}
.contact-card.sys-card .sys-link{color:var(--color-primary);font-weight:var(--weight-semibold)}
.contact-card.sys-card .sys-link .svg-icon{font-size:11px;display:inline-block;margin:0 0 0 4px;color:inherit;vertical-align:middle}
.contact-card.sys-card:hover{transform:translateY(-8px) scale(1.03);background:var(--surface-1);border-color:var(--color-primary);box-shadow:var(--shadow-lg);z-index:10;color:var(--text-body)}
.contact-card.sys-card:hover h4{color:var(--text-strong)!important}
.contact-card.sys-card:hover p{color:var(--text-body)!important}
.contact-card.sys-card:hover .svg-icon{color:var(--color-primary)!important}
.contact-card.sys-card:hover a{color:var(--color-primary)!important}
.contact-card.sys-card:hover .sys-link .svg-icon{color:inherit!important}
.contact-grid.systems-grid{grid-template-columns:repeat(2,minmax(300px,420px));justify-content:center;gap:0;max-width:900px;margin:0 auto}

/* ---- Career Path ---- */
.career-path{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;padding:24px 0;counter-reset:cstep}
.career-step{position:relative;text-align:center;padding:38px 26px 30px;background:#fff;border:1px solid #ececef;border-radius:14px;min-width:168px;box-shadow:0 6px 24px rgba(0,0,0,.04);counter-increment:cstep;transition:all .4s cubic-bezier(.4,0,.2,1)}
.career-step::before{content:counter(cstep,decimal-leading-zero);position:absolute;top:14px;left:50%;transform:translateX(-50%);font-size:11px;font-weight:700;letter-spacing:1px;color:var(--color-primary);opacity:.7}
.career-step:hover::before{color:#fff;opacity:.85}
.career-step:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-6px);box-shadow:0 18px 44px rgba(192,57,43,.22)}
.career-step:hover h4{color:#fff}
.career-step:hover p{color:rgba(255,255,255,.8)}
.career-step:hover .svg-icon{color:#fff!important}
.career-step .svg-icon{font-size:32px;color:#111;margin-bottom:14px;display:block;transition:color .3s}
.career-step h4{font-size:16px;font-weight:700;color:#111;margin-bottom:6px;transition:color .3s;letter-spacing:1px}
.career-step p{font-size:11px;color:#999;letter-spacing:1px;text-transform:uppercase;transition:color .3s}
.career-arrow{font-size:18px;color:#c0392b;opacity:.55;padding:0 14px}
.career-step.clickable{cursor:pointer}
.career-step.clickable.active{background:#c0392b;color:#fff;border-color:#c0392b;box-shadow:0 12px 32px rgba(192,57,43,.35);transform:translateY(-6px)}
.career-step.clickable.active::before{color:#fff;opacity:1}
.career-step.clickable.active h4{color:#fff}
.career-step.clickable.active p{color:rgba(255,255,255,.8)}
.career-step.clickable.active .svg-icon{color:#fff!important}

/* ---- Job Details Wrapper ---- */
.job-details-wrapper{margin-top:35px;position:relative}
.job-detail{display:none;animation:fadeSlideIn .5s ease}
.job-detail.active{display:block}
.job-detail-title{font-size:19px;font-weight:700;color:#111;margin-bottom:22px;display:flex;align-items:center;letter-spacing:1px;padding-bottom:14px;border-bottom:2px solid #f0f0f0}
.job-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.job-detail-col h5{font-size:12px;font-weight:700;color:#c0392b;margin:0 0 12px;letter-spacing:2px;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.job-detail-col h5 .svg-icon{font-size:15px}
.job-detail-col ul{list-style:none;padding:0;margin:0}
.job-detail-col li{font-size:13px;color:#555;line-height:1.75;padding-left:18px;position:relative;margin-bottom:6px}
.job-detail-col li::before{content:'';position:absolute;left:0;top:11px;width:5px;height:5px;border-radius:50%;background:#c0392b;opacity:.6}
@keyframes fadeSlideIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* ---- Job Cards ---- */
.job-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:40px;margin-bottom:18px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}
.job-card::before{content:'';position:absolute;left:0;top:0;width:3px;height:0;background:#c0392b;transition:height .4s}
.job-card:hover::before{height:100%}
.job-card:hover{border-color:#ddd;box-shadow:0 14px 44px rgba(0,0,0,.08);transform:translateY(-4px)}
.job-card h4{font-size:18px;font-weight:700;color:#111;margin-bottom:16px;display:flex;align-items:center;gap:10px;letter-spacing:1px}
.job-card h5{font-size:13px;font-weight:700;color:#c0392b;margin:18px 0 10px;letter-spacing:2px;text-transform:uppercase}
.job-card li{font-size:13px;color:#666;line-height:2.2;padding-left:18px;position:relative}
.job-card li::before{content:'';position:absolute;left:0;top:13px;width:4px;height:4px;border-radius:50%;background:#c0392b;opacity:.4}

/* ---- Btn ---- */
.btn-outline{display:inline-block;padding:14px 40px;border:1px solid var(--color-primary);color:var(--color-primary);font-size:12px;letter-spacing:3px;text-transform:uppercase;transition:all .4s;font-weight:600}
.btn-outline:hover{background:var(--color-primary);color:#fff}

/* ================================================================
   ANIMATIONS (遮罩揭示 + 渐入 + 视差)
   ================================================================ */

/* 基础渐入 */
.anim{opacity:0;transition:opacity .9s cubic-bezier(.25,.46,.45,.94),transform .9s cubic-bezier(.25,.46,.45,.94)}
.anim.fadeInUp{transform:translateY(50px)}
.anim.fadeInDown{transform:translateY(-50px)}
.anim.fadeInLeft{transform:translateX(-50px)}
.anim.fadeInRight{transform:translateX(50px)}
.anim.scaleIn{transform:scale(.85)}
.anim.fadeIn{transform:none}
.anim.visible{opacity:1!important;transform:translate(0,0) scale(1)!important}

/* 图片缩放揭示 */
.reveal{overflow:hidden}
.reveal img{transform:scale(1.15);opacity:0;transition:transform 1.4s cubic-bezier(.25,.46,.45,.94),opacity 1s .2s}
.reveal.visible img{transform:scale(1);opacity:1}

/* 遮罩揭示 - 从右向左滑开 */
.mask-reveal{position:relative;overflow:hidden}
.mask-reveal::after{content:'';position:absolute;top:0;right:0;width:100%;height:100%;background:var(--surface-3);transform-origin:right;transition:transform 1.2s cubic-bezier(.77,0,.175,1)}
.mask-reveal.visible::after{transform:scaleX(0)}
.mask-reveal.from-left::after{transform-origin:left}

/* 文字逐行渐入 */
.line-reveal{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}
.line-reveal.visible{opacity:1;transform:translateY(0)}

/* 延迟 */
[data-delay="1"]{transition-delay:.15s!important}
[data-delay="2"]{transition-delay:.3s!important}
[data-delay="3"]{transition-delay:.45s!important}
[data-delay="4"]{transition-delay:.6s!important}
[data-delay="5"]{transition-delay:.75s!important}
[data-delay="6"]{transition-delay:.9s!important}
[data-delay="7"]{transition-delay:1.05s!important}

/* 装饰线 */
.deco-line{width:60px;height:3px;background:#c0392b;margin:22px 0}

/* ================================================================
   服务板块三屏（第一屏图标 / 第二屏描述）
   ================================================================ */

/* 第一屏：图标屏 */
.svc-icon-screen{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:130px 40px 90px;background:linear-gradient(160deg,#141c2b 0%,#1a2332 55%,#0e1520 100%);color:#fff}
.svc-icon-screen::before{content:'';position:absolute;top:50%;left:50%;width:820px;height:820px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(192,57,43,.22) 0%,rgba(192,57,43,0) 68%)}
.svc-icon-screen.bg-search{background:linear-gradient(160deg,rgba(20,28,43,.55) 0%,rgba(26,35,50,.45) 55%,rgba(14,21,32,.62) 100%),url(../images/svc-hero-search.jpg) center/cover no-repeat}
.svc-icon-screen.bg-rpo{background:linear-gradient(160deg,rgba(20,28,43,.55) 0%,rgba(26,35,50,.45) 55%,rgba(14,21,32,.62) 100%),url(../images/svc-hero-rpo.jpg) center/cover no-repeat}
.svc-icon-screen.bg-it{background:linear-gradient(160deg,rgba(20,28,43,.55) 0%,rgba(26,35,50,.45) 55%,rgba(14,21,32,.62) 100%),url(../images/svc-hero-it.jpg) center/cover no-repeat}
.svc-icon-screen.bg-bgcheck{background:linear-gradient(160deg,rgba(20,28,43,.55) 0%,rgba(26,35,50,.45) 55%,rgba(14,21,32,.62) 100%),url(../images/svc-hero-bgcheck.jpg) center/cover no-repeat}
.svc-icon-screen.bg-hr{background:linear-gradient(160deg,rgba(20,28,43,.55) 0%,rgba(26,35,50,.45) 55%,rgba(14,21,32,.62) 100%),url(../images/svc-hero-hr.jpg) center/cover no-repeat}
.svc-icon-screen > *{position:relative;z-index:2}
.svc-icon-wrap{flex:none;width:172px;height:172px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);box-shadow:0 20px 60px rgba(0,0,0,.38);margin-bottom:40px}
.svc-icon-wrap iconify-icon,.svc-icon-wrap .svg-icon{font-size:84px;width:84px;height:84px;color:#fff}
.svc-icon-screen .svc-en{font-size:13px;letter-spacing:5px;text-transform:uppercase;color:rgba(255,255,255,.6);font-weight:600;margin-bottom:14px}
.svc-icon-screen h1{font-size:clamp(30px,4vw,46px);font-weight:700;letter-spacing:3px;line-height:1.25}
.svc-icon-line{width:64px;height:3px;background:var(--color-primary);margin:24px 0}
.svc-icon-screen .svc-lead{max-width:660px;font-size:16px;line-height:1.95;letter-spacing:.5px;color:rgba(255,255,255,.82)}
.svc-icon-badge{flex:none;display:inline-flex;align-items:center;gap:6px;margin-bottom:18px;padding:6px 16px;border-radius:999px;font-size:12px;letter-spacing:2px;font-weight:600;color:#fff;background:var(--color-primary)}
.svc-icon-no{position:absolute;right:60px;bottom:44px;font-family:Georgia,serif;font-style:italic;font-size:76px;font-weight:900;color:rgba(255,255,255,.08);letter-spacing:2px}

/* 第二屏：描述屏 */
.svc-desc-screen{padding:100px 40px 60px}
.svc-desc-screen .section-header{margin-bottom:24px}
.svc-desc-screen .section-title{margin-bottom:10px}
.svc-desc-screen .section-desc{max-width:820px;margin:0 auto}
.svc-desc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;max-width:1060px;margin:0 auto;width:100%}
.svc-desc-card{background:var(--surface-1);border:1px solid var(--border-soft);border-radius:10px;padding:26px 30px;box-shadow:var(--shadow-sm);transition:transform .35s ease,box-shadow .35s ease}
.svc-desc-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.svc-desc-card h4{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:700;color:var(--text-strong);letter-spacing:1px;margin-bottom:8px}
.svc-desc-card h4 iconify-icon,.svc-desc-card h4 .svg-icon{color:var(--color-primary);font-size:20px;width:20px;height:20px}
.svc-desc-card h4::after{content:'';flex:1 1 auto;height:1px;background:var(--border-soft)}
.svc-desc-card li{position:relative;padding-left:18px;font-size:14.5px;line-height:1.85;color:var(--text-body);letter-spacing:.3px}
.svc-desc-card li::before{content:'';position:absolute;left:0;top:13px;width:6px;height:6px;border-radius:50%;background:var(--color-primary);opacity:.65}
.svc-desc-note{max-width:1060px;margin:22px auto 0;font-size:13px;color:var(--text-muted);text-align:center;letter-spacing:.5px;line-height:1.9}
.svc-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:20px auto 0;max-width:1060px}
.svc-coverage-card{grid-column:1/-1;padding:18px 26px}
.svc-coverage-card ul{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:2px}
.svc-coverage-card li{font-size:13.5px;line-height:1.7}
.svc-coverage-card li:last-child{grid-column:1/-1}
.coverage-list{margin:8px 0 0;padding:0;list-style:none}
.coverage-list li{padding:10px 0;border-bottom:1px solid var(--border-soft)}
.coverage-list li:last-child{border-bottom:none}
.coverage-list strong{display:block;font-size:15.5px;font-weight:700;color:#111;letter-spacing:.5px;margin-bottom:2px}
.coverage-list span{font-size:14.5px;color:#666;line-height:1.75}

/* ---- 服务领域总览页 ---- */
.svc-ov-head{display:flex;align-items:baseline;gap:14px;padding:118px 48px 22px;background:#fff}
.svc-ov-head h1{font-size:16px;letter-spacing:3px;color:#999;font-weight:400}
.svc-ov-en-label{font-size:15px;letter-spacing:3px;color:#111;font-weight:700;text-transform:uppercase}
.svc-ov-list{display:flex;flex-direction:column}
.svc-ov-banner{position:relative;display:block;height:380px;background-position:center;background-size:cover;background-repeat:no-repeat;overflow:hidden;text-decoration:none}
.svc-ov-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(20,28,43,.62) 0%,rgba(26,35,50,.5) 55%,rgba(14,21,32,.66) 100%);transition:background .4s ease}
.svc-ov-banner:hover::before{background:linear-gradient(160deg,rgba(20,28,43,.45) 0%,rgba(26,35,50,.35) 55%,rgba(14,21,32,.5) 100%)}
.svc-ov-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 40px;transition:transform .4s ease}
.svc-ov-banner:hover .svc-ov-inner{transform:translateY(-6px)}
.svc-ov-en{font-size:13px;letter-spacing:5px;color:rgba(255,255,255,.72);text-transform:uppercase;font-weight:600;margin-bottom:14px}
.svc-ov-banner h2{font-size:32px;letter-spacing:5px;color:#fff;font-weight:700}
.svc-ov-desc{margin-top:16px;font-size:14px;letter-spacing:2px;color:rgba(255,255,255,.82)}

/* ---- 最小宽度锁定：PC 布局固定，不做完全响应式 ---- */
/* 仅真正的桌面宽度（>=1200px）锁定 1200 画布； */
/* <1200px（手机、平板、手机横屏、桌面版网页模式）走下方响应式适配 */
@media (min-width:1200px){body{min-width:1200px}}

/* ================================================================
   移动端 / 平板适配（<=1199px）
   仅在此断点内生效，桌面端（>=1200px）样式与字体完全不变
   ================================================================ */
@media (max-width:1199px){

  /* --- 基础 --- */
  html,body{height:auto;min-width:0}
  body{overflow-x:hidden;-webkit-text-size-adjust:100%}
  body.nav-open{overflow:hidden}
  .container{padding:0 20px}
  .fp-dots{display:none}

  /* --- Header / 汉堡菜单 --- */
  #header{padding:10px 16px}
  #header.scrolled{padding:8px 16px}
  #header .brand img{height:44px;min-width:0}
  #header.scrolled .brand img{height:40px}
  .nav-toggle{display:flex}
  .nav-toggle span{transition:transform .3s ease,opacity .2s ease}
  .nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle.active span:nth-child(2){opacity:0}
  .nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  #nav-menu{position:fixed;top:0;right:0;width:76%;max-width:320px;height:100vh;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:78px 0 32px;background:#fff;box-shadow:-8px 0 30px rgba(17,24,39,.12);overflow-y:auto;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);z-index:100}
  #nav-menu.open{transform:translateX(0)}
  .nav-item,.nav-dropdown{display:block;width:100%}
  #header .nav-item a,#header .nav-trigger,#header:not(.scrolled) .nav-item a,#header:not(.scrolled) .nav-trigger{padding:16px 24px;font-size:16px;color:var(--text-nav);border-bottom:1px solid var(--border-soft);white-space:normal}
  .nav-trigger{justify-content:space-between}
  .nav-item::before,.nav-dropdown::before{display:none}
  .nav-dropdown-panel{position:static;left:auto;top:auto;transform:none;min-width:0;padding:0;background:var(--surface-2);border:0;border-radius:0;box-shadow:none;perspective:none;opacity:1;visibility:visible;pointer-events:auto;overflow:visible}
  .nav-dropdown-panel::before{display:none}
  .nav-dropdown-panel a,.nav-dropdown.open .nav-dropdown-panel a,.nav-dropdown:hover .nav-dropdown-panel a{transform:none;opacity:1;animation:none;text-align:left;padding:14px 36px;font-size:15px;border-bottom:1px solid var(--border-soft)}

  /* --- 区块节奏：去掉桌面「一屏一区块」的视口高度约束，相邻区块加分界细线 --- */
  .fp-section{min-height:0;height:auto}
  .fp-section + .fp-section{border-top:1px solid var(--border-soft)}

  /* --- Hero 首屏 --- */
  .hero{height:auto;min-height:64vh;padding:96px 0 72px}
  .hero-content{width:88%;transform:none!important}
  .hero-content h2{font-size:10px;letter-spacing:2px;line-height:1.8;white-space:normal;margin-bottom:14px}
  .hero-content h1{font-size:27px;letter-spacing:1px;line-height:1.35;margin-bottom:14px}
  .hero-content p{font-size:13.5px;letter-spacing:0;line-height:1.9;margin-bottom:24px}
  .hero-content p br{display:none}
  .hero-btn{padding:13px 32px;font-size:14px;letter-spacing:1px}
  .hero-slide img{transform:none!important}
  .hero-controls{bottom:22px;right:18px;gap:10px}
  .hero-num{font-size:32px}
  .hero-arrow{width:36px;height:36px;font-size:14px}

  /* --- 通用区块 --- */
  .section{padding:56px 20px}
  .section-header{margin-bottom:20px}
  .section-desc{font-size:14px;line-height:1.9;letter-spacing:0}
  .section-label{letter-spacing:2.5px}

  /* --- 图文左右块（首页 About / Why Choose Us / 各服务页） --- */
  .about-flex,.img-text-block,.img-text-block.reverse{flex-direction:column;min-height:0}
  .about-image,.img-text-block .block-image{flex:none;min-height:0;height:auto;aspect-ratio:16/9}
  .about-text,.block-content-light,.block-content-dark,.block-content-gray{flex:none;padding:36px 20px}
  .about-text p,.block-content-light p,.block-content-gray p,.block-content-dark p{font-size:14.5px;line-height:1.95;letter-spacing:0}
  .about-text h3 br,.title-cn br,.block-content-light h3 br{display:none}
  .about-tags,.block-tags{gap:10px;margin-top:26px}
  .about-tag,.block-tag{padding:9px 16px;font-size:13px;letter-spacing:.5px}
  .block-features{gap:18px;margin-top:26px}
  .block-feature-item span{font-size:13.5px;line-height:1.85}

  /* --- 服务卡片网格 --- */
  .services-grid,.services-grid.grid-2col{grid-template-columns:1fr}
  .services-grid .service-card,.services-grid .service-card:nth-child(n+4){grid-column:1;height:180px}
  .service-card-overlay{padding:22px 20px}
  .service-card h4{font-size:17px}
  .service-card p{max-height:none;font-size:13px}

  /* --- 数据统计 --- */
  .stats-section{padding:56px 0 0}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .stat-item{padding:14px 6px}
  .stat-item:nth-child(2n)::after{display:none}
  .stat-label{font-size:11px;letter-spacing:1.5px;margin-top:8px}

  /* --- 服务领域 / 客户与案例 / 同与之道 --- */
  .clients-area{padding:22px 20px 34px}
  .clients-header h3{font-size:22px}
  .clients-header p{font-size:13.5px}
  .domains-grid,.clients-grid{grid-template-columns:1fr;width:100%;gap:14px}
  .domain-card{padding:22px 20px}
  .client-profile{grid-template-columns:1fr;width:100%;gap:14px}
  .profile-item{padding:18px}
  .case-card,.tao-card{padding:22px 18px}

  /* 长列表改横向滑动（带吸附），把纵向长度换成横滑，避免一页堆叠出好几屏 */
  .cases-grid,.tao-grid{display:flex;grid-template-columns:none;width:100%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px;scrollbar-width:none}
  .cases-grid::-webkit-scrollbar,.tao-grid::-webkit-scrollbar{height:0}
  .cases-grid > *,.tao-grid > *{flex:0 0 80%;scroll-snap-align:start}
  .tao-outro{width:100%;font-size:13.5px}

  /* --- CTA + 页脚 --- */
  .cta-section,.cta-footer-screen .cta-section{padding:52px 0 44px}
  .cta-section::before{width:320px;height:320px}
  .cta-section h2{font-size:24px}
  .cta-section p{font-size:14px;margin-bottom:28px}
  .cta-btn{padding:15px 38px;font-size:14px;letter-spacing:2px}
  .contact-reveal a{padding:11px 18px;font-size:13px}
  /* 页脚三列链接改 2 列，品牌块跨全行：页脚不再占接近一屏半 */
  .footer-main,.cta-footer-screen .footer-main{grid-template-columns:1fr 1fr;gap:20px 16px;padding:30px 20px 22px}
  .footer-main > div:first-child{grid-column:1/-1}
  .footer-brand-text,.cta-footer-screen .footer-brand-text{max-width:none;font-size:13.5px;margin-top:14px}
  .footer-col h5,.cta-footer-screen .footer-col h5{margin-bottom:12px}
  .footer-bottom,.cta-footer-screen .footer-bottom{flex-direction:column;align-items:flex-start;gap:8px;padding:18px 20px;font-size:12px}

  /* --- 子页面 Page Hero --- */
  .page-hero{min-height:0;padding:96px 20px 48px}
  .page-hero h1{font-size:26px;letter-spacing:2px}
  .page-hero .en{letter-spacing:3px}

  /* --- 联系我们 / 内部系统 --- */
  .contact-grid,.contact-grid.systems-grid{grid-template-columns:1fr;max-width:none}
  .contact-card{padding:36px 22px}

  /* --- 加入我们：职业路径 + 岗位详情 --- */
  .career-path{flex-direction:column;padding:12px 0}
  .career-step{width:100%;min-width:0;padding:22px 20px 20px}
  .career-arrow{transform:rotate(90deg);padding:10px 0}
  .job-detail-grid{grid-template-columns:1fr;gap:22px}
  .job-detail-title{font-size:17px}
  .job-card{padding:24px 20px}

  /* --- 服务板块三屏 --- */
  .svc-icon-screen{padding:92px 20px 52px}
  .svc-icon-screen::before{width:360px;height:360px}
  .svc-icon-wrap{width:104px;height:104px;margin-bottom:22px}
  .svc-icon-wrap iconify-icon,.svc-icon-wrap .svg-icon{font-size:56px;width:56px;height:56px}
  .svc-icon-screen h1{font-size:26px;letter-spacing:2px}
  .svc-icon-screen .svc-lead{font-size:14px;line-height:1.9}
  .svc-icon-no{right:18px;bottom:22px;font-size:44px}
  .svc-desc-screen{padding:52px 20px 40px}
  .svc-desc-grid{grid-template-columns:1fr;gap:16px}
  .svc-desc-card{padding:20px 18px}
  .svc-desc-card li{font-size:13.5px}
  .svc-tags{justify-content:flex-start}
  .svc-coverage-card{padding:16px 18px}
  .svc-coverage-card ul{grid-template-columns:1fr}
  .svc-coverage-card li:last-child{grid-column:auto}
  .coverage-list li{padding:8px 0}
  .coverage-list strong{font-size:15px}
  .coverage-list span{font-size:13.5px}

  /* --- 服务领域总览 --- */
  .svc-ov-head{flex-wrap:wrap;gap:8px;padding:96px 20px 16px}
  .svc-ov-banner{height:180px}
  .svc-ov-inner{padding:0 20px}
  .svc-ov-banner h2{font-size:21px;letter-spacing:2px}
  .svc-ov-desc{font-size:13px;letter-spacing:.5px}
  .svc-ov-en{letter-spacing:3px}

  /* --- 触控目标 >=44px --- */
  .sys-link,.footer-col a,.contact-card a,.contact-item a,.contact-reveal a{min-height:44px;display:inline-flex;align-items:center}
  .footer-col a{width:100%}
  .footer-bottom a,p a[href^="mailto:"]{min-height:44px;display:inline-flex;align-items:center;padding:0 2px}
  #header .nav-item a,#header .nav-trigger{min-height:48px;box-sizing:border-box}
}

/* ================================================================
   平板 / 手机横屏增强（769~1199px）
   在上方移动端基础上把字号与网格放大，避免手机样式在大屏上过小
   ================================================================ */
@media (min-width:769px) and (max-width:1199px){
  .container{padding:0 32px}
  #header{padding:14px 32px}
  #nav-menu{width:52%;max-width:380px}

  .hero{min-height:72vh;padding:120px 0 88px}
  .hero-content{width:76%}
  .hero-content h2{font-size:12px;letter-spacing:3px}
  .hero-content h1{font-size:38px;letter-spacing:2px}
  .hero-content p{font-size:15.5px}

  .section{padding:72px 32px}
  .section-desc{font-size:15px}

  .services-grid,.services-grid.grid-2col{grid-template-columns:repeat(2,1fr)}
  .services-grid .service-card,.services-grid .service-card:nth-child(n+4){grid-column:auto;height:230px}
  .fields-grid,.domains-grid,.clients-grid,.client-profile,.job-detail-grid,.contact-grid,.contact-grid.systems-grid,.svc-desc-grid{grid-template-columns:repeat(2,1fr)}
  .footer-main,.cta-footer-screen .footer-main{grid-template-columns:1fr 1fr;gap:32px;padding:44px 32px 28px}
  .cases-grid > *,.tao-grid > *{flex:0 0 46%}

  .about-image,.img-text-block .block-image{aspect-ratio:21/9}
  .about-text,.block-content-light,.block-content-dark,.block-content-gray{padding:56px 32px}
  .about-text p,.block-content-light p,.block-content-gray p,.block-content-dark p{font-size:15.5px}

  .page-hero{padding:120px 32px 64px}
  .page-hero h1{font-size:34px;letter-spacing:3px}
  .svc-icon-screen{padding:120px 32px 72px}
  .svc-icon-screen h1{font-size:34px;letter-spacing:3px}
  .svc-icon-screen .svc-lead{font-size:15.5px}
  .svc-ov-banner{height:260px}
  .svc-ov-banner h2{font-size:26px;letter-spacing:4px}
  .cta-section h2{font-size:30px}
  .cta-section p{font-size:15px}
  .career-path{flex-direction:row;flex-wrap:wrap;padding:16px 0}
  .career-step{width:calc(50% - 20px)}
  .career-arrow{transform:none}
}

/* 手机横屏（短高宽屏）：首屏不再占满，避免内容被挤到屏外 */
@media (max-width:1199px) and (max-height:600px) and (orientation:landscape){
  .hero{min-height:0;padding:88px 0 56px}
  .page-hero,.svc-icon-screen{padding-top:84px}
  #nav-menu{padding-top:64px}
}
