@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400&family=Manrope:wght@300;400;500&display=swap");:root{--ink:#141512;--paper:#f0efe9;--acid:#d9ff43;--line:rgba(20,21,18,0.22);--pad:clamp(22px,4vw,68px)}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Manrope,Arial,sans-serif;font-weight:300;overflow-x:hidden}a{text-decoration:none}a,button{color:inherit}button{font:inherit}img{display:block}::selection{background:var(--acid);color:var(--ink)}.page-pad{padding-left:var(--pad);padding-right:var(--pad)}.cover-image{object-fit:cover}.scroll-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--acid);transform-origin:0 50%;z-index:100}.site-header{position:absolute;z-index:30;width:100%;height:84px;padding:0 var(--pad);display:flex;justify-content:space-between;align-items:center;color:white;mix-blend-mode:difference}.wordmark{font-size:20px;font-weight:500;letter-spacing:-.08em}.wordmark span{display:inline-block;margin:0 5px;font-weight:300}.desktop-nav{display:flex;gap:36px;margin-left:auto;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:currentColor;transition:right .35s ease}.desktop-nav a:hover:after{right:0}.menu-button{display:none;border:0;background:transparent;padding:8px}.mobile-nav{display:none}.project-showcase{padding-top:118px;padding-bottom:clamp(64px,7vw,100px);color:var(--paper);background:var(--ink);overflow:hidden}.candidate-hero{min-height:min(620px,72svh);display:grid;grid-template-columns:.72fr 1.6fr 1fr auto;grid-gap:clamp(24px,4vw,72px);gap:clamp(24px,4vw,72px);align-items:start;padding:clamp(54px,8vw,118px) 0 70px;border-bottom:1px solid rgba(255,255,255,.22)}.candidate-kicker,.candidate-title p{margin:7px 0 0;font:10px/1.4 DM Mono,monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--acid)}.candidate-title h1{max-width:850px;margin:0;font-size:clamp(58px,8.2vw,126px);line-height:.86;letter-spacing:-.065em;font-weight:300}.candidate-title p{margin-top:24px;color:var(--paper)}.candidate-summary{max-width:440px;margin:5px 0 0;font-size:clamp(17px,1.5vw,22px);line-height:1.55;letter-spacing:-.018em;color:rgba(255,255,255,.78)}.candidate-contact{min-width:132px;padding:12px 0;border-top:1px solid var(--acid);border-bottom:1px solid var(--acid);display:flex;align-items:center;justify-content:space-between;gap:20px;font:10px/1 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.showcase-heading{display:grid;grid-template-columns:1fr 2fr;padding-top:clamp(65px,8vw,110px);padding-bottom:clamp(42px,5vw,70px)}.project-showcase .section-number{color:var(--acid);opacity:1}.showcase-heading>div>p{margin:0 0 24px;font:10px/1.3 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.showcase-heading h2{max-width:1000px;margin:0;font-size:clamp(42px,5vw,72px);line-height:.94;letter-spacing:-.055em;font-weight:300}.project-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:clamp(12px,1.5vw,24px);gap:clamp(12px,1.5vw,24px)}.project-card{position:relative;height:clamp(440px,53vw,610px);overflow:hidden;background:#3a3b37;cursor:pointer}.project-card:focus-visible{outline:3px solid var(--acid);outline-offset:4px}.project-card-image{position:absolute;inset:0;overflow:hidden}.project-card-image-inner{position:absolute;inset:-2%}.project-card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,11,9,.28),transparent 35%,rgba(10,11,9,.9));transition:background .55s ease;pointer-events:none}.project-card-image img{transition:transform 1.1s cubic-bezier(.22,1,.36,1),filter .7s ease}.project-card-top{position:absolute;z-index:2;left:clamp(20px,2vw,34px);right:clamp(20px,2vw,34px);top:clamp(20px,2vw,30px);display:flex;justify-content:space-between;gap:25px;color:white;font:9px/1.35 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.project-card-top span:last-child{text-align:right}.project-card-copy{position:absolute;z-index:2;left:clamp(20px,2vw,34px);right:clamp(20px,2vw,34px);bottom:clamp(20px,2vw,32px);color:white}.project-card-copy>p:first-child{margin:0 0 12px;font:9px/1.35 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--acid)}.project-card-copy h2{max-width:700px;margin:0;font-size:clamp(34px,3.4vw,54px);line-height:.92;letter-spacing:-.055em;font-weight:300}.project-card-description{max-width:500px;margin:22px 0 28px;font-size:clamp(13px,1.1vw,16px);color:rgba(255,255,255,.76)}.project-card-action{width:-moz-fit-content;width:fit-content;min-width:174px;padding:13px 15px;background:var(--acid);display:flex;align-items:center;justify-content:space-between;gap:28px;font:9px/1 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.project-card-action svg{transition:transform .45s cubic-bezier(.22,1,.36,1)}.project-card:hover .project-card-image img{transform:scale(1.045);filter:saturate(1.08)}.project-card:hover .project-card-action svg{transform:translate(6px,-6px)}.project-card:hover .project-card-image:after{background:linear-gradient(180deg,rgba(10,11,9,.18),transparent 32%,rgba(10,11,9,.94))}.section-tag{padding-top:28px;padding-bottom:28px;display:grid;grid-template-columns:1fr 2fr 1fr;border-bottom:1px solid var(--line);font:10px/1.2 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.section-tag span:last-child{text-align:right}.project-intro{padding-bottom:clamp(100px,14vw,220px)}.project-heading{padding:clamp(68px,8vw,120px) 0 75px;display:grid;grid-template-columns:1.2fr .8fr;align-items:end;grid-gap:8vw;gap:8vw}.project-heading h2{max-width:900px;font-size:clamp(58px,7.5vw,112px);line-height:.86;letter-spacing:-.068em;font-weight:300;margin:0}.project-statement{max-width:480px;font-size:clamp(18px,1.7vw,26px);line-height:1.4;letter-spacing:-.02em}.project-description p,.project-statement p{margin:0}.content-label{display:block;margin-bottom:18px;letter-spacing:.1em;opacity:.55}.content-label,.cross-link{font:9px/1 DM Mono,monospace;text-transform:uppercase}.cross-link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:10px 16px;border:1px solid var(--ink);letter-spacing:.08em;transition:background-color .3s ease,color .3s ease}.cross-link:hover{background:var(--ink);color:var(--paper)}.project-meta{display:grid;grid-template-columns:1fr 2fr;grid-gap:8vw;gap:8vw;border-top:1px solid var(--line);padding-top:26px}.project-description{font-size:14px;line-height:1.75;max-width:440px}.fact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:38px 6vw;gap:38px 6vw}.fact span,.section-number{font:9px/1 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em;opacity:.56}.fact p{font-size:14px;border-bottom:1px solid var(--line);margin:12px 0 0;padding-bottom:12px}.technical{padding-top:clamp(100px,12vw,180px);padding-bottom:clamp(110px,14vw,210px);background:#e3e2dc}.technical-heading{display:grid;grid-template-columns:.7fr 1.1fr 1fr;grid-gap:clamp(28px,5vw,90px);gap:clamp(28px,5vw,90px);align-items:start}.technical-heading h2{margin:0;font-size:clamp(58px,8vw,120px);line-height:.84;letter-spacing:-.065em;font-weight:300}.technical-heading>p{max-width:480px;margin:4px 0 0;font-size:clamp(16px,1.6vw,22px);line-height:1.5;letter-spacing:-.02em}.technical-highlights{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(90px,11vw,165px);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.technical-highlight{min-height:270px;padding:22px clamp(18px,2vw,32px) 28px 0;border-right:1px solid var(--line);display:flex;flex-direction:column}.technical-highlight+.technical-highlight{padding-left:clamp(18px,2vw,32px)}.technical-highlight:last-child{border-right:0}.technical-highlight>span{font:9px/1 DM Mono,monospace;opacity:.5}.technical-highlight h3{margin:auto 0 20px;font-size:clamp(22px,2.2vw,34px);line-height:1;letter-spacing:-.04em;font-weight:300}.technical-highlight p{margin:0;font-size:13px;line-height:1.65}.specification{margin-top:clamp(90px,11vw,160px);margin-left:25%}.specification-row,.specification-title{display:grid;grid-template-columns:minmax(170px,.75fr) 2fr;grid-gap:30px;gap:30px;border-top:1px solid var(--line)}.specification-title{padding:0 0 18px;border-top-color:var(--ink);font:9px/1.3 DM Mono,monospace;text-transform:uppercase;letter-spacing:.07em}.specification-title span:last-child{text-align:right}.specification-row{padding:17px 0}.specification-row span{font:9px/1.4 DM Mono,monospace;text-transform:uppercase;opacity:.55}.specification-row p{margin:0;font-size:14px;line-height:1.45}.full-bleed{height:100svh;min-height:650px;position:relative;overflow:hidden;background:#bbb}.image-layer{position:absolute;inset:-6%}.corner-label{position:absolute;left:var(--pad);bottom:34px;z-index:2;color:white;font:9px/1 DM Mono,monospace;text-transform:uppercase;letter-spacing:.1em;padding:10px 12px;border:1px solid rgba(255,255,255,.55)}.gallery{padding-top:clamp(100px,14vw,210px);padding-bottom:clamp(100px,14vw,210px)}.gallery-lead{margin-bottom:14vw;display:grid;grid-template-columns:1fr 2fr}.gallery-lead p{margin:0;font:10px/1.3 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.gallery-lead h3{margin:0;font-size:clamp(48px,7.6vw,120px);line-height:.9;letter-spacing:-.06em;font-weight:300}.gallery-row{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:clamp(28px,6vw,110px);gap:clamp(28px,6vw,110px);align-items:start;margin-bottom:clamp(100px,15vw,230px)}.gallery-row:nth-of-type(2n){grid-template-columns:.75fr 1.25fr}.gallery-row:nth-of-type(2n) .gallery-item:first-child{margin-top:16vw}.gallery-row:nth-of-type(odd) .gallery-item:last-child{margin-top:13vw}.gallery-image{position:relative;aspect-ratio:16/9;overflow:hidden;background:#deddd7}.gallery-image img,.wide-image img{object-fit:contain;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}.gallery-item:hover img,.wide-drawing:hover img{transform:scale(1.025)}.gallery-item figcaption,.wide-caption{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(100px,.55fr) 1fr;grid-gap:20px;gap:20px}.caption-index{font:9px/1.4 DM Mono,monospace;text-transform:uppercase;letter-spacing:.06em;opacity:.5}.caption-copy{display:grid;grid-gap:5px;gap:5px;text-align:left}.caption-copy strong{font-size:14px;line-height:1.35;font-weight:500}.caption-copy small{font:10px/1.5 DM Mono,monospace;opacity:.58}.caption-copy .technical-note{margin-top:6px;font:12px/1.55 Manrope,Arial,sans-serif;opacity:.82}.technical-note:before{content:"Technika — ";font:9px/1.4 DM Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.wide-drawing{margin:0 0 clamp(90px,12vw,180px)}.wide-image{position:relative;width:100%;aspect-ratio:16/8;background:#deddd7;overflow:hidden}.detail-drawing{width:74%;margin-left:auto}.profile{position:relative;color:var(--paper);background:var(--ink);padding-top:clamp(100px,12vw,180px);padding-bottom:200px;overflow:hidden}.profile-title{display:grid;grid-template-columns:1fr 2fr}.profile .section-number{color:var(--acid);opacity:1}.profile-title h2{margin:0;font-size:clamp(62px,10vw,150px);line-height:.86;letter-spacing:-.07em;font-weight:300}.profile-content{margin-top:140px;display:grid;grid-template-columns:1fr 2fr}.profile-intro{max-width:370px;font-size:18px;line-height:1.5;letter-spacing:-.015em}.profile-intro p{margin:0}.cv-columns{display:grid;grid-template-columns:1fr 1fr;grid-gap:65px 50px;gap:65px 50px}.cv-group h3{font:9px/1 DM Mono,monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--acid);margin:0 0 30px}.cv-row,.skill-row{display:grid;grid-template-columns:84px 1fr;padding:12px 0;border-top:1px solid rgba(255,255,255,.18)}.cv-row>span,.skill-row>span{font:9px/1.4 DM Mono,monospace;opacity:.5}.cv-row p,.skill-row p{margin:0;font-size:13px}.cv-row small{display:block;margin-top:5px;opacity:.45;font-size:11px}.loop-line{position:absolute;bottom:25px;left:0;white-space:nowrap;font-size:clamp(60px,9vw,140px);line-height:1;letter-spacing:-.06em;-webkit-text-stroke:1px rgba(255,255,255,.23)}.footer{min-height:100svh;background:#c9ff51;padding-top:55px;flex-direction:column}.footer,.footer-top{display:flex;justify-content:space-between}.footer-top{font:9px/1.5 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.footer-top span:last-child{text-align:right}.footer h2{font-size:clamp(70px,12vw,180px);line-height:.78;letter-spacing:-.075em;font-weight:300;margin:9vw 0 55px}.footer h2 em{font-family:Georgia,serif;font-weight:400}.email{width:100%;display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-size:clamp(17px,2vw,28px)}.email svg{transition:transform .35s ease}.email:hover svg{transform:translate(6px,-6px)}.footer-bottom{display:flex;justify-content:space-between;padding:50px 0 28px;font:9px/1 DM Mono,monospace;text-transform:uppercase}@media (max-width:800px){.desktop-nav{display:none}.menu-button{display:block;position:relative;z-index:51}.mobile-nav{display:flex;position:fixed;inset:0;z-index:50;background:var(--acid);color:var(--ink);padding:120px var(--pad) 50px;flex-direction:column;justify-content:center;gap:22px}.mobile-nav a{font-size:14vw;line-height:1;letter-spacing:-.06em}.candidate-hero{min-height:auto;grid-template-columns:1fr;gap:28px;padding:65px 0 70px}.candidate-title h1{font-size:clamp(54px,14vw,86px)}.candidate-title p{margin-top:16px}.candidate-summary{max-width:560px}.candidate-contact{width:min(100%,220px);margin-top:14px}.showcase-heading{grid-template-columns:1fr;gap:34px}.showcase-heading h2{font-size:clamp(42px,10vw,68px)}.project-cards{grid-template-columns:1fr}.project-card{height:min(76svh,720px);min-height:560px}.gallery-lead,.profile-content,.profile-title,.project-heading,.project-meta{grid-template-columns:1fr}.project-heading{gap:55px}.project-meta{gap:70px}.technical-heading{grid-template-columns:1fr;gap:45px}.technical-highlights{grid-template-columns:1fr 1fr}.technical-highlight:nth-child(2){border-right:0}.technical-highlight:nth-child(-n+2){border-bottom:1px solid var(--line)}.specification{margin-left:0}.gallery-lead{gap:55px}.gallery-row,.gallery-row:nth-of-type(2n){grid-template-columns:1fr;gap:80px}.gallery-row:nth-of-type(2n) .gallery-item:first-child,.gallery-row:nth-of-type(odd) .gallery-item:last-child{margin-top:0}.gallery-row .gallery-item:nth-child(2n){width:82%;margin-left:auto}.detail-drawing{width:100%}.profile-title{gap:55px}.profile-content{margin-top:100px;gap:90px}.cv-columns{grid-template-columns:1fr}}@media (max-width:520px){.project-showcase{padding-top:108px}.showcase-heading{gap:32px}.project-card-description{font-size:13px}.candidate-hero{padding-top:45px}.candidate-summary{font-size:16px}.gallery-item figcaption,.wide-caption{grid-template-columns:1fr;gap:8px}.technical-highlights{grid-template-columns:1fr}.technical-highlight,.technical-highlight+.technical-highlight{min-height:270px;padding-left:0;border-right:0;border-bottom:1px solid var(--line)}.technical-highlight:last-child{border-bottom:0}.specification-row,.specification-title{grid-template-columns:1fr;gap:10px}.specification-title span:last-child{text-align:left;opacity:.55}.section-tag{grid-template-columns:42px 1fr 50px}.project-heading{padding-bottom:70px}.fact-grid{grid-template-columns:1fr}.full-bleed{height:72svh;min-height:520px}.gallery-row .gallery-item:nth-child(2n){width:100%}.profile{padding-bottom:135px}.footer-bottom span:nth-child(2),.footer-top span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--ink:#1e1e1e;--paper:#ffffff;--acid:#1e1e1e;--soft:#f4f4f4;--line:rgba(30,30,30,.16);--pad:clamp(22px,4vw,64px)}body{background:var(--paper)}.page-pad{width:min(100%,1440px);margin-inline:auto}.scroll-progress{inset:0 18px auto;height:2px;background:var(--ink)}.site-header{position:-webkit-sticky;position:sticky;top:0;height:72px;color:var(--ink);background:rgba(255,255,255,.9);border-bottom:1px solid var(--line);mix-blend-mode:normal;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.desktop-nav{width:100%;display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;grid-gap:clamp(22px,3.4vw,58px);gap:clamp(22px,3.4vw,58px);margin:0;font:9px/1 DM Mono,monospace;letter-spacing:.07em}.desktop-nav a:after{display:none}.portfolio-index-link{display:flex;align-items:center;gap:10px;white-space:nowrap;text-transform:uppercase}.topbar-logo{width:32px;height:32px;object-fit:contain}.project-index-nav{width:min(100%,820px);justify-self:center;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}.project-index-link{position:relative;min-height:71px;padding:0 8px;display:flex;align-items:center;justify-content:center;gap:7px;opacity:.48;white-space:nowrap;transition:opacity .3s ease,background-color .3s ease}.project-index-link>span:first-child{font-size:8px;opacity:.65}.project-index-link.is-active,.project-index-link:focus-visible,.project-index-link:hover{opacity:1;background:rgba(30,30,30,.035)}.project-index-link:focus-visible{outline:1px solid var(--ink);outline-offset:-5px}.utility-nav{display:flex;align-items:center;gap:clamp(16px,2vw,30px);text-transform:uppercase}.utility-nav a{opacity:.65;transition:opacity .3s ease}.utility-nav a:focus-visible,.utility-nav a:hover{opacity:1}.mobile-current-project{display:none}#kontakt,#lista-projektow,#o-mnie,#projekty{scroll-margin-top:72px}.project-showcase{color:var(--ink);background:var(--paper);padding-top:28px}.candidate-kicker,.candidate-title p,.project-showcase .section-number{color:var(--ink)}.candidate-hero{position:relative;min-height:min(560px,68svh);border-color:var(--line);overflow:hidden}.candidate-hero>:not(.architectural-sketch){position:relative;z-index:1}.candidate-summary{color:rgba(30,30,30,.72)}.candidate-contact{border-color:var(--ink)}.showcase-heading>div>p{color:rgba(30,30,30,.55)}.project-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.15vw,18px);align-items:stretch}.project-card{height:auto;overflow:visible;color:var(--ink);background:transparent;display:flex;flex-direction:column}.project-card-image{position:relative;inset:auto;aspect-ratio:3/4;background:var(--soft)}.project-card-image-inner{inset:0}.project-card-image-inner:after{content:"";position:absolute;inset:0;z-index:1;opacity:0;background-image:linear-gradient(rgba(255,255,255,.58) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.58) 1px,transparent 0),linear-gradient(32deg,transparent 49.8%,rgba(255,255,255,.8) 50%,transparent 50.3%);background-size:42px 42px,42px 42px,100% 100%;transition:opacity .55s ease;pointer-events:none}.project-card:hover .project-card-image-inner:after{opacity:.42}.project-card-image:after{background:linear-gradient(180deg,rgba(0,0,0,.34),transparent 36%)}.project-card-top{left:14px;right:14px;top:14px;flex-direction:column;align-items:flex-start;gap:6px}.project-card-top span:last-child{max-width:17ch;text-align:left}.project-card-copy{position:relative;inset:auto;bottom:auto;padding:16px 0 0;color:var(--ink);display:flex;flex:1 1;flex-direction:column}.project-card-copy>p:first-child{margin-bottom:9px;color:rgba(30,30,30,.55)}.project-card-copy h2{font-size:clamp(24px,2vw,31px);line-height:.98}.project-card-description{min-height:112px;margin:14px 0 18px;color:rgba(30,30,30,.68);font-size:13px;line-height:1.55}.project-card-action{min-width:0;width:100%;margin-top:auto;padding:11px 0;color:var(--ink);background:transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-card:hover .project-card-image:after{background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 36%)}.project-card:hover .project-card-action{border-color:var(--ink)}.project-intro{position:relative;overflow:hidden;padding-bottom:clamp(80px,10vw,150px)}.project-heading{padding-top:clamp(64px,7vw,105px)}.project-heading h2{font-size:clamp(54px,6.5vw,94px)}.technical{width:min(calc(100% - 32px),1440px);margin-inline:auto;padding-top:clamp(75px,8vw,120px);padding-bottom:clamp(80px,9vw,140px);background:var(--soft)}.technical-heading{grid-template-columns:.55fr 1fr 1fr}.technical-heading h2{font-size:clamp(50px,6vw,84px);line-height:.9}.technical-highlights{display:block;margin-top:clamp(65px,8vw,110px)}.technical-highlight,.technical-highlight+.technical-highlight{min-height:0;padding:24px 0;display:grid;grid-template-columns:60px minmax(180px,.8fr) 1.5fr;grid-gap:26px;gap:26px;align-items:start;border-right:0;border-bottom:1px solid var(--line)}.technical-highlight:last-child{border-bottom:0}.technical-highlight h3{margin:0;font-size:clamp(20px,1.8vw,27px);line-height:1.15}.technical-highlight p{max-width:660px}.specification{margin-top:clamp(65px,8vw,110px)}.specification-section{width:min(calc(100% - 32px),1440px);margin-inline:auto;padding-top:clamp(75px,8vw,120px);padding-bottom:clamp(80px,9vw,140px);background:var(--soft)}.specification-section .specification{margin-top:0}.full-bleed{width:min(calc(100% - 32px),1440px);height:78svh;min-height:560px;margin-inline:auto}.contain-image{object-fit:contain}.image-layer.is-contained{inset:0;background:#eeeae2}.full-bleed-contained .corner-label{color:var(--ink);background:rgba(255,255,255,.82);border-color:var(--line)}.gallery{padding-top:clamp(80px,10vw,150px);padding-bottom:clamp(80px,10vw,150px)}.gallery-lead{margin-bottom:clamp(75px,10vw,145px)}.gallery-lead h3{font-size:clamp(44px,6vw,88px)}.gallery-row,.gallery-row:nth-of-type(2n){grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,70px);margin-bottom:clamp(80px,9vw,135px)}.gallery-row:nth-of-type(2n) .gallery-item:first-child,.gallery-row:nth-of-type(odd) .gallery-item:last-child{margin-top:0}.wide-drawing{margin-bottom:clamp(75px,9vw,130px)}.detail-drawing{width:100%}.gallery-row.is-solo{grid-template-columns:1fr}.gallery-row-trio{grid-template-columns:repeat(3,1fr)}.subsection{padding-top:clamp(50px,7vw,100px);padding-bottom:clamp(20px,3vw,40px);border-top:1px solid var(--line)}.subsection-heading{margin-bottom:clamp(28px,4vw,54px)}.subsection-heading h3{margin:10px 0 0;font-size:clamp(34px,4.4vw,58px);line-height:.95;letter-spacing:-.05em;font-weight:300}.subsection-paragraph{max-width:640px;margin-bottom:20px;font-size:15px;line-height:1.65;color:rgba(30,30,30,.78)}.subsection-paragraph p{margin:0}.profile{width:min(calc(100% - 32px),1440px);background:var(--soft);padding-bottom:160px}.cv-group h3,.profile,.profile .section-number{color:var(--ink)}.cv-row,.skill-row{border-color:var(--line)}.loop-line{color:transparent;-webkit-text-stroke-color:rgba(30,30,30,.14)}.footer{width:min(calc(100% - 32px),1440px);min-height:78svh;margin-inline:auto;background:var(--soft)}.footer h2{font-size:clamp(62px,9vw,130px)}.architectural-sketch{position:absolute;right:1%;bottom:42px;width:min(24vw,290px);aspect-ratio:1.55;opacity:.1;border-left:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:opacity .55s ease,transform .7s cubic-bezier(.22,1,.36,1);pointer-events:auto}.architectural-sketch span,.architectural-sketch:after,.architectural-sketch:before{content:"";position:absolute;display:block;height:1px;background:var(--ink);transform-origin:left center;transition:transform .7s cubic-bezier(.22,1,.36,1),opacity .45s ease}.architectural-sketch:before{left:0;bottom:0;width:116%;transform:rotate(-32deg)}.architectural-sketch:after{left:0;top:48%;width:100%}.architectural-sketch span:first-child{left:18%;top:0;width:1px;height:100%}.architectural-sketch span:nth-child(2){left:55%;top:0;width:1px;height:100%}.architectural-sketch span:nth-child(3){left:0;top:24%;width:72%}.architectural-sketch span:nth-child(4){right:0;top:72%;width:58%;transform-origin:right center}.architectural-sketch:hover{opacity:.72;transform:translateY(-6px)}.architectural-sketch:hover:before{transform:rotate(-28deg) scaleX(.94)}.architectural-sketch:hover span:nth-child(3){transform:translateX(12%)}.architectural-sketch:hover span:nth-child(4){transform:translateX(-14%)}.sketch-side{top:112px;right:var(--pad);bottom:auto;width:min(15vw,190px);opacity:.055}.sketch-side.sketch-left{right:auto;left:var(--pad);transform:scaleX(-1)}.sketch-side.sketch-left:hover{transform:scaleX(-1) translateY(-6px)}.sketch-profile{top:72px;right:var(--pad);bottom:auto;width:min(18vw,230px);opacity:.07}@media (min-width:801px) and (max-width:1179px){.desktop-nav{gap:18px}.portfolio-index-link{font-size:8px}.project-index-link{padding-inline:4px;gap:5px;font-size:8px;letter-spacing:.03em}.project-index-link>span:first-child{display:none}.utility-nav{gap:13px;font-size:8px}.project-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 18px}.project-card-description{min-height:82px}}@media (max-width:800px){.desktop-nav{display:none}.mobile-nav{color:var(--ink);background:var(--soft)}.project-showcase{padding-top:20px}.candidate-hero{min-height:auto;padding:48px 0 62px}.project-cards{grid-template-columns:1fr}.project-card-image{aspect-ratio:4/4.4}.project-card-image-inner:after{display:none}.project-card-description{min-height:auto}.project-card-top{left:20px;right:20px;top:20px}.project-card-copy h2{font-size:clamp(30px,8vw,42px)}.project-intro{padding-bottom:72px}.technical-heading{grid-template-columns:1fr}.technical-highlight,.technical-highlight+.technical-highlight{grid-template-columns:38px 1fr}.technical-highlight p{grid-column:2}.gallery-row,.gallery-row:nth-of-type(2n){grid-template-columns:1fr}.gallery-row .gallery-item:nth-child(2n){width:100%;margin-left:0}.full-bleed{height:62svh;min-height:420px}.gallery{padding-top:72px;padding-bottom:72px}.gallery-lead{margin-bottom:64px}.gallery-row,.gallery-row:nth-of-type(2n){gap:58px;margin-bottom:72px}.profile{padding-top:80px;padding-bottom:120px}.footer{min-height:70svh}.architectural-sketch,.scroll-plumb{display:none}}@media (prefers-reduced-motion:reduce){.architectural-sketch{transition:none}}.scroll-plumb{position:fixed;top:2px;left:18px;right:18px;z-index:101;height:0;pointer-events:none}.scroll-plumb-position{position:absolute;top:0;width:0;height:0}.scroll-plumb-pendulum{position:absolute;top:0;width:1px;height:54px;transform-origin:50% 0}.scroll-plumb-line{display:block;width:1px;height:24px;background:var(--ink)}.scroll-plumb-weight{position:absolute;left:-18px;bottom:0;width:36px;height:36px;display:grid;place-items:center;color:var(--paper);background:var(--ink);border:1px solid var(--ink);border-radius:50%;font:400 13px/1 DM Mono,monospace;letter-spacing:-.06em}@media (max-width:800px){.site-header{padding-top:env(safe-area-inset-top);height:calc(72px + env(safe-area-inset-top))}.mobile-current-project{display:block;max-width:calc(100% - 64px);overflow:hidden;font:9px/1 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap}.wordmark{font-size:18px}.menu-button{width:40px;height:40px;min-width:40px;min-height:40px;margin-right:-8px;margin-left:auto;padding:8px;align-items:center;justify-content:center;cursor:pointer}.menu-button svg{width:20px;height:20px;stroke-width:1.4}.mobile-nav{inset:calc(62px + env(safe-area-inset-top)) 14px auto auto;width:min(250px,calc(100vw - 28px));height:auto;min-height:0;padding:8px 14px;justify-content:flex-start;gap:0;overflow:hidden;background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:0 14px 40px rgba(0,0,0,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.mobile-nav a{display:flex;align-items:center;min-height:52px;border-top:1px solid var(--line);font-size:18px;line-height:1;letter-spacing:-.025em}.mobile-nav a:last-child{border-bottom:1px solid var(--line)}.scroll-plumb-pendulum{height:47px}.scroll-plumb-line{height:21px}.scroll-plumb-weight{left:-16px;width:32px;height:32px;font-size:11px;font-weight:400}}@media (max-height:620px) and (max-width:800px),(max-width:380px){.mobile-nav a{min-height:48px;font-size:17px}}