:root{--blue:#2f62e9;--light:#f2f5fb;--navy:#07101f;--blue-light:#6b96f5;--muted:#536078;--line:#d3dced;--body:'Manrope',Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--light);color:var(--navy);font-family:var(--body);font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,h4{margin:0}p+p{margin-top:1rem}p{max-width:70ch;text-wrap:pretty}h1,h2,h3,h4{overflow-wrap:anywhere}h1,h2{font-family:var(--display);font-weight:800;text-transform:uppercase;line-height:1.02;letter-spacing:-.02em;text-wrap:balance}h2{font-size:clamp(2.5rem,3.7vw + .3rem,4.25rem);max-width:24ch}h3,h4{line-height:1.25}strong,b{font-weight:800}::selection{background:var(--navy);color:var(--light)}[hidden]{display:none!important}
:focus-visible{outline:3px solid currentColor;outline-offset:5px}.contact-form :focus-visible{outline-color:var(--blue)}
.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section-blue{background:var(--blue);color:var(--light)}.section-light{background:var(--light)}
.skip-link{position:fixed;top:12px;left:12px;background:var(--navy);color:var(--light);padding:12px 20px;z-index:400;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;max-width:100%;padding:15px 24px;border:1px solid transparent;border-radius:4px;font-size:.875rem;font-weight:800;line-height:1.4;transition:transform .25s var(--ease),background .25s var(--ease)}.button span{font-size:1.35rem;line-height:1;font-family:Arial,sans-serif}.button--light{color:var(--navy);background:var(--light)}.button--blue{color:var(--light);background:var(--blue)}.button:active{transform:translateY(1px)}
.site-header{background:var(--blue);color:var(--light);position:relative;z-index:100}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:100px}.brand{display:block;flex-shrink:0;width:172px}.brand img{width:172px;max-height:64px;object-fit:contain;mix-blend-mode:lighten}.site-header nav{display:flex;gap:32px;align-items:center}.site-header nav>a{font-size:.875rem;font-weight:600;min-height:44px;display:flex;align-items:center}.site-header nav .nav-contact{background:var(--light);color:var(--navy);padding:10px 20px;gap:28px;border-radius:4px;font-weight:800;font-size:.8rem}.nav-contact span{font-size:1.3rem}.menu-toggle{display:none}
/* The headline and lead always share one vertical reading column. */
.section-intro{margin-bottom:28px}.section-lead{margin-bottom:44px;max-width:70ch}.source-copy{max-width:70ch}.source-copy p+p{margin-top:18px}.source-copy a{font-weight:700;text-decoration:underline;text-underline-offset:4px}.source-copy a:hover{text-decoration-thickness:2px}.source-cta{font-size:.85rem;line-height:1.7;margin-top:24px!important}.source-cta strong{font-weight:600}.source-cta a{font-weight:800}.section-light .source-copy{color:#3a475f}.section-light .source-copy strong{color:var(--navy)}.section-light .source-copy a{color:#204fc9}
.hero-inner{padding-top:28px;padding-bottom:64px}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:12px;align-items:center}.hero-copy{position:relative;z-index:1;min-width:0}.hero h1{font-size:clamp(3.5rem,4.9vw,5.5rem);max-width:17ch;text-wrap:pretty}.hero-lead{font-size:.95rem;line-height:1.75;margin-top:28px;max-width:64ch}.hero-copy>.button,.service-hero-grid>.button,.service-hero-grid>div>.button{margin-top:24px}.hero-visual{min-width:0;align-self:stretch;display:flex;align-items:center}.hero-sculpture{width:130%;max-width:130%;margin-left:-15%;aspect-ratio:1;object-fit:cover;mask-image:linear-gradient(to right,transparent,black 13%,black 92%,transparent)}
.pain-section,.method-section,.comparison-section,.service-section{padding:96px 0}.services-section,.cases-section{padding:88px 0}.pain-list{position:relative;max-width:1000px}.numbered-item{display:grid;grid-template-columns:56px minmax(0,1fr);gap:24px;position:relative}.item-index{font:800 1.75rem/1 var(--display);color:var(--blue)}.numbered-item h3{font-size:1.25rem;margin-bottom:12px;max-width:55ch}.numbered-item .source-copy{font-size:.95rem}.pain-list .numbered-item{padding:26px 0 32px}.pain-list .numbered-item:not(:last-child){border-bottom:1px solid var(--line)}.pain-list .item-index{position:relative;z-index:1;background:var(--light);height:40px;padding-top:2px}.pain-list::before{content:'';position:absolute;left:18px;top:40px;bottom:0;width:1px;background:repeating-linear-gradient(to bottom,#9cb5ee 0 18px,transparent 18px 29px)}.connection-statement{margin-top:12px;padding:34px 0 0 80px;max-width:1000px;position:relative}.connection-statement::before{content:'';position:absolute;left:18px;top:-10px;width:42px;height:70px;border-bottom:1px solid var(--blue);border-left:1px solid var(--blue);border-radius:0 0 0 20px}.connection-line{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px}.connection-line span{font-weight:800;font-size:.875rem}.connection-line i{font-style:normal;color:var(--blue)}
.featured-service{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;background:var(--light);color:var(--navy);padding:48px;border-radius:8px}.featured-service h3{font:800 clamp(2.5rem,3.4vw,3.75rem)/1 var(--display);text-transform:uppercase;margin-bottom:24px;max-width:12ch}.featured-service p{font-size:1rem}.featured-service .button{margin-top:30px}.service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;margin-top:48px}.group-heading{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid #f2f5fb70}.group-heading>span{font:800 1.8rem var(--display);color:#cad9fc}.group-heading h3{font-size:1rem}.service-link{display:flex;gap:24px;align-items:flex-start;justify-content:space-between;padding:26px 0;border-bottom:1px solid #f2f5fb50}.service-link h4{font-size:1.06rem}.service-link p{font-size:.875rem;line-height:1.7;margin-top:12px}.service-link>span{font:1.7rem Arial,sans-serif;flex-shrink:0;transition:transform .25s var(--ease)}
/* Service diagrams are conceptual routes, never screenshots of client software. */
.service-diagram{padding:28px 24px 24px;border-radius:8px;color:var(--navy);background:#dce7ff;min-width:0;position:relative;overflow:hidden;isolation:isolate}.diagram-stage{position:relative;height:390px}.diagram-path{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#789cef;stroke-width:2}.diagram-path circle{fill:var(--blue);stroke:none}.diagram-stage ol{list-style:none;margin:0;padding:0;position:absolute;inset:0}.diagram-stage li{position:absolute;background:var(--light);color:var(--navy);padding:20px 24px;border:1px solid #abc3f5;box-shadow:0 10px 20px #133c9312;border-radius:5px;font:800 1.8rem/1.05 var(--display);text-transform:uppercase;max-width:85%;width:max-content;min-width:190px}.node-index{display:block;font:700 .7rem/1 var(--body);color:#335caf;margin-bottom:10px}.diagram-stage li:last-child{background:var(--blue);color:var(--light);border-color:var(--blue)}.diagram-stage li:last-child .node-index{color:#e0eaff}.service-diagram figcaption{font-size:.8rem;font-weight:700;text-align:center;padding-top:20px;border-top:1px solid #b8cbf2}.diagram--campaign li:nth-child(1){top:6%;left:0;transform:rotate(-5deg)}.diagram--campaign li:nth-child(2){top:28%;right:0;transform:rotate(4deg)}.diagram--campaign li:nth-child(3){top:51%;left:0;transform:rotate(-3deg)}.diagram--campaign li:nth-child(4){top:74%;right:0;transform:rotate(3deg)}
.diagram--consulting li{transform:rotate(-5deg)}.diagram--consulting li:nth-child(1){bottom:3%;left:0}.diagram--consulting li:nth-child(2){bottom:25%;left:12%}.diagram--consulting li:nth-child(3){bottom:47%;left:24%}.diagram--consulting li:nth-child(4){bottom:69%;left:36%}.diagram--consulting .diagram-path{transform:rotate(180deg)}
.diagram--automation li:nth-child(1){top:1%;left:50%;transform:translateX(-50%)}.diagram--automation li:nth-child(2){top:34%;left:50%;transform:translateX(-50%);text-align:center;font-size:1.45rem}.diagram--automation li:nth-child(3){bottom:3%;left:0;min-width:44%;padding-inline:16px}.diagram--automation li:nth-child(4){bottom:3%;right:0;min-width:44%;padding-inline:16px}.diagram--automation .diagram-path{transform:rotate(90deg)}
.diagram--search .diagram-stage{height:390px}.diagram--search li{border-radius:50%;aspect-ratio:1;min-width:0;width:54%;max-width:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:2.75rem;padding:16px}.diagram--search li:nth-child(1){top:0;left:0}.diagram--search li:nth-child(2){top:21%;right:0;background:#bed0fc;z-index:1}.diagram--search li:nth-child(3){bottom:0;left:8%;z-index:2}.diagram--search li small{font:600 .75rem/1.4 var(--body);text-transform:none;text-align:center;margin-top:8px}.diagram--search .node-index{display:none}.diagram--search .diagram-path{display:none}
.diagram--pipeline li{left:50%;transform:translateX(-50%);text-align:center;border-radius:4px 4px 22px 22px;padding:14px}.diagram--pipeline li:nth-child(1){top:0;width:100%}.diagram--pipeline li:nth-child(2){top:25%;width:84%}.diagram--pipeline li:nth-child(3){top:50%;width:68%;min-width:0}.diagram--pipeline li:nth-child(4){top:75%;width:52%;min-width:0}.diagram--pipeline .node-index{display:none}.diagram--pipeline .diagram-path{left:35%;width:30%}
.diagram--b2b li{min-width:0;width:47%;padding:20px 16px;font-size:1.55rem}.diagram--b2b li:nth-child(1){top:6%;left:0;transform:rotate(-4deg)}.diagram--b2b li:nth-child(2){top:6%;right:0;transform:rotate(4deg)}.diagram--b2b li:nth-child(3){bottom:6%;left:0;transform:rotate(4deg)}.diagram--b2b li:nth-child(4){bottom:6%;right:0;transform:rotate(-4deg)}.diagram-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:84px;height:84px;border-radius:50%;background:var(--blue);color:var(--light);display:grid;place-items:center;font:3rem Arial,sans-serif}
.diagram--website li{width:82%;max-width:none;transform:skewY(-5deg);padding:24px}.diagram--website li:nth-child(1){top:2%;left:0}.diagram--website li:nth-child(2){top:25%;left:6%}.diagram--website li:nth-child(3){top:48%;left:12%}.diagram--website li:nth-child(4){top:71%;left:18%}.diagram--website .node-index{display:inline-block;margin-right:18px}.diagram--website .diagram-path{display:none}
/* The method keeps every source paragraph in the document. */
.method-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:72px;align-items:start}.method-step{border-bottom:1px solid var(--line)}.method-step:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.method-step summary{display:flex;align-items:center;gap:24px;padding:22px 0}.method-step h3{font:800 2rem/1.1 var(--display);text-transform:uppercase}.method-step summary>b{font-size:1.4rem;font-weight:500;margin-left:auto;flex-shrink:0}.method-step[open] summary>b{transform:rotate(45deg)}.method-step[open] h3{color:var(--blue)}.method-body{padding-bottom:28px;font-size:.95rem}.method-map{background:#dce7ff;position:sticky;top:32px;border-radius:50% 50% 8px 8px;padding:40px 28px 24px;min-width:0}.method-map-center{border:1px solid #9eb9ef;width:100px;height:100px;display:grid;place-items:center;border-radius:50%;margin:auto auto 28px;font:3.5rem Arial,sans-serif;color:var(--blue)}.method-map ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:18px 30px;position:relative}.method-map ol::before{content:'';position:absolute;inset:24px 25%;border:1px solid #9eb9ef;border-radius:20px}.method-map li{position:relative;display:flex;gap:12px;align-items:center;font-size:.75rem;background:#dce7ff;padding:14px 0}.method-map li span{color:var(--blue);font-weight:800}.method-map li.is-current b{color:var(--blue);text-decoration:underline;text-underline-offset:5px}.method-map p{font-size:.75rem;text-align:center;margin-top:26px}
.case-stories{background:var(--light);color:var(--navy);padding:44px;border-radius:8px}.case-story{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding:40px 0;border-bottom:1px solid var(--line)}.case-story:first-child{padding-top:0}.case-story:last-of-type{border-bottom:0;padding-bottom:0}.case-story:has(.case-story-copy:only-child){grid-template-columns:1fr}.case-story h3{font:800 clamp(2rem,2.6vw,3rem)/1.05 var(--display);text-transform:uppercase;margin-bottom:24px;max-width:24ch}.case-story .source-copy{font-size:.95rem}.case-carousel .case-story{border:0;padding:0;min-height:330px}.case-controls{display:flex;gap:20px;align-items:center;justify-content:flex-end;margin-top:30px}.case-controls button{background:transparent;border:1px solid #bac9e5;border-radius:50%;height:48px;width:48px;font-size:1.3rem}.case-controls span{font-size:.8rem;min-width:54px;text-align:center}.results-cta{margin-top:26px}.result-chart{width:100%;min-width:0}.result-chart figcaption{font-size:.85rem;color:var(--muted);margin-bottom:28px}.bar-row{display:grid;grid-template-columns:auto 1fr;gap:12px 20px;margin-top:24px;align-items:baseline}.bar-row>span{font-size:.75rem;color:var(--muted)}.bar-row>strong{font:800 clamp(1.7rem,2.8vw,3rem)/1 var(--display);text-align:right}.bar-track{grid-column:1/-1;height:18px;background:#e0e7f3;border-radius:3px;overflow:hidden}.bar-track i{display:block;width:var(--bar);height:100%;background:#9db2de}.bar-row--after .bar-track i{background:var(--blue)}.bar-row--after strong{color:var(--blue)}.result-pair{display:flex;gap:24px;flex-direction:column;align-items:flex-start}.result-pair strong{font:800 clamp(2.5rem,3.5vw,4rem)/1 var(--display);color:var(--blue)}.result-pair span{display:block;font-size:.85rem;margin-top:10px}.result-pair .result-connector{font:3rem Arial,sans-serif;margin:0;color:var(--blue)}
.comparison-table table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}.comparison-table th{font:800 1.9rem/1.1 var(--display);text-transform:uppercase;border-bottom:2px solid var(--navy);padding:24px}.comparison-table td{vertical-align:top;font-size:.95rem;padding:24px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.comparison-table th:last-child,.comparison-table td:last-child{background:#e3eafa}.comparison-table th:last-child{color:var(--blue);border-color:var(--blue)}.comparison-table td:last-child{font-weight:600}.comparison-table td:first-child{color:var(--muted)}
.coverage-section{padding:72px 0;border-top:1px solid var(--line)}.coverage-track{display:flex;align-items:center;gap:20px;max-width:700px;margin-top:38px;font-weight:800;font-size:.875rem}.coverage-track i{flex:1;height:1px;background:#adc3ed}.coverage-track b{width:52px;height:52px;border:1px solid #adc3ed;border-radius:50%;display:grid;place-items:center;color:var(--blue);font:1.7rem Arial,sans-serif}
.contact{padding:88px 0}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:start}.contact-copy{position:relative}.contact-copy .contact-note{margin-top:28px;font-size:.85rem}.contact-route{display:flex;gap:14px;align-items:flex-end;margin-top:50px;padding:0 20px;min-height:180px}.contact-route span{flex:1;border:2px solid #afc7ff;border-top:0;height:90px;border-radius:0 0 60px 60px;transform:rotate(-20deg)}.contact-route span:nth-child(2){height:130px}.contact-route span:last-child{border:0;height:auto;transform:none;font:7rem/.85 Arial,sans-serif;color:#dce7ff}.contact-form{position:relative;background:var(--light);color:var(--navy);padding:36px;border-radius:7px;min-width:0}.contact-form h3{font:800 2.3rem/1.1 var(--display);text-transform:uppercase}.contact-form>p{font-size:.85rem;color:var(--muted);margin-top:10px;margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid>*{min-width:0}.contact-form label{display:block;font-size:.8rem;font-weight:700;margin-bottom:7px}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-form select{border:1px solid #b3c2dc;border-radius:3px;background:#fbfcff;color:var(--navy);width:100%;padding:10px 12px;min-height:46px;font-size:1rem}.contact-form>label:not(.consent){margin-top:18px}.contact-form textarea{resize:vertical;min-height:95px}.contact-form input:user-invalid,.contact-form textarea:user-invalid{border:2px solid var(--navy)}.consent{display:flex!important;align-items:flex-start;gap:12px;margin-top:22px;font-weight:400!important;font-size:.75rem!important;line-height:1.6}.consent input{accent-color:var(--blue);width:18px;height:18px;flex-shrink:0;margin-top:2px}.contact-form>button{width:100%;margin-top:16px}.contact-form .form-note{font-size:.75rem;margin:14px 0 0}.form-result{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.form-result p{font-size:.875rem;margin-bottom:14px}.form-result .button{width:100%}html:not(.js) #contact-form>button{display:none}
.faq-section{padding:88px 0}.faq-list{max-width:1000px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 0}.faq-list summary h3{font-size:1.05rem;font-weight:800;line-height:1.5}.faq-list summary>span{font-size:1.5rem;color:var(--blue);flex-shrink:0}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>div{padding:0 0 28px;font-size:.95rem;max-width:75ch}
footer{padding:60px 0 24px;background:#e6edfa;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:40px;border-bottom:1px solid #c8d5ec}.footer-wordmark{font-size:clamp(2.8rem,7vw,6rem);font-weight:800;letter-spacing:-.07em;line-height:1.2;overflow-wrap:anywhere}.footer-top>p{font-size:.95rem}.footer-columns{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:64px;margin-top:40px}.footer-columns h3{font-size:.875rem;margin-bottom:14px}.footer-columns a{display:block;font-size:.85rem;padding:7px 0;line-height:1.5;width:fit-content}.footer-columns address{font-size:.85rem;font-style:normal;color:var(--muted);margin-top:12px}.footer-bottom{border-top:1px solid #c8d5ec;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem}
.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font-size:.8rem;margin-bottom:36px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.service-hero{padding:20px 0 72px}.service-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}.service-hero h1{font-size:clamp(3.25rem,4.2vw,4.8rem);max-width:20ch}.service-hero .hero-lead{font-size:.95rem}.service-section--deliverables+.service-section--deliverables{padding-top:0}.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:40px 60px}.deliverables .numbered-item{border-top:1px solid var(--line);padding-top:26px;grid-template-columns:38px minmax(0,1fr);gap:16px}.deliverables .item-index{font-size:1.35rem}.deliverables .numbered-item h3{font-size:1.15rem}.process-list{counter-reset:process;position:relative}.process-list .numbered-item{padding:30px 0 40px;grid-template-columns:96px minmax(0,1fr);gap:32px}.process-list .numbered-item:not(:last-child){border-bottom:1px solid #a4bdf488}.process-list .item-index{color:#d9e5ff;font-size:4rem;position:relative}.process-list h3{font:800 2.25rem/1.1 var(--display);text-transform:uppercase;margin-bottom:18px}.process-list .source-copy{max-width:70ch}.principles-list{display:grid;grid-template-columns:1fr 1fr;gap:40px 60px}.principles-list .numbered-item{grid-template-columns:28px minmax(0,1fr);gap:16px}.principles-list .item-index{font-size:1rem;border-top:1px solid var(--blue);padding-top:8px}.principles-list h3{font-size:1.1rem}.not-found{padding:60px 0 100px}.not-found h1{font-size:clamp(3rem,7vw,6rem)}.not-found p{margin:28px 0}
:where(.hero-grid,.service-hero-grid,.featured-service,.service-groups,.method-layout,.case-story,.contact-grid,.footer-columns,.footer-top,.deliverables,.principles-list)>*{min-width:0}
@media(hover:hover){.button:hover{transform:translateY(-3px)}.button--light:hover{background:#dfe9ff}.button--blue:hover{background:#204fc9}.service-link:hover>span{transform:translate(3px,-3px)}.site-header nav>a:not(.nav-contact):hover{text-decoration:underline;text-underline-offset:6px}.case-controls button:hover{background:#dfe7f8}.footer-columns a:hover,.faq-list summary:hover{color:var(--blue)}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.site-header nav{gap:20px}.hero-grid{grid-template-columns:1.25fr 1fr}.hero h1{font-size:4.5rem}.hero-lead{font-size:.9rem}.service-hero-grid{gap:32px}.service-hero h1{font-size:3.8rem}.featured-service{padding:32px;gap:24px}.diagram-stage li{min-width:160px;font-size:1.6rem;padding:16px}.diagram--b2b li{min-width:0}.diagram--search li{min-width:0;font-size:2.5rem}.diagram--consulting li{min-width:145px}.diagram--pipeline li:nth-child(n+3){min-width:0}.service-groups{gap:28px}.method-layout{gap:40px}.case-story{gap:36px}.case-stories{padding:32px}.contact-grid{gap:40px}.deliverables,.principles-list{gap:36px}}
@media(max-width:800px){.container{width:calc(100% - 40px)}.nav-inner{min-height:84px}.brand,.brand img{width:140px}.site-header nav{gap:16px}.site-header nav>a{font-size:.75rem}.site-header nav .nav-contact{font-size:.7rem;padding:10px 12px;gap:12px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(3.5rem,8vw,4.75rem);max-width:22ch}.hero-lead{max-width:70ch}.hero-visual{height:370px;max-width:640px;width:100%;margin-inline:auto}.hero-sculpture{height:100%;width:100%;max-width:100%;margin:0;object-fit:cover;mask-image:linear-gradient(to bottom,transparent,black 12%,black 90%,transparent)}.hero-inner{padding-bottom:28px}.service-hero-grid{grid-template-columns:1fr}.service-hero h1{max-width:25ch;font-size:3.75rem}.service-hero-grid>.service-diagram{max-width:540px;width:100%;margin-inline:auto}.service-diagram .diagram-stage{height:360px}.featured-service{grid-template-columns:1fr 1fr;gap:24px;padding:28px}.featured-service .service-diagram{padding:20px 12px}.featured-service .diagram-stage li{font-size:1.4rem;min-width:145px;padding:16px}.service-groups{grid-template-columns:1fr;gap:32px}.service-link p{max-width:65ch}.method-layout{grid-template-columns:1fr 1fr;gap:28px}.method-map{padding:30px 16px 20px}.method-map ol{gap:12px}.method-map li{gap:6px;font-size:.7rem}.contact-grid{grid-template-columns:1fr 1.2fr;gap:32px}.form-grid{grid-template-columns:1fr}.contact-form{padding:26px}.contact-route{padding:0}.contact-route span:last-child{font-size:5rem}.case-stories{padding:28px}.case-story{gap:30px}.footer-columns{gap:28px}.deliverables{gap:32px}.deliverables .numbered-item{grid-template-columns:1fr;gap:12px}}
@media(max-width:650px){.nav-inner{min-height:80px;flex-wrap:wrap;gap:0;padding:12px 0}.brand,.brand img{width:155px}.menu-toggle{display:inline-flex;align-items:center;gap:16px;background:transparent;border:1px solid #f2f5fb70;padding:8px 12px;min-height:44px;border-radius:3px;font-size:.8rem}.menu-toggle span{font-size:1.1rem}.site-header nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:16px 0 6px}.site-header nav>a{padding:10px 0;font-size:.95rem}.site-header nav .nav-contact{margin-top:10px;padding:12px 16px;font-size:.825rem;justify-content:space-between}.js .site-header nav:not(.is-open){display:none}.hero-inner{padding-top:22px}.hero h1{font-size:clamp(3rem,10vw + .4rem,4rem);max-width:100%}.hero-lead{font-size:.95rem}.hero-visual{height:310px;margin-top:10px}.hero-grid{gap:12px}.hero-copy>.button{width:100%}h2{font-size:clamp(2.5rem,8vw + .5rem,3.25rem);max-width:100%}.section-intro{margin-bottom:24px}.section-lead{margin-bottom:32px}.pain-section,.method-section,.comparison-section,.service-section,.services-section,.cases-section,.contact,.faq-section{padding:60px 0}.numbered-item{grid-template-columns:32px minmax(0,1fr);gap:16px}.numbered-item h3{font-size:1.15rem}.pain-list .item-index{font-size:1.5rem}.pain-list::before{left:12px}.connection-statement{padding-left:48px}.connection-statement::before{left:12px;width:24px}.connection-line{gap:12px}.connection-line span{font-size:.75rem}.featured-service{grid-template-columns:1fr;padding:26px;gap:24px}.featured-service h3{font-size:2.7rem}.featured-service p{font-size:.95rem}.featured-service .service-diagram{padding:20px 14px}.featured-service .diagram-stage{height:350px}.service-link{gap:18px}.method-layout{grid-template-columns:1fr}.method-map{position:static;padding:36px 24px 24px;max-width:480px;width:100%;margin:auto}.method-map ol{gap:18px}.method-map li{font-size:.8rem}.method-step h3{font-size:1.85rem}.method-step summary{padding:20px 0}.case-stories{padding:24px}.case-story{grid-template-columns:1fr;gap:28px}.case-carousel .case-story{min-height:0}.case-story h3{font-size:2.2rem}.bar-row strong{font-size:2.3rem}.result-chart figcaption{font-size:.8rem}.case-controls{margin-top:28px}.comparison-table th{font-size:1.5rem;padding:18px 12px;overflow-wrap:anywhere}.comparison-table td{padding:18px 12px;font-size:.875rem}.coverage-section{padding:56px 0}.coverage-track{gap:14px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-route{display:none}.contact-form{padding:24px}.contact-form h3{font-size:2.1rem}.faq-list summary h3{font-size:1rem}.faq-list summary{gap:20px;padding:22px 0}.footer-top{align-items:flex-start;flex-direction:column;gap:20px;padding-bottom:30px}.footer-wordmark{font-size:3.5rem}.footer-columns{grid-template-columns:1fr 1fr;gap:30px}.footer-columns>div:last-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:12px}.footer-bottom>a{margin-left:auto}.service-hero{padding:16px 0 48px}.service-hero h1{font-size:clamp(2.8rem,9vw + .4rem,3.75rem)}.service-hero-grid{gap:32px}.breadcrumbs{font-size:.75rem;margin-bottom:28px}.service-diagram{padding:24px 20px}.service-diagram .diagram-stage{height:365px}.diagram-stage li{font-size:1.65rem;min-width:175px;padding:18px}.diagram--consulting li{min-width:150px}.diagram--b2b li{font-size:1.4rem;min-width:0;padding:18px 12px}.diagram--automation li:nth-child(2){font-size:1.4rem}.diagram--automation li:nth-child(n+3){min-width:44%;font-size:1.4rem}.diagram--pipeline li:nth-child(n+3){min-width:0}.diagram--search li{font-size:2.75rem;min-width:0}.diagram--search li small{font-size:.7rem}.diagram--website li{min-width:0;padding:24px 18px}.diagram--website .node-index{margin-right:10px}.service-diagram figcaption{font-size:.75rem}.deliverables,.principles-list{grid-template-columns:1fr;gap:30px}.deliverables .numbered-item{grid-template-columns:32px minmax(0,1fr);gap:16px}.process-list .numbered-item{grid-template-columns:42px minmax(0,1fr);gap:18px;padding:26px 0 32px}.process-list .item-index{font-size:2.5rem}.process-list h3{font-size:1.85rem}.principles-list .numbered-item{grid-template-columns:28px minmax(0,1fr)}.service-section--deliverables+.service-section--deliverables{padding-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Long copy and enlarged type must reflow, including inside diagrams. */
.comparison-table.source-copy{max-width:none}
.method-step summary h3{min-width:0}
.method-map ol{grid-template-columns:repeat(2,minmax(0,1fr))}
.method-map li{min-width:0;flex-wrap:wrap}
.method-map li b{min-width:0;overflow-wrap:anywhere}
.service-diagram{container-type:inline-size}
.hero h1 .hero-category{display:block;font-size:.7em;line-height:1.1;margin-bottom:12px}
.hero-sculpture{mask-image:linear-gradient(to bottom,transparent,black 10%,black 80%,transparent),linear-gradient(to right,transparent,black 15%,black 90%,transparent);mask-composite:intersect}
@container(max-width:18rem){
 .diagram-stage{height:auto!important;padding:4px 0}
 .diagram-stage ol{position:relative;display:grid;gap:14px}
 .diagram-stage li{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:100%!important;min-width:0!important;aspect-ratio:auto!important;border-radius:5px!important;text-align:left!important;padding:20px!important;overflow-wrap:anywhere}
 .diagram-stage li:nth-child(n){font-size:1.5rem}
 .diagram-stage li small{font-size:.75rem}
 .diagram-path,.diagram-hub{display:none}
 .service-diagram figcaption{margin-top:16px}
}
.method-step summary>b,.faq-list summary>span{display:grid;place-items:center;line-height:1;width:1em;height:1em;flex-shrink:0}
