html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
:root{--paper:#f4f3ee;--ink:#0c213c;--muted:#556479;--line:#c8d1df;--accent:#4258e8;--accent-2:#e63946;--highlight:#ffe74d;--stamp:#ff3b30;--white:#fff;--hero:#2f3530;--deep:#0c213c;--ease:cubic-bezier(.22, 1, .36, 1);--gutter:clamp(24px, 6vw, 112px);--text-display:clamp(38px, 4.2vw, 80px);--text-h2:clamp(32px, 3vw, 56px);--text-h3:clamp(20px, 1.6vw, 26px);--text-lead:clamp(18px, 1.3vw, 21px);--text-body:17px;--text-sm:15px;--text-label:12px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--radius:22px;--z-header:20;--z-cursor:30;--z-transition:40;--z-drawer:50}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:40px}html:not(.lenis){scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans), Arial, sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em;font-weight:400;line-height:1.08}h1{font-size:clamp(58px,7.8vw,150px)}h2{font-size:var(--text-display)}p{max-width:70ch}img{max-width:100%;display:block}::selection{color:#fff;background:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:7px}main:focus{outline:none}button{background:0 0;border:0}sup{vertical-align:super;margin-left:6px;font-size:11px}.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{background:var(--ink);color:#fff;z-index:60;padding:12px 20px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:16px}.scroll-locked{overflow:hidden}.section-shell{padding-inline:var(--gutter);max-width:1900px;margin-inline:auto}.utility,.section-label{font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.section-label{margin-bottom:var(--space-4)}.magnetic{display:inline-flex;position:relative}.pill{border:1px solid var(--line);border-radius:100px;justify-content:center;align-items:center;gap:28px;padding:22px 30px;font-size:15px;transition:background .35s,color .35s,border-color .35s;display:inline-flex;position:relative}.pill:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.round-button{aspect-ratio:1;background:var(--ink);width:clamp(140px,13vw,190px);color:var(--paper);border-radius:50%;justify-content:center;align-items:center;gap:16px;font-size:15px;transition:background .4s;display:flex}.round-button:hover,.round-button.accent{background:var(--accent)}.text-link{text-underline-offset:7px;align-items:center;min-height:44px;font-size:15px;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.text-link:hover{color:var(--accent)}.resume-links{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.direction-arrow{margin-bottom:35px;font-size:70px;line-height:1;display:block}.site-header{width:100%;z-index:var(--z-header);align-items:center;gap:34px;padding:28px 3.3vw;display:flex;position:absolute;top:0;left:0}.wordmark{align-items:center;gap:16px;font-size:14px;display:flex}.mark{letter-spacing:-3px;font-size:32px;line-height:1}.desktop-nav{gap:34px;margin-left:auto;font-size:15px;display:flex}.desktop-nav a{padding:10px 0;position:relative}.desktop-nav a:after{content:"";background:currentColor;border-radius:50%;width:5px;height:5px;transition:transform .3s;position:absolute;bottom:-3px;left:50%;transform:scale(0)}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scale(1)}.menu-trigger{flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;display:flex}.menu-trigger span{background:currentColor;width:22px;height:1px}.navigation-drawer{color:#e5e9dc;width:min(620px,90vw);max-width:100vw;height:100dvh;max-height:100dvh;z-index:var(--z-drawer);background:#0c213c;border:0;border-left:1px solid #c7dca829;margin:0;padding:clamp(80px,10vh,130px) clamp(35px,6vw,90px) 45px;position:fixed;inset:0 0 0 auto}.navigation-drawer::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0005}.drawer-close{background:var(--accent);color:#fff;border-radius:50%;width:56px;height:56px;font-size:20px;position:absolute;top:24px;right:26px}.navigation-drawer>.utility{color:#b7c8bc;border-bottom:1px solid #c7dca82e;padding-bottom:25px}.navigation-drawer nav{padding:30px 0}.drawer-link{letter-spacing:-.05em;justify-content:space-between;align-items:center;font-size:clamp(48px,5vw,75px);line-height:1.3;display:flex}.drawer-link span{opacity:0;font-size:30px;transition:opacity .25s}.drawer-link:hover span,.drawer-link[aria-current] span{opacity:1}.drawer-bottom{flex-wrap:wrap;gap:25px;margin-top:25px;font-size:14px;display:flex}.drawer-bottom p{color:#b7c8bc;width:100%}.transition-curtain{z-index:var(--z-transition);pointer-events:auto;touch-action:none;visibility:hidden;color:var(--paper);will-change:transform;place-items:center;animation:0s linear 8s forwards curtain-failsafe;display:grid;position:fixed;inset:0}.motion-ready .transition-curtain{animation:none}@keyframes curtain-failsafe{to{visibility:hidden;transform:translateY(-115%)}}.transition-curtain svg{width:100%;height:115%;fill:var(--ink);position:absolute;inset:0}.transition-curtain>span{font-size:clamp(28px,3vw,50px);position:relative}.hero{background:var(--hero);height:100svh;min-height:700px;max-height:1500px;position:relative;overflow:hidden}.hero-portrait{width:56%;position:absolute;top:0;bottom:0;left:33%;overflow:hidden}.portrait-image{object-fit:cover;object-position:51% center}.hero-portrait:after{content:"";background:#302c2110;position:absolute;inset:0}.hero-topline{top:135px;left:var(--gutter);justify-content:space-between;font-size:13px;display:flex;position:absolute;right:4%}.hero-topline>span:last-child{writing-mode:vertical-rl;align-items:center;gap:16px;display:flex}.tiny-globe{font-size:26px}.hero-role{left:var(--gutter);z-index:2;width:31%;position:absolute;top:29%}.hero-role h1{font-size:clamp(36px,3.3vw,66px);line-height:1.08}.hero-role p{margin-top:26px;font-size:14px}.hero-role .direction-arrow{margin-bottom:26px;font-size:50px}.hero-side{width:8%;font-size:11px;line-height:1.6;position:absolute;top:43%;right:2.3%}.status-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;margin-bottom:12px;display:block}.hero-bottom{bottom:27px;left:var(--gutter);justify-content:space-between;font-size:12px;display:flex;position:absolute;right:4%}.hero-bottom a{align-items:center;gap:30px;display:flex}.hero-bottom a:hover{text-underline-offset:5px;text-decoration:underline}.intro{grid-template-columns:1.5fr 1fr;align-items:start;gap:clamp(48px,8%,140px);padding-block:clamp(100px,12vw,210px);display:grid}.intro h2{font-size:clamp(38px,4.4vw,84px)}.intro-lead{max-width:46ch;color:var(--muted);margin-top:28px;font-size:clamp(16px,1.25vw,20px);line-height:1.65}.intro-ladder{border-bottom:1px solid var(--line);margin:clamp(48px,6vw,80px) 0 0;padding:0;list-style:none}.intro-step{border-top:1px solid var(--line);grid-template-columns:44px minmax(110px,.55fr) 1.7fr;align-items:baseline;gap:24px;padding:26px 0;display:grid}.intro-step-index{letter-spacing:.14em;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.intro-step h3{letter-spacing:-.03em;margin:0;font-size:clamp(17px,1.4vw,22px);font-weight:500}.intro-step p{color:var(--muted);max-width:52ch;margin:0;font-size:15px;line-height:1.6}.intro-aside{padding-top:58px}.intro-bio{max-width:40ch;font-size:clamp(16px,1.3vw,21px);line-height:1.65}.intro-meta{border-top:1px solid var(--line);margin:36px 0 0}.intro-meta>div{border-bottom:1px solid var(--line);grid-template-columns:92px 1fr;gap:16px;padding:14px 0;display:grid}.intro-meta dt{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;line-height:1.55}.intro-meta dd{color:var(--ink);margin:0;font-size:14px;line-height:1.55}.intro-aside .magnetic{margin-top:44px}.featured{padding-bottom:150px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:55px;display:flex}.section-heading h2{letter-spacing:-.02em;font-size:20px}.more-work{justify-content:center;padding-top:55px;display:flex}.work-columns{grid-template-columns:1fr 23% 50px;padding:0 25px 25px;display:grid}.project-entry{border-top:1px solid var(--line);transition:color .3s, padding .45s var(--ease);grid-template-columns:1fr 23% 50px;align-items:center;padding:42px 25px;display:grid;position:relative}.project-entry:last-child{border-bottom:1px solid var(--line)}.project-title h3{font-size:clamp(28px,3.5vw,52px)}.project-context{color:var(--muted);margin-top:10px;font-size:15px;display:block}.project-category{font-size:15px}.project-arrow{transition:transform .4s var(--ease);justify-self:end;font-size:30px}.project-entry:hover{color:var(--accent);padding-inline:40px}.project-entry:hover .project-arrow{transform:rotate(45deg)}.project-thumbnail{display:none}.project-collection{animation:collection-in .45s var(--ease)}@keyframes collection-in{0%{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.project-art{aspect-ratio:1.45;background:var(--art-bg);color:var(--art-ink);border:1px solid #0c213c1a;border-radius:22px;flex-direction:column;justify-content:space-between;padding:7%;display:flex;position:relative;overflow:hidden}.art-wordmark{letter-spacing:-.065em;font-size:clamp(20px,3vw,56px);font-weight:500;line-height:1}.art-wordmark>span{vertical-align:top;margin-left:5px;font-size:13px}.art-object{aspect-ratio:1;width:36%;box-shadow:12px 15px 0 color-mix(in srgb, var(--art-ink) 12%, transparent);border:1px solid;border-radius:23%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-44%)rotate(-12deg)}.art-object>span{letter-spacing:-.09em;font-size:clamp(70px,12vw,210px);font-weight:400;line-height:1}.art-caption{justify-content:space-between;margin-top:auto;font-size:clamp(9px,.9vw,14px);display:flex}.art-suchana-ai .art-object{border-radius:50% 50% 10%;transform:translate(-50%,-40%)rotate(-10deg)}.art-suchana-ai .art-object>span{font-size:clamp(65px,9vw,165px)}.art-chatty .art-object{border-width:2px;border-radius:50%}.art-chatty .art-object>span{font-family:Georgia,serif;font-size:clamp(120px,20vw,350px);transform:translateY(16%)}.art-certfy .art-object{aspect-ratio:1.4;border-radius:0;width:44%;transform:translate(-50%,-40%)rotate(-9deg)}.art-certfy .art-object>span{font-size:clamp(60px,9vw,150px)}.art-certfy .art-object i{aspect-ratio:1;background:var(--art-ink);border:6px double var(--art-bg);border-radius:50%;width:24%;position:absolute;bottom:-18%;right:-10%}.project-cursor{width:0;height:0;z-index:var(--z-cursor);pointer-events:none;opacity:0;will-change:transform;position:fixed;top:0;left:0}.cursor-media{background:var(--paper);width:380px;height:268px;transition:opacity .28s var(--ease);border:1px solid #fffc;border-radius:22px;position:absolute;top:-134px;left:-190px;overflow:hidden;box-shadow:0 18px 48px #00000029,0 2px 10px #00000014}.cursor-media>[data-art]{opacity:0;grid-template-rows:1fr auto;display:grid;position:absolute;inset:0}.cursor-art-wrap{grid-template-rows:1fr auto;height:100%;display:grid}.cursor-media .project-art{aspect-ratio:auto;border-radius:0;height:100%}.cursor-caption{border-top:1px solid var(--line);background:#fff;gap:2px;padding:12px 14px 13px;display:grid}.cursor-title{letter-spacing:-.02em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:500;line-height:1.2;overflow:hidden}.cursor-meta{letter-spacing:.04em;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.cursor-media .art-wordmark{font-size:26px}.cursor-media .art-object>span{font-size:75px}.cursor-media .art-caption{font-size:9px}.cursor-media .art-chatty .art-object>span{font-size:150px}.cursor-label{background:var(--accent);color:#fff;letter-spacing:.02em;width:92px;height:92px;box-shadow:0 10px 28px color-mix(in srgb, var(--accent) 32%, transparent);border:1px solid #fff2;border-radius:50%;place-items:center;font-size:13px;font-weight:500;display:grid;position:absolute;transform:translate(-50%,-50%)}.project-cursor[data-mode=cursor] .cursor-media{opacity:0}.contact-footer{color:var(--paper);isolation:isolate;background:#0c213c;padding-top:80px;position:relative;overflow:hidden}.section-curve{fill:#0c213c;width:100%;height:70px;position:absolute;bottom:calc(100% - 1px);left:0}.contact-heading{justify-content:space-between;align-items:center;display:flex}.contact-heading h2{font-size:clamp(46px,7.3vw,140px);line-height:1.1}.contact-heading h2>span{align-items:center;gap:28px;display:inline-flex}.contact-heading img{object-fit:cover;object-position:50% 20%;border-radius:22px;width:100%;height:100%}.contact-arrow{margin-right:8%;font-size:60px}.contact-rule{border-top:1px solid #ffffff35;justify-content:flex-end;margin:100px 0 70px;padding-right:9%;display:flex;position:relative}.contact-rule>.magnetic{margin-top:-80px}.contact-rule .round-button{width:160px}.contact-actions{flex-wrap:wrap;gap:15px;display:flex}.contact-actions .pill{border-color:#ffffff40}.contact-actions .pill:hover{background:var(--paper);color:var(--ink)}.footer-nav{border-top:1px solid #ffffff1a;flex-wrap:wrap;gap:10px;margin-top:64px;padding-top:28px;font-size:14px;display:flex}.footer-nav a{color:#e5e9dc;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;min-height:44px;padding:12px 18px;transition:background .28s cubic-bezier(.16,1,.3,1),color .28s cubic-bezier(.16,1,.3,1),border-color .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1);display:inline-flex}.footer-nav a:hover,.footer-nav a:focus-visible{color:#fff;background:#ffffff14;border-color:#c7dca829;transform:translateY(-1px)}.footer-bottom{color:#d1d1d3;justify-content:space-between;gap:40px;padding-block:40px 30px;font-size:12px;display:flex}.footer-bottom a{color:var(--paper);align-items:center;min-height:44px;padding:10px 0;display:inline-flex}.inner-page{padding-top:180px;padding-bottom:150px}.page-heading{margin-bottom:90px}.page-heading .heading-note{max-width:64ch;margin-top:35px;margin-left:0;font-size:16px;line-height:1.7}.work-toolbar{justify-content:space-between;align-items:center;gap:25px;margin-bottom:55px;display:flex}.filters{flex-wrap:wrap;gap:10px;display:flex}.filters button{border:1px solid var(--line);border-radius:100px;min-height:44px;padding:18px 27px;font-size:14px;transition:background .25s,color .25s,border-color .25s}.filters button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.filters button[aria-pressed=true]{color:var(--paper);background:var(--ink);border-color:var(--ink)}.filters button:hover{border-color:var(--ink)}.view-controls{gap:10px;display:flex}.view-controls button{border:1px solid var(--line);border-radius:50%;width:54px;height:54px;font-size:22px}.view-controls button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.grid.project-collection{grid-template-columns:1fr 1fr;gap:65px 35px;display:grid}.grid .work-columns{display:none}.grid .project-entry{background:#fff;border:1px solid #0c213c1a;border-radius:22px;grid-template-columns:1fr auto;align-items:end;padding:22px;transition:transform .45s cubic-bezier(.4,0,.2,1),box-shadow .45s,border-color .35s}.grid .project-entry:hover{border-color:var(--accent);transform:translateY(-7px);box-shadow:0 18px 36px #173b381f}.grid .project-thumbnail{background:#0c213c;border:1px solid #0c213c1a;border-radius:22px;grid-column:1/-1;margin-bottom:22px;display:block;overflow:hidden}.grid .project-art{transition:transform .7s var(--ease);border-radius:22px}.grid .project-entry:hover .project-art{transform:scale(1.045)rotate(.6deg)}.grid .project-title h3{font-size:clamp(28px,3.5vw,52px)}.grid .project-category{grid-area:2/2;font-size:15px}.grid .project-arrow{display:none}.about-intro{grid-template-columns:1fr 1fr;align-items:start;gap:10%;display:grid}.about-photo{aspect-ratio:.8;background:#091a33;border:1.5px solid #c7dca833;border-radius:22px;min-height:650px;position:relative;overflow:hidden;box-shadow:0 22px 64px #00000052,inset 0 1px #ffffff12}.about-photo img{object-fit:cover;object-position:50% center;filter:saturate(1.08)contrast(1.07);border-radius:22px 22px 0 0}.about-intro h2{margin-bottom:30px;font-size:clamp(32px,3.2vw,60px)}.about-intro p{color:var(--muted);margin-bottom:22px;font-size:17px}.about-intro .resume-links{margin-top:35px}.experience-section{margin-top:150px}.experience-section>h2{margin-bottom:55px}.experience-row{background:#fff;border:1px solid #c8d1dfa6;border-radius:22px;grid-template-columns:1fr 2fr;gap:30px;margin-bottom:18px;padding:32px;transition:transform .45s cubic-bezier(.4,0,.2,1),box-shadow .45s,border-color .35s;display:grid;box-shadow:0 2px 10px #0c213c0d}.experience-row:hover{border-color:color-mix(in srgb, var(--accent) 16%, transparent);transform:translateY(-4px);box-shadow:0 24px 55px #15263c29}.experience-row>p{font-size:21px}.experience-row>p>span{color:var(--muted);font-size:13px}.experience-row h3{font-size:var(--text-h3);margin-bottom:20px}.experience-row div>p{color:var(--muted);max-width:650px}.skills-section,.education-section{grid-template-columns:1fr 1.1fr;gap:12%;margin-top:130px;display:grid}.skill-row{background:#fff;border:1px solid #c8d1dfa6;border-radius:22px;margin-bottom:14px;padding:24px;transition:transform .45s cubic-bezier(.4,0,.2,1),box-shadow .45s,border-color .35s;box-shadow:0 2px 10px #0c213c0d}.skill-row:hover{border-color:color-mix(in srgb, var(--accent) 16%, transparent);transform:translateY(-4px);box-shadow:0 24px 55px #15263c29}.skill-row h3{margin-bottom:12px;font-size:23px}.skill-row p{color:var(--muted)}.education-section h3{margin-bottom:10px;font-size:22px}.education-section p,.education-section ul{color:var(--muted);margin-bottom:30px}.education-section ul{padding-left:20px}.education-section li{margin-bottom:10px}.case-page .inner-page{padding-bottom:55px}.case-page .page-heading{margin-bottom:55px}.case-page .page-heading h1{margin-top:50px;font-size:clamp(40px,4.6vw,64px)}.case-tagline{font-size:var(--text-lead);margin-top:25px}.case-meta{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:30px;padding-top:30px;display:grid}.case-meta>div>span{color:var(--muted);font-size:12px}.case-meta p{margin-top:10px;font-size:15px}.case-visual{margin-inline:3vw}.case-visual .project-art{aspect-ratio:1.8;border:1px solid #0c213c1a;border-radius:22px;max-height:1000px;padding:5% 8%;overflow:hidden}.case-visual .art-wordmark{font-size:clamp(32px,5vw,90px)}.case-visual .art-object{width:26%}.case-story{padding-block:110px 150px}.story-intro{grid-template-columns:1fr 2fr;gap:30px;display:grid}.story-intro h2{font-size:clamp(32px,3.5vw,65px)}.story-grid{grid-template-columns:1fr 1.2fr;gap:12%;margin-top:120px;display:grid}.story-grid>h2{font-size:clamp(32px,3vw,54px)}.story-grid section{margin-bottom:38px}.story-grid h3{margin-bottom:16px;font-size:24px}.story-grid p,.story-grid ul{color:var(--muted);line-height:1.75}.story-grid ul{padding-left:20px}.case-note{border-top:1px solid var(--line);padding-top:25px;font-size:15px}.next-project{padding:90px var(--gutter);color:var(--paper);text-align:center;background:#0c213c}.next-project>p{margin-inline:auto;font-size:14px}.next-project h2{padding:35px 0;font-size:clamp(38px,6vw,84px)}.next-project h2>span{font-size:.6em}.next-art{width:35%;max-width:550px;margin:0 auto 45px}.next-art .art-wordmark{font-size:25px}.next-art .art-object>span{font-size:70px}.next-art .art-chatty .art-object>span{font-size:130px}.next-art .art-caption{font-size:9px}.contact-page{min-height:100svh}.contact-page-grid{grid-template-columns:1fr 230px;gap:80px;display:grid}.contact-page-grid>div>p{font-size:25px}.contact-email{letter-spacing:-.04em;border-bottom:1px solid var(--line);overflow-wrap:anywhere;align-items:center;gap:25px;min-height:44px;padding:30px 0;font-size:clamp(19px,2.8vw,48px);transition:transform .32s cubic-bezier(.16,1,.3,1);display:flex}.contact-email:hover{color:var(--accent);transform:translateY(-1px)}.contact-email:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.contact-email span{margin-left:auto}.contact-page .resume-links{margin-top:40px}.contact-page aside{background:#fff;border:1px solid #c8d1dfa6;border-radius:22px;padding:24px;box-shadow:0 2px 10px #0c213c0d}.contact-page aside img{object-fit:cover;object-position:50% 25%;border-radius:22px;width:120px;height:120px;margin-bottom:30px}.contact-page aside h2{color:var(--muted);letter-spacing:0;margin-block:25px 12px;font-size:14px}.contact-signoff{color:var(--muted);margin-top:100px;font-size:16px}.not-found{min-height:100svh}.not-found>p{margin-block:25px}.not-found .pill{margin-block:35px;margin-right:25px}.route-loading{background:var(--paper);place-items:center;min-height:60vh;padding:150px 30px;display:grid}.route-loading .mark{animation:mark-pulse 1.6s var(--ease) infinite;font-size:42px}@keyframes mark-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(.98)}}@media (min-width:1920px){.hero-role{left:max(var(--gutter), calc((100vw - 1900px) / 2))}.hero-portrait{width:48%;left:35%}.hero-side{right:5%}}@media (max-width:1024px){.hero{min-height:680px}.hero-portrait{width:64%;left:30%}.hero-role{width:38%;top:29%}.hero-role h1{font-size:38px}.hero-side{display:none}.hero-topline>span:last-child{color:var(--ink)}.intro{grid-template-columns:1.3fr 1fr;gap:7%}.intro-aside{padding-top:50px}.intro-step{grid-template-columns:36px 1fr;align-items:start;gap:8px 18px}.intro-step p{grid-column:2}.about-intro{gap:7%}.about-photo{min-height:550px}.case-meta{grid-template-columns:1fr 1fr}.contact-page-grid{grid-template-columns:1fr 170px;gap:45px}.project-cursor{display:none}}@media (max-width:700px){:root{--gutter:24px}.site-header{gap:16px;padding:22px 24px}.wordmark{gap:12px;font-size:12px}.mark{font-size:28px}.desktop-nav{display:none}.site-header>.magnetic{margin-left:auto}.hero{min-height:720px;max-height:950px}.hero-portrait{width:100%;top:25%;bottom:0;left:0}.portrait-image{object-position:51% 20%;object-fit:cover}.hero-topline{top:100px;left:24px;right:24px}.hero-topline>span:last-child{writing-mode:initial;gap:7px;font-size:11px}.tiny-globe{font-size:18px}.hero-role{align-items:flex-start;gap:28px;width:90%;display:flex;top:148px;left:24px}.hero-role h1{font-size:clamp(32px,7.5vw,48px)}.hero-role .direction-arrow{order:2;margin-left:auto;margin-right:5px;font-size:40px}.hero-role p{display:none}.hero-bottom{color:#fff;font-size:11px;bottom:25px;left:24px;right:24px}.hero:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0008);height:85px;position:absolute;bottom:0;left:0;right:0}.hero-bottom{z-index:4}.intro{padding-block:90px;display:block}.intro h2{font-size:clamp(38px,8vw,56px)}.intro-lead{margin-top:20px;font-size:15px}.intro-ladder{margin-top:40px}.intro-step{padding:20px 0}.intro-step p{font-size:14px}.intro-aside{padding-top:40px}.intro-bio{max-width:none;font-size:16px}.intro-meta{margin-top:28px}.intro-aside .magnetic{margin-top:32px}.intro .round-button{gap:8px;width:115px;font-size:13px}.section-heading{gap:20px;margin-bottom:30px}.section-heading .utility{text-align:right;max-width:130px;font-size:11px}.featured{padding-bottom:110px}.work-columns{display:none}.project-collection.list{gap:40px;display:grid}.list .project-entry{border:0;grid-template-columns:1fr auto;padding:0}.list .project-thumbnail{grid-column:1/-1;margin-bottom:20px;display:block}.project-title h3,.grid .project-title h3{font-size:32px}.project-context{font-size:11px}.project-category{grid-column:1;margin-top:12px;font-size:12px}.project-arrow{grid-area:2/2;font-size:25px}.project-entry:hover{padding-inline:0}.art-wordmark{font-size:30px}.art-object>span{font-size:90px}.art-suchana-ai .art-object>span{font-size:70px}.art-chatty .art-object>span{font-size:155px}.art-certfy .art-object>span{font-size:75px}.art-caption{font-size:10px}.more-work,.contact-footer{padding-top:40px}.section-curve{height:40px}.contact-heading h2{font-size:clamp(40px,9vw,63px)}.contact-heading h2>span{gap:15px}.contact-heading img{width:48px;height:48px}.contact-arrow{display:none}.contact-rule{margin:80px 0 40px;padding-right:4%}.contact-rule .round-button{width:125px;font-size:13px}.contact-rule>.magnetic{margin-top:-62px}.contact-actions{flex-direction:column;align-items:flex-start}.contact-actions .pill{overflow-wrap:anywhere;max-width:100%;padding:18px 21px;font-size:12px}.footer-nav{gap:18px;margin-top:44px;font-size:13px}.footer-bottom{flex-wrap:wrap;gap:20px;padding-top:28px;font-size:10px}.footer-bottom>span:nth-child(2){display:none}.inner-page{padding-top:145px;padding-bottom:110px}.page-heading{margin-bottom:55px}.page-heading h1{font-size:clamp(48px,10vw,72px)}.page-heading .heading-note{margin-left:0;font-size:14px}.work-toolbar{flex-wrap:wrap;gap:22px;margin-bottom:35px}.filters{gap:7px}.filters button{padding:13px 20px;font-size:16px}.view-controls{margin-left:auto}.view-controls button{width:44px;height:44px;font-size:18px}.grid.project-collection{grid-template-columns:1fr;gap:40px}.grid .project-category{margin:0}.about-intro{grid-template-columns:1fr;gap:45px}.about-photo{aspect-ratio:.9;min-height:0}.about-intro .direction-arrow{margin-bottom:25px;font-size:50px}.about-intro h2{font-size:36px}.about-intro p{font-size:16px}.experience-section{margin-top:90px}.experience-section>h2{margin-bottom:35px;font-size:35px}.experience-row{grid-template-columns:1fr;gap:25px;padding-block:30px}.experience-row>p{font-size:18px}.experience-row>p>span{display:inline-block}.experience-row h3{font-size:29px}.skills-section,.education-section{grid-template-columns:1fr;gap:40px;margin-top:80px}.skills-section h2,.education-section h2{font-size:36px}.case-page .page-heading h1{font-size:clamp(55px,13vw,88px)}.case-tagline{font-size:23px}.case-meta{gap:25px}.case-meta p{font-size:13px}.case-meta .pill{padding:16px 20px;font-size:13px}.case-visual{margin-inline:0}.case-visual .project-art{aspect-ratio:1.2;padding:8%}.case-visual .art-object{width:36%}.case-story{padding-block:65px 90px}.story-intro{grid-template-columns:1fr;gap:0}.story-intro h2{font-size:32px}.story-grid{grid-template-columns:1fr;gap:40px;margin-top:65px}.story-grid>h2{font-size:30px}.next-project{padding-block:65px}.next-art{width:85%}.contact-page-grid{grid-template-columns:1fr;gap:65px}.contact-page-grid>div>p{font-size:22px}.contact-email{gap:10px;font-size:clamp(18px,4.8vw,29px)}.contact-page aside{grid-template-columns:90px 1fr;align-items:start;column-gap:28px;display:grid}.contact-page aside img{grid-row:1/5;width:90px;height:90px}.contact-page aside h2{margin-top:0}.contact-page aside p{grid-column:2}.contact-signoff{margin-top:70px}.navigation-drawer{width:90vw;padding-top:95px}.drawer-link{font-size:clamp(45px,11vw,65px)}.drawer-bottom{margin-top:15px;font-size:13px}.resume-links{gap:24px}.pill{padding:18px 25px}.project-cursor{display:none}}[data-flow=calm]{scroll-behavior:auto}@media (hover:none){.project-cursor{display:none}.magnetic{transform:none!important}}.site-header .desktop-nav{padding-right:120px}.menu-dock{z-index:var(--z-header);align-items:center;gap:6px;margin:0;display:flex;position:fixed;top:28px;right:3.3vw}.menu-dock .menu-trigger{border-radius:50%;transition:background .4s,color .4s,box-shadow .4s}.menu-dock.is-scrolled .menu-trigger{background:var(--ink);color:var(--paper);box-shadow:0 0 0 10px var(--ink)}.menu-dock.is-scrolled .menu-trigger:hover{background:var(--accent);box-shadow:0 0 0 10px var(--accent)}.round-button{isolation:isolate;overflow:hidden}.round-button:before{content:"";z-index:-1;background:var(--accent);height:140%;transition:transform .65s var(--ease);border-radius:50%;position:absolute;top:-20%;left:-15%;right:-15%;transform:translateY(105%)}.round-button:hover:before{transform:translateY(0)}.round-button.accent:before{background:#3f5c36}@media (hover:hover){.project-collection.list:has(.project-entry:hover) .project-entry:not(:hover){color:#707078}.project-entry:hover .project-title{transform:translate(8px)}.project-title{transition:transform .45s var(--ease)}}@media (max-width:700px){.menu-dock{top:22px;right:24px}}body{font-size:18px}.utility,.section-label{font-size:15px}.wordmark,.desktop-nav{font-size:16px}.hero-topline{font-size:15px}.hero-role p{font-size:17px;line-height:1.6}.hero-side{font-size:14px}.hero-bottom{font-size:15px}.pill,.round-button,.text-link,.project-category{font-size:17px}.project-context{font-size:15px}.filters button{font-size:16px}.grid .project-category{font-size:15px}.about-intro p,.experience-row div>p,.skill-row p,.education-section p,.education-section ul,.story-grid p,.story-grid ul{font-size:18px;line-height:1.75}.experience-row>p>span,.case-meta>div>span{font-size:15px}.case-meta p{font-size:17px}.case-note{font-size:15px!important}.footer-bottom,.drawer-bottom,.contact-signoff{font-size:14px}.cursor-label{font-size:16px}.heading-note{font-size:18px!important}@media (max-width:700px){.wordmark,.hero-topline{font-size:14px}.hero-topline>span:last-child,.hero-bottom{font-size:13px}.intro-bio{font-size:17px}.intro-aside>.magnetic{margin-top:32px}.intro .round-button{width:140px;font-size:16px}.section-heading .utility{font-size:13px}.project-context,.project-category,.grid .project-category{font-size:15px}.filters button{padding:13px 20px;font-size:16px}.contact-actions .pill{font-size:14px}.contact-rule .round-button{width:140px;font-size:15px}.contact-rule>.magnetic{margin-top:-70px}.case-meta p,.case-meta .pill{font-size:15px}.footer-bottom{font-size:12px}.contact-page .resume-links .text-link{font-size:16px}}.hero,.site-header.on-hero{color:var(--paper)}.hero-topline>span:last-child{color:inherit}.project-screenshot{background:#0c213c}.project-screenshot img{object-fit:cover;object-position:top}.case-visual .project-screenshot{aspect-ratio:1.44;max-height:none}.project-gallery{margin:85px 0 0}.project-gallery img{border:1px solid #0c213c1a;border-radius:22px;width:100%;height:auto}.project-gallery figcaption{color:var(--muted);margin-top:18px;font-size:15px}.story-grid li{margin-bottom:12px}.round-button:hover{background:var(--ink)}.round-button.accent:hover{background:var(--accent)}@media (min-width:701px){.hero-portrait{top:96px}}@media (max-width:700px){.hero-bottom a{white-space:nowrap;gap:15px}}.hero-identity{left:var(--gutter);right:var(--gutter);z-index:3;position:absolute;bottom:11%}.hero-name{letter-spacing:-.065em;color:var(--paper);text-shadow:0 2px 24px #0002;margin:0;font-size:clamp(60px,10.8vw,260px);font-weight:400;line-height:1.08}.round-button{isolation:isolate;contain:paint;flex-shrink:0;position:relative;overflow:hidden}.round-button:before{pointer-events:none;display:none}@media (hover:hover) and (pointer:fine){[data-flow=full] .round-button:before{display:block}}@media (hover:none),(pointer:coarse){.round-button:before,.round-button:after{display:none!important}.round-button:hover{background:var(--ink)}.round-button.accent:hover,.round-button:active{background:var(--accent)}.magnetic,.magnetic>a,.magnetic>button{transform:none!important}}@media (max-width:700px){.hero-identity{bottom:13%;left:24px;right:24px}.hero-name{letter-spacing:-.055em;font-size:clamp(48px,18vw,126px);line-height:.96}.hero-bottom{gap:20px}}.curtain-trail{z-index:calc(var(--z-transition) - 1)}.curtain-trail svg{fill:var(--accent)}.curtain-trail>span{display:none}.split-line{will-change:transform}.motion-toggle{width:44px;height:44px;color:inherit;border-radius:50%;place-items:center;font-size:19px;line-height:1;transition:background .4s,color .4s,box-shadow .4s;display:grid}.motion-toggle:hover{color:var(--accent)}.menu-dock.is-scrolled .motion-toggle{background:var(--ink);color:var(--paper);box-shadow:0 0 0 6px var(--ink)}[data-flow=calm] .magnetic,[data-flow=calm] .magnetic>a,[data-flow=calm] .magnetic>button{transform:none!important}[data-flow=calm] .round-button:before{display:none!important}[data-flow=calm] .round-button:hover{background:var(--accent)}[data-flow=calm] .round-button.accent:hover{background:#3f5c36}[data-flow=calm] .desktop-nav a:after{opacity:0;transition:opacity .3s;transform:scale(1)}[data-flow=calm] .desktop-nav a:hover:after,[data-flow=calm] .desktop-nav a[aria-current]:after{opacity:1}[data-flow=calm] .project-entry{transition:color .3s}[data-flow=calm] .project-entry:hover{padding-inline:25px}[data-flow=calm] .project-entry:hover .project-title,[data-flow=calm] .project-entry:hover .project-arrow,[data-flow=calm] .grid .project-entry:hover .project-art{transform:none}[data-flow=calm] .project-collection{animation:collection-fade .3s var(--ease)}[data-flow=calm] .curtain-trail{display:none}@keyframes collection-fade{0%{opacity:.4}to{opacity:1}}.article-page{padding:160px var(--gutter) 80px}.article-shell{max-width:1120px;margin:0 auto}.article-breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:64px;font-size:15px;display:flex}.article-breadcrumb a{align-items:center;min-height:44px;display:inline-flex}.article-breadcrumb [aria-current]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.article-breadcrumb a{flex-shrink:0}.article-breadcrumb a:hover{color:var(--accent)}.article-heading{max-width:940px}.article-tags{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.article-tags span{border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:13px}.article-heading h1{letter-spacing:-.05em;text-wrap:balance;overflow-wrap:anywhere;margin:0;font-size:clamp(40px,5.5vw,76px);font-weight:400;line-height:1.07}.article-deck{max-width:740px;color:var(--muted);margin:28px 0 36px;font-size:clamp(19px,2vw,24px);line-height:1.55}.article-meta{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:24px 36px;padding:24px 0;font-size:14px;display:flex}.article-byline{align-items:center;gap:12px;display:flex}.article-byline strong{font-weight:500}.article-byline div,.article-date{gap:3px;display:grid}.article-byline div>span,.article-date{color:var(--muted)}.article-avatar{background:var(--ink);width:44px;height:44px;color:var(--paper);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;display:grid}.article-meta .text-link{font-size:14px}.article-cover{margin:24px 0 72px}.article-cover>div{aspect-ratio:2;background:#0c213c;border:1.5px solid #c7dca833;border-radius:22px;position:relative;overflow:hidden;box-shadow:0 22px 64px #0c213c38,inset 0 1px #ffffff12}.article-cover img{border-radius:22px}.article-page figcaption{color:var(--muted);margin-top:12px;font-size:15px;line-height:1.6}.article-body-layout{grid-template-columns:210px minmax(0,1fr);align-items:start;gap:70px;display:grid}.article-sidebar{color:var(--muted);font-size:14px;position:sticky;top:112px}.article-sidebar nav>p,.article-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);align-items:center;gap:12px;margin:0 0 20px;font-size:12px;font-weight:600;display:flex}.article-sidebar nav>p:before,.article-eyebrow:before{content:"";background:linear-gradient(90deg, var(--accent), var(--highlight));border-radius:999px;flex-shrink:0;width:28px;height:2px}.article-sidebar ol{border-left:1px solid var(--line);margin:0 0 36px;padding:0;list-style:none}.article-sidebar li a{border-left:2px solid #0000;align-items:center;min-height:44px;margin-left:-1px;padding:10px 0 10px 16px;font-size:15px;line-height:1.5;display:flex}.article-sidebar li a:hover,.article-sidebar li a[aria-current=true]{color:var(--accent);border-left-color:var(--accent);background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 8%, transparent), transparent)}.article-sidebar .subheading{padding-left:28px;font-size:14px}.article-sidebar .text-link{font-size:15px}.article-reading{min-width:0}.blog-prose{color:var(--ink);overflow-wrap:anywhere;max-width:68ch;font-size:19px;line-height:1.85}.blog-prose>:first-child{margin-top:0}.blog-prose h1,.blog-prose h2,.blog-prose h3{letter-spacing:-.025em;margin:2em 0 .7em;scroll-margin-top:110px;font-weight:500;line-height:1.25}.blog-prose h1{font-size:36px}.blog-prose h2{font-size:30px}.blog-prose h3{font-size:24px}.blog-prose p{margin:0 0 1.3em}.blog-prose ul,.blog-prose ol{margin:1.2em 0;padding-left:1.4em}.blog-prose li{margin:.45em 0}.blog-prose a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.blog-prose blockquote{border-left:3px solid var(--accent);background:#c7dca81a;border-radius:0 22px 22px 0;margin:1.5em 0;padding:16px 24px}.blog-prose pre{color:#f4f3ee;overflow-wrap:normal;background:#0c213c;border:1px solid #c7dca833;border-radius:22px;max-width:100%;margin:1.6em 0;padding:24px;font-size:16px;line-height:1.7;overflow-x:auto;box-shadow:0 22px 64px #0c213c38}.blog-prose code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.87em}.blog-prose :not(pre)>code{border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);background:#c7dca81f;border-radius:8px;padding:.15em .35em}.blog-prose img,.article-image img{border:1px solid #0c213c1a;border-radius:22px;width:100%;max-width:100%;height:auto;display:block}.blog-prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}.article-image{margin:32px 0}.article-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.article-author{background:#fff;border:1px solid #c8d1dfa6;border-radius:22px;gap:20px;margin-top:56px;padding:24px;display:flex;box-shadow:0 2px 10px #0c213c0d}.article-author h2{margin:0 0 12px;font-size:24px;font-weight:500}.article-author p{color:var(--muted);font-size:16px;line-height:1.7}.article-author .article-eyebrow{margin:0 0 8px;font-size:12px}.article-next{background:#fff;border:1px solid #c8d1dfa6;border-radius:22px;margin-top:80px;padding:24px;box-shadow:0 2px 10px #0c213c0d}.article-next h2{letter-spacing:-.06em;font-size:clamp(40px,4.6vw,64px);font-weight:450;line-height:1.1}.article-next a:hover{color:var(--accent)}@media (max-width:800px){.article-page{padding-top:128px}.article-breadcrumb{margin-bottom:40px}.article-body-layout{grid-template-columns:1fr;gap:32px}.article-sidebar{position:static}.article-sidebar nav{border-bottom:1px solid var(--line);padding-bottom:16px}.article-sidebar ol{margin-bottom:0}.article-sidebar>.text-link{display:none}.article-cover{margin-bottom:40px}.article-cover>div{aspect-ratio:16/10}.blog-prose{font-size:18px}.article-meta{gap:20px}.article-gallery{grid-template-columns:1fr}}.hero-topline-role{letter-spacing:.02em;align-items:center;gap:8px;font-size:13px;display:inline-flex}.live-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;animation:1.8s ease-in-out infinite live-pulse;box-shadow:0 0 0 6px #22c55e2e}@keyframes live-pulse{0%,to{box-shadow:0 0 0 6px #22c55e2e}50%{box-shadow:0 0 0 10px #22c55e14}}.hero-title-line.strong{letter-spacing:-.06em;font-weight:600}.hero-title-line.accent{color:var(--highlight);text-shadow:0 1px #0000001f;font-style:italic;font-weight:400}.hero-copy{max-width:38ch;color:color-mix(in srgb, var(--paper) 92%, transparent)!important;margin-top:18px!important;font-size:17px!important;line-height:1.6!important}.hero-inline-link{text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--highlight);text-decoration-color:var(--highlight);font-weight:600}.hero-inline-link:hover{color:var(--highlight)}.hero-pills{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.hero-pill{letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff30;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;display:inline-flex}.hero-pill.live{background:var(--paper);color:var(--ink);border-color:var(--paper);font-weight:600}.hero-pill-dot{background:var(--stamp);border-radius:50%;width:6px;height:6px;animation:1.6s ease-in-out infinite live-pulse}.intro-accent{color:var(--accent);font-style:italic;font-weight:500}.stats-ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 var(--gutter);grid-template-columns:repeat(4,1fr);gap:0;max-width:1900px;display:grid}@media (min-width:1900px){.stats-ribbon{margin-inline:auto}}.stat{padding:var(--space-4) var(--space-3);gap:var(--space-1);border-right:1px solid var(--line);display:grid}.stat:last-child{border-right:0}.stat-value{letter-spacing:-.04em;align-items:baseline;gap:var(--space-1);font-size:clamp(28px,2.8vw,42px);font-weight:600;line-height:1;display:flex}.stat-value em{font-style:normal;font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:400}.stat-label{font-size:var(--text-label);color:var(--muted);line-height:1.5}.stat.live .stat-value em{color:var(--accent)}@media (max-width:800px){.stats-ribbon{grid-template-columns:1fr 1fr}.stat{border-bottom:1px solid var(--line)}.stat:nth-child(2){border-right:0}.stat:nth-child(3),.stat:nth-child(4){border-bottom:0}}@media (max-width:700px){.hero-topline-role{padding:5px 10px;font-size:11px}.hero-pills{margin-top:14px}.hero-pill{padding:6px 10px;font-size:10px}.intro-meta>div{grid-template-columns:82px 1fr;gap:12px}}.hero-role{width:26%}.hero-role h1{letter-spacing:-.055em;font-size:clamp(30px,2.9vw,58px);font-weight:400;line-height:1.12}.hero-role .direction-arrow{margin-bottom:22px}.hero-role .hero-copy{max-width:33ch;font-size:clamp(16px,1.15vw,20px)!important}@media (min-width:701px) and (max-width:1100px){.hero-portrait{width:58%;left:42%}.hero-role{width:33%;top:27%}.hero-role h1{font-size:clamp(28px,3.4vw,38px)}}@media (max-width:700px){.hero{min-height:820px}.hero-topline{flex-wrap:wrap;gap:14px;top:108px}.hero-topline-role{font-size:12px}.hero-role{width:auto;display:block;top:160px;left:24px;right:24px}.hero-role h1{font-size:clamp(30px,7.5vw,48px)}.hero-role .direction-arrow{display:none}.hero-portrait{top:280px}.hero-portrait:after{background:linear-gradient(#0000 40%,#1118)}.hero-identity{bottom:90px}.hero-name{overflow-wrap:anywhere;max-width:100%}}.blog-engagement,.blog-engagement-summary,.blog-engagement-summary>span,.blog-engagement-views,.blog-like-button{align-items:center;gap:8px;display:inline-flex}.blog-engagement{flex-wrap:wrap;gap:16px;font-size:15px}.blog-engagement-summary{color:var(--muted);flex-wrap:wrap;gap:18px;margin-block:10px;font-size:15px;font-weight:400}.blog-engagement-summary svg,.blog-engagement svg{color:var(--accent);flex-shrink:0}.blog-like-button{border:1px solid var(--line);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:12px 20px;font-size:16px;transition:background .3s,color .3s,border-color .3s,transform .3s}.blog-like-button:hover,.blog-like-button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-1px)}.blog-like-button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.blog-like-button:disabled{opacity:.6;cursor:wait}.blog-engagement-muted{color:var(--muted);font-size:14px}.blog-like-error{width:100%;font-size:14px}.site-header{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:0 0;border-bottom:1px solid #0000;gap:28px;padding:18px 3.3vw;transition:background .42s cubic-bezier(.16,1,.3,1),-webkit-backdrop-filter .42s cubic-bezier(.16,1,.3,1),backdrop-filter .42s cubic-bezier(.16,1,.3,1),border-color .42s cubic-bezier(.16,1,.3,1),box-shadow .42s cubic-bezier(.16,1,.3,1)}.site-header.on-hero{color:#eef1f5}.site-header.is-scrolled{color:#eef1e4;-webkit-backdrop-filter:blur(18px)saturate(1.2);background:#0c213c8f;border-bottom-color:#ffffff12;box-shadow:0 8px 32px #00000029,inset 0 1px #ffffff0f}.site-header.is-scrolled.on-hero{color:#eef1f5}.site-header.is-scrolled .wordmark{background:#ffffff0f;border-color:#ffffff1a}.site-header.is-scrolled .desktop-nav a{color:#eef1e4}.wordmark{letter-spacing:-.01em;border:1px solid #0000;border-radius:999px;gap:14px;padding:10px 14px 10px 10px;font-size:15px;font-weight:500;transition:background .36s cubic-bezier(.16,1,.3,1),border-color .36s cubic-bezier(.16,1,.3,1),transform .36s cubic-bezier(.16,1,.3,1);position:relative}.wordmark .mark{letter-spacing:-2.5px;background:var(--paper);width:36px;height:36px;color:var(--deep);border-radius:50%;place-items:center;font-size:30px;line-height:1;transition:background .36s cubic-bezier(.16,1,.3,1),color .36s cubic-bezier(.16,1,.3,1),transform .36s cubic-bezier(.16,1,.3,1);display:grid;box-shadow:0 2px 10px #0000001f,inset 0 1px #fffc}.on-hero .wordmark .mark{color:#0c213c;background:#f4f3ee}.wordmark:hover{background:#0c213c0d;border-color:#0c213c24;transform:translateY(-1px)}.on-hero .wordmark:hover{background:#ffffff0f;border-color:#ffffff24}.wordmark:hover .mark{background:#fff;transform:rotate(-6deg)scale(1.04)}.desktop-nav{letter-spacing:.01em;align-items:center;gap:8px;font-size:15px;font-weight:500}.desktop-nav a{color:#0c213c;opacity:.78;border:1px solid #0000;border-radius:999px;align-items:center;min-height:44px;padding:12px 16px;transition:background .28s cubic-bezier(.16,1,.3,1),color .28s cubic-bezier(.16,1,.3,1),border-color .28s cubic-bezier(.16,1,.3,1),opacity .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1);display:inline-flex}.desktop-nav a:hover{opacity:1;color:#0c213c;border-color:color-mix(in srgb, var(--accent) 25%, transparent);background:#0c213c0f;transform:translateY(-1px)}.on-hero .desktop-nav a{color:#e5e9dc}.on-hero .desktop-nav a:hover{color:#fff;background:#ffffff14;border-color:#c7dca829}.desktop-nav a[aria-current=page]{opacity:1;color:#0c213c;background:#f4f3ee;border-color:#f4f3ee;box-shadow:0 4px 16px #00000024,inset 0 1px #ffffffe6}.desktop-nav a[aria-current=page]:after{display:none}.desktop-nav a:after{background:var(--highlight);width:5px;height:5px;bottom:6px;box-shadow:0 0 10px #c7dca8d9}.menu-dock{align-items:center;gap:8px}.motion-toggle,.menu-trigger{-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);color:#0c213c;background:#ffffffeb;border:1.5px solid #0c213c38;border-radius:50%;place-items:center;width:52px;height:52px;transition:background .32s cubic-bezier(.16,1,.3,1),color .32s cubic-bezier(.16,1,.3,1),border-color .32s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s cubic-bezier(.16,1,.3,1);display:grid;box-shadow:0 4px 20px #0c213c29,inset 0 1px #fffc}.motion-toggle:hover,.menu-trigger:hover{border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:#0c213c;background:#fff;transform:translateY(-1px)scale(1.02);box-shadow:0 8px 24px #0c213c24,0 0 0 1px #c7dca840,inset 0 1px #ffffffb3}.on-hero .motion-toggle,.on-hero .menu-trigger{color:#eef1e4;background:#ffffff0f;border:1px solid #ffffff29;box-shadow:0 4px 16px #00000024,inset 0 1px #ffffff14}.on-hero .motion-toggle:hover,.on-hero .menu-trigger:hover{color:#fff;background:#ffffff1f;border-color:#c7dca847;box-shadow:0 8px 24px #0000002e,0 0 0 1px #c7dca829,inset 0 1px #ffffff1a}.menu-trigger span{background:currentColor;border-radius:999px;width:22px;height:2px;transition:transform .32s cubic-bezier(.16,1,.3,1),opacity .2s}.menu-trigger:hover span:first-child{transform:translateY(-.5px)scaleX(1.06)}.menu-trigger:hover span:last-child{transform:translateY(.5px)scaleX(1.06)}.menu-dock.is-scrolled .motion-toggle,.menu-dock.is-scrolled .menu-trigger{color:#0c213c;background:#fff;border-color:#0c213c14;box-shadow:0 8px 28px #00000038,0 2px 6px #0000001a,inset 0 1px #fff}.menu-dock.is-scrolled .motion-toggle:hover,.menu-dock.is-scrolled .menu-trigger:hover{background:#fff;transform:translateY(-2px)scale(1.05);box-shadow:0 12px 36px #00000047,0 2px 8px #0000001f}.section-label{align-items:center;gap:12px;font-weight:600;display:inline-flex;letter-spacing:.16em!important;color:var(--accent)!important;font-size:12px!important}.section-label:before{content:"";background:linear-gradient(90deg, var(--accent), var(--highlight));width:28px;height:2px;box-shadow:0 0 10px color-mix(in srgb, var(--accent) 35%, transparent);border-radius:999px;flex-shrink:0}.utility{font-weight:500;letter-spacing:.06em!important;color:#556479!important;font-size:13.5px!important}.pill{-webkit-backdrop-filter:blur(8px)saturate(1.08);backdrop-filter:blur(8px)saturate(1.08);background:#ffffffb8;border-color:#c8d1df;transition:background .32s cubic-bezier(.16,1,.3,1),color .32s cubic-bezier(.16,1,.3,1),border-color .32s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 10px #15263c0f,inset 0 1px #ffffffb3}.pill:hover{color:#f4f3ee;background:#15263c;border-color:#15263c;transform:translateY(-1px);box-shadow:0 10px 28px #15263c2e,inset 0 1px #ffffff0f}.section-heading{align-items:end;gap:24px}.section-heading h2{letter-spacing:-.04em;font-weight:500;position:relative}.section-heading h2:after{content:"";background:linear-gradient(90deg, var(--accent), transparent);opacity:.85;border-radius:999px;width:48px;height:2px;position:absolute;bottom:-10px;left:0}.stats-ribbon{-webkit-backdrop-filter:blur(12px)saturate(1.08);backdrop-filter:blur(12px)saturate(1.08);box-shadow:0 12px 40px #15263c14,inset 0 1px #fff9,0 0 0 1px #c8d1df99}.project-entry{border-radius:22px;transition:background .42s cubic-bezier(.16,1,.3,1),color .34s,padding .42s cubic-bezier(.16,1,.3,1),box-shadow .42s cubic-bezier(.16,1,.3,1),transform .42s cubic-bezier(.16,1,.3,1)}.project-entry:hover{box-shadow:0 12px 32px #15263c14, 0 0 0 1px color-mix(in srgb, var(--accent) 7%, transparent);background:#ffffffb8;transform:translateY(-2px)}.project-arrow{background:#f4f3ee;border:1px solid #c8d1df;border-radius:50%;place-items:center;width:44px;height:44px;transition:background .34s cubic-bezier(.16,1,.3,1),color .34s cubic-bezier(.16,1,.3,1),border-color .34s cubic-bezier(.16,1,.3,1),transform .52s cubic-bezier(.16,1,.3,1);display:grid;font-size:16px!important}.project-entry:hover .project-arrow{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 32%, transparent);transform:rotate(45deg)scale(1.06)}.blog-card{box-shadow:0 2px 14px #15263c0f,inset 0 1px #ffffffb3;border:1px solid #c8d1dfa6!important}.blog-card:hover{border-color:color-mix(in srgb, var(--accent) 16%, transparent)!important}.contact-footer{border-top:1px solid #ffffff0f}.contact-footer .pill{color:#eef1e4;-webkit-backdrop-filter:blur(10px)saturate(1.1);backdrop-filter:blur(10px)saturate(1.1);background:#ffffff0f;border-color:#ffffff24}.contact-footer .pill:hover{color:#15263c;background:#f4f3ee;border-color:#f4f3ee}.contact-footer .round-button.accent{color:#0c213c;background:#f4f3ee;border:1px solid #f4f3ee;box-shadow:0 8px 32px #0000002e,inset 0 1px #ffffffe6}.contact-footer .round-button.accent:hover{color:#0c213c;background:#fff;border-color:#fff;transform:translateY(-1px);box-shadow:0 12px 36px #00000038,inset 0 1px #fff}.contact-footer .round-button.accent:before{background:#dfe6d8}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 14%, transparent)}@media (max-width:900px){.site-header{gap:12px;padding:14px 16px}.desktop-nav{display:none!important}.wordmark{max-width:calc(100% - 110px);padding:8px 10px;font-size:14px}.wordmark .mark{flex-shrink:0;width:32px;height:32px;font-size:26px}}@media (max-width:480px){html,body{overflow-x:hidden}.section-shell{padding-inline:16px}.site-header{padding:12px 14px}.wordmark{gap:10px;font-size:13px}.wordmark .mark{width:30px;height:30px;font-size:24px}.menu-dock{gap:6px!important}.motion-toggle,.menu-trigger{width:44px;height:44px}}@media (max-width:360px){.wordmark span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}}@media (prefers-reduced-motion:reduce){.site-header,.wordmark,.desktop-nav a,.motion-toggle,.menu-trigger,.pill,.project-entry,.project-arrow,.project-cursor,.about-intro,.about-photo,.experience-row,.skill-row,.contact-page-grid,.contact-email,.article-cover>div,.article-author,.article-next,.blog-like-button,.footer-nav a,.navigation-drawer,[data-project-art]{transition:none!important;animation:none!important}.project-cursor{display:none}.project-entry:hover,.experience-row:hover,.skill-row:hover,.grid .project-entry:hover{transform:none}}.inner-page .page-heading h1{font-size:clamp(40px,4.6vw,64px)}@media (max-width:900px){.about-intro{grid-template-columns:1fr;gap:45px}.contact-page-grid{grid-template-columns:1fr;gap:48px}.work-toolbar{flex-wrap:wrap}.article-body-layout{grid-template-columns:180px minmax(0,1fr);gap:32px}}@media (max-width:760px){.about-intro,.contact-page-grid{grid-template-columns:1fr}}@media (max-width:600px){.article-meta{gap:16px}.blog-prose pre{padding:16px;font-size:14px}}@media (max-width:480px){.about-intro h2{font-size:32px}.experience-row h3,.skills-section h2,.education-section h2{font-size:24px}.contact-page aside{grid-template-columns:64px 1fr;column-gap:16px}.contact-page aside img{width:64px;height:64px}.contact-footer h2,.contact-heading h2{font-size:clamp(34px,10vw,48px)}.footer-bottom{font-size:12px}.article-breadcrumb{font-size:14px}.article-page .article-heading h1,.blog-prose h1{font-size:clamp(32px,9vw,48px)}.blog-prose{font-size:17px;line-height:1.75}.blog-prose h2{font-size:26px}.blog-prose h3{font-size:22px}.case-page .case-meta{grid-template-columns:1fr}.filters{width:100%}.navigation-drawer{padding:88px 24px 32px}.drawer-link{font-size:40px}.drawer-close{width:48px;height:48px}}@media (max-width:360px){.about-photo{aspect-ratio:1}.contact-email{font-size:17px}.footer-bottom{font-size:11px}.article-author{flex-wrap:wrap}.case-page .page-heading h1{font-size:34px}}[data-flow=calm] .about-photo,[data-flow=calm] .experience-row,[data-flow=calm] .skill-row,[data-flow=calm] .contact-email,[data-flow=calm] .footer-nav a,[data-flow=calm] .article-cover>div,[data-flow=calm] .article-author,[data-flow=calm] .article-next,[data-flow=calm] [data-project-art]{transform:none!important}[data-flow=calm] .experience-row,[data-flow=calm] .skill-row{transition:opacity .3s,background .3s,border-color .3s}
