:root{--ink:#0b0f0e;--ink-soft:#171d1b;--paper:#f1efe8;--paper-bright:#faf9f4;--mist:#d7d8d0;--line:#0b0f0e2e;--line-dark:#ffffff29;--accent:#c8ff3d;--accent-strong:#a9e91d;--muted:#777d78;--radius:1.25rem;--shell:min(1440px, calc(100vw - 64px));--header-height:88px;--ease:cubic-bezier(.2, .72, .2, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--ink) var(--paper)}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Segoe UI,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden}html.dialog-open,body.dialog-open{overscroll-behavior:none;overflow:hidden}body.dialog-open{width:100%;position:fixed}::selection{color:var(--ink);background:var(--accent)}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;color:var(--ink);background:var(--accent);padding:.75rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.section-shell{width:var(--shell);margin-inline:auto}.site-header{z-index:100;height:var(--header-height);border-bottom:1px solid #0000;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;padding:0 32px;transition:background .3s,border-color .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;display:grid;position:fixed;top:0;left:0;right:0}.site-header.scrolled{border-color:var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f1efe8e0}.brand{align-items:center;gap:.8rem;width:fit-content;display:inline-flex}.brand-mark{width:42px;height:42px;color:var(--paper-bright);background:var(--ink);letter-spacing:-.04em;border-radius:50%;place-items:center;font-size:.76rem;font-weight:800;display:grid}.brand-copy{line-height:1.1;display:grid}.brand-copy strong{font-size:.86rem}.brand-copy span{color:var(--muted);text-transform:uppercase;letter-spacing:.11em;margin-top:.25rem;font-size:.69rem}.site-nav{align-items:center;gap:2rem;font-size:.78rem;font-weight:650;display:flex}.site-nav a,.site-footer a{position:relative}.site-nav a:after,.site-footer a:after{content:"";transform-origin:100%;height:1px;transition:transform .25s var(--ease);background:currentColor;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-footer a:hover:after{transform-origin:0;transform:scaleX(1)}.header-cta{border:1px solid var(--ink);border-radius:99px;justify-self:end;align-items:center;gap:1rem;padding:.75rem 1rem .75rem 1.2rem;font-size:.78rem;font-weight:700;transition:color .22s,background .22s;display:inline-flex}.header-cta:hover{color:var(--paper-bright);background:var(--ink)}.menu-button{background:0 0;border:0;display:none}.hero{min-height:100svh;padding-top:calc(var(--header-height) + 5.5rem);grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:4rem 7vw;padding-bottom:2rem;display:grid}.hero-copy{align-self:center;max-width:840px}.eyebrow,.section-index,.project-kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.13em;align-items:center;gap:.6rem;font-size:.72rem;font-weight:750;display:inline-flex}.status-dot{background:var(--accent-strong);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #a9e91d21}.hero h1{letter-spacing:-.075em;max-width:900px;margin:1.8rem 0 1.6rem;font-size:clamp(4rem,7.4vw,8.5rem);font-weight:620;line-height:.88}.hero-summary{color:#444b47;max-width:690px;margin:0;font-size:clamp(1.05rem,1.45vw,1.35rem);line-height:1.55}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:2.4rem;display:flex}.button{min-width:190px;transition:transform .22s var(--ease), background .22s ease, color .22s ease;border-radius:99px;justify-content:space-between;align-items:center;gap:1.5rem;padding:.95rem 1.15rem;font-size:.79rem;font-weight:750;display:inline-flex}.button:hover{transform:translateY(-3px)}.button-primary{color:var(--paper-bright);background:var(--ink)}.button-primary:hover{color:var(--ink);background:var(--accent)}.button-quiet{border:1px solid var(--line);background:#ffffff40}.button-quiet:hover{background:var(--paper-bright)}.hero-meta{flex-wrap:wrap;gap:2.5rem;margin-top:3.8rem;display:flex}.hero-meta div{gap:.3rem;display:grid}.hero-meta span{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.69rem}.hero-meta strong{font-size:.84rem}.portrait-wrap{place-self:center end;width:min(100%,510px);position:relative}.portrait-frame{aspect-ratio:.78;background:#d1d4ca;border-radius:16rem 16rem 1.4rem 1.4rem;position:relative;overflow:hidden}.portrait-frame:after{content:"";pointer-events:none;background:linear-gradient(#0000 50%,#080c0b7a);position:absolute;inset:0}.portrait-grid{opacity:.35;background-image:linear-gradient(#0b0f0e14 1px,#0000 1px),linear-gradient(90deg,#0b0f0e14 1px,#0000 1px);background-size:38px 38px;position:absolute;inset:0}.portrait-frame img{z-index:1;object-fit:cover;object-position:center 18%;filter:saturate(.78)contrast(1.03);width:100%;height:100%;position:absolute;inset:0}.portrait-label{z-index:2;color:#fff;border-top:1px solid #ffffff6b;justify-content:space-between;align-items:end;padding-top:1.2rem;display:flex;position:absolute;bottom:1.4rem;left:1.4rem;right:1.4rem}.portrait-label span{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.portrait-label strong{font-size:.85rem}.orbit-note{border:1px solid var(--ink);background:var(--accent);border-radius:50%;place-items:center;width:7.2rem;height:7.2rem;animation:5s ease-in-out infinite float;display:grid;position:absolute;top:8%;left:-3.2rem}.orbit-note span{text-transform:uppercase;letter-spacing:.08em;margin:-.2rem;font-size:.64rem;font-weight:750}.stat-row{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(3,1fr);display:grid}.stat{border-right:1px solid var(--line);grid-template-columns:auto 1fr;align-items:end;gap:1rem;padding:1.7rem 2rem;display:grid}.stat:first-child{padding-left:0}.stat:last-child{border-right:0}.stat strong{letter-spacing:-.06em;font-size:clamp(2.2rem,4vw,4.2rem);font-weight:600;line-height:.8}.stat span{max-width:9rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:650;line-height:1.3}.marquee{color:var(--accent);background:var(--ink);padding:1rem 0;overflow:hidden}.marquee-track{align-items:center;gap:2.2rem;width:max-content;animation:34s linear infinite marquee;display:flex}.marquee span{text-transform:uppercase;letter-spacing:.12em;font-size:.79rem;font-weight:750}.marquee i{margin-left:2.2rem;font-style:normal}.work,.experience{padding-top:9rem;padding-bottom:10rem}.section-heading{grid-template-columns:1.25fr .75fr;align-items:end;gap:4rem;margin-bottom:4rem;display:grid}.section-heading h2,.expertise-intro h2,.contact h2{letter-spacing:-.065em;margin:1.2rem 0 0;font-size:clamp(3.4rem,6vw,7.2rem);font-weight:600;line-height:.9}.section-heading>p,.expertise-intro>p{max-width:520px;color:var(--muted);margin:0 0 .6rem;font-size:1.05rem;line-height:1.65}.project-toolbar{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:1.4rem;padding-top:1.3rem;display:flex}.filter-list{flex-wrap:wrap;gap:.45rem;display:flex}.filter-button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:99px;padding:.58rem .9rem;font-size:.72rem;font-weight:700;transition:transform .18s,color .18s,background .18s,border-color .18s}.filter-button:hover,.filter-button.active{color:var(--paper-bright);border-color:var(--ink);background:var(--ink)}.filter-button:hover{transform:translateY(-1px)}.filter-button:focus-visible,.project-page-button:focus-visible,.project-card:focus-visible,.dialog-close:focus-visible,.dialog-media-controls button:focus-visible,.dialog-thumb:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[data-project-count]{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.project-card{border-radius:var(--radius);color:#fff;background:var(--ink-soft);cursor:pointer;isolation:isolate;min-height:580px;animation:card-in .5s var(--ease) both;transition:transform .45s var(--ease), box-shadow .45s var(--ease);position:relative;overflow:hidden;box-shadow:0 1rem 3rem #0b0f0e0f}.project-card:after{content:"";z-index:3;border-radius:inherit;pointer-events:none;border:1px solid #ffffff24;position:absolute;inset:0}.project-card.featured{min-height:700px}.project-card-media{position:absolute;inset:0}.project-card-media:after{content:"";background:linear-gradient(#080a090d 15%,#080a09c7 100%),linear-gradient(90deg,#080a094d,#0000 55%);position:absolute;inset:0}.project-card img,.project-card video{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease)}.project-card:hover img,.project-card:hover video{transform:scale(1.035)}.project-card:hover{transform:translateY(-5px);box-shadow:0 1.8rem 4.5rem #0b0f0e29}.project-card-content{z-index:2;padding:2rem;position:absolute;inset:auto 0 0}.project-card-top{z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;top:1.5rem;left:1.5rem;right:1.5rem}.project-category,.media-count{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-transform:uppercase;letter-spacing:.1em;background:#080a0938;border:1px solid #ffffff5c;border-radius:99px;padding:.52rem .75rem;font-size:.66rem;font-weight:750}.project-card h3{letter-spacing:-.055em;margin:0;font-size:clamp(2.2rem,4vw,4.6rem);font-weight:580;line-height:.95}.project-card p{color:#ffffffc7;max-width:580px;margin:.9rem 0 0;font-size:.92rem}.project-card-footer{border-top:1px solid #ffffff47;justify-content:space-between;align-items:end;gap:1rem;margin-top:1.7rem;padding-top:1rem;display:flex}.project-card-footer span:first-child{color:#ffffffad;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:700}.project-arrow{width:2.9rem;height:2.9rem;color:var(--ink);background:var(--accent);transition:transform .3s var(--ease);border-radius:50%;place-items:center;font-size:1.1rem;display:grid}.project-card:hover .project-arrow{transform:rotate(45deg)}.project-pagination{border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#faf9f49e;border-radius:1rem;justify-content:space-between;align-items:center;gap:2rem;margin-top:2.2rem;padding:1.1rem 1.1rem 1.1rem 1.4rem;display:flex;box-shadow:0 1rem 3rem #0b0f0e0a}.project-pagination-copy{align-items:baseline;gap:.7rem;display:flex}.project-pagination-copy strong{letter-spacing:-.06em;font-size:1.7rem;font-weight:600}.project-pagination-copy span{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-size:.68rem;font-weight:700}.project-pagination-actions{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;display:flex}.project-page-button{border:1px solid var(--ink);min-height:3rem;color:var(--paper-bright);background:var(--ink);cursor:pointer;border-radius:99px;align-items:center;gap:1.4rem;padding:.75rem .85rem .75rem 1.15rem;font-size:.72rem;font-weight:750;transition:color .2s,background .2s,transform .2s;display:inline-flex}.project-page-button span{min-width:2rem;height:2rem;color:var(--ink);background:var(--accent);border-radius:50%;place-items:center;display:grid}.project-page-button:hover{transform:translateY(-2px)}.project-page-button-quiet{color:var(--ink);border-color:var(--line);background:0 0}.project-page-button-quiet span{color:var(--ink);background:var(--mist)}.services{width:100%;max-width:none;color:var(--paper-bright);background:var(--ink);padding:9rem max(32px,50vw - 720px)}.section-heading-light .section-index,.section-heading-light>p{color:#929a95}.service-list{border-top:1px solid var(--line-dark);margin-top:4rem}.service-item{border-bottom:1px solid var(--line-dark);transition:padding .35s var(--ease);grid-template-columns:.15fr .42fr .43fr;gap:2rem;padding:2.3rem 0;display:grid}.service-item:hover{padding-inline:1.2rem}.service-number{color:var(--accent);letter-spacing:.12em;font-size:.73rem}.service-item h3{letter-spacing:-.045em;margin:0;font-size:clamp(1.7rem,3vw,3.2rem);font-weight:530;line-height:1}.service-item p{color:#aab0ac;max-width:520px;margin:0;line-height:1.7}.expertise{grid-template-columns:.9fr 1.1fr;gap:8vw;padding-top:10rem;padding-bottom:10rem;display:grid}.expertise-intro{align-self:start;position:sticky;top:8rem}.expertise-intro h2{font-size:clamp(3.2rem,5.2vw,6.3rem)}.expertise-intro h2 em{color:var(--muted);font-family:Georgia,Times New Roman,serif;font-weight:400}.expertise-intro>p{margin-top:2rem}.skills-grid{gap:1rem;display:grid}.skill-card{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff40;padding:2rem}.skill-card:nth-child(2){width:calc(100% - 2.2rem);margin-left:2.2rem}.skill-card h3{justify-content:space-between;align-items:center;margin:0 0 1.8rem;font-size:1rem;display:flex}.skill-card h3 span{color:var(--muted);font-size:.7rem;font-weight:500}.skill-tags,.tag-list{flex-wrap:wrap;gap:.5rem;max-width:100%;display:flex}.skill-tag,.tag-list span{border:1px solid var(--line);background:var(--paper-bright);overflow-wrap:anywhere;border-radius:99px;max-width:100%;padding:.58rem .78rem;font-size:.72rem;font-weight:650}.timeline{border-top:1px solid var(--line)}.timeline-item{border-bottom:1px solid var(--line);grid-template-columns:.2fr .32fr .48fr;gap:2rem;padding:2.8rem 0;display:grid}.timeline-period{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;font-weight:700}.timeline-company h3{margin:0;font-size:1.4rem;line-height:1.15}.timeline-company p{color:var(--muted);margin:.4rem 0 0;font-size:.8rem}.current-badge{background:var(--accent);text-transform:uppercase;letter-spacing:.08em;border-radius:99px;margin-top:1rem;padding:.4rem .55rem;font-size:.64rem;font-weight:800;display:inline-flex}.timeline-detail>p{max-width:600px;margin:0;font-size:1.02rem;font-weight:600}.timeline-detail ul{gap:.7rem;margin:1.4rem 0 0;padding:0;list-style:none;display:grid}.timeline-detail li{color:var(--muted);padding-left:1.2rem;font-size:.88rem;position:relative}.timeline-detail li:before{content:"↳";color:var(--ink);position:absolute;left:0}.education-wrap{border-radius:var(--radius);color:var(--paper-bright);background:var(--ink-soft);grid-template-columns:.45fr .55fr;gap:5rem;margin-top:8rem;padding:4rem;display:grid}.education-wrap h3{letter-spacing:-.05em;margin:1.2rem 0 0;font-size:clamp(2.4rem,4vw,4.4rem);font-weight:550;line-height:.98}.education-wrap .section-index{color:#929a95}.education-item{border-bottom:1px solid var(--line-dark);grid-template-columns:1fr auto;gap:1rem;padding:1.5rem 0;display:grid}.education-item:first-child{padding-top:0}.education-item h4{margin:0;font-size:1rem}.education-item p{color:#9da39f;margin:.4rem 0 0;font-size:.8rem}.education-item span{color:var(--accent);font-size:.75rem}.contact{width:100%;max-width:none;min-height:82svh;color:var(--ink);background:var(--accent);padding:8rem max(32px,50vw - 720px) 4rem;position:relative;overflow:hidden}.contact-orb{border:1px solid #0b0f0e38;border-radius:50%;width:70vw;height:70vw;position:absolute;top:-35vw;right:-20vw;box-shadow:0 0 0 9vw #0b0f0e0a,0 0 0 18vw #0b0f0e06}.contact .section-index{color:#0b0f0e9e}.contact-copy{z-index:1;margin-top:7vh;position:relative}.contact h2{font-size:clamp(4rem,8.5vw,10rem)}.contact-copy>p{max-width:520px;margin:2rem 0 3rem;font-size:1.05rem}.contact-email{border-bottom:2px solid var(--ink);letter-spacing:-.03em;justify-content:space-between;align-items:center;gap:2rem;width:min(100%,860px);padding:1.4rem 0;font-size:clamp(1.2rem,2.3vw,2.4rem);font-weight:650;display:flex}.contact-email span:last-child{transition:transform .25s var(--ease)}.contact-email:hover span:last-child{transform:translate(.3rem,-.3rem)}.contact-meta{z-index:1;border-top:1px solid #0b0f0e47;justify-content:space-between;align-items:end;gap:2rem;margin-top:6rem;padding-top:1.5rem;display:flex;position:relative}.contact-meta p{max-width:650px;margin:0;font-size:.8rem}[data-profile-links]{gap:1.5rem;display:flex}[data-profile-links] a{font-size:.78rem;font-weight:750}.site-footer{color:var(--paper-bright);background:var(--ink);grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:2rem 32px;display:grid}.site-footer div{display:grid}.site-footer strong{font-size:.86rem}.site-footer span,.site-footer p,.site-footer a{color:#858d88;font-size:.7rem}.site-footer p{text-align:center;margin:0}.site-footer a{justify-self:end}.project-dialog{width:min(1480px,100vw - 32px);max-width:none;height:min(900px,100svh - 32px);max-height:none;color:var(--ink);background:var(--paper-bright);overscroll-behavior:contain;border:0;border-radius:1.4rem;padding:0;overflow:clip hidden}.project-dialog::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#020403c7}.dialog-shell{grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);width:100%;max-width:100%;height:100%;min-height:0;display:grid;overflow-x:hidden}.dialog-close{z-index:10;background:var(--accent);cursor:pointer;border:0;border-radius:50%;place-items:center;width:3rem;height:3rem;display:grid;position:absolute;top:1rem;right:1rem}.dialog-close span{background:var(--ink);width:1rem;height:1px;position:absolute}.dialog-close span:first-child{transform:rotate(45deg)}.dialog-close span:last-child{transform:rotate(-45deg)}.dialog-media{background:#dfe0da;flex-direction:column;min-width:0;min-height:0;padding:1rem;display:flex}.dialog-stage{background:#161a18;border-radius:.9rem;flex:auto;min-height:0;overflow:hidden}.dialog-stage img,.dialog-stage video{object-fit:contain;width:100%;height:100%}.dialog-media-controls{flex:0 0 3.6rem;justify-content:space-between;align-items:center;display:flex}.dialog-media-controls>span{color:var(--muted);letter-spacing:.1em;font-size:.7rem;font-weight:700}.dialog-media-controls div{gap:.4rem;display:flex}.dialog-media-controls button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:2.3rem;height:2.3rem;display:grid}.dialog-thumbs{scroll-behavior:smooth;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;scrollbar-width:thin;flex:0 0 4.4rem;gap:.5rem;display:flex;overflow:auto hidden}.dialog-thumb{cursor:pointer;scroll-snap-align:center;background:#bbbfb8;border:2px solid #0000;border-radius:.45rem;flex:0 0 5.8rem;padding:0;overflow:hidden}.dialog-thumb.active{border-color:var(--ink)}.dialog-thumb img,.dialog-thumb video{object-fit:cover;width:100%;height:100%}.dialog-content{overscroll-behavior:contain;scrollbar-gutter:stable;width:100%;max-width:100%;min-height:0;padding:5rem 3.5rem 3rem;overflow:hidden auto}.dialog-media.single-asset .dialog-media-controls,.dialog-media.single-asset .dialog-thumbs{display:none}.dialog-content h2{letter-spacing:-.065em;overflow-wrap:anywhere;max-width:100%;margin:1.2rem 0 1.5rem;font-size:clamp(3.2rem,5vw,6rem);font-weight:590;line-height:.9}.dialog-description{max-width:100%;color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.dialog-impact{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:2rem 0;padding:1.2rem 0;font-size:1rem;font-weight:700}.dialog-details{gap:.8rem;margin:0 0 2rem;padding:0;list-style:none;display:grid}.dialog-details li{color:#565d59;overflow-wrap:anywhere;padding-left:1.3rem;font-size:.85rem;position:relative}.dialog-details li:before{content:"↳";color:var(--ink);position:absolute;left:0}.dialog-links{flex-wrap:wrap;gap:.7rem;margin-top:2rem;display:flex}.dialog-links a{color:var(--paper-bright);background:var(--ink);border-radius:99px;justify-content:space-between;gap:1.2rem;padding:.75rem 1rem;font-size:.72rem;font-weight:700;display:inline-flex}.loading-screen{z-index:999;color:var(--paper-bright);background:var(--ink);place-content:center;justify-items:center;gap:1rem;transition:opacity .5s,visibility .5s;display:grid;position:fixed;inset:0}.loading-screen.hidden{opacity:0;visibility:hidden}.loading-mark{border:1px solid var(--accent);width:4.5rem;height:4.5rem;color:var(--accent);border-radius:50%;place-items:center;font-weight:800;animation:1.2s ease-in-out infinite pulse;display:grid}.loading-screen span{color:#89908c;text-transform:uppercase;letter-spacing:.13em;font-size:.68rem}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(28px)}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes marquee{to{transform:translate(-50%)}}@keyframes float{0%,to{transform:translateY(0)rotate(-7deg)}50%{transform:translateY(-12px)rotate(4deg)}}@keyframes pulse{50%{opacity:.7;transform:scale(.92)}}@keyframes card-in{0%{opacity:0;transform:translateY(22px)}}@media (max-width:1080px){:root{--shell:min(100% - 40px, 1000px)}.site-header{padding-inline:20px}.site-nav{gap:1.1rem}.hero{grid-template-columns:1fr .7fr;gap:3rem}.hero h1{font-size:clamp(4rem,8vw,6.5rem)}.project-card,.project-card.featured{min-height:560px}.dialog-shell{grid-template-columns:1.08fr .92fr}.dialog-content{padding-inline:2rem}}@media (max-width:780px){:root{--header-height:72px;--shell:calc(100% - 28px)}.site-header{grid-template-columns:1fr auto}.brand-copy,.header-cta{display:none}.menu-button{z-index:102;cursor:pointer;place-content:center;gap:.35rem;width:2.6rem;height:2.6rem;display:grid;position:relative}.menu-button span:not(.sr-only){background:currentColor;width:1.25rem;height:1px;transition:transform .25s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3px)rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){transform:translateY(-3px)rotate(-45deg)}.menu-button[aria-expanded=true]{color:var(--paper-bright)}.site-nav{z-index:101;width:100vw;height:100svh;color:var(--paper-bright);background:var(--ink);transition:transform .45s var(--ease);align-content:center;justify-items:center;gap:1.2rem;display:grid;position:fixed;top:0;left:0;transform:translateY(-100%)}.site-nav.open{transform:translateY(0)}.site-nav a{letter-spacing:-.05em;font-size:2.4rem;font-weight:550}.hero{min-height:auto;padding-top:calc(var(--header-height) + 4rem);grid-template-rows:auto;grid-template-columns:1fr}.hero h1{font-size:clamp(4rem,18vw,6.5rem)}.portrait-wrap{justify-self:center;width:min(100%,480px)}.orbit-note{width:6rem;height:6rem;left:-.5rem}.stat-row{grid-column:1;grid-template-columns:1fr}.stat,.stat:first-child{border-right:0;border-bottom:1px solid var(--line);padding:1.3rem 0}.section-heading,.expertise,.education-wrap{grid-template-columns:1fr}.section-heading{gap:2rem}.section-heading h2,.expertise-intro h2,.contact h2{font-size:clamp(3.3rem,15vw,5.5rem)}.work,.experience,.expertise{padding-top:6rem;padding-bottom:6rem}.project-grid{grid-template-columns:1fr}.project-pagination{flex-direction:column;align-items:stretch;gap:1rem}.project-pagination-actions{justify-content:flex-start}.project-card,.project-card.featured{min-height:560px}.services{padding-top:6rem;padding-bottom:6rem}.service-item{grid-template-columns:.12fr .88fr}.service-item p{grid-column:2}.expertise{gap:3rem}.expertise-intro{position:static}.skill-card:nth-child(2){width:100%;margin-left:0}.timeline-item{grid-template-columns:1fr;gap:1rem}.education-wrap{gap:3rem;padding:2rem}.contact{min-height:auto;padding-top:6rem;padding-bottom:3rem}.contact-meta{display:grid}.site-footer{grid-template-columns:1fr auto}.site-footer p{display:none}.dialog-shell{overscroll-behavior:contain;display:block;overflow:hidden auto}.project-dialog{width:calc(100vw - 16px);height:calc(100svh - 16px)}.dialog-media{width:100%;max-width:100%;height:54svh;min-height:360px}.dialog-stage{min-height:0}.dialog-content{padding:3rem 1.2rem;overflow:hidden visible}}@media (max-width:520px){.hero h1{font-size:3.8rem}.hero-actions{display:grid}.button{width:100%}.hero-meta{gap:1.4rem}.portrait-frame{border-radius:10rem 10rem 1rem 1rem}.project-card,.project-card.featured{min-height:480px}.project-card-content{padding:1.3rem}.project-card-top{inset:1rem 1rem auto}.project-card h3{font-size:2.4rem}.project-toolbar{flex-direction:column;align-items:flex-start}[data-project-count]{display:none}.filter-list{gap:.3rem}.filter-button{padding:.48rem .68rem}.project-pagination-actions,.project-page-button{width:100%}.project-page-button{justify-content:space-between}.service-item{grid-template-columns:1fr}.service-item p{grid-column:1}.contact-email{font-size:1rem}.contact-meta{margin-top:4rem}.dialog-content h2{font-size:clamp(2.55rem,13vw,3.1rem);line-height:.94}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
