@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Manrope:wght@400;600&display=swap);:root{--bg:#050910;--panel:#ffffff0a;--panel-strong:#ffffff14;--accent:#f7c948;--accent-2:#64d8e3;--text:#eaf2ff;--muted:#b7c2d6;--border:#ffffff1f;--shadow:0 30px 80px #05091073}*{box-sizing:border-box;scroll-behavior:smooth}.portfolio{background:radial-gradient(120% 120% at 20% 20%,#f7c94814,#0000),radial-gradient(90% 100% at 80% 0,#64d8e31a,#0000),#050910;background:radial-gradient(120% 120% at 20% 20%,#f7c94814,#0000),radial-gradient(90% 100% at 80% 0,#64d8e31a,#0000),var(--bg);color:#eaf2ff;color:var(--text);font-family:Space Grotesk,Manrope,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;overflow-x:hidden;padding:clamp(16px,4vw,32px) clamp(16px,4vw,32px) 160px;position:relative}.portfolio:before{background:radial-gradient(60% 60% at 50% 40%,#ffffff0a,#0000);content:"";inset:0;pointer-events:none;position:fixed;z-index:-2}header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff0a,#ffffff05);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:24px;box-shadow:0 30px 80px #05091073;box-shadow:var(--shadow);margin-bottom:clamp(28px,5vw,48px);overflow:hidden;padding:clamp(18px,5vw,40px);position:relative}.three-d-container{height:clamp(160px,35vw,240px);inset:0;opacity:.45;position:absolute;width:100%;z-index:0}.hero-grid{grid-gap:clamp(16px,4vw,28px);align-items:center;display:grid;gap:clamp(16px,4vw,28px);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));position:relative;z-index:1}.hero-text h1{font-size:clamp(26px,6vw,42px);letter-spacing:-.5px;margin:6px 0}.eyebrow{background:#ffffff14;background:var(--panel-strong);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:999px;color:#f7c948;color:var(--accent);display:inline-block;font-size:12px;letter-spacing:.08em;padding:6px 12px;text-transform:uppercase}.hero-text p{color:#b7c2d6;color:var(--muted);line-height:1.6;margin:0}.highlight-name{color:#f7c948;color:var(--accent)}.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.hero-tags span{background:#ffffff0a;background:var(--panel);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;color:#eaf2ff;color:var(--text);font-size:14px;padding:8px 12px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.ghost-cta,.primary-cta{align-items:center;border:1px solid #0000;border-radius:12px;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:12px 16px;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease}.primary-cta{background:linear-gradient(135deg,#f7c948,#e09f1f);background:linear-gradient(135deg,var(--accent),#e09f1f);box-shadow:0 10px 30px #f0b12e59;color:#0c0c0c}.primary-cta:hover{box-shadow:0 14px 34px #f0b12e73;transform:translateY(-2px)}.ghost-cta{background:#0000;border-color:#ffffff1f;border-color:var(--border);color:#eaf2ff;color:var(--text)}.ghost-cta:hover{border-color:#f7c948;border-color:var(--accent);color:#f7c948;color:var(--accent);transform:translateY(-2px)}.cta-stack{align-items:center;display:inline-flex;gap:8px;position:relative}.mail-cta{background:linear-gradient(135deg,#f7c948,#e09f1f);border:1px solid #ffffff1f;border-radius:50%;box-shadow:0 12px 24px #f0b12e59;display:grid;height:42px;margin-left:-16px;place-items:center;transition:transform .25s ease,box-shadow .25s ease;width:42px}.mail-cta:hover{box-shadow:0 16px 34px #f0b12e80;transform:translateY(-3px)}.hero-visual{grid-gap:12px;display:grid;gap:12px;place-items:center}.header-icon{background:radial-gradient(circle,#f7c94833,#0000);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:50%;display:grid;height:64px;place-items:center;width:64px}.profile-pic{border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:22px;box-shadow:0 30px 80px #05091073;box-shadow:var(--shadow);height:clamp(220px,46vw,360px);object-fit:cover;width:clamp(220px,46vw,360px)}.hero-badges{grid-gap:8px;display:grid;gap:8px;width:100%}.hero-badge{grid-gap:10px;align-items:center;background:#ffffff0a;background:var(--panel);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:14px;color:#eaf2ff;color:var(--text);display:grid;gap:10px;grid-template-columns:auto 1fr;padding:12px}.hero-badge.secondary{border-color:#64d8e359}.hero-badge strong{color:#eaf2ff;color:var(--text);display:block}.hero-badge span{color:#b7c2d6;color:var(--muted);font-size:13px}.hero-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:18px;position:relative;z-index:1}.stat-chip{grid-gap:10px;align-items:center;background:#ffffff0a;background:var(--panel);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;display:grid;gap:10px;grid-template-columns:auto 1fr;padding:12px 14px}.stat-chip strong{color:#eaf2ff;color:var(--text)}.stat-chip span{color:#b7c2d6;color:var(--muted);font-size:13px}.dock{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050910cc;border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:999px;bottom:16px;box-shadow:0 12px 30px #00000059;display:flex;gap:10px;left:50%;padding:10px 14px;pointer-events:auto;position:fixed;transform:translateX(-50%);z-index:1000}.dock-side{bottom:auto;flex-direction:column;gap:8px;left:auto;padding:10px;right:16px;top:50%;transform:translateY(-50%) scale(.9)}.dock-item{background:#ffffff0a;background:var(--panel);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;display:grid;height:40px;place-items:center;transition:transform .2s ease,background .2s ease,border-color .2s ease;width:40px}.dock-item:hover{background:#ffffff14;background:var(--panel-strong);border-color:#f7c948;border-color:var(--accent)}.dock-item:focus{outline:2px solid #f7c948;outline:2px solid var(--accent);outline-offset:2px}h2{font-size:clamp(22px,5vw,30px);margin:12px 0}h3{color:#f7c948;color:var(--accent);font-size:clamp(16px,4vw,22px);margin-bottom:6px}p{color:#b7c2d6;color:var(--muted);line-height:1.7;margin:0;max-width:75ch}.about,.contact,.experiences,.projects,.values{background:#ffffff0a;background:var(--panel);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:18px;box-shadow:0 30px 80px #05091073;box-shadow:var(--shadow);margin-bottom:clamp(28px,5vw,48px);padding:clamp(16px,3vw,24px)}.section-icon{margin-bottom:8px}.tech-section{margin-top:clamp(16px,4vw,28px)}.exp-list,.project-list,.skills,.tech-logos,.values-list{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.exp-card,.project-card,.skill-card,.value-card{background:linear-gradient(160deg,#ffffff0d,#ffffff05);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:14px;overflow:hidden;padding:clamp(12px,3vw,20px);position:relative;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.exp-card:hover,.project-card:hover,.skill-card:hover,.value-card:hover{border-color:#f7c94866;box-shadow:0 18px 40px #05091080;transform:translateY(-4px)}.tech-logos .tech-icon{align-items:center;background:#ffffff0a;background:var(--panel);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:10px}.tech-icon span{color:#b7c2d6;color:var(--muted);font-size:12px}.working{margin-bottom:clamp(28px,5vw,48px)}.working-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.working-card{background:linear-gradient(160deg,#ffffff0d,#ffffff05);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:14px;box-shadow:0 30px 80px #05091073;box-shadow:var(--shadow);padding:clamp(12px,3vw,18px)}.working-card ul{color:#b7c2d6;color:var(--muted);line-height:1.5;padding-left:18px}.snippets{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr;margin-top:12px}.snippet-card{background:#ffffff0a;border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:14px;overflow:hidden;padding:12px;position:relative}.snippet-header h4{margin:0}.snippet-header span{color:#b7c2d6;color:var(--muted);font-size:13px}.snippet-card pre{background:#00000059;border-radius:10px;color:#eaf2ff;color:var(--text);font-size:13px;line-height:1.5;overflow:auto;padding:10px;position:relative}.snippet-card pre.code-window,.typewriter-window{background:#0d1117;border:1px solid #ffffff14}.typewriter-window{border-left:3px solid #f7c948;border-left:3px solid var(--accent);box-shadow:inset 0 0 0 1px #ffffff0a;color:#e5e7ff;contain:content;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;line-height:1.6;min-height:120px;padding:12px;text-shadow:0 0 6px #64d8e340;white-space:pre-wrap}.typewriter-window code{display:block}.code-plain{display:inline-block;transform:translateZ(0);white-space:pre-wrap;will-change:contents}.code-colored{opacity:1;transition:opacity .4s ease;white-space:pre-wrap}.typewriter-window .token.comment{color:#34d399;font-style:italic}.typewriter-window .token.keyword{color:#ffc22d}.typewriter-window .token.string{color:#c084fc}.typewriter-window .token.number{color:#fbbf24}.typewriter-window .token.function{color:#7dd3fc}.typewriter-window .token.operator{color:#a5b4fc}.window-dots{display:flex;gap:6px;margin-bottom:6px}.dot{border-radius:50%;display:inline-block;height:10px;width:10px}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27c93f}.projects-intro{color:#b7c2d6;color:var(--muted);margin:6px 0 14px}.filter-buttons{display:inline-flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.filter-buttons button{background:#ffffff14;background:var(--panel-strong);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;color:#eaf2ff;color:var(--text);cursor:pointer;font-size:13px;min-height:44px;padding:10px 14px;transition:transform .2s ease,border-color .2s ease,color .2s ease}.filter-buttons button:hover{border-color:#f7c948;border-color:var(--accent);color:#f7c948;color:var(--accent);transform:translateY(-2px)}.project-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.project-card:after{background:linear-gradient(180deg,#f7c94814,#0000 60%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .25s ease}.project-card:hover:after{opacity:1}.project-cover{aspect-ratio:16/9;border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;margin-bottom:12px;object-fit:cover;width:100%}.tech-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px}.project-details p{color:#eaf2ff;color:var(--text);margin:4px 0}.tech-tags span{background:#f7c9481f;border:1px solid #f7c94859;border-radius:999px;color:#eaf2ff;color:var(--text);font-size:12px;padding:6px 10px}.project-buttons{display:flex;flex-wrap:wrap;gap:8px}.demo-button,.github-button{background:#ffffff14;background:var(--panel-strong);border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;color:#eaf2ff;color:var(--text);cursor:pointer;font-size:13px;min-height:44px;padding:10px 14px;transition:transform .2s ease,border-color .2s ease,background .2s ease}.demo-button:hover,.github-button:hover{border-color:#f7c948;border-color:var(--accent);transform:translateY(-2px)}.github-button{background:#ffffff0f}.github-button:hover{background:#ffffff1a}.contact form{display:flex;flex-direction:column;gap:10px;margin:0 auto;max-width:clamp(280px,85vw,520px)}.contact input,.contact textarea{background:#ffffff05;border:1px solid #ffffff1f;border:1px solid var(--border);border-radius:12px;color:#eaf2ff;color:var(--text);font-size:14px;padding:12px;resize:vertical}.contact input:focus,.contact textarea:focus{outline:2px solid #f7c948;outline:2px solid var(--accent);outline-offset:2px}.contact button{align-self:center;background:linear-gradient(135deg,#f7c948,#e09f1f);background:linear-gradient(135deg,var(--accent),#e09f1f);border:none;border-radius:12px;box-shadow:0 12px 30px #f0b12e59;color:#0c0c0c;cursor:pointer;font-size:14px;min-height:44px;min-width:auto;padding:12px 16px;transition:transform .2s ease,box-shadow .2s ease;width:-webkit-fit-content;width:fit-content}.contact button:hover{box-shadow:0 16px 40px #f0b12e73;transform:translateY(-2px)}.contact button:disabled{cursor:not-allowed;opacity:.6}.spinner{animation:spin 1s ease-in-out infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.contact-message{border-radius:12px;font-size:14px;margin-left:auto;margin-right:auto;margin-top:12px;max-width:clamp(280px,85vw,520px);padding:12px;text-align:center}.contact-message.success{background-color:#4caf5029;border:1px solid #4caf5059;color:#b2f5b4}.contact-message.error{background-color:#f4433629;border:1px solid #f4433659;color:#ffb3ad}footer{border-top:1px solid #ffffff1f;border-top:1px solid var(--border);color:#b7c2d6;color:var(--muted);margin-top:32px;padding:16px;text-align:center}footer a{color:#f7c948;color:var(--accent);text-decoration:none}footer a:hover{text-decoration:underline}.socials{display:flex;gap:12px;justify-content:center;margin-top:8px}@media (max-width:820px){.nav-icons{bottom:90px;flex-direction:row;right:14px;top:auto}}@media (max-width:640px){.portfolio{padding:14px}.filter-buttons button,.hero-tags span,.project-buttons button{text-align:center;width:100%}.hero-actions{width:100%}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#050910;color:#eaf2ff;margin:0}