:root{color:#f3f6f2;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#050806;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:#050806;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}a{color:inherit}::selection{color:#07100b;background:#00f58a}#root{min-height:100vh}:root{--ink:#050806;--ink-soft:#0b100d;--surface:#111713;--paper:#eef1ec;--paper-2:#dfe5dd;--white:#f5f7f3;--muted:#9ba69f;--green:#00f58a;--green-soft:#00f58a1f;--line:#ffffff29;--content:min(1440px, calc(100vw - 96px));--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}.app{isolation:isolate;min-height:100vh;color:var(--white);background:#05080638;position:relative;overflow:clip}.video-background{z-index:0;object-fit:cover;opacity:.82;filter:saturate(.82)contrast(1.12)brightness(.7);pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.app:before{z-index:1;content:"";pointer-events:none;background:linear-gradient(90deg,#040805f0 0%,#040805b3 45%,#0408054d 100%),radial-gradient(circle at 76% 48%,#0000 0,#05080694 76%);position:fixed;inset:0}.mouse-glow{z-index:1;pointer-events:none;background:radial-gradient(circle,#00f58a1f,#00f58a08 42%,#0000 70%);width:340px;height:340px;position:fixed;transform:translate(-50%,-50%)}.navbar,.layout,.signal-strip,.about,.projects,.skills,.contact,.footer,.music-player{z-index:2;position:relative}.navbar{z-index:1000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#050806d1;border-bottom:1px solid #ffffff21;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;min-height:76px;padding:0 max(32px,50vw - 720px);display:grid;position:fixed;top:0;left:0}.logo{width:fit-content;color:var(--green);font:700 .94rem/1 var(--mono);letter-spacing:-.04em;text-decoration:none}.navbar ul{gap:34px;margin:0;padding:0;list-style:none;display:flex}.navbar ul a{color:#c2cac4;font:500 .74rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:color .18s}.navbar ul a:hover,.navbar ul a:focus-visible{color:var(--green)}.nav-cta{border-bottom:1px solid var(--green);color:var(--green);font:600 .76rem/1 var(--mono);text-transform:uppercase;justify-self:end;padding-bottom:5px;text-decoration:none}.layout{width:var(--content);grid-template-columns:minmax(0,1.15fr) minmax(380px,.65fr);align-items:center;gap:clamp(48px,7vw,128px);min-height:100svh;margin:0 auto;padding:136px 0 80px;display:grid}.hero{max-width:840px}.status,.section-label,.project-eyebrow,.skill-number{font-family:var(--mono);text-transform:uppercase}.status{color:#c6d0c9;letter-spacing:.1em;align-items:center;gap:11px;margin:0 0 28px;font-size:.72rem;display:flex}.status span{color:var(--green);text-shadow:0 0 12px var(--green);font-size:.82rem}.hero h1{max-width:900px;color:var(--white);letter-spacing:-.075em;margin:0;font-size:clamp(3.8rem,6.8vw,7.5rem);font-weight:650;line-height:.88}.hero h1 span{color:var(--green);display:block}.hero h2{color:#dce1dd;letter-spacing:-.02em;max-width:680px;margin:34px 0 0;font-size:clamp(1.08rem,1.6vw,1.38rem);font-weight:500;line-height:1.45}.intro{color:#9eaaa2;max-width:640px;margin:18px 0 0;font-size:.96rem;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.button{border:1px solid var(--green);min-height:52px;color:var(--green);font:600 .78rem/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;justify-content:center;align-items:center;padding:0 22px;text-decoration:none;transition:transform .18s,color .18s,background .18s;display:inline-flex}.button-primary{color:var(--ink);background:var(--green)}.button:hover,.button:focus-visible{transform:translateY(-3px)}.button-ghost:hover,.button-ghost:focus-visible{color:var(--ink);background:var(--green)}.terminal-wrap{position:relative}.terminal-wrap:before{content:"";border:1px solid #00f58a52;width:90%;height:88%;position:absolute;top:-24px;right:-24px}.terminal{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#050a07d6;border:1px solid #00f58aa6;min-height:380px;position:relative;overflow:hidden;box-shadow:0 32px 80px #00000075,0 0 42px #00f58a14}.terminal-header{color:#748078;font:.7rem/1 var(--mono);text-align:center;border-bottom:1px solid #ffffff1c;padding:14px 52px;position:relative}.terminal-header:before{content:"";background:var(--green);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:17px;transform:translateY(-50%);box-shadow:14px 0 #ffcc57,28px 0 #ff5f57}.terminal-body{color:#aab5ad;min-height:330px;font:.78rem/1.85 var(--mono);padding:25px}.terminal-body p{margin:0}.terminal-body form{align-items:center;gap:8px;margin-top:16px;display:flex}.prompt{color:var(--green);flex:none}.terminal-input{width:100%;min-width:0;color:var(--green);caret-color:var(--green);background:0 0;border:0;outline:0}.signal-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#050806d1;grid-template-columns:repeat(4,1fr);display:grid}.signal-strip span{border-right:1px solid var(--line);color:#b8c2bb;font:.67rem/1.3 var(--mono);letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:20px 30px}.signal-strip span:last-child{border-right:0}.about,.skills,.contact{padding:clamp(90px,11vw,176px) max(48px,50vw - 720px)}.about,.skills{background:var(--ink)}.section-heading{max-width:1040px}.section-heading-row{justify-content:space-between;gap:80px;max-width:none;display:flex}.section-label{color:var(--green);letter-spacing:.14em;margin:0 0 24px;font-size:.7rem}.section-heading h2,.contact h2{letter-spacing:-.07em;margin:0;font-size:clamp(2.8rem,5.7vw,6.5rem);font-weight:570;line-height:.98}.section-intro{color:#667168;align-self:end;max-width:410px;margin:0 0 6px;line-height:1.65}.about-grid{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(50px,10vw,160px);margin-top:74px;padding-top:38px;display:grid}.about-copy{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px;display:grid}.about-copy p{color:#aeb8b1;margin:0;font-size:1rem;line-height:1.75}.about-note{border-left:2px solid var(--green);padding-left:28px}.about-note span{color:#7f8b83;font:.7rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;display:block}.about-note strong{max-width:300px;color:var(--white);font-size:1.3rem;line-height:1.35;display:block}.about-note p{color:#7f8b83;margin:15px 0 0;font-size:.82rem;line-height:1.6}.timeline{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:20px;margin-top:74px;display:grid}.timeline div{color:#d7ddd8;border:1px solid #ffffff24;min-height:92px;padding:21px;font-size:.95rem}.timeline small{color:var(--green);font:.62rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:11px;display:block}.timeline>span{color:var(--green)}.section-handoff{color:#bcc5bf;font:.74rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;border-top:1px solid #ffffff29;justify-content:space-between;align-items:center;margin-top:90px;padding-top:24px;text-decoration:none;display:flex}.section-handoff span{border:1px solid var(--green);width:42px;height:42px;color:var(--green);border-radius:50%;place-items:center;transition:color .18s,background .18s,transform .18s;display:grid}.section-handoff:hover span,.section-handoff:focus-visible span{color:var(--ink);background:var(--green);transform:translateY(4px)}.projects{color:var(--white);background:#050806f5;padding:clamp(90px,11vw,170px) max(48px,50vw - 720px)}.projects .section-label{color:var(--green)}.projects .section-intro{color:#8f9b92}.project-filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:0;margin-top:72px;display:flex}.project-filters button{border:0;border-right:1px solid var(--line);color:#9ca8a0;cursor:pointer;font:.72rem/1 var(--mono);letter-spacing:.04em;text-align:left;text-transform:uppercase;background:0 0;flex:1;justify-content:space-between;align-items:center;gap:24px;padding:18px 22px;display:flex}.project-filters button:last-child{border-right:0}.project-filters button.active{color:var(--ink);background:var(--green)}.project-filters button span{color:#758078;font-size:.62rem}.project-filters button.active span{color:#0b4529}.project-grid{background:#ffffff1f;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;margin-top:40px;display:grid}.project-card{background:#08100b;min-width:0;padding:16px}.project-featured{grid-column:1/-1;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);display:grid}.project-visual{background:#111;min-height:360px;position:relative;overflow:hidden}.project-featured .project-visual{min-height:540px}.project-visual img{width:100%;height:100%;min-height:inherit;object-fit:cover;transition:transform .65s cubic-bezier(.2,.75,.2,1),filter .3s}.project-card:hover .project-visual img{transform:scale(1.035)}.project-index{color:#fff;width:38px;height:38px;font:.65rem/1 var(--mono);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#050806c2;place-items:center;display:grid;position:absolute;top:15px;right:15px}.project-content{padding:30px 16px 24px}.project-featured .project-content{color:var(--white);background:#0b130e;flex-direction:column;justify-content:flex-end;padding:clamp(34px,5vw,70px);display:flex}.project-eyebrow{color:var(--green);letter-spacing:.1em;margin:0 0 18px;font-size:.65rem}.project-featured .project-eyebrow{color:var(--green)}.project-content h3{letter-spacing:-.055em;margin:0;font-size:clamp(1.8rem,3vw,3.25rem);font-weight:590}.project-content>p:not(.project-eyebrow){color:#8f9b92;max-width:580px;margin:18px 0 0;line-height:1.65}.project-featured .project-content>p:not(.project-eyebrow){color:#98a59c}.project-links{flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;display:flex}.project-links a,.project-status{color:#c7d0c9;min-height:40px;font:.68rem/1 var(--mono);text-transform:uppercase;border:1px solid #ffffff47;align-items:center;gap:22px;padding:0 14px;text-decoration:none;transition:color .18s,background .18s,border-color .18s;display:inline-flex}.project-featured .project-links a,.project-featured .project-status{color:#d9e0da;border-color:#ffffff57}.project-links a:hover,.project-links a:focus-visible,.project-featured .project-links a:hover,.project-featured .project-links a:focus-visible{border-color:var(--green);color:var(--ink);background:var(--green)}.project-status{color:#d49a68;border-style:dashed}.generated-preview{color:#fff;background:radial-gradient(circle at 72% 22%,#ffffff24,#0000 20%),linear-gradient(135deg,#351e63,#141022 55%,#08070b);flex-direction:column;justify-content:flex-end;padding:36px;display:flex;position:absolute;inset:0}.generated-preview:before{aspect-ratio:1;content:"";border:1px solid #fff3;border-radius:50%;width:44%;position:absolute;inset:10% 10% auto auto;box-shadow:inset 0 0 0 22px #ffffff06}.generated-preview span{letter-spacing:-.06em;max-width:80%;font-size:clamp(1.8rem,4vw,4.5rem);font-weight:700;line-height:.9;position:relative}.generated-preview i{background:#ffffff38;width:58%;height:1px;margin-top:16px;display:block}.generated-preview i:nth-of-type(2){width:38%}.generated-preview i:nth-of-type(3){width:22%}.project-blueprint .generated-preview{background:linear-gradient(#ffffff14 1px,#0000 1px) 0 0/28px 28px,linear-gradient(90deg,#ffffff14 1px,#0000 1px) 0 0/28px 28px,linear-gradient(135deg,#153f66,#08192a)}.project-orange .generated-preview{color:#291007;background:radial-gradient(circle at 72% 24%,#ffffff40,#0000 18%),linear-gradient(145deg,#ffb36a,#ef6d33 58%,#79230f)}.project-harbor .generated-preview{background:radial-gradient(circle at 78% 18%,#3cb7f24d,#0000 22%),linear-gradient(145deg,#0e4a72,#071d31 62%,#03101c)}.project-harbor .generated-preview:after{content:"H";color:#fff;background:#ff6b35;border-radius:16px;place-items:center;width:68px;height:68px;font:800 2rem/1 Inter,sans-serif;display:grid;position:absolute;bottom:14%;right:10%}.project-python .generated-preview{background:linear-gradient(145deg,#143950,#1f5f55 60%,#f2c64f 160%)}.project-matrix .generated-preview{background:repeating-linear-gradient(90deg,#0000 0 36px,#00f58a14 37px),linear-gradient(145deg,#041209,#08110b)}.project-testing .generated-preview{color:#0a180f;background:linear-gradient(145deg,#e7f0e9,#93dab2)}.project-testing .generated-preview i{background:#07291647}.project-commerce .generated-preview{color:#31170e;background:radial-gradient(circle at 78% 20%,#ffffff80,#0000 21%),linear-gradient(145deg,#f6dfc6,#df8f61 66%,#8e3b2d)}.project-commerce .generated-preview i{background:#4b1e134d}.project-property .generated-preview{background:linear-gradient(115deg,#0000 53%,#e2ae522e 53% 55%,#0000 55%),linear-gradient(145deg,#102b3c,#071721 65%,#b67a2c 170%)}.project-learning .generated-preview{background:radial-gradient(circle at 78% 23%,#ffd36538,#0000 21%),linear-gradient(145deg,#533b78,#251b3e 65%,#f1bf57 180%)}.project-dental .generated-preview{color:#072f34;background:radial-gradient(circle at 78% 22%,#ffffffad,#0000 22%),linear-gradient(145deg,#d9f5ef,#68c9bd 67%,#087882)}.project-dental .generated-preview i{background:#05495047}.project-red .project-visual:after,.project-orange .project-visual:after,.project-ocean .project-visual:after,.project-paper .project-visual:after,.project-evergreen .project-visual:after,.project-sand .project-visual:after,.project-harbor .project-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 62%,#0508063d);position:absolute;inset:0}.concept-note{color:#849087;max-width:800px;font:.68rem/1.6 var(--mono);margin:28px 0 0}.section-handoff-dark{color:#bcc5bf;border-top-color:#ffffff29}.section-handoff-dark span{border-color:var(--green);color:var(--green)}.section-handoff-dark:hover span,.section-handoff-dark:focus-visible span{color:var(--ink);background:var(--green)}.skills{background:#08100b}.skills .section-intro{color:#87928a}.skills-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));margin-top:76px;display:grid}.skill-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:370px;padding:28px;transition:background .22s,transform .22s}.skill-card:hover{background:#00f58a0f;transform:translateY(-6px)}.skill-number{color:var(--green);margin-bottom:74px;font-size:.64rem;display:block}.skill-card h3{letter-spacing:-.04em;text-transform:capitalize;max-width:190px;margin:0 0 28px;font-size:1.55rem;font-weight:560;line-height:1.15}.skill-card ul{margin:0;padding:0;list-style:none}.skill-card li{color:#8f9b92;border-bottom:1px solid #ffffff12;padding:8px 0;font-size:.82rem}.contact{color:#07110b;background:var(--green)}.contact .section-label{color:#10512f}.contact-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:100px;display:grid}.contact-grid>div:first-child>p{color:#155032;max-width:600px;margin:34px 0 0;font-size:1rem;line-height:1.7}.contact-actions{border-top:1px solid #05140c57;align-self:end}.contact-actions>a{color:#0a2d1a;min-height:58px;font:600 .74rem/1 var(--mono);text-transform:uppercase;border-bottom:1px solid #05140c57;justify-content:space-between;align-items:center;text-decoration:none;display:flex}.contact-actions>a:hover,.contact-actions>a:focus-visible{padding-right:8px}.contact-primary{grid-template-columns:1fr auto;gap:9px;padding:24px 0;position:relative;display:grid!important}.contact-primary span,.contact-primary strong{grid-column:1}.contact-primary span{opacity:.72;font-size:.64rem}.contact-primary strong{text-transform:none;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:clamp(1rem,2vw,1.4rem);font-weight:600}.contact-primary i{grid-area:1/2/3;align-self:center;font-size:1.4rem;font-style:normal}.footer{color:#7e8a82;font:.65rem/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;background:#050806;justify-content:space-between;align-items:center;padding:26px max(48px,50vw - 720px);display:flex}.footer p{margin:0}.footer a{color:var(--green);text-decoration:none}.music-player{z-index:1001;position:fixed;bottom:20px;right:20px}.music-player button{border:1px solid var(--green);min-height:42px;color:var(--green);cursor:pointer;font:.66rem/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#050806e6;padding:0 15px}@media (width<=1100px){:root{--content:calc(100vw - 56px)}.navbar{padding-inline:28px}.layout{grid-template-columns:1fr;gap:70px;min-height:auto;padding-top:160px;padding-bottom:100px}.terminal-wrap{width:min(620px,100% - 24px);margin-left:auto}.about,.projects,.skills,.contact{padding-inline:28px}.skills-grid{grid-template-columns:repeat(2,1fr)}.project-featured{grid-template-columns:1fr}.project-featured .project-content{min-height:360px}.contact-grid{grid-template-columns:1fr;gap:70px}.footer{padding-inline:28px}}@media (width<=760px){:root{--content:calc(100vw - 36px)}.mouse-glow{display:none}.navbar{grid-template-columns:1fr auto;min-height:66px;padding-inline:18px}.navbar ul{display:none}.nav-cta{grid-column:2}.layout{gap:60px;padding-top:126px;padding-bottom:72px}.hero h1{font-size:clamp(3.25rem,16vw,5.4rem)}.terminal-wrap{width:calc(100% - 14px)}.terminal-wrap:before{top:-14px;right:-14px}.terminal-body{min-height:290px;padding:18px;font-size:.67rem}.terminal-body form{align-items:flex-start}.terminal-body .prompt{display:none}.signal-strip{grid-template-columns:repeat(2,1fr)}.signal-strip span{border-bottom:1px solid var(--line);padding:16px 10px;font-size:.58rem}.about,.projects,.skills,.contact{padding:86px 18px}.section-heading-row{display:block}.section-heading h2,.contact h2{font-size:clamp(2.65rem,14vw,4.8rem)}.section-intro{margin-top:30px}.about-grid,.about-copy{grid-template-columns:1fr}.about-grid{gap:52px;margin-top:54px}.timeline{grid-template-columns:1fr}.timeline>span{justify-self:center;transform:rotate(90deg)}.project-filters{grid-template-columns:1fr;display:grid}.project-filters button{border-bottom:1px solid #aeb6ae;border-right:0}.project-filters button:last-child{border-bottom:0}.project-grid{grid-template-columns:1fr}.project-featured{grid-column:auto}.project-visual,.project-featured .project-visual{min-height:330px}.project-featured .project-content{min-height:330px;padding:32px 24px}.skills-grid{grid-template-columns:1fr}.skill-card{min-height:auto}.skill-number{margin-bottom:45px}.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-primary strong{overflow-wrap:anywhere}.footer{flex-direction:column;align-items:flex-start;gap:14px;padding:24px 18px 80px}.music-player{bottom:12px;right:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.mouse-glow{display:none}}
