/* The homepage uses a semantic digital data scene and translucent foreground layers. */
body[data-page=home]{--campaign-top-rgb:251 253 255}
body[data-page=home] .container{width:min(1440px,91%)}
.hero-campaign{position:relative;--campaign-top-fade:clamp(118px,10vw,180px);isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#f8fbff,#f0f7fc 52%,#f4f9ff);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
.hero-campaign-picture{position:absolute;inset:-35px 0 0;z-index:-3;display:block;overflow:hidden;mask-image:linear-gradient(#000 74%,transparent);-webkit-mask-image:linear-gradient(#000 74%,transparent)}
.hero-campaign-picture img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;opacity:.82;filter:saturate(.76) contrast(.94);animation:campaignImageIn 1.1s ease-out both}
.hero-campaign:before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 0% 75%,#b8d9f433,transparent 45%),linear-gradient(90deg,#f8fbffb3,#f8fbff52 38%,transparent 58%)}
/* Start the hero at the header's color, then reveal the image over one continuous fade. */
.hero-campaign:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:
    linear-gradient(rgb(var(--campaign-top-rgb)),
      rgb(var(--campaign-top-rgb) / .96) 10%,
      rgb(var(--campaign-top-rgb) / .82) 27%,
      rgb(var(--campaign-top-rgb) / .52) 53%,
      rgb(var(--campaign-top-rgb) / .17) 81%, rgb(var(--campaign-top-rgb) / 0)),
    var(--campaign-bottom-fade,linear-gradient(transparent 65%,#ffffffbd 96%,#fff));
  background-size:100% var(--campaign-top-fade),100% 100%;
  background-repeat:no-repeat;
}
body[data-page=home] .site-header:after{height:26px;bottom:-26px;background:linear-gradient(rgba(250,252,255,.35),transparent)}
body[data-page=home] .site-header:not(.scrolled,:has(.mega-shell.is-open,.mobile-nav:not([hidden]))){background:rgb(var(--campaign-top-rgb))}
body[data-page=home] .site-header:not(.scrolled,:has(.mega-shell.is-open,.mobile-nav:not([hidden]))):after{display:none}
.campaign-main{display:flex;align-items:center;min-height:452px;padding:38px 0 35px;position:relative}
.campaign-main .hero-copy{width:52%;max-width:630px;position:relative;z-index:1}
.campaign-kicker{font-size:11px;font-weight:500;line-height:1.6;letter-spacing:.09em;color:#6d8297;margin:0 0 23px}
.campaign-main .hero-copy h1{font-family:inherit;font-size:clamp(38px,3.3vw,50px);line-height:1.4;letter-spacing:-.025em;font-weight:600;margin:0 0 28px}
.campaign-main h1 .campaign-title-line{display:block;color:#223e59}.campaign-main h1 .campaign-title-accent{color:#367fb3}
.campaign-message{max-width:470px}
.campaign-main .hero-subtitle{font-size:15px;font-weight:500;line-height:1.8;color:#354d63;margin:0 0 14px}
.campaign-main .hero-description{font-size:12px;font-weight:400;line-height:2;color:#6b7c8d;margin:0}
.campaign-conversion{margin-top:29px}
.campaign-main .hero-actions{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:7px;margin:0;padding:6px;border-radius:18px;background:linear-gradient(120deg,#ffffffe8,#f7fbff91);box-shadow:inset 0 1px 0 #fff,0 10px 28px -17px #577fa840;backdrop-filter:blur(12px)}
.campaign-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;font-size:12px;font-weight:500;line-height:1.6;position:relative;transition:transform .35s,box-shadow .35s,color .35s,background .35s}
.campaign-cta-primary{gap:24px;padding:12px 21px 12px 22px;border-radius:12px;background:linear-gradient(115deg,#397ad0,#3e94bc);color:#fff;box-shadow:inset 0 1px 0 #d3ecff66,0 5px 12px -8px #2173c780;overflow:hidden}
.campaign-cta-glyph{display:grid;place-items:center;width:17px;height:20px;color:#e6f5ff}.campaign-cta-glyph svg{width:18px;height:18px;transition:transform .35s}
.campaign-cta-primary:hover,.campaign-cta-primary:focus-visible{color:#fff;transform:translateY(-1px);box-shadow:0 8px 18px -10px #367dcc88;background:linear-gradient(115deg,#3474c7,#438fb6)}
.campaign-cta-primary:hover .campaign-cta-glyph svg,.campaign-cta-primary:focus-visible .campaign-cta-glyph svg{transform:translateX(3px)}
.campaign-cta-secondary{gap:9px;color:#476b8e;padding:12px 18px;border-radius:12px}.campaign-cta-secondary>svg{width:17px;height:17px;opacity:.85}.campaign-cta-secondary>span{position:relative}
.campaign-cta-secondary>span:after{content:"";position:absolute;height:1px;bottom:-5px;left:0;right:0;background:linear-gradient(90deg,#547a9a,transparent);transform:scaleX(.35);opacity:0;transform-origin:left;transition:transform .35s,opacity .35s}
.campaign-cta-secondary:hover,.campaign-cta-secondary:focus-visible{background:#e4f0fb8c;color:#285f8d}.campaign-cta-secondary:hover>span:after,.campaign-cta-secondary:focus-visible>span:after{transform:scaleX(1);opacity:1}
.campaign-cta:focus-visible{outline:2px solid #5d92ba;outline-offset:3px}
.campaign-main .hero-note{font-size:10px;font-weight:400;line-height:1.6;color:#7d8e9f;margin:18px 0 0;letter-spacing:.01em}

/* Three independent glass surfaces float over the scene; there is no opaque group backdrop. */
.campaign-journey{padding-bottom:30px;position:relative}
.journey-surface{position:relative;background:none;box-shadow:none}
.campaign-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0}
.campaign-path{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:23px 26px 22px;border:0;border-radius:17px;background:linear-gradient(125deg,#ffffff8c,#ffffff29 65%,#d4eafa33);box-shadow:inset 0 1px 0 #ffffffe6,0 16px 26px -25px #2b638a66;backdrop-filter:blur(7px);color:#293e51;transition:transform .4s,box-shadow .4s,background .4s}
.campaign-path:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,#e3effc80,#f9fcffb3);border-radius:inherit;opacity:0;transition:opacity .4s;pointer-events:none}
.campaign-path-tag{display:flex;align-items:center;gap:9px;font-size:10px;line-height:1.6;font-weight:400;color:#66839c;margin-bottom:9px}.campaign-path-tag>span{font-family:Arial,sans-serif;font-size:10px;font-variant-numeric:tabular-nums;color:#88a1b5}
.campaign-path h3{font-size:18px;line-height:1.5;font-weight:600;letter-spacing:0;color:#2b4b66;margin:0;transition:color .35s}
.campaign-path>p{font-size:11px;line-height:1.8;color:#6a8093;margin:10px 0 18px;min-height:20px;flex:1}
.campaign-path-action{font-size:11px;line-height:1.65;color:#3c7baa;white-space:nowrap;position:relative;font-weight:500;padding-bottom:3px}
.campaign-path-action:after{content:"";height:1px;position:absolute;left:0;bottom:0;width:100%;background:linear-gradient(90deg,#36739e,transparent);opacity:.2;transform:scaleX(.35);transform-origin:left;transition:opacity .35s,transform .4s}
.campaign-path:hover:before,.campaign-path:focus-visible:before{opacity:1}.campaign-path:hover,.campaign-path:focus-visible{transform:translateY(-4px);box-shadow:inset 0 1px 0 #fff,0 18px 30px -22px #335d8c4d}.campaign-path:hover h3,.campaign-path:focus-visible h3{color:#246ea3}.campaign-path:hover .campaign-path-action:after,.campaign-path:focus-visible .campaign-path-action:after{opacity:1;transform:scaleX(1)}
.campaign-path[data-glow]:after{z-index:-1;border-radius:inherit;background:radial-gradient(220px circle at var(--glow-x) var(--glow-y),#9bcdf547,transparent 75%)}.campaign-path:focus-visible:after{opacity:1}.campaign-path:focus-visible{outline:2px solid #6394ba;outline-offset:3px}

@keyframes campaignImageIn{from{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.campaign-main{min-height:480px;padding-block:44px 40px}.campaign-main .hero-copy h1{font-size:50px}.campaign-path{padding:24px 30px}.campaign-path>p{font-size:12px}}
@media(max-width:1100px){.campaign-main .hero-copy{width:58%}.campaign-main .hero-copy h1{font-size:39px}.campaign-path{padding:21px}.campaign-path h3{font-size:17px}.campaign-path>p{font-size:10px;min-height:36px}.campaign-paths{gap:14px}}
@media(max-width:800px){.campaign-main{min-height:440px;padding-block:32px}.campaign-main .hero-copy{width:75%}.hero-campaign-picture{left:-35%;right:-10%}.campaign-paths{gap:12px}.campaign-path{padding:19px 17px}.campaign-path h3{font-size:16px}.campaign-path-action{font-size:10px}.hero-campaign+#capabilities{padding-top:50px}}
@media(max-width:560px){
body[data-page=home] .container{width:calc(100% - 40px)}
.campaign-main{min-height:0;padding:30px 0 29px}.campaign-main .hero-copy{width:100%}.campaign-kicker{font-size:10px;margin-bottom:19px}.campaign-main .hero-copy h1{font-size:32px;line-height:1.45;margin-bottom:25px;letter-spacing:-.035em}.campaign-main .hero-subtitle{font-size:13px;margin-bottom:12px}.campaign-main .hero-description{font-size:11px;line-height:2}.campaign-conversion{margin-top:23px}.campaign-main .hero-actions{width:100%;gap:4px;padding:5px;border-radius:16px}.campaign-cta{font-size:11px;min-height:44px}.campaign-cta-primary{padding:11px 13px;gap:12px;flex:1.1}.campaign-cta-secondary{gap:7px;padding:11px 10px;flex:1}.campaign-cta-secondary>svg{width:15px}.campaign-main .hero-note{font-size:9px;margin-top:16px}
.hero-campaign-picture{left:-100%;right:-60%;height:550px;bottom:auto;opacity:.65;mask-image:linear-gradient(#000 55%,transparent);-webkit-mask-image:linear-gradient(#000 55%,transparent)}.hero-campaign:before{background:linear-gradient(90deg,#f8fbffcc,#f8fbff77 65%,#f8fbff33)}.hero-campaign{--campaign-top-fade:104px;--campaign-bottom-fade:linear-gradient(transparent 35%,#fff 92%)}
.campaign-journey{padding-bottom:24px}.campaign-paths{grid-template-columns:1fr;gap:12px}.campaign-path{display:grid;grid-template-columns:108px minmax(0,1fr);gap:5px 12px;padding:17px 18px;border-radius:14px;background:linear-gradient(110deg,#ffffffb3,#eaf4fc66);box-shadow:inset 0 1px 0 #fff,0 10px 24px -21px #315e8759}.campaign-path-tag{grid-column:1;grid-row:1;font-size:9px;gap:7px;margin:0}.campaign-path h3{grid-column:1;grid-row:2;font-size:15px;align-self:start}.campaign-path>p{grid-column:2;grid-row:1/3;margin:0;font-size:10px;min-height:36px}.campaign-path-action{grid-column:2;grid-row:3;font-size:10px;justify-self:start}

}
@media(max-width:360px){.campaign-main .hero-copy h1{font-size:29px}.campaign-main .hero-subtitle{font-size:12px}.campaign-main .hero-description{font-size:10px}.campaign-cta{font-size:10px}.campaign-cta-primary{gap:7px;padding-inline:11px}.campaign-cta-secondary{gap:5px;padding-inline:8px}.campaign-path{grid-template-columns:98px minmax(0,1fr);gap:5px 9px;padding:16px}.campaign-path h3{font-size:14px}}
@media(prefers-reduced-motion:reduce){.hero-campaign-picture img{animation:none}.campaign-cta,.campaign-cta-glyph svg,.campaign-cta-secondary>span:after,.campaign-path,.campaign-path:before,.campaign-path h3,.campaign-path-action:after,#capabilities .capability,#capabilities .cap-background,#capabilities .cap-link:after{transition:none}.campaign-cta-primary:hover,.campaign-cta-primary:focus-visible,.campaign-cta-primary:hover .campaign-cta-glyph svg,.campaign-cta-primary:focus-visible .campaign-cta-glyph svg,.campaign-path:hover,.campaign-path:focus-visible,#capabilities .capability:hover,#capabilities .capability:focus-visible,#capabilities .capability:hover .cap-background,#capabilities .capability:focus-visible .cap-background{transform:none}}
