@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#142433;--teal:#176f7b;--brand:#20808d;--text:#516573;--line:#d5e0e5;--light:#f2f6f8;--white:#fff}
*{box-sizing:border-box}html{scroll-padding-top:28px}body{margin:0;background:var(--white);color:var(--navy);font:16px/1.7 'DM Sans',Arial,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1,h2,h3{text-wrap:balance}a{color:inherit;text-decoration:none}a,button{touch-action:manipulation}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #3689cc;outline-offset:4px}img{max-width:100%;display:block}header{padding:18px 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block;flex-shrink:0}.brand img{width:132px;height:auto}nav{display:flex;gap:36px;font-size:15px;font-weight:500;color:#435866}nav a{padding:12px 0}nav a:hover{color:var(--teal)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 24px;background:var(--teal);color:#fff;border:1px solid var(--teal);border-radius:6px;font-weight:600;font-size:16px;line-height:1.4;text-align:center;cursor:pointer;transition:background .18s,border-color .18s}.button:hover{background:#105762;border-color:#105762}.button.small{min-height:46px;padding:11px 23px;background:var(--navy);border-color:var(--navy);font-size:15px}.button.small:hover{background:#294357}.button.secondary{background:transparent;color:var(--navy);border-color:#b5c7ce}.button.secondary:hover{background:#edf4f6;border-color:#7398a6}.hero,.section,.contact-inner,footer{max-width:1440px;margin:auto;padding-left:5%;padding-right:5%}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:72px;align-items:center;padding-top:78px;padding-bottom:82px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.4px;color:var(--teal);display:flex;gap:13px;align-items:center}.line{width:26px;height:1px;background:var(--brand);flex-shrink:0}h1{font-weight:500;font-size:clamp(48px,4.7vw,70px);line-height:1.14;letter-spacing:-2.8px;margin:24px 0}h1 em{font-style:normal;color:var(--brand)}.intro{font-size:18px;line-height:1.85;color:var(--text);max-width:565px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:30px}.hero-note{font-size:14px;color:#6b7f8a;margin-top:24px;max-width:510px}.build-index{padding:30px 32px;background:#edf5f5;border:1px solid #c7dcdf;border-radius:8px}.index-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.index-heading>span{font-size:11px;letter-spacing:1.2px;color:#4f727d}.index-heading img{width:52px;height:39px}.build-index>h2{font-size:32px;line-height:1.35;letter-spacing:-1px;font-weight:500;margin:22px 0 25px}.build-index>h2 span{color:var(--brand)}.build-index>a{display:flex;gap:16px;padding:20px 0;border-top:1px solid #c4d9dd}.build-index>a:last-child{padding-bottom:0}.index-number{font:12px monospace;color:#66818b;padding-top:4px}.build-index h3{font-size:17px;font-weight:600;line-height:1.5;letter-spacing:-.3px}.build-index p{font-size:14px;line-height:1.65;color:#56727d;margin-top:6px}.build-index>a:hover h3{color:var(--teal)}.discipline{padding:24px 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;background:#f7f9fa}.discipline>span:first-child{font-size:11px;letter-spacing:1px;color:#6b7f8a;max-width:150px}.discipline p{font-size:16px;font-weight:500}.cross{color:#8198a2}.section{padding-top:90px;padding-bottom:90px}.section-heading{display:grid;grid-template-columns:.85fr 1.65fr 1.2fr;gap:35px;align-items:start}.section-heading .eyebrow{padding-top:8px}.section-heading h2{font-size:39px;line-height:1.25;font-weight:500;letter-spacing:-1.4px}.section-heading>p:last-child{color:var(--text);font-size:16px;line-height:1.8}.capabilities{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:55px}.capabilities article{padding-top:22px;border-top:1px solid #bcd0d9}.number{font:12px monospace;letter-spacing:1px;color:var(--teal)}.capabilities h3{font-size:25px;letter-spacing:-.7px;margin:20px 0 15px;font-weight:600}.capabilities p{font-size:16px;line-height:1.85;color:var(--text)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.tags span{font-size:12px;padding:5px 10px;border:1px solid #d4e1e6;border-radius:4px;background:#f5f8f9;color:#4c6978}.audit-note{font-size:14px;line-height:1.8;color:#617987;border-top:1px solid var(--line);padding-top:24px;margin-top:38px;max-width:100%}.work-section{background:var(--navy);color:#fff}.work-section .eyebrow{color:#95cdd4}.work-section .section-heading>p:last-child{color:#bdcbd4}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:55px}.case{border-top:2px solid #5c9fac;padding-top:24px;display:flex;flex-direction:column}.case-category{font-size:12px;letter-spacing:1px;color:#94cbd1}.case h3{font-size:26px;font-weight:500;line-height:1.35;letter-spacing:-.7px;margin:25px 0 20px}.case>p{color:#bdced9;font-size:16px;line-height:1.85;flex:1}.case-bottom{display:flex;flex-direction:column;gap:7px;border-top:1px solid #3e5566;padding-top:20px;margin-top:27px;color:#a4c3d0;font-size:13px}.trade-note{display:grid;grid-template-columns:.85fr 2.85fr;gap:35px;border-top:1px solid #405568;padding-top:28px;margin-top:45px}.trade-note>span{font-size:12px;letter-spacing:1px;color:#95cdd4;padding-top:4px}.trade-note p{font-size:16px;line-height:1.85;color:#c6d3dc;max-width:850px}.engagement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:50px}.engagement-grid article{border-top:1px solid #bed2da;padding-top:24px}.engagement-grid h3{font-size:23px;letter-spacing:-.6px;font-weight:600;margin:20px 0 15px}.engagement-grid p{font-size:16px;line-height:1.85;color:var(--text)}.deliverable{font-size:13px;display:block;color:var(--teal);margin-top:22px}.contact{background:#eef5f6;border-top:1px solid #d3e3e7}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;padding-top:80px;padding-bottom:80px}.contact h2{font-size:46px;font-weight:500;line-height:1.22;letter-spacing:-1.6px;margin:25px 0}.contact h2 em{font-style:normal;color:var(--brand)}.contact p{font-size:17px;color:var(--text);max-width:520px}.email{font-size:24px;display:inline-block;line-height:1.5;border-bottom:1px solid #91b3be;margin:25px 0;color:#176f7b;overflow-wrap:anywhere}.email:hover{color:#104650}.office{margin-top:22px}.office>span{font-size:12px;letter-spacing:1.2px;color:#597984}address{font-style:normal;font-size:15px;line-height:1.8;color:#58717e;margin-top:12px}.contact form{background:#fff;border:1px solid #cedee4;padding:32px;border-radius:8px;min-width:0}.contact form h3{font-size:23px;font-weight:600;letter-spacing:-.6px}.contact .form-intro{font-size:15px;margin:8px 0 26px;color:#627986}.contact label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.contact input,.contact textarea{width:100%;min-width:0;max-width:100%;display:block;background:#fff;border:1px solid #b9ccd5;border-radius:5px;padding:13px 14px;margin:0 0 22px;color:var(--navy);font-size:16px;line-height:1.5}.contact input{height:52px}.contact textarea{resize:vertical;min-height:132px}.contact input::placeholder,.contact textarea::placeholder{color:#748893;opacity:1}.contact form .button{width:100%;min-height:54px}.contact .form-note{font-size:13px;line-height:1.7;margin-top:16px;color:#687f8b}.contact #inquiry-status{font-size:14px;line-height:1.65;margin-top:12px;color:#176f7b}footer{padding-top:32px;padding-bottom:32px;display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-brand img{width:106px;height:auto}.footer-company{font-size:13px;color:#526e7a}.footer-company p:last-child{font-size:11px;margin-top:5px}.footer-links{display:flex;gap:25px;align-items:center;flex-wrap:wrap;font-size:13px;color:#586f7c}.footer-links a{min-height:44px;display:flex;align-items:center}.footer-links a:hover{color:var(--teal)}.skip{position:absolute;top:-100px;left:10px;background:var(--navy);color:#fff;padding:12px;z-index:10}.skip:focus{top:10px}.privacy{max-width:820px;min-height:65vh}.privacy h1{font-size:48px}.privacy h2{font-size:23px;margin:30px 0 12px}.privacy p{color:var(--text);margin:12px 0}.privacy a{text-decoration:underline}
@media(min-width:1600px){header,.discipline{padding-left:calc((100vw - 1296px)/2);padding-right:calc((100vw - 1296px)/2)}}
@media(max-width:1100px){.hero{gap:35px}h1{font-size:53px;letter-spacing:-2px}.build-index{padding:27px}.build-index>h2{font-size:28px}.section-heading{grid-template-columns:.8fr 1.5fr 1.2fr;gap:24px}.section-heading h2{font-size:34px}.case-grid,.capabilities,.engagement-grid{gap:26px}.case h3{font-size:23px}.contact-inner{gap:45px}.contact h2{font-size:40px}}
@media(max-width:760px){header{padding:12px 6%;gap:15px}.brand img{width:104px;height:auto}nav{display:none}.button.small{min-height:46px;font-size:15px;padding:11px 20px}.hero{grid-template-columns:1fr;padding:46px 6% 54px;gap:38px}.eyebrow{font-size:11px;letter-spacing:1px}.line{width:20px}h1{font-size:clamp(39px,10.3vw,62px);line-height:1.18;letter-spacing:-1.8px;margin:23px 0}.intro{font-size:17px;line-height:1.8}.hero-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:28px;width:100%}.hero-actions .button{width:100%;min-height:54px;font-size:16px;padding:14px 18px}.hero-note{font-size:13px;margin-top:20px;line-height:1.75}.build-index{padding:25px}.build-index>h2{font-size:29px}.build-index>a{padding:19px 0}.build-index h3{font-size:17px}.build-index p{font-size:14px}.discipline{padding:23px 6%;flex-wrap:wrap;justify-content:flex-start;gap:10px 14px}.discipline>span:first-child{flex-basis:100%;max-width:none;margin-bottom:5px;font-size:10px}.discipline p{font-size:13px}.cross{font-size:13px}.section{padding:58px 6%}.section-heading{display:block}.section-heading .eyebrow{padding:0}.section-heading h2{font-size:33px;line-height:1.25;letter-spacing:-1px;margin:21px 0}.section-heading>p:last-child{font-size:16px}.capabilities,.case-grid,.engagement-grid{grid-template-columns:1fr;gap:34px;margin-top:36px}.capabilities h3{font-size:25px;margin-top:15px}.capabilities p,.case>p,.engagement-grid p{font-size:16px}.tags{margin-top:20px}.audit-note{font-size:13px;margin-top:30px}.case h3{font-size:27px;margin:20px 0 16px}.case-bottom{margin-top:20px;flex-direction:row;flex-wrap:wrap;gap:8px 20px}.trade-note{grid-template-columns:1fr;gap:15px;padding-top:24px;margin-top:34px}.trade-note p{font-size:16px}.engagement-grid h3{font-size:23px;margin-top:14px}.contact-inner{grid-template-columns:1fr;padding:55px 6%;gap:30px}.contact h2{font-size:37px;letter-spacing:-1px}.contact p{font-size:16px}.email{font-size:24px}.contact form{padding:24px 20px;min-width:0;width:100%}.contact form h3{font-size:24px}.contact .form-intro{font-size:15px}.contact label{font-size:15px}.contact input,.contact textarea{font-size:16px}.contact form .button{font-size:16px;min-height:54px}.contact .form-note{font-size:13px}footer{padding:30px 6%;flex-wrap:wrap;gap:22px}.footer-brand img{width:95px}.footer-company{font-size:12px}.footer-company p:last-child{font-size:10px}.footer-links{width:100%;border-top:1px solid var(--line);padding-top:10px;gap:20px}.privacy h1{font-size:38px}}
@media(max-width:360px){h1{font-size:37px;letter-spacing:-1.5px}.eyebrow{font-size:10px}.build-index{padding:20px}.build-index>h2{font-size:27px}.contact form{padding:22px 16px}.discipline{gap:9px}.discipline p{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.contact .founder{margin-top:24px;font-size:15px;line-height:1.7}.founder strong{color:var(--navy);font-size:18px}.founder+.email{margin-top:12px}

.form-trap{display:none!important}.button:disabled{opacity:.65;cursor:wait}.form-note a{text-decoration:underline}#inquiry-status[data-error="true"]{color:#a32626}

.contact #inquiry-status:not([hidden]){display:block;padding:16px;margin:0 0 18px;border:1px solid #87b8a8;border-left:4px solid #28715c;border-radius:6px;background:#edf8f2;color:#184d3c;font-size:16px;font-weight:500;line-height:1.6;scroll-margin:24px}.contact #inquiry-status[hidden]{display:none}.contact #inquiry-status[data-state="error"]{background:#fff2f0;border-color:#d89a90;color:#842e23}.contact #inquiry-status[data-state="sending"]{background:#edf4fa;border-color:#8baabd;color:#244c66}.contact input[aria-invalid="true"],.contact textarea[aria-invalid="true"]{border-color:#b34d40}.contact button:disabled{cursor:default}

.delivery-models{border-top:1px solid var(--line);padding-top:64px}.delivery-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:38px}.delivery-grid article{padding:28px;background:var(--light);border:1px solid var(--line);border-radius:8px}.delivery-grid h3{font-size:24px;line-height:1.4;margin-bottom:14px}.delivery-grid p{color:var(--text);line-height:1.85}@media(max-width:760px){.delivery-grid{grid-template-columns:1fr;gap:20px}.delivery-grid article{padding:24px}.delivery-grid h3{font-size:23px}}
