
:root{--navy:#163b51;--blue:#176eaa;--ink:#172a35;--muted:#637581;--line:#dfe7e9;--bg:#f6f8f8;--paper:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:15px/1.85 'Noto Sans SC','PingFang SC',system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.eyebrow{color:var(--blue);font-weight:700;letter-spacing:.16em;font-size:11px;text-transform:uppercase}.tagline{font-size:12px;color:#7591a2}.topline{height:3px;background:var(--blue)}header{position:sticky;top:0;background:#fffffff0;backdrop-filter:blur(12px);z-index:100;border-bottom:1px solid #e7ebec}.head{height:78px;display:flex;gap:36px;align-items:center}.logo{display:flex;align-items:center;gap:12px;white-space:nowrap}.mark{height:36px;width:36px;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:23px;font-family:Georgia,serif}.logo strong{display:block;font-size:18px;letter-spacing:.13em;line-height:1.4}.logo small{display:block;color:#657985;font-size:9px;letter-spacing:1px;line-height:1.4}.nav{display:flex;gap:24px;align-items:center;margin-left:auto;font-size:12px;font-weight:600}.nav a:hover,.nav a.active{color:var(--blue)}.nav .navcta{background:var(--navy);color:white;padding:10px 16px}.nav .navcta:hover{background:var(--blue);color:#fff}.hamb{display:none;margin-left:auto;background:none;border:0;font-size:24px;color:var(--ink)}h1,h2{font-family:'Noto Serif SC','Songti SC',serif;letter-spacing:-.025em;font-weight:600;line-height:1.43}h1{font-size:clamp(43px,4.8vw,69px);margin:17px 0 25px}h2{font-size:clamp(29px,3.3vw,43px);margin:12px 0 20px}h3{font-weight:600;line-height:1.45}p{margin-top:0}.hero{background:#f7f9f9;border-bottom:1px solid #e8eeef}.hero .wrap{padding:88px 0 102px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:64px;align-items:center}.hero h1 em{color:var(--blue);font-style:normal}.lead{font-size:16px;line-height:2.06;color:#586d79;max-width:590px}.btns{display:flex;gap:12px;margin:32px 0 18px;flex-wrap:wrap}.btn{border:1px solid var(--blue);background:var(--blue);color:#fff;font-size:13px;font-weight:700;padding:13px 23px;display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;transition:background .2s,transform .2s}.btn:hover{background:#135a89;transform:translateY(-1px)}.btn.light{background:transparent;color:var(--navy);border-color:#aebec8}.btn.light:hover{background:#edf4f7}.smallnote{font-size:12px;color:#7a8e99;line-height:1.85}.sheet{background:#fff;border:1px solid var(--line);box-shadow:0 20px 55px #2542520d}.sheethead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:20px 25px;border-bottom:1px solid var(--line)}.sheethead strong{font-size:14px}.sheethead span{color:#75909d;font-size:11px}.sheetbody{padding:12px 25px 20px}.sheetrow{display:grid;grid-template-columns:100px 1fr;gap:14px;border-bottom:1px solid #ebeff1;padding:17px 0;font-size:13px}.sheetrow:last-child{border:0}.sheetrow label{color:#7d919a}.pills{display:flex;flex-wrap:wrap;gap:7px}.pills span{border:1px solid #d9e5e9;background:#f7fafb;padding:4px 9px;font-size:11px}.sheetfoot{background:#f2f6f7;padding:15px 25px;color:#69808d;font-size:11px}.section{padding:102px 0}.section.gray{background:var(--bg)}.headrow{display:flex;justify-content:space-between;align-items:end;gap:42px;margin-bottom:45px}.headrow>div{max-width:650px}.headrow>p{max-width:400px;color:var(--muted);font-size:14px;line-height:2}.cols3{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cols3 article{padding:34px 29px 38px 0}.cols3 article+article{border-left:1px solid var(--line);padding-left:29px}.num{font-size:12px;letter-spacing:.08em;color:var(--blue);font-weight:700}.cols3 h3{font-size:22px;margin:23px 0 14px}.cols3 p,.cols3 small{color:var(--muted);font-size:13px;line-height:2}.cols3 a{font-size:13px;font-weight:700;color:var(--blue)}.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.band{background:var(--navy);color:#fff;padding:75px 0}.band h2{color:#fff;margin-bottom:14px}.band p{color:#d1dfe5}.band .btn{background:#fff;color:var(--navy);border-color:#fff}.matrix{background:white;border:1px solid var(--line)}.matrix .mhead{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);font-size:13px}.matrix .mhead span{font-size:11px;color:#77909d}.matrix-body{padding:20px 23px}.barline{margin-bottom:20px}.barline:last-child{margin-bottom:0}.barline-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:7px}.bartrack{height:7px;background:#e8eef0}.barfill{height:7px;background:var(--blue)}.tablebox{overflow:auto;background:white;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;min-width:690px;font-size:12px}th{background:#eff4f5;color:#56707d;font-weight:600}th,td{text-align:left;padding:14px 17px;border-bottom:1px solid #e8eef0;white-space:nowrap}tr:last-child td{border:0}td{color:#35505e}.statline{display:flex;gap:24px;flex-wrap:wrap;border:1px solid var(--line);padding:27px 30px;background:white}.statline div{flex:1;min-width:100px}.statline strong{display:block;font-size:33px;line-height:1.4;font-weight:600;color:var(--navy)}.statline small{color:var(--muted);font-size:12px}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.tabs button{border:1px solid var(--line);padding:10px 16px;background:#fff;color:#5f7380;font-size:12px}.tabs button[aria-selected=true]{background:var(--navy);color:#fff}.sample-panel[hidden]{display:none}.chiprow{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.chiprow span{font-size:12px;border:1px solid var(--line);background:#fff;padding:7px 11px;color:#57707d}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.steps article{border-top:1px solid #cbd9df;padding-top:25px}.steps b{display:block;color:#9fb0b9;font:36px Georgia,serif}.steps h3{font-size:17px;margin:12px 0}.steps p{font-size:13px;color:var(--muted)}.quote{border-left:3px solid var(--blue);padding:0 0 0 20px;color:#526976;font-size:14px}.breadcrumb{font-size:12px;color:#8596a0;margin-bottom:30px}.featuregrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.feature{border:1px solid var(--line);padding:27px 28px;background:white}.feature strong{display:block;font-size:17px;margin-bottom:11px}.feature p{font-size:13px;color:var(--muted);margin:0}.contact{background:#edf3f5;padding:100px 0}.contactgrid{display:grid;grid-template-columns:.82fr 1.18fr;background:#fff}.contact-copy{padding:52px 45px;background:var(--navy);color:#fff}.contact-copy h2{color:#fff}.contact-copy p{font-size:14px;color:#d0dce2;line-height:2}.contact-note{margin-top:40px;border-top:1px solid #476678;padding-top:20px;font-size:12px;color:#b6cad4}.formbox{padding:50px}.formbox h3{font-size:20px;margin:0 0 25px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.formgrid label{display:block;font-size:12px;font-weight:600;margin-bottom:6px}.formgrid .wide{grid-column:1/-1}.formgrid input,.formgrid textarea,.formgrid select{width:100%;padding:12px;border:1px solid #d5e0e5;background:white;border-radius:0;outline-color:var(--blue);font-size:13px;color:var(--ink)}.formgrid textarea{height:125px;resize:vertical}.notice{font-size:11px;color:#8797a0;line-height:1.8;margin:17px 0}.msg{font-size:12px;color:var(--navy);margin-top:13px;min-height:22px}.wechatbox{border:1px dashed #aec2cc;margin-top:18px;padding:14px;font-size:12px;color:#647e8b;background:#f9fbfc}footer{background:#132e40;color:#fff;padding:52px 0 29px}.footgrid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:30px}.footgrid strong{font-size:18px}.footgrid small{color:#9fb7c4;display:block;margin-top:10px;font-size:11px}.footgrid h4{font-size:13px;margin:0 0 16px}.footgrid a{font-size:12px;color:#bdced7;display:block;margin:8px 0}.footbottom{border-top:1px solid #355363;margin-top:35px;padding-top:20px;color:#92aab8;font-size:11px}.page-lead{font-size:16px;line-height:2.1;color:var(--muted)}.case{display:grid;grid-template-columns:1fr 1fr;gap:24px}.case article{background:white;border:1px solid var(--line);padding:32px}.case h3{font-size:19px}.case p{color:var(--muted);font-size:13px}.anchor{scroll-margin-top:92px}.legal{font-size:12px;color:var(--muted);line-height:2}.hidden{display:none!important}
@media(max-width:940px){.wrap{width:calc(100% - 42px)}.head{height:70px}.hamb{display:block}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 22px;flex-direction:column;align-items:stretch;gap:15px}.nav.open{display:flex}.hero-grid,.split,.contactgrid{grid-template-columns:1fr}.hero .wrap{padding:66px 0}.headrow{display:block}.headrow>p{max-width:650px}.section,.contact{padding:75px 0}.cols3{grid-template-columns:1fr}.cols3 article,.cols3 article+article{padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.steps{grid-template-columns:repeat(2,1fr)}.footgrid{grid-template-columns:1fr 1fr}.contact-copy,.formbox{padding:35px}}@media(max-width:580px){.wrap{width:calc(100% - 34px)}h1{font-size:40px}h2{font-size:30px}.hero .wrap{padding:50px 0 65px}.hero-grid{gap:32px}.section,.contact{padding:60px 0}.featuregrid,.case,.formgrid,.steps{grid-template-columns:1fr}.formgrid .wide{grid-column:auto}.sheetrow{grid-template-columns:83px 1fr}.sheetbody{padding:12px 15px}.sheethead{padding:18px 15px}.footgrid{grid-template-columns:1fr 1fr;gap:20px}.footgrid>div:first-child{grid-column:1/-1}.statline{padding:20px}.statline strong{font-size:27px}}

/* v2.1 brand, business contact and accessibility additions */
.contact-details{display:grid;gap:18px;margin-top:24px}.qr-module{display:flex;align-items:center;gap:18px;background:#fff;border-radius:7px;padding:16px;color:#1b3440;max-width:440px}.qr-module img{width:150px;height:150px;object-fit:contain;background:white;image-rendering:auto}.qr-module strong,.qr-module span{display:block}.qr-module strong{font-size:17px;margin-bottom:7px}.qr-module span{font-size:12px;color:#576d7a;line-height:1.6}.contact-methods{display:grid;gap:8px;max-width:440px}.contact-methods a,.contact-methods>div{display:grid;gap:2px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.2);overflow-wrap:anywhere}.contact-methods span{font-size:12px;color:#b9ccd8}.contact-methods strong{font-size:14px;color:#fff;font-weight:500}.footer-contacts{display:grid;gap:4px}.footer-contacts a{font-size:12px;overflow-wrap:anywhere}.company-intro{max-width:860px}.company-intro h2{margin:6px 0 20px}.company-intro p{margin:0 0 15px;line-height:2.05;color:#435763}.company-intro .motto{font-weight:700;color:#176eaa;margin-top:20px}.address-details{margin-top:28px;line-height:2.2;color:#4e626e;overflow-wrap:anywhere}.address-details a{text-decoration:underline}.home-brand-note{font-size:13px;color:#6e8390;margin-top:14px}.btn-alt{margin-left:10px;background:#fff!important;color:#163b51!important;border:1px solid #9eb0ba!important}.qr-module img{aspect-ratio:1/1}@media(max-width:700px){.qr-module{flex-direction:column;align-items:flex-start}.qr-module img{width:170px;height:170px}.btn-alt{margin:10px 0 0;width:100%}}

input[type="checkbox"]{width:auto;margin-inline-end:.35em}
input:not([type="checkbox"]),select,textarea{min-width:0;max-width:100%;font-size:16px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #258ac8;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Site-wide navigation */
.nav{gap:18px;white-space:nowrap}
.nav-group{position:relative}
.nav-group button{display:flex;align-items:center;gap:8px;border:0;background:none;padding:13px 0;color:inherit;font-weight:700}
.nav-group button:hover,.nav-group button[aria-expanded="true"]{color:var(--blue)}
.chevron{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-3px;transition:transform .18s}
[aria-expanded="true"]>.chevron{transform:rotate(225deg);margin-top:3px}
.nav-panel{position:absolute;top:100%;left:0;min-width:248px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:7px;box-shadow:0 14px 36px #163b5124}
.nav-panel:not([hidden]){animation:nav-enter .18s ease-out}
.nav-panel a{display:flex;align-items:center;gap:11px;padding:10px;border-radius:9px}
.nav-panel a:hover,.nav-panel a:focus-visible,.nav-panel a.active{background:#eef6fa}
.nav-panel strong,.nav-panel small{display:block}
.nav-panel small{font-size:11px;font-weight:400;color:#526b79}
.nav-icon,.portal-icon{display:grid;place-items:center;background:#e8f3fa;color:#176eaa;border-radius:12px;width:40px;height:40px;flex:none}
.nav-icon svg,.portal-icon svg,.pipeline svg{width:23px;height:23px}
@keyframes nav-enter{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}

/* Homepage and page transitions */
.portal-hero{overflow:hidden;background:radial-gradient(ellipse at 82% 28%,#dceefb,transparent 51%),#f4f8fc;border-bottom:1px solid #e1eaf1}
.portal-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:52px;align-items:center;padding-block:clamp(56px,9vw,125px)}
.portal h1{font-size:clamp(38px,5.3vw,72px);line-height:1.22;color:#12344b}
.portal-intro p{font-size:16px;color:#486271;max-width:37ch}
.portal .btn,.nav .navcta{border-radius:9px}
.pipeline{position:relative;min-width:0;border-radius:22px;background:linear-gradient(140deg,#173952,#101f36);padding:clamp(18px,3.4vw,34px);color:#eef9ff;box-shadow:0 28px 65px #17395236;animation:page-enter .65s ease-out both}
.pipeline-header{display:flex;align-items:center;gap:8px;border-bottom:1px solid #ffffff28;padding-bottom:14px;font-weight:700}
.pipeline-header small{margin-left:auto;color:#b8d0df;font-size:9px;letter-spacing:.12em}
.pipeline-dot{width:8px;height:8px;border-radius:50%;background:#6de2db;box-shadow:0 0 14px #6de2db}
.pipeline-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0}
.pipeline-track div{display:grid;justify-items:center;gap:8px;text-align:center;padding:14px 4px;background:#ffffff0d;border:1px solid #ffffff2b;border-radius:10px;font-size:12px}
.pipeline-track svg{color:#88d9ff}
.pipeline-bars{display:grid;grid-template-columns:repeat(8,1fr);align-items:end;gap:8px;height:75px}
.pipeline-bars i{height:40%;background:linear-gradient(#7ae0ef,#2b76b4);border-radius:5px 5px 0 0;transform-origin:bottom;animation:bar-rise .75s .15s ease-out both}
.pipeline-bars i:nth-child(3n+1){height:62%;animation-delay:.25s}
.pipeline-bars i:nth-child(3n+2){height:85%;animation-delay:.35s}
.pipeline-bars i:last-child{height:100%;animation-delay:.45s}
@keyframes bar-rise{from{transform:scaleY(.12)}to{transform:scaleY(1)}}
@keyframes page-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.portal-intro,main>.hero .wrap{animation:page-enter .45s ease-out both}
.portal-section{padding:clamp(44px,7vw,82px) 0}
.portal-alt{background:#f5f8fb}
.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.portal-card{position:relative;display:block;padding:26px 46px 26px 25px;border:1px solid #dce7ee;border-radius:15px;background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}
.portal-card:hover,.portal-card:focus-visible{transform:translateY(-4px);border-color:#78b7d6;box-shadow:0 12px 26px #204e671a}
.portal-card h3{margin:14px 0 4px;color:#143950}
.portal-card p{margin:0;color:#486271}
.portal-arrow{position:absolute;top:25px;right:24px;color:#176eaa;font-weight:700}
.portal-contact{display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
@media(max-width:940px){
  .nav{max-height:calc(100dvh - 70px);overflow:auto;gap:6px;white-space:normal}
  .nav-group button{width:100%;justify-content:space-between;padding:10px 0}
  .nav-panel{position:static;min-width:0;box-shadow:none}
  .portal-hero-grid{gap:25px}
}
@media(max-width:680px){
  .portal-hero-grid,.portal-grid{grid-template-columns:1fr}
}

/* Wide navigation, aligned to the same grid as the page. */
.head{height:76px}
.logo{gap:10px}
.mark{background:transparent;color:#1663c6;width:32px;height:32px}
.mark svg{width:32px;height:32px}
.logo strong{letter-spacing:.06em}
.nav{gap:clamp(15px,3vw,46px);font-size:15px}
.nav-group button{font-weight:500}
.nav-panel{border-radius:0}
.mega-layout{display:grid;grid-template-columns:minmax(145px,1fr) 3fr;gap:32px;padding-block:25px}
.mega-intro strong{font-size:18px}
.mega-intro p{font-size:12px;color:#526b79;margin:5px 0 0}
.mega-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px}
.mega-links a{white-space:normal;border:1px solid #e6edf2;justify-content:space-between;align-items:start;padding:14px}
.mega-links small{margin-top:4px}
.mega-arrow{color:#176eaa}
@media(min-width:941px){
  .head{gap:clamp(24px,5vw,78px)}
  .nav{margin-left:0;flex:1;height:100%;justify-content:space-between}
  .nav-group{position:static;height:100%;display:flex;align-items:center}
  .nav-group button{height:100%;padding-inline:6px}
  .nav-panel{inset:100% 0 auto;min-width:0;padding:0;border:0;border-bottom:1px solid var(--line);white-space:normal;animation-name:mega-enter}
}
@keyframes mega-enter{from{opacity:0}to{opacity:1}}
@media(max-width:940px){
  .head{height:70px}
  .nav{gap:8px}
  .mega-layout{width:100%;display:block;padding:0}
  .mega-intro{display:none}
  .mega-links{grid-template-columns:1fr}
}

/* Interactive schema preview. */
.portal-hero{background:radial-gradient(ellipse at 8% 18%,#e8f6ee,transparent 55%),radial-gradient(ellipse at 94% 50%,#e9ebfa,transparent 65%),#fafcfe}
.schema-demo{min-width:0;background:#fff;border:1px solid #dbe6ef;border-radius:16px;padding:clamp(17px,3vw,30px);box-shadow:0 20px 55px #1b365918;animation:page-enter .48s ease-out both}
.schema-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#173952;font-weight:700}
.schema-top small{font-size:11px;background:#edf3fa;border-radius:999px;padding:2px 9px;color:#486271}
.schema-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;background:#f2f5fa;border-radius:9px;padding:4px;margin:16px 0}
.schema-tabs button{color:#415a70;border:1px solid transparent;background:transparent;border-radius:6px;font-size:13px;padding:8px 2px}
.schema-tabs button[aria-pressed="true"]{color:#125caa;background:white;border-color:#dbe6ef;font-weight:700}
.schema-panel:not([hidden]){animation:page-enter .26s ease-out both}
.schema-panel h2{font-family:inherit;font-weight:700;font-size:16px;margin:0}
.schema-panel dl{margin:9px 0 12px}
.schema-panel dl div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e6edf2;padding:7px 2px;font-size:13px}
.schema-panel dd{margin:0;color:#526b79}
.schema-panel a{color:#125caa;font-weight:700;font-size:13px}
.portal-card{border-top:2px solid #9fc5e3}
.portal-card h3{margin-top:0}
