@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.tAWYxG_className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.tAWYxG_variable{--font-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b12e986493c137cf-s.2njitm-prmz2_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/36363bfb06833f56-s.p.38hmww4cj4vme.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2fa3ef4ca165ab4-s.12_ml6bnugnre.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a73419dd2ba2d841-s.p.2yee423r7ahpo.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono Fallback;src:local(Arial);ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.0%;size-adjust:134.59%}.bhJS8W_className{font-family:DM Mono,DM Mono Fallback;font-style:normal}.bhJS8W_variable{--font-mono:"DM Mono", "DM Mono Fallback"}
@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(../media/c9433fdb42d70a8b-s.07_zwqxirykxc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(../media/5404ad36fe545c13-s.2_s_bfgs8muyi.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(../media/1493ac29dadca312-s.1eklu07vqj9ax.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(../media/0b73524ab1e8d7fc-s.p.2-xp52nt0loub.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Fallback;src:local(Times New Roman);ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.0%;size-adjust:111.26%}.Za8m0W_className{font-family:Playfair Display,Playfair Display Fallback;font-style:italic;font-weight:500}.Za8m0W_variable{--font-serif:"Playfair Display", "Playfair Display Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f3f1eb;--ink:#1b1b18;--muted:#77766f;--line:#d7d4ca;--accent:#d8fa64;--header-glass:#f3f1ebc7;--mono:var(--font-mono), "Courier New", monospace;--sans:var(--font-sans), Arial, sans-serif;--serif:var(--font-serif), Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}.scroll-progress{z-index:20;background:var(--accent);pointer-events:none;width:100%;height:3px;transform:scaleX(var(--scroll-progress,0));transform-origin:0;position:fixed;inset:0 auto auto 0}.whatsapp-button{z-index:9;color:#fff;-webkit-backdrop-filter:blur(14px)saturate(150%);backdrop-filter:blur(14px)saturate(150%);background:#0c0d0f6b;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:10px;min-height:52px;padding:0 19px;font-size:13px;font-weight:600;transition:background .18s,box-shadow .18s,transform .18s;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:inset 0 1px #ffffff1a}.whatsapp-button:hover{background:#25d36638;transform:translateY(-3px);box-shadow:inset 0 1px #ffffff24,0 12px 28px #00000042}.whatsapp-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.whatsapp-button svg{color:#25d366;filter:drop-shadow(0 1px 3px #00000073);flex:none;width:23px;height:23px}.website-guide{z-index:18;position:fixed;bottom:88px;right:24px}.guide-toggle{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(14px)saturate(150%);backdrop-filter:blur(14px)saturate(150%);background:#0c0d0f6b;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:10px;min-height:52px;padding:0 18px;font-size:12px;font-weight:600;transition:background .18s,box-shadow .18s,transform .18s;display:inline-flex;box-shadow:inset 0 1px #ffffff1a}.guide-toggle>svg{width:21px;height:21px;color:var(--accent);filter:drop-shadow(0 1px 3px #00000073);flex:none}.guide-toggle:hover{background:#d8fa642e;transform:translateY(-2px);box-shadow:inset 0 1px #ffffff24,0 12px 28px #00000042}.guide-toggle:focus-visible,.guide-close:focus-visible,.guide-form button:focus-visible{outline-offset:3px;outline:2px solid #728541}.guide-toggle svg{width:21px;height:21px}.guide-panel{border:1px solid var(--line);background:var(--paper);width:min(370px,100vw - 32px);max-height:min(560px,100dvh - 180px);color:var(--ink);flex-direction:column;padding:19px;display:flex;position:absolute;bottom:64px;right:0;box-shadow:0 18px 60px #1b1b1838}.guide-panel[hidden]{display:none}.guide-header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.guide-status{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;align-items:center;gap:7px;font-size:8px;display:flex}.guide-status i{background:#5a8a35;border-radius:50%;width:7px;height:7px}.guide-header h2{letter-spacing:-.04em;margin:9px 0 0;font-size:21px;font-weight:500}.guide-close{border:1px solid var(--line);width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;font-size:20px;display:grid}.guide-description,.guide-privacy{color:var(--muted);margin:10px 0;font-size:10px;line-height:1.6}.guide-messages{overscroll-behavior:contain;flex-direction:column;flex:auto;gap:10px;min-height:120px;padding:13px 2px;display:flex;overflow-y:auto}.guide-message{overflow-wrap:anywhere;white-space:pre-wrap;border-radius:12px;max-width:88%;margin:0;padding:10px 12px;font-size:12px;line-height:1.6}.guide-message-assistant{background:color-mix(in srgb, var(--line) 45%, transparent);align-self:flex-start}.guide-message-user{background:var(--ink);color:var(--paper);align-self:flex-end}.guide-error{color:#a3392e;margin:0 0 8px;font-size:10px;line-height:1.5}.guide-form{border-top:1px solid var(--line);gap:8px;padding-top:11px;display:flex}.guide-form input{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border-radius:6px;padding:10px 11px;font-size:12px}.guide-form input:focus{border-color:var(--ink);outline:2px solid #0000}.guide-form button{background:var(--accent);color:#1b1b18;cursor:pointer;border:0;border-radius:6px;flex:none;place-items:center;width:40px;font-size:18px;display:grid}.guide-form button:disabled{cursor:not-allowed;opacity:.55}.guide-privacy{margin:9px 0 0;font-size:9px}html.has-scroll-reveal [data-reveal]{opacity:0;transition:opacity .65s ease var(--reveal-delay,0s), transform .65s cubic-bezier(.2, .7, .2, 1) var(--reveal-delay,0s);transform:translateY(24px)}html.has-scroll-reveal [data-reveal].is-visible{opacity:1;transform:translateY(0)}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{z-index:20;background:var(--header-glass);-webkit-backdrop-filter:blur(18px)saturate(145%);backdrop-filter:blur(18px)saturate(145%);border-bottom:1px solid #d7d4cab8;justify-content:space-between;align-items:center;min-height:84px;padding:0 6.1%;transition:background .24s,border-color .24s,box-shadow .24s;display:flex;position:sticky;top:0;box-shadow:0 8px 28px #1b1b180d}.wordmark{flex:none;align-items:center;display:inline-flex}.wordmark-logo{object-fit:contain;width:72px;height:72px;display:block}.theme-dark .wordmark-logo{filter:invert()}.site-nav{align-items:center;gap:clamp(24px,3.2vw,52px);display:flex}.site-nav>a{font-size:12px}.site-nav>a:not(.nav-contact){transition:opacity .18s}.site-nav>a:not(.nav-contact):hover{opacity:.55}.site-nav .nav-contact{border:1px solid var(--ink);border-radius:30px;padding:12px 17px;transition:color .18s,background .18s}.nav-contact span{margin-left:8px}.site-nav .nav-contact:hover{background:var(--ink);color:var(--paper)}.menu-toggle{display:none}.page-shell,.section-shell{width:min(1280px,88%);margin-inline:auto}.hero{grid-template-columns:1.05fr .95fr;align-items:center;min-height:650px;padding:78px 0 92px;display:grid;position:relative}.hero:before{z-index:-1;content:"";background:radial-gradient(46% 52% at 68% 42%,#ffffff1c,#0000 68%),radial-gradient(60% 70% at 8% 96%,#d8fa640d,#0000 62%),linear-gradient(152deg,#2a2d31 0%,#191b1e 44%,#0e0f11 100%);width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%}.hero:after{z-index:-1;content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 118px,#ffffff05 118px 119px),radial-gradient(78% 62% at 50% 118%,#0000 55%,#0000006b 100%);width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%}.hero h1{color:#f7f5ef}.hero .eyebrow{color:#f7f5efb8}.hero-copy{z-index:2;align-self:center;padding:0 0 15px;position:relative}.eyebrow,.section-label,.visual-caption,.hero-index,.hero-side-note,.project-tags,.art-number,.studio-top,.studio-footer,.task-top,.task-item small,.contact-top,.footer-bar>*,.site-footer>span,.site-footer>a:last-of-type{font-family:var(--mono);letter-spacing:.09em;font-size:9px}.eyebrow{text-transform:uppercase;align-items:center;gap:10px;margin:0 0 28px;display:flex}.status-dot{background:#7fd35f;border-radius:50%;width:8px;height:8px;animation:2.4s ease-in-out infinite status-pulse;box-shadow:0 0 0 4px #7fd35f29}.hero h1,.section-heading h2,.about h2,.skills h2,.contact h2{letter-spacing:-.085em;margin:0;font-size:clamp(55px,6.4vw,90px);font-weight:500;line-height:.98}.hero h1 em,.about h2 em,.section-heading h2 em,.skills h2 em,.contact h2 em{font-family:var(--serif);letter-spacing:-.07em;font-weight:500}.hero-bottom{justify-content:space-between;align-items:end;width:min(440px,86%);margin-top:32px;display:flex}.hero-description{color:#f7f5efa8;max-width:335px;margin:0;font-size:14px;line-height:1.8}.round-link{color:#f7f5ef;border:1px solid #f7f5ef42;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-size:19px;transition:color .18s,background .18s,transform .18s;display:grid}.round-link:hover{color:#14161a;background:#f7f5ef;transform:translateY(3px)}.hero-visual{min-height:490px;position:relative;overflow:hidden}.visual-grain{z-index:1;background:linear-gradient(#ffffff08,#0000 46%,#00000042);position:absolute;inset:0}.visual-orbit{z-index:1;border:1px solid #ffffff24;border-radius:50%;position:absolute}.orbit-one{width:95%;height:125%;animation:34s linear infinite orbit-drift;top:-35%;left:2%;transform:rotate(25deg)}.orbit-two{width:82%;height:130%;animation:42s linear infinite orbit-drift-reverse;top:-42%;left:14%;transform:rotate(-26deg)}.visual-sun{filter:blur(2px);background:radial-gradient(circle,#f6deae57 0%,#f6deae1f 58%,#0000 72%);border-radius:50%;width:132px;height:132px;animation:5s ease-in-out infinite alternate sun-glow;position:absolute;top:9%;right:15%}.hero-portrait{z-index:1;filter:drop-shadow(0 22px 34px #0000007a);width:104%;max-width:520px;height:auto;position:absolute;bottom:0;left:54%;transform:translate(-50%)}.visual-caption{z-index:2;color:#f7f5efbd;gap:18px;font-size:8px;display:flex;position:absolute;bottom:23px;left:24px}.hero-index{z-index:2;color:#f7f5ef7a;position:absolute;top:22px;right:22px}.hero-index span{color:var(--accent)}.hero-side-note{color:#f7f5ef66;writing-mode:vertical-rl;gap:5px;font-size:8px;display:flex;position:absolute;top:43%;right:-42px}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.ticker-track{width:max-content;font-family:var(--mono);letter-spacing:.1em;align-items:center;gap:32px;padding:19px 0;font-size:9px;animation:32s linear infinite ticker-scroll;display:flex}.ticker-track i{color:#728541;font-size:13px;font-style:normal}@keyframes ticker-scroll{to{transform:translate(-50%)}}.section-shell{padding-block:130px}.section-label{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-bottom:16px;display:flex}.about-content{grid-template-columns:1.15fr .85fr;gap:10%;padding-top:70px;display:grid}.about h2,.skills h2{max-width:660px;font-size:clamp(48px,6vw,82px)}.about-copy{max-width:440px;padding-top:5px}.about-copy p,.skills-content>p{color:#5f5e56;margin:0 0 17px;font-size:14px;line-height:1.9}.text-link{border-bottom:1px solid #77766f;align-items:center;gap:14px;margin-top:18px;padding-bottom:7px;font-size:11px;display:inline-flex}.text-link span{font-size:15px}.about-stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:82px;display:grid}.about-stats>div{border-bottom:1px solid var(--line);align-items:center;gap:16px;min-height:118px;display:flex}.about-stats strong{letter-spacing:-.07em;font-size:clamp(40px,4vw,48px);font-weight:500}.about-stats .stat-infinity{animation:2.6s ease-in-out infinite infinity-drift}@keyframes infinity-drift{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-4px)rotate(-8deg)}}.about-stats>div>span{color:var(--muted);font-size:11px;line-height:1.5}.work{background:#e9e7df;width:100%;padding-inline:max(6%,50% - 640px)}.section-heading{justify-content:space-between;align-items:end;padding-block:67px 52px;display:flex}.section-heading h2{font-size:clamp(52px,6.8vw,88px)}.section-heading>p{color:#67665f;max-width:290px;margin:0 2% 5px 30px;font-size:13px;line-height:1.8}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:54px 25px;display:grid}.project-wide{grid-column:1/-1}.project-art{place-items:center;min-height:340px;display:grid;position:relative;overflow:hidden}.project-wide .project-art{min-height:425px}.dashboard-art{background:#d5e0d1}.dashboard-window{background:#f9f9f5;border:1px solid #1b1b1814;border-radius:8px;width:69%;min-height:300px;overflow:hidden;transform:translateY(14px);box-shadow:0 28px 65px #22302029}.window-top{border-bottom:1px solid #e9e9e4;justify-content:space-between;align-items:center;height:42px;padding:0 17px;display:flex}.window-brand{letter-spacing:-.05em;font-size:12px;font-weight:700}.window-brand span{color:#94ae78}.window-avatar{background:#e6eddc;border-radius:50%;place-items:center;width:21px;height:21px;font-size:9px;display:grid}.dashboard-body{padding:21px 24px}.dashboard-greeting>span,.dashboard-stats>div>span{color:#96978e;font-family:var(--mono);letter-spacing:.08em;font-size:7px;display:block}.dashboard-greeting strong{letter-spacing:-.04em;margin-top:7px;font-size:17px;font-weight:500;display:block}.dashboard-stats{grid-template-columns:1fr 1fr;gap:12px;margin-top:19px;display:grid}.dashboard-stats>div{border:1px solid #e8e9e2;border-radius:4px;padding:11px}.dashboard-stats>div>strong{letter-spacing:-.04em;margin-top:6px;font-size:18px;display:inline-block}.dashboard-stats i{float:right;color:#6c8d4d;margin-top:11px;font-size:8px;font-style:normal}.chart{border-bottom:1px solid #e6e6df;height:88px;margin-top:15px;padding:0 7px}.chart-bars{background:repeating-linear-gradient(#0000 0 21px,#eeefe9 22px 23px);justify-content:space-between;align-items:end;height:66px;display:flex}.chart-bars i{transform-origin:bottom;background:#b8cba5;border-radius:2px 2px 0 0;width:4.5%;height:35%}.chart-bars i:nth-child(3n+1){height:55%}.chart-bars i:nth-child(3n+2){background:#809a68;height:73%}.chart-bars i:nth-child(4n){height:92%}.project-card.is-visible .chart-bars i,.project-dialog .chart-bars i{animation:.7s cubic-bezier(.2,.7,.2,1) both chart-rise}.project-card.is-visible .chart-bars i:nth-child(2n),.project-dialog .chart-bars i:nth-child(2n){animation-delay:90ms}.project-card.is-visible .chart-bars i:nth-child(3n),.project-dialog .chart-bars i:nth-child(3n){animation-delay:.18s}.project-card.is-visible .chart-bars i:nth-child(4n),.project-dialog .chart-bars i:nth-child(4n){animation-delay:.27s}.chart-labels{color:#96978e;font-family:var(--mono);justify-content:space-between;padding-top:7px;font-size:6px;display:flex}.art-number{color:#1b1b18a1;position:absolute;top:17px;left:18px}.studio-art{background:#d9c8ae}.studio-window{background:#f6f1e8;flex-direction:column;justify-content:space-between;width:70%;height:250px;padding:19px 20px 15px;display:flex;transform:rotate(-3deg);box-shadow:0 24px 55px #3a2e1e24}.project-card.is-visible .studio-window{animation:.7s cubic-bezier(.2,.7,.2,1) both studio-enter}.studio-top,.studio-footer{justify-content:space-between;font-size:7px;display:flex}.studio-message{letter-spacing:-.09em;align-self:center;font-size:clamp(30px,4.6vw,54px);font-weight:500;line-height:.95}.studio-message em{font-family:var(--serif);font-weight:500}.studio-footer{color:#68655d;font-size:6px}.task-art{background:#c5c6db}.task-card{background:#f8f7f4;width:66%;padding:19px 20px 17px;transform:rotate(2deg);box-shadow:0 24px 55px #1e1e3526}.project-card.is-visible .task-card{animation:.7s cubic-bezier(.2,.7,.2,1) both task-enter}.task-top{color:#77766f;justify-content:space-between;font-size:7px;display:flex}.task-logo{color:#7a78ae;font-size:12px}.task-title{letter-spacing:-.07em;margin:26px 0 20px;font-size:29px;font-weight:500;line-height:.94}.task-title em{font-family:var(--serif);font-weight:500}.task-item{border-top:1px solid #e9e8e3;align-items:center;gap:9px;min-height:36px;font-size:8px;display:flex}.task-item b{color:#fff;border:1px solid #bbb9b1;border-radius:50%;place-items:center;width:11px;height:11px;font-size:7px;display:grid}.task-item .checked{background:#8985b7;border-color:#8985b7}.task-item small{color:#89877f;margin-left:auto;font-size:6px}.task-progress{background:#ebeaf0;height:3px;margin-top:8px}.task-progress span{background:#8985b7;width:46%;height:100%;display:block}.project-meta{justify-content:space-between;gap:20px;padding-top:17px;display:flex}.project-meta h3{letter-spacing:-.03em;margin:0 0 6px;font-size:15px;font-weight:500}.project-meta p{color:#73726b;margin:0;font-size:11px}.project-tags{color:#73726b;flex:none;align-items:start;gap:7px;padding-top:3px;font-size:7px;display:flex}.project-tags span{white-space:nowrap;border:1px solid #d0cec5;border-radius:20px;padding:6px 8px}.work-note{color:#74736c;margin:35px 0 0;font-size:11px}.skills-layout{grid-template-columns:.9fr 1.1fr;gap:10%;padding-top:70px;display:grid}.skills-content>p{max-width:350px;margin-bottom:22px}.skills-tags{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.skills-tags span{border:1px solid var(--line);color:var(--ink);font-family:var(--mono);border-radius:24px;padding:8px 11px;font-size:9px;line-height:1.2;transition:border-color .18s,background .18s,color .18s}.skills-tags span:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}.skill-list>div{border-top:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:center;min-height:72px;display:grid}.skill-list>div:last-child{border-bottom:1px solid var(--line)}.skill-list>div>span{color:var(--muted);font-family:var(--mono);align-self:start;padding-top:26px;font-size:8px}.skill-list strong{font-size:13px;font-weight:500}.skill-list p{color:#77766f;margin:5px 0 0;font-size:10px}.skill-list b{font-size:14px;font-weight:400}.contact{background:var(--ink);width:100%;color:var(--paper);padding:75px max(6%,50% - 640px) 82px;position:relative}.contact-top{color:#b5b3ab;border-bottom:1px solid #f3f1eb40;justify-content:space-between;padding-bottom:16px;display:flex}.contact-content{grid-template-columns:.9fr 1.1fr;align-items:start;gap:clamp(42px,8vw,120px);padding-top:70px;display:grid}.contact h2{font-size:clamp(68px,11vw,150px);line-height:.9}.contact h2 em{color:var(--accent)}.contact-email{border-bottom:1px solid #f3f1eb85;align-items:center;gap:14px;margin-top:29px;padding-bottom:8px;font-size:13px;transition:color .18s;display:inline-flex}.contact-email:hover{color:var(--accent)}.contact-email span{font-size:19px}.contact-note{color:#aaa8a0;max-width:370px;margin:24px 0 0;font-size:12px;line-height:1.8}.contact-form{padding-top:8px}.contact-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 18px;display:grid}.contact-field{flex-direction:column;gap:10px;min-width:0;display:flex}.contact-field>span{color:#cfcec7;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:9px}.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-height:46px;color:var(--paper);font:inherit;background:#ffffff0a;border:1px solid #f3f1eb3d;border-radius:0;outline:none;padding:12px 13px;font-size:12px;transition:border-color .18s,background .18s}.contact-field select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.contact-field textarea{resize:vertical;min-height:130px}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#88877f;opacity:1}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--accent);background:#ffffff12}.contact-field-wide{grid-column:1/-1}.contact-submit-row{justify-content:space-between;align-items:center;gap:20px;margin-top:22px;display:flex}.contact-privacy{color:#aaa8a0;max-width:260px;margin:0;font-size:10px;line-height:1.7}.contact-submit{border:1px solid var(--accent);background:var(--accent);color:#1b1b18;cursor:pointer;min-height:48px;font:inherit;flex:none;align-items:center;gap:25px;padding:0 17px;font-size:11px;transition:background .18s,color .18s;display:flex}.contact-submit:hover{color:var(--accent);background:0 0}.contact-submit b{font-size:16px;font-weight:400}.contact-submit:focus-visible{outline:2px solid var(--paper);outline-offset:4px}.contact-feedback{min-height:14px;color:var(--accent);margin:11px 0 0;font-size:10px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.site-footer{color:#f7f5ef;background:linear-gradient(#17181b 0%,#0e0f11 100%);border-top:1px solid #ffffff12}.footer-main{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:48px;width:min(1280px,88%);margin-inline:auto;padding:66px 0 44px;display:grid}.footer-wordmark .wordmark-logo{filter:invert();width:124px;height:124px}.footer-bio{color:#f7f5ef9e;max-width:390px;margin:20px 0 26px;font-size:14px;line-height:1.85}.footer-social{flex-wrap:wrap;gap:12px;display:flex}.footer-social-link{color:#f7f5ef;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:9px;min-height:42px;padding:0 16px 0 13px;font-size:12px;font-weight:600;text-decoration:none;transition:border-color .18s,background .18s,transform .18s;display:inline-flex}.footer-social-link svg{flex:none;width:18px;height:18px}.footer-social-link:first-child svg{color:var(--accent)}.footer-social-link:last-child svg{color:#25d366}.footer-social-link:hover{background:#ffffff0f;border-color:#ffffff57;transform:translateY(-2px)}.footer-social-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.footer-links{flex-direction:column;align-items:flex-start;gap:15px;display:flex}.footer-links h2{color:#f7f5ef70;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:4px 0 6px;font-size:9px;font-weight:400}.footer-links a{color:#f7f5ef;font-size:15px;text-decoration:none;transition:color .18s,transform .18s}.footer-links a:hover{color:var(--accent);transform:translate(4px)}.footer-bar{color:#f7f5ef70;border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;width:min(1280px,88%);margin-inline:auto;padding:22px 0 28px;display:flex}.footer-bar a{color:#f7f5ef9e;text-decoration:none;transition:color .18s}.footer-bar a:hover{color:var(--accent)}.portfolio{isolation:isolate;min-height:100vh;color:var(--ink);background:0 0;transition:background .24s,color .24s;position:relative;overflow-x:clip}.water-background{z-index:0;pointer-events:none;background:radial-gradient(at 18% 16%,#ffffff94,#0000 43%),radial-gradient(at 84% 78%,#82b1b433,#0000 46%),linear-gradient(140deg,#e9efeb,#dce9e7 52%,#e8eee8);position:fixed;inset:0;overflow:hidden}.water-background:before,.water-background:after{content:"";pointer-events:none;position:absolute;inset:-45%}.water-background:before{opacity:.55;background:repeating-radial-gradient(#0000 0 34px,#ffffff4d 35px 36px,#0000 37px 69px);animation:34s ease-in-out infinite alternate water-ripple}.water-background:after{opacity:.55;background:repeating-radial-gradient(at 46% 53%,#0000 0 48px,#487e851a 49px 50px,#0000 51px 92px);animation:46s ease-in-out infinite alternate water-current}.portfolio>main,.portfolio>.site-footer{z-index:1;position:relative}.portfolio.theme-dark{--paper:#171815;--ink:#eeece4;--muted:#aaa99f;--line:#3b3c36;--accent:#d8fa64;--header-glass:#171815c7}.theme-dark .water-background{background:radial-gradient(at 18% 16%,#6991942e,#0000 43%),radial-gradient(at 84% 78%,#467d842e,#0000 46%),linear-gradient(140deg,#202a29,#1b2626 52%,#202724)}.theme-dark .water-background:before{background:repeating-radial-gradient(#0000 0 34px,#ceebe71f 35px 36px,#0000 37px 69px)}.theme-dark .water-background:after{background:repeating-radial-gradient(at 46% 53%,#0000 0 48px,#7bb4b717 49px 50px,#0000 51px 92px)}.theme-dark .site-header{border-bottom-color:#3b3c36c7;box-shadow:0 8px 28px #00000024}.theme-dark .work{background:#22231f}.theme-dark .about-copy p,.theme-dark .skills-content>p,.theme-dark .section-heading>p,.theme-dark .project-meta p,.theme-dark .work-note,.theme-dark .skill-list p{color:#b1b0a7}.theme-dark .skills-tags span:hover{border-color:var(--accent);background:var(--accent);color:#1b1b18}.theme-dark .project-tags,.theme-dark .section-label{color:#aaa99f}.theme-toggle{color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:8px 0;font-size:12px;display:flex}.theme-toggle>span:first-child{font-size:15px}.project-filters{flex-wrap:wrap;gap:8px;margin:0 0 25px;display:flex}.filter-button{color:inherit;cursor:pointer;background:0 0;border:1px solid #c9c7be;border-radius:25px;align-items:center;gap:10px;padding:9px 13px;font-size:10px;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.filter-button span{color:#88877f;font-family:var(--mono);font-size:8px}.filter-button:hover,.filter-button.is-active{border-color:var(--ink);background:var(--ink);color:var(--paper)}.theme-dark .filter-button{border-color:#55564e}.theme-dark .filter-button.is-active,.theme-dark .filter-button:hover{border-color:var(--accent);background:var(--accent);color:#1b1b18}.project-open{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;display:block;position:relative;overflow:hidden}.project-open .project-art{transition:transform .5s cubic-bezier(.2,.7,.2,1)}.project-card{animation:.42s cubic-bezier(.2,.7,.2,1) both card-arrive}.project-open:hover .project-art{transform:scale(1.015)}.project-open-label{background:var(--paper);color:var(--ink);font-family:var(--mono);letter-spacing:.05em;opacity:0;border-radius:30px;align-items:center;gap:13px;padding:10px 12px;font-size:8px;transition:opacity .18s,transform .18s;display:flex;position:absolute;bottom:14px;right:14px;transform:translateY(5px)}.project-open-label>span{font-size:13px}.project-open:hover .project-open-label,.project-open:focus-visible .project-open-label{opacity:1;transform:translateY(0)}.project-open:focus-visible,.filter-button:focus-visible,.theme-toggle:focus-visible,.menu-toggle:focus-visible,.dialog-close:focus-visible{outline-offset:4px;outline:2px solid #728541}.dialog-open{overflow:hidden}.dialog-backdrop{z-index:10;background:#111210ad;place-items:center;padding:24px;animation:.16s both fade-in;display:grid;position:fixed;inset:0;overflow-y:auto}.project-dialog{background:var(--paper);width:min(620px,100%);max-height:min(780px,92vh);color:var(--ink);padding:24px;animation:.22s both dialog-up;position:relative;overflow-y:auto}.project-dialog .project-art{min-height:255px}.project-dialog .dashboard-window{width:78%;min-height:230px}.project-dialog .dashboard-body{padding:15px 18px}.project-dialog .studio-window{width:78%;height:205px}.project-dialog .task-card{width:75%}.dialog-close{z-index:1;background:var(--paper);width:36px;height:36px;color:var(--ink);cursor:pointer;border:0;border-radius:50%;place-items:center;font-size:24px;display:grid;position:absolute;top:32px;right:32px}.dialog-category{color:var(--muted);font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;margin-top:25px;font-size:9px;display:block}.project-dialog h2{letter-spacing:-.06em;margin:12px 0;font-size:clamp(25px,4vw,36px);font-weight:500}.project-dialog>p{max-width:510px;color:var(--muted);font-size:13px;line-height:1.8}.dialog-tools{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;gap:12px;margin-top:23px;padding-block:16px;font-size:11px;display:grid}.dialog-tools>span,.dialog-note{color:var(--muted);font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;font-size:8px}.dialog-note{margin-top:17px;line-height:1.6;display:block}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes status-pulse{50%{box-shadow:0 0 0 7px #5a8a350d}}@keyframes orbit-drift{to{transform:rotate(385deg)}}@keyframes orbit-drift-reverse{to{transform:rotate(-386deg)}}@keyframes sun-glow{to{opacity:.65;transform:scale(1.12)}}@keyframes water-ripple{0%{transform:translate(-2%,-1%)rotate(-4deg)}to{transform:translate(2%,1%)rotate(4deg)}}@keyframes water-current{0%{transform:translate(2%,1%)rotate(4deg)scale(1.02)}to{transform:translate(-2%,-1%)rotate(-4deg)scale(1.02)}}@keyframes card-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1500px){.hero{min-height:750px}.hero-visual{min-height:560px}}@media (max-width:850px){.site-header{min-height:76px;padding-inline:6%}.hero{grid-template-columns:1fr .83fr;min-height:560px}.hero h1{font-size:clamp(55px,7.3vw,62px)}.hero-visual{min-height:390px}.hero-portrait{max-width:400px}.hero-side-note{right:-25px}.section-shell{padding-block:95px}.project-wide .project-art{min-height:360px}.project-art{min-height:300px}.project-meta{flex-direction:column;gap:12px}.site-nav{gap:16px}.theme-toggle-label{display:none}}@media (max-width:620px){html{scroll-padding-top:70px}.site-header{min-height:68px;padding-inline:6%}.wordmark-logo{width:56px;height:56px}.menu-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:42px;height:42px;display:flex}.menu-toggle span{background:var(--ink);width:16px;height:1px;transition:transform .18s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.site-nav{border-bottom:1px solid var(--line);background:var(--paper);align-items:stretch;gap:0;padding:8px 6% 20px;display:none;position:absolute;top:calc(100% - 1px);left:0;right:0}.site-nav.is-open{flex-direction:column;display:flex}.site-nav>a{border-bottom:1px solid var(--line);padding:14px 0;font-size:13px}.site-nav .nav-contact{border:1px solid var(--ink);border-radius:30px;align-self:start;margin-top:14px;padding:11px 16px}.site-nav .theme-toggle{border-bottom:1px solid var(--line);align-self:start;padding:12px 0}.theme-toggle-label{display:inline}.project-open-label{opacity:1;transform:none}.page-shell,.section-shell{width:88%}.hero{grid-template-columns:1fr;min-height:0;padding:66px 0 55px}.eyebrow{margin-bottom:23px;font-size:8px}.hero h1{font-size:clamp(55px,12vw,74px)}.hero-bottom{width:100%;margin-top:23px}.hero-description{max-width:285px;font-size:13px}.hero-visual{min-height:390px;margin-top:42px}.hero-portrait{width:96%;max-width:340px}.footer-main{grid-template-columns:1fr;gap:40px;padding:52px 0 34px}.footer-bar{justify-content:flex-start;padding:18px 0 26px}.hero-side-note{top:auto;bottom:72px;right:-21px}.section-shell{padding-block:75px}.section-label{gap:12px;font-size:7px}.section-label span:last-child{text-align:right}.about-content,.skills-layout{grid-template-columns:1fr;gap:26px;padding-top:43px}.about h2,.skills h2{font-size:clamp(47px,10vw,68px)}.about-copy p,.skills-content>p{font-size:13px}.about-stats{margin-top:48px}.about-stats>div{flex-direction:column;justify-content:center;align-items:start;gap:4px;min-height:95px}.about-stats strong{font-size:34px}.about-stats>div>span{font-size:9px}.work{width:100%;padding-inline:6%}.section-heading{flex-direction:column;align-items:start;gap:20px;padding-block:45px 34px}.section-heading h2{font-size:clamp(50px,10vw,72px)}.section-heading>p{max-width:310px;margin:0;font-size:12px}.project-grid{grid-template-columns:1fr;row-gap:37px}.project-wide{grid-column:auto}.project-art,.project-wide .project-art{min-height:300px}.project-dialog{padding:16px}.project-dialog .project-art{min-height:210px}.dialog-close{top:22px;right:22px}.dashboard-window{width:84%;min-height:270px}.dashboard-body{padding:17px}.studio-window{width:79%;height:220px}.studio-message{font-size:clamp(39px,9vw,54px)}.task-card{width:76%}.project-meta{padding-top:13px}.work-note{line-height:1.7}.skills-content>p{margin-bottom:25px}.contact{width:100%;padding:55px 6% 64px}.contact-top{font-size:7px}.contact-content{grid-template-columns:1fr;gap:38px;padding-top:54px}.contact h2{font-size:clamp(66px,14vw,93px)}.contact-note{margin-top:20px}.contact-fields{grid-template-columns:1fr}.contact-field-wide{grid-column:auto}.contact-submit-row{flex-direction:column;align-items:stretch}.contact-submit{justify-content:space-between}.site-footer{grid-template-columns:1fr 1fr;row-gap:18px;padding:23px 6%;display:grid}.whatsapp-button{min-height:48px;padding-inline:15px;bottom:16px;right:16px}.footer-wordmark .wordmark-logo{width:100px;height:100px}.site-footer>:nth-child(2n){text-align:right}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html.has-scroll-reveal [data-reveal]{opacity:1;transform:none}}

