@layer reset{*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:4.5rem}body,h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}}@layer tokens{:root{--ink:#1d2825;--paper:#f2f4f1;--paper-strong:#fbfcfa;--muted:#66706d;--violet:#748783;--pink:#b97870;--orange:#c68a75;--mint:#bed8cf;--yellow:#d8d4b9;--rule:1px solid var(--ink);--shadow:none;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--serif:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--max:1440px}}@layer base{html{background:var(--ink)}body{background:var(--paper);min-width:320px;color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;font-size:16px;line-height:1.55}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--violet);outline-offset:4px}h1,h2,h3{letter-spacing:-.055em;line-height:.98}h1,h2{font-family:var(--serif);font-weight:600}h3{font-weight:800}p{max-width:72ch}.skip-link{z-index:100;background:var(--paper-strong);border:var(--rule);padding:.75rem 1rem;font-weight:800;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}}@layer components{.section-shell{width:min(100%, var(--max));margin-inline:auto;padding-inline:clamp(1rem,4vw,4rem)}.eyebrow{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;font-size:.78rem;font-weight:800}.button{border:var(--rule);background:var(--accent,var(--yellow));min-height:3.25rem;box-shadow:5px 5px 0 var(--ink);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;padding:.75rem 1.15rem;font-size:.76rem;font-weight:900;text-decoration:none;transition:transform .14s,box-shadow .14s;display:inline-flex}.button:hover{box-shadow:2px 2px 0 var(--ink);transform:translate(3px,3px)}.button--small{min-height:2.5rem;box-shadow:none}.text-link,.quiet-link{font-weight:800}.site-header{z-index:50;border-bottom:var(--rule);background:color-mix(in srgb, var(--paper) 92%, transparent);backdrop-filter:blur(12px);grid-template-columns:1fr auto 1fr;align-items:center;min-height:4.5rem;padding:.65rem clamp(1rem,4vw,4rem);display:grid;position:sticky;top:0}.wordmark{align-items:center;gap:.7rem;text-decoration:none;display:flex}.wordmark span{aspect-ratio:1;border:var(--rule);background:var(--accent);width:2.35rem;font-family:var(--mono);place-items:center;font-size:.75rem;font-weight:900;display:grid}.wordmark strong{letter-spacing:.06em;text-transform:uppercase;font-size:.82rem}.desktop-nav{gap:clamp(1rem,3vw,2.5rem);display:flex}.desktop-nav a{text-transform:uppercase;font-size:.8rem;font-weight:800;text-decoration:none}.header-actions{justify-content:flex-end;align-items:center;gap:1rem;display:flex}.mobile-nav{display:none}.section-heading{grid-template-columns:minmax(0,1.5fr) minmax(16rem,.8fr);align-items:end;gap:2rem;margin-bottom:clamp(2rem,4vw,3.5rem);display:grid}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{font-size:clamp(3rem,7vw,7rem)}.section-heading>p:last-child{justify-self:end;font-size:1.1rem}.tag-list{flex-wrap:wrap;gap:.45rem;list-style:none;display:flex}.tag-list li{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;border:1px solid;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:800}}@layer pages{body.case-page{--canvas:#c9c890;--ink:#27171b;--paper:#fff4f2;--paper-strong:#fff4f2;--muted:#6c5358;--folder-cherry:#a91238;--folder-pale:#ffdce3;--folder-yellow:#fff4b8;--footer-cherry:#71162f;--sans:"Manrope", Arial, sans-serif;--serif:"Libre Caslon Display", Georgia, serif;--display:"Archivo Black", "Arial Black", sans-serif;background:var(--canvas);color:var(--ink);font-family:var(--sans);overflow-x:hidden}.case-page .skip-link{background:var(--ink);color:#fff;border:0;border-radius:8px}.case-page :focus-visible{outline-offset:3px;box-shadow:0 0 0 6px var(--ink);outline:3px solid #fff}.case-page .case-study{width:min(100%,1680px);margin-inline:auto;padding-bottom:clamp(1rem,3vw,3rem);overflow:visible}.case-page .case-study__back{text-transform:none;justify-content:space-between;align-items:center;gap:1rem;padding-block:clamp(1rem,2.2vw,2rem);font-size:.75rem;font-weight:700;display:flex}.case-page .case-study__home{align-items:baseline;gap:.75rem;text-decoration:none;display:flex}.case-page .case-study__home span{font-family:var(--display);letter-spacing:-.03em;font-size:clamp(1rem,1.7vw,1.45rem);font-weight:400;line-height:1}.case-page .case-study__home small{color:var(--muted);font-size:.7rem;font-weight:700}.case-page .case-study__back nav{align-items:center;gap:.65rem;display:flex}.case-page .case-study__back nav a{border-radius:12px;align-items:center;min-height:44px;padding:.65rem .85rem;text-decoration:none;display:inline-flex}.case-page .case-study__back nav a:hover{background:color-mix(in srgb, var(--paper) 45%, transparent)}.case-page .case-study__back .case-study__contact{background:var(--folder-cherry);color:var(--folder-pale)}.case-page .case-study__back .case-study__contact:hover{background:var(--footer-cherry)}.case-page .case-hero{isolation:isolate;background:var(--case-stock);width:calc(100% - clamp(2rem,6.4vw,7rem));max-width:none;color:var(--case-stock-text);border:0;border-radius:16px;gap:clamp(1.75rem,3vw,3rem);margin:clamp(1.5rem,3vw,3rem) auto 0;padding:clamp(2rem,4vw,4.25rem) clamp(1.25rem,4vw,4rem) clamp(1.5rem,3vw,3rem);position:relative}.case-page .case-hero:before{content:"";z-index:-1;background:var(--case-stock);border-radius:16px 16px 0 0;width:clamp(10rem,30%,24rem);height:2.5rem;position:absolute;top:-1.35rem;left:0}.case-page .case-hero__meta>span{font-family:var(--sans);letter-spacing:.07em;font-size:.72rem;font-weight:700}.case-page .tag-list li{font-family:var(--sans);letter-spacing:.04em;border-color:currentColor;font-size:.68rem;font-weight:700}.case-page .case-hero__main{align-items:stretch}.case-page .case-hero__main--artifact{gap:clamp(1.5rem,3vw,3rem)}.case-page .case-hero h1{max-width:14ch;font-family:var(--serif);letter-spacing:-.035em;text-wrap:balance;font-size:clamp(3.25rem,6.6vw,6rem);font-weight:400;line-height:.92}.case-page .case-hero__proof{background:var(--paper);color:var(--ink);border:0;border-radius:13px;align-self:end;padding:clamp(1.25rem,2.5vw,2.25rem)}.case-page .case-hero__proof>span{font-family:var(--sans);letter-spacing:.07em;font-size:.7rem;font-weight:700}.case-page .case-hero__proof p{font-family:var(--serif);margin-top:.85rem;font-size:clamp(1.3rem,2vw,2rem);line-height:1.15}.case-page .case-hero__proof strong{border-color:var(--ink);margin-top:1.25rem;padding-top:.85rem;font-size:.82rem;line-height:1.5}.case-page .case-hero .project-visual,.case-page .case-hero .case-hero-artifact{--card-accent:var(--paper);background:var(--paper);color:var(--ink);border:0;border-radius:13px;overflow:hidden}.case-page .case-facts{background:0 0;border:1px solid;border-radius:13px;overflow:hidden}.case-page .case-facts div{border-color:currentColor}.case-page .case-facts dt{font-family:var(--sans);letter-spacing:.07em;font-size:.68rem;font-weight:700}.case-page .case-facts dd{font-size:.86rem;font-weight:700}.case-page .retrospective-note{background:var(--folder-yellow);border:0;border-radius:13px;width:calc(100% - clamp(2rem,6.4vw,7rem));margin:clamp(1rem,2vw,1.5rem) auto 0;padding:1.2rem clamp(1.25rem,3vw,2.5rem)}.case-page .retrospective-note span{font-family:var(--sans);font-size:.7rem;font-weight:700}.case-page .retrospective-note p{font-size:.9rem}.case-page .case-body{background:var(--paper);width:calc(100% - clamp(2rem,12vw,13rem));max-width:76rem;font-family:var(--sans);border-radius:13px;margin:clamp(1rem,2vw,1.5rem) auto 0;padding:clamp(2rem,5vw,5rem) clamp(1.25rem,6vw,6rem)}.case-page .case-body>h2{max-width:18ch;font-family:var(--serif);letter-spacing:-.035em;text-wrap:balance;margin-top:clamp(4rem,7vw,7rem);font-size:clamp(2.5rem,4.8vw,4.8rem);font-weight:400;line-height:.98}.case-page .case-body>h2:first-child{margin-top:0}.case-page .case-body>p{max-width:70ch;margin-top:1.25rem;font-size:clamp(1.05rem,1.4vw,1.18rem);line-height:1.7}.case-page .case-body>p:has(>.media-trigger),.case-page .case-body>p:has(>img){max-width:none;margin-block:clamp(2rem,4vw,4rem)}.case-page .case-body img{background:#fff;border:0;border-radius:13px}.case-page .case-body code{background:var(--folder-pale);color:var(--footer-cherry);font-family:var(--sans);border:0;border-radius:13px;padding:clamp(1.25rem,4vw,3rem);font-size:clamp(.84rem,1.6vw,1.2rem);font-weight:700}.case-page .media-trigger:after{font-family:var(--sans);font-size:.7rem;font-weight:700}.case-page .media-lightbox{background:var(--paper);border:0;border-radius:13px}.case-page .live-project,.case-page .next-project{border:0;border-radius:16px;width:calc(100% - clamp(2rem,6.4vw,7rem));margin-inline:auto}.case-page .live-project{background:var(--folder-pale);margin-top:1.5rem}.case-page .live-project span{font-family:var(--sans);font-size:.7rem;font-weight:700}.case-page .live-project h2{font-family:var(--serif);font-weight:400}.case-page .next-project{background:0 0;margin-top:1.5rem;padding:clamp(2rem,4vw,4rem) 0 0}.case-page .next-project__heading span{font-family:var(--sans);font-size:.7rem;font-weight:700}.case-page .next-project__heading strong{font-family:var(--serif);font-weight:400}.case-page .next-project>a{background:var(--next-accent);color:var(--next-accent-text);border:0;border-radius:16px;position:relative;overflow:visible}.case-page .next-project>a:before{content:"";background:var(--next-accent);border-radius:12px 12px 0 0;width:min(34%,18rem);height:1.5rem;position:absolute;top:-.9rem;left:0}.case-page .next-project__title{font-family:var(--serif);letter-spacing:-.03em;font-weight:400}.case-page .next-project__action{background:var(--paper);color:var(--ink);font-family:var(--sans);border:0;border-radius:12px;font-size:.7rem;font-weight:700}.hero{align-content:center;gap:clamp(2rem,3vw,3rem);min-height:calc(100svh - 4.5rem);padding-block:clamp(2.5rem,5vw,4.5rem);display:grid;position:relative;overflow:hidden}.hero__intro{grid-template-columns:minmax(0,1.2fr) minmax(24rem,.8fr);align-items:center;gap:clamp(2rem,5vw,5rem);display:grid}.hero__copy{z-index:2;position:relative}.hero h1{max-width:12ch;margin-top:1.4rem;font-size:clamp(3.8rem,6.8vw,7rem)}.hero__portrait{width:min(100%,34rem);box-shadow:none;justify-self:end;position:relative;transform:none}.hero__portrait-frame{border:var(--rule);background:var(--mint);border-radius:50% 50% .25rem .25rem/24% 24% .25rem .25rem;padding:clamp(.55rem,1vw,.8rem)}.hero__portrait img{aspect-ratio:4/5;object-fit:cover;object-position:center;border-radius:50% 50% .1rem .1rem/23% 23% .1rem .1rem;width:100%;height:auto}.hero__portrait figcaption{color:var(--ink);font-family:var(--mono);letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:.75rem .25rem 0;font-size:.75rem;font-weight:900}.hero__lower{z-index:2;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;display:grid;position:relative}.hero__lower>p{font-size:clamp(1.1rem,2vw,1.45rem)}.hero__actions{align-items:center;gap:1.4rem;display:flex}.capability-strip{border-block:var(--rule);background:var(--ink);color:var(--paper-strong);overflow:hidden}.capability-strip ul{width:max-content;list-style:none;display:flex}.capability-strip li{border-right:1px solid var(--paper);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:.9rem 1.4rem;font-size:.75rem;font-weight:900}.work{padding-block:clamp(4rem,7vw,7rem)}.supporting-work-label{border-top:var(--rule);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-top:clamp(3rem,6vw,6rem);padding-top:1rem;font-size:.78rem;font-weight:900}.project-grid--supporting{margin-top:clamp(2rem,4vw,3.5rem)}.project-grid{grid-template-columns:repeat(12,1fr);gap:3.5rem 1.5rem;display:grid}.project-card{grid-column:span 6}.project-card>a{text-decoration:none;display:block}.project-card__media{border:var(--rule);background:var(--card-accent);box-shadow:var(--shadow);aspect-ratio:4/3;position:relative;overflow:hidden}.project-card__media .visual-kicker{justify-self:start;width:fit-content;max-width:calc(100% - 4rem)}.project-card__media .project-visual>small{justify-self:start;width:fit-content;max-width:calc(100% - 8rem)}.project-card__number{z-index:4;aspect-ratio:1;background:var(--paper-strong);border:var(--rule);width:2.75rem;font-family:var(--mono);place-items:center;font-size:.75rem;font-weight:900;display:grid;position:absolute;top:.75rem;right:.75rem}.project-card__action{background:var(--paper-strong);border:var(--rule);text-transform:uppercase;padding:.6rem .75rem;font-size:.75rem;font-weight:900;position:absolute;bottom:.75rem;right:.75rem}.project-card__copy{padding-top:1.4rem}.project-card__copy h3{max-width:20ch;font-family:var(--serif);margin-top:1rem;font-size:clamp(2rem,3.2vw,3.25rem)}.project-card__copy p{color:var(--muted);margin-top:.8rem;font-size:1rem}.project-card__copy>strong{margin-top:.8rem;font-size:.88rem;line-height:1.45;display:block}.approach{color:#fff;background:#344742;max-width:none;padding-block:clamp(4rem,7vw,6.5rem)}.section-heading--light{grid-template-columns:1fr}.section-heading--light h2{max-width:14ch}.approach-grid{border:1px solid #ffffffa6;grid-template-columns:repeat(4,1fr);display:grid}.approach-grid article{border-right:1px solid #ffffffa6;min-height:18rem;padding:1.5rem}.approach-grid article:last-child{border-right:0}.approach-grid span{font-family:var(--mono);font-size:.75rem}.approach-grid h3{margin-top:clamp(4rem,6vw,6rem);font-size:1.65rem}.approach-grid p{color:#fff;margin-top:1rem}.about{grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(2rem,6vw,6rem);padding-block:clamp(4rem,7vw,7rem);display:grid}.about__portrait{justify-self:center;width:min(100%,34rem);position:relative}.about__portrait img{aspect-ratio:4/5;border:var(--rule);object-fit:cover;object-position:center;filter:saturate(.78)contrast(1.05);width:100%;height:auto;display:block}.about__copy h2{margin-block:1rem 2rem;font-size:clamp(3.5rem,8vw,8rem)}.about__copy>p{margin-top:1rem;font-size:clamp(1rem,1.6vw,1.25rem)}.about__actions{align-items:center;gap:1.5rem;margin-top:2rem;display:flex}.contact{background:var(--orange);max-width:none;padding-block:clamp(4rem,7vw,7rem)}.contact h2{max-width:14ch;margin-block:1.25rem 2rem;font-size:clamp(3.25rem,7vw,7rem)}.contact>a{font-size:clamp(1.2rem,3vw,3rem);font-weight:900}.site-footer{background:var(--ink);max-width:none;color:var(--paper);font-family:var(--mono);text-transform:uppercase;border-top:1px solid #ffffff59;justify-content:space-between;gap:2rem;padding-block:1.5rem;font-size:.75rem;display:flex}.case-study{overflow:hidden}.case-study__back{text-transform:uppercase;padding-block:1.25rem;font-size:.75rem;font-weight:900}.case-hero{border-block:var(--rule);background:var(--project-accent);gap:clamp(2rem,3vw,3rem);max-width:none;padding-block:clamp(2.5rem,4.5vw,4rem);display:grid}.case-hero__meta{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.case-hero__meta>span,.case-hero__proof>span{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:900}.case-hero__meta .tag-list{justify-content:flex-end}.case-hero__main{grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);align-items:end;gap:clamp(2rem,6vw,6rem);display:grid}.case-hero__main--artifact{grid-template-columns:minmax(18rem,.7fr) minmax(0,1.3fr);align-items:start;gap:clamp(1.5rem,4vw,4rem)}.case-hero__main--artifact h1{grid-column:1}.case-hero__main--artifact .case-hero-artifact{grid-area:1/2/span 2}.case-hero__main--artifact .case-hero__proof{grid-column:1}.case-hero h1{max-width:15ch;font-size:clamp(3.5rem,6.7vw,7rem)}.case-hero__proof{border:var(--rule);background:var(--paper-strong);box-shadow:var(--shadow);padding:clamp(1.25rem,3vw,2.25rem)}.case-hero__proof p{margin-top:1.5rem;font-size:clamp(1.1rem,1.7vw,1.4rem);line-height:1.4}.case-hero__proof strong{border-top:var(--rule);margin-top:1.5rem;padding-top:1rem;font-size:.85rem;line-height:1.45;display:block}.case-facts{border:var(--rule);background:color-mix(in srgb, var(--paper-strong) 72%, transparent);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));display:grid}.case-facts div{border-right:var(--rule);padding:1rem 1.25rem}.case-facts div:last-child{border-right:0}.case-facts dt{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.6rem;font-size:.75rem;font-weight:900}.case-facts dd{font-size:.9rem}.retrospective-note{border-block:var(--rule);background:var(--yellow);grid-template-columns:12rem 1fr;gap:2rem;padding-block:1.25rem;display:grid}.retrospective-note span{font-family:var(--mono);text-transform:uppercase;font-size:.75rem;font-weight:900}.retrospective-note p{font-weight:800}.case-body{max-width:76rem;font-family:var(--serif);padding-block:clamp(3rem,4.5vw,5rem)}.case-body>h2{max-width:16ch;margin-top:clamp(3.5rem,4.5vw,5rem);font-size:clamp(2.75rem,5vw,5rem)}.case-body>h2:first-child{margin-top:0}.case-body>p{margin-top:1.5rem;font-size:clamp(1.12rem,2vw,1.42rem);line-height:1.65}.case-body>p:has(>.media-trigger),.case-body>p:has(>img){max-width:none;margin-block:clamp(2.5rem,4.5vw,5rem)}.case-body img{border:var(--rule);object-fit:contain;background:var(--paper-strong);width:100%;max-height:82vh}.case-body code{border:2px solid var(--ink);background:var(--project-accent);box-shadow:var(--shadow);font-family:var(--mono);text-align:center;white-space:pre-wrap;padding:clamp(1rem,4vw,3rem);font-size:clamp(.9rem,2vw,1.5rem);font-weight:900;display:block;overflow-x:auto}.media-trigger{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.media-trigger:after{content:"Expand ↗";font-family:var(--sans);text-align:right;text-transform:uppercase;margin-top:.6rem;font-size:.75rem;font-weight:900;display:block}.media-lightbox{border:var(--rule);background:var(--paper-strong);width:min(94vw,1500px);max-width:none;height:min(92vh,1100px);max-height:none;padding:3rem 1rem 1rem}.media-lightbox::backdrop{background:#0a0a08e6}.media-lightbox button{text-transform:uppercase;background:0 0;border:0;font-size:.75rem;font-weight:900;position:absolute;top:.6rem;right:.7rem}.media-lightbox [data-expanded-image]{width:100%;height:100%}.media-lightbox img{object-fit:contain;width:100%;height:100%}.live-project{border-block:var(--rule);background:var(--mint);grid-template-columns:1fr auto;align-items:end;gap:2rem;max-width:none;padding-block:clamp(2.5rem,4vw,4rem);display:grid}.live-project span{font-family:var(--mono);text-transform:uppercase;font-size:.75rem;font-weight:900}.live-project h2{max-width:18ch;margin-block:.75rem;font-size:clamp(2.5rem,4.5vw,4.5rem)}.next-project{border-top:var(--rule);background:var(--paper);max-width:none;color:var(--ink);gap:1.5rem;padding-block:clamp(2.5rem,4vw,4rem);display:grid}.next-project__heading{align-items:baseline;gap:1rem;display:flex}.next-project__heading span{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:900}.next-project__heading strong{font-size:clamp(1.35rem,2.5vw,2.25rem)}.next-project>a{border:var(--rule);background:var(--next-accent);box-shadow:var(--shadow);grid-template-columns:minmax(0,1fr) minmax(15rem,.45fr) auto;align-items:center;gap:clamp(1.25rem,3vw,3rem);padding:clamp(1.25rem,3vw,2.5rem);text-decoration:none;display:grid}.next-project__title{max-width:22ch;font-family:var(--serif);letter-spacing:-.035em;font-size:clamp(2.15rem,4vw,4.25rem);font-weight:700;line-height:.96}.next-project__summary{font-size:.96rem;line-height:1.45}.next-project__action{border:var(--rule);background:var(--paper-strong);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;justify-self:end;padding:.75rem .9rem;font-size:.75rem;font-weight:900}.not-found{flex-direction:column;justify-content:center;align-items:flex-start;gap:1.5rem;min-height:calc(100svh - 4.5rem);display:flex}.not-found h1{font-size:clamp(4rem,12vw,12rem)}.not-found>p:not(.eyebrow){font-size:1.2rem}body.folder-page{--canvas:#c9c890;--ink:#27171b;--paper:#fff4f2;--paper-strong:#fff4f2;--muted:#6c5358;--folder-olive:#74722c;--folder-green:#40522d;--folder-cherry:#a91238;--folder-pink:#e9829f;--folder-pale:#ffdce3;--folder-yellow:#fff4b8;--footer-cherry:#71162f;--sans:"Manrope", Arial, sans-serif;--serif:"Libre Caslon Display", Georgia, serif;--display:"Archivo Black", "Arial Black", sans-serif;background:var(--canvas);min-width:320px;color:var(--ink);font-family:var(--sans);overflow-x:hidden}body.folder-page.folder-modal-open{overflow:hidden}.folder-page .skip-link{background:var(--ink);color:#fff;border:0;border-radius:8px}.folder-page :focus-visible{outline-offset:3px;box-shadow:0 0 0 6px var(--ink);outline:3px solid #fff}.folder-portfolio{width:min(100%,1680px);margin-inline:auto;overflow:visible}.portfolio-intro{padding:clamp(1rem,2.6vw,2.4rem) clamp(1rem,3.2vw,3.5rem) 0;position:relative}.portfolio-intro__utilities{z-index:20;align-items:center;gap:.7rem;display:flex;position:absolute;top:clamp(1rem,2.6vw,2.4rem);right:clamp(1rem,3.2vw,3.5rem)}.portfolio-resume,.portfolio-contact{border-radius:13px;justify-content:center;align-items:center;min-height:44px;padding:.7rem 1rem;font-size:.76rem;font-weight:700;text-decoration:none;display:inline-flex}.portfolio-resume{border:1px solid var(--ink)}.portfolio-contact{background:var(--folder-cherry);color:var(--folder-pale)}.portfolio-contact:hover{background:var(--folder-green);color:var(--folder-yellow)}.portfolio-intro h1{max-width:calc(100% - 12rem);color:var(--ink);font-family:var(--display);letter-spacing:-.04em;font-size:clamp(4.6rem,9.4vw,9.75rem);font-weight:400;line-height:.82}.portfolio-intro__rule{border-top:2px solid var(--ink);grid-template-columns:minmax(0,1.35fr) minmax(16rem,.65fr);align-items:start;gap:2rem;margin-top:clamp(1.25rem,2vw,2rem);padding-top:.85rem;display:grid}.portfolio-intro__positioning{max-width:43ch;font-family:var(--serif);font-size:clamp(1.35rem,2vw,2.15rem);line-height:1.05}.portfolio-intro__summary{justify-self:end;max-width:40ch;font-size:.92rem;font-weight:700;line-height:1.45}.folder-dashboard{grid-template-columns:minmax(17rem,.95fr) minmax(25rem,1.35fr) minmax(14rem,.72fr);gap:clamp(.8rem,1.5vw,1.35rem);height:clamp(570px,64svh,680px);margin-top:clamp(1rem,1.8vw,1.6rem);padding:0 clamp(1rem,3.2vw,3.5rem) clamp(1.25rem,3vw,3rem);display:grid}.folder-scrim{z-index:210;opacity:0;backdrop-filter:blur();cursor:zoom-out;background:#2d0e1f85;transition:opacity .32s,backdrop-filter .42s;position:fixed;inset:0}.folder-scrim[hidden]{display:none}.folder-scrim.is-visible{opacity:1;backdrop-filter:blur(3px)}.portfolio-folder{--folder-color:var(--folder-olive);--folder-text:var(--folder-yellow);isolation:isolate;min-width:0;min-height:0;transition:transform .34s cubic-bezier(.16,1,.3,1);position:relative;overflow:visible}.portfolio-folder--about{grid-column:1}.portfolio-folder--featured{--folder-color:var(--folder-green);grid-column:2}.portfolio-folder__panel{transform-style:preserve-3d;position:absolute;inset:0}.portfolio-folder__shell{transform-origin:0 0;transform-style:preserve-3d;position:absolute;inset:0}.portfolio-folder.is-modal .portfolio-folder__shell{width:var(--folder-cover-width);height:var(--folder-cover-height);transform:scale(var(--folder-cover-scale-x), var(--folder-cover-scale-y))}.portfolio-folder__rear{z-index:0;width:100%;height:100%;fill:var(--folder-color);stroke:none;filter:drop-shadow(0 18px 28px #27171b29);transition:filter .4s;position:absolute;inset:0;overflow:visible;transform:translateZ(-2px)}.portfolio-folder.is-staged .portfolio-folder__rear{filter:drop-shadow(0 24px 54px #27171b4d)}.portfolio-folder__flap{z-index:6;pointer-events:none;transform:var(--folder-closed-transform);transform-origin:var(--folder-hinge-origin);transform-box:border-box;transform-style:preserve-3d;transition:transform .76s cubic-bezier(.45,0,.2,1);position:absolute;inset:0}.portfolio-folder__face{backface-visibility:hidden;transform-style:flat;contain:layout paint;isolation:isolate;border-radius:16px;position:absolute;inset:0;overflow:hidden}.portfolio-folder--about{--flap-shadow:-7px 2px 13px -4px #27171b52;--flap-shadow-hover:-9px 3px 17px -4px #27171b61}.portfolio-folder--featured{--flap-shadow:7px 2px 13px -4px #27171b52;--flap-shadow-hover:9px 3px 17px -4px #27171b61}.portfolio-folder--stack{--flap-shadow:0 -6px 12px -4px #27171b57, 0 9px 18px #27171b1a;--flap-shadow-hover:0 -8px 16px -4px #27171b66, 0 16px 30px #27171b2b}.portfolio-folder__front{background:var(--folder-color);color:var(--folder-text);box-shadow:var(--flap-shadow);transition:box-shadow .34s;transform:translateZ(.5px)}@media (hover:hover){.portfolio-folder:not(.is-modal):hover .portfolio-folder__front{box-shadow:var(--flap-shadow-hover)}}.portfolio-folder__back{background:var(--folder-color);filter:brightness(.88);transform:var(--folder-back-transform) translateZ(.5px)}.portfolio-folder--about .portfolio-folder__flap{width:90.5%;left:9.5%}.portfolio-folder--featured .portfolio-folder__flap{width:90.5%;right:9.5%}.portfolio-folder__tab{display:none}.portfolio-folder__title{z-index:3;max-width:65%;color:var(--folder-text);font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(1.75rem,3vw,3.4rem);font-weight:400;line-height:.9;position:absolute;top:3.7%;left:clamp(1rem,4%,1.6rem)}.portfolio-folder__trigger{z-index:9;cursor:pointer;background:0 0;border:0;border-radius:16px;width:100%;height:100%;position:absolute;inset:0}.portfolio-folder__paper{z-index:5;scrollbar-gutter:stable;background:var(--paper);color:var(--ink);visibility:hidden;pointer-events:none;backface-visibility:hidden;border-radius:13px;padding:clamp(1.25rem,2.2vw,2.5rem);transition:transform .52s cubic-bezier(.4,0,.2,1);position:absolute;inset:12px;overflow:auto;transform:translate(0,0)}.portfolio-folder--about .portfolio-folder__paper{left:calc(9.5% + 12px)}.portfolio-folder--featured .portfolio-folder__paper{clip-path:inset(0 0 0 100%);transition:transform .52s cubic-bezier(.4,0,.2,1),clip-path .38s cubic-bezier(.45,0,.2,1);right:calc(9.5% + 12px)}.portfolio-folder--featured.is-open .portfolio-folder__paper{clip-path:inset(0)}.portfolio-folder--featured.is-folding-closed .portfolio-folder__paper{clip-path:inset(0 0 0 100%)}.portfolio-folder--featured.is-closing .portfolio-folder__paper{transition:transform .42s cubic-bezier(.4,0,.2,1),clip-path .29s cubic-bezier(.45,0,.2,1) .29s}.portfolio-folder__paper>h2,.folder-paper__project-head h2{max-width:calc(100% - 3.5rem);font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(2.5rem,4.5vw,4.8rem);font-weight:400;line-height:.92}.portfolio-folder__paper>p{margin-top:1rem;font-size:1rem}.folder-paper__lede{font-family:var(--serif);line-height:1.15;font-size:clamp(1.35rem,2vw,2rem)!important}.folder-close{float:right;z-index:4;border:1px solid var(--ink);background:var(--paper);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:sticky;top:0}.folder-close svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:20px}.portfolio-folder.is-modal{z-index:220;isolation:auto;width:calc(100vw - 48px);height:calc(100dvh - 48px);perspective:var(--folder-perspective,1300px);perspective-origin:50%;transform:translate3d(var(--folder-flip-x), var(--folder-flip-y), 0) scale(var(--folder-flip-scale-x), var(--folder-flip-scale-y));transform-origin:0 0;transform-style:preserve-3d;will-change:transform;transition:none;position:fixed;top:24px;left:24px}.portfolio-folder.is-modal [data-folder-panel]{inset:var(--folder-panel-top) auto auto var(--folder-panel-left);width:var(--folder-panel-width);height:var(--folder-panel-height)}.portfolio-folder.is-modal.is-staged{transition:transform .76s cubic-bezier(.45,0,.2,1);transform:translate(0,0)scale(1)}.portfolio-folder.is-modal.is-closing{transition:transform .58s cubic-bezier(.45,0,.2,1)}.portfolio-folder.is-closing .portfolio-folder__flap{transition-duration:.58s}.portfolio-folder.is-closing .portfolio-folder__paper{transition-duration:.42s}.portfolio-folder.is-resetting{transition:none}.portfolio-folder.is-modal .portfolio-folder__trigger{pointer-events:none}.portfolio-folder.is-modal .portfolio-folder__flap,.portfolio-folder.is-modal .portfolio-folder__paper{will-change:transform}.portfolio-folder.is-open .portfolio-folder__flap{transform:var(--folder-open-transform)}.portfolio-folder.is-paper-visible .portfolio-folder__paper{visibility:visible}.portfolio-folder.is-paper-front .portfolio-folder__paper{z-index:7;translate:0 0 2px}.portfolio-folder.is-centered .portfolio-folder__paper{z-index:7;transform:translate3d(var(--paper-center-shift), var(--paper-center-shift-y), 0);pointer-events:auto}@media (hover:hover){.portfolio-folder:not(.is-modal):hover .portfolio-folder__rear{filter:drop-shadow(0 25px 38px #27171b40)}}.folder-cover-portrait{z-index:2;border-radius:0 0 16px 16px;position:absolute;inset:22% 0 0;overflow:hidden}.folder-cover-portrait img{object-fit:contain;object-position:center bottom;width:100%;height:100%}.featured-cover{z-index:2;grid-template-rows:auto auto 1fr;gap:.25rem;display:grid;position:absolute;inset:23% 5% 5%}.featured-cover p{text-transform:uppercase;font-size:.72rem;font-weight:700}.featured-cover strong{font-family:var(--serif);font-size:clamp(2rem,4.2vw,4.3rem);font-weight:400;line-height:.9}.featured-cover img{object-fit:cover;object-position:left top;border-radius:9px;width:100%;height:100%;min-height:0;margin-top:.7rem}.featured-cover--visual{grid-template-rows:auto auto minmax(0,1fr)}.featured-cover__visual{border-radius:9px;min-height:0;margin-top:.7rem;overflow:hidden}.featured-cover__visual .project-visual{padding:clamp(.8rem,2vw,1.5rem)}.featured-cover__visual .learning-sequence{flex-wrap:wrap;gap:.35rem}.featured-cover__visual .learning-sequence i{display:none}.portfolio-folder-stack{grid-column:3;min-width:0;min-height:0;position:relative}.portfolio-folder--stack{width:100%;height:37%;position:absolute;left:0;transform:translate(0,0)}.portfolio-folder--stack:not(.is-modal):first-child{z-index:1;top:0}.portfolio-folder--stack:not(.is-modal):nth-child(2){z-index:2;top:21%}.portfolio-folder--stack:not(.is-modal):nth-child(3){z-index:3;top:42%}.portfolio-folder--stack:not(.is-modal):nth-child(4){z-index:4;top:63%}.portfolio-folder-stack[data-folder-count="3"] .portfolio-folder--stack:not(.is-modal){height:45.4545%}.portfolio-folder-stack[data-folder-count="3"] .portfolio-folder--stack:not(.is-modal):first-child{top:0}.portfolio-folder-stack[data-folder-count="3"] .portfolio-folder--stack:not(.is-modal):nth-child(2){top:27.2727%}.portfolio-folder-stack[data-folder-count="3"] .portfolio-folder--stack:not(.is-modal):nth-child(3){top:54.5454%}.portfolio-folder__stock{z-index:0;width:100%;height:100%;fill:var(--folder-color);stroke:none;pointer-events:none;position:absolute;inset:0;transform:translateZ(-3px)}.portfolio-folder--stack .portfolio-folder__tab{z-index:0;width:min(82%,19.5rem);height:clamp(54px,30%,72px);padding:.85rem 1rem .75rem 1.25rem;transition:width .76s cubic-bezier(.45,0,.2,1),height .76s cubic-bezier(.45,0,.2,1),padding .76s cubic-bezier(.45,0,.2,1);display:block;position:absolute;top:0;left:0;translate:0 0 -2px}.portfolio-folder--stack.is-modal .portfolio-folder__tab{width:var(--stack-rest-tab-width);height:var(--stack-rest-tab-height);padding:var(--stack-rest-tab-padding)}.portfolio-folder--stack.is-modal:not(.is-staged):not(.is-closing) .portfolio-folder__tab,.portfolio-folder--stack.is-modal:not(.is-staged):not(.is-closing) .portfolio-folder__title,.portfolio-folder--stack.is-resetting .portfolio-folder__tab,.portfolio-folder--stack.is-resetting .portfolio-folder__title{transition:none}.portfolio-folder--stack.is-modal .portfolio-folder__title{transform:scale(var(--folder-cover-scale-x), var(--folder-cover-scale-y))}.portfolio-folder--stack .portfolio-folder__title{max-width:none;font-family:var(--sans);letter-spacing:-.025em;white-space:nowrap;transform-origin:0 0;font-size:clamp(1rem,1.55vw,1.3rem);font-weight:700;line-height:1.05;transition:transform .76s cubic-bezier(.45,0,.2,1);position:relative;top:auto;left:auto;transform:scale(1)}.portfolio-folder--stack.is-staged .portfolio-folder__tab{width:var(--stack-open-tab-width);height:var(--stack-open-tab-height);padding:var(--stack-open-tab-padding)}.portfolio-folder--stack.is-staged .portfolio-folder__title{transform:none}.portfolio-folder--stack.is-closing .portfolio-folder__tab,.portfolio-folder--stack.is-closing .portfolio-folder__title{transition-duration:.58s}.portfolio-folder--stack .portfolio-folder__flap{transition-property:transform,top;inset:clamp(44px,24%,58px) 0 0}.portfolio-folder--stack.is-staged .portfolio-folder__flap{top:var(--stack-open-body-top)}.portfolio-folder--stack .portfolio-folder__face{border-radius:0 16px 16px}.portfolio-folder--stack .portfolio-folder__back{border-radius:16px}.portfolio-folder--stack .portfolio-folder__paper{inset:calc(clamp(44px,24%,58px) + 10px) 10px 10px}.portfolio-folder--stack.is-paper-prepared .portfolio-folder__paper{width:var(--stack-paper-width);height:calc(var(--stack-stage-height) - var(--stack-paper-top) - 10px);visibility:visible;transform-origin:0 0;transform:translate(var(--paper-rest-x), var(--paper-rest-y)) scale(calc(var(--paper-rest-scale-x) * var(--paper-fold-scale-x)), var(--paper-rest-scale-y));transition:none;inset:0 auto auto 0}.portfolio-folder--stack.is-modal .portfolio-folder__paper{left:10px;top:var(--stack-paper-top);transform:translate3d(0, 0, 0) scale(var(--paper-fold-scale-x), 1);transition:transform .52s cubic-bezier(.4,0,.2,1),top .76s cubic-bezier(.45,0,.2,1),height .76s cubic-bezier(.45,0,.2,1)}.portfolio-folder--stack.is-modal:not(.is-staged):not(.is-closing) .portfolio-folder__paper{transition:none}.portfolio-folder--stack.is-staged .portfolio-folder__paper{top:var(--stack-paper-open-top);height:calc(var(--stack-stage-height) - var(--stack-paper-open-top) - 10px)}.portfolio-folder--stack.is-centered .portfolio-folder__paper{transform:translate3d(var(--paper-center-shift), var(--paper-center-shift-y), 0) scale(1, 1)}.portfolio-folder--stack.is-closing .portfolio-folder__paper{transition-duration:.42s,.58s,.58s}.portfolio-folder--spindle{--folder-color:var(--folder-cherry);--folder-text:var(--folder-pale)}.portfolio-folder--images-cinema{--folder-color:var(--folder-pink);--folder-text:var(--footer-cherry)}.portfolio-folder--academy-group-project-management{--folder-color:var(--folder-pale);--folder-text:var(--footer-cherry)}.portfolio-folder--easterbot{--folder-color:var(--footer-cherry);--folder-text:var(--folder-pale)}.portfolio-folder--strong-city-adult-literacy{--folder-color:var(--folder-cherry);--folder-text:var(--folder-pale)}.portfolio-folder--writing-course-ai-redesign{--folder-color:var(--folder-pink);--folder-text:var(--footer-cherry)}.portfolio-folder--images-ai-reporting{--folder-color:var(--footer-cherry);--folder-text:var(--folder-pale)}.folder-paper__project-head{grid-template-columns:minmax(0,1.2fr) minmax(14rem,.8fr);align-items:end;gap:clamp(1rem,3vw,3rem);margin-bottom:1.2rem;display:grid}.folder-paper__project-head>p{font-size:.95rem;line-height:1.45}.folder-paper__label{letter-spacing:.07em;text-transform:uppercase;margin-bottom:.5rem;font-size:.72rem;font-weight:700}.folder-paper__feature-image,.folder-paper__project-image,.folder-paper__visual{border:1px solid var(--ink);object-fit:cover;width:100%;max-height:42vh}.folder-paper__project-image{object-position:center}.folder-paper__visual{height:min(37vh,24rem)}.folder-paper__facts{border-block:1px solid var(--ink);grid-template-columns:1fr 1fr;margin-top:1rem;display:grid}.folder-paper__facts div{padding:.9rem 1rem .9rem 0}.folder-paper__facts div+div{border-left:1px solid var(--ink);padding-left:1rem}.folder-paper__facts dt{letter-spacing:.07em;text-transform:uppercase;margin-bottom:.35rem;font-size:.68rem;font-weight:700}.folder-paper__facts dd{margin:0;font-size:.84rem;line-height:1.4}.folder-paper__context{color:var(--muted);font-size:.88rem!important}.folder-paper__capabilities{flex-wrap:wrap;gap:.45rem;margin-top:1rem;list-style:none;display:flex}.folder-paper__capabilities li{border:1px solid;border-radius:999px;padding:.3rem .65rem;font-size:.7rem;font-weight:700}.folder-paper__actions{flex-wrap:wrap;align-items:center;gap:.8rem 1.25rem;margin-top:1.5rem;display:flex}.paper-action,.paper-link{align-items:center;min-height:44px;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}.paper-action{background:var(--folder-cherry);color:var(--folder-pale);border-radius:12px;padding:.75rem 1rem}.paper-link{border-bottom:1px solid}.portfolio-folder--about .portfolio-folder__paper{background:0 0;border-radius:0;padding:0;overflow:visible}.portfolio-folder--about.is-modal .portfolio-folder__paper{width:calc(190.5% - 24px);right:auto}.portfolio-folder--about{--about-stage-top:clamp(4.5rem, 8vh, 5.25rem);--about-paper-grow:clamp(3.5rem, 7vh, 4.5rem)}.portfolio-folder--about .folder-close{top:var(--about-stage-top);background:#fff;position:absolute;right:.75rem}.about-spread{height:100%;min-height:0;padding:var(--about-stage-top) clamp(3.75rem, 5vw, 5rem) .5rem .8rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,3.5rem);display:grid;position:relative}.about-spread__summary,.about-spread__resume{width:100%;height:calc(100% + var(--about-paper-grow));min-width:0;min-height:0;transition:transform .52s cubic-bezier(.16,1,.3,1)}.about-spread__summary{aspect-ratio:8.5/11;background:#fff;border:1px solid #27171b75;border-radius:3px;flex-direction:column;justify-content:flex-start;justify-self:center;width:auto;max-width:100%;padding:clamp(1.35rem,2.2vw,2.5rem);display:flex;overflow:auto;transform:translate(-.35rem,-.3rem)rotate(-.55deg);box-shadow:0 12px 24px #27171b29}.about-spread__summary h2{font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(2.5rem,4.5vw,4.8rem);font-weight:400;line-height:.92}.about-spread__summary>p{margin-top:1rem}.about-spread__resume{position:relative}.about-spread__resume-heading{z-index:5;justify-content:flex-start;align-items:center;display:flex;position:absolute;bottom:-2.3rem;left:.25rem;right:.25rem}.about-spread__resume-heading h2{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.about-spread__resume-actions{color:var(--folder-yellow);white-space:nowrap;align-items:center;gap:1rem;font-size:.72rem;font-weight:700;display:flex}.resume-page-count-mobile{display:none}.about-spread__resume-stack{width:100%;min-width:0;height:100%;min-height:0;position:relative}.resume-sheet{aspect-ratio:8.5/11;width:auto;max-width:100%;height:100%;color:var(--ink);transform-origin:50% 85%;background:#fff;border:1px solid #27171b75;border-radius:3px;margin:auto;transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s;position:absolute;inset:0;overflow:hidden;box-shadow:0 12px 24px #27171b29}.resume-sheet__scroll{overscroll-behavior:contain;scrollbar-gutter:stable;height:100%;padding:clamp(1.5rem,2.5vw,2.75rem) clamp(1.35rem,2.3vw,2.5rem) 5rem;overflow:auto}.resume-sheet__masthead h3,.resume-sheet__page-title{max-width:12ch;font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(2.5rem,4vw,4rem);font-weight:400;line-height:.94}.resume-sheet__subtitle{font-family:var(--serif);margin-top:.75rem;line-height:1.15;font-size:1.35rem!important}.resume-sheet__contact{color:var(--muted);flex-wrap:wrap;gap:.35rem 1rem;margin-top:.8rem;font-weight:700;display:flex;font-size:.78rem!important}.resume-sheet__contact a{color:inherit}.resume-content-section{margin-top:1.75rem}.resume-content-section>h3,.resume-content-section>h4{font-family:var(--serif);letter-spacing:-.025em;font-size:1.65rem;font-weight:400;line-height:1}.resume-content-section>p{margin-top:.75rem}.resume-capabilities{color:var(--muted)}.resume-job{margin-top:1.4rem}.resume-job h4,.resume-job h5{font-family:var(--serif);letter-spacing:-.02em;font-size:1.35rem;font-weight:400;line-height:1.05}.resume-job__meta{color:var(--muted);margin-top:.35rem;font-weight:700;font-size:.78rem!important}.resume-job ul,.resume-education{gap:.55rem;margin-top:.75rem;padding-left:1.2rem;display:grid}.resume-sheet__scroll p,.resume-sheet__scroll li{font-size:1rem;line-height:1.5}.about-spread__resume-stack[data-active-page="1"] .resume-sheet--one,.about-spread__resume-stack[data-active-page="2"] .resume-sheet--two{z-index:2;transform:translate(-.35rem,-.3rem)rotate(-.55deg)}.about-spread__resume-stack[data-active-page="1"] .resume-sheet--two,.about-spread__resume-stack[data-active-page="2"] .resume-sheet--one{z-index:1;transform:translate(.75rem,.5rem)rotate(1.25deg)scale(.985);box-shadow:0 7px 15px #27171b1f}.resume-stack__switch{z-index:3;background:var(--ink);min-height:44px;color:var(--paper);cursor:pointer;border:0;border-radius:11px;padding:.65rem .8rem;font-size:.72rem;font-weight:700;position:absolute;bottom:.25rem;right:.25rem}.about-spread__resume-stack:hover .resume-sheet{box-shadow:0 15px 29px #27171b33}.portfolio-folder--about.is-paper-visible:not(.is-centered) [data-paper-fan-item]{transform:translateX(var(--paper-gather-x,0)) scale(.94) rotate(0)}.portfolio-folder--about.is-centered .about-spread__summary{transform:translate(-.35rem,-.3rem)rotate(-.55deg)}.portfolio-folder--about.is-centered .about-spread__resume{transform:translate(0)}.portfolio-folder--about.is-closing [data-paper-fan-item]{transition-duration:.42s}.portfolio-approach{border-top:1px solid var(--ink);grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,7rem);padding:clamp(4rem,8vw,8rem) clamp(1rem,3.2vw,3.5rem);display:grid}.portfolio-approach__heading h2{max-width:12ch;font-family:var(--serif);letter-spacing:-.035em;font-size:clamp(3rem,5.6vw,6rem);font-weight:400;line-height:.93}.portfolio-approach__heading p{max-width:34ch;margin-top:1.5rem;font-weight:700}.portfolio-approach__steps{border-top:1px solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.portfolio-approach__steps article{border-bottom:1px solid var(--ink);min-height:12rem;padding:1.25rem 1.25rem 2rem 0}.portfolio-approach__steps article:nth-child(2n){border-left:1px solid var(--ink);padding-left:1.25rem}.portfolio-approach__steps h3{max-width:18ch;font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(1.6rem,2.4vw,2.5rem);font-weight:400;line-height:1}.portfolio-approach__steps p{margin-top:.8rem;font-size:.88rem}.portfolio-footer{background:var(--footer-cherry);min-height:64svh;color:var(--folder-yellow);flex-direction:column;justify-content:space-between;gap:3rem;padding:clamp(3rem,7vw,7rem) clamp(1rem,3.2vw,3.5rem) 2rem;display:flex}.portfolio-footer h2{max-width:12ch;font-family:var(--serif);letter-spacing:-.035em;font-size:clamp(3.8rem,8vw,8rem);font-weight:400;line-height:.88}.portfolio-footer>a{width:fit-content;font-family:var(--serif);font-size:clamp(1.45rem,3vw,3rem);text-decoration-thickness:1px}.portfolio-footer>div{border-top:1px solid;justify-content:space-between;gap:1rem;padding-top:1rem;font-size:.78rem;font-weight:700;display:flex}}@layer utilities{@media (width<=900px){.case-page .case-hero{padding-top:2.5rem}.case-page .case-hero__main--artifact{grid-template-columns:1fr}.case-page .case-hero__main--artifact h1,.case-page .case-hero__main--artifact .case-hero-artifact,.case-page .case-hero__main--artifact .project-visual,.case-page .case-hero__main--artifact .case-hero__proof{grid-area:auto/1}.case-page .case-hero__proof{max-width:none}}@media (width<=640px){.case-page .case-study__back{align-items:flex-start}.case-page .case-study__home{gap:.2rem;display:grid}.case-page .case-study__home small,.case-page .case-study__back nav a:not(.case-study__contact){display:none}.case-page .case-study__back .case-study__contact{padding-inline:1rem}.case-page .case-hero{width:calc(100% - 2rem)}.case-page .case-hero__meta{gap:1rem}.case-page .case-hero h1{font-size:clamp(3rem,14vw,4.25rem)}.case-page .case-facts{grid-template-columns:1fr}.case-page .case-facts div{border-bottom:1px solid;border-right:0}.case-page .case-facts div:last-child{border-bottom:0}.case-page .retrospective-note,.case-page .live-project,.case-page .next-project{width:calc(100% - 2rem)}.case-page .case-body{border-radius:10px;width:calc(100% - 1rem)}.case-page .case-body>h2{font-size:clamp(2.4rem,12vw,3.4rem)}}@media (width<=900px){.site-header{grid-template-columns:1fr auto}.desktop-nav,.header-actions{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{cursor:pointer;text-transform:uppercase;justify-content:center;align-items:center;min-width:3rem;min-height:2.75rem;padding:.5rem .75rem;font-size:.75rem;font-weight:900;display:flex}.mobile-nav[open] summary{background:var(--ink);color:var(--paper-strong)}.mobile-nav nav{border:var(--rule);background:var(--paper-strong);min-width:13rem;box-shadow:var(--shadow);display:grid;position:absolute;top:calc(100% + .5rem);right:0}.mobile-nav nav a{border-bottom:var(--rule);align-items:center;min-height:2.75rem;padding:.75rem 1rem;font-weight:800;text-decoration:none;display:flex}.mobile-nav nav a:last-child{border-bottom:0}.hero{min-height:auto}.hero__intro{display:contents}.hero__copy{order:1}.hero__lower{order:2;grid-template-columns:1fr;padding-left:0}.hero__portrait{order:3;justify-self:center;width:min(82vw,25rem);margin-left:0}.section-heading{grid-template-columns:1fr}.section-heading>p:last-child{justify-self:start}.project-card,.project-card:nth-child(n){grid-column:1/-1;margin-top:0}.approach-grid{grid-template-columns:1fr 1fr}.approach-grid article:nth-child(2){border-right:0}.approach-grid article:nth-child(-n+2){border-bottom:1px solid #ffffffa6}.about,.case-hero__main{grid-template-columns:1fr}.case-hero__main--artifact h1,.case-hero__main--artifact .case-hero-artifact,.case-hero__main--artifact .case-hero__proof{grid-area:auto/1}.case-hero__proof{max-width:42rem}.next-project>a{grid-template-columns:1fr}.next-project__action{justify-self:start}.live-project{grid-template-columns:1fr;align-items:start}}@media (width<=560px){.hero{gap:1.5rem;padding-block:2rem}.hero h1{margin-top:1rem;font-size:clamp(2.9rem,13vw,4rem)}.hero__portrait{width:min(92vw,23rem)}.hero__portrait-frame{border-radius:50% 50% .25rem .25rem/21% 21% .25rem .25rem;padding:.55rem}.hero__portrait img{aspect-ratio:4/5;object-position:center;border-radius:50% 50% .1rem .1rem/20% 20% .1rem .1rem}.work{padding-block:3rem}.work .section-heading{gap:1.25rem;margin-bottom:2rem}.work .section-heading h2{font-size:2.65rem}.work .section-heading>p:last-child{font-size:1rem}.capability-strip{overflow:visible}.capability-strip ul{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.capability-strip li{border-bottom:1px solid var(--paper);align-items:center;min-height:2.75rem;padding:.65rem 1rem;line-height:1.3;display:flex}.capability-strip li:nth-child(2n){border-right:0}.capability-strip li:last-child:nth-child(odd){border-bottom:0;border-right:0;grid-column:1/-1}.capability-strip ul:has(>li:last-child:nth-child(2n)) li:nth-last-child(-n+2){border-bottom:0}.case-hero h1{font-size:clamp(2.8rem,12.5vw,3.5rem)}.hero__actions,.about__actions{flex-direction:column;align-items:flex-start}.approach-grid{grid-template-columns:1fr}.approach-grid article{border-bottom:1px solid #ffffffa6;border-right:0;min-height:auto}.approach-grid article:last-child{border-bottom:0}.approach-grid h3{margin-top:3rem}.site-footer,.case-hero__meta{flex-direction:column}.case-hero__meta .tag-list{justify-content:flex-start}.case-facts{grid-template-columns:1fr}.case-facts div{border-right:0;border-bottom:var(--rule)}.case-facts div:last-child{border-bottom:0}.next-project__heading{flex-direction:column;align-items:flex-start;gap:.25rem}.retrospective-note{grid-template-columns:1fr;gap:.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width>=821px){.portfolio-desktop--portrait-layout{grid-template-rows:auto minmax(320px,1fr);grid-template-columns:minmax(290px,.9fr) minmax(0,.82fr) minmax(0,.73fr);gap:clamp(1rem,2vw,1.5rem);min-height:clamp(680px,100svh - 48px,820px);padding:1rem clamp(1rem,3.2vw,3.5rem) 2rem;display:grid}.portfolio-desktop--portrait-layout .portfolio-intro{grid-area:1/2/auto/4;padding:0}.portfolio-desktop--portrait-layout .portfolio-intro__utilities{top:0;right:0}.portfolio-desktop--portrait-layout .portfolio-intro h1{max-width:none;font-size:clamp(4.5rem,7.8vw,8rem);line-height:.82}.portfolio-desktop--portrait-layout .portfolio-intro__rule{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1.25rem;margin-top:1.25rem;padding-top:.75rem}.portfolio-desktop--portrait-layout .portfolio-intro__positioning{font-size:clamp(1.25rem,1.8vw,1.8rem)}.portfolio-desktop--portrait-layout .portfolio-intro__summary{font-size:.85rem}.portfolio-desktop--portrait-layout .folder-dashboard{display:contents}.portfolio-desktop--portrait-layout .portfolio-folder--about{grid-area:1/1/3}.portfolio-desktop--portrait-layout .portfolio-folder--featured{grid-area:2/2}.portfolio-desktop--portrait-layout .portfolio-folder-stack{grid-area:2/3}.portfolio-desktop--portrait-layout .featured-cover strong{font-size:clamp(1.9rem,3vw,3rem)}}@media (width>=821px) and (height<=700px){.portfolio-intro{padding-top:.75rem}.portfolio-intro__utilities{top:.75rem}.portfolio-intro h1{font-size:clamp(4.2rem,7vw,6.5rem)}.portfolio-intro__rule{margin-top:.65rem;padding-top:.55rem}.portfolio-intro__positioning{font-size:clamp(1.1rem,1.6vw,1.55rem)}.portfolio-intro__summary{font-size:.78rem}.folder-dashboard{height:calc(100dvh - 150px);min-height:390px;margin-top:.65rem;padding-bottom:1rem}.portfolio-folder__title{font-size:clamp(1.5rem,2.5vw,2.7rem)}.portfolio-folder--stack .portfolio-folder__title{font-size:clamp(.9rem,1.45vw,1.2rem)}.featured-cover strong{font-size:clamp(1.9rem,3.4vw,3.3rem)}}@media (width<=1080px){.folder-dashboard{grid-template-columns:minmax(15rem,.9fr) minmax(20rem,1.2fr) minmax(12rem,.7fr)}}@media (width<=820px){.portfolio-intro{padding-top:.8rem}.portfolio-intro__utilities{top:.8rem}.portfolio-intro h1{max-width:none;padding-top:4.2rem;font-size:clamp(4.1rem,18vw,7rem);line-height:.86}.portfolio-intro__rule{grid-template-columns:1fr;gap:.8rem}.portfolio-intro__summary{justify-self:start}.folder-dashboard{grid-template-columns:1fr;height:auto;padding-inline:.8rem;display:grid}.portfolio-folder--about,.portfolio-folder--featured,.portfolio-folder-stack{grid-column:1}.portfolio-folder--about,.portfolio-folder--featured{height:500px}.portfolio-folder-stack{height:660px}.portfolio-folder.is-modal{width:calc(100vw - 16px);height:calc(100dvh - 16px);top:8px;left:8px}.folder-paper__project-head{grid-template-columns:1fr;gap:.75rem}.portfolio-folder--stack .folder-paper__project-head h2{overflow-wrap:anywhere;font-size:clamp(1.65rem,7.8vw,2.25rem)}.portfolio-folder--about{--about-stage-top:3.5rem;--about-paper-grow:0rem}.portfolio-folder--about .portfolio-folder__paper{overflow:auto}.portfolio-folder--about .folder-close{float:none;top:var(--about-stage-top);margin-bottom:-44px;margin-left:auto;position:sticky;right:.25rem}.about-spread{height:auto;min-height:100%;padding:var(--about-stage-top) .2rem 2rem;flex-direction:column;gap:1.5rem;display:flex}.about-spread__summary,.about-spread__resume,.portfolio-folder--about.is-paper-visible:not(.is-centered) [data-paper-fan-item],.portfolio-folder--about.is-centered [data-paper-fan-item]{transform:none}.about-spread__summary{aspect-ratio:auto;flex:none;justify-content:flex-start;width:100%;height:auto;padding:1.5rem;overflow:visible}.about-spread__resume{grid-template-rows:auto auto;gap:1rem;height:auto;display:grid}.about-spread__resume-heading{align-items:flex-start;padding:0 3.5rem 0 .25rem;position:static}[data-resume-page-indicator]{display:none}.resume-page-count-mobile{display:inline}.about-spread__resume-stack{gap:1.5rem;display:grid}.resume-sheet,.about-spread__resume-stack[data-active-page="1"] .resume-sheet--one,.about-spread__resume-stack[data-active-page="2"] .resume-sheet--two,.about-spread__resume-stack[data-active-page="1"] .resume-sheet--two,.about-spread__resume-stack[data-active-page="2"] .resume-sheet--one{aspect-ratio:auto;width:100%;max-width:none;height:auto;margin:0;position:relative;inset:auto;overflow:visible;transform:none}.resume-sheet__scroll{height:auto;padding:1.5rem;overflow:visible}.resume-sheet--one{rotate:-.4deg}.resume-sheet--two{rotate:.4deg}.resume-stack__switch{display:none}.portfolio-approach{grid-template-columns:1fr}}@media (width<=560px){.portfolio-intro__utilities{gap:.45rem}.portfolio-resume,.portfolio-contact{padding-inline:.8rem}.portfolio-intro h1{font-size:clamp(3.7rem,18vw,5rem)}.portfolio-intro__positioning{font-size:1.35rem}.portfolio-folder--about,.portfolio-folder--featured{height:440px}.portfolio-folder-stack{height:610px}.portfolio-folder__title{font-size:2.2rem}.portfolio-folder--stack .portfolio-folder__title{font-size:1rem}.featured-cover strong{font-size:2.7rem}.portfolio-folder__paper{padding:1.1rem}.portfolio-folder__paper>h2,.folder-paper__project-head h2{font-size:2.65rem}.folder-paper__facts{grid-template-columns:1fr}.folder-paper__facts div+div{border-top:1px solid var(--ink);border-left:0;padding-left:0}.portfolio-approach__steps{grid-template-columns:1fr}.portfolio-approach__steps article:nth-child(2n){border-left:0;padding-left:0}.portfolio-footer{min-height:520px}}.portfolio-folder--reading-spread .portfolio-folder__paper{transform-origin:0 0;width:calc(100vw - 88px);height:calc(100dvh - 80px);transform:translate(var(--paper-rest-x,0px), var(--paper-rest-y,0px)) scale(var(--paper-rest-scale-x,1), var(--paper-rest-scale-y,1));transition:none;inset:0 auto auto 0}.portfolio-folder--reading-spread.is-paper-prepared .portfolio-folder__paper{visibility:visible}.portfolio-folder--reading-spread.is-modal .portfolio-folder__paper{width:calc(100vw - 88px);top:12px;left:20px;transform:none}.portfolio-folder--reading-spread .about-spread{grid-template-columns:1fr 1fr;gap:24px;height:100%;padding:50px 12px 8px}.portfolio-folder--reading-spread .about-spread__summary,.portfolio-folder--reading-spread .about-spread__resume{aspect-ratio:auto;transform-origin:0 0;background:#fff;border:1px solid #27171b40;border-radius:3px;width:100%;height:100%;margin:0;transition:none;box-shadow:0 8px 16px #27171b1f}.portfolio-folder--reading-spread.is-paper-front [data-paper-spread]>section{transition:transform .52s cubic-bezier(.4,0,.2,1)}.portfolio-folder--reading-spread .about-spread__summary{z-index:2;padding:clamp(24px,3vw,44px);position:relative}.portfolio-folder--reading-spread .about-spread__summary h2{max-width:13ch;font-size:clamp(2.5rem,4vw,4rem)}.portfolio-folder--reading-spread .about-spread__resume{z-index:1;flex-direction:column;display:flex;overflow:hidden}.portfolio-folder--reading-spread.is-paper-prepared [data-paper-spread] .about-spread__summary{transform:translateX(var(--paper-stack-x,0px)) scale(var(--paper-stack-scale,1))}.portfolio-folder--reading-spread.is-paper-prepared [data-paper-spread] .about-spread__resume{transform:translate(var(--resume-stack-x,0px), var(--resume-stack-y,8px)) scale(var(--paper-stack-scale,1))}.portfolio-folder--reading-spread.is-paper-visible.is-centered [data-paper-spread] .about-spread__summary,.portfolio-folder--reading-spread.is-paper-visible.is-centered [data-paper-spread] .about-spread__resume{transform:none}.portfolio-folder--reading-spread.is-closing [data-paper-spread]>section{transition-duration:.42s}.portfolio-folder--reading-spread .about-spread__resume-heading{flex-shrink:0;justify-content:space-between;min-height:56px;padding:18px 24px 12px;position:static}.portfolio-folder--reading-spread .about-spread__resume-heading h2{clip-path:none;width:auto;height:auto;font-family:var(--serif);font-size:1.6rem;font-weight:400;position:static}.portfolio-folder--reading-spread .about-spread__resume-actions{color:var(--ink)}.portfolio-folder--reading-spread .resume-reading-content{overscroll-behavior:contain;flex:1;height:auto;min-height:0;padding:24px 28px 36px;overflow:auto}.portfolio-folder--reading-spread .resume-sheet__masthead h3,.portfolio-folder--reading-spread .resume-sheet__page-title{font-size:clamp(2rem,3vw,3rem)}.resume-reading-content__section{margin-top:2rem}.portfolio-folder--reading-spread .folder-close{visibility:hidden;top:0;right:12px}.portfolio-folder--reading-spread.is-centered .folder-close{visibility:visible}@media (width<=820px){.portfolio-folder--reading-spread .portfolio-folder__paper{width:calc(100vw - 32px);height:calc(100dvh - 40px);overflow:visible}.portfolio-folder--reading-spread.is-modal .portfolio-folder__paper{width:calc(100vw - 32px);left:8px}.portfolio-folder--reading-spread.is-modal.is-centered .portfolio-folder__paper{overflow:auto}.portfolio-folder--reading-spread .about-spread{gap:20px;height:auto;padding:54px 4px 12px}.portfolio-folder--reading-spread .about-spread__summary{height:auto;padding:24px;overflow:visible}.portfolio-folder--reading-spread .about-spread__resume{flex-shrink:0;gap:0;height:min(680px,78svh);min-height:440px}.portfolio-folder--reading-spread .about-spread__resume-heading{padding-right:76px}.portfolio-folder--reading-spread .folder-close{float:right;margin-bottom:-44px;position:sticky;top:0;right:8px}}@media (prefers-reduced-motion:reduce){.folder-page *,.folder-page :before,.folder-page :after{transition-duration:.001ms!important;animation-duration:.001ms!important}}}@font-face{font-family:Archivo Black;src:url(/fonts/archivo-black-400.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Libre Caslon Display;src:url(/fonts/libre-caslon-display-400.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope-400.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope-700.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}
