@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--bg:#0d0d10;--panel:#141419;--panel-border:#2a2b33;--text:#f2f3f5;--muted:#b5b7bf;--accent:#8eb9ff}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);max-width:100vw;min-height:100%;color:var(--text);overflow-x:hidden}body{font-family:var(--font-geist-sans), "Segoe UI", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}.portfolio-shell{--sidebar-width:clamp(260px, 28vw, 430px);min-height:100vh;display:block}.portfolio-shell.day-mode{--bg:#f5f4f0;--panel:#ebe8df;--panel-border:#d2ccc1;--text:#1d1f25;--muted:#5d606d;--accent:#2f64d9}.portfolio-shell.day-mode .chip{color:#383b46}.portfolio-shell.day-mode .chip:hover{color:#141722}.portfolio-shell.day-mode .contact-links a{color:#2d3040}.portfolio-shell.day-mode .profile-block h1{color:#1b2231}.portfolio-shell.day-mode .gallery{background:#f7f3ea}.portfolio-shell.day-mode .gallery-card{background:#eee8dc;border-color:#d7d0c2}.portfolio-shell.day-mode .gallery-overlay{background:linear-gradient(#1a1d2514,#1a1d25ad)}.portfolio-shell.day-mode .gallery-overlay p{color:#f0f4ff}.portfolio-shell.day-mode .gallery-overlay span{color:#e6ebf6}.portfolio-shell.day-mode .art-modal{background:#f2efe7;border-color:#d6cec1}.portfolio-shell.day-mode .art-modal-meta p{color:#3f4555}.portfolio-shell.day-mode .art-popout-backdrop{background:#f0ece2db}.portfolio-shell.day-mode .art-zoom-indicator{color:#242936;background:#f6f4ece6;border-color:#c9c1b0}.portfolio-shell.day-mode .content-card,.portfolio-shell.day-mode .work-detail-meta{background:#f4f1e9;border-color:#d8d0c3}.portfolio-shell.day-mode .content-card p,.portfolio-shell.day-mode .work-detail-meta p{color:#3e4555}.portfolio-sidebar{background:var(--panel);border-right:1px solid var(--panel-border);width:var(--sidebar-width);flex-direction:column;gap:2rem;height:100vh;padding:2.5rem 2rem;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.portfolio-shell>:not(.portfolio-sidebar){margin-left:var(--sidebar-width);min-height:100vh}.profile-block h1{cursor:pointer;margin-top:.45rem;margin-bottom:.8rem;font-size:clamp(3rem,6vw,5rem);line-height:.95}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.72rem}.bio{color:#dadbe0;max-width:32ch;line-height:1.6}.sidebar-section h2{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.8rem;font-size:.95rem}.contact-section{margin-top:auto}.chip-row{flex-direction:column;align-items:flex-start;gap:.5rem;padding-right:1.6rem;display:flex;position:relative}.chip{color:#d9dbe1;letter-spacing:.04em;text-transform:uppercase;background:0 0;border:0;border-radius:0;padding:.3rem 0;font-size:1.2rem;font-weight:500;display:inline-block}.nav-arrow{background:var(--accent);clip-path:polygon(100% 0,100% 100%,0 50%);opacity:0;pointer-events:none;width:.68rem;height:.82rem;transition:top 90ms ease-out,left 90ms ease-out,opacity .16s,transform .16s;position:absolute;left:0;transform:translateY(-50%)scale(.9)}.nav-arrow.visible{opacity:.85;transform:translateY(-50%)scale(1)}.chip:hover{color:#f7f8fb}.chip.active{color:var(--accent);background:0 0;font-weight:600}.contact-links{gap:.55rem;display:grid}.contact-links a{color:#e7e8ec;border-bottom:1px solid #0000;width:fit-content}.contact-links a:hover{border-bottom-color:var(--accent)}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:1rem;padding:1rem;display:grid}.gallery-card{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.65rem;min-height:41vh;padding:0;display:block;position:relative;overflow:hidden}.gallery-card img{object-fit:cover;width:100%;height:100%;transition:transform .45s;transform:scale(1.01)}.gallery-overlay{background:linear-gradient(#090a0d08,#090a0dbd);flex-direction:column;justify-content:space-between;padding:1.15rem;display:flex;position:absolute;inset:0}.gallery-overlay p{letter-spacing:.1em;text-transform:uppercase;color:#e7ebf8;font-size:.74rem}.gallery-overlay h3{color:#f3f6ff;text-shadow:0 2px 14px #000000a6;margin-bottom:.2rem;font-size:1.35rem}.gallery-overlay span{color:#d4d8e5;font-size:.92rem}.gallery-card:hover img{transform:scale(1.06)}.art-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background:#080a0eb8;justify-content:center;align-items:center;padding:1.4rem;display:flex;position:fixed;inset:0}.art-modal{background:#12151e;border:1px solid #2b2f3b;border-radius:14px;width:min(1120px,100%);max-height:92vh;padding:1.1rem;position:relative;overflow:auto}.art-modal-close{color:#f2f3f7;cursor:pointer;z-index:3;background:#0a0c12b8;border:0;border-radius:999px;place-items:center;width:2.25rem;height:2.25rem;font-size:2rem;line-height:1;display:grid;position:absolute;top:.6rem;right:.7rem}.art-modal-stage{cursor:zoom-in;background:#0b0d14;border-radius:10px;width:100%;min-height:58vh;position:relative;overflow:hidden}.art-modal-image{position:absolute;inset:0}.art-modal-stage img{object-fit:contain;transform-origin:50%;transition:transform .18s}.art-modal-meta{margin-top:.9rem;margin-bottom:.9rem}.art-modal-meta h2{margin-bottom:.35rem;font-size:clamp(1.4rem,2.5vw,2rem)}.art-modal-meta p{color:#d0d4e0;line-height:1.6}.art-popout-backdrop{z-index:70;background:#07090ed6;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.art-popout-frame{justify-content:center;align-items:center;width:min(1400px,94vw);height:min(88vh,960px);display:flex;position:relative}.art-popout-click-layer{position:absolute;inset:0}.art-popout-media{z-index:1;object-fit:contain;cursor:zoom-in;max-width:100%;max-height:100%;transition:transform .1s linear;position:relative}.art-popout-media.zoomed{cursor:zoom-out}.art-zoom-indicator{z-index:2;color:#eef2ff;letter-spacing:.04em;background:#090c12b8;border:1px solid #2c3447;border-radius:.35rem;padding:.28rem .5rem;font-size:.82rem;line-height:1;position:absolute;bottom:.75rem;left:.75rem}.art-modal-thumbs{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:.6rem;display:grid}.art-thumb{cursor:pointer;background:#0f1220;border:1px solid #0000;border-radius:8px;height:80px;position:relative;overflow:hidden}.art-thumb img{object-fit:cover}.art-thumb.active{border-color:var(--accent)}.work-detail{grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);align-content:start;gap:1.2rem;padding:1.2rem;display:grid}.work-detail-image{border-radius:.7rem;min-height:74vh;position:relative;overflow:hidden}.work-detail-image img{object-fit:contain;object-position:center;background:#0e1118}.work-detail-meta{background:#161820;border:1px solid #2c2f3b;border-radius:.7rem;flex-direction:column;gap:.9rem;padding:1.3rem;display:flex}.work-detail-meta h2{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.05}.work-detail-meta p{color:#d2d6df;line-height:1.65}.work-detail-meta span{color:var(--muted);font-size:.95rem}.back-link{border-bottom:1px solid #0000;width:fit-content;margin-top:.3rem}.back-link:hover{border-bottom-color:var(--accent)}.content-panel{align-items:center;padding:2rem;display:flex}.content-card{background:#161820;border:1px solid #2c2f3b;border-radius:14px;max-width:640px;padding:2rem}.content-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem;font-size:.78rem}.content-card h2{margin-bottom:1rem;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.05}.content-card p{color:#d2d6df;line-height:1.7}.content-links{gap:.55rem;margin-top:1.2rem;display:grid}.content-links a{border-bottom:1px solid #0000;width:fit-content}.content-links a:hover{border-bottom-color:var(--accent)}@media (max-width:1100px){.portfolio-shell{--sidebar-width:100%}.portfolio-sidebar{border-right:0;border-bottom:1px solid var(--panel-border);width:100%;height:auto;position:static;overflow:visible}.portfolio-shell>:not(.portfolio-sidebar){min-height:0;margin-left:0}.gallery,.work-detail{grid-template-columns:1fr}.work-detail-image{min-height:46vh}}
