:root {
  --navy-950: #020914;
  --navy-900: #061328;
  --navy-800: #0a203f;
  --blue: #0878bd;
  --blue-bright: #2aa9ff;
  --orange: #f4a014;
  --ice: #e9f7ff;
  --muted: #8fa8bf;
  --line: rgba(137, 194, 230, 0.16);
  --font-display: "Microsoft YaHei UI", "HarmonyOS Sans SC", "PingFang SC", sans-serif;
  --font-body: "MiSans", "Microsoft YaHei", "PingFang SC", sans-serif;
  --max: 1320px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--navy-950); }
body { margin: 0; color: var(--ice); font-family: var(--font-body); background: var(--navy-950); overflow-x: hidden; }
body.dialog-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
img { display: block; max-width: 100%; }
::selection { color: #02101f; background: var(--blue-bright); }

.sr-only, .skip-link { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
.skip-link:focus { z-index: 200; top: 16px; left: 16px; width: auto; height: auto; clip: auto; padding: 12px 18px; background: white; color: black; }
.page-noise { position: fixed; inset: 0; z-index: 100; pointer-events: none; opacity: .035; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E"); }

.site-header { position: fixed; z-index: 90; top: 0; left: 0; right: 0; height: 88px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 clamp(24px, 5vw, 80px); border-bottom: 1px solid transparent; transition: .35s ease; }
.site-header.scrolled { height: 72px; background: rgba(2, 9, 20, .78); backdrop-filter: blur(22px); border-color: var(--line); }
.brand { width: 188px; }
.brand img { width: 100%; }
.desktop-nav { display: flex; gap: clamp(14px, 1.65vw, 28px); color: #b8ccdc; font-size: 13px; }
.desktop-nav a { position: relative; padding: 12px 0; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; bottom: 5px; width: 0; height: 1px; background: var(--blue-bright); transition: width .25s; }
.desktop-nav a:hover::after { width: 100%; }
.header-cta { justify-self: end; font-size: 13px; letter-spacing: .1em; border: 1px solid rgba(255,255,255,.22); padding: 12px 18px; transition: .25s; }
.header-cta:hover { border-color: var(--blue-bright); background: rgba(42,169,255,.08); }
.header-cta span { color: var(--orange); margin-left: 12px; }
.nav-toggle, .mobile-nav { display: none; }

.hero { min-height: 880px; height: 100svh; position: relative; display: flex; flex-direction: column; justify-content: center; padding: 140px max(6vw, 28px) 50px; overflow: hidden; background: radial-gradient(circle at 78% 48%, rgba(11,101,165,.26), transparent 32%), linear-gradient(115deg, #020914 0%, #06162d 58%, #071e3c 100%); }
.hero::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 180px; background: linear-gradient(transparent, var(--navy-950)); z-index: 2; }
.hero-grid { position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px); background-size: 74px 74px; mask-image: linear-gradient(90deg, black, transparent 78%); }
.hero-content { position: relative; z-index: 5; width: min(730px, 58vw); }
.eyebrow, .section-label { display: flex; align-items: center; gap: 12px; color: var(--blue-bright); font-size: 11px; font-weight: 700; letter-spacing: .22em; }
.eyebrow > span { width: 34px; height: 1px; background: var(--blue-bright); }
.hero h1 { margin: 28px 0 22px; font-family: var(--font-display); font-size: clamp(56px, 6.3vw, 105px); line-height: 1.08; letter-spacing: -.06em; font-weight: 750; }
.hero h1 em { color: transparent; font-style: normal; -webkit-text-stroke: 1px rgba(142,218,255,.78); text-shadow: 0 0 40px rgba(27,143,210,.18); }
.hero-content > p { max-width: 610px; color: #a9bed1; font-size: 17px; line-height: 1.9; }
.hero-actions { display: flex; gap: 14px; margin-top: 42px; }
.button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 36px; padding: 0 24px; border: 1px solid transparent; background: transparent; cursor: pointer; transition: transform .25s, background .25s, border-color .25s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--blue); box-shadow: 0 18px 50px rgba(8,120,189,.24); }
.button-primary:hover { background: #0c8bd6; }
.button-primary span { color: #bfeaff; }
.button-ghost { border-color: rgba(255,255,255,.2); color: #b8ccdc; }
.button-ghost:hover { border-color: rgba(255,255,255,.5); }
.hero-foot { position: absolute; z-index: 5; bottom: 44px; left: max(6vw, 28px); right: max(6vw, 28px); display: flex; justify-content: space-between; align-items: end; color: var(--muted); }
.hero-foot p { font-size: 12px; letter-spacing: .18em; }
.hero-index { display: flex; align-items: center; gap: 14px; }
.hero-index span { color: white; font-size: 13px; }.hero-index i { width: 70px; height: 1px; background: var(--line); }.hero-index small { font-size: 9px; letter-spacing: .18em; }

.hero-orbit { position: absolute; z-index: 3; right: -4vw; top: 47%; width: min(56vw, 780px); aspect-ratio: 1; transform: translateY(-50%); }
.orbit { position: absolute; border: 1px solid rgba(79,185,247,.26); border-radius: 50%; }
.orbit-one { inset: 11%; animation: spin 26s linear infinite; }.orbit-two { inset: 27%; border-style: dashed; animation: spin 18s linear infinite reverse; }
.orbit-one::before, .orbit-two::before { content: ""; position: absolute; width: 8px; height: 8px; top: 10%; left: 17%; border-radius: 50%; background: var(--blue-bright); box-shadow: 0 0 20px var(--blue-bright); }
.orbit-two::before { top: auto; left: auto; right: 7%; bottom: 23%; background: var(--orange); box-shadow: 0 0 20px var(--orange); }
.orbit-core { position: absolute; inset: 35%; display: grid; place-items: center; border-radius: 42%; background: rgba(7,28,55,.74); border: 1px solid rgba(125,207,255,.35); box-shadow: 0 0 100px rgba(13,126,196,.28), inset 0 0 35px rgba(60,174,243,.12); transform: rotate(45deg); backdrop-filter: blur(10px); }
.orbit-core img { width: 68%; transform: rotate(-45deg); filter: drop-shadow(0 15px 22px rgba(0,0,0,.45)); }
.orbit-node { position: absolute; padding: 9px 13px; color: #92ccea; background: rgba(3,14,30,.78); border: 1px solid rgba(74,176,234,.26); font-size: 9px; letter-spacing: .16em; }
.node-ai { left: 3%; top: 40%; }.node-geo { right: 8%; top: 27%; }.node-agent { right: 7%; bottom: 24%; }
@keyframes spin { to { transform: rotate(360deg); } }

.section-pad { padding: 130px max(6vw, 28px); }
.intro { max-width: var(--max); margin: auto; display: grid; grid-template-columns: .65fr 2fr .8fr; gap: clamp(35px, 6vw, 95px); align-items: start; }
.section-label { justify-content: space-between; width: 100%; border-top: 1px solid var(--line); padding-top: 15px; }
.section-label strong { color: #56758e; font: 500 10px var(--font-body); }
.intro-copy .kicker { color: var(--orange); font-size: 12px; letter-spacing: .08em; }
.intro h2, .section-heading h2, .approach h2, .about h2, .contact h2 { margin: 22px 0; font-family: var(--font-display); font-size: clamp(38px, 4vw, 66px); line-height: 1.2; letter-spacing: -.045em; }
.intro h2 span, .approach h2 span, .contact h2 span { color: var(--blue-bright); }
.body-copy, .intro-aside p, .section-heading > p, .approach-sticky > p, .about-copy > p { color: #8fa8bf; line-height: 1.95; font-size: 15px; }
.intro-aside { margin-top: 78px; }.intro-aside p { font-size: 13px; }
.signal-graphic { height: 86px; display: flex; gap: 8px; align-items: end; margin-bottom: 26px; }
.signal-graphic i { display: block; width: 3px; background: var(--blue-bright); box-shadow: 0 0 12px rgba(42,169,255,.4); }.signal-graphic i:nth-child(1){height:25%}.signal-graphic i:nth-child(2){height:55%}.signal-graphic i:nth-child(3){height:100%;background:var(--orange)}.signal-graphic i:nth-child(4){height:66%}.signal-graphic i:nth-child(5){height:38%}

.services { background: #04101f; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.section-heading { max-width: var(--max); margin: 0 auto 65px; display: grid; grid-template-columns: 1.6fr .7fr; gap: 9vw; align-items: end; }
.section-heading .section-label { max-width: 270px; }.section-heading h2 { margin-bottom: 0; }.section-heading > p { margin-bottom: 7px; }
.service-grid { max-width: var(--max); margin: auto; display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.service-card { min-height: 420px; position: relative; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(28px, 4vw, 52px); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); overflow: hidden; transition: background .35s, transform .35s; }
.service-card::before { content: ""; position: absolute; width: 280px; height: 280px; right: -180px; top: -180px; border-radius: 50%; background: var(--blue); filter: blur(65px); opacity: 0; transition: .35s; }
.service-card:hover { background: #071b34; }.service-card:hover::before { opacity: .18; }
.service-card.featured { background: linear-gradient(135deg, #0878bd, #07558d); }.service-card.featured::before { opacity: .2; background: white; }
.service-card.wide { grid-column: span 2; min-height: 340px; display: grid; grid-template-columns: .55fr 1.2fr .8fr; align-items: center; gap: 70px; }
.card-top { display: flex; justify-content: space-between; align-items: start; color: rgba(255,255,255,.5); font-size: 12px; }
.service-icon { width: 54px; height: 54px; position: relative; border: 1px solid rgba(126,205,255,.3); border-radius: 50%; }
.service-icon::before, .service-icon::after { content: ""; position: absolute; inset: 13px; border: 1px solid var(--blue-bright); transform: rotate(45deg); }.service-icon::after{inset:20px;background:var(--orange);border:0}
.featured .service-icon { border-color: rgba(255,255,255,.45); }.featured .service-icon::before{border-color:white}
.card-tag { color: var(--blue-bright); margin: 0 0 12px; font-size: 10px; letter-spacing: .19em; }.featured .card-tag{color:#d8f2ff}
.service-card h3 { margin: 0 0 18px; font-size: clamp(25px, 2.3vw, 35px); font-weight: 600; }.service-card p:not(.card-tag) { max-width: 530px; margin: 0; color: #92a9bd; font-size: 14px; line-height: 1.9; }.featured p:not(.card-tag){color:#d3eafa}
.card-chips { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 30px; }.card-chips span{padding:7px 10px;border:1px solid rgba(142,206,242,.2);color:#7fa4bc;font-size:10px}.featured .card-chips span{color:white;border-color:rgba(255,255,255,.25)}
.card-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px}.card-link{flex:0 0 auto;color:#8fcff4;font-size:12px;letter-spacing:.05em;transition:.25s}.card-link:hover{color:white;transform:translateX(4px)}.featured .card-link{color:white}

.needs{color:#0a2038;background:#f3f8fb}.needs-heading{max-width:var(--max);margin:0 auto 60px;display:grid;grid-template-columns:.65fr 1.35fr;gap:6vw}.needs-heading .section-label{grid-column:1;max-width:320px;border-color:#cadde8}.needs-heading>p{grid-column:2;color:#68839a;font-size:14px;line-height:1.9;margin:10px 0 0}.needs-heading h2{grid-column:1/-1;margin:20px 0 0;font-family:var(--font-display);font-size:clamp(40px,4.5vw,68px);line-height:1.2;letter-spacing:-.045em}.needs-heading h2 span{color:var(--blue)}
.needs-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #cbdde7;border-left:1px solid #cbdde7}.need-item{min-height:270px;padding:38px 42px;display:flex;flex-direction:column;border-right:1px solid #cbdde7;border-bottom:1px solid #cbdde7;transition:.3s;background:rgba(255,255,255,.45)}.need-item:hover{background:#fff;box-shadow:0 24px 70px rgba(31,83,116,.1);transform:translateY(-3px)}.need-item>span{color:var(--orange);font-size:11px}.need-item h3{margin:38px 0 14px;font-size:24px}.need-item p{max-width:460px;margin:0;color:#6d879b;font-size:13px;line-height:1.8}.need-item strong{margin-top:auto;padding-top:28px;color:var(--blue);font-size:11px;letter-spacing:.08em}

.approach { max-width: var(--max); margin: auto; display: grid; grid-template-columns: .8fr 1.2fr; gap: 10vw; align-items: start; }
.approach-sticky { position: sticky; top: 130px; }.approach-sticky .section-label{max-width:290px}.approach-sticky > p{max-width:430px}
.process-list { border-top: 1px solid var(--line); }
.process-item { min-height: 165px; display: grid; grid-template-columns: 50px 1fr auto; gap: 28px; align-items: center; border-bottom: 1px solid var(--line); transition: padding .3s, background .3s; }
.process-item:hover { padding-left: 18px; background: linear-gradient(90deg, rgba(10,103,160,.12), transparent); }
.process-item > span { color: var(--orange); font-size: 11px; }.process-item h3{margin:0 0 12px;font-size:22px}.process-item p{margin:0;color:#7892a8;font-size:13px;line-height:1.7}.process-item strong{color:#385671;font-size:9px;letter-spacing:.18em}

.about { min-height: 760px; display: grid; grid-template-columns: 1fr 1fr; gap: 10vw; align-items: center; background: linear-gradient(105deg,#061a34,#05101f); border-top:1px solid var(--line);border-bottom:1px solid var(--line) }
.about-visual { min-height: 500px; position: relative; display: grid; place-items: center; }
.about-radar { position: relative; width: min(38vw,450px); aspect-ratio:1;border-radius:50%;border:1px solid rgba(57,174,241,.25); background:radial-gradient(circle,rgba(14,126,196,.18),transparent 63%) }
.about-radar::before,.about-radar::after,.about-radar i{content:"";position:absolute;border-radius:50%;border:1px solid rgba(57,174,241,.17)}.about-radar::before{inset:17%}.about-radar::after{inset:35%}.about-radar i:nth-child(1){left:50%;top:0;bottom:0;border-radius:0;border-width:0 0 0 1px}.about-radar i:nth-child(2){top:50%;left:0;right:0;border-radius:0;border-width:1px 0 0}.about-radar i:nth-child(3){inset:8%;border-top-color:var(--blue-bright);animation:spin 7s linear infinite}.about-radar span{position:absolute;left:49%;top:20%;width:8px;height:8px;background:var(--orange);border-radius:50%;box-shadow:0 0 18px var(--orange)}
.about-stamp { position:absolute;left:6%;bottom:4%;display:flex;flex-direction:column;padding:22px 26px;background:#0878bd;box-shadow:0 18px 45px rgba(0,0,0,.26)}.about-stamp small{font-size:9px;letter-spacing:.2em}.about-stamp strong{font-size:30px;margin:7px 0}.about-stamp span{font-size:10px;color:#c7eaff}
.about-copy .section-label{max-width:300px}.about-copy > p{max-width:610px}.about-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:50px;padding-top:24px;border-top:1px solid var(--line)}.about-meta div{display:flex;flex-direction:column;gap:10px}.about-meta span{color:#58778f;font-size:9px;letter-spacing:.16em}.about-meta strong{font-size:13px;font-weight:500}

.contact { min-height: 690px; position:relative; overflow:hidden; display:grid;grid-template-columns:1.6fr .7fr;gap:8vw;align-items:center;background:#0878bd }
.contact::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:75px 75px;mask-image:linear-gradient(90deg,black,transparent)}
.contact-glow{position:absolute;width:550px;height:550px;right:-150px;top:-180px;border-radius:50%;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 90px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.018)}
.contact-main,.contact-info{position:relative;z-index:2}.contact .section-label{max-width:340px;border-color:rgba(255,255,255,.3);color:#d7f2ff}.contact .section-label strong{color:#b4dff6}.contact-main > p{margin-top:55px;font-size:13px;letter-spacing:.08em}.contact h2{font-size:clamp(42px,5vw,74px)}.contact h2 span{color:#fff}.contact-actions{display:flex;gap:12px;margin-top:45px}.button-light{background:white;color:#07355a}.button-light span{color:#0878bd}.button-outline{border-color:rgba(255,255,255,.55)}
.contact-info{border-top:1px solid rgba(255,255,255,.3)}.contact-info>a,.contact-info>div{display:flex;flex-direction:column;gap:12px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.25)}.contact-info span{font-size:9px;letter-spacing:.18em;color:#bde8ff}.contact-info strong{font-size:14px;line-height:1.7;font-weight:500}.contact-info a:hover strong{text-decoration:underline}

.site-footer{min-height:240px;display:grid;grid-template-columns:.7fr .7fr 1.3fr;gap:35px;align-items:center;padding:50px max(6vw,28px);background:#020914}.site-footer>img{width:185px}.site-footer>p{color:#5f7b91;font-size:12px;letter-spacing:.15em}.footer-links{display:flex;justify-content:flex-end;gap:20px;color:#6f8ca3;font-size:11px}.site-footer>div{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:24px;border-top:1px solid var(--line);color:#405d73;font-size:10px}.site-footer a:hover{color:var(--blue-bright)}

.contact-rail{position:fixed;z-index:70;right:18px;bottom:24px;display:flex;flex-direction:column;background:rgba(3,15,30,.9);border:1px solid rgba(109,190,236,.25);backdrop-filter:blur(16px);box-shadow:0 16px 45px rgba(0,0,0,.25)}.contact-rail a,.contact-rail button{width:118px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;border:0;border-bottom:1px solid var(--line);background:transparent;color:white;text-align:left;cursor:pointer}.contact-rail button{border-bottom:0}.contact-rail span{color:var(--blue-bright);font-size:9px;letter-spacing:.12em}.contact-rail strong{font-size:11px;font-weight:500}.contact-rail a:hover,.contact-rail button:hover{background:rgba(25,135,202,.18)}

.wechat-dialog{width:min(440px,calc(100vw - 32px));padding:38px;border:1px solid rgba(81,177,235,.35);background:#06172b;color:white;box-shadow:0 30px 100px rgba(0,0,0,.65)}.wechat-dialog::backdrop{background:rgba(0,5,13,.82);backdrop-filter:blur(8px)}.wechat-dialog h2{margin:8px 0 24px;font-size:26px}.wechat-dialog img{width:100%;background:white;padding:10px}.wechat-dialog>p:last-child{text-align:center;color:#8da8bd;font-size:12px;margin:20px 0 0}.dialog-label{color:var(--blue-bright);font-size:9px;letter-spacing:.2em}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:28px;color:#7895aa;cursor:pointer}.dialog-close:hover{color:white}

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s cubic-bezier(.22,1,.36,1), transform .8s cubic-bezier(.22,1,.36,1); }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 900px) {
  .site-header{height:72px;grid-template-columns:1fr auto;padding:0 22px;background:rgba(2,9,20,.74);backdrop-filter:blur(20px)}.brand{width:155px}.desktop-nav,.header-cta{display:none}.nav-toggle{display:flex;width:42px;height:42px;padding:11px;flex-direction:column;justify-content:center;gap:5px;border:1px solid var(--line);background:transparent}.nav-toggle>span:not(.sr-only){display:block;width:100%;height:1px;background:white;transition:.25s}.nav-toggle[aria-expanded="true"]>span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-toggle[aria-expanded="true"]>span:nth-child(2){opacity:0}.nav-toggle[aria-expanded="true"]>span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .mobile-nav{position:absolute;display:flex;visibility:hidden;opacity:0;transform:translateY(-10px);top:72px;left:0;right:0;padding:25px 22px 35px;flex-direction:column;gap:0;background:rgba(2,9,20,.97);border-bottom:1px solid var(--line);transition:.25s}.mobile-nav.open{visibility:visible;opacity:1;transform:none}.mobile-nav a{padding:17px 0;border-bottom:1px solid var(--line);font-size:18px}
  .hero{min-height:780px;height:100svh;padding-top:120px}.hero-content{width:100%}.hero h1{font-size:clamp(48px,12vw,70px)}.hero-content>p{font-size:15px;max-width:520px}.hero-orbit{width:620px;right:-350px;top:50%;opacity:.54}.hero-foot{bottom:25px}.hero-foot p{display:none}
  .section-pad{padding:90px 24px}.intro{grid-template-columns:1fr}.intro>.section-label{max-width:260px}.intro-aside{margin-top:0}.signal-graphic{height:60px}.section-heading{grid-template-columns:1fr;gap:25px}.section-heading>p{max-width:530px}.service-grid{grid-template-columns:1fr}.service-card.wide{grid-column:auto;display:flex;min-height:420px}.needs-heading{grid-template-columns:1fr;gap:20px}.needs-heading>p{grid-column:1}.needs-grid{grid-template-columns:1fr}.approach{grid-template-columns:1fr;gap:60px}.approach-sticky{position:static}.about{grid-template-columns:1fr}.about-visual{min-height:430px}.about-radar{width:min(80vw,400px)}.about-copy{max-width:680px}.contact{grid-template-columns:1fr;gap:50px}.contact-info{max-width:580px;width:100%}.site-footer{grid-template-columns:1fr;gap:22px}.footer-links{justify-content:flex-start;flex-wrap:wrap}.site-footer>div{grid-column:1}.contact-rail{display:none}
}

@media (max-width: 560px) {
  .hero{min-height:740px}.hero h1{letter-spacing:-.07em}.hero-actions{align-items:stretch;flex-direction:column;width:100%;max-width:340px}.button{min-height:52px}.hero-index small{display:none}.hero-orbit{width:490px;right:-305px;top:49%}
  .section-pad{padding:78px 20px}.intro h2,.section-heading h2,.approach h2,.about h2,.contact h2{font-size:38px}.service-card{min-height:380px;padding:30px 24px}.service-card.wide{min-height:400px}.process-item{grid-template-columns:36px 1fr;gap:14px;min-height:155px}.process-item>strong{display:none}.about{gap:35px}.about-visual{min-height:330px}.about-stamp{left:0;bottom:0}.about-meta{grid-template-columns:1fr;gap:18px}.about-meta div{flex-direction:row;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--line)}.contact{padding-top:90px;padding-bottom:90px}.contact-actions{flex-direction:column}.site-footer>div{gap:18px;flex-direction:column}.wechat-dialog{padding:28px 22px}
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}
}

/* Premium minimal visual system */
:root{--premium-bg:#f5f5f7;--premium-surface:#fff;--premium-ink:#1d1d1f;--premium-muted:#6e6e73;--premium-blue:#0878bd;--premium-line:rgba(0,0,0,.08);--premium-radius:32px}
html,body{background:var(--premium-bg)}body{color:var(--premium-ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}
.page-noise,.hero-grid,.hero-orbit,.hero-foot,.signal-graphic,.contact-glow,.about-radar,.service-icon{display:none!important}
.site-header{height:64px;padding:0 max(4vw,24px);background:rgba(250,250,252,.8);border-bottom:1px solid rgba(0,0,0,.045);backdrop-filter:saturate(180%) blur(20px)}
.site-header.is-scrolled{height:58px;background:rgba(250,250,252,.92);border-color:var(--premium-line)}
.brand{width:148px}.brand img{filter:none}.desktop-nav{gap:30px}.desktop-nav a{color:#424245;font-size:12px;font-weight:500;letter-spacing:0}.desktop-nav a::after{display:none}.desktop-nav a:hover{color:#000}.header-cta{padding:9px 17px;border:0;border-radius:999px;background:var(--premium-blue);color:#fff;font-size:12px}.header-cta:hover{background:#0068a5}.header-cta span{color:inherit}
.hero{height:auto;min-height:860px;padding:145px 24px 84px;align-items:center;justify-content:flex-start;text-align:center;color:var(--premium-ink);background:linear-gradient(180deg,#fff 0%,#f5f5f7 74%)}.hero::before{display:none}.hero-content{width:min(960px,100%);margin:0 auto}.hero-kicker{margin:38px 0 20px!important;color:var(--premium-ink)!important;font-size:clamp(19px,1.7vw,26px)!important;font-weight:600;line-height:1.4!important}.hero h1{margin:0;font-size:clamp(64px,7.4vw,112px);font-weight:700;line-height:.98;letter-spacing:-.075em}.hero h1 em{color:var(--premium-ink);-webkit-text-stroke:0;text-shadow:none}.hero-content>p:not(.hero-kicker){max-width:720px;margin:28px auto 0;color:var(--premium-muted);font-size:clamp(18px,1.6vw,23px);line-height:1.65}.hero-actions{justify-content:center;align-items:center;margin-top:34px}.button{min-height:46px;padding:0 23px;border-radius:999px;border:0;font-weight:500;letter-spacing:0}.button-primary{background:var(--premium-blue);box-shadow:none}.button-primary:hover{background:#0068a5;transform:none}.hero-text-link{padding:10px;color:var(--premium-blue);font-size:17px}.hero-text-link:hover{text-decoration:underline}.hero-text-link span{font-size:25px;vertical-align:-2px}.hero-mark{width:min(620px,76vw);height:310px;margin:58px auto 0;display:grid;place-items:center;overflow:hidden;border-radius:var(--premium-radius);background:radial-gradient(circle at 50% 20%,#e2f4ff,transparent 52%),linear-gradient(145deg,#fff,#e9edf1);box-shadow:0 30px 80px rgba(0,0,0,.08)}.hero-mark img{width:min(245px,42vw);filter:drop-shadow(0 28px 34px rgba(6,83,132,.18))}
.section-pad{padding:120px max(4vw,24px)}.intro,.section-heading,.service-grid,.needs-heading,.needs-grid,.approach{max-width:1240px}.intro{grid-template-columns:.6fr 1.65fr .75fr;gap:70px}.section-label{border:0;padding:0;color:#86868b;font-size:11px;letter-spacing:.08em}.section-label strong{display:none}.kicker{color:var(--premium-blue)}.intro h2,.section-heading h2,.approach h2,.about h2,.contact h2{color:var(--premium-ink);font-size:clamp(44px,5vw,72px);font-weight:700;line-height:1.08;letter-spacing:-.055em}.intro h2 span,.needs-heading h2 span,.approach h2 span{color:var(--premium-ink)}.body-copy,.intro-aside p,.section-heading>p,.approach-sticky>p,.about-copy>p{color:var(--premium-muted);font-size:15px;line-height:1.85}
.services{background:#000;color:#f5f5f7}.services .section-label{color:#86868b}.services .section-heading h2{color:#f5f5f7}.services .section-heading>p{color:#a1a1a6}.service-grid{gap:18px;border:0}.service-card,.service-card.featured{min-height:460px;padding:48px;border:0;border-radius:var(--premium-radius);background:#171719;transition:transform .4s cubic-bezier(.2,.8,.2,1),background .3s}.service-card:hover,.service-card.featured:hover{background:#202023;transform:translateY(-5px)}.service-card::before,.service-card.featured::before{display:none}.card-top{color:#86868b}.service-card h3{color:#fff;font-size:clamp(32px,3vw,46px);font-weight:650;letter-spacing:-.04em}.service-card p:not(.card-tag),.featured p:not(.card-tag){color:#a1a1a6;font-size:15px;line-height:1.75}.card-tag,.featured .card-tag{color:#86868b;letter-spacing:.08em}.card-chips span,.featured .card-chips span{padding:0;border:0;color:#86868b;font-size:11px}.card-chips span+span::before{content:"·";margin-right:8px}.card-link,.featured .card-link{color:#2997ff;font-size:14px}.card-link:hover{color:#2997ff;text-decoration:underline;transform:none}
.needs{background:var(--premium-bg)}.needs-heading .section-label{border:0}.needs-heading h2{font-size:clamp(44px,5vw,72px);color:var(--premium-ink)}.needs-heading>p{color:var(--premium-muted)}.needs-grid{gap:18px;border:0}.need-item{min-height:320px;padding:42px;border:0;border-radius:var(--premium-radius);background:#fff}.need-item:hover{box-shadow:0 22px 55px rgba(0,0,0,.06);transform:translateY(-4px)}.need-item>span{color:#86868b}.need-item h3{font-size:27px;letter-spacing:-.03em}.need-item p{color:var(--premium-muted);font-size:14px}.need-item strong{color:var(--premium-blue);font-size:13px}
.approach{gap:9vw}.process-item{min-height:150px;border-color:var(--premium-line)}.process-item:hover{padding-left:0;background:transparent}.process-item>span{color:#86868b}.process-item h3{font-size:22px}.process-item p{color:var(--premium-muted)}.process-item>strong{color:#b5b5b8}
.about{min-height:720px;gap:6vw;background:#fff;border:0}.about-visual{min-height:500px;border-radius:var(--premium-radius);background:linear-gradient(145deg,#eef7fc,#dfe8ed)}.about-visual::before{content:"悦夏";font-size:clamp(90px,13vw,190px);font-weight:800;letter-spacing:-.1em;color:rgba(8,120,189,.1)}.about-stamp{left:50%;bottom:55px;transform:translateX(-50%);width:max-content;padding:18px 26px;border:0;border-radius:18px;background:rgba(255,255,255,.82);box-shadow:0 14px 45px rgba(0,0,0,.08);backdrop-filter:blur(18px)}.about-meta{border-color:var(--premium-line)}.about-meta span{color:#86868b}.about-meta strong{color:var(--premium-ink)}
.contact{min-height:650px;background:#000;color:#fff}.contact::before{display:none}.contact .section-label{color:#86868b;border:0}.contact h2,.contact h2 span{color:#f5f5f7}.contact-main>p,.contact-info span{color:#86868b}.contact-info a,.contact-info>div{border-color:rgba(255,255,255,.13)}.button-light{background:#f5f5f7;color:#1d1d1f}.button-light span{color:#1d1d1f}.button-outline{border:1px solid #555;color:#fff;background:transparent}.site-footer{background:#f5f5f7}.site-footer>p,.footer-links{color:#6e6e73}.site-footer>div{border-color:var(--premium-line);color:#86868b}.contact-rail{border:1px solid rgba(0,0,0,.07);border-radius:18px;background:rgba(255,255,255,.86);box-shadow:0 12px 40px rgba(0,0,0,.09);backdrop-filter:blur(20px)}.contact-rail a,.contact-rail button{color:var(--premium-ink);border-color:var(--premium-line)}.contact-rail span{color:#86868b}.wechat-dialog{border:0;border-radius:28px;background:#fff;color:#1d1d1f;box-shadow:0 30px 100px rgba(0,0,0,.24)}.dialog-close:hover{color:#000}
@media(max-width:900px){.site-header{height:58px;background:rgba(250,250,252,.92)}.nav-toggle{border:0}.nav-toggle>span:not(.sr-only){background:#1d1d1f}.mobile-nav{top:58px;background:rgba(250,250,252,.98)}.mobile-nav a{color:#1d1d1f;border-color:var(--premium-line)}.hero{min-height:auto;padding-top:110px}.hero h1{font-size:clamp(56px,12vw,82px)}.hero-mark{height:280px}.intro{grid-template-columns:1fr;gap:28px}.about-visual{min-height:400px}}
@media(max-width:560px){.hero{min-height:auto;height:auto;padding:94px 20px 60px}.hero-kicker{font-size:17px!important}.hero h1{font-size:52px;line-height:1.03}.hero-content>p:not(.hero-kicker){font-size:17px}.hero-actions{flex-direction:row;width:auto}.hero-mark{width:100%;height:230px;margin-top:42px;border-radius:24px}.hero-mark img{width:150px}.section-pad{padding:82px 20px}.intro h2,.section-heading h2,.approach h2,.about h2,.contact h2,.needs-heading h2{font-size:42px}.service-card,.service-card.featured{min-height:400px;padding:32px 26px;border-radius:24px}.need-item{min-height:280px;padding:32px 26px;border-radius:24px}.about-visual{min-height:320px}.about-stamp{left:50%;bottom:28px}.contact{padding:84px 20px}.site-footer{background:#f5f5f7}}

.hero-mark{display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-mark span{color:#0878bd;font-size:clamp(56px,7vw,96px);font-weight:800;line-height:1;letter-spacing:-.07em}.hero-mark small{margin-top:15px;color:#6e6e73;font-size:10px;font-weight:700;letter-spacing:.3em}
@media(max-width:560px){.hero-mark span{font-size:52px}}

/* Cinematic brand layer: visual richness without template-like decoration */
.site-header{color:#fff;background:linear-gradient(180deg,rgba(2,10,26,.65),transparent);border-color:rgba(255,255,255,.1)}.site-header.is-scrolled{background:rgba(3,14,32,.86);border-color:rgba(255,255,255,.1)}.site-header .brand img{filter:brightness(0) invert(1)}.desktop-nav a{color:rgba(255,255,255,.82)}.desktop-nav a:hover{color:#fff}.header-cta{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.42)}.header-cta:hover{background:#fff;color:#05213d}
.hero{height:100svh;min-height:860px;padding:130px max(5vw,28px) 38px;align-items:stretch;justify-content:center;text-align:left;color:#fff;background-image:linear-gradient(90deg,rgba(1,10,29,.95) 0%,rgba(2,15,38,.8) 40%,rgba(2,16,39,.24) 74%,rgba(2,14,34,.18)),linear-gradient(0deg,rgba(2,12,29,.86) 0%,transparent 32%),url("assets/hero-digital-space-v2.png");background-size:cover;background-position:center}
.hero-content{width:min(800px,58vw);margin:0;display:flex;flex-direction:column;justify-content:center;padding-bottom:140px}.hero-kicker{margin:0 0 28px!important;color:#78d8ff!important;font-size:12px!important;font-weight:700;letter-spacing:.18em}.hero h1{color:#fff;font-size:clamp(58px,6.2vw,98px);line-height:1.02;letter-spacing:-.065em}.hero h1 em{color:#62d2ff}.hero-content>p:not(.hero-kicker){max-width:680px;margin:30px 0 0;color:rgba(236,246,255,.73);font-size:17px}.hero-actions{justify-content:flex-start;margin-top:38px}.hero .button-primary{background:linear-gradient(110deg,#0878ff,#13aff0);box-shadow:0 14px 35px rgba(0,121,255,.25)}.hero-text-link{color:#fff}.hero-mark{position:absolute;right:8vw;top:50%;width:170px;height:220px;margin:0;padding:26px;align-items:flex-start;text-align:left;border:1px solid rgba(255,255,255,.28);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.06));box-shadow:0 22px 70px rgba(0,0,0,.24);backdrop-filter:blur(18px);transform:translateY(-50%)}.hero-mark small{margin:0;color:rgba(255,255,255,.6);letter-spacing:.16em}.hero-mark span{margin:22px 0 12px;color:#fff;font-size:68px;letter-spacing:-.05em}.hero-mark p{margin:auto 0 0;padding-top:17px;border-top:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.72);font-size:12px;line-height:1.65}
.hero-proof{position:absolute;left:max(5vw,28px);right:max(5vw,28px);bottom:35px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.22)}.hero-proof a{display:grid;grid-template-columns:auto 1fr;column-gap:12px;padding:20px 24px 6px 0;color:#fff;border-right:1px solid rgba(255,255,255,.13)}.hero-proof a:not(:first-child){padding-left:28px}.hero-proof span{grid-row:1/3;color:#62d2ff;font-size:10px}.hero-proof strong{font-size:16px}.hero-proof small{margin-top:6px;color:rgba(255,255,255,.54);font-size:10px}.hero-proof a:hover strong{color:#62d2ff}
.intro{position:relative}.intro::before{content:"";position:absolute;width:160px;height:4px;left:33%;top:-1px;background:linear-gradient(90deg,#0878bd,#f59c17)}.services{background:linear-gradient(145deg,#030d1c,#071b34 60%,#04101f)}.service-card,.service-card.featured{background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(12px)}.service-card:hover,.service-card.featured:hover{background:linear-gradient(145deg,rgba(16,154,224,.18),rgba(255,255,255,.05));border-color:rgba(90,204,255,.35)}.need-item:nth-child(1),.need-item:nth-child(4){background:linear-gradient(145deg,#fff,#eaf6fd)}.need-item:nth-child(2),.need-item:nth-child(3){background:linear-gradient(145deg,#fff,#f7f3ec)}
.contact{background:linear-gradient(120deg,#031228,#07558d)}.contact::after{content:"";position:absolute;inset:0;background:url("assets/hero-digital-space-v2.png") center/cover;opacity:.16;mix-blend-mode:screen;pointer-events:none}.contact-main,.contact-info{position:relative;z-index:1}.contact-rail{color:#fff;border-color:rgba(255,255,255,.18);background:rgba(3,18,40,.78)}.contact-rail a,.contact-rail button{color:#fff;border-color:rgba(255,255,255,.14)}.contact-rail span{color:#7ccff3}
@media(max-width:900px){.site-header{background:rgba(3,14,32,.72)}.nav-toggle>span:not(.sr-only){background:#fff}.mobile-nav{background:rgba(3,14,32,.98)}.mobile-nav a{color:#fff;border-color:rgba(255,255,255,.12)}.hero{height:auto;min-height:900px;padding-top:120px;background-position:62% center}.hero-content{width:75%;padding-bottom:210px}.hero-mark{right:5vw;width:145px;height:190px}.hero-proof{grid-template-columns:repeat(2,1fr)}.hero-proof a{padding:15px 14px 12px 0}.hero-proof a:not(:first-child){padding-left:16px}.hero-proof a:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.13)}}
@media(max-width:560px){.hero{min-height:780px;padding:108px 20px 180px;background-position:65% center}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,9,25,.94),rgba(1,12,30,.52))}.hero-content{z-index:2;width:100%;padding:0}.hero h1{font-size:48px}.hero h1 em{display:inline}.hero-content>p:not(.hero-kicker){font-size:15px}.hero-mark{display:none}.hero-proof{z-index:2;left:20px;right:20px;bottom:24px}.hero-proof a{padding:12px 8px 10px 0}.hero-proof a:not(:first-child){padding-left:10px}.hero-proof strong{font-size:13px}.hero-proof small{display:none}.hero-proof span{font-size:8px}.hero-actions{width:auto;flex-direction:row}.hero .button{min-height:46px;padding:0 18px}}
