html{--site-scale:.8;--layout-height:calc(100svh / var(--site-scale));scroll-behavior:smooth;zoom:var(--site-scale);min-width:320px}.arrow-icon{vertical-align:-.125em;flex-shrink:0;display:inline-block}:root{--paper:#f4f3ee;--paper-light:#fbfaf6;--ink:#171916;--ink-soft:#393c36;--muted:#777a72;--line:#d7d8d0;--forest:#223b2e;--moss:#77876c;--lime:#d5f377;--white:#fffef9;--green:#223b2e;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif;--display:"Helvetica Neue", Helvetica, Arial, sans-serif;--mono:"Helvetica Neue", Helvetica, Arial, sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline:2px solid var(--forest);outline-offset:4px}::selection{background:var(--lime);color:var(--ink)}#root{min-height:100vh}h1,h2,h3,p{margin-top:0}.site-shell{min-height:100vh;overflow:clip}.section-wrap{width:min(1320px,100% - 112px);margin-inline:auto}.skip-link{z-index:20;background:var(--ink);color:var(--white);padding:12px 16px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;width:min(1440px,100% - 112px);min-height:106px;margin-inline:auto;display:flex;position:relative}.wordmark{align-items:center;gap:12px;min-width:212px;text-decoration:none;display:inline-flex}.wordmark-mark{background:var(--ink);width:39px;height:39px;color:var(--white);font:500 13px/1 var(--mono);letter-spacing:-1px;place-items:center;display:grid}.wordmark-copy{gap:5px;line-height:1;display:grid}.wordmark-copy strong{font:600 14px/1 var(--display);letter-spacing:-.3px}.wordmark-copy>span{color:var(--muted);font:9px/1 var(--mono);text-transform:uppercase;letter-spacing:.8px}.header-contacts{align-items:center;gap:clamp(20px,3.6vw,58px);margin-inline:auto;display:flex}.header-contacts a{color:var(--ink);font:600 12px/1 var(--display);text-transform:uppercase;align-items:center;gap:9px;text-decoration:none;transition:color .2s;display:inline-flex}.header-contacts a span{color:var(--muted);font:10px/1 var(--mono)}.header-contacts a:hover{color:var(--moss)}.menu-toggle{width:57px;height:57px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;padding:0;display:inline-flex}.menu-toggle>span:first-child{font:600 10px/1 var(--mono);letter-spacing:.5px;text-transform:uppercase}.menu-toggle-icon{border:1px solid var(--line);width:35px;height:35px;font:300 26px/1 var(--sans);border-radius:50%;place-items:center;transition:transform .25s,background .25s,color .25s;display:grid}.menu-toggle:hover .menu-toggle-icon,.menu-toggle.is-open .menu-toggle-icon{background:var(--ink);color:var(--white);transform:rotate(45deg)}.main-nav{background:var(--paper-light);border:1px solid var(--line);width:min(420px,100vw - 40px);padding:28px 32px 32px;animation:.22s both menu-in;position:absolute;top:calc(100% - 1px);right:0;box-shadow:0 24px 60px #1719161a}.menu-kicker{color:var(--muted);font:10px/1.5 var(--mono);letter-spacing:.8px;text-transform:uppercase;margin-bottom:18px;display:block}.main-nav>a{border-top:1px solid var(--line);color:var(--ink);font:500 21px/1.2 var(--display);grid-template-columns:35px 1fr 20px;align-items:center;gap:14px;padding:15px 0;text-decoration:none;transition:padding .2s,color .2s;display:grid}.main-nav>a>span:first-child{color:var(--muted);font:10px/1 var(--mono)}.main-nav>a .menu-link-arrow{opacity:0;text-align:right;transition:opacity .2s,transform .2s}.main-nav>a:hover,.main-nav>a.active{color:var(--forest);padding-left:7px}.main-nav>a:hover .menu-link-arrow,.main-nav>a.active .menu-link-arrow{opacity:1;transform:translate(2px,-2px)}.menu-contacts{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:13px 20px;margin-top:20px;padding-top:18px;display:grid}.menu-contacts a{color:var(--muted);font:10px/1.3 var(--mono);text-decoration:none}.menu-contacts a:hover{color:var(--forest)}.page-main{min-height:65vh}.intro{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);align-items:center;column-gap:clamp(48px,7vw,110px);min-height:min(810px,100svh - 106px);padding-top:90px;padding-bottom:95px;display:grid;position:relative}.intro-copy{padding-bottom:22px;animation:.7s both rise-in}.eyebrow,.section-kicker{color:var(--forest);font:10px/1.5 var(--mono);letter-spacing:.9px;text-transform:uppercase}.eyebrow{align-items:center;gap:10px;margin-bottom:30px;display:flex}.status-dot{background:#617d4e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #617d4e20}.eyebrow-divider{color:#a4a59e}.intro h1{max-width:710px;font:500 clamp(54px, 6.7vw, 96px)/.94 var(--display);letter-spacing:-.075em;margin-bottom:24px}.intro h1 em,.section-heading-row h2 em,.home-contact h2 em,.note-heading h1 em{color:var(--forest);font-weight:400}.intro-description{max-width:440px;color:var(--ink-soft);margin-bottom:30px;font-size:15px;line-height:1.85}.intro-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.button{border:1px solid #0000;justify-content:space-between;align-items:center;gap:24px;min-height:52px;padding:0 18px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:var(--white)}.button-primary:hover{background:var(--forest)}.button-primary span,.button-light span{color:var(--lime);font-size:18px}.button-secondary{color:var(--ink);background:0 0;padding-inline:0}.button-secondary:hover{color:var(--forest)}.intro-socials{gap:7px;margin-top:42px;display:grid}.intro-socials>span{color:var(--muted);font:9px/1.4 var(--mono);letter-spacing:.5px;text-transform:uppercase}.intro-socials strong{font:500 12px/1.4 var(--display)}.hero-art{isolation:isolate;place-items:center;min-height:570px;animation:.8s 80ms both rise-in;display:grid;position:relative}.hero-art-frame{z-index:1;border:1px solid var(--white);background:var(--forest);width:min(50%,330px);height:min(470px,78%);min-height:390px;padding:7px;position:relative;transform:translate(-2%,-1%);box-shadow:0 20px 70px #17191636}.hero-art-frame img{object-fit:cover;width:100%;height:100%;display:block}.frame-index{border:1px solid var(--white);width:58px;height:58px;color:var(--white);font:11px/1 var(--mono);place-items:center;display:grid;position:absolute;top:21%;right:-69px}.art-callout{z-index:2;color:var(--white);text-shadow:0 1px 8px #0008;font-size:12px;position:absolute}.art-callout:after{content:"";opacity:.85;background:#fff;height:1px;position:absolute}.callout-top{top:19%;right:3%}.callout-top:after{transform-origin:100%;width:110px;top:24px;right:0;transform:rotate(-42deg)}.callout-left:after{width:62px;top:50%;left:100%}.callout-bottom{bottom:17%;right:7%}.callout-bottom:after{transform-origin:100%;width:100px;top:10px;right:100%;transform:rotate(-45deg)}.hero-art-caption{color:#e3e7dd;font:8px/1 var(--mono);letter-spacing:.8px;justify-content:space-between;display:flex;position:absolute;bottom:4%;left:4%;right:5%}.scroll-cue{color:var(--muted);font:9px/1 var(--mono);letter-spacing:.6px;text-transform:uppercase;align-items:center;gap:12px;text-decoration:none;display:inline-flex;position:absolute;bottom:30px;left:0}.scroll-line{background:var(--ink);width:34px;height:1px;transition:width .2s;display:block}.scroll-cue:hover .scroll-line{width:52px}.home-metrics{padding-block:0 110px}.home-metrics ul{border-block:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.home-metrics li{border-right:1px solid var(--line);align-items:center;gap:15px;min-height:112px;padding:20px 24px;display:flex}.home-metrics li:first-child{padding-left:0}.home-metrics li:last-child{border:0;padding-right:0}.home-metrics li strong{color:var(--forest);font:500 clamp(22px, 2.8vw, 38px)/1 var(--display);letter-spacing:-.06em;flex:none}.home-metrics li span{max-width:120px;color:var(--muted);font-size:11px;line-height:1.5}.selected-work,.home-experience{padding-block:15px 120px}.section-heading-row{justify-content:space-between;align-items:end;gap:36px;margin-bottom:46px;display:flex}.section-kicker{margin-bottom:15px}.section-kicker span{color:#a4a59e}.section-heading-row h2,.home-contact h2{font:500 clamp(42px, 5vw, 68px)/.98 var(--display);letter-spacing:-.07em;margin:0}.text-link{border-bottom:1px solid var(--ink);color:var(--ink);align-items:center;gap:14px;margin-bottom:8px;padding-bottom:8px;font-size:12px;font-weight:600;text-decoration:none;transition:gap .2s,color .2s;display:inline-flex}.text-link:hover{color:var(--forest);gap:20px}.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;display:grid}.featured-card{min-width:0;text-decoration:none;display:block}.featured-image{aspect-ratio:1.4;background:#e7e8df;place-items:center;display:grid;position:relative;overflow:hidden}.featured-image:after{content:"";pointer-events:none;border:1px solid #1719160b;position:absolute;inset:0}.featured-image img{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.2,.8,.2,1);display:block}.featured-card:hover .featured-image img{transform:scale(1.045)}.featured-image-index,.featured-image-arrow{z-index:1;background:var(--paper-light);color:var(--ink);place-items:center;display:grid;position:absolute;top:14px}.featured-image-index{width:35px;height:35px;font:10px/1 var(--mono);left:14px}.featured-image-arrow{width:35px;height:35px;font-size:16px;transition:background .2s,color .2s;right:14px}.featured-card:hover .featured-image-arrow{background:var(--ink);color:var(--white)}.featured-meta{color:var(--muted);font:9px/1.4 var(--mono);text-transform:uppercase;justify-content:space-between;gap:12px;margin-top:19px;display:flex}.featured-meta span:last-child{text-align:right}.featured-card h3{font:600 20px/1.2 var(--display);letter-spacing:-.04em;margin:10px 0 8px}.featured-card>p{max-width:420px;color:var(--muted);margin:0;font-size:12px;line-height:1.75}.home-experience{border-top:1px solid var(--line);padding-top:100px}.home-experience-list{border-top:1px solid var(--line)}.home-experience-item{border-bottom:1px solid var(--line);grid-template-columns:54px 1fr 1.05fr 28px;align-items:start;gap:24px;padding:29px 0;display:grid}.home-experience-number{color:var(--moss);font:11px/1 var(--mono);padding-top:5px}.home-experience-role>span{color:var(--muted);font:10px/1.4 var(--mono)}.home-experience-role h3{font:600 19px/1.25 var(--display);margin:8px 0 4px}.home-experience-role p{color:var(--muted);margin:0;font-size:11px}.home-experience-summary{color:var(--ink-soft);margin:0;font-size:12px;line-height:1.75}.home-experience-mark{color:var(--moss);text-align:right;font-size:17px;text-decoration:none}.home-education{padding-block:5px 120px}.education-section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding-bottom:13px;display:flex}.education-section-heading .section-kicker{margin:0}.education-heading-note{color:var(--muted);font:9px/1 var(--mono);letter-spacing:.6px}.education-feature{grid-template-columns:1fr minmax(230px,34%);align-items:center;gap:40px;padding-top:26px;display:grid}.education-feature-copy{padding-block:18px}.education-date{color:var(--muted);font:10px/1.5 var(--mono);text-transform:uppercase}.education-feature h2{font:600 25px/1.2 var(--display);letter-spacing:-.045em;margin:14px 0 6px}.education-degree{color:var(--ink-soft);font-size:13px}.education-feature-tags{gap:8px;display:flex}.education-feature-tags span,.tag-list span{border:1px solid var(--line);color:var(--muted);font:9px/1 var(--mono);padding:7px 10px}.home-education .media-panel{aspect-ratio:1.8}.home-contact{background:var(--ink);color:var(--white);grid-template-columns:1.1fr .9fr;align-items:end;gap:50px;margin-bottom:100px;padding:clamp(35px,6vw,82px);display:grid}.home-contact .section-kicker{color:var(--lime)}.home-contact .section-kicker span{color:#989b91}.home-contact h2 em{color:var(--lime)}.home-contact-aside{justify-self:end;max-width:400px}.home-contact-aside>p{color:#c5c6bf;margin-bottom:25px;font-size:13px;line-height:1.8}.button-light{background:var(--white);min-width:220px;color:var(--ink)}.button-light:hover{background:var(--lime)}.home-contact-email{color:#c5c6bf;width:fit-content;font:10px/1.5 var(--mono);margin-top:19px;text-decoration:none;display:block}.home-contact-email:hover{color:var(--lime)}.site-footer{border-top:1px solid var(--line);width:min(1440px,100% - 112px);min-height:100px;color:var(--muted);justify-content:space-between;align-items:center;gap:24px;margin-inline:auto;font-size:10px;display:flex}.footer-mark{color:var(--ink);font:600 14px/1 var(--display);text-decoration:none}.footer-mark span{color:var(--moss);padding-left:4px}.footer-links{gap:20px;display:flex}.footer-links a{color:var(--ink);text-decoration:none}.footer-links a:hover{color:var(--forest)}.page-heading .section-kicker{margin-bottom:20px}.page-heading h1{font:500 clamp(64px, 10vw, 132px)/.88 var(--display);letter-spacing:-.09em;margin:0 0 19px}.heading-period{color:var(--moss)}.page-heading>p:last-child{max-width:540px;color:var(--muted);margin:0;font-size:14px;line-height:1.8}.projects-page-content,.experience-page-content{padding-bottom:120px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 30px;display:grid}.project-card{min-width:0}.project-card-main-link,.experience-entry-link{color:inherit;text-decoration:none;display:block;position:relative}.media-panel{aspect-ratio:1.75;background:#e7e8df;width:100%;position:relative;overflow:hidden}.media-panel img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.project-card:hover .media-panel img,.experience-entry:hover .media-panel img{transform:scale(1.035)}.media-placeholder{width:100%;height:100%;color:var(--muted);text-align:center;place-content:center;gap:8px;display:grid}.media-placeholder span{font:18px/1.2 var(--display)}.media-placeholder small{font:9px/1.4 var(--mono)}.project-info{justify-content:space-between;gap:18px;padding-top:20px;display:flex}.project-number{color:var(--muted);font:9px/1.5 var(--mono);letter-spacing:.5px;margin-bottom:9px;display:block}.project-info h3,.experience-copy h3{font:600 23px/1.2 var(--display);letter-spacing:-.045em;margin:0 0 8px}.project-info p,.experience-copy>p:not(.experience-company){max-width:550px;color:var(--muted);margin:0;font-size:12px;line-height:1.8}.project-arrow{border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:37px;height:37px;font-size:16px;transition:background .2s,color .2s;display:grid}.project-card:hover .project-arrow{background:var(--ink);color:var(--white)}.tag-list{flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}.tag-list span{padding:7px 9px}.entry-links{flex-wrap:wrap;gap:18px;margin-top:16px;display:flex}.entry-links a{color:var(--ink);font-size:11px;font-weight:600;text-decoration:none}.entry-links a:hover{color:var(--forest)}.card-click-overlay{z-index:1;position:absolute;inset:0}.card-link-hint{background:var(--paper-light);color:var(--ink);font:600 10px/1 var(--mono);padding:12px 14px;position:absolute;bottom:14px;right:14px}.all-work-link{border-block:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;margin-top:85px;padding:25px 0;font-size:13px;text-decoration:none;display:flex}.all-work-link span{color:var(--ink);font-weight:600}.experience-list{border-top:1px solid var(--line)}.experience-entry{border-bottom:1px solid var(--line);padding:34px 0}.experience-entry-link{grid-template-columns:minmax(240px,.75fr) 1.25fr;column-gap:46px;display:grid}.experience-entry .media-panel{aspect-ratio:1.4}.experience-copy{padding-block:3px}.timeline-date{color:var(--moss);font:10px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.4px;margin-bottom:14px;display:block}.experience-company{color:var(--muted);margin:0 0 17px;font-size:12px}.experience-copy>p:not(.experience-company)+.experience-highlights{margin-top:19px}.experience-highlights{gap:11px;margin:19px 0 0;padding:0;list-style:none;display:grid}.experience-highlights li{color:var(--ink-soft);padding-left:17px;font-size:11px;line-height:1.65;position:relative}.experience-highlights li:before{content:"";background:var(--moss);border-radius:50%;width:5px;height:5px;position:absolute;top:7px;left:0}.experience-copy .experience-highlights+p{margin-top:16px;font-size:10px}.note-page{width:min(1040px,100% - 112px);min-height:68vh;margin-inline:auto;padding-block:95px 130px}.note-heading{max-width:700px;margin-bottom:64px}.note-heading .section-kicker{margin-bottom:18px}.note-heading h1,.note-success h1{font:500 clamp(50px, 7vw, 82px)/.96 var(--display);letter-spacing:-.075em;margin:0 0 18px}.note-heading>p:last-child,.note-success-copy{max-width:470px;color:var(--muted);margin:0;font-size:13px;line-height:1.8}.note-layout{grid-template-columns:.8fr 1.2fr;gap:72px;display:grid}.note-guides{padding-top:8px}.note-guides h2{font:600 21px/1.2 var(--display);margin:0 0 24px}.note-guides ul{margin:0;padding:0;list-style:none}.note-guides li{border-top:1px solid var(--line);grid-template-columns:32px 1fr;gap:12px;padding:14px 0;display:grid}.note-guides li span{color:var(--moss);font:10px/1.7 var(--mono)}.note-guides li p{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.note-form{gap:25px;display:grid}.note-field{gap:9px;display:grid}.note-field label{font:600 11px/1.4 var(--display)}.note-field input,.note-field textarea{border:1px solid var(--line);background:var(--paper-light);width:100%;color:var(--ink);font:13px/1.6 var(--sans);resize:vertical;border-radius:0;padding:14px 15px}.note-field input:focus,.note-field textarea:focus{border-color:var(--forest);outline:1px solid var(--forest)}.note-field input::placeholder,.note-field textarea::placeholder{color:#a2a49d}.note-submit{background:var(--ink);min-height:54px;color:var(--white);cursor:pointer;border:0;justify-content:space-between;align-items:center;padding:0 17px;font-size:12px;font-weight:700;transition:background .2s;display:flex}.note-submit:hover:not(:disabled){background:var(--forest)}.note-submit>span:last-child{color:var(--lime);font-size:18px}.note-submit:disabled{cursor:wait;opacity:.7}.note-privacy{color:var(--muted);font:9px/1.5 var(--mono);margin:-13px 0 0}.note-error{color:#8b302b;background:#a93c350d;border-left:2px solid #a93c35;margin:0;padding:13px;font-size:12px;line-height:1.6}.note-error a{color:inherit;font-weight:700}.note-success{max-width:650px;padding-block:55px}.note-success .section-kicker{margin-top:27px}.success-check{width:62px;height:62px}.success-check-circle{fill:none;stroke:var(--line);stroke-width:2px}.success-checkmark{fill:none;stroke:var(--forest);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:48;stroke-dashoffset:48px;animation:.5s .1s forwards draw-check}.note-success .button{margin-top:28px}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes menu-in{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}@keyframes draw-check{to{stroke-dashoffset:0}}@media (width<=1080px){.section-wrap,.site-header,.site-footer{width:calc(100% - 72px)}.intro{grid-template-columns:minmax(0,.95fr) minmax(340px,1.05fr);column-gap:38px}.hero-art{min-height:500px}.header-contacts{gap:20px}.header-contacts a{gap:6px;font-size:10px}.experience-entry{column-gap:30px}}@media (width<=760px){.section-wrap,.site-header,.site-footer{width:calc(100% - 40px)}.site-header{gap:10px;min-height:80px}.wordmark{gap:9px;min-width:0}.wordmark-mark{width:34px;height:34px}.wordmark-copy strong{font-size:12px}.wordmark-copy>span{font-size:8px}.header-contacts{display:none}.menu-toggle{width:auto;height:48px;margin-left:auto}.menu-toggle>span:first-child{display:none}.menu-toggle-icon{width:34px;height:34px}.intro{grid-template-columns:1fr;min-height:auto;padding-top:70px;padding-bottom:80px}.intro-copy{z-index:2;position:relative}.intro h1{max-width:640px;font-size:clamp(52px,11vw,78px)}.intro-description{max-width:520px;font-size:14px}.intro-socials{margin-top:28px}.hero-art{min-height:470px;margin-top:28px}.hero-art-frame{width:min(53%,290px);height:390px;min-height:0}.callout-left{left:0}.home-metrics{padding-bottom:80px}.home-metrics ul{grid-template-columns:repeat(2,minmax(0,1fr))}.home-metrics li{border-bottom:1px solid var(--line);min-height:88px;padding:16px}.home-metrics li:first-child{padding-left:16px}.home-metrics li:nth-child(2){border-right:0}.home-metrics li:nth-child(3),.home-metrics li:nth-child(4){border-bottom:0}.home-metrics li:last-child{padding-right:16px}.selected-work,.home-experience{padding-bottom:80px}.section-heading-row{flex-direction:column;align-items:start;gap:22px;margin-bottom:30px}.section-heading-row h2,.home-contact h2{font-size:clamp(43px,9vw,62px)}.featured-grid{grid-template-columns:1fr;gap:38px}.featured-image{aspect-ratio:1.55}.featured-card h3{font-size:20px}.home-experience{padding-top:75px}.home-experience-item{grid-template-columns:32px 1fr 22px;gap:14px}.home-experience-summary{grid-column:2/-1}.home-experience-mark{grid-area:1/3}.home-education{padding-bottom:80px}.education-feature{grid-template-columns:1fr;gap:15px}.education-feature-copy{padding-bottom:0}.education-feature h2{font-size:22px}.home-education .media-panel{aspect-ratio:1.8}.home-contact{grid-template-columns:1fr;gap:35px;margin-bottom:65px;padding:34px 26px}.home-contact-aside{justify-self:start}.site-footer{flex-wrap:wrap;justify-content:space-between;min-height:94px;padding-block:20px}.site-footer>span{order:3;width:100%}.page-heading{padding-top:82px;padding-bottom:55px}.page-heading h1{font-size:clamp(58px,13vw,98px)}.project-grid{grid-template-columns:1fr;row-gap:42px}.projects-page-content,.experience-page-content{padding-bottom:80px}.experience-entry{padding-block:25px}.experience-entry .media-panel{aspect-ratio:1.65}.experience-entry-link{grid-template-columns:1fr;gap:22px}.note-page{width:calc(100% - 40px);padding-block:70px 90px}.note-heading{margin-bottom:45px}.note-layout{grid-template-columns:1fr;gap:40px}.note-guides{order:2}.note-form{order:1}}@media (width<=480px){.main-nav{padding:23px 22px 24px}.intro{padding-top:56px;padding-bottom:70px}.intro h1{font-size:clamp(47px,12vw,62px)}.intro-actions{flex-direction:column;align-items:start;gap:5px}.button-primary{min-height:49px}.hero-art{min-height:390px;margin-inline:-8px}.hero-art-frame{width:54%;height:315px}.frame-index{width:43px;height:43px;font-size:9px;right:-49px}.art-callout{font-size:10px}.callout-top{top:17%;right:0}.callout-left{padding:10px 12px;top:47%;left:0}.callout-bottom{bottom:17%;right:1%}.hero-art-caption{font-size:7px}.scroll-cue{bottom:21px}.home-metrics li{gap:9px;padding:13px 10px}.home-metrics li:first-child{padding-left:10px}.home-metrics li:last-child{padding-right:10px}.home-metrics li strong{font-size:24px}.home-metrics li span{font-size:10px}.featured-meta{font-size:8px}.featured-meta span:last-child{max-width:50%}.home-experience-item{grid-template-columns:25px 1fr 18px;gap:10px}.home-experience-role h3{font-size:16px}.home-experience-summary{font-size:11px}.education-section-heading{align-items:start;gap:15px}.education-heading-note{text-align:right}.site-footer{column-gap:10px;font-size:9px}.footer-links{gap:12px}.page-heading h1{font-size:57px}.project-info h3,.experience-copy h3{font-size:21px}.all-work-link{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-shell{background:#fbfbfa}.home-header{border:0;width:100%;height:0;min-height:0;margin:0;padding:0;position:absolute;inset:0 0 auto}.home-header .wordmark{display:none}.home-header .home-contacts{width:min(500px,42vw);height:270px;margin:0;display:block;position:absolute;top:5.3vh;left:5vw}.home-header .home-contacts a{color:#080908;font:700 clamp(14px, 1.43vw, 21px)/.93 var(--display);letter-spacing:-.025em;text-transform:uppercase;align-items:flex-start;gap:13px;display:flex;position:absolute}.home-header .home-contacts a span{min-width:24px;color:inherit;font:700 12px/1 var(--sans);letter-spacing:-.04em;padding-top:2px}.home-header .home-contacts a:nth-child(6){top:23vh;left:0}.home-header .menu-toggle{z-index:45;width:46px;height:46px;position:absolute;top:2.4vh;right:2.1vw}.home-header .menu-toggle>span:first-child{display:none}.home-header .menu-toggle-icon{background:0 0;border:0;border-radius:0;width:44px;height:44px;font-size:0}.home-header .menu-toggle-icon:before,.home-header .menu-toggle-icon:after{content:"";background:#131411;width:1px;height:34px;position:absolute}.home-header .menu-toggle-icon:after{transform:rotate(90deg)}.home-header .menu-toggle:hover .menu-toggle-icon,.home-header .menu-toggle.is-open .menu-toggle-icon{color:inherit;background:0 0}.home-header .menu-toggle:hover .menu-toggle-icon:before,.home-header .menu-toggle:hover .menu-toggle-icon:after,.home-header .menu-toggle.is-open .menu-toggle-icon:before,.home-header .menu-toggle.is-open .menu-toggle-icon:after{background:var(--moss)}.home-header .main-nav{z-index:50;width:min(360px,100vw - 32px);top:70px;right:3vw}.home-hero{isolation:isolate;background:#fbfbfa;width:100%;height:100svh;min-height:650px;position:relative;overflow:hidden}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.hero-blur{z-index:-1;opacity:.8;filter:blur(35px);place-items:center;width:60%;height:108%;display:grid;position:absolute;top:-4%;left:37%;overflow:hidden;-webkit-mask-image:radial-gradient(at 52% 43%,#000 0% 37%,#0000 76%);mask-image:radial-gradient(at 52% 43%,#000 0% 37%,#0000 76%)}.hero-blur img{object-fit:cover;width:54%;height:100%;display:block;transform:scale(1.7)}.hero-blur:after{content:"";mix-blend-mode:multiply;background:radial-gradient(at 54% 46%,#26351d88 0,#26351d44 38%,#0000 76%);position:absolute;inset:0}.hero-image-frame{z-index:3;background:#0c180f;border:2px solid #fff;width:clamp(174px,14vw,235px);height:clamp(265px,36.5vh,350px);padding:3px;position:absolute;top:45%;left:58.8%;transform:translate(-50%,-50%)}.hero-image-frame>img{object-fit:cover;width:100%;height:100%;display:block}.frame-index{color:#fff;width:50px;height:50px;font:11px/1 var(--mono);border:1px solid #fff;place-items:center;display:grid;position:absolute;top:25%;right:-56px}.hero-annotation-lines{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hero-annotation-lines path{fill:none;stroke:#fff;stroke-width:1.15px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px #20281b55)}.art-callout{z-index:4;color:#fff;font:500 13px/1.1 var(--sans);text-shadow:0 1px 6px #27301b99;position:absolute}.callout-top{border-bottom:1px solid #fff;padding-bottom:5px;top:25.5%;left:79%}.callout-left{border:1px solid #fff;padding:14px 16px;top:50.7%;left:42.2%}.callout-bottom{border-bottom:1px solid #fff;padding-bottom:5px;top:61.5%;left:72.8%}.hero-node{z-index:4;color:#fff;width:50px;height:50px;font:11px/1 var(--mono);text-shadow:0 1px 5px #172017;border:1px solid #fff;place-items:center;display:grid;position:absolute}.hero-node-two{top:75%;left:69%}.hero-cta{z-index:5;color:#111;width:258px;min-height:69px;font:700 24px/.91 var(--display);letter-spacing:-.025em;text-transform:uppercase;border:2px solid #111;justify-content:space-between;align-items:center;gap:20px;padding:9px 18px;text-decoration:none;transition:background .2s,color .2s;display:flex;position:absolute;top:51.5%;left:5%}.hero-cta-arrow{font:400 30px/.8 var(--sans);transition:transform .2s}.hero-cta:hover .hero-cta-arrow{transform:translate(5px)}.hero-plus{z-index:5;color:#111;font:300 48px/.7 var(--sans);place-items:center;text-decoration:none;display:grid;position:absolute}.hero-plus-bottom{width:48px;height:48px;bottom:4.8%;left:3.2%}.hero-scroll{z-index:5;align-items:center;gap:12px;padding:8px;text-decoration:none;display:flex;position:absolute;bottom:6.1%;right:3.3%}.hero-tick{background:#20211f;width:1px;height:13px;transition:height .2s,background .2s;display:block}.hero-tick.is-active,.hero-scroll:hover .hero-tick{background:#60704e;height:18px}.home-metrics{padding-top:50px}.selected-work,.home-experience,.home-education{scroll-margin-top:35px}.featured-image img{object-fit:cover}.media-panel,.featured-image{background:#efefed}.media-panel img,.featured-image img{object-fit:cover}.media-panel .media-hover-image,.featured-image .featured-image-hover{opacity:0;transition:opacity .3s,transform .5s;position:absolute;inset:0}.project-card:hover .media-panel .media-hover-image,.featured-card:hover .featured-image-hover{opacity:1}.home-contact{position:relative}@media (width<=760px){.home-hero{min-height:max(760px,100svh)}.home-header .home-contacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;width:calc(100% - 88px);height:auto;display:grid;top:22px;left:20px}.home-header .home-contacts a{letter-spacing:-.04em;gap:7px;font-size:11px;line-height:1;position:static}.home-header .home-contacts a span{min-width:18px;font-size:9px}.home-header .home-contacts a:nth-child(3),.home-header .home-contacts a:nth-child(6){line-height:1.1}.home-header .menu-toggle{top:14px;right:11px}.hero-blur{opacity:.75;filter:blur(26px);width:100%;height:54%;top:36%;left:0}.hero-blur img{width:48%;height:100%}.hero-image-frame{width:clamp(154px,45vw,205px);height:clamp(235px,68vw,310px);top:64%;left:59%}.frame-index{width:42px;height:42px;font-size:9px;right:-47px}.hero-annotation-lines{height:80%;top:18%}.hero-annotation-lines path{stroke-width:1px}.callout-top{font-size:10px;top:46%;left:72%}.callout-left{padding:10px 12px;font-size:10px;top:62%;left:4%}.callout-bottom{font-size:10px;top:79%;left:69%}.hero-node{width:38px;height:38px;font-size:9px}.hero-node-two{top:85%;left:77%}.hero-cta{width:230px;min-height:62px;padding:8px 13px;font-size:21px;top:38%;left:5%}.hero-cta-arrow{font-size:25px}.hero-plus-bottom{width:38px;height:38px;font-size:40px;bottom:3%;left:4%}.hero-scroll{gap:8px;bottom:3.5%;right:5%}.hero-tick{height:10px}.hero-tick.is-active,.hero-scroll:hover .hero-tick{height:14px}}@media (width<=420px){.home-header .home-contacts{gap:11px 6px;width:calc(100% - 76px)}.home-header .home-contacts a{font-size:10px}.home-header .home-contacts a span{min-width:16px;font-size:8px}.hero-cta{width:213px;font-size:19px;top:39%}.hero-image-frame{left:59%}.callout-left{left:2%}}.detail-main{min-height:100svh;overflow:visible}.detail-main+.site-footer{display:none}.work-detail{isolation:isolate;color:#fff;background:#101313;height:100%;min-height:100svh;position:relative;overflow:hidden}.work-detail-backdrop{z-index:-2;background:#101313;position:absolute;inset:0;overflow:hidden}.work-detail-backdrop img{object-fit:cover;object-position:center;width:150%;height:100%;display:block;position:absolute;left:-50%}.work-detail-backdrop:after{content:"";background:linear-gradient(#02080e65 0%,#0000 22%,#06111b25 54%,#02080e8c 100%);position:absolute;inset:0}.work-detail-header{z-index:40;color:#fff;font:10px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;padding:28px clamp(22px,5vw,78px);display:flex;position:absolute;top:0;left:0;right:0}.detail-back-link{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.detail-back-link>span{width:29px;height:29px;font:300 22px/1 var(--sans);border:1px solid #fff9;border-radius:50%;place-items:center;display:grid;transform:none}.detail-back-link:hover>span{color:#141615;background:#fff}.detail-header-index{color:#ffffffc5}.detail-header-index span{color:#ffffff75;padding-inline:8px}.work-detail-labels{z-index:4;pointer-events:none;position:absolute;inset:0}.detail-label{color:#fff;font:italic 11px/1 var(--mono);letter-spacing:.04em;text-shadow:0 1px 5px #000b;position:absolute}.detail-label-left{top:30%;left:8%}.detail-label-right{writing-mode:vertical-rl;top:34%;right:9%}.detail-notification{z-index:38;-webkit-backdrop-filter:blur(26px)saturate(135%);background:#101820b8;border:1px solid #ffffff65;border-radius:23px;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:19px;width:min(870px,100% - 48px);min-height:180px;padding:23px 26px 22px 22px;display:grid;position:absolute;top:51%;left:50%;transform:translate(-50%,-50%);box-shadow:0 28px 90px #00101e55,inset 0 1px #ffffff19}.detail-notification-mark{color:#15241b;background:linear-gradient(145deg,#eaffee,#a5e8b3);border:1px solid #ffffff45;border-radius:16px;place-items:center;width:56px;height:56px;display:grid;box-shadow:inset 0 0 0 5px #13231b18}.detail-notification-mark span{font:300 31px/1 var(--sans)}.detail-notification-copy{min-width:0}.detail-notification-meta{color:#ffffffa9;font:10px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:14px;margin:3px 0 12px;display:flex}.detail-notification h1{color:#fff;font:600 clamp(22px, 3.2vw, 36px)/1.05 var(--display);letter-spacing:-.045em;margin:0 0 8px}.detail-notification-copy>p{color:#ffffffe4;max-width:680px;margin:0;font-size:14px;line-height:1.65}.detail-tags{flex-wrap:wrap;gap:7px;margin-top:15px;display:flex}.detail-tags span{color:#fff;font:9px/1.2 var(--mono);border:1px solid #ffffff50;border-radius:20px;padding:5px 8px}.detail-highlights{z-index:37;color:#fff;text-shadow:0 1px 6px #000c;width:min(310px,26vw);position:absolute;top:33%;right:7%}.detail-highlights p{font:500 11px/1.5 var(--mono);text-transform:uppercase;border-bottom:1px solid #ffffff6b;grid-template-columns:64px 1fr;gap:8px;margin:0;padding-block:12px;display:grid}.detail-highlights p span{color:#d3ffe4}.work-detail-footer{z-index:40;background:linear-gradient(#0000,#02080e72);grid-template-columns:1fr auto 1fr;align-items:end;gap:18px;padding:25px clamp(22px,5vw,78px) 30px;display:grid;position:absolute;bottom:0;left:0;right:0}.detail-step-link{color:#fff;min-width:0;font:11px/1.3 var(--mono);letter-spacing:.06em;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.detail-step-link>span:first-child,.detail-step-next>span:last-child{font-size:18px}.detail-step-link small{color:#ffffffad;max-width:190px;font:10px/1.3 var(--sans);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;display:block;overflow:hidden}.detail-step-next{text-align:right;justify-self:end}.detail-external-links{flex-wrap:wrap;justify-content:center;gap:17px;display:flex}.detail-external-links a{color:#fff;font:10px/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;text-decoration:none}.detail-external-links a:hover,.detail-step-link:hover{color:#d8ffbc}.detail-index-link span{padding-left:6px;font-size:15px}.work-not-found{color:#111;background:#fbfbfa;align-content:center;justify-items:start;min-height:100svh;padding:10vw;display:grid}.work-not-found>p{font:11px/1 var(--mono);text-transform:uppercase}.work-not-found h1{max-width:700px;font:500 clamp(42px, 7vw, 88px)/.95 var(--display);letter-spacing:-.07em}.work-not-found a{font:600 12px/1 var(--mono);border:1px solid #111;padding:14px 18px;text-decoration:none}.selected-work{width:min(1320px,100% - 112px);padding-block:120px 130px}.work-index-heading{justify-content:space-between;align-items:end;gap:50px;margin-bottom:55px;display:flex}.work-index-heading h2{color:#151614;font:500 clamp(44px, 6vw, 78px)/.94 var(--display);letter-spacing:-.07em;margin:0}.work-index-heading h2 em{color:#777a72;font-weight:400}.work-index-heading>p{color:#6d7069;max-width:330px;margin:0 0 4px;font-size:13px;line-height:1.8}.work-index{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 22px;display:grid}.work-index-card{color:#111;min-width:0;text-decoration:none}.work-index-image{aspect-ratio:1.34;background:#eee;position:relative;overflow:hidden}.work-index-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .4s;display:block}.work-index-card:hover .work-index-image img{filter:contrast(1.08);transform:scale(1.055)}.work-index-number{color:#111;font:10px/1 var(--mono);background:#fbfbfa;padding:9px 10px;position:absolute;top:12px;left:12px}.work-index-arrow{color:#111;background:#fbfbfa;border-radius:50%;place-items:center;width:36px;height:36px;transition:background .2s,color .2s;display:grid;position:absolute;bottom:12px;right:12px}.work-index-card:hover .work-index-arrow{color:#fff;background:#111}.work-index-copy{grid-template-columns:1fr auto;align-items:end;gap:5px 12px;padding-top:13px;display:grid}.work-index-copy>span:first-child{color:#777a72;font:9px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;grid-column:1/-1}.work-index-copy h3{font:600 17px/1.2 var(--display);letter-spacing:-.03em;margin:0}.work-index-copy>span:last-child{font-size:16px;transition:transform .2s}.work-index-card:hover .work-index-copy>span:last-child{transform:translate(3px,-3px)}.site-footer{width:min(1320px,100% - 112px)}@media (width<=760px){.selected-work{width:calc(100% - 40px);padding-block:78px 90px}.work-index-heading{flex-direction:column;align-items:start;gap:18px;margin-bottom:32px}.work-index-heading>p{font-size:12px}.work-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.work-index-image{aspect-ratio:1.05}.work-index-copy h3{font-size:14px}.work-index-copy>span:first-child{font-size:8px}.detail-notification{border-radius:18px;grid-template-columns:42px minmax(0,1fr);gap:13px;width:calc(100% - 34px);padding:17px 15px;top:50%}.detail-notification-mark{border-radius:13px;width:42px;height:42px}.detail-notification-mark span{font-size:24px}.detail-notification-meta{align-items:start;font-size:8px}.detail-notification h1{font-size:clamp(20px,6vw,30px)}.detail-notification-copy>p{font-size:12px;line-height:1.55}.detail-tags span{padding:4px 6px;font-size:8px}.work-detail-header{padding:18px;font-size:8px}.detail-back-link{gap:7px}.detail-back-link>span{width:25px;height:25px}.detail-label-left{font-size:9px;top:32%;left:5%}.detail-label-right{font-size:9px;top:32%;right:5%}.detail-highlights{width:min(255px,61vw);top:auto;bottom:24%;right:6%}.detail-highlights p{grid-template-columns:42px 1fr;padding-block:8px;font-size:8px}.work-detail-footer{grid-template-columns:1fr 1fr;gap:15px;padding:18px}.detail-external-links{grid-area:1/1/auto/-1;justify-content:flex-start;gap:12px}.detail-step-link{font-size:9px}.detail-step-link small{max-width:125px;font-size:9px}}@media (width<=420px){.work-index{grid-template-columns:1fr}.work-index-image{aspect-ratio:1.4}.detail-notification{grid-template-columns:34px minmax(0,1fr);gap:10px;width:calc(100% - 24px);padding:14px 12px}.detail-notification-mark{border-radius:10px;width:34px;height:34px}.detail-notification-mark span{font-size:20px}.detail-notification-meta{flex-direction:column;gap:3px;margin:0 0 8px}.detail-notification h1{font-size:21px}.detail-notification-copy>p{font-size:11px}.detail-highlights{bottom:25%}.detail-external-links{gap:9px}.detail-external-links a{font-size:8px}}.home-main{min-height:100svh;overflow:visible}.home-hero{height:100svh;min-height:0}.home-header .main-nav{max-height:calc(100svh - 80px);overflow-y:auto}.hero-blur{filter:blur(35px);background:radial-gradient(#b5b8af 0%,#e1e2dd 35%,#0000 72%)}.hero-blur:after{display:none}.hero-image-frame{background:#d3d5ce}@property --focus-width{syntax:"<length>";inherits:true;initial-value:200px}.work-detail{--focus-left:7%;--focus-top:15svh;--focus-width:min(36vw, 52svh);--focus-height:70svh}.work-detail-backdrop iframe{pointer-events:none;transform-origin:0 0;background:#202625;border:0;width:153.846%;height:153.846%;display:block;transform:scale(.65)}.work-detail-backdrop img{object-fit:cover;object-position:center;width:100%;height:100%;display:block;top:0;left:0}.work-detail-backdrop .detail-artwork-fill{filter:blur(25px)brightness(.65);transform:scale(1.08)}.work-detail-backdrop .detail-artwork{object-fit:contain;object-position:22% 50%}.work-detail-backdrop:after{display:none}.detail-art-peek{z-index:39;pointer-events:none;height:auto;position:absolute;top:50%;left:22%;transform:translate(-22%,-50%)}.work-detail-course-availability-notifier .detail-art-peek{clip-path:inset(39.3% 31.7% 53.9% 26.3% round 2%);width:min(100%,80.0285svh)}.detail-apartment-peek{z-index:39;aspect-ratio:1460/1078;pointer-events:none;width:min(100%,135.436svh);position:absolute;top:50%;left:22%;transform:translate(-22%,-50%)}.detail-apartment-peek>img{object-fit:fill;width:72.25%;height:48.05%;position:absolute;top:19%;left:13.3%}.detail-focus{z-index:38;top:var(--focus-top);left:var(--focus-left);width:var(--focus-width);height:var(--focus-height);color:#fff;border:1px solid #fffd;place-items:center;text-decoration:none;display:grid;position:absolute}.detail-focus:focus-visible{outline-offset:4px;outline:3px solid #fff}.detail-focus-action{color:#171b19;font:500 10px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:0;background:#fffef2e8;border:1px solid #ffffffb3;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 13px;transition:opacity .2s;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.detail-focus:hover .detail-focus-action,.detail-focus:focus-visible .detail-focus-action{opacity:1}.detail-focus-action span{font-size:15px}.detail-unavailable{color:#ffffffb8;max-width:220px;font:11px/1.6 var(--mono);text-align:center;text-transform:uppercase;padding:20px}.detail-copy{z-index:40;width:31%;color:var(--detail-accent,#fff);letter-spacing:0;text-transform:uppercase;text-shadow:none;font:400 clamp(12px,1.05vw,16px)/1.3 Consolas,Courier New,monospace;position:absolute;top:48%;left:66%;transform:translateY(-50%)}.detail-copy-row{grid-template-columns:2em minmax(0,1fr);align-items:start;column-gap:.7em;display:grid}.detail-copy-row:nth-child(2){margin-left:17%}.detail-copy-row:nth-child(3){margin-left:34%}.detail-copy h1,.detail-copy p{color:inherit;font:inherit;letter-spacing:inherit;overflow-wrap:anywhere;margin:0}.work-detail-footer{grid-template-columns:1fr 1fr}.work-detail-digital-duel{--detail-accent:#c99e61}.work-detail-robotic-arm-control-system-with-web-ui{--detail-accent:#a4f0dc}.work-detail-secret-santa{--detail-accent:#f1ad63}.work-detail-ontario-government-govtechon{--detail-accent:#111;--detail-blur-tint:#fff3}.work-detail-vironix-ai{--detail-accent:#fff}.work-detail-artificial-intelligence-real-estate-scraper-filter{--detail-accent:#bd9253}.work-detail-course-availability-notifier{--detail-accent:#d57b62}.work-detail-interior-studio-website{--detail-accent:#fbba4a}.work-detail-getmyportfolio{--detail-accent:#d5ee69}.work-detail-little-genius-island-website-booking-system{--detail-accent:#e9ae35}.work-detail-jtc-property-services-website-booking-system{--detail-accent:#70a0d9}.work-detail-tutoring{--detail-accent:#833811;--detail-blur-tint:#fff3}.work-detail-connect-ops{--detail-accent:#5fabf8}.work-detail-t-a-s-c-website-development{--detail-accent:#e9820b}.work-detail-under-the-tree-charity{--detail-accent:#fff;--detail-blur-tint:#315a7d66}.work-detail-tutoring .work-detail-backdrop,.work-detail-ontario-government-govtechon .work-detail-backdrop{background:#fff}.work-detail-tutoring .detail-artwork-fill,.work-detail-ontario-government-govtechon .detail-artwork-fill{display:none}.work-detail-tutoring .detail-artwork{background:#fff}.work-detail-under-the-tree-charity .work-detail-backdrop{background:#6593bf}.work-detail-under-the-tree-charity .detail-artwork-fill{filter:blur(35px);transform:scale(1.16)}.work-detail-ontario-government-govtechon .work-detail-backdrop .detail-artwork{width:min(30vw,420px);height:auto;top:50%;left:25%;transform:translate(-50%,-50%)}.work-detail-tutoring .work-detail-header,.work-detail-ontario-government-govtechon .work-detail-header,.work-detail-tutoring .detail-step-link,.work-detail-ontario-government-govtechon .detail-step-link{color:#171b19}.work-detail-tutoring .detail-header-index,.work-detail-ontario-government-govtechon .detail-header-index,.work-detail-tutoring .detail-header-index span,.work-detail-ontario-government-govtechon .detail-header-index span,.work-detail-tutoring .detail-step-link small,.work-detail-ontario-government-govtechon .detail-step-link small{color:#3a403d}.work-detail-tutoring .detail-back-link>span,.work-detail-ontario-government-govtechon .detail-back-link>span,.work-detail-tutoring .detail-focus,.work-detail-ontario-government-govtechon .detail-focus{border-color:#171b19a6}.work-detail-tutoring .detail-focus:focus-visible,.work-detail-ontario-government-govtechon .detail-focus:focus-visible{outline-color:#171b19}.work-detail-tutoring .work-detail-footer,.work-detail-ontario-government-govtechon .work-detail-footer{background:0 0}@media (hover:none){.detail-focus-action{opacity:1}}@media (width<=760px){.home-hero{min-height:0}.hero-image-frame{width:clamp(120px,38vw,190px);height:36%;top:64%}.hero-cta{top:30%}.work-detail{--focus-left:6%;--focus-top:15%;--focus-width:52vw;--focus-height:50%}.detail-copy{width:84%;font-size:clamp(10px,2.8vw,13px);top:69%;left:8%;transform:none}.work-detail-ontario-government-govtechon .work-detail-backdrop .detail-artwork{width:44vw;top:40%;left:32%}.detail-unavailable{padding:12px;font-size:9px}}.site-shell{--sans:"Helvetica Neue", Helvetica, Arial, sans-serif;--display:var(--sans);--mono:var(--sans)}.site-header,.main-nav,.site-footer,.page-main,.wordmark-copy strong,.header-contacts a,.menu-toggle>span:first-child,.footer-mark,.entry-links a,.all-work-link span,.note-error a{font-weight:400}.wordmark-copy>span,.header-contacts a,.menu-toggle>span:first-child,.menu-kicker,.eyebrow,.section-kicker,.timeline-date,.work-index-copy>span:first-child{letter-spacing:0;text-transform:lowercase}.wordmark-mark{color:var(--ink);background:0 0;border:1px solid;font-weight:400}.wordmark-copy strong{font-size:15px}.header-contacts a{font-size:13px}.main-nav{box-shadow:none;border-color:#b6b9b3}.main-nav>a{text-transform:lowercase;font-size:18px;font-weight:400}.menu-contacts a,.menu-kicker{font-size:12px}.home-header .home-contacts a{font:400 clamp(13px, 1.1vw, 16px)/1.05 var(--sans);letter-spacing:0;text-transform:lowercase}.home-header .home-contacts a span{font:400 11px/1.05 var(--sans);letter-spacing:0}.home-hero{background:#f5f5f3}.hero-blur{opacity:.7;filter:blur(35px);background:0 0;width:76%;height:110%;top:-5%;left:18%;-webkit-mask-image:radial-gradient(at 48%,#000 0% 35%,#0000 76%);mask-image:radial-gradient(at 48%,#000 0% 35%,#0000 76%)}.hero-blur img{filter:grayscale();width:74%;height:100%;transform:scale(1.35)}.home-hero:before{content:"";z-index:0;pointer-events:none;mix-blend-mode:soft-light;opacity:.55;background:url(/images/film-grain.svg) 0 0/180px 180px;width:76%;height:110%;position:absolute;top:-5%;left:18%;-webkit-mask-image:radial-gradient(at 48%,#000 0% 35%,#0000 76%);mask-image:radial-gradient(at 48%,#000 0% 35%,#0000 76%)}.hero-image-frame{background:#171916;border:1px solid #fff;width:clamp(165px,15vw,225px);height:54%;max-height:560px;padding:0;top:54%;left:40%}.hero-image-frame>img{filter:grayscale()}.hero-frame-cross{color:#fff;font:300 38px/1 var(--sans);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-cta{width:auto;min-height:0;font:400 clamp(15px, 1.25vw, 19px)/1.02 var(--sans);letter-spacing:0;text-transform:lowercase;border:0;gap:20px;padding:0;top:51%}.hero-cta:hover{color:#555b53;background:0 0}.hero-cta-arrow{font-size:24px}.hero-editorial{z-index:4;color:#171916;width:min(37%,460px);font:400 clamp(14px, 1.25vw, 18px)/1.02 var(--sans);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(30px,5vw,90px);display:grid;position:absolute;top:51%;left:55%}.hero-editorial p{margin:0}.hero-location{z-index:4;color:#171916;font:400 13px/1.1 var(--sans);white-space:nowrap;margin:0;position:absolute;bottom:7%;left:50%;transform:translate(-50%)}.hero-plus{font-weight:300}.page-heading h1,.note-heading h1,.note-success h1,.work-index-heading h2{font:400 clamp(32px, 4vw, 58px)/1 var(--sans);letter-spacing:-.025em;text-transform:lowercase}.note-heading h1 em,.work-index-heading h2 em{font-style:normal;font-weight:400}.page-heading>p:last-child,.note-heading>p:last-child,.note-success-copy,.work-index-heading>p{font:400 15px/1.2 var(--sans)}.page-heading{padding-top:clamp(72px,9vw,130px);padding-bottom:65px}.section-kicker{font-size:12px;line-height:1.1}.work-index-heading{align-items:end}.work-index-heading>p{max-width:230px}.work-index{gap:55px 25px}.work-index-image{aspect-ratio:1.1}.work-index-image:after{content:"";pointer-events:none;border:1px solid #fff;position:absolute;inset:12% 31%}.work-index-number{color:#fff;font:400 12px/1 var(--sans);background:0 0}.work-index-arrow{color:#fff;background:0 0;border-radius:0;font-weight:400}.work-index-copy{padding-top:16px}.work-index-copy>span:first-child{font-size:11px}.work-index-copy h3,.project-info h3,.experience-copy h3{font:400 18px/1.08 var(--sans);letter-spacing:0;text-transform:lowercase}.project-info p,.experience-copy>p:not(.experience-company),.experience-highlights li,.note-guides li p{font:400 14px/1.25 var(--sans)}.project-number,.timeline-date,.tag-list span,.experience-company,.note-guides li span,.note-privacy{font:400 12px/1.15 var(--sans)}.project-number{text-transform:lowercase}.note-guides h2,.note-field label{text-transform:lowercase;font-weight:400}.note-guides h2{font-size:18px}.note-field input,.note-field textarea{font:400 15px/1.25 var(--sans)}.note-submit,.button{text-transform:lowercase;font-weight:400}.work-detail-header,.detail-header-index,.detail-step-link,.detail-step-link small,.detail-focus-action{font-family:var(--sans);letter-spacing:0;text-transform:lowercase;font-weight:400}.detail-copy{font:400 clamp(13px, 1.1vw, 17px)/1.08 var(--sans);letter-spacing:0;text-transform:lowercase}.detail-copy-row+.detail-copy-row{margin-top:1em}@media (width<=760px){.home-header .home-contacts a{letter-spacing:0;font-size:12px;line-height:1.05}.home-header .home-contacts a span{font-size:10px}.hero-blur{filter:blur(25px);width:100%;height:75%;top:20%;left:0}.hero-blur img{width:75%}.home-hero:before{width:100%;height:75%;top:20%;left:0}.hero-image-frame{width:clamp(120px,35vw,180px);height:42%;top:58%;left:31%}.hero-frame-cross{font-size:30px}.hero-cta{width:auto;font-size:15px;top:30%;left:6%}.hero-editorial{grid-template-columns:1fr;gap:20px;width:41%;font-size:clamp(12px,3.2vw,15px);top:49%;left:54%}.hero-location{font-size:11px;bottom:8%}.work-index{gap:28px 14px}.work-index-copy h3,.project-info h3,.experience-copy h3{font-size:16px}.detail-copy{font-size:clamp(11px,3.1vw,13px)}}html:has(.gallery-exhibition){scroll-snap-type:none;scrollbar-width:none;scroll-padding-top:0}html:has(.gallery-exhibition)::-webkit-scrollbar{display:none}.gallery-exhibition{--gallery-toolbar-height:80px;color:#171717;background:#ededed}.gallery-exhibition a{text-decoration:none}.gallery-screen{width:100%;height:100svh;min-height:100svh;scroll-margin-top:var(--gallery-toolbar-height)}.monochrome-shell .gallery-exhibition .home-hero{background:#ededed;height:100svh;min-height:100svh}.gallery-exhibition .home-hero:before{mix-blend-mode:multiply;opacity:.48;background-attachment:fixed;width:100%;height:100%;inset:0;-webkit-mask-image:none;mask-image:none}.gallery-exhibition .hero-blur{width:100%;left:0;-webkit-mask-image:radial-gradient(44% 45% at 56% 45%,#000 0% 35%,#0000 100%);mask-image:radial-gradient(44% 45% at 56% 45%,#000 0% 35%,#0000 100%)}.gallery-exhibition .hero-scroll{color:#555;min-height:44px;font:400 11px/1.2 var(--sans);gap:14px}.gallery-exhibition .hero-scroll>span:last-child{font-size:20px}.gallery-exhibition .hero-cta:hover .hero-cta-arrow{transform:translateY(4px)}.gallery-reel{width:100%;position:relative}.work-detail-backdrop .scene-background{object-fit:cover;width:100%;height:100%;filter:blur(calc(42px / var(--site-scale))) brightness(.8);transform:scale(1.12)}.scene-surround{z-index:0;background:var(--detail-blur-tint,#09101088);pointer-events:none;position:absolute;inset:0}.scene-surround:after{content:"";mix-blend-mode:soft-light;opacity:.48;background:url(/images/film-grain.svg) 0 0/180px 180px;position:absolute;inset:0}.gallery-exhibition .gallery-scene{background:#ededed;height:100svh;min-height:100svh}.gallery-scene .scene-surround{background:#ededed}.gallery-scene .scene-surround:after{mix-blend-mode:multiply}.scene-media{--preview-scale:.4;--preview-gutter:12px;top:var(--focus-top);left:var(--focus-left);width:var(--focus-width);height:var(--focus-height);z-index:1;isolation:isolate;pointer-events:none;position:absolute;overflow:hidden}.work-detail .scene-media iframe{width:calc((100% + var(--preview-gutter)) / var(--preview-scale));height:calc((100% + var(--preview-gutter)) / var(--preview-scale));transform:scale(var(--preview-scale));transform-origin:0 0;position:absolute;top:0;left:0}.work-detail-backdrop .scene-media .detail-preview-image{object-fit:cover;object-position:top left;filter:none;width:102.041%;height:102.041%;top:0;left:0;transform:none}.scene-artwork{width:max(100%, calc(var(--focus-height) * var(--artwork-aspect)));aspect-ratio:var(--artwork-aspect);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.work-detail-backdrop .scene-artwork .detail-artwork{object-fit:contain;object-position:center;filter:none;width:100%;max-width:none;height:100%;padding:0;top:0;left:0;transform:none}.scene-artwork .detail-apartment-peek{width:100%;height:100%;position:absolute;inset:0;transform:none}.scene-artwork .detail-apartment-peek>img{filter:none}.work-detail-ontario-government-govtechon .scene-artwork{width:min(calc(100% - 48px), calc(var(--focus-height) * var(--artwork-aspect)))}.gallery-preview-loading{color:#777;font:400 11px/1.4 var(--sans);background:#e4e4e4;place-items:center;display:grid;position:absolute;inset:0}.gallery-live-frame{opacity:0}.gallery-live-frame.is-ready{opacity:1}.gallery-scene .gallery-copy{color:#171717}.gallery-copy h2{color:inherit;font:inherit;letter-spacing:inherit;overflow-wrap:anywhere;margin:0}.gallery-title-toggle{min-height:44px;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer;background:0 0;border:0;margin:-8px 0;padding:8px 0;display:block}.gallery-title-toggle:hover{text-underline-offset:4px;text-decoration:underline}.gallery-info-toggle{color:#666;min-height:36px;font:400 11px/1.2 var(--sans);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;margin-top:6px;padding:8px 0;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.gallery-info-toggle:hover{color:#171717}.work-detail .detail-focus{border:1px solid #fff;box-shadow:0 0 0 1px #0000000d}.gallery-focus-link{cursor:pointer;background:0 0;border-radius:0;padding:0}.gallery-focus-arrow{color:#171717;width:32px;height:32px;font:300 22px/1 var(--sans);pointer-events:none;background:#edededdb;border:1px solid #fff9;place-items:center;transition:background .2s;display:grid;position:absolute;bottom:14px;right:14px}.gallery-focus-link:hover .gallery-focus-arrow,.gallery-focus-link:focus-visible .gallery-focus-arrow,:is(.gallery-scene:has(.gallery-title-toggle:hover) .gallery-focus-arrow,.gallery-scene:has(.gallery-info-toggle:hover) .gallery-focus-arrow,.gallery-scene:has(.gallery-title-toggle:focus-visible) .gallery-focus-arrow,.gallery-scene:has(.gallery-info-toggle:focus-visible) .gallery-focus-arrow){background:#fff}.work-detail .detail-focus-action{opacity:1;white-space:nowrap;color:#171717;background:#ffffffdf;border-radius:0;font-size:10px}.gallery-expanded .detail-copy h2{color:inherit;font:inherit;letter-spacing:inherit;overflow-wrap:anywhere;margin:0}.gallery-expanded .work-detail-backdrop .detail-artwork,.gallery-expanded .detail-art-peek,.gallery-expanded .detail-apartment-peek>img{filter:none}.gallery-expanded button.detail-back-link{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.gallery-expanded button.detail-back-link>span{transform:none}.gallery-expanded .work-detail-header{padding-right:max(8%,80px)}.gallery-exhibition .gallery-expanded{--focus-top:15svh;--focus-height:70svh;height:auto}.detail-main .work-detail{--focus-top:15svh;--focus-height:70svh}.gallery-expanded .work-detail-backdrop,.detail-main .work-detail-backdrop{height:100%;bottom:0}.gallery-expanded .detail-copy,.detail-main .detail-copy{flex-direction:column;justify-content:center;width:31%;min-height:100svh;padding-block:110px 80px;line-height:1.35;display:flex;position:relative;top:auto;left:66%;transform:none}.gallery-expanded .detail-copy-row,.detail-main .detail-copy-row{flex-shrink:0}.gallery-expanded .detail-copy-row+.detail-copy-row,.detail-main .detail-copy-row+.detail-copy-row{margin-top:22px}.gallery-expanded .detail-copy-row:nth-child(2),.detail-main .detail-copy-row:nth-child(2){margin-left:8%}.gallery-expanded .detail-copy-row:nth-child(3),.detail-main .detail-copy-row:nth-child(3){margin-left:16%}.gallery-expanded .detail-copy-row:nth-child(4),.detail-main .detail-copy-row:nth-child(4){margin-left:24%}.detail-block-label{color:inherit;font:400 10px/1.2 var(--sans);letter-spacing:.02em;opacity:.65;margin:0 0 8px}.detail-points{gap:9px;margin:0;padding:0;list-style:none;display:grid}.detail-points li{overflow-wrap:anywhere;padding-left:12px;position:relative}.detail-points li:before{content:"·";opacity:.65;position:absolute;left:0}.detail-main .detail-art-peek{top:50svh}.gallery-expanded .detail-copy .detail-role,.detail-main .detail-copy .detail-role{opacity:.8;margin-top:10px;font-size:.8em;line-height:1.4}.detail-project-link{min-height:36px;color:inherit;text-underline-offset:4px;align-items:center;gap:9px;margin-top:8px;font-size:.8em;display:inline-flex;text-decoration:underline!important}.gallery-expanded.work-detail-tutoring,.gallery-expanded.work-detail-ontario-government-govtechon,.detail-main .work-detail-tutoring,.detail-main .work-detail-ontario-government-govtechon{background:#fff}.gallery-scene .gallery-scene-header{color:#555;justify-content:flex-end;padding-right:8%;font-size:10px}.gallery-scene-header>span>span{color:#999;margin-inline:9px}.gallery-toolbar{z-index:60;isolation:isolate;color:#171717;background:#ededed;border-block:1px solid #b0b0b0;grid-template-columns:minmax(120px,1fr) auto;align-items:center;gap:28px;min-height:100px;padding:18px 5%;display:grid;position:sticky;top:0}.gallery-toolbar:before{content:"";z-index:-1;pointer-events:none;mix-blend-mode:multiply;opacity:.48;background:url(/images/film-grain.svg) 0 0/180px 180px;position:absolute;inset:0}.gallery-toolbar-heading{gap:7px;display:grid}.gallery-toolbar-heading h2{font:400 15px/1.2 var(--sans);margin:0}.gallery-toolbar-heading>span{color:#666;font:400 11px/1.2 var(--sans)}.gallery-filter-controls{align-items:center;gap:18px;min-width:0;display:flex}.gallery-filter-label{color:#555;font:400 11px/1.2 var(--sans);white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.gallery-filter-label svg{flex-shrink:0}.gallery-filters{align-items:stretch;gap:7px;min-width:0;display:flex}.gallery-filters button{min-height:calc(44px / var(--site-scale));color:#333;font:400 12px/1.2 var(--sans);cursor:pointer;background:#f4f4f466;border:1px solid #888;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.gallery-filters button:hover{color:#171717;background:#fff8;border-color:#171717}.gallery-filters button[aria-pressed=true]{color:#fff;background:#171717;border-color:#171717}.gallery-filter-count{opacity:.65;font-size:10px}@media (width<=1000px){.gallery-toolbar{grid-template-columns:1fr;gap:13px;padding:16px 5%}.gallery-toolbar-heading{justify-content:space-between;align-items:baseline;display:flex}.gallery-filter-controls{gap:10px;display:grid}.gallery-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.gallery-filters button{gap:7px;min-width:0;padding:10px;font-size:11px}.gallery-filters button:last-child{grid-column:span 2}.gallery-filter-count{display:inline}}.gallery-position{z-index:45;color:#333;font:400 10px/1.2 var(--sans);align-items:center;gap:16px;display:flex;position:fixed;bottom:4vh;right:3vw}.gallery-position>a{place-items:center;min-width:30px;min-height:36px;font-size:20px;display:grid}.gallery-position[hidden]{display:none}.gallery-exhibition :focus-visible{outline-offset:5px;outline:2px solid #171717}.gallery-exhibition .detail-focus:focus-visible{outline-color:#fff}@media (width<=760px){.detail-main .work-detail{--focus-top:15svh;--focus-height:50svh}.gallery-scene .gallery-scene-header{padding:15px 20px;font-size:8px;top:55px}.gallery-position{gap:10px;font-size:9px;bottom:2.5vh;right:4%}.gallery-position>a{font-size:18px}.gallery-exhibition .gallery-expanded{--focus-top:15svh;--focus-height:50svh;height:auto}.gallery-expanded .detail-copy,.detail-main .detail-copy{width:84%;min-height:0;margin:69svh 8% 0;padding:0 0 80px;display:block;position:relative;top:auto;left:auto;transform:none}.gallery-expanded .detail-copy-row:nth-child(n+2),.detail-main .detail-copy-row:nth-child(n+2){margin-top:20px;margin-left:0}}@media (prefers-reduced-motion:reduce){.gallery-scene,.gallery-filters button{transition:none!important}}.monochrome-shell{--paper:#f7f7f7;--paper-light:#fff;--ink:#171717;--ink-soft:#3b3b3b;--muted:#737373;--line:#d7d7d7;--forest:#252525;--moss:#666;--lime:#dedede;--white:#fff;--green:#252525;background:var(--paper);color:var(--ink)}.monochrome-shell img{filter:grayscale()}.monochrome-shell .home-hero{background:#f5f5f5}.monochrome-shell .hero-image-frame{background:#171717}.monochrome-shell .hero-blur img{filter:grayscale()}.monochrome-shell .home-header .home-contacts a,.monochrome-shell .hero-editorial,.monochrome-shell .hero-location{color:#171717}.monochrome-shell .home-header .home-contacts a:hover,.monochrome-shell .hero-cta:hover{color:#666}.monochrome-shell .hero-tick.is-active,.monochrome-shell .hero-scroll:hover .hero-tick{background:#555}.monochrome-shell .hero-tick{background:#444}.monochrome-shell .media-panel,.monochrome-shell .featured-image{background:#ededed}.monochrome-shell .section-kicker span{color:#888}.monochrome-shell .note-field input::placeholder,.monochrome-shell .note-field textarea::placeholder{color:#999}.monochrome-shell .note-error{color:#333;background:#00000008;border-color:#555}.monochrome-shell .main-nav{box-shadow:0 24px 60px #0000001a}.monochrome-shell .home-header .menu-toggle-icon:before,.monochrome-shell .home-header .menu-toggle-icon:after{background:#171717}.monochrome-shell .hero-cta{text-transform:none;border-bottom:1px solid #777;min-height:44px;font-size:clamp(19px,1.6vw,25px);top:49%}.hero-audience-links{z-index:5;color:#555;gap:15px;max-width:25%;font-size:11px;line-height:1.5;display:grid;position:absolute;top:calc(49% + 70px);left:5%}.hero-audience-links a{padding-block:4px;text-decoration:none}.hero-audience-links a>span{color:#171717;display:block}.hero-audience-links a:hover>span{text-underline-offset:4px;text-decoration:underline}.inquiry-page{isolation:isolate;color:#171717;background:#ededed;min-height:100svh;padding:28px clamp(24px,6vw,96px) 70px;position:relative}.inquiry-page:before{content:"";z-index:-1;pointer-events:none;mix-blend-mode:multiply;opacity:.26;background:url(/images/film-grain.svg) 0 0/180px 180px fixed;position:absolute;inset:0}.inquiry-nav{min-height:44px;font:400 12px/1.4 var(--sans);justify-content:space-between;align-items:center;gap:20px;display:flex}.inquiry-nav a{min-height:44px;color:inherit;text-underline-offset:5px;align-items:center;gap:10px;display:inline-flex}.inquiry-nav>span{color:#777;font-size:11px}.inquiry-layout{grid-template-columns:.9fr 1.1fr;gap:clamp(48px,8vw,120px);max-width:1100px;margin:78px auto 0;display:grid}.inquiry-kicker{color:#666;font:400 11px/1.3 var(--sans);margin:0 0 22px}.inquiry-intro h1,.inquiry-success h1{font:400 clamp(38px, 4.5vw, 66px)/1.02 var(--sans);letter-spacing:-.045em;margin:0 0 24px}.inquiry-intro>p:last-of-type{color:#555;max-width:340px;margin:0;font-size:14px;line-height:1.6}.inquiry-prompts{max-width:345px;margin-top:64px}.inquiry-prompts h2{font:400 12px/1.4 var(--sans);margin:0 0 20px}.inquiry-prompts ol{gap:19px;margin:0;padding:0;list-style:none;display:grid}.inquiry-prompts li{grid-template-columns:24px 1fr;align-items:baseline;gap:10px;display:grid}.inquiry-prompts li>span{color:#777;font-size:10px}.inquiry-prompts li p{color:#555;margin:0;font-size:12px;line-height:1.6}.inquiry-prompts>p{color:#777;margin:27px 0 0;font-size:11px;line-height:1.5}.inquiry-form{min-width:0;padding-top:3px}.inquiry-required{color:#666;margin:0 0 23px;font-size:11px;line-height:1.5}.inquiry-form fieldset{border:0;gap:26px;min-width:0;margin:0;padding:0;display:grid}.inquiry-contact-fields{grid-template-columns:1fr 1fr;gap:18px;display:grid}.inquiry-field{gap:10px;min-width:0;display:grid}.inquiry-field label{font-size:13px;line-height:1.3}.inquiry-field label>span{color:#777;margin-left:5px;font-size:11px}.inquiry-field input,.inquiry-field textarea{color:#171717;width:100%;min-width:0;min-height:48px;font:400 14px/1.6 var(--sans);resize:vertical;background:#f7f7f7b3;border:1px solid #aaa;border-radius:0;padding:13px 14px}.inquiry-field input::placeholder,.inquiry-field textarea::placeholder{color:#777;opacity:1}.inquiry-field input:focus,.inquiry-field textarea:focus{outline-offset:0;background:#fafafa;border-color:#171717;outline:1px solid #171717}.inquiry-field-hint{color:#777;margin:0;font-size:10px;line-height:1.5}.inquiry-submit,.inquiry-back-button{color:#fff;min-height:52px;font:400 13px/1.3 var(--sans);cursor:pointer;background:#171717;border:1px solid #171717;border-radius:0;justify-content:space-between;align-items:center;gap:24px;padding:15px 18px;text-decoration:none;display:flex}.inquiry-submit>span:last-child,.inquiry-back-button>span{font-size:18px}.inquiry-submit:hover:not(:disabled),.inquiry-back-button:hover{background:#333}.inquiry-submit:disabled{opacity:.6;cursor:wait}.inquiry-privacy{color:#777;margin:15px 0 0;font-size:10px;line-height:1.5}.inquiry-error{background:#f7f7f7;border:1px solid #777;margin:0;padding:14px;font-size:12px;line-height:1.6}.inquiry-error a{color:inherit;text-underline-offset:3px;white-space:nowrap}.inquiry-success{max-width:700px;margin:clamp(70px,13svh,140px) auto 0;padding-bottom:50px}.inquiry-success-icon{fill:none;stroke:#171717;stroke-width:1.5px;width:80px;height:80px;margin-bottom:35px;display:block}.inquiry-success-icon circle{stroke:#999}.inquiry-success-icon path{stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60px;animation:.45s .1s forwards inquiry-check}.inquiry-success h1:focus{outline:none}.inquiry-success>p:last-of-type{color:#555;max-width:390px;margin:0;font-size:14px;line-height:1.6}.inquiry-back-button{width:fit-content;min-width:230px;margin-top:34px}.inquiry-page :focus-visible{outline-offset:4px;outline:2px solid #171717}@keyframes inquiry-check{to{stroke-dashoffset:0}}@media (width<=760px){.inquiry-page{padding:18px 24px 50px}.inquiry-nav{gap:14px}.inquiry-nav>span{display:none}.inquiry-layout{grid-template-columns:1fr;gap:36px;margin-top:44px}.inquiry-intro h1,.inquiry-success h1{font-size:clamp(38px,9vw,54px)}.inquiry-prompts{display:none}.inquiry-contact-fields{grid-template-columns:1fr;gap:24px}.inquiry-field input,.inquiry-field textarea{font-size:16px}.inquiry-success{margin-top:70px}.inquiry-success-icon{width:68px;height:68px}}@media (prefers-reduced-motion:reduce){.inquiry-success-icon path{stroke-dashoffset:0;animation:none}}html,body{min-width:0}body,#root,.home-main,.detail-main,.inquiry-page{min-height:var(--layout-height)}.gallery-screen,.gallery-exhibition .gallery-scene,.monochrome-shell .gallery-exhibition .home-hero{height:var(--layout-height);min-height:var(--layout-height)}.gallery-expanded .detail-copy,.detail-main .detail-copy{min-height:var(--layout-height)}.hero-footer{display:contents}.detail-back-link{width:44px;min-width:44px;height:44px;min-height:44px;color:inherit;cursor:pointer;background:0 0;border:0;flex:0 0 44px;place-items:center;padding:0;display:inline-grid}.detail-back-link>span,.gallery-expanded button.detail-back-link>span{place-items:center;width:30px;height:30px;display:grid;transform:none}.detail-back-link svg{display:block}.gallery-info-toggle,.detail-project-link{min-height:44px}@media (width>=1001px){.gallery-exhibition .gallery-screen,.detail-main .work-detail{--focus-top:calc((var(--layout-height) - var(--focus-height)) / 2)}.work-detail.work-detail-artificial-intelligence-real-estate-scraper-filter{--focus-width:min(48vw, 105svh);--focus-height:calc(var(--focus-width) * 2 / 3);--focus-top:calc((var(--layout-height) - var(--focus-height)) / 2)}.work-detail:has(.gallery-preview-loading){--focus-width:min(48vw, 105svh);--focus-height:calc(var(--focus-width) * 2 / 3);--focus-top:calc((var(--layout-height) - var(--focus-height)) / 2)}.work-detail:has(.detail-preview-image){--focus-width:min(48vw, 105svh);--focus-height:calc(var(--focus-width) * 2 / 3);--focus-top:calc((var(--layout-height) - var(--focus-height)) / 2)}}@media (width>=1001px) and (width<=1200px){.work-detail{--focus-width:48vw}.gallery-expanded .detail-copy,.detail-main .detail-copy{width:36%;font-size:15px;left:60%}.gallery-expanded .detail-copy-row:nth-child(n+2),.detail-main .detail-copy-row:nth-child(n+2){margin-left:0}}@media (width<=1000px){.site-shell{--mobile-gutter:clamp(28px, 8vw, 64px)}.gallery-position{display:none}.gallery-exhibition .gallery-screen,.detail-main .work-detail{--focus-left:calc((100% - var(--focus-width)) / 2);--focus-top:72px;--focus-width:calc(100vw - var(--mobile-gutter) * 2);--focus-height:clamp(170px, 48vw, 360px);height:auto;min-height:0;padding-top:calc(var(--focus-top) + var(--focus-height) + 32px);padding-bottom:72px}.detail-main .work-detail{min-height:var(--layout-height)}.detail-back-link{width:calc(44px / var(--site-scale));height:calc(44px / var(--site-scale));min-width:calc(44px / var(--site-scale));min-height:calc(44px / var(--site-scale));flex-basis:calc(44px / var(--site-scale))}.gallery-title-toggle,.gallery-info-toggle,.detail-project-link{min-height:calc(44px / var(--site-scale))}.gallery-screen .work-detail-header,.detail-main .work-detail-header{padding:14px var(--mobile-gutter);min-height:72px;font-size:9px;top:0}.detail-back-link>span{width:30px;height:30px}.gallery-screen .work-detail-backdrop,.detail-main .work-detail-backdrop{height:100%;bottom:0}.gallery-screen .detail-copy,.detail-main .detail-copy{width:auto;min-height:0;margin:0 var(--mobile-gutter);padding:0;font-size:12px;line-height:1.6;display:block;position:relative;top:auto;left:auto;transform:none}.gallery-screen .detail-copy-row,.detail-main .detail-copy-row{grid-template-columns:18px minmax(0,1fr);gap:12px}.gallery-screen .detail-copy-row:nth-child(n+2),.detail-main .detail-copy-row:nth-child(n+2){margin-top:24px;margin-left:0}.gallery-screen .detail-copy h2,.detail-main .detail-copy h1{font-size:14px;line-height:1.4}.gallery-screen .detail-copy .detail-role,.detail-main .detail-copy .detail-role{font-size:10px;line-height:1.5}.gallery-screen .gallery-info-toggle,.detail-project-link{font-size:11px}.detail-block-label{font-size:9px}.detail-points{gap:10px}.gallery-focus-arrow{width:28px;height:28px;font-size:18px;bottom:10px;right:10px}.work-detail .detail-focus-action{padding:7px 10px;font-size:9px;bottom:10px}.inquiry-page{padding:18px var(--mobile-gutter) 50px}.inquiry-layout{grid-template-columns:1fr;gap:36px;width:100%;max-width:680px;margin-top:40px}.inquiry-intro h1,.inquiry-success h1{font-size:clamp(30px,6vw,46px)}.inquiry-intro>p:last-of-type,.inquiry-success>p:last-of-type{font-size:12px}.inquiry-field label{font-size:11px}.inquiry-prompts{display:none}.inquiry-field input,.inquiry-field textarea{font-size:16px}.inquiry-field textarea{height:170px;min-height:150px}.inquiry-required,.inquiry-field-hint,.inquiry-privacy{font-size:10px;line-height:1.5}.inquiry-back-button{width:min(100%,280px);min-width:0}}@media (width>=600px) and (width<=1000px){.inquiry-contact-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=359px){.site-shell{--mobile-gutter:24px}}@media (hover:none),(prefers-reduced-motion:reduce){.work-detail{transition:none}}.site-shell{--landing-height:max(var(--layout-height), 800px)}.site-header.home-header{background:0 0;width:100%;height:0;padding:0;position:absolute;inset:0 0 auto}.home-header .home-contacts{--contact-step:55px;top:calc(var(--landing-height) * .0424);width:min(500px,35vw);height:calc(var(--contact-step) * 5);margin:0;display:block;position:absolute;left:5%}.home-header .home-contacts a{min-height:calc(44px / var(--site-scale));color:#171717;font:400 clamp(11px, 1.1vw, 16px)/1.3 var(--sans);letter-spacing:0;text-transform:lowercase;white-space:nowrap;align-items:center;gap:clamp(6px,.9vw,13px);display:flex;position:absolute}.home-header .home-contacts a>span:first-child{min-width:14px;font:400 clamp(9px, .8vw, 11px)/1.3 var(--sans);padding:0}.home-header .home-contacts a .home-nav-label{min-width:0;font:inherit;color:inherit;text-underline-offset:4px;padding:0;-webkit-text-decoration:underline #777;text-decoration:underline #777;text-decoration-thickness:1px}.home-header .home-contacts a:hover{color:#666}.home-header .home-contacts a:first-child{top:0;left:0}.home-header .home-contacts a:nth-child(2){top:var(--contact-step);left:54%}.home-header .home-contacts a:nth-child(3){top:calc(var(--contact-step) * 2);left:23%}.home-header .home-contacts a:nth-child(4){top:calc(var(--contact-step) * 3);left:63%}.home-header .home-contacts a:nth-child(5){top:calc(var(--contact-step) * 4);left:0}.home-nav-label i{margin-left:4px;font-style:normal}.home-nav-label small{color:#555;font:400 9px/1.2 var(--sans);text-transform:uppercase;white-space:nowrap;margin-left:5px;display:inline-block}.monochrome-shell .gallery-exhibition .home-hero{height:var(--landing-height);min-height:var(--landing-height);padding:0;display:block}.gallery-exhibition .home-hero .hero-blur{opacity:.7;filter:blur(35px);width:100%;height:110%;inset:-5% 0 auto}.gallery-exhibition .home-hero .hero-blur img{width:74%;height:100%;transform:scale(1.35)}.home-hero .hero-actions{gap:18px;width:min(280px,23%);display:grid;position:absolute;top:49%;left:5%}.monochrome-shell .home-hero .hero-actions .hero-cta{color:#171717;width:100%;min-height:44px;font:400 clamp(10px, 1.6vw, 25px)/1.2 var(--sans);border:0;border-bottom:1px solid #777;gap:8px;padding:0;position:static}.home-hero .hero-cta-arrow{font-size:clamp(14px,1.7vw,24px)}.home-hero .hero-build-cta{color:#171717;min-height:44px;font:400 clamp(9px, 1.1vw, 16px)/1.3 var(--sans);border:1px solid #777;justify-content:space-between;align-items:center;gap:8px;padding:clamp(6px,.9vw,13px);text-decoration:none;display:flex}.home-hero .hero-build-cta>span:first-child{min-width:0}.home-hero .hero-build-cta>span:last-child{font-size:clamp(12px,1.25vw,18px)}.home-hero .hero-build-cta:hover{background:#ededed80;border-color:#171717}.gallery-exhibition .home-hero .hero-image-frame{aspect-ratio:.36;width:clamp(72px,15vw,225px);height:auto;max-height:56%;margin:0;position:absolute;top:54%;left:40%;transform:translate(-50%,-50%)}.home-hero .hero-frame-cross{font-size:clamp(16px,2.65vw,38px)}.home-hero .hero-editorial{width:min(37%,460px);font:400 clamp(10px, 1.25vw, 18px)/1.2 var(--sans);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,5vw,90px);display:grid;position:absolute;top:51%;left:55%}.home-hero .hero-footer{display:contents}.hero-signature{z-index:4;color:#171717;font:400 clamp(11px, 1.1vw, 16px)/1.3 var(--sans);margin:0;position:absolute;bottom:7%;left:5%}.hero-signature span{color:#555;margin-top:4px;font-size:.75em;display:block}.home-hero .hero-location{white-space:nowrap;margin:0;font-size:clamp(9px,.9vw,13px);position:absolute;bottom:7%;left:50%;transform:translate(-50%)}.gallery-exhibition .home-hero .hero-scroll{gap:8px;min-height:44px;margin:0;padding:8px;font-size:clamp(8px,.8vw,11px);position:absolute;bottom:6.1%;right:3.3%}.gallery-exhibition .home-hero .hero-scroll>span:last-child{font-size:clamp(14px,1.4vw,20px)}@media (hover:none){.monochrome-shell .home-hero .hero-actions .hero-cta,.home-hero .hero-build-cta{min-height:calc(44px / var(--site-scale))}}
