@font-face{font-family:Taya Mono;src:local(Cascadia Mono),local(Consolas),local(Menlo);font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080e0c;--panel:#090f0d;--mint:#80f2cc;--text:#c6cbd4;--muted:#879995;--line:#315c4b;--font:"Taya Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;--ease-out:cubic-bezier(.23,1,.32,1);--duration-fast:.16s;--duration-normal:.2s;--duration-image:.25s}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;background:#050a08;margin:0;font-size:16px;line-height:1.6}body:before{content:"";pointer-events:none;z-index:5;opacity:.2;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0006 2px 3px);position:fixed;inset:0}::selection{background:var(--mint);color:#07110c}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--mint);outline-offset:6px;border-radius:2px}.skip-link{z-index:10;background:var(--mint);color:#080e0c;padding:10px 18px;position:fixed;top:12px;left:20px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.monitor{background:radial-gradient(ellipse at 50% 10%,#0d1a124a,transparent 60%),var(--bg);border:1px solid #244333;border-radius:26px;max-width:1240px;margin:12px auto;padding:32px 34px 11px;box-shadow:inset 0 0 0 6px #050907,inset 0 0 0 7px #13291f,0 0 32px #0008}.terminal{border:1px solid var(--line);border-radius:9px;padding:0 30px}.header{border-bottom:1px solid var(--line);min-height:67px;color:var(--mint);justify-content:space-between;align-items:center;gap:20px;display:flex}.wordmark{letter-spacing:-.5px;font-size:20px}.header nav{gap:34px;font-size:14px;display:flex}.header nav a{transition:color .2s;position:relative}.header nav a:hover{color:#d6fff0}.nav-mark{opacity:0;width:0;transition:opacity .2s;display:inline-block}.header nav a:hover .nav-mark,.header nav a:focus-visible .nav-mark{opacity:1}.hero{grid-template-columns:minmax(0,1fr) 270px;align-items:center;gap:46px;padding:66px 10px 64px;display:grid}.eyebrow{color:var(--muted);letter-spacing:1.2px;align-items:center;gap:9px;margin-bottom:7px;font-size:10px;display:flex}.status-dot{background:var(--mint);border-radius:50%;flex:none;width:5px;height:5px;display:block;box-shadow:0 0 7px #80f2cc60}h1{color:var(--mint);letter-spacing:1px;text-shadow:0 0 18px #70ffbf3a;margin:0 0 18px;font-size:clamp(58px,7.5vw,100px);font-weight:400;line-height:1.3}.cursor{animation:1.2s step-end infinite blink}.intro-list{letter-spacing:.1px;margin:0;padding:0;font-size:clamp(15px,1.65vw,22px);line-height:1.65;list-style:none}.intro-list li{padding-left:32px;position:relative}.intro-list li:before{content:">";color:var(--mint);position:absolute;left:0}.hero-aside{border-left:1px solid #4f9c7c;margin-top:36px;padding:4px 0 4px 40px;font-size:15px;line-height:1.7}.code-lines{color:#a5adb9;flex-direction:column;margin:0;display:flex}.aside-message{margin:30px 0 0}.tiny-cursor{color:#a5adb9}.section-heading{color:var(--mint);align-items:center;gap:22px;margin-bottom:28px;display:flex}h2{flex-shrink:0;margin:0;font-size:20px;font-weight:500;line-height:1.4}h2 span{margin-right:7px}.heading-line{background:var(--line);flex:1;align-self:flex-end;height:1px;margin-bottom:5px}.section-heading p{color:var(--muted);align-self:flex-end;margin:0 0 2px;font-size:12px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 -12px;display:grid}.project-card{isolation:isolate;min-width:0;transition:transform var(--duration-normal) var(--ease-out);background:linear-gradient(135deg,#0d191240,#0000 55%);border:1px solid #63b594;border-radius:7px;flex-direction:column;padding:15px;display:flex;position:relative}.project-card:before{content:"";z-index:-1;pointer-events:none;border:1px solid var(--mint);border-radius:inherit;opacity:0;transition:opacity var(--duration-normal) ease;background:#0d1914;position:absolute;inset:-1px;box-shadow:0 8px 30px #0004,0 0 22px #80f2cc08}.card-meta{color:var(--mint);justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px;font-size:18px;line-height:1.4;display:flex}.card-meta span:last-child{color:#70ba9c;font-size:12px}.project-image{aspect-ratio:1.11;background:#13251c;border:1px solid #80f2cc15;border-radius:4px;display:block;position:relative;overflow:hidden}.project-image img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform var(--duration-image) var(--ease-out);filter:saturate(.8);display:block}.image-visit{color:var(--mint);text-align:center;opacity:1;transition:transform var(--duration-normal) var(--ease-out),opacity var(--duration-fast) ease;background:#06140de8;padding:12px;font-size:11px;position:absolute;inset:auto 0 0;transform:none}h3{color:var(--mint);letter-spacing:-.7px;margin:16px 0 7px;font-size:27px;font-weight:600;line-height:1.4}.card-description{letter-spacing:.05px;margin:0 0 21px;font-size:16px;line-height:1.6}.project-link{color:var(--mint);align-items:center;gap:18px;margin-top:auto;padding:0 1px 2px;font-size:15px;line-height:1.5;display:flex}.link-arrow{transition:transform var(--duration-fast) var(--ease-out);font-size:27px;line-height:1}.link-label{text-underline-offset:4px;-webkit-text-decoration:underline #559a7e;text-decoration:underline #559a7e;text-decoration-thickness:1px}.project-link:focus-visible .link-label{-webkit-text-decoration-color:var(--mint);text-decoration-color:var(--mint)}.link-index{margin-left:auto;font-size:14px}@media (hover:hover) and (pointer:fine){.image-visit{opacity:0;transform:translateY(100%)}.project-card:hover{transform:translateY(-3px)}.project-card:hover:before{opacity:1}.project-card:hover img{transform:scale(1.025)}.project-card:hover .image-visit{opacity:1;transform:translateY(0)}.project-link:hover .link-arrow{transform:translate(3px)}.project-link:hover .link-label{-webkit-text-decoration-color:var(--mint);text-decoration-color:var(--mint)}}.project-card:has(:focus-visible){transition:none;transform:none}.project-card:has(:focus-visible):before{opacity:1;transition:none}.project-card:has(:focus-visible) img,.project-card:has(:focus-visible) .link-arrow{transition:none;transform:none}.project-card:has(:focus-visible) .image-visit{opacity:1;transition:none;transform:none}.about{padding-top:48px}.about .section-heading{margin-bottom:27px}.about-content{grid-template-columns:70px minmax(0,1fr) 260px;align-items:center;gap:30px;padding:0 4px 40px;display:grid}.pixel-heart{width:54px;height:54px;color:var(--mint);shape-rendering:crispedges;filter:drop-shadow(0 0 8px #80f2cc18)}.about-copy{max-width:660px;margin:0;font-size:14px;line-height:1.9}.skills{border-left:1px solid #4f9c7c;padding-left:38px;font-size:14px;line-height:1.8}.footer{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:24px;padding:17px 0 19px;display:flex}.footer-prompt{color:var(--mint);font-size:15px;line-height:1.7}.footer-prompt p{margin:0}.footer-prompt a{align-items:center;display:inline-flex}.block-cursor{vertical-align:middle;background:var(--mint);width:9px;height:17px;margin-left:3px;animation:1.2s step-end infinite blink;display:inline-block}.signature{color:var(--muted);flex-wrap:wrap;gap:16px;margin:0 0 6px;font-size:12px;display:flex}.mint{color:var(--mint)}.monitor-label{letter-spacing:1.2px;color:#577463;justify-content:space-between;padding:10px 8px 0;font-size:8px;display:flex}.monitor-label span:last-child{align-items:center;gap:9px;display:flex}.monitor-label i{background:#7ed8ac;border-radius:50%;width:4px;height:4px}.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}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@media (width>=1500px){.monitor{margin:28px auto}.hero{padding-top:72px;padding-bottom:80px}.project-image{aspect-ratio:1.15}.terminal{padding:0 38px}.about{padding-top:56px}}@media (width<=1100px){.monitor{margin:10px;padding:23px 24px 10px}.terminal{padding:0 24px}.hero{grid-template-columns:minmax(0,1fr) 225px;gap:20px;padding:55px 0}.hero-aside{padding-left:25px;font-size:13px}.intro-list{font-size:17px}.section-heading{gap:15px}.section-heading p{font-size:10px}.project-card{padding:12px}.project-grid{gap:14px;margin:0 -8px}.card-description{font-size:14px}.project-link{gap:11px;font-size:13px}h3{font-size:24px}.about-content{grid-template-columns:55px minmax(0,1fr) 220px;gap:22px}.skills{padding-left:24px;font-size:12px}.about-copy{font-size:12px}}@media (width<=800px){.monitor{border-radius:20px;margin:8px;padding:18px 18px 9px}.terminal{padding:0 20px}.hero{grid-template-columns:minmax(0,1fr) 195px;gap:16px;padding:42px 0 45px}h1{font-size:65px}.eyebrow{letter-spacing:.7px;font-size:8px}.intro-list{font-size:14px}.intro-list li{padding-left:22px}.hero-aside{margin-top:25px;padding-left:20px;font-size:11px}.section-heading{flex-wrap:wrap;gap:10px}h2{font-size:17px}.section-heading p{width:100%;margin-top:0}.heading-line{margin-bottom:6px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}.project-card:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 8px)}.project-card{padding:14px}.card-description{font-size:14px}.about-content{grid-template-columns:45px minmax(0,1fr);gap:22px}.pixel-heart{width:44px}.about-copy{font-size:13px}.skills{border-left:0;grid-column:2;grid-template-columns:1fr 1fr;gap:3px 14px;margin-top:0;padding-left:0;display:grid}.signature{gap:9px;font-size:10px}.footer-prompt{font-size:13px}}@media (width<=560px){html{scroll-padding-top:20px}.monitor{border-radius:16px;margin:6px;padding:12px 10px 8px}.terminal{border-radius:6px;padding:0 17px}.header{min-height:59px}.wordmark{font-size:17px}.header nav{gap:22px;font-size:12px}.hero{padding:37px 0 35px;display:block}.eyebrow{letter-spacing:.4px;font-size:7px}h1{letter-spacing:0;margin-bottom:17px;font-size:clamp(43px,12.8vw,69px);line-height:1.35}.intro-list{font-size:13px;line-height:1.8}.intro-list li{padding-left:20px}.hero-aside{justify-content:space-between;gap:12px;margin-top:25px;padding:0 0 0 16px;font-size:10px;line-height:1.8;display:flex}.aside-message{align-self:flex-end;margin:0}.section-heading{gap:9px;margin-bottom:20px}.section-heading p{font-size:9px;line-height:1.6}.project-grid{grid-template-columns:1fr;gap:20px}.project-card,.project-card:last-child{grid-column:auto;width:100%;padding:14px}.card-meta{margin-bottom:12px;font-size:17px}.card-meta span:last-child{font-size:11px}.project-image{aspect-ratio:1.14}h3{margin-top:15px;font-size:26px}.card-description{max-width:34ch;margin-bottom:19px;font-size:14px}.project-link{gap:17px;font-size:14px}.link-index{font-size:13px}.about{padding-top:34px}.about .section-heading{margin-bottom:23px}.about-content{grid-template-columns:34px minmax(0,1fr);align-items:start;gap:18px;padding:0 0 29px}.pixel-heart{width:34px;height:34px;margin-top:5px}.about-copy{font-size:12px;line-height:1.9}.skills{border-top:1px dashed #315c4b;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:4px 12px;margin-top:0;padding:15px 0 0;font-size:10px}.footer{flex-direction:column;align-items:flex-start;gap:19px;padding:17px 0 19px}.footer-prompt{font-size:13px}.signature{gap:12px;margin:0;font-size:9px}.monitor-label{letter-spacing:.6px;padding:9px 4px 0;font-size:6px}.block-cursor{width:8px;height:15px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.project-card,.project-card img,.image-visit,.link-arrow{transform:none!important}.project-card:before,.image-visit{transition:opacity var(--duration-fast) ease!important}.project-card:has(:focus-visible):before,.project-card:has(:focus-visible) .image-visit{transition:none!important}}
