@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,600;0,700;1,400;1,600&family=DM+Mono:wght@300;400;500&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{font-family:DM Mono,Courier New,monospace;font-size:16px;line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg: #060914;--bg-card: rgba(9, 14, 30, .72);--bg-card-hover: rgba(12, 20, 42, .88);--border: rgba(88, 128, 215, .11);--border-hover: rgba(105, 160, 235, .24);--text-primary: #dde6f5;--text-secondary: #5c6f90;--text-muted: #28374f;--neon-cyan: #64d8eb;--neon-purple: #b49ee4;--neon-green: #6dd4a6;--neon-pink: #e08ab4}body{background-color:var(--bg);background-image:radial-gradient(ellipse 80% 50% at 14% 7%,rgba(14,165,233,.09) 0%,transparent 60%),radial-gradient(ellipse 55% 58% at 90% 20%,rgba(139,92,246,.07) 0%,transparent 55%),radial-gradient(ellipse 48% 36% at 52% 94%,rgba(20,184,166,.05) 0%,transparent 50%);color:var(--text-primary);min-height:100vh;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(1px 1px at 4% 7%,rgba(255,255,255,.42) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 13% 24%,rgba(255,255,255,.28) 0%,transparent 100%),radial-gradient(1px 1px at 22% 4%,rgba(255,255,255,.46) 0%,transparent 100%),radial-gradient(1px 1px at 31% 37%,rgba(255,255,255,.22) 0%,transparent 100%),radial-gradient(1px 1px at 43% 13%,rgba(255,255,255,.36) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 56% 26%,rgba(255,255,255,.38) 0%,transparent 100%),radial-gradient(1px 1px at 63% 5%,rgba(255,255,255,.3) 0%,transparent 100%),radial-gradient(1px 1px at 72% 42%,rgba(255,255,255,.22) 0%,transparent 100%),radial-gradient(1px 1px at 84% 10%,rgba(255,255,255,.4) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 93% 31%,rgba(255,255,255,.32) 0%,transparent 100%),radial-gradient(1px 1px at 7% 55%,rgba(255,255,255,.22) 0%,transparent 100%),radial-gradient(1px 1px at 17% 68%,rgba(255,255,255,.28) 0%,transparent 100%),radial-gradient(1px 1px at 28% 48%,rgba(255,255,255,.33) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 39% 74%,rgba(255,255,255,.2) 0%,transparent 100%),radial-gradient(1px 1px at 48% 60%,rgba(255,255,255,.38) 0%,transparent 100%),radial-gradient(1px 1px at 61% 83%,rgba(255,255,255,.25) 0%,transparent 100%),radial-gradient(1px 1px at 74% 65%,rgba(255,255,255,.32) 0%,transparent 100%),radial-gradient(1px 1px at 87% 78%,rgba(255,255,255,.22) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 97% 57%,rgba(255,255,255,.3) 0%,transparent 100%),radial-gradient(1px 1px at 2% 92%,rgba(255,255,255,.2) 0%,transparent 100%),radial-gradient(1px 1px at 11% 97%,rgba(255,255,255,.28) 0%,transparent 100%),radial-gradient(1px 1px at 35% 88%,rgba(255,255,255,.33) 0%,transparent 100%),radial-gradient(1px 1px at 52% 95%,rgba(255,255,255,.2) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 67% 87%,rgba(255,255,255,.27) 0%,transparent 100%),radial-gradient(1px 1px at 79% 94%,rgba(255,255,255,.33) 0%,transparent 100%),radial-gradient(1px 1px at 95% 83%,rgba(255,255,255,.2) 0%,transparent 100%),radial-gradient(2px 2px at 19% 39%,rgba(100,216,235,.38) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 76% 17%,rgba(180,158,228,.38) 0%,transparent 100%),radial-gradient(1px 1px at 42% 62%,rgba(100,216,235,.28) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 89% 48%,rgba(180,158,228,.28) 0%,transparent 100%),radial-gradient(2px 2px at 58% 79%,rgba(100,216,235,.22) 0%,transparent 100%);pointer-events:none;z-index:0}[data-theme=light]{--bg: #faf6ff;--bg-card: rgba(255, 255, 255, .8);--bg-card-hover: rgba(255, 255, 255, .96);--border: rgba(178, 155, 224, .22);--border-hover: rgba(155, 125, 215, .38);--text-primary: #291852;--text-secondary: #796898;--text-muted: #c0b2d6;--neon-cyan: #3db4ca;--neon-purple: #8f6dc0;--neon-green: #52a882;--neon-pink: #c86a9a}[data-theme=light] body{background-image:radial-gradient(ellipse 80% 55% at 18% 4%,rgba(186,230,253,.58) 0%,transparent 60%),radial-gradient(ellipse 65% 58% at 90% 16%,rgba(221,214,254,.52) 0%,transparent 55%),radial-gradient(ellipse 55% 46% at 50% 96%,rgba(253,216,234,.48) 0%,transparent 50%)}[data-theme=light] body:before{display:none}a{text-decoration:none;color:inherit}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.site{max-width:1080px;margin:0 auto;padding:80px 32px 64px;min-height:100vh;display:flex;flex-direction:column;position:relative;z-index:1}.theme-toggle{position:absolute;top:32px;right:32px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);border-radius:50%;width:42px;height:42px;font-size:17px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .3s ease,color .3s ease,box-shadow .3s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.theme-toggle:hover{border-color:var(--border-hover);color:var(--text-primary);box-shadow:0 0 20px #64d8eb2e}[data-theme=light] .theme-toggle:hover{box-shadow:0 0 20px #8f6dc02e}.site main{flex:1}.header{margin-bottom:80px;animation:fadeUp .9s cubic-bezier(.22,1,.36,1) both}.header-eyebrow{font-size:.66rem;font-weight:400;letter-spacing:.24em;text-transform:uppercase;color:var(--neon-cyan);opacity:.62;margin-bottom:14px}.header-name{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(3.2rem,9vw,6rem);font-weight:600;letter-spacing:-.025em;line-height:.95;color:var(--text-primary);margin-bottom:26px}.header-name span{color:var(--neon-cyan);font-style:italic;text-shadow:0 0 40px color-mix(in srgb,var(--neon-cyan) 30%,transparent)}.header-divider{width:52px;height:1px;background:linear-gradient(90deg,var(--neon-cyan),transparent);margin-bottom:22px;opacity:.45}.header-tagline{font-size:.8rem;color:var(--text-secondary);max-width:380px;line-height:1.9;letter-spacing:.03em}.section-label{font-size:.62rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:18px;animation:fadeUp .9s cubic-bezier(.22,1,.36,1) .15s both}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.project-card{display:block;border-radius:14px;padding:26px 28px;cursor:pointer;position:relative;overflow:hidden;background:var(--bg-card);border:1px solid var(--border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:border-color .35s ease,box-shadow .35s ease,background .35s ease,transform .35s cubic-bezier(.22,1,.36,1);animation:fadeUp .9s cubic-bezier(.22,1,.36,1) both}.project-card:nth-child(1){animation-delay:.25s}.project-card:nth-child(2){animation-delay:.38s}.project-card:nth-child(3){animation-delay:.51s}.project-card:nth-child(4){animation-delay:.64s}.project-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;background:radial-gradient(80% 60% at 50% 115%,color-mix(in srgb,var(--card-accent) 10%,transparent) 0%,transparent 70%);opacity:0;transition:opacity .4s ease;pointer-events:none}.project-card:hover{background:var(--bg-card-hover);border-color:color-mix(in srgb,var(--card-accent) 28%,var(--border));transform:translateY(-4px);box-shadow:0 14px 50px #00000061,0 0 0 1px color-mix(in srgb,var(--card-accent) 16%,transparent),0 0 32px color-mix(in srgb,var(--card-accent) 9%,transparent)}[data-theme=light] .project-card:hover{box-shadow:0 8px 32px #5032a01a,0 0 0 1px color-mix(in srgb,var(--card-accent) 22%,transparent)}.project-card:hover:after{opacity:1}.card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.card-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:19px;background:color-mix(in srgb,var(--card-accent) 7%,var(--bg));border:1px solid color-mix(in srgb,var(--card-accent) 16%,var(--border));flex-shrink:0;transition:border-color .3s ease,background .3s ease}.project-card:hover .card-icon{background:color-mix(in srgb,var(--card-accent) 13%,var(--bg));border-color:color-mix(in srgb,var(--card-accent) 28%,var(--border))}.card-arrow{color:var(--text-muted);font-size:15px;margin-top:2px;transition:color .25s ease,transform .25s ease,filter .25s ease}.project-card:hover .card-arrow{color:var(--card-accent);transform:translate(3px,-3px);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--card-accent) 55%,transparent))}.card-title{font-family:Cormorant Garamond,Georgia,serif;font-size:1.18rem;font-weight:600;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.01em;line-height:1.25}.card-description{font-size:.77rem;color:var(--text-secondary);line-height:1.8;margin-bottom:20px;letter-spacing:.01em}.card-tags{display:flex;flex-wrap:wrap;gap:6px}.card-tag{font-size:.6rem;font-weight:400;letter-spacing:.09em;padding:3px 9px;border-radius:4px;border:1px solid var(--border);color:var(--text-muted);background:transparent}.footer{margin-top:96px;padding-top:24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;animation:fadeUp .9s cubic-bezier(.22,1,.36,1) .5s both}.footer-text{font-size:.7rem;color:var(--text-muted);letter-spacing:.06em}.footer-links{display:flex;gap:24px}.footer-link{font-size:.7rem;color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;transition:color .2s ease,text-shadow .2s ease}.footer-link:hover{color:var(--neon-cyan);text-shadow:0 0 12px color-mix(in srgb,var(--neon-cyan) 45%,transparent)}[data-theme=light] .footer-link:hover{text-shadow:none}@media (max-width: 640px){.site{padding:56px 20px}.header{margin-bottom:56px}.header-name{font-size:clamp(2.8rem,14vw,3.5rem)}.projects-grid{grid-template-columns:1fr}.theme-toggle{top:20px;right:20px}}
