.home-page{display:flex;flex-direction:column;gap:var(--section-space);overflow:clip}.home-page>main{display:flex;min-width:0;flex-direction:column;gap:var(--section-space)}.consulting-hero{position:relative;display:flex;min-height:100svh;overflow:clip;flex-direction:column;background:var(--page);color:var(--ink)}.consulting-hero__body{display:grid;flex:1;grid-template-columns:minmax(0,1.1fr) minmax(18rem,.85fr);gap:clamp(3rem,7vw,6rem);align-items:center}.consulting-hero__title{margin:0;font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.03em;line-height:1}.consulting-hero__title-part{display:block}.consulting-hero__subtitle{margin:1rem 0 0;font-size:clamp(1.25rem,2.25vw,1.75rem);font-weight:650;letter-spacing:-.025em;line-height:1.12}.consulting-hero__statement{margin:var(--spacing-6) 0 0;color:var(--muted-on-page);font-size:var(--text-section-copy);line-height:1.6}.consulting-hero__actions{display:flex;gap:var(--spacing-4);flex-wrap:wrap;align-items:center;justify-content:flex-start;margin-top:var(--spacing-8)}.button{display:inline-flex;gap:var(--spacing-3);min-height:var(--control-size);align-items:center;padding:0 1rem;border:1px solid var(--ink);border-radius:var(--radius-surface);font-size:var(--text-sm);font-weight:650;text-decoration:none;transition:background-color .18s var(--ease-out),color .18s var(--ease-out)}.button--solid{background:var(--ink);color:var(--page)}.button--solid:hover,.button--solid:focus-visible{background:transparent;color:var(--ink)}.consulting-hero__actions svg,.text-link svg,.proof-platform__heading a svg,.open-source-item .text-link svg{width:var(--text-sm);height:var(--text-sm);transition:transform .22s var(--ease-out)}.consulting-hero__actions a:hover svg,.consulting-hero__actions a:focus-visible svg,.text-link:hover svg,.text-link:focus-visible svg,.proof-platform__heading a:hover svg,.proof-platform__heading a:focus-visible svg,.open-source-item .text-link:hover svg,.open-source-item .text-link:focus-visible svg{transform:translate(2px,-2px)}.consulting-hero__actions .button:hover svg,.consulting-hero__actions .button:focus-visible svg{transform:none}.text-link{display:inline-flex;gap:var(--spacing-2);align-items:center;font-size:var(--text-action);font-weight:620;text-decoration-thickness:1px}.consulting-hero__rail{display:flex;min-height:0;flex-direction:column;justify-content:flex-start;gap:var(--spacing-5);padding:var(--spacing-2) 0;border:0;background:transparent;color:var(--ink)}.hero-rail__intro{display:grid;gap:var(--spacing-3)}.hero-rail__marker{width:1rem;height:1rem;color:var(--ink);fill:currentColor;transform:rotate(var(--marker-angle));transform-origin:center}.hero-rail__intro h2{margin:0;font-size:clamp(1.25rem,2.25vw,1.75rem);font-weight:650;letter-spacing:-.025em;line-height:1.12}.consulting-hero__rail ul{display:grid;gap:var(--spacing-3);margin:0;padding:0;list-style:none}.consulting-hero__rail li{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:var(--spacing-3);align-items:center;padding:var(--spacing-2) 0;border:0;background:transparent;color:var(--ink);font-size:var(--text-base);font-weight:650}.consulting-hero__rail>p{width:100%;margin:0;color:var(--muted-on-page);font-size:var(--text-section-copy);line-height:1.6}.consulting-proof,.consulting-services,.technology-pyramid,.consulting-approach,.consulting-use-cases,.open-source,.home-experience{background:var(--page);color:var(--ink)}.consulting-services__inner,.technology-pyramid__inner,.consulting-approach__inner,.consulting-proof__inner,.consulting-use-cases__inner,.open-source__inner,.home-experience .experience__inner{display:flex;flex-direction:column;gap:var(--section-content-gap);margin-inline:auto}.technology-pyramid{overflow:clip}.technology-pyramid__content{display:flex;flex-direction:column;gap:var(--section-content-gap);align-items:center}.technology-pyramid__levels{display:flex;width:100%;flex-direction:column;gap:var(--spacing-3);align-items:center}.technology-pyramid__level{display:flex;gap:var(--spacing-4);align-items:flex-start;justify-content:center}.technology-pyramid__level--3{width:min(100%,52rem)}.technology-pyramid__level--2{width:min(100%,40rem)}.technology-pyramid__level--1{width:min(100%,28rem)}.technology-pyramid__item{display:flex;height:var(--spacing-32);min-width:0;flex:1;gap:var(--spacing-3);align-items:flex-start;padding:var(--spacing-4);border:1px solid var(--line-on-page);border-radius:var(--radius-surface);background:var(--surface-card);color:var(--ink);cursor:default;transition:background-color .18s var(--ease-out),border-color .18s var(--ease-out),transform .18s var(--ease-out)}.technology-pyramid__item:hover,.technology-pyramid__item:focus-visible{border-color:var(--line-on-page-strong);background:var(--surface-card-hover);outline:none;transform:translateY(-2px)}.technology-pyramid__item:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.technology-pyramid__item>.technology-icon{width:var(--spacing-6);height:var(--spacing-6);flex:0 0 auto;margin-top:.125rem;stroke-width:1.8}.technology-pyramid__item-copy{display:grid;min-width:0;gap:var(--spacing-1)}.technology-pyramid__item-copy strong{font-size:var(--text-base);letter-spacing:-.02em;line-height:1.25}.technology-pyramid__item-copy>span:not(.technology-pyramid__item-description){color:var(--muted-on-page);font-size:var(--text-sm);line-height:1.35}.technology-pyramid__item-description{color:var(--muted-on-page);font-size:var(--text-sm);line-height:1.45}.technology-pyramid__connector{width:var(--spacing-5);height:var(--spacing-5);color:var(--muted-on-page);stroke-width:1.6}.technology-pyramid__foundation{width:min(100%,28rem);border-color:var(--ink);background:var(--ink);color:var(--page)}.technology-pyramid__foundation:hover,.technology-pyramid__foundation:focus-visible{border-color:var(--ink);background:var(--ink)}.technology-pyramid__foundation .technology-pyramid__item-copy>span:not(.technology-pyramid__item-description),.technology-pyramid__foundation .technology-pyramid__item-description{color:color-mix(in srgb,var(--page) 72%,transparent)}.technology-pyramid__cta{display:flex;width:min(100%,var(--container-reading));gap:var(--spacing-6);align-items:center;justify-content:space-between;padding:var(--spacing-5);border:1px solid var(--line-on-page);border-radius:var(--radius-surface);background:var(--surface-card-hover)}.technology-pyramid__cta h3,.technology-pyramid__cta p{margin:0}.technology-pyramid__cta p{margin-top:var(--spacing-2);color:var(--muted-on-page);font-size:var(--text-sm)}.technology-pyramid__actions{display:flex;gap:var(--spacing-4);flex:0 0 auto;flex-wrap:wrap;align-items:center}.home-experience .experience__intro h2{margin:0;font-size:var(--text-section);letter-spacing:-.03em;line-height:1}.proof-platform{display:flex;flex-direction:column;gap:var(--spacing-5)}.proof-platform__heading{display:flex;gap:1.5rem;align-items:end;justify-content:space-between}.proof-platform__heading h3{display:flex;gap:var(--spacing-2);align-items:center;margin:0}.proof-platform__heading h3 svg{width:1rem;height:1rem;flex:0 0 auto}.proof-platform__heading p{margin:.4rem 0 0;color:var(--muted-on-page);font-size:var(--text-sm)}.proof-platform__heading a{display:inline-flex;min-height:var(--control-size);gap:var(--spacing-2);align-items:center;flex:0 0 auto;font-size:var(--text-sm);font-weight:650;text-decoration:none}.proof-message-grid{display:grid;gap:var(--spacing-4)}.proof-message-grid--upwork,.proof-message-grid--linkedin{grid-template-columns:repeat(3,minmax(0,1fr))}.service-list,.use-case-list,.open-source-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-8)}.service-block,.use-case-block,.open-source-item{min-width:0;color:var(--ink)}.open-source-item{border:1px solid var(--line-on-page);border-radius:var(--radius-surface);background:var(--surface-card)}.service-block{display:flex;flex-direction:column;gap:var(--spacing-3);padding-block:var(--spacing-2)}.service-block__title h3{margin:0}.service-block__body{display:flex;width:100%;flex-direction:column;gap:var(--spacing-3)}.service-block__body p{margin:0;color:var(--muted-on-page);font-size:var(--text-base);line-height:1.55}.service-block__body .text-link{align-self:flex-start;margin-top:0}.approach-timeline{position:relative;display:flex;width:min(100%,var(--container-narrow));flex-direction:column;margin:0 auto;padding:0;list-style:none}.approach-step{position:relative;display:grid;grid-template-columns:var(--control-size) minmax(0,1fr);gap:var(--spacing-4);align-items:start}.approach-step:not(:last-child){padding-bottom:var(--spacing-10)}.approach-step:not(:last-child):after{position:absolute;top:calc(var(--control-size) / 2);bottom:calc(var(--control-size) / -2);left:calc(var(--control-size) / 2);width:1px;background:var(--line-on-page);content:"";transform:translate(-50%)}.approach-step__index{position:relative;z-index:1;display:grid;width:var(--control-size);height:var(--control-size);place-items:center;border-radius:50%;background:var(--ink);color:var(--page);font-size:var(--text-xs);font-weight:750}.approach-step__content h3{margin:0}.approach-step__content p{margin:var(--spacing-2) 0 0;color:var(--muted-on-page);font-size:var(--text-base);line-height:1.55}.use-case-block{display:flex;flex-direction:column;gap:var(--spacing-3);padding-block:var(--spacing-2)}.use-case-block__top{display:flex;gap:var(--spacing-3);align-items:baseline;justify-content:space-between;color:var(--muted-on-page);font-size:var(--text-xs)}.use-case-block__client{color:var(--ink);font-size:var(--text-sm);font-weight:720}.use-case-block h3{margin:0}.use-case-block>p{margin:0;color:var(--muted-on-page);font-size:var(--text-base);line-height:1.55}.use-case-block .text-link{align-self:flex-start;margin-top:0;text-align:left}.open-source-item{display:flex;overflow:hidden;flex-direction:column}.open-source-item__image{aspect-ratio:1200 / 630;margin:0;overflow:hidden;border-bottom:1px solid var(--line-on-page);background:var(--surface-card)}.open-source-item__image img{display:block;width:100%;height:100%;object-fit:cover}.open-source-item__body{display:flex;min-height:14rem;flex:1;flex-direction:column;padding:var(--spacing-5)}.open-source-item__eyebrow{display:flex;gap:var(--spacing-2) var(--spacing-4);flex-wrap:wrap;color:var(--muted-on-page);font-size:var(--text-xs);font-weight:570;line-height:1.35}.open-source-item__stat{display:inline-flex;gap:var(--spacing-1);align-items:center}.open-source-item__eyebrow svg{width:var(--text-xs);height:var(--text-xs);stroke-width:1.8}.open-source-item h3{margin:1rem 0 0}.open-source-item h3 a{display:inline-flex;gap:var(--spacing-2);align-items:flex-start;text-decoration:none}.open-source-item h3 a svg{width:var(--spacing-4);height:var(--spacing-4);flex:0 0 auto;margin-top:.12rem}.open-source-item__body>p{margin:var(--spacing-3) 0 var(--spacing-5);color:var(--muted-on-page);font-size:var(--text-sm);line-height:1.55}.open-source-item .text-link{align-self:flex-start;margin-top:auto;font-size:var(--text-sm);text-align:left}.home-experience{display:grid;min-height:0;align-items:start}.home-experience .experience__intro{display:block;text-align:center}.home-experience .experience__intro h2{margin-inline:auto}.home-experience .experience__heading-group{display:flex;flex-direction:column;gap:var(--spacing-5)}.home-experience .experience__toolbar{display:flex;justify-content:flex-end;width:min(100%,var(--container-narrow));margin-inline:auto}.home-experience .experience__more{display:inline-flex;gap:var(--spacing-2);align-items:center;justify-self:end;margin:0;color:var(--ink);font-size:var(--text-action);font-weight:650;line-height:1.3;text-decoration-thickness:1px;text-underline-offset:.22em}.home-experience .experience__more svg{width:var(--text-sm);height:var(--text-sm);transition:transform .24s var(--ease-out)}.home-experience .experience__more .site-link__external-icon,.home-experience .experience__project h4 a .site-link__external-icon{margin-inline-start:0}.home-experience .experience__more:hover svg,.home-experience .experience__more:focus-visible svg{transform:translate(2px,-2px)}.home-experience .experience__companies{display:flex;align-items:center;flex-direction:column;gap:clamp(2.75rem,5vw,4rem);width:100%;max-width:var(--container-narrow);margin-inline:auto;padding-inline:0;list-style:none}.home-experience .experience__company{width:100%;min-width:0;padding:0;border:0;border-radius:0;background:transparent}.home-experience .experience__company-header h3{margin:0}.home-experience .experience__roles{display:grid;gap:var(--spacing-3);margin:var(--spacing-3) 0 0;padding:0;list-style:none}.home-experience .experience__roles li{display:grid;gap:var(--spacing-1)}.home-experience .experience__role-title{font-size:var(--text-base);font-weight:620;line-height:1.4}.home-experience .experience__role-dates{color:var(--muted-on-page);font-size:var(--text-sm);font-weight:450;line-height:1.45}.home-experience .experience__projects{display:grid;gap:var(--spacing-5);margin-top:var(--spacing-5)}.home-experience .experience__project+.experience__project{padding-top:var(--spacing-5)}.home-experience .experience__project h4{margin:0;font-size:var(--text-h4);font-weight:680;letter-spacing:-.01em;line-height:1.45}.home-experience .experience__project h4 a{display:inline-flex;gap:var(--spacing-1);align-items:baseline;color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}.home-experience .experience__project h4 a svg{width:var(--spacing-3);height:var(--spacing-3);flex:0 0 auto}.home-experience .experience__project-description{color:color-mix(in srgb,var(--ink) 82%,transparent);font-weight:520}.home-experience .experience__responsibilities,.home-experience .experience__achievements{display:grid;gap:var(--spacing-1);margin:var(--spacing-3) 0 0;padding:0;font-size:var(--text-sm);line-height:1.5;list-style:none}.home-experience .experience__responsibilities li{display:grid;grid-template-columns:var(--spacing-3) minmax(0,1fr);gap:var(--spacing-1);align-items:start}.home-experience .experience__responsibilities li:before{content:"•";line-height:inherit}.home-experience .experience__achievements{color:var(--ink);font-weight:580}.home-experience .experience__achievements li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--spacing-2);align-items:start}.home-experience .experience__bullet{line-height:1.5}.home-experience .experience__tech{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:var(--spacing-1);align-items:start;margin-top:var(--spacing-4);color:var(--muted-on-page);font-size:var(--text-sm);line-height:1.5}.home-experience .experience__tech>svg{width:var(--text-sm);height:var(--text-sm);margin-top:.125rem;stroke-width:1.8}.home-experience .experience__tech-label{color:var(--ink);font-weight:650}.home-experience .experience__tech ul{display:flex;flex-wrap:wrap;gap:0 var(--spacing-1);margin:0;padding:0;list-style:none}.home-experience .experience__tech li:not(:last-child):after{content:","}.home-experience .experience__note,.home-experience .experience__additional{margin:var(--spacing-5) 0 0;padding-top:var(--spacing-5);font-size:var(--text-sm);line-height:1.5}.home-experience .experience__additional>p{margin:0;font-weight:650}.home-experience .experience__additional .experience__achievements{margin-top:var(--spacing-3)}@media(max-width:64rem){.consulting-hero__body{grid-template-columns:1fr;gap:var(--spacing-10)}.consulting-hero__rail{padding-top:0}.service-list,.use-case-list,.open-source-list,.proof-message-grid--upwork,.proof-message-grid--linkedin{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-message--featured{grid-column:span 2}}@media(max-width:48rem){.consulting-hero__body{padding-block:var(--spacing-12)}.consulting-hero__title{font-size:clamp(2rem,8vw,2.8rem)}.proof-platform__heading{display:grid;gap:var(--spacing-3);align-items:start}.service-list,.use-case-list,.open-source-list,.proof-message-grid--upwork,.proof-message-grid--linkedin{grid-template-columns:1fr}.technology-pyramid__level{width:100%;flex-direction:column}.technology-pyramid__item,.technology-pyramid__foundation,.technology-pyramid__cta{width:100%}.technology-pyramid__cta{align-items:flex-start;flex-direction:column}.proof-message--featured{grid-column:auto}.proof-message,.proof-message--featured{min-height:0}.proof-message--featured blockquote{font-size:var(--text-lead)}.home-experience .experience__toolbar{justify-content:flex-end}.home-experience .experience__role-dates,.home-experience .experience__responsibilities,.home-experience .experience__achievements,.home-experience .experience__note,.home-experience .experience__additional{font-size:var(--text-base)}}@media(prefers-reduced-motion:reduce){.consulting-hero__actions svg,.text-link svg,.proof-platform__heading a svg,.open-source-item .text-link svg,.home-experience .experience__more svg{transition:none}.technology-pyramid__item{transition:none}}@keyframes home-hero-reveal{0%{opacity:0;transform:translateY(var(--hero-reveal-y, 18px))}}@keyframes home-marker-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){.site-header[data-hero-identity],.consulting-hero__identity,.consulting-hero__rail{animation:home-hero-reveal var(--motion-enter-duration) var(--ease-out) both}.site-header[data-hero-identity]{--hero-reveal-y: 18px;animation-duration:var(--motion-enter-duration-fast)}.consulting-hero__identity{--hero-reveal-y: 22px;animation-delay:.26s}.consulting-hero__rail{animation-duration:var(--motion-enter-duration-fast);animation-delay:.54s}[data-hero-marker]{animation:home-marker-spin 18s linear infinite;transform-origin:50% 50%}.hero-rail__intro+ul>li:nth-child(2n) [data-hero-marker]{animation-direction:reverse}.hero-rail__intro+ul>li:nth-child(2) [data-hero-marker]{animation-duration:22s}.hero-rail__intro+ul>li:nth-child(3) [data-hero-marker]{animation-duration:26s}.service-block{--reveal-x: -1.25rem;--reveal-y: 0}.consulting-proof--clients .proof-message{--reveal-x: -.75rem}.consulting-approach,.technology-pyramid{--reveal-stagger: var(--motion-enter-stagger-relaxed)}.home-experience{--reveal-stagger: var(--motion-enter-stagger-compact)}.home-experience [data-reveal-item]{--reveal-y: .75rem}}
