@import "tailwindcss";

:root { --blue:#1769ff; --navy:#07152e; --ink:#10213d; --muted:#6b7890; --line:#e4eaf2; --ice:#f5f8fc; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:82px; padding:0 max(6vw,28px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.12); color:#fff; position:absolute; inset:0 0 auto; z-index:10; }
.brand,.footer-brand { display:flex; align-items:center; gap:12px; }
.brand-mark { width:39px; height:39px; display:grid; place-items:center; color:#fff; background:var(--blue); border-radius:11px 4px 11px 4px; font:bold 25px/1 Arial; transform:skew(-5deg); }
.brand strong,.footer-brand strong { display:block; font-size:17px; letter-spacing:.08em; }
.brand small,.footer-brand small { display:block; margin-top:3px; font-size:8px; letter-spacing:.14em; color:#9fb0cb; }
nav { display:flex; gap:40px; font-size:14px; color:#b9c5d7; }
nav a { transition:.2s; } nav a:hover { color:#fff; }
.header-cta { display:flex; align-items:center; gap:22px; padding:11px 13px 11px 20px; border:1px solid #42618c; border-radius:6px; font-size:13px; }
.header-cta span { background:var(--blue); width:26px; height:26px; display:grid; place-items:center; border-radius:4px; }
.hero { min-height:760px; padding:160px max(8vw,36px) 90px; background:radial-gradient(circle at 78% 45%,#14396a 0,#0a2040 19%,#07172f 43%,#050f21 75%); color:#fff; position:relative; overflow:hidden; display:flex; align-items:center; }
.hero:before { content:""; position:absolute; inset:0; opacity:.11; background-image:linear-gradient(rgba(255,255,255,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px); background-size:70px 70px; mask-image:linear-gradient(90deg,transparent,black); }
.hero-copy { width:58%; position:relative; z-index:2; }
.eyebrow { display:flex; align-items:center; gap:10px; color:#8ca2c4; font-size:11px; font-weight:700; letter-spacing:.18em; margin:0 0 24px; }
.eyebrow span { width:24px; height:2px; background:var(--blue); }
.hero h1 { font-size:clamp(46px,5.3vw,78px); line-height:1.17; letter-spacing:-.045em; margin:0; font-weight:750; }
.hero h1 span { color:#4f91ff; }
.hero-lead { color:#aab8cc; line-height:1.9; font-size:16px; margin:30px 0 36px; }
.hero-actions { display:flex; align-items:center; gap:34px; }
.button { display:inline-flex; align-items:center; justify-content:space-between; gap:34px; min-width:178px; padding:16px 18px; border-radius:5px; font-size:14px; font-weight:600; }
.button.primary { background:var(--blue); color:#fff; box-shadow:0 12px 35px rgba(23,105,255,.28); }
.button span { font-size:18px; }.text-link { font-size:13px; color:#bdc9dc; display:flex; gap:18px; }
.hero-visual { width:42%; height:440px; position:relative; z-index:2; }
.globe { position:absolute; width:330px; height:330px; left:50%; top:50%; transform:translate(-50%,-50%); border:1px solid rgba(98,156,255,.32); border-radius:50%; box-shadow:0 0 80px rgba(30,104,244,.16),inset 0 0 60px rgba(32,103,238,.13); }
.globe:before,.globe:after { content:""; position:absolute; border:1px solid rgba(91,151,255,.24); border-radius:50%; }
.globe:before { inset:0 28%; }.globe:after { inset:28% 0; }
.globe-line { position:absolute; inset:50% 0 auto; border-top:1px solid rgba(91,151,255,.25); transform:rotate(-20deg); }.line-b{transform:rotate(32deg)}.line-c{transform:rotate(76deg)}
.orbit { position:absolute; border:1px dashed rgba(96,149,239,.19); border-radius:50%; left:50%; top:50%; transform:translate(-50%,-50%) rotate(-18deg); }.orbit-one{width:430px;height:260px}.orbit-two{width:460px;height:370px;transform:translate(-50%,-50%) rotate(35deg)}
.float-card { position:absolute; display:flex; gap:12px; align-items:center; padding:12px 16px; min-width:162px; background:rgba(9,30,60,.78); border:1px solid rgba(112,159,231,.27); border-radius:9px; box-shadow:0 14px 35px rgba(0,0,0,.24); backdrop-filter:blur(10px); }
.float-card small { display:block;color:#7790b5;font-size:8px;letter-spacing:.13em;margin-bottom:5px}.float-card strong{font-size:13px}.mini-icon{width:34px;height:34px;display:grid;place-items:center;background:#1769ff;border-radius:6px;font-size:22px}.card-web{left:-4%;top:20%}.card-shop{right:-2%;bottom:21%}
.status-pill{position:absolute;left:28%;bottom:8%;padding:9px 14px;border-radius:20px;background:rgba(7,23,48,.8);border:1px solid rgba(92,143,218,.24);color:#9db1cf;font-size:10px}.status-pill i{display:inline-block;width:6px;height:6px;background:#4bdf9b;border-radius:50%;margin-right:6px;box-shadow:0 0 8px #4bdf9b}.dot{position:absolute;width:5px;height:5px;background:#4b8fff;border-radius:50%;box-shadow:0 0 10px #4b8fff}.dot-a{left:12%;bottom:25%}.dot-b{right:9%;top:22%}.dot-c{right:20%;bottom:4%}
.side-note{position:absolute;right:28px;top:50%;writing-mode:vertical-rl;color:#446183;font-size:8px;letter-spacing:.3em}
.section { padding:105px max(8vw,36px); }
.section-heading { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:52px; }
.section-heading h2,.about h2,.contact h2 { font-size:clamp(34px,4vw,54px); line-height:1.25; margin:0; letter-spacing:-.04em; }
.eyebrow.dark{color:#7b8ba4}.section-heading>p{max-width:440px;color:var(--muted);line-height:1.9;font-size:14px;margin:0 0 8px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{padding:30px;background:#fff;border:1px solid var(--line);min-height:330px;transition:.25s;position:relative;overflow:hidden}.service-card:after{content:"";position:absolute;left:0;bottom:0;width:0;height:3px;background:var(--blue);transition:.3s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 50px rgba(19,51,96,.09)}.service-card:hover:after{width:100%}.service-top{display:flex;justify-content:space-between;color:#a0aec0;font-size:12px}.service-top i{font-style:normal;font-size:18px;color:var(--blue)}.service-card h3{font-size:24px;margin:54px 0 18px}.service-card p{color:var(--muted);font-size:13px;line-height:1.9;margin:0}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:28px}.tags span{font-size:10px;color:#6e7f99;background:var(--ice);padding:7px 9px;border-radius:3px}
.about{background:var(--ice)}.about-panel{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff;min-height:480px}.about-art{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 45%,#193f75 0,transparent 52%)}.about-art:before{content:"";position:absolute;width:380px;height:380px;border:1px solid #294972;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 55px rgba(29,71,129,.09),0 0 0 110px rgba(29,71,129,.06)}.big-t{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%) skew(-7deg);font:bold 190px/1 Arial;color:transparent;-webkit-text-stroke:2px #3177e8;text-shadow:20px 20px 0 rgba(23,105,255,.15)}.code-line{position:absolute;bottom:32px;left:36px;color:#587396;font:9px monospace;letter-spacing:.2em}.about-copy{padding:74px 68px}.about-copy>p:not(.eyebrow){color:#9aabc2;font-size:14px;line-height:2;margin:28px 0 38px}.values{border-top:1px solid #263a58;padding-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.values strong,.values span{display:block}.values strong{font-size:14px;margin-bottom:8px}.values span{font-size:11px;color:#7f93ae}
.compact{margin-bottom:42px}.process-list{display:grid;grid-template-columns:repeat(4,1fr)}.process-item{position:relative;border-top:1px solid var(--line);padding:25px 10px 0 0}.process-item>span{color:#9aa8bb;font-size:11px}.process-item>i{position:absolute;width:9px;height:9px;border:2px solid var(--blue);background:white;border-radius:50%;top:-5px;left:0}.process-item>div{margin-top:35px}.process-item strong,.process-item small{display:block}.process-item strong{font-size:17px}.process-item small{color:var(--muted);font-size:11px;margin-top:9px}
.contact{background:var(--blue);color:#fff;display:flex;justify-content:space-between;align-items:flex-end}.contact .eyebrow{color:#c5d9ff}.contact .eyebrow span{background:#fff}.contact-side{width:40%;}.contact-side>p{color:#d7e4ff;line-height:1.8;font-size:13px}.button.light{background:#fff;color:var(--blue);margin:14px 0;max-width:320px}.contact-side small{display:block;color:#bdd2ff;font-size:10px}
footer{background:#050f21;color:#fff;padding:38px max(8vw,36px);display:flex;align-items:center;justify-content:space-between}.footer-brand .brand-mark{width:34px;height:34px;font-size:21px}.footer-meta{display:flex;gap:28px;color:#71829c;font-size:10px}.footer-meta a:hover{color:#fff}
@media(max-width:900px){nav{display:none}.hero{min-height:850px;padding-top:130px;align-items:flex-start;flex-direction:column}.hero-copy{width:100%}.hero-visual{width:100%;height:350px;margin-top:35px}.globe{width:270px;height:270px}.orbit-one{width:340px}.orbit-two{width:360px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.about-panel{grid-template-columns:1fr}.about-art{min-height:350px}.about-copy{padding:55px 38px}.process-list{grid-template-columns:1fr 1fr;gap:45px 0}.contact{align-items:flex-start;gap:50px;flex-direction:column}.contact-side{width:100%}}
@media(max-width:600px){.site-header{height:72px;padding:0 20px}.brand strong{font-size:15px}.header-cta{padding:10px 12px;min-width:auto}.header-cta span{display:none}.hero{padding:125px 22px 55px;min-height:780px}.hero h1{font-size:42px}.hero-lead{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-visual{height:290px}.globe{width:220px;height:220px}.orbit{display:none}.float-card{min-width:145px;padding:9px}.card-web{left:0}.card-shop{right:0}.status-pill{left:28%;bottom:2%}.section{padding:72px 22px}.section-heading{align-items:flex-start;flex-direction:column;gap:26px}.section-heading h2,.about h2,.contact h2{font-size:35px}.about-art{min-height:290px}.big-t{font-size:150px}.about-copy{padding:45px 25px}.values{grid-template-columns:1fr}.process-list{grid-template-columns:1fr;gap:42px}.contact{gap:38px}footer{padding:35px 22px;align-items:flex-start;gap:28px;flex-direction:column}.footer-meta{flex-direction:column;gap:10px}.desktop-only{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card{transition:none}}
