@font-face{font-family:Inter;src:url('/assets/InterVariable.693b77d4f32e.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#FBF8F1;--ink:#221A11;--onyx:#15120D;--brass:#9A6B1C;--brass-bright:#CDA055;--muted:#655B4F;--line:#D8D0C4;--sand:#EAE2D5;--sp-bound:12px;--sp-flow:22px;--sp-break:34px;--dur-1:120ms;--dur-2:200ms;--dur-3:320ms;--dur-4:560ms;--ease:cubic-bezier(.2,.7,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);--gutter:clamp(24px,4.45vw,72px);--header:88px;color-scheme:light}
*{box-sizing:border-box}html{scroll-padding-block-start:calc(var(--header) + 20px);-webkit-text-size-adjust:100%;scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:var(--ink);color:var(--paper)}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:5px}h1,h2,h3,h4,p,figure,ol,ul,dl,dd{margin:0}h1,h2,h3,h4{line-height:1.08;text-wrap:balance;font-weight:560}p{max-width:66ch;text-wrap:pretty}img{display:block;max-width:100%;height:auto}svg{display:block}h1,h2,h3{overflow-wrap:break-word}h1,h2{letter-spacing:-.05em}h3{letter-spacing:-.035em}em{font-style:normal;color:var(--brass)}address{font-style:normal}.wrap{width:min(100%,1536px);margin-inline:auto;padding-inline:var(--gutter)}.arrow{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.text-link{display:inline-flex;align-items:center;gap:var(--sp-bound);min-height:44px;font-weight:550;text-decoration:underline;line-height:1.4;max-width:100%}.text-link .arrow{width:19px;height:19px}.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--sp-flow);min-height:54px;padding:15px 23px;border:1px solid var(--ink);border-radius:3px;background:var(--ink);color:var(--paper);font-size:1rem;line-height:1.4;font-weight:550;text-decoration:none;box-shadow:0 5px 14px #221a110c}.button:active{transform:scale(.98)}.caption{font-size:.8125rem;line-height:1.5;color:var(--muted)}.skip{position:fixed;inset-block-start:8px;inset-inline-start:var(--gutter);transform:translateY(-200%);z-index:50;padding:12px 20px;background:var(--ink);color:var(--paper);border-radius:3px}.skip:focus{transform:translateY(0)}
.site-header{position:sticky;inset-block-start:0;z-index:10;background:#fbf8f1f5;backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:var(--sp-break);min-height:var(--header);max-width:1536px;margin-inline:auto;padding-inline:var(--gutter)}.signature{display:inline-flex;align-items:center;min-height:44px;font-size:1.3125rem;letter-spacing:-.055em;font-weight:650;text-decoration:none;white-space:nowrap}.signature span{color:var(--brass)}.main-nav{display:flex;gap:var(--sp-flow);margin-inline:auto}.main-nav a,.header-contact{min-height:44px;display:inline-flex;align-items:center;text-decoration:none;font-size:.875rem;font-weight:500}.main-nav a{padding-inline:4px}.header-actions{display:flex;align-items:center;gap:var(--sp-break);margin-inline-start:auto}.languages{display:flex;gap:3px;align-items:center}.languages a{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid transparent;font-size:.8125rem;font-weight:600;text-decoration:none;border-radius:2px}.languages a[aria-current]{border-color:var(--ink)}.header-contact{gap:var(--sp-bound)}.header-contact .arrow{width:19px;height:19px}
.hero{padding-block-start:clamp(58px,6.4vw,102px)}.hero-title-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:var(--sp-break)}.hero h1{font-size:clamp(3.5rem,6.8vw,7rem);line-height:1.01;letter-spacing:-.06em;font-weight:560;max-width:21ch}.hero-mark{width:clamp(110px,12.5vw,180px);opacity:.88;justify-self:end;align-self:center}.hero-bottom{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.65fr);gap:clamp(34px,8vw,150px);margin-block-start:calc(var(--sp-break) * 1.5);align-items:start}.hero-intro>p{font-size:1.125rem;max-width:58ch;line-height:1.65}.hero-links{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-flow);margin-block-start:var(--sp-break)}.hero-context{font-size:.875rem}.hero-context>p+p{margin-block-start:var(--sp-bound);color:var(--muted)}.availability{display:flex;gap:10px;align-items:baseline;font-weight:550}.availability>span{color:var(--brass);font-size:1.25rem}.cv-link{margin-block-start:var(--sp-flow);font-size:.875rem}.hero-context>.caption{display:block}.hero-rail{display:flex;justify-content:space-between;gap:var(--sp-flow);align-items:center;border-top:1px solid var(--line);padding-block:20px;margin-block-start:calc(var(--sp-break) * 1.75)}.hero-rail>p{font-size:.8125rem;color:var(--muted)}.hero-rail>a{display:grid;place-items:center;width:44px;min-height:44px}
.section-space{padding-block:clamp(72px,8vw,128px)}.section-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.65fr);gap:clamp(34px,8vw,150px);align-items:start;margin-block-end:clamp(48px,5vw,80px)}h2{font-size:clamp(2.7rem,5.2vw,5rem);font-weight:550;line-height:1.02;margin-block-end:.36em}.section-intro h2{margin-block-end:0}.section-intro>p{font-size:1.0625rem;color:var(--muted);max-width:36ch}.project+.project{margin-block-start:clamp(64px,7vw,112px)}.project-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr);gap:clamp(34px,5vw,80px);align-items:center}.project-copy,.project-visual{min-width:0}.project-name{font-size:.875rem;font-weight:600;margin-block-end:var(--sp-flow)}.project-copy h3{font-size:clamp(2rem,3.1vw,3.05rem);line-height:1.06;margin-block-end:.5em}.project-description{font-size:1rem;color:var(--muted)}.project-facts{display:grid;gap:var(--sp-flow);margin-block-start:var(--sp-break);font-size:.875rem;line-height:1.6}.project-facts dt{font-weight:600;margin-block-end:5px}.project-facts dd{color:var(--muted);max-width:55ch}.project-copy>.text-link{margin-block-start:var(--sp-flow);font-size:.875rem}.project-visual{position:relative;padding:clamp(22px,3vw,46px);background:var(--sand);display:flex;flex-direction:column;justify-content:center;min-height:480px;border-radius:3px;container-type:inline-size}.project-visual figcaption{font-size:.75rem;line-height:1.6;color:var(--muted);margin-block-start:var(--sp-flow);max-width:65ch}.booking-visual{background:#E7DED0}.browser-frame{border:1px solid #221a1125;background:var(--paper);border-radius:7px;overflow:hidden;box-shadow:0 20px 34px #221a1114;transform:none}.browser-bar{display:flex;align-items:center;gap:5px;padding:9px 12px;background:#f2ece2;border-bottom:1px solid #221a1114}.browser-bar>span{width:5px;height:5px;border-radius:50%;background:#a79d90}.browser-bar b{font-size:.5625rem;font-weight:500;color:#665b4b;margin-inline-start:auto}.browser-frame>img{width:100%;aspect-ratio:16/9;object-fit:cover}.booking-visual figcaption{margin-block-start:30px}
.satori-visual{background:#E3E1D3}.finder-diagram{display:flex;flex-direction:column;min-height:360px;justify-content:space-between;position:relative;gap:var(--sp-break)}.finder-diagram>p{font-size:clamp(1.625rem,5.7cqi,2.875rem);font-weight:520;letter-spacing:-.04em;line-height:1.1;max-width:16ch;z-index:1}.finder-orbit{height:90px;position:relative;display:flex;justify-content:center;align-items:center;margin-block:var(--sp-bound)}.finder-orbit>span{width:108px;height:108px;border:1px solid #546047;border-radius:50%;background:transparent;position:absolute}.finder-orbit>span:nth-child(1){transform:translateX(-64px)}.finder-orbit>span:nth-child(3){transform:translateX(64px)}.finder-diagram ol{list-style:none;display:grid;padding:0}.finder-diagram li{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-bound);padding-block:15px;border-top:1px solid #54604755;font-size:.875rem}.finder-diagram li:last-child .arrow{transform:rotate(-45deg)}.finder-diagram li:not(:last-child) .arrow{transform:rotate(90deg)}
.workflow-visual{background:#E8E4DD}.workflow-document{padding:var(--sp-break);background:var(--paper);border:1px solid #221a111b;box-shadow:0 16px 30px #221a110b;transform:none}.meeting-note>span,.plan-note>span{font-size:.75rem;color:var(--muted)}.meeting-note>p{font-size:1.25rem;line-height:1.4;letter-spacing:-.025em;margin-block-start:var(--sp-bound)}.document-arrow{padding-block:var(--sp-flow);color:var(--brass)}.plan-note>ul{list-style:none;padding:0;margin-block-start:var(--sp-bound);display:grid;gap:var(--sp-bound)}.plan-note li{display:flex;align-items:baseline;gap:10px;font-size:.8125rem;line-height:1.5}.check-box{display:block;flex-shrink:0;width:12px;height:12px;border:1px solid var(--line);background:#eae2d555}.case-study{margin-block-start:var(--sp-break);border-block:1px solid var(--line)}summary{list-style:none;cursor:pointer;min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-flow);font-size:.875rem;font-weight:550;padding-block:16px}summary::-webkit-details-marker{display:none}.plus{position:relative;flex-shrink:0;width:16px;height:16px}.plus::before,.plus::after{content:'';position:absolute;inset:7px 0 auto;height:1px;background:currentColor}.plus::after{transform:rotate(90deg)}details[open]>summary .plus::after{transform:rotate(0deg)}.case-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-break);padding-block:var(--sp-bound) var(--sp-break)}.case-story h4{font-size:1rem;line-height:1.4;font-weight:600;margin-block-end:.65em}.case-story p{font-size:.875rem;color:var(--muted);line-height:1.75}.sample{margin-block-start:var(--sp-bound);border-bottom:1px solid var(--line);scroll-margin-block-start:calc(var(--header) + 20px)}.sample-body{padding-block:var(--sp-bound) var(--sp-break)}.sample-body p{font-size:.9375rem;color:var(--muted)}.sample-body ol{padding-inline-start:22px;margin-block:var(--sp-flow);display:grid;gap:var(--sp-bound);font-size:.9375rem}
.approach{background:var(--onyx);color:var(--paper)}.approach-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(46px,10vw,160px)}.approach h2{font-size:clamp(3.3rem,5.8vw,5.6rem)}.approach-intro{max-width:38ch;color:#CFC5B8;font-size:1rem;margin-block-start:var(--sp-break)}.approach-list{list-style:none;padding:0;counter-reset:approach}.approach-list li{border-top:1px solid #fbf8f133;padding-block:var(--sp-break);position:relative;counter-increment:approach}.approach-list li:first-child{padding-block-start:22px}.approach-list h3{font-size:clamp(1.65rem,2.5vw,2.25rem);font-weight:500;line-height:1.15;margin-block-end:.6em;max-width:22ch}.approach-list p{color:#CFC5B8;font-size:.9375rem;max-width:48ch}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(46px,10vw,160px)}.about h2{font-size:clamp(2.6rem,4.5vw,4.4rem)}.about-facts{margin-block-start:calc(var(--sp-break)*1.5);display:grid;gap:var(--sp-flow);font-size:.875rem}.about-facts dt{font-weight:600;margin-block-end:5px}.about-facts dd{max-width:42ch;color:var(--muted)}.about-copy>p+p{margin-block-start:var(--sp-flow)}.about-copy>p{font-size:1rem;line-height:1.75}.about-copy>.ownership-note{font-size:.875rem;color:var(--muted);padding-block-start:var(--sp-flow);border-top:1px solid var(--line);margin-block-start:var(--sp-break)}.about-copy h3{font-size:1.5rem;margin-block-start:calc(var(--sp-break)*1.5);margin-block-end:.7em}.skills{list-style:none;padding:0;display:grid;gap:var(--sp-bound);font-size:.875rem;color:var(--muted)}.skills li{padding-inline-start:18px;position:relative}.skills li::before{content:'↗';position:absolute;inset-inline-start:0;color:var(--brass)}
.contact{background:#EBE3D5}.contact-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(46px,8vw,128px);align-items:start}.contact h2{font-size:clamp(2.9rem,5.3vw,5rem);line-height:1.02}.contact-grid>div>p{max-width:46ch}.contact .button{margin-block-start:var(--sp-break)}.contact-grid>div>.contact-note{font-size:.8125rem;color:var(--muted);margin-block-start:var(--sp-bound)}.contact-address{display:inline-flex;align-items:center;min-height:44px;margin-block-start:var(--sp-flow);font-size:1rem;overflow-wrap:anywhere}.site-footer{display:flex;flex-wrap:wrap;gap:var(--sp-flow);align-items:center;justify-content:space-between;padding-block:30px;font-size:.75rem;color:var(--muted)}.footer-credit{display:flex;gap:var(--sp-bound);align-items:center}.footer-credit>img{flex-shrink:0}.site-footer nav{display:flex;gap:var(--sp-flow);flex-wrap:wrap}.site-footer nav a{display:inline-flex;align-items:center;gap:var(--sp-bound);min-height:44px}.site-footer .arrow{width:16px;height:16px;transform:rotate(-90deg)}.site-footer>p{font-size:.6875rem}
.document-page{padding-block:64px 100px;min-height:75vh}.document-page>h1{font-size:clamp(2.9rem,6.3vw,5.8rem);margin-block-start:.7em;margin-block-end:.7em;max-width:22ch}.document-page>p+p{margin-block-start:var(--sp-flow)}.legal-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(46px,8vw,128px);margin-block-start:calc(var(--sp-break)*1.5)}.legal-grid h2{font-size:1.7rem;line-height:1.2;margin-block-end:.75em;letter-spacing:-.035em}.legal-grid h3{font-size:1rem;margin-block-start:var(--sp-break);margin-block-end:.8em;line-height:1.4;letter-spacing:0;font-weight:600}.legal-grid p,.legal-grid address{font-size:.9375rem}.legal-grid p+p{margin-block-start:var(--sp-flow)}.legal-grid .text-link{margin-block:var(--sp-break) var(--sp-bound);font-size:.875rem}.cv-page{max-width:1000px}.cv-page h2{font-size:2rem;margin-block-start:calc(var(--sp-break)*1.5);margin-block-end:.5em}.cv-headline{font-size:1.375rem;font-weight:600}.cv-summary{margin-block:var(--sp-break)}.cv-job+.cv-job{margin-block-start:var(--sp-break)}.cv-job h3{font-size:1.25rem;margin-block-end:.6em;letter-spacing:-.02em}.cv-job .caption{margin-block-end:var(--sp-bound)}
@media(min-width:1550px){.hero h1{font-size:7.2rem}.project-visual{min-height:520px}}
@media(max-width:1100px){.hero-title-row{grid-template-columns:minmax(0,1fr) 130px}.hero h1{font-size:clamp(3.9rem,7vw,6rem)}.hero-mark{width:130px}.project-visual{min-height:440px}.project-grid{gap:var(--sp-break);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.workflow-document{padding:var(--sp-flow)}.header-actions{gap:var(--sp-flow)}}
@media(max-width:800px){:root{--header:76px}.header-inner{gap:var(--sp-bound)}.main-nav{display:none}.header-actions{gap:var(--sp-flow)}.hero-title-row{grid-template-columns:minmax(0,1fr)}.hero-mark{display:none}.hero h1{font-size:clamp(3.7rem,8.6vw,5.5rem);max-width:20ch}.hero-bottom,.section-intro{grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:var(--sp-break)}.hero-intro>p{font-size:1rem}.hero-links{gap:var(--sp-bound)}.hero-rail{margin-block-start:calc(var(--sp-break)*1.5)}.project-grid{grid-template-columns:minmax(0,1fr)}.project-copy{padding-block-start:var(--sp-bound)}.project-copy h3{font-size:2.5rem;max-width:26ch}.project-description{max-width:58ch}.project-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-break)}.project-visual{min-height:0;padding:var(--sp-break)}.browser-frame{max-width:600px;width:100%;margin-inline:auto}.finder-diagram{min-height:390px}.finder-diagram>p{font-size:2.5rem;max-width:20ch}.finder-diagram ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-flow)}.finder-diagram li{align-items:flex-start;gap:var(--sp-bound);font-size:.875rem}.finder-diagram li:not(:last-child) .arrow{transform:none}.workflow-document{max-width:480px;width:100%;margin-inline:auto;padding:var(--sp-break)}.case-story{grid-template-columns:minmax(0,1fr);gap:var(--sp-break)}.case-story p{max-width:68ch}.approach-grid,.about-grid{gap:46px}.approach h2{font-size:3.5rem}.contact-grid{grid-template-columns:minmax(0,1fr);gap:var(--sp-break)}.contact h2{font-size:3.5rem}.legal-grid{grid-template-columns:minmax(0,1fr);gap:calc(var(--sp-break)*2)}}
@media(max-width:560px){:root{--gutter:24px;--header:72px}.signature{font-size:1.16rem}.header-actions{gap:var(--sp-bound)}.header-contact{min-width:44px;justify-content:flex-end}.header-contact>span{display:none}.hero{padding-block-start:48px}.hero h1{font-size:clamp(2.85rem,9.8vw,3.8rem);line-height:1.04;letter-spacing:-.05em}.hero-bottom{grid-template-columns:minmax(0,1fr);gap:var(--sp-break);margin-block-start:var(--sp-break)}.hero-intro>p{font-size:1rem;line-height:1.7}.hero-links{margin-block-start:var(--sp-flow);align-items:flex-start;flex-direction:column;gap:var(--sp-bound)}.hero-links .button{justify-content:space-between;max-width:100%;font-size:.9375rem;padding-inline:19px}.hero-context{padding-block-start:var(--sp-bound);border-top:1px solid var(--line);font-size:.8125rem}.cv-link{margin-block-start:var(--sp-bound);font-size:.8125rem}.hero-context>.caption{display:inline;margin-inline-start:10px}.hero-rail{gap:var(--sp-bound);padding-block:var(--sp-bound);margin-block-start:var(--sp-break)}.hero-rail>p{font-size:.75rem;max-width:30ch}.hero-rail>a{flex-shrink:0}.section-space{padding-block:64px}.section-intro{grid-template-columns:minmax(0,1fr);gap:var(--sp-flow);margin-block-end:var(--sp-break)}h2{font-size:2.9rem}.section-intro>p{font-size:1rem;max-width:42ch}.project-visual{padding:var(--sp-flow)}.project-visual figcaption{font-size:.6875rem}.project-copy h3{font-size:2.125rem}.project-facts{grid-template-columns:minmax(0,1fr);gap:var(--sp-flow);margin-block-start:var(--sp-flow)}.project-description{font-size:.9375rem}.project-name{margin-block-end:var(--sp-bound)}.project-copy>.text-link{margin-block-start:var(--sp-flow)}.browser-frame{border-radius:4px}.browser-bar{padding:7px 9px;gap:4px}.browser-bar b{font-size:.5rem}.finder-diagram{min-height:360px;gap:var(--sp-flow)}.finder-diagram>p{font-size:1.9rem;max-width:17ch}.finder-orbit>span{width:96px;height:96px}.finder-orbit>span:nth-child(1){transform:translateX(-54px)}.finder-orbit>span:nth-child(3){transform:translateX(54px)}.finder-diagram ol{grid-template-columns:minmax(0,1fr);gap:0}.finder-diagram li{font-size:.8125rem;padding-block:12px;align-items:center}.finder-diagram li:not(:last-child) .arrow{transform:rotate(90deg)}.workflow-document{padding:var(--sp-flow)}.meeting-note>p{font-size:1.125rem}.plan-note li{font-size:.75rem}.approach-grid,.about-grid{grid-template-columns:minmax(0,1fr);gap:calc(var(--sp-break)*1.5)}.approach h2{font-size:3.6rem}.approach-intro{font-size:.9375rem}.approach-list h3{font-size:1.75rem}.approach-list li{padding-block:var(--sp-break)}.about h2{font-size:2.7rem}.about-facts{margin-block-start:var(--sp-break)}.about-copy>p{font-size:.9375rem}.about-copy h3{margin-block-start:var(--sp-break)}.contact h2{font-size:3rem}.contact-grid>div>p{font-size:.9375rem}.contact .button{font-size:.9375rem;gap:var(--sp-bound);padding-inline:18px}.site-footer{align-items:flex-start;gap:var(--sp-bound);padding-block:var(--sp-flow)}.site-footer nav{gap:var(--sp-flow);width:100%}.site-footer>p{width:100%}.document-page{padding-block:40px 70px}.document-page>h1{font-size:2.75rem}.legal-grid{margin-block-start:var(--sp-break)}}
@media(prefers-reduced-motion:no-preference) and (hover:hover){a,summary,.button{transition:color var(--dur-1) var(--ease),background-color var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.button:hover{background:var(--onyx);transform:translateY(-2px)}.main-nav a:hover,.header-contact:hover,.text-link:hover{color:var(--brass)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:active{transform:none}}
@media(forced-colors:active){.button,.languages a[aria-current]{border:1px solid ButtonText}.hero-mark{forced-color-adjust:none}a:focus-visible,summary:focus-visible{outline:2px solid Highlight}.plus::before,.plus::after{background:ButtonText}}
@media print{.site-header,.site-footer,.skip,.button,.cv-page>.text-link{display:none}.wrap{padding-inline:0}.document-page{padding:0;max-width:none}.document-page>h1{font-size:30pt;margin-block:0 .4em}.cv-page h2{font-size:17pt;margin-block-start:22px}.cv-page h3{font-size:12pt}body{background:white;color:black;font-size:10pt;line-height:1.5}.cv-job{break-inside:avoid}.cv-job+.cv-job{margin-block-start:18px}.cv-summary{margin-block:18px}@page{size:A4;margin:18mm}}
