@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#172b4b;--blue:#3158cf;--lime:#d9ed8f;--muted:#5c6878;--line:#dce1e6;--paper:#f8f9f8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.wrap{width:min(1320px,calc(100% - 112px));margin:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;font-family:'Manrope',sans-serif;font-weight:800;letter-spacing:-2px;font-size:32px;line-height:1}.wordmark span{color:var(--blue)}.wordmark i{width:7px;height:7px;align-self:flex-start;margin:2px 0 0 5px;background:var(--blue)}nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:600}nav a:hover,.text-link:hover{color:var(--blue)}.nav-contact{border:1px solid var(--ink);padding:11px 22px;border-radius:3px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:52px;padding-top:67px;padding-bottom:66px}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:700;line-height:1.5;margin:0 0 29px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:'Manrope',Arial,sans-serif}h1{font-size:clamp(48px,5.15vw,78px);letter-spacing:-4.2px;line-height:1.09;font-weight:500;margin-bottom:30px}em{font-style:normal;color:var(--blue)}.hero-description{color:var(--muted);font-size:17px;line-height:1.8;max-width:470px;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:27px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 23px;font-size:14px;font-weight:600;border-radius:3px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.dark{background:var(--ink);color:#fff}.dark:hover{background:var(--blue)}.text-link{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:6px}.hero-note{margin-top:48px;display:flex;align-items:center;gap:15px;color:var(--muted);font-size:12px;line-height:1.5}.intro{background:#eef1f0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:72px 0}.intro-grid{display:grid;grid-template-columns:1fr 2fr;gap:60px}.intro .eyebrow{padding-top:9px}.intro h2{font-size:39px;font-weight:500;line-height:1.25;letter-spacing:-1.6px;margin-bottom:22px}.intro p:not(.eyebrow){max-width:630px;color:var(--muted);margin:0;font-size:16px}.section{padding-top:103px;padding-bottom:103px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:22px}h2{font-weight:500;font-size:46px;line-height:1.18;letter-spacing:-2px;margin-bottom:0}.section-heading>p{max-width:355px;color:var(--muted);margin:0 0 3px}.solution-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);margin-bottom:40px}.solution-tabs button{background:none;border:0;color:#6a7483;text-align:left;cursor:pointer;padding:18px 0 20px;font-size:12px;display:flex;gap:17px;align-items:center;border-bottom:3px solid transparent;margin-bottom:-1px}.solution-tabs span{font-size:18px;font-weight:500}.solution-tabs button[aria-selected=true]{color:var(--ink);border-color:var(--blue)}.solution-tabs button:hover{color:var(--blue)}.solution-panel{display:grid;grid-template-columns:1fr 1fr;gap:80px;min-height:370px;padding:10px 0 0}[hidden]{display:none!important}.panel-copy .eyebrow{font-size:10px;color:var(--blue);margin-bottom:21px}h3{font-size:30px;letter-spacing:-1px;font-weight:500;line-height:1.3;margin-bottom:20px}.panel-copy>p:not(.eyebrow){color:var(--muted);max-width:490px;font-size:15px}.panel-copy ul{padding:0;list-style:none;margin:23px 0 0;font-size:14px}.panel-copy li{margin:10px 0;padding-left:23px;position:relative}.panel-copy li:before{content:'+';position:absolute;left:0;color:var(--blue);font-size:18px}.workflow{background:#edf0f6;border:1px solid #e1e5ed;border-radius:5px;padding:29px 32px;align-self:center}.workflow-label{font-size:10px;letter-spacing:1.2px;font-weight:600;margin-bottom:25px;color:#657189}.question{margin-left:40px;background:var(--ink);color:white;padding:15px 18px;font-size:13px;border-radius:10px 10px 0 10px}.answer{margin:20px 20px 0 0;background:#fff;border:1px solid #e2e5ed;border-radius:8px;padding:22px;font-size:13px}.answer p{line-height:1.7;margin:16px 0}.mini-brand{font-family:'Manrope',sans-serif;color:var(--blue);font-size:21px;font-weight:800;display:flex;gap:11px;align-items:center}.mini-brand span{font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:1px;color:#66718a;font-weight:600}.source-tag{font-size:10px;color:#54637c;border-top:1px solid #e7eaf1;padding-top:12px}.workflow-foot{font-size:11px;color:#637085;margin:24px 0 0;text-align:center}.process-demo>div{display:flex;gap:21px;padding:19px 0;border-top:1px solid #d5dce8}.process-demo b{color:var(--blue);font-weight:500}.process-demo small{display:block;font-size:13px;color:var(--muted);margin-top:6px}.insights-demo>div{border-top:1px solid #d5dce8;padding:17px 0}.insights-demo span{font-size:10px;letter-spacing:1px;color:var(--blue)}.insights-demo h4{font-size:21px;font-weight:500;line-height:1.4;margin:8px 0}.approach{background:var(--ink);color:#fff}.approach .eyebrow{color:var(--lime)}.approach .section-heading>p{color:#bac4d2}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:66px}.steps article{border-top:1px solid #43536c;padding-top:25px}.step-number{color:var(--lime);font-size:13px}.steps h3{font-size:25px;margin-top:32px;margin-bottom:15px}.steps p{font-size:15px;color:#bac4d2;margin:0;max-width:330px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:100px}.principles .eyebrow{margin-bottom:22px}.principle-intro{color:var(--muted);max-width:410px;margin:28px 0}.principle-list article{display:flex;gap:25px;border-top:1px solid var(--line);padding:24px 0}.principle-list article:last-child{padding-bottom:0}.principle-list article>span{color:var(--blue);font-size:12px;padding-top:3px}.principle-list h3{font-size:21px;letter-spacing:-.5px;margin:0 0 10px}.principle-list p{font-size:14px;color:var(--muted);margin:0}.contact{background:var(--lime);padding:83px 0}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:60px}.contact .eyebrow{margin-bottom:28px}.contact h2{font-size:61px;line-height:1.1;letter-spacing:-2.8px}.contact h2 em{color:var(--ink)}.contact-grid>div>p:last-child{font-size:16px;max-width:370px;margin:28px 0 0}.contact-details{border-left:1px solid #aabb78;padding-left:64px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.contact-label{font-size:11px;letter-spacing:1.5px;margin-bottom:23px}.contact-email{font-family:'Manrope',sans-serif;font-size:29px;letter-spacing:-1px}.contact-email:hover{text-decoration:underline;text-underline-offset:7px}.contact-phone{font-size:18px;margin-top:8px}.contact-details p{font-size:14px;line-height:1.7;margin:29px 0}.light{background:var(--ink);color:white}.footer{display:flex;align-items:center;gap:35px;justify-content:space-between;padding-top:39px;padding-bottom:39px}.footer .wordmark{font-size:25px}.footer p{font-size:12px;color:var(--muted);margin:0}.footer>span{font-size:11px;color:var(--muted)}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:12px;z-index:20}.skip:focus{top:10px}
@media(min-width:1600px){.hero{padding-top:85px;padding-bottom:85px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:32px}h1{font-size:56px;letter-spacing:-3px}.hero-actions{gap:18px;flex-wrap:wrap}.solution-panel{gap:40px}.principles{gap:55px}.contact-details{padding-left:38px}.contact-email{font-size:25px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{height:85px;position:relative}.wordmark{font-size:28px}.menu-toggle{display:block;border:1px solid var(--line);background:transparent;border-radius:3px;padding:7px 14px;font-size:14px;color:var(--ink)}nav{display:none;position:absolute;top:84px;left:-20px;right:-20px;background:var(--paper);padding:22px;z-index:10;border-bottom:1px solid var(--line);gap:20px;align-items:stretch}nav.open{display:flex;flex-direction:column}.nav-contact{text-align:center}.hero{grid-template-columns:1fr;gap:36px;padding-top:42px;padding-bottom:43px}.eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:24px}h1{font-size:clamp(42px,10.5vw,65px);letter-spacing:-2.8px}.hero-description{font-size:16px}.hero-actions{gap:22px}.hero-note{margin-top:28px}.intro{padding:43px 0}.intro-grid{grid-template-columns:1fr;gap:3px}.intro h2{font-size:31px;letter-spacing:-1px}.intro p:not(.eyebrow){font-size:15px}.section{padding-top:62px;padding-bottom:62px}.section-heading{display:block;margin-bottom:30px}h2{font-size:36px;letter-spacing:-1.5px}.section-heading>p{margin-top:22px;max-width:100%;font-size:15px}.solution-tabs{gap:12px;margin-bottom:28px}.solution-tabs button{display:block;padding:12px 0}.solution-tabs span{display:block;font-size:13px;margin-top:5px}.solution-panel{grid-template-columns:1fr;gap:30px;min-height:0}.panel-copy h3{font-size:29px}.workflow{padding:24px 20px}.question{margin-left:25px}.answer{margin-right:10px}.steps{grid-template-columns:1fr;gap:28px;margin-top:36px}.steps h3{margin-top:17px}.steps p{max-width:none}.principles{grid-template-columns:1fr;gap:35px}.contact{padding:54px 0}.contact-grid{grid-template-columns:1fr;gap:38px}.contact h2{font-size:46px;letter-spacing:-2px}.contact-details{border-left:0;border-top:1px solid #aabb78;padding:29px 0 0}.contact-email{font-size:28px}.footer{flex-wrap:wrap;gap:21px;padding-top:30px;padding-bottom:30px}.footer p{order:3;width:100%;font-size:11px}.footer>span{margin-left:auto}}
.solution-explorer{display:grid;grid-template-columns:270px 1fr;gap:44px}.solution-tabs{display:flex;flex-direction:column;border-bottom:0;margin-bottom:0;gap:0}.solution-tabs button{display:flex;padding:20px 18px;border-bottom:1px solid var(--line);border-left:3px solid transparent;margin:0;gap:13px}.solution-tabs button[aria-selected=true]{border-bottom-color:var(--line);border-left-color:var(--blue);background:#edf0f7}.solution-tabs span{font-size:15px}.solution-tabs .tab-number{font-size:11px;color:var(--blue)}.solution-panel{grid-template-columns:1fr;gap:26px;padding-top:17px;min-height:600px}.panel-copy>p:not(.eyebrow){max-width:650px}.panel-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;font-size:13px}.workflow.process-demo{width:100%;padding:23px 27px;display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.workflow-label{grid-column:1/-1;margin:0}.process-demo>div{display:block;padding:17px 0 0}.process-demo b{display:block;font-size:11px;margin-bottom:9px}.process-demo>div>span{font-size:14px;font-weight:500}.process-demo small{font-size:12px;font-weight:400}.solution-boundary{font-size:12px;color:var(--muted);margin:0;padding-left:13px;border-left:2px solid var(--line)}
@media(max-width:1100px){.solution-explorer{grid-template-columns:220px 1fr;gap:28px}.solution-tabs button{padding:18px 12px}.solution-tabs span{font-size:14px}.workflow.process-demo{gap:17px;padding:22px}.panel-copy ul{grid-template-columns:1fr}.solution-panel{min-height:670px}}
@media(max-width:760px){.solution-explorer{grid-template-columns:1fr;gap:24px}.solution-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.solution-tabs button{display:flex;padding:13px 10px;text-align:left;align-items:center}.solution-tabs span{font-size:12px;margin:0}.solution-tabs .tab-number{font-size:10px}.solution-panel{min-height:0;padding:0;gap:24px}.panel-copy ul{grid-template-columns:1fr}.workflow.process-demo{grid-template-columns:1fr;gap:16px}.process-demo>div{display:flex;gap:18px}.process-demo b{padding-top:2px}.process-demo small{font-size:13px}.workflow-label{font-size:10px}}
.product-preview{background:#f0f3f9;border-bottom:1px solid #dce2ee}.preview-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.preview-choices{display:flex;gap:8px;flex-wrap:wrap}.preview-choice,.preview-enlarge{padding:12px 21px;font-size:14px;font-weight:500;border:1px solid #d2d9e6;border-radius:4px;color:var(--ink);background:transparent;cursor:pointer}.preview-choice[aria-pressed=true]{color:white;background:var(--ink);border-color:var(--ink)}.preview-choice:hover,.preview-enlarge:hover{border-color:var(--blue)}.preview-enlarge{border:0;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.screen-preview{margin:0}.screen-preview>button{width:100%;display:block;padding:0;border:1px solid #d5dce7;border-radius:7px;overflow:hidden;cursor:zoom-in;background:#fff;box-shadow:0 18px 48px #182d4b0d}.screen-preview img{width:100%;height:auto;display:block}.screen-preview figcaption{display:flex;justify-content:space-between;gap:25px;color:#5c6878;font-size:12px;margin-top:20px}.screen-preview figcaption>span:first-child{color:var(--ink);font-size:14px}.screen-preview figcaption>span:last-child{text-align:right}#preview-dialog{border:0;border-radius:8px;padding:0;max-width:min(1536px,95vw);width:95vw;max-height:94vh;background:#f8f9fb;color:var(--ink)}#preview-dialog::backdrop{background:#0e1a2ad9}.dialog-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;position:sticky;top:0;background:#f8f9fb;border-bottom:1px solid var(--line);font-size:16px;font-weight:600}.dialog-toolbar button{border:1px solid var(--line);padding:7px 16px;border-radius:4px;background:#fff;color:var(--ink);cursor:pointer;font-size:14px}#dialog-image{width:100%;height:auto;display:block}#preview-dialog>p{font-size:12px;margin:0;padding:12px 24px;color:var(--muted)}
@media(max-width:760px){.preview-bar{display:block}.preview-choices{gap:6px}.preview-choice{font-size:12px;padding:10px}.preview-enlarge{padding:12px 0 0;font-size:12px}.screen-preview figcaption{display:block;font-size:11px}.screen-preview figcaption span{display:block}.screen-preview figcaption>span:first-child{font-size:13px;margin-bottom:8px}.screen-preview figcaption>span:last-child{text-align:left}.dialog-toolbar{padding:12px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Company introduction */
.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:72px;padding-top:70px;padding-bottom:70px;align-items:center}
.hero h1{font-size:clamp(58px,6vw,88px);font-weight:550;line-height:1.07;letter-spacing:-4.8px;margin-bottom:30px}
.hero .eyebrow{font-size:12px;letter-spacing:1.8px;margin-bottom:30px}
.hero-description{max-width:490px;font-size:18px;line-height:1.75}
.hero-note{display:block;border-left:2px solid var(--blue);padding-left:16px;margin:38px 0 0;font-size:14px;line-height:1.6}
.hero-overview{background:var(--ink);color:white;padding:32px 36px 24px;border-radius:6px}
.overview-top{display:flex;justify-content:space-between;gap:12px;color:#c2cedf;font-size:12px;letter-spacing:1px;border-bottom:1px solid #46566d;padding-bottom:22px}
.hero-overview h2{font-size:31px;line-height:1.2;letter-spacing:-1.2px;margin:25px 0 26px;color:white}
.overview-stages>div{display:flex;gap:20px;border-top:1px solid #46566d;padding:21px 0}
.stage-index{font-size:12px;color:var(--lime);padding-top:3px}
.overview-stages h3{font-size:18px;font-weight:600;letter-spacing:-.3px;margin:0 0 5px}
.overview-stages p{font-size:14px;line-height:1.6;color:#c2cedf;margin:0}
.overview-footer{margin:0;border-top:1px solid #46566d;padding-top:20px;font-size:12px;display:flex;align-items:center;gap:12px;color:#c2cedf}
.overview-footer span{color:var(--lime);font-size:20px;line-height:1}
.company-facts{display:grid;grid-template-columns:1.1fr 1fr 1fr .8fr;border-top:1px solid var(--line);padding:34px 0 40px;gap:30px;align-items:center}
.facts-intro .eyebrow{font-size:11px;margin-bottom:10px}
.facts-intro>p:last-child{font-size:16px;line-height:1.5;margin:0;color:var(--muted)}
.fact{border-left:1px solid var(--line);padding-left:34px;display:flex;flex-direction:column;gap:10px}
.fact strong{font-family:'Manrope',sans-serif;font-size:40px;font-weight:500;line-height:1.2;letter-spacing:-1.7px;white-space:nowrap}
.fact strong>span{color:var(--blue)}
.fact>span{font-size:14px;color:var(--muted)}
@media(max-width:1100px){.hero{gap:35px}.hero h1{font-size:64px;letter-spacing:-3.5px}.hero-overview{padding:26px}.hero-overview h2{font-size:27px}.fact{padding-left:23px}.fact strong{font-size:31px}.company-facts{gap:20px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;gap:38px;padding-top:40px;padding-bottom:40px}.hero h1{font-size:clamp(46px,10.5vw,68px);letter-spacing:-2.8px}.hero .eyebrow{font-size:11px;letter-spacing:1.2px;margin-bottom:24px}.hero-description{font-size:17px}.hero-note{margin-top:27px}.hero-overview{padding:26px}.hero-overview h2{font-size:30px}.company-facts{grid-template-columns:1fr 1fr;gap:26px 16px;padding:28px 0 38px}.fact{padding-left:18px}.fact strong{font-size:31px}.fact>span{font-size:13px}.facts-intro>p:last-child{font-size:14px}.facts-intro .eyebrow{font-size:10px}}


/* Editorial hierarchy and readable service details */
.intro .about-kicker{font-family:'Manrope',Arial,sans-serif;font-size:24px;line-height:1.4;letter-spacing:-.7px;color:var(--ink)}
.intro p:not(.eyebrow):not(.about-kicker){font-size:17px;line-height:1.8;margin:0 0 18px}
.intro .text-link{display:inline-block;margin-top:8px}
.panel-copy>p:not(.eyebrow),.steps p,.principle-list p{font-size:16px;line-height:1.75}
.panel-copy ul{font-size:14px;line-height:1.7}
.panel-copy .eyebrow,.workflow-label,.facts-intro .eyebrow,.contact-label{font-size:12px}
.process-demo small{font-size:14px;line-height:1.6}
.workflow.process-demo{gap:23px;padding:27px}
.solution-boundary{font-size:13px;line-height:1.7}
.footer p,.footer>span{font-size:12px}
@media(max-width:760px){
  .eyebrow,.hero .eyebrow,.facts-intro .eyebrow,.workflow-label{font-size:12px;letter-spacing:1px}
  .intro .about-kicker{display:none}
  .intro p:not(.eyebrow):not(.about-kicker),.section-heading>p{font-size:16px}
  .solution-tabs span,.preview-choice,.preview-enlarge,.fact>span{font-size:14px}
  .solution-tabs .tab-number{font-size:12px}
  .solution-tabs button{min-height:66px;padding:13px 8px;gap:9px}
  .preview-choice{padding:10px 12px}
  .workflow.process-demo{padding:23px;gap:16px}
  .screen-preview figcaption,.screen-preview figcaption>span:first-child{font-size:12px}
}
