@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk Fallback;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_dd5b2f{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_dd5b2f{--font-space:"Space Grotesk","Space Grotesk Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_3c557b{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}:root{--bg:#f1ebdd;--bg-soft:#ece4d2;--bg-warm:#f6efde;--primary:#1a1a1a;--secondary:#2a2a2a;--accent:#8c6a1a;--accent-soft:#b08a2a;--accent-hover:#6d5212;--ocean-deep:#2a6f8a;--ocean-mid:#6cb1c9;--ocean-light:#b9dde8;--sunlight:#fff4d6;--text:#1a1a1a;--text-secondary:rgba(20,16,10,0.7);--text-tertiary:rgba(20,16,10,0.5);--border:rgba(20,16,10,0.12);--glass-bg:rgba(255,255,255,0.35);--glass-bg-hover:rgba(255,255,255,0.5);--glass-border:rgba(255,255,255,0.55);--glass-shadow:0 12px 32px rgba(40,70,90,0.10),0 2px 8px rgba(40,70,90,0.06);--glass-shadow-hover:0 20px 48px rgba(40,70,90,0.16),0 4px 12px rgba(40,70,90,0.08);--glass-inset:inset 1.5px 1.5px 1px 0 rgba(255,255,255,0.7),inset -1px -1px 1px 0.5px rgba(255,255,255,0.45);--ease-out-expo:cubic-bezier(0.16,1,0.3,1);--ease-glass:cubic-bezier(0.175,0.885,0.32,2.2)}*{margin:0;padding:0;box-sizing:border-box}body,html{font-family:var(--font-space),"Space Grotesk",-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 18% 22%,rgba(255,244,214,.65),transparent 55%),radial-gradient(circle at 78% 12%,rgba(108,177,201,.45),transparent 55%),radial-gradient(circle at 88% 82%,rgba(42,111,138,.35),transparent 60%),radial-gradient(circle at 12% 88%,rgba(185,221,232,.55),transparent 60%),linear-gradient(160deg,#f4eedb,#e9e1cb 45%,#d6e1e3);background-attachment:fixed}.app,body,html{overflow:hidden;height:100vh;width:100vw}.app{position:relative}.app:after,.app:before{content:"";position:fixed;inset:-10%;pointer-events:none;z-index:0}.app:before{background:radial-gradient(ellipse 60% 50% at 30% 30%,rgba(108,177,201,.28),transparent 60%),radial-gradient(ellipse 50% 40% at 70% 60%,rgba(42,111,138,.22),transparent 65%),radial-gradient(ellipse 40% 30% at 50% 80%,rgba(185,221,232,.3),transparent 60%);filter:blur(40px);mix-blend-mode:screen;animation:ocean-drift 22s ease-in-out infinite alternate}.app:after{background:linear-gradient(115deg,transparent,transparent 35%,rgba(255,244,214,.18) 45%,rgba(255,255,255,.35) 50%,rgba(255,244,214,.18) 55%,transparent 65%,transparent),linear-gradient(75deg,transparent 20%,rgba(255,250,230,.12) 50%,transparent 80%);background-size:250% 250%,200% 200%;mix-blend-mode:soft-light;animation:sunlight-shimmer 14s ease-in-out infinite}@keyframes ocean-drift{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(2%,-1%,0) scale(1.03)}to{transform:translate3d(-1.5%,1.5%,0) scale(1.02)}}@keyframes sunlight-shimmer{0%{background-position:0 0,100% 0;opacity:.85}50%{background-position:60% 40%,30% 60%;opacity:1}to{background-position:100% 80%,0 100%;opacity:.85}}::selection{background:var(--accent);color:#fff}.hero{position:relative;z-index:10;height:100vh;width:100vw;padding:2rem}.hero,.hero-container{display:flex;align-items:center;justify-content:center}.hero-container{gap:3rem;max-width:1000px;width:100%;margin:0 auto}.profile-section{display:flex;flex-direction:column;align-items:center;gap:1.25rem;flex-shrink:0}.profile-card{padding:1rem;border-radius:28px;background:var(--glass-bg);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),var(--glass-inset);transition:all .6s var(--ease-glass);position:relative;isolation:isolate}.profile-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,.1) 40%,rgba(255,255,255,.35));mix-blend-mode:overlay}.profile-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--glass-shadow-hover),var(--glass-inset);border-color:rgba(255,255,255,.75)}.profile-image{width:160px;height:160px;border-radius:20px;overflow:hidden;position:relative;z-index:1}.profile-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out-expo)}.profile-card:hover .profile-image img{transform:scale(1.05)}.profile-info{text-align:center;max-width:220px}.profile-info h1{font-size:1.5rem;font-weight:600;color:var(--primary);letter-spacing:-.02em}.profile-info .philosophy{font-size:.75rem;color:var(--text-secondary);margin-top:.75rem;line-height:1.5}.profile-meta{display:flex;flex-direction:column;align-items:center;gap:1rem}.interests{display:flex;gap:.4rem}.interest-badge{padding:.4rem .85rem;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;background:var(--glass-bg);backdrop-filter:blur(8px) saturate(160%);-webkit-backdrop-filter:blur(8px) saturate(160%);border:1px solid var(--glass-border);border-radius:100px;color:var(--secondary);box-shadow:var(--glass-inset);transition:all .3s var(--ease-out-expo)}.interest-badge:hover{background:var(--glass-bg-hover);color:var(--primary);border-color:rgba(140,106,26,.4)}.contact-icons{display:flex;gap:.5rem}.contact-icon-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono),monospace;font-size:.85rem;font-weight:600;color:var(--primary);text-decoration:none;background:var(--glass-bg);backdrop-filter:blur(8px) saturate(160%);-webkit-backdrop-filter:blur(8px) saturate(160%);border:1px solid var(--glass-border);border-radius:50%;box-shadow:var(--glass-inset);transition:all .3s var(--ease-out-expo)}.contact-icon-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:scale(1.1)}.projects-showcase{flex:1 1;display:flex;flex-direction:column;gap:1rem;max-width:560px;position:relative}.showcase-eyebrow{font-family:var(--font-mono),monospace;font-size:.7rem;font-weight:600;color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.25rem}.showcase-list{display:flex;flex-direction:column;background:var(--glass-bg);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border:1px solid var(--glass-border);border-radius:20px;padding:.5rem 1rem;box-shadow:var(--glass-shadow),var(--glass-inset)}.showcase-row{position:relative;display:block;padding:.7rem .25rem;border-top:1px solid var(--border);text-decoration:none;color:inherit;transition:padding .35s var(--ease-out-expo)}.showcase-row:first-child{border-top:none}.showcase-row.is-open{padding-top:.85rem;padding-bottom:.95rem}.showcase-row:before{content:"";position:absolute;inset:4px -8px;border-radius:12px;background:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.6);box-shadow:var(--glass-inset);opacity:0;transform:scale(.96);transition:opacity .3s var(--ease-out-expo),transform .3s var(--ease-out-expo);pointer-events:none}.showcase-row.is-open:before{opacity:1;transform:scale(1)}.showcase-row-inner{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.showcase-main{flex:1 1;min-width:0}.showcase-title-row{display:inline-flex;align-items:center;gap:.5rem}.showcase-title{position:relative;font-size:1.05rem;font-weight:600;color:var(--primary);letter-spacing:-.02em}.showcase-title:after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:0;background:currentColor;transition:width .3s var(--ease-out-expo)}.showcase-row.is-open .showcase-title:after{width:100%}.showcase-arrow{width:14px;height:14px;color:var(--text-secondary);opacity:0;transform:translate(-4px,4px);transition:opacity .3s var(--ease-out-expo),transform .3s var(--ease-out-expo)}.showcase-row.is-open .showcase-arrow{opacity:1;transform:translate(0)}.showcase-expandable{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s var(--ease-out-expo),opacity .3s var(--ease-out-expo)}.showcase-row.is-open .showcase-expandable{grid-template-rows:1fr;opacity:1}.showcase-expandable-inner{overflow:hidden;min-height:0}.showcase-role{font-family:var(--font-mono),monospace;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-top:.55rem}.showcase-description{font-size:.82rem;color:var(--text-secondary);line-height:1.5;margin-top:.35rem}.showcase-status{font-family:var(--font-mono),monospace;font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);white-space:nowrap;padding-top:.35rem;transition:color .3s var(--ease-out-expo)}.showcase-row.is-open .showcase-status{color:var(--accent)}.showcase-links{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}.showcase-link{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono),monospace;font-size:.68rem;font-weight:500;color:var(--accent);text-decoration:none;padding:.25rem .55rem;background:rgba(255,255,255,.55);border:1px solid rgba(140,106,26,.25);border-radius:6px;transition:all .2s var(--ease-out-expo)}.showcase-link:hover{background:var(--accent);color:#fff;border-color:var(--accent)}@media (max-width:900px){body,html{overflow:auto}.app,body,html{height:auto;min-height:100vh;min-height:100dvh}.app{overflow:visible}.hero{height:auto;min-height:100vh;min-height:100dvh;padding:1.5rem 1rem 2.5rem;align-items:flex-start}.hero-container{flex-direction:column;gap:1.75rem;padding:0}.profile-section{flex-direction:row;gap:1.25rem;width:100%;justify-content:flex-start;align-items:center}.profile-card{padding:.65rem}.profile-image{width:96px;height:96px;border-radius:14px}.profile-info{text-align:left;max-width:none;flex:1 1;min-width:0}.profile-info h1{font-size:1.35rem}.profile-info .philosophy{font-size:.75rem;margin-top:.4rem}.profile-meta{flex-direction:column;align-items:flex-start;gap:.7rem}.projects-showcase{width:100%;max-width:none}.showcase-expandable{grid-template-rows:1fr;opacity:1}.showcase-arrow{opacity:1;transform:none}.showcase-row{padding:.85rem .25rem}.showcase-row:before{opacity:0}}@media (max-width:600px){.hero{padding:1.25rem .9rem 2.5rem}.hero-container{gap:1.5rem}.profile-section{flex-direction:column;align-items:center;text-align:center;gap:1rem}.profile-image{width:110px;height:110px}.profile-info{text-align:center}.profile-meta{align-items:center}.showcase-list{padding:.4rem .85rem;border-radius:16px}.showcase-title{font-size:1rem}.showcase-description{font-size:.8rem}.showcase-status{font-size:.6rem}.showcase-row-inner{gap:.6rem}.showcase-links{gap:.35rem}}@media (max-width:380px){.hero{padding:1rem .75rem 2.5rem}.profile-info h1{font-size:1.2rem}.showcase-title{font-size:.95rem}.showcase-link{font-size:.62rem;padding:.22rem .45rem}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.welcome-overlay{position:fixed;inset:0;z-index:60;pointer-events:none}.welcome-dim{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(20,40,60,.55) 0,rgba(20,40,60,.35) 35%,rgba(20,40,60,.18) 65%,rgba(20,40,60,.05) 100%)}.welcome-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.08em;color:#ffffff;font-family:Space Grotesk,Arial,sans-serif;font-weight:700;font-size:clamp(2.8rem,11vw,9rem);letter-spacing:.04em;line-height:1;text-shadow:0 4px 32px rgba(20,40,60,.45)}.welcome-line{display:flex}.welcome-letter{display:inline-block;opacity:0;transform:translate3d(0,24px,0);filter:blur(12px);animation:welcome-letter-in .85s cubic-bezier(.22,1,.36,1) both;will-change:opacity,transform,filter}@keyframes welcome-letter-in{to{opacity:1;transform:translateZ(0);filter:blur(0)}}