.page-shell.portfolio-home{--font-body:"Instrument Sans",Arial,sans-serif;--paper:#363e3e;--ink:#f4f3ed;--muted:#c2cbc5;--line:#56615b;--surface:#434c4b;--accent:#c5d2ac;--hero:#363e3e;--hero-text:#f4f3ed;--hero-muted:#c2cbc5;--highlight:#f2d34f;font-family:var(--font-body);line-height:1.6}.page-shell.portfolio-home.theme-dark{--paper:#2b3333;--ink:#f3f3eb;--muted:#b5bfba;--line:#48524e;--surface:#343e39;--accent:#c5d2ac;--hero:#2b3333}.portfolio-home .home-container{width:min(1160px,calc(100% - 112px));margin-inline:auto}.page-shell.portfolio-home main>section[id]:not(#top),.portfolio-home :is(section,main){scroll-margin-top:32px}.portfolio-home .home-label{line-height:1.5;text-transform:uppercase;color:var(--muted)}.portfolio-home .home-label,.portfolio-home h2.home-label{font-size:11px;font-weight:400;letter-spacing:.08em}.portfolio-home a:hover{text-decoration:none}.portfolio-home .home-arrow{display:inline-block;font-family:Arial,sans-serif;font-size:26px;font-weight:400;line-height:1}.portfolio-home .home-header{position:relative;width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:3;padding:24px 56px;background:var(--hero);color:var(--hero-text)}.portfolio-home .home-wordmark{display:inline-flex;align-items:center;gap:5px;min-height:44px;font-size:30px;font-weight:500;letter-spacing:-.07em}.portfolio-home .home-wordmark span{color:#c5d2ac;font-weight:400;margin-left:4px}.portfolio-home .home-navigation{display:flex;gap:30px}.portfolio-home .home-navigation a{display:flex;align-items:center;min-height:44px;position:relative;font-size:13px}.portfolio-home .home-navigation a:after{content:"";position:absolute;height:1px;width:100%;background:currentColor;left:0;bottom:4px;transform:scaleX(0);transform-origin:left;transition:transform .2s}.portfolio-home .home-navigation a:focus-visible:after,.portfolio-home .home-navigation a:hover:after{transform:scaleX(1)}.portfolio-home :is(.home-navigation,.home-menu nav) a[aria-current=page]{color:var(--highlight)}.portfolio-home .home-menu-button{display:none;min-height:44px;padding:0;align-items:center;gap:12px}.portfolio-home .home-menu{position:fixed;inset:16px 16px auto;margin:0 0 0 auto;width:min(450px,calc(100% - 32px));max-width:100%;max-height:calc(100dvh - 32px);padding:24px 30px 36px;border:1px solid #647169;color:#f4f3ed;background:#363e3e;overflow-y:auto}.portfolio-home .home-menu::-webkit-backdrop{background:#10181599}.portfolio-home .home-menu::backdrop{background:#10181599}.portfolio-home .home-menu form{display:flex;justify-content:flex-end;margin-bottom:36px}.portfolio-home .home-menu-close{min-height:44px;padding:0;display:flex;align-items:center;gap:20px}.portfolio-home .home-menu-close span{font-size:28px}.portfolio-home .home-menu .home-label{color:#c2cbc5;border-bottom:1px solid #647169;padding-bottom:16px}.portfolio-home .home-menu nav{display:grid;padding-top:16px}.portfolio-home .home-menu nav a{display:flex;justify-content:space-between;align-items:center;min-height:58px;font-size:clamp(27px,8vw,42px);letter-spacing:-.04em}.portfolio-home .home-menu-socials{display:flex;gap:28px;margin-top:36px;font-size:13px}.portfolio-home .home-menu-socials a{padding-block:12px}.portfolio-home .home-hero{background:var(--hero);color:var(--hero-text);padding-top:clamp(75px,10vh,140px)}.portfolio-home .home-hero-content{display:grid;grid-template-columns:minmax(0,1fr) 250px;grid-gap:clamp(32px,5vw,80px);gap:clamp(32px,5vw,80px);align-items:end;padding-bottom:90px}.portfolio-home .home-hero h1{font-size:clamp(68px,8.8vw,128px);font-weight:400;line-height:1.02;letter-spacing:-.065em}.portfolio-home .home-hero h1>span{color:#d7ddd2}.portfolio-home .home-name-dot{color:#c5d2ac}.portfolio-home .home-hero-aside{padding-bottom:5px}.portfolio-home .home-role{display:flex;align-items:flex-end;width:100%;aspect-ratio:1;padding:24px;background:var(--highlight);color:#272c2c;font-size:23px;line-height:1.35;letter-spacing:-.025em}.portfolio-home .home-current{max-width:320px;margin-top:26px;padding-top:18px;border-top:1px solid #69746d;font-size:13px}.portfolio-home .home-current>span{display:block;color:var(--hero-muted);font-size:11px;margin-bottom:6px}.portfolio-home .home-hero-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:44px;margin-top:16px;font-size:13px}.portfolio-home .home-hero-contact:hover{color:#d7e6c0}.portfolio-home .home-portrait-frame{position:relative;width:100%;aspect-ratio:3/4;margin-bottom:26px}.portfolio-home .home-portrait{object-fit:cover;object-position:center 35%}@media (min-width:651px){.portfolio-home .home-hero-content{row-gap:0}.portfolio-home .home-hero-aside,.portfolio-home .home-hero-name{display:contents}.portfolio-home .home-hero h1{grid-column:1;grid-row:1/3;text-box:trim-end cap alphabetic}.portfolio-home .home-portrait-frame{grid-column:2;grid-row:1}.portfolio-home .home-role{grid-column:2;grid-row:2}.portfolio-home .home-current{grid-column:1;grid-row:3;align-self:start}.portfolio-home .home-hero-contact{grid-column:2;grid-row:3;align-self:start}@supports not (text-box:trim-end cap alphabetic){.portfolio-home .home-hero h1{margin-bottom:-.2em}}}.portfolio-home .home-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #69746d;padding:22px 0 26px;font-size:12px}.portfolio-home .home-hero-bottom a{display:inline-flex;align-items:center;gap:35px;min-height:44px}.portfolio-home .home-intro{display:grid;grid-template-columns:1.5fr 1fr;grid-gap:100px;gap:100px;padding-block:105px}.portfolio-home .home-intro h2{margin-top:25px;font-size:clamp(34px,3.5vw,48px);font-weight:400;line-height:1.22;letter-spacing:-.04em}.portfolio-home .home-intro-aside{padding-top:40px}.portfolio-home .home-intro-aside p{max-width:39ch;font-size:16px;line-height:1.75}.portfolio-home .home-intro-aside p+p{margin-top:18px;color:var(--muted);font-size:14px}.portfolio-home .home-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:48px;margin-top:22px;border-bottom:1px solid var(--ink);font-size:13px}.portfolio-home .home-text-link:hover{color:var(--accent)}.portfolio-home .home-section-heading{display:flex;justify-content:space-between;gap:20px;padding-bottom:30px;border-bottom:1px solid var(--line)}.portfolio-home .home-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column-gap:55px;column-gap:55px}.portfolio-home .home-project{min-width:0;display:grid;grid-template-columns:24px minmax(0,1fr);grid-gap:16px;gap:16px;align-content:start;padding:30px 0;border-bottom:1px solid var(--line)}.portfolio-home .home-project-number{padding-top:7px;color:var(--muted);font-size:11px}.portfolio-home .home-project h3{font-size:clamp(25px,2.5vw,35px);font-weight:400;line-height:1.2;letter-spacing:-.04em}.portfolio-home .home-project-copy p{margin-top:12px;font-size:14px;line-height:1.65;color:var(--muted)}.portfolio-home .home-project-stack{display:block;margin-top:12px;font-size:11px;line-height:1.65;color:var(--muted)}.portfolio-home .home-project-actions{grid-column:2;display:flex;gap:25px;flex-wrap:wrap}.portfolio-home .home-project-actions :is(a,button){display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0;font-size:12px}.portfolio-home .home-project-actions :is(a,button):hover{text-decoration:underline;text-underline-offset:6px}.portfolio-home .home-project-preview{position:fixed;z-index:50;max-height:calc(100dvh - 32px);overflow:auto;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 65px #10181540;animation:home-preview-in .18s ease-out}.portfolio-home .home-preview-toolbar{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 8px 0 16px;background:var(--surface);font-size:10px}.portfolio-home .home-preview-toolbar>span:nth-child(2){flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-home .home-preview-dots{color:var(--accent);font-size:8px;white-space:nowrap}.portfolio-home .home-preview-toolbar button{flex-shrink:0;width:44px;height:44px;padding:0;font-size:25px}.portfolio-home .home-preview-image{display:block;width:100%;height:auto;aspect-ratio:3/2;max-height:min(320px,calc(100dvh - 136px));object-fit:contain;object-position:top;background:#fff}.portfolio-home .home-preview-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;border-top:1px solid var(--line);font-size:11px}.portfolio-home .home-preview-footer strong{font-weight:500}.portfolio-home .home-preview-footer>span{color:var(--muted)}.portfolio-home .home-preview-assistant{padding:28px}.portfolio-home .home-preview-assistant h4{margin:16px 0;font-size:25px;font-weight:400;letter-spacing:-.04em}.portfolio-home .home-preview-assistant p{padding:16px;background:var(--surface);font-size:14px}.portfolio-home .home-preview-prompt{display:block;margin-top:24px;padding:12px;border:1px solid var(--line);font-size:12px;color:var(--muted)}@keyframes home-preview-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.portfolio-home :is(.section-heading,.timeline-row,.newsletter-section){animation:none;will-change:auto}.portfolio-home .home-experience #experience{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);grid-gap:80px;gap:80px;padding:110px 0}.portfolio-home .home-experience .section-heading{margin:0}.portfolio-home .home-experience h2{font-size:clamp(30px,3.2vw,43px);font-weight:400;line-height:1.2}.portfolio-home .home-experience .eyebrow{font-size:11px;letter-spacing:.06em}.portfolio-home .home-experience .timeline-row{display:block;padding:24px 0;border-top:1px solid var(--line)}.portfolio-home .home-experience .timeline-date{display:block;margin-bottom:12px;font-size:11px}.portfolio-home .home-experience .timeline-row .eyebrow{display:none}.portfolio-home .home-experience .timeline-row h3{font-size:18px;line-height:1.5;font-weight:400}.portfolio-home .home-experience .timeline-row h3+p{font-size:13px;line-height:1.7}.portfolio-home .home-contact{--paper:#e5e9de;--ink:#29332c;--muted:#586351;--line:#b4bfae;--surface:#dbe2d3;--accent:#3d542e;background:var(--paper);color:var(--ink);padding:75px 0 0}.portfolio-home.theme-dark .home-contact{--paper:#303c33;--ink:#eef2e9;--muted:#c2cdbb;--line:#6a7b63;--surface:#3b4a3e;--accent:#c5d2ac}.portfolio-home .home-contact h2{margin-top:20px;font-size:clamp(50px,6vw,80px);line-height:1.05;letter-spacing:-.05em;font-weight:400}.portfolio-home .home-contact h2>span{color:var(--accent)}.portfolio-home .home-contact-copy{margin-top:20px;margin-bottom:24px;color:var(--muted);font-size:15px;line-height:1.7}.portfolio-home .home-contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:110px;gap:110px;padding-bottom:70px}.portfolio-home .home-contact-links>a{display:inline-flex;align-items:center;gap:12px;margin-right:28px;min-height:44px;border-bottom:1px solid var(--line);font-size:14px}.portfolio-home .home-contact-links>a .home-arrow{font-size:18px}.portfolio-home .home-contact-links>a:hover{color:var(--accent)}.portfolio-home .home-contact .newsletter-section{padding-top:40px}.portfolio-home .newsletter-title{font-size:25px;font-weight:400}.portfolio-home .newsletter-input{border:1px solid var(--line);padding:10px 12px}.portfolio-home .newsletter-button{border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);padding-inline:26px}.portfolio-home .newsletter-button:hover{background:var(--accent)}.portfolio-home .home-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding:25px 0 100px;font-size:11px;color:var(--muted)}.portfolio-home .home-footer :is(a,button){display:inline-flex;align-items:center;min-height:44px;padding:0}.portfolio-home .assistant-launcher{border-radius:5px;padding:12px 18px}.portfolio-home .assistant-launcher__label{font-size:10px}.portfolio-home .assistant-panel{border-radius:8px}@media (max-width:1050px){.portfolio-home .home-container{width:calc(100% - 64px)}.portfolio-home .home-header{padding:20px 32px}.portfolio-home .home-hero-content{grid-template-columns:minmax(0,1fr) 210px;column-gap:35px}.portfolio-home .home-hero h1{font-size:8.4vw}.portfolio-home .home-role{font-size:20px}.portfolio-home .home-intro{gap:50px;padding-block:85px}.portfolio-home .home-desktop-break{display:none}.portfolio-home .home-experience #experience{gap:40px}.portfolio-home .home-contact-grid{gap:60px}.portfolio-home .home-projects{column-gap:30px}}@media (max-width:650px){.portfolio-home .home-container{width:calc(100% - 40px)}.portfolio-home .home-header{padding:14px 20px}.portfolio-home .home-navigation{display:none}.portfolio-home .home-menu-button{display:inline-flex;font-size:13px}.portfolio-home .home-hero{padding-top:50px}.portfolio-home .home-hero-content{grid-template-columns:1fr;padding-bottom:36px;gap:36px}.portfolio-home .home-hero h1{font-size:clamp(52px,13vw,80px)}.portfolio-home .home-hero-aside{display:grid;grid-template-columns:1fr 1fr;align-items:start;grid-gap:16px;gap:16px}.portfolio-home .home-role{padding:14px;font-size:17px;line-height:1.5}.portfolio-home .home-current{margin-top:24px;padding-top:16px;font-size:12px}.portfolio-home .home-hero-contact{margin-top:0;font-size:12px;gap:16px;justify-content:flex-start}.portfolio-home .home-portrait-frame{grid-column:1/-1;max-width:300px;margin-bottom:12px}.portfolio-home .home-hero-bottom{font-size:11px;padding-block:12px 18px}.portfolio-home .home-intro{grid-template-columns:1fr;padding-block:60px;gap:24px}.portfolio-home .home-intro h2{font-size:33px}.portfolio-home .home-intro-aside{padding-top:0}.portfolio-home .home-intro-aside p{max-width:44ch;font-size:15px}.portfolio-home .home-projects{grid-template-columns:1fr}.portfolio-home .home-project{padding-block:24px}.portfolio-home .home-project h3{font-size:27px}.portfolio-home .home-experience #experience{grid-template-columns:1fr;gap:32px;padding-block:70px}.portfolio-home .home-experience h2{max-width:280px}.portfolio-home .home-contact{padding-top:50px}.portfolio-home .home-contact-grid{grid-template-columns:1fr;gap:40px;padding-bottom:45px}.portfolio-home .home-contact .newsletter-section{padding-top:0}.portfolio-home .home-footer{gap:5px 24px;padding-bottom:110px}.portfolio-home .home-footer p{width:100%}}@media (prefers-reduced-motion:reduce){.portfolio-home *,.portfolio-home :after,.portfolio-home :before{animation:none!important;transition:none!important}}@media print{.portfolio-home .home-header,.portfolio-home .home-hero-bottom,.portfolio-home .home-menu,.portfolio-home .newsletter-section{display:none}}