:root{--ink:#122b3b;--muted:#506774;--teal:#006b61;--lime:#c4ef80;--line:#d8e2e7;--pale:#f2f6f7;--white:#fff;--navy:#102f40;--radius:12px;--max:1200px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#fff;font-synthesis:none;line-height:1.75}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #007d70;outline-offset:5px}p{margin:0 0 1.2rem}h1,h2,h3,h4{line-height:1.4;letter-spacing:-.025em;margin:0 0 1rem}h1{font-size:clamp(2.25rem,4.3vw,3.75rem);font-weight:650}h2{font-size:clamp(1.7rem,2.65vw,2.35rem);font-weight:650}h3{font-size:1.25rem;font-weight:650}ul{padding-left:1.25rem}img,svg{max-width:100%}::selection{background:var(--lime);color:var(--ink)}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.section{padding:88px 0}.pale{background:var(--pale)}.eyebrow{font-size:.875rem;color:var(--teal);font-weight:650;letter-spacing:.1em;margin-bottom:18px}.eyebrow span{margin-right:12px;color:#778a94;font-weight:450;letter-spacing:.02em}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:34px}.section-head p{max-width:490px;color:var(--muted);margin:0}.muted{color:var(--muted)}.small{font-size:.875rem}.skip-link{position:fixed;left:20px;top:-100px;background:white;padding:12px 20px;z-index:100}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{min-height:84px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{width:38px;height:38px;display:grid;place-items:center;background:var(--navy);color:var(--lime);border-radius:9px;font-size:1rem;font-weight:700;letter-spacing:-.07em}.brand img{width:42px;height:42px;object-fit:contain}.brand-name{font-size:1.2rem;font-weight:700;line-height:1.25}.brand-caption{display:block;font-size:.7rem;letter-spacing:.13em;color:var(--muted);line-height:1.8}.desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:22px;margin-left:auto}.desktop-nav a{font-size:.875rem;white-space:nowrap;position:relative;padding:10px 0}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--teal)}.desktop-nav a[aria-current=page]:after{content:'';position:absolute;bottom:1px;left:0;right:0;height:2px;background:var(--teal)}.desktop-nav .nav-contact{background:var(--navy);color:#fff;padding:10px 17px;border-radius:6px}.desktop-nav .nav-contact:hover{background:var(--teal);color:#fff}.desktop-nav .nav-contact:after{display:none}.mobile-menu{display:none;margin-left:auto;position:static}.mobile-menu summary{list-style:none;padding:10px 13px;border:1px solid var(--line);border-radius:6px;font-size:.875rem;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;left:0;right:0;top:100%;padding:16px 24px 24px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 16px 20px #102f4010;max-height:calc(100dvh - 80px);overflow:auto}.mobile-menu nav a{display:block;padding:12px;border-bottom:1px solid #edf1f3}.draft-note{background:#f5f8ee;border-bottom:1px solid #dee8cc;font-size:.8125rem;color:#4d5e34;padding:7px 0}.hero{padding:74px 0 58px}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:65px}.hero h1{margin-bottom:23px}.hero h1 em{color:var(--teal);font-style:normal}.hero .lead{font-size:1.0625rem;color:var(--muted);max-width:540px;line-height:1.95}.hero-tag{display:inline-flex;gap:12px;align-items:center;font-size:.875rem;color:var(--teal);margin-bottom:22px}.hero-tag:before{content:'';width:25px;height:2px;background:var(--teal)}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:29px 0 22px}.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:48px;padding:11px 23px;border:1px solid var(--navy);border-radius:6px;background:var(--navy);color:#fff;font-weight:550;font-size:.9375rem}.button:hover{background:var(--teal);border-color:var(--teal)}.button.secondary{background:transparent;color:var(--ink);border-color:#b4c4cd}.button.secondary:hover{border-color:var(--teal);color:var(--teal)}.button.light{color:var(--navy);background:var(--lime);border-color:var(--lime)}.text-link{font-size:.9375rem;font-weight:600;color:var(--teal);display:inline-flex;gap:18px;align-items:center}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.hero-note{font-size:.875rem;color:var(--muted)}.architecture{background:var(--navy);color:#fff;border-radius:16px;padding:29px 31px 24px;position:relative;overflow:hidden;box-shadow:0 20px 45px #14313f12}.architecture:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.architecture>*{position:relative}.diagram-top{display:flex;justify-content:space-between;gap:16px;font-size:.875rem;color:#c3d2da;border-bottom:1px solid #ffffff26;padding-bottom:16px}.diagram-top span:last-child{font-size:.75rem;letter-spacing:.1em;color:var(--lime)}.diagram-root{margin:31px auto 0;border:1px solid #93b5b7;max-width:235px;padding:18px 15px;text-align:center;border-radius:8px;background:#1b4051}.diagram-root b{display:block;font-size:1.125rem}.diagram-root small{color:#bad0d7;font-size:.8125rem}.diagram-stem{width:1px;height:25px;background:#809fac;margin:auto}.diagram-branches{display:grid;grid-template-columns:repeat(3,1fr);position:relative;gap:12px}.diagram-branches:before{content:'';height:1px;background:#809fac;position:absolute;top:0;left:16.66%;right:16.66%}.diagram-node{padding-top:24px;position:relative;text-align:center}.diagram-node:before{content:'';position:absolute;top:0;height:24px;width:1px;background:#809fac;left:50%}.diagram-node div{border:1px solid #517281;border-radius:7px;padding:16px 5px;font-size:.875rem;background:#16394a}.diagram-node svg{display:block;width:23px;height:23px;color:var(--lime);margin:0 auto 10px}.diagram-bottom{padding:18px;margin-top:21px;border:1px solid #a4cfc258;color:#d6ece5;border-radius:7px;font-size:.875rem;display:flex;justify-content:space-between;gap:10px;background:#224d50}.diagram-caption{font-size:.75rem;color:#aac1cc;margin:20px 0 0}.hero-strip{display:flex;border-top:1px solid var(--line);padding-top:28px;margin-top:54px;gap:0}.hero-strip div{flex:1;border-right:1px solid var(--line);padding:0 28px}.hero-strip div:first-child{padding-left:0}.hero-strip div:last-child{border:0}.hero-strip strong{display:block;font-size:1rem;font-weight:600}.hero-strip span{color:var(--muted);font-size:.875rem}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{background:white;padding:28px 24px;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.service-card:hover{border-color:#5b9c93;transform:translateY(-3px)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.card-top svg{width:29px;height:29px;color:var(--teal)}.card-index{font-size:.8125rem;color:#657e8b;font-family:ui-monospace,monospace}.service-card p{font-size:.9375rem;color:var(--muted);margin-bottom:22px}.service-card .tags{font-size:.8125rem;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:auto;margin-bottom:24px}.service-card .text-link{font-size:.875rem}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}.split-intro{max-width:420px}.split-intro p{color:var(--muted)}.problem-list{display:grid;gap:0}.problem-item{display:grid;grid-template-columns:38px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.problem-item:first-child{padding-top:0}.problem-item .number{font-size:.875rem;color:var(--teal);padding-top:4px;font-family:ui-monospace,monospace}.problem-item h3{font-size:1.125rem;margin-bottom:8px}.problem-item p{font-size:.9375rem;color:var(--muted);margin:0}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.process-step{padding:30px;border-right:1px solid var(--line)}.process-step:last-child{border:0}.step-label{font-size:.8125rem;letter-spacing:.09em;color:var(--teal);margin-bottom:28px}.process-step h3{font-size:1.125rem}.process-step p{font-size:.9375rem;color:var(--muted);margin:0}.case-preview{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.case-preview .case-title{padding:40px;background:var(--navy);color:white}.case-title .eyebrow{color:var(--lime)}.case-title p{color:#c2d3dd}.case-fields{padding:35px 40px;display:grid;gap:18px}.case-fields div{display:grid;grid-template-columns:90px 1fr;font-size:.9375rem;gap:20px;border-bottom:1px solid var(--line);padding-bottom:14px}.case-fields div:last-child{border:0;padding-bottom:0}.case-fields span{color:var(--muted)}.placeholder{color:#795a1e;background:#fff6df;border:1px dashed #c8a05b;border-radius:5px;padding:3px 8px;display:inline-block;font-size:.875rem}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;padding:22px 38px 22px 0;cursor:pointer;font-size:1rem;font-weight:550;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:6px;top:18px;font-size:1.4rem;color:var(--teal);font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);font-size:.9375rem;margin:0 30px 23px 0}.cta{background:var(--navy);color:white;padding:56px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta p{color:#c1d3dd;max-width:620px;margin:0}.cta h2{font-size:2rem}.site-footer{background:#0b2635;color:#c0d0d9;padding:50px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:65px}.site-footer .brand-name{color:white}.site-footer .brand-caption{color:#c0d0d9}.site-footer p{font-size:.875rem;max-width:340px;margin-top:18px}.site-footer h3{font-size:.9375rem;color:white;margin-bottom:18px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;font-size:.875rem}.footer-links a:hover{color:var(--lime)}.footer-contact{font-size:.875rem}.footer-contact div{margin-bottom:8px}.footer-bottom{margin-top:38px;padding-top:23px;border-top:1px solid #ffffff23;display:flex;justify-content:space-between;gap:24px;font-size:.75rem}.footer-bottom a:hover{text-decoration:underline}.breadcrumb{font-size:.875rem;color:var(--muted);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.breadcrumb a:hover{color:var(--teal)}.page-hero{padding:40px 0 62px;background:var(--pale);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2rem,4vw,3rem);max-width:850px}.page-hero p{color:var(--muted);max-width:760px;font-size:1.0625rem;margin-bottom:0}.page-hero .eyebrow{margin-bottom:15px}.page-hero .actions{margin-bottom:0}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.detail-card{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.detail-card p,.detail-card li{font-size:.9375rem;color:var(--muted)}.detail-card ul{margin-bottom:0}.detail-card li+li{margin-top:10px}.scope-panel{border-left:3px solid var(--teal);background:var(--pale);padding:26px 30px;margin-top:28px}.scope-panel h3{font-size:1.125rem}.scope-panel p{color:var(--muted);margin:0;font-size:.9375rem}.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:16px}.deliverable{display:flex;gap:16px;padding:20px 24px;background:#fff;border:1px solid var(--line);border-radius:8px}.deliverable span{color:var(--teal);font-family:ui-monospace,monospace}.deliverable h3{font-size:1rem;margin-bottom:5px}.deliverable p{font-size:.9375rem;color:var(--muted);margin:0}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px}.contact-list{margin:25px 0 0}.contact-list div{padding:16px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:88px 1fr;gap:20px}.contact-list dt{font-size:.9375rem;color:var(--muted)}.contact-list dd{margin:0;overflow-wrap:anywhere}.contact-list a{color:var(--teal)}.request-box{border:1px solid var(--line);padding:30px;border-radius:var(--radius);background:var(--pale)}.request-box p{font-size:.9375rem;color:var(--muted)}.request-box pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.9375rem;line-height:1.9;padding:20px;background:#fff;border:1px solid var(--line);border-radius:7px}.copy-status{min-height:1.6em;margin:10px 0 0!important;font-size:.875rem!important}.notice{padding:22px 26px;border:1px solid #d8c897;background:#fffaf0;border-radius:8px;color:#765619;font-size:.9375rem}.notice p:last-child{margin:0}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.about-value{border-top:2px solid var(--teal);padding-top:25px}.about-value p{color:var(--muted);font-size:.9375rem}.error-page{min-height:50vh;padding:100px 0;text-align:center}.only-js{display:none}.js .only-js{display:inline-flex}
@media(min-width:1400px){.hero{padding-top:90px;padding-bottom:64px}.architecture{padding:35px 35px 28px}.diagram-root{margin-top:38px}.diagram-bottom{margin-top:28px}.diagram-caption{margin-top:24px}}
@media(max-width:1100px){.desktop-nav{gap:14px}.desktop-nav a{font-size:.8125rem}.header-inner{gap:20px}.brand-caption{font-size:.625rem}.brand-name{font-size:1.1rem}.hero-grid{gap:35px}.architecture{padding:25px 22px}.services-grid{grid-template-columns:repeat(2,1fr)}.split{gap:55px}.service-card .card-top{margin-bottom:22px}.section{padding:70px 0}.process-step{padding:25px 22px}.footer-grid{gap:35px}}
@media(max-width:940px){.desktop-nav{display:none}.mobile-menu{display:block}.header-inner{min-height:74px}.hero-grid{grid-template-columns:1fr 1fr;gap:24px}.hero h1{font-size:2.5rem}.hero .lead{font-size:1rem}.hero{padding-top:48px}.diagram-top{font-size:.8125rem}.diagram-top span:last-child{display:none}.diagram-node div{font-size:.8125rem}.diagram-bottom{flex-direction:column;gap:2px}.faq-layout{gap:40px}.split{gap:40px}.contact-grid{gap:35px}.detail-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.2fr 1fr}.footer-grid>:last-child{grid-column:1/-1}.about-values{gap:22px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:70px}.brand-caption{font-size:.625rem}.brand-name{font-size:1.125rem}.brand-mark{width:34px;height:34px}.draft-note{font-size:.75rem;line-height:1.6;padding:7px 0}.hero{padding:36px 0 35px}.hero-grid{grid-template-columns:1fr;gap:27px}.hero h1{font-size:clamp(2rem,8.2vw,3.25rem);line-height:1.4}.hero-tag{margin-bottom:18px}.hero .lead{font-size:1rem;line-height:1.9}.hero .actions{margin-top:23px}.architecture{padding:24px;max-width:100%;width:100%}.diagram-top span:last-child{display:block}.diagram-bottom{flex-direction:row}.diagram-node div{font-size:.875rem}.diagram-root{margin-top:26px}.hero-strip{margin-top:30px;padding-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}.hero-strip div,.hero-strip div:first-child{padding:0;border:0}.hero-strip strong{font-size:.9375rem}.hero-strip span{font-size:.8125rem}.section{padding:52px 0}.section-head{display:block;margin-bottom:25px}.section-head p{margin-top:16px}.eyebrow{margin-bottom:12px}.services-grid{gap:13px}.service-card{padding:23px 19px}.service-card h3{font-size:1.125rem}.service-card p{font-size:.9375rem}.service-card .tags{font-size:.8125rem;line-height:1.8}.split,.faq-layout,.contact-grid{grid-template-columns:1fr;gap:27px}.split-intro{max-width:none}.process-grid{grid-template-columns:1fr 1fr}.process-step{border-bottom:1px solid var(--line)}.process-step:nth-child(2){border-right:0}.process-step:nth-child(3){border-bottom:0}.step-label{margin-bottom:18px}.case-preview{grid-template-columns:1fr}.case-preview .case-title{padding:28px}.case-fields{padding:27px}.cta .wrap{display:block}.cta h2{font-size:1.65rem}.cta .button{margin-top:25px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>:last-child{grid-column:auto}.footer-bottom{display:block;line-height:1.9}.footer-bottom>span{display:block;margin-top:10px}.page-hero{padding:26px 0 42px}.page-hero h1{font-size:2rem}.page-hero p{font-size:1rem}.breadcrumb{margin-bottom:25px}.detail-card{padding:25px}.deliverables{grid-template-columns:1fr}.scope-panel{padding:22px}.request-box{padding:24px}.about-values{grid-template-columns:1fr;gap:26px}.faq summary{padding-top:20px;padding-bottom:20px}}
@media(max-width:390px){.services-grid{grid-template-columns:1fr}.service-card .card-top{margin-bottom:18px}.diagram-branches{gap:7px}.architecture{padding:20px 16px}.diagram-bottom{font-size:.8125rem}.button{padding:10px 17px;gap:12px}.process-step{padding:22px 17px}.contact-list div{grid-template-columns:70px 1fr;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.draft-note,.cta,.actions,.site-footer,.only-js{display:none!important}.section,.page-hero{padding:25px 0}.wrap{width:100%}.architecture,.pale{background:#fff;color:#000}.service-card,.detail-card,.process-step{break-inside:avoid}.faq details p{display:block}}
