@font-face{font-family:Inter;src:url(/fonts/inter-variable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Inter Tight;src:url(/fonts/inter-tight-variable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{--ink:#12191d;--muted:#5f696d;--paper:#f4f1e9;--paper-deep:#f0ede5;--line:#12191d2b;--blue:#3559f7;--acid:#c8ff52;--white:#fffdf8;--font-body:"Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Inter Tight", "Inter", ui-sans-serif, sans-serif;--section-space:clamp(112px, 9vw, 138px)}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html{scroll-behavior:smooth;scroll-padding-top:94px}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}:is(a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible){outline:3px solid var(--blue);outline-offset:4px}.skip-link{z-index:1000;background:var(--ink);color:var(--white);padding:12px 16px;font-size:13px;font-weight:800;transition:transform .2s;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.shell{width:min(1380px,100% - 80px);margin-inline:auto}.site-header{z-index:100;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f4f1e9f5;width:100%;height:78px;font-size:14px;position:fixed;top:0;left:0}main#main-content{padding-top:78px}.site-header-inner{grid-template-columns:1fr auto 1fr;align-items:center;height:100%;display:grid}.brand{align-items:center;width:fit-content;min-height:44px;display:inline-flex}.brand-logo{width:160px;height:auto;display:block}.site-header nav{color:var(--muted);gap:34px;display:flex}.site-header nav a,.header-cta{transition:color .2s}.site-header nav a{align-items:center;min-height:44px;display:inline-flex;position:relative}.site-header nav a:after{content:"";background:var(--blue);transform-origin:0;height:2px;transition:transform .2s;position:absolute;bottom:7px;left:0;right:0;transform:scaleX(0)}.site-header nav a:hover,.site-header nav a.is-active,.header-cta:hover{color:var(--blue)}.site-header nav a.is-active:after{transform:scaleX(1)}.header-cta{justify-self:end;font-weight:700}.contact-trigger{cursor:pointer;border:0}.header-cta.contact-trigger{color:inherit;background:0 0;align-items:center;gap:4px;padding:0;display:inline-flex}.mobile-menu-button,.mobile-menu{display:none}@media (max-width:960px){html{scroll-padding-top:82px}.site-header{background:var(--paper);-webkit-backdrop-filter:none;backdrop-filter:none;height:70px}main#main-content{padding-top:70px}.site-header-inner{grid-template-columns:1fr auto}.desktop-nav,.desktop-contact{display:none!important}.mobile-menu-button{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}:is(.mobile-menu-button:hover,.mobile-menu-button:focus-visible,.mobile-menu-button.is-open){color:var(--blue)}.mobile-menu-button:focus-visible{box-shadow:0 0 0 2px var(--paper), 0 0 0 4px var(--blue);border-radius:50%;outline:0}.mobile-menu-icon{width:24px;height:18px;display:block;position:relative}.mobile-menu-icon span{background:currentColor;width:100%;height:2px;transition:transform .22s,top .22s,bottom .22s;position:absolute;left:0}.mobile-menu-icon span:first-child{top:4px}.mobile-menu-icon span:last-child{bottom:4px}.mobile-menu-button.is-open .mobile-menu-icon span:first-child{top:8px;transform:rotate(45deg)}.mobile-menu-button.is-open .mobile-menu-icon span:last-child{bottom:8px;transform:rotate(-45deg)}.mobile-menu{z-index:99;background:var(--paper);border-top:1px solid var(--line);position:fixed;inset:70px 0 0;overflow-y:auto}.mobile-menu.is-open{display:block}.mobile-menu>nav{min-height:calc(100dvh - 70px);padding-block:30px max(30px, env(safe-area-inset-bottom));color:var(--ink);flex-direction:column;gap:0;display:flex}.mobile-menu nav a{border-bottom:1px solid var(--line);letter-spacing:-.045em;grid-template-columns:44px 1fr;align-items:center;min-height:68px;font-size:clamp(30px,7vw,48px);font-weight:650;display:grid}.mobile-menu nav a:first-child{border-top:1px solid var(--line)}.mobile-menu nav a:after{display:none}.mobile-menu nav a>span{color:var(--blue);letter-spacing:.1em;font-size:10px;font-weight:800}.mobile-menu nav a.is-active{color:var(--blue)}.mobile-menu-contact{width:100%;min-height:58px;margin-top:auto}}.hero-section{isolation:isolate;position:relative;overflow:hidden}.hero{z-index:1;grid-template-columns:minmax(0,1fr) minmax(190px,230px);align-items:start;gap:clamp(52px,7vw,108px);min-height:860px;padding-block:82px 94px;display:grid;position:relative}.hero-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-backdrop-shape{pointer-events:none;will-change:transform;display:block;position:absolute}.hero-backdrop-blue-one{filter:blur(2px);background:linear-gradient(104deg,#3559f700 0%,#3559f714 23%,#3559f72e 48%,#3559f712 74%,#3559f700 100%);border-radius:45% 55% 48% 52%/58% 40% 60% 42%;width:190vw;height:clamp(520px,58vw,820px);animation:22s ease-in-out infinite alternate hero-flow-blue;top:-2%;left:-46vw;right:auto;transform:rotate(-15deg)}.hero-copy,.hero-portrait{z-index:1;position:relative}@keyframes hero-flow-blue{0%{transform:translate(-4%,-2%)rotate(-15deg)scale(1)}to{transform:translate(4%,5%)rotate(-10deg)scale(1.07)}}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.13em;margin:0 0 28px;font-size:12px;font-weight:800}.section-kicker{color:var(--blue)}.eyebrow{flex-wrap:wrap;align-items:center;gap:7px 9px;display:flex}.eyebrow span{color:var(--blue)}.hero h1,.section-intro h2,.recommendations-heading h2,.services-heading h2,.background-heading h2,.experience-section h2,.contact-section h2{font-family:var(--font-display);letter-spacing:-.048em;margin:0;font-weight:650;line-height:.94}.hero h1{max-width:900px;font-size:clamp(62px,6.3vw,98px)}.hero-title-line{color:var(--ink);display:block}.hero-title-line.hero-title-accent{color:var(--blue)}.hero-story{max-width:820px;margin-top:44px}.hero-story p{color:var(--ink);margin:0 0 16px;font-size:15px;line-height:1.72}.hero-story p:last-child{margin-bottom:0}.hero-story .hero-story-lead{max-width:760px;color:var(--ink);letter-spacing:-.012em;margin-bottom:21px;font-size:clamp(18px,1.45vw,21px);line-height:1.58}.hero-actions{align-items:center;gap:34px;margin-top:42px;display:flex}.button{justify-content:space-between;align-items:center;gap:28px;min-height:58px;padding:0 23px;font-size:14px;font-weight:750;display:inline-flex}.button-primary{background:var(--ink);color:var(--paper)}.button:disabled{cursor:wait;opacity:.7}.button:hover span{transform:translate(2px,-2px)}.button span{transition:transform .2s}.text-link{border-bottom:1px solid var(--ink);padding-block:12px;font-size:14px;font-weight:750}.hero-portrait{aspect-ratio:1;isolation:isolate;justify-self:end;width:min(100%,260px);margin:96px 0 0}.hero-portrait:before,.hero-portrait:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.hero-portrait:before{z-index:2;border:1.5px solid var(--blue);inset:-5px}.hero-portrait:after{z-index:-1;border:1px solid #3559f766;inset:-10px 7px 7px -10px}.hero-portrait-crop{border-radius:50%;width:100%;height:100%;display:block;overflow:hidden}.hero-portrait picture{width:100%;height:100%;display:block}.hero-portrait img{object-fit:cover;object-position:50% 42%;transform-origin:50% 46%;width:100%;height:100%;display:block;transform:scale(1.1)}.proof{border-block:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.proof div{border-right:1px solid var(--line);align-items:center;gap:15px;padding:34px 24px;display:flex}.proof div:last-child{border-right:0}.proof strong{letter-spacing:-.05em;color:var(--blue);font-size:clamp(24px,2vw,30px)}.proof strong.proof-word{letter-spacing:-.05em}.proof strong.proof-word-nowrap{white-space:nowrap}.proof span{color:var(--muted);max-width:180px;font-size:12px;line-height:1.35}.work-section{padding-block:var(--section-space);grid-template-columns:.72fr 1.28fr;align-items:start;gap:8vw;display:grid}.sticky-section-heading{align-self:start;position:sticky;top:110px}.section-intro h2,.recommendations-heading h2,.services-heading h2,.background-heading h2,.experience-section h2{font-size:clamp(48px,5vw,78px)}.accent-punctuation{color:var(--blue)}.section-intro>p:last-child{max-width:500px;color:var(--muted);margin:34px 0 0;font-size:17px;line-height:1.65}.project-list{border-top:1px solid var(--line)}.project-card{--project-index:56px;--project-columns:var(--project-index) minmax(0, 1.12fr) minmax(280px, .88fr);border-bottom:1px solid var(--line);padding:34px 0 38px}.project-topline{grid-template-columns:var(--project-columns);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-items:baseline;font-size:11px;font-weight:750;display:grid}.project-topline>span:first-child{color:var(--blue)}.project-topline>span:last-child{text-align:left}.date-token{white-space:nowrap}.project-client{align-items:baseline;gap:9px;display:flex}.project-client-status{border:1px solid var(--line);color:var(--ink);letter-spacing:.08em;white-space:nowrap;background:0 0;border-radius:999px;padding:4px 6px;font-size:10px;font-weight:800;line-height:1}.project-body{grid-template-columns:var(--project-columns);align-items:start;margin-top:42px;display:grid}.project-body h3{letter-spacing:-.045em;grid-column:2;margin:0;padding-right:clamp(28px,3vw,48px);font-size:clamp(29px,3vw,48px);font-weight:650;line-height:1.04}.project-body p{color:var(--muted);grid-column:3;margin:0;font-size:15px;line-height:1.65}.tag-list{margin:32px 0 0 var(--project-index);flex-wrap:wrap;gap:7px;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.065em;border-radius:999px;padding:8px 11px;font-size:11px}.projects-disclosure{display:contents}.projects-disclosure>summary{display:none}.projects-disclosure>summary::-webkit-details-marker{display:none}.recommendations-section{background:var(--paper-deep);border-block:1px solid var(--line)}.recommendations-inner{padding-block:var(--section-space);grid-template-columns:.72fr 1.28fr;align-items:start;gap:8vw;display:grid}.recommendations-heading>p:not(.section-kicker){max-width:440px;color:var(--muted);margin:32px 0 0;font-size:16px;line-height:1.65}.recommendations-carousel,.recommendations-deferred{min-width:0}.recommendations-placeholder{min-height:532px}.recommendations-placeholder-controls{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:18px;display:flex}.recommendations-placeholder-controls span{background:#12191d1a;height:12px;display:block}.recommendations-placeholder-controls span:first-child{width:86px}.recommendations-placeholder-controls span:last-child{width:96px}.recommendations-placeholder-cards{grid-template-columns:1fr 1fr;gap:18px;padding-top:24px;display:grid}.recommendations-placeholder-card{border:1px solid var(--line);background:var(--paper);min-height:475px;padding:32px}.recommendations-placeholder-card:before,.recommendations-placeholder-card:after{content:"";background:#12191d17;display:block}.recommendations-placeholder-card:before{width:56%;height:16px}.recommendations-placeholder-card:after{width:82%;height:10px;margin-top:42px;box-shadow:0 26px #12191d17,0 52px #12191d17,0 78px #12191d17}.recommendations-controls{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:18px;display:flex}.recommendations-progress{min-width:92px;color:var(--blue);font-variant-numeric:tabular-nums;letter-spacing:.09em;white-space:nowrap;margin:0;font-size:11px;font-weight:800}.recommendations-buttons{gap:8px;display:flex}.recommendations-buttons button{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;font-size:19px;transition:background .2s,color .2s,border-color .2s}.recommendations-buttons button:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:var(--white)}.recommendations-buttons button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.recommendations-buttons button:disabled{opacity:.3;cursor:default}.recommendations-swipe-hint{display:none}.recommendations-track{scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:calc(50% - 9px);grid-auto-flow:column;gap:18px;padding:24px 0 8px;display:grid;overflow-x:auto}.recommendations-track::-webkit-scrollbar{display:none}.recommendations-track:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.recommendation-card{scroll-snap-align:start;background:var(--paper);border:1px solid var(--line);flex-direction:column;min-height:475px;padding:32px;display:flex}.recommendation-mark{color:var(--blue);font-family:Georgia,serif;font-size:70px;line-height:.75}.recommendation-card blockquote{margin:28px 0 26px}.recommendation-card blockquote p{color:var(--ink);white-space:pre-line;-webkit-line-clamp:8;-webkit-box-orient:vertical;margin:0;font-size:15px;line-height:1.67;display:-webkit-box;overflow:hidden}.recommendation-card blockquote p:last-child{margin-bottom:0}.recommendation-read-button{border:0;border-bottom:1px solid var(--ink);width:fit-content;min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;margin:auto 0 16px;padding:10px 0 7px;font-size:12px;font-weight:800}.recommendation-read-button:hover{color:var(--blue);border-color:var(--blue)}.recommendation-read-button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.recommendation-card footer{border-top:1px solid var(--line);grid-template-rows:auto minmax(34px,auto) auto;align-content:start;gap:6px;height:126px;padding-top:24px;display:grid}.recommendation-card footer a{align-items:center;width:fit-content;min-height:44px;padding-block:8px;font-size:14px;font-weight:800;display:inline-flex}.recommendation-card footer a:hover{color:var(--blue)}.recommendation-card footer>span{color:var(--muted);font-size:12px;line-height:1.45}.recommendation-card footer small{color:var(--blue);text-transform:uppercase;letter-spacing:.07em;margin-top:5px;font-size:10px;font-weight:750}.recommendation-dialog{background:var(--paper);width:min(780px,100% - 40px);max-height:min(86vh,820px);color:var(--ink);border:0;margin:auto;padding:0;box-shadow:0 30px 100px #12191d47}.recommendation-dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#12191db8}.recommendation-dialog-inner{max-height:min(86vh,820px);position:relative;overflow-y:auto}.recommendation-dialog-topbar{z-index:4;background:linear-gradient(var(--paper) 78%, #f4f1e900);justify-content:space-between;align-items:center;padding:16px 20px 8px 48px;display:flex;position:sticky;top:0}.recommendation-dialog-topbar>span{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:800}.recommendation-dialog-content{padding:0 48px 48px}.recommendation-dialog-close{width:44px;height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;font-size:25px;transition:background .2s,color .2s;display:inline-flex}.recommendation-dialog-close:hover{color:var(--blue);background:#12191d14}.recommendation-dialog-close:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.recommendation-dialog .section-kicker{color:var(--blue)}.recommendation-dialog blockquote{margin:32px 0 42px}.recommendation-dialog blockquote p{letter-spacing:-.015em;margin:0 0 20px;font-size:clamp(17px,2vw,22px);line-height:1.62}.recommendation-dialog blockquote p:last-child{margin-bottom:0}.recommendation-dialog footer{border-top:1px solid var(--line);gap:7px;padding-top:26px;display:grid}.recommendation-dialog footer a{width:fit-content;font-size:16px;font-weight:800}.recommendation-dialog footer a:hover{color:var(--blue)}.recommendation-dialog footer>span{color:var(--muted);font-size:13px;line-height:1.5}.recommendation-dialog footer small{color:var(--blue);text-transform:uppercase;letter-spacing:.07em;margin-top:4px;font-size:10px;font-weight:750}.services-section{background:var(--ink);color:var(--white);padding-block:var(--section-space)}.services-inner{grid-template-columns:.85fr 1.15fr;gap:9vw;display:grid}.section-kicker.light,.expertise-highlight{color:var(--acid)}.services-grid{border-top:1px solid #ffffff40;grid-template-columns:1fr 1fr;display:grid}.services-grid article{border-bottom:1px solid #ffffff40;min-height:250px;padding:28px}.services-grid article:nth-child(odd){border-right:1px solid #ffffff40}.services-grid article>span{color:var(--acid);font-size:11px}.services-grid h3{letter-spacing:-.025em;margin:62px 0 18px;font-size:25px}.services-grid p{color:#ffffffb3;margin:0;font-size:15px;line-height:1.65}.background-section{padding-block:0 var(--section-space);grid-template-columns:.62fr 1.38fr;gap:10vw;display:grid}.background-heading h2 span{color:var(--blue);display:block}.credentials{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:40px;padding-top:30px;display:grid}.credential-column{flex-direction:column;gap:38px;min-width:0;display:flex}.credential-block>span{text-transform:uppercase;letter-spacing:.1em;color:var(--blue);font-size:10px;font-weight:800;display:block}.credential-block>.credential-subheading{margin-top:28px}.credential-disclosure-heading{list-style:none}.credential-disclosure-heading::-webkit-details-marker{display:none}.credential-disclosure-heading>span:first-child>span:first-child{text-transform:uppercase;letter-spacing:.1em;color:var(--blue);font-size:10px;font-weight:800;display:block}.credential-disclosure-heading>span:first-child>span:last-child,.credential-disclosure-toggle,.credential-disclosure>.credential-disclosure-heading,.career-disclosure>.credential-disclosure-heading{display:none}.credential-list{border-top:1px solid var(--line);margin-top:12px}.credential-row{border-bottom:1px solid var(--line);padding:14px 0}.credential-row strong{font-size:14px;line-height:1.45;display:block}.credential-row>span{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.5;display:block}.credential-row a{align-items:center;min-height:44px;display:inline-flex}.credential-row-inline{grid-template-columns:1fr auto;align-items:baseline;gap:20px;display:grid}.credential-row-inline>span{text-align:right;margin-top:0}.credentials a{color:var(--ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.credentials a:hover{color:var(--blue)}.experience-section{padding-block:var(--section-space);grid-template-columns:.8fr 1.2fr;align-items:start;gap:10vw;display:grid}.experience-highlight{color:var(--blue)}.timeline{border-top:1px solid var(--line)}.timeline-row{border-bottom:1px solid var(--line);box-sizing:border-box;grid-template-columns:110px 1fr 1.4fr;align-items:center;gap:18px;min-height:72px;padding:15px 0;display:grid}.timeline-row span{color:var(--muted);font-size:13px}.timeline-row strong{font-size:16px}.timeline-current>span:first-child{color:var(--blue);align-items:center;gap:8px;font-weight:750;display:flex}.timeline-current>span:first-child:before{content:"";background:var(--blue);border-radius:50%;flex:none;width:7px;height:7px}.contact-section{background:var(--blue);color:#fff}.contact-inner{flex-direction:column;justify-content:center;min-height:550px;padding-block:90px;display:flex}.contact-section h2{max-width:1100px;font-size:clamp(64px,8.5vw,132px)}.contact-actions{flex-wrap:wrap;align-items:center;gap:32px;margin-top:55px;display:flex}.button-light{background:var(--acid);color:var(--ink)}.linkedin-link{min-height:44px;color:inherit;background:0 0;border-bottom:1px solid #fff;align-items:center;padding:10px 0;font-size:14px;font-weight:750;display:inline-flex}.linkedin-link:hover{color:var(--acid);border-color:var(--acid)}.contact-dialog{background:var(--paper);width:min(820px,100% - 40px);max-height:min(90vh,900px);color:var(--ink);border:0;margin:auto;padding:0;box-shadow:0 30px 100px #12191d52}.contact-dialog::backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#12191ddb}.contact-dialog-inner{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:min(90vh,900px);padding:0;position:relative;overflow-y:auto}.contact-dialog-topbar{z-index:4;background:linear-gradient(var(--paper) 75%, #f4f1e900);justify-content:space-between;align-items:center;padding:20px 22px 0 54px;display:flex;position:sticky;top:0}.contact-dialog-topbar>span{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:800}.contact-dialog-close{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;font-size:25px;transition:background .2s,color .2s;display:inline-flex}.contact-dialog-content{padding:0 54px 52px}.contact-dialog-close:hover{color:var(--blue);background:#12191d14}.contact-dialog-close:focus-visible{box-shadow:0 0 0 2px var(--paper), 0 0 0 4px var(--blue);outline:0}.contact-form input:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.contact-form textarea:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.contact-trigger:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.contact-dialog .section-kicker{color:var(--blue);margin-bottom:22px}.contact-dialog h2{letter-spacing:-.06em;max-width:680px;margin:0;font-size:clamp(42px,6vw,66px);font-weight:650;line-height:.98}.contact-dialog-intro{max-width:620px;color:var(--muted);margin:24px 0 0;font-size:16px;line-height:1.6}.contact-form{gap:24px;margin-top:38px;display:grid}.contact-form-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.contact-form label{gap:9px;display:grid}.contact-form label>span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.contact-form input,.contact-form textarea{border:1px solid var(--line);background:var(--white);width:100%;color:var(--ink);font:inherit;-moz-text-size-adjust:100%;text-size-adjust:100%;border-radius:0;font-size:16px}.contact-form input{min-height:50px;padding:0 14px}.contact-form textarea{resize:vertical;min-height:160px;padding:14px;line-height:1.55}.contact-form-footer{justify-content:space-between;align-items:center;gap:28px;margin-top:4px;display:flex}.contact-form-footer>p{max-width:320px;color:var(--muted);margin:0;font-size:11px;line-height:1.5}.contact-form-footer>p a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.contact-form-error{color:#a12828;margin:-8px 0 0;font-size:13px;line-height:1.5}.turnstile-shell{min-width:0;min-height:0}.turnstile-shell>div,.turnstile-shell iframe{max-width:100%}.contact-honeypot{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.contact-success{flex-direction:column;justify-content:center;align-items:flex-start;min-height:480px;display:flex}.contact-success[hidden]{display:none!important}.contact-success>p:not(.section-kicker){max-width:560px;color:var(--muted);margin:28px 0 36px;font-size:17px;line-height:1.65}.contact-success .button{min-width:130px}.site-footer{min-height:104px;color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;font-size:12px;line-height:1.5;display:grid}.site-footer>span:last-child{text-align:right;justify-self:end}.site-footer nav{align-items:center;gap:22px;display:flex}.site-footer a{align-items:center;min-height:44px;font-weight:700;display:inline-flex}.site-footer a:hover{color:var(--blue)}.privacy-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:96px;display:flex}.privacy-back{align-items:center;gap:6px;min-height:44px;font-size:13px;font-weight:800;display:inline-flex}.privacy-back:hover{color:var(--blue)}.privacy-page{padding-block:110px 130px}.privacy-page h1{max-width:980px;font-family:var(--font-display);letter-spacing:-.048em;margin:0;font-size:clamp(54px,7vw,104px);font-weight:650;line-height:.96}.privacy-lead{max-width:720px;color:var(--muted);margin:40px 0 0;font-size:20px;line-height:1.6}.privacy-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:80px;display:grid}.privacy-grid section{border-bottom:1px solid var(--line);padding:34px 34px 34px 0}.privacy-grid section:nth-child(odd){border-right:1px solid var(--line)}.privacy-grid section:nth-child(2n){padding-left:34px}.privacy-grid h2{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:28px}.privacy-grid p{max-width:58ch;color:var(--muted);margin:18px 0 0;font-size:15px;line-height:1.7}.privacy-grid a{color:var(--ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.privacy-grid a:hover{color:var(--blue)}.privacy-updated{color:var(--muted);margin:42px 0 0;font-size:12px}.work-section,.recommendations-inner,.services-inner,.background-section,.experience-section{grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:clamp(56px,7vw,110px)}:is(.services-section a:focus-visible,.services-section button:focus-visible,.contact-section a:focus-visible,.contact-section button:focus-visible){outline-color:var(--acid)}@media (max-width:1100px){.shell{width:min(100% - 48px,1000px)}.hero{grid-template-columns:minmax(0,1fr) minmax(185px,210px);gap:48px}.proof{grid-template-columns:1fr 1fr}.proof div:nth-child(2){border-right:0}.proof div:nth-child(-n+2){border-bottom:1px solid var(--line)}.work-section,.recommendations-inner,.services-inner,.background-section,.experience-section{grid-template-columns:1fr;gap:70px}.sticky-section-heading{position:static}}@media (max-width:900px){.hero{flex-direction:column;gap:0;min-height:auto;padding-block:42px 78px;display:flex}.hero-backdrop-blue-one{opacity:.82;width:224vw;height:116vw;top:3%;left:-66vw;right:auto}.hero-copy{display:contents}.hero .eyebrow{order:1}.hero h1{order:2}.hero-portrait{order:3;justify-self:auto;width:188px;margin:14px 0 26px auto}.hero-story{display:contents}.hero-story .hero-story-lead{order:4}.hero-actions{flex-direction:column;order:5;align-items:stretch;gap:12px;width:min(100%,520px);margin:0 0 36px}.hero-actions .button,.hero-actions .text-link{width:100%}.hero-actions .text-link{justify-content:space-between;align-items:center;min-height:58px;margin-left:0;padding:0 23px;display:flex}.hero-story p:not(.hero-story-lead){order:6}.recommendations-track{grid-auto-columns:100%}.recommendations-placeholder{min-height:424px}.recommendations-placeholder-cards{grid-template-columns:1fr}.recommendations-placeholder-card{min-height:360px}.recommendations-placeholder-card:nth-child(n+2){display:none}}@media (max-width:720px){.shell{width:min(100% - 32px,680px)}.brand-logo{width:145px}.section-intro h2,.recommendations-heading h2,.services-heading h2,.background-heading h2,.experience-section h2{font-size:clamp(40px,12vw,56px)}.hero{padding-block:32px 68px}.hero-backdrop-blue-one{opacity:.68;width:262vw;height:164vw;animation-duration:32s;top:4%;left:-84vw}.hero h1{font-size:clamp(48px,14.3vw,60px)}.hero-portrait{width:clamp(150px,42vw,180px);margin:10px 0 24px auto}.hero-story{margin-top:0}.hero-story p{font-size:15px;line-height:1.68}.hero-story .hero-story-lead{font-size:18px;line-height:1.58}.hero-actions{width:100%}.proof{grid-template-columns:1fr 1fr}.proof div{border-right:0;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:9px;min-height:145px;padding:24px 18px}.proof div:nth-child(odd){border-right:1px solid var(--line)}.proof div:nth-child(n+3){border-bottom:0}.proof strong{font-size:26px}.proof span{max-width:none;font-size:12px}.work-section,.recommendations-inner{padding-block:88px}.recommendation-card{min-height:0;padding:26px}.recommendations-swipe-hint{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:16px 0 -8px;font-size:11px;font-weight:750;display:block}.recommendation-dialog{width:100%;max-width:none;height:100dvh;max-height:none;margin:0}.recommendation-dialog-inner{height:100dvh;max-height:none;overflow-y:auto}.recommendation-dialog-topbar{padding:max(10px, env(safe-area-inset-top)) 12px 8px 22px;border-bottom:1px solid var(--line);background:var(--paper)}.recommendation-dialog-content{padding:24px 22px max(46px, env(safe-area-inset-bottom))}.recommendation-dialog blockquote{margin-top:22px}.recommendation-dialog blockquote p{font-size:17px}.project-card{--project-index:32px}.project-topline{grid-template-columns:var(--project-index) minmax(0, 1fr);gap:9px 10px}.project-topline>span:last-child{text-align:left;grid-column:2;margin-top:0}.project-body{grid-template-columns:1fr;gap:24px;margin-top:32px}.project-body h3,.project-body p{grid-column:1}.project-body h3{padding-right:0}.project-body p{font-size:16px}.tag-list{margin-left:0}.project-client-status{font-size:10px}.projects-disclosure{display:block}.projects-disclosure>summary{border:1px solid var(--ink);width:100%;min-height:52px;color:var(--ink);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;margin-top:24px;padding:0 16px;font-size:13px;font-weight:800;list-style:none;display:flex}.projects-disclosure>summary::-webkit-details-marker{display:none}.projects-toggle-open,.projects-disclosure[open] .projects-toggle-closed{display:none}.projects-disclosure[open] .projects-toggle-open{display:inline}.projects-toggle-icon:after{content:"↓";font-size:18px}.projects-disclosure[open] .projects-toggle-icon:after{content:"↑"}.projects-toggle:hover{background:var(--ink);color:var(--paper);background:var(--ink)}.services-section{padding-block:88px}.services-grid{grid-template-columns:1fr}.services-grid article:nth-child(odd){border-right:0}.services-grid article{min-height:0;padding:28px 0 32px}.services-grid h3{margin:28px 0 13px;font-size:24px}.services-grid p{font-size:15px}.background-section{padding-block:0 88px}.credentials{border-top:0;grid-template-columns:1fr;gap:0;padding-top:0}.credential-column{gap:0}.credential-block{border-top:1px solid var(--line)}.credential-disclosure>.credential-disclosure-heading{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;height:86px;display:flex}.credential-disclosure-heading>span:first-child{min-width:0;padding-block:16px}.credential-disclosure-heading>span:first-child>span:last-child{color:var(--muted);letter-spacing:0;text-transform:none;margin:5px 0 0;font-size:12px;font-weight:400;line-height:1.45;display:block}.credential-disclosure-toggle{width:44px;height:44px;color:var(--ink);flex:none;justify-content:center;align-items:center;font-size:23px;font-weight:500;display:inline-flex}.credential-disclosure-toggle:after{content:"+"}.credential-disclosure[open] .credential-disclosure-toggle:after{content:"−"}.credential-disclosure .credential-list{border-top:1px solid var(--line);margin-top:0}.availability-block{padding-top:20px}.availability-block .credential-list{margin-top:12px}.career-disclosure>.credential-disclosure-heading{border-block:1px solid var(--line);margin-bottom:0;display:flex}.career-disclosure[open]>.credential-disclosure-content .timeline{border-top:0}.credential-row{padding-block:16px}.experience-section{padding-bottom:88px}.timeline-row{grid-template-columns:90px 1fr;align-items:baseline;row-gap:8px;min-height:0;padding-block:18px}.timeline-row>span:last-child{grid-column:2}.contact-inner{min-height:500px}.contact-section h2{font-size:clamp(56px,18vw,88px)}.contact-actions{flex-direction:column;align-items:stretch;gap:14px;width:min(100%,280px)}.contact-actions>*{width:100%}.contact-actions .button-light{padding-right:12px}.contact-actions .linkedin-link{justify-content:space-between;margin-left:0;padding:10px 12px 10px 23px}.contact-dialog[open]{background:var(--paper);width:100dvw;min-width:100dvw;max-width:none;height:100dvh;min-height:100dvh;max-height:none;margin:0;position:fixed;inset:0;overflow:hidden}.contact-dialog::backdrop{background:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}.contact-dialog-inner{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;height:100dvh;max-height:none;overflow-y:auto}.contact-dialog-topbar{padding:max(12px, env(safe-area-inset-top)) 16px 12px;border-bottom:1px solid var(--line);background:var(--paper)}.contact-dialog-content{padding:24px 20px max(104px, calc(82px + env(safe-area-inset-bottom)))}.contact-dialog h2{letter-spacing:-.045em;font-size:clamp(40px,12vw,52px)}.contact-dialog-intro{margin-top:18px;font-size:15px}.contact-form{gap:18px;margin-top:28px}.contact-form-grid{grid-template-columns:1fr}.contact-form textarea{min-height:120px}.contact-form-footer{z-index:3;padding:14px 20px max(14px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper);flex-direction:column;align-items:flex-start;gap:12px;margin:0 -20px -104px;position:sticky;bottom:0}.contact-form-footer>p{max-width:none}.contact-form-footer .button{width:100%}.contact-success{min-height:calc(100dvh - 150px)}.site-footer{grid-template-columns:1fr;align-content:center;gap:4px;min-height:180px}.site-footer nav{order:3}.site-footer>span:last-child{text-align:left;justify-self:start}.privacy-header{min-height:76px}.privacy-header .brand-logo{width:130px}.privacy-back{font-size:12px}.privacy-page{padding-block:78px 96px}.privacy-page h1{font-size:clamp(48px,15vw,68px)}.privacy-lead{margin-top:30px;font-size:18px}.privacy-grid{grid-template-columns:1fr;margin-top:56px}.privacy-grid section,.privacy-grid section:nth-child(2n){border-right:0;padding:28px 0}.privacy-grid h2{font-size:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
