@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";.aquarium-environment[data-astro-cid-rudmwgff]{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:0;overflow:hidden}.bubbles-layer[data-astro-cid-rudmwgff],.swimming-creatures[data-astro-cid-rudmwgff]{position:absolute;inset:0}.fish-instance[data-astro-cid-rudmwgff]{position:absolute;will-change:transform;pointer-events:none}.fish-1[data-astro-cid-rudmwgff]{top:28%;animation:swim-left-to-right 24s linear infinite}.fish-2[data-astro-cid-rudmwgff]{top:65%;animation:swim-right-to-left 32s linear infinite}.nano-fish[data-astro-cid-rudmwgff]{position:absolute;left:-20px;width:12px;height:4px;background:linear-gradient(90deg,#00f5ff,#fff);border-radius:4px;opacity:.55;box-shadow:0 0 6px #00f5ff;animation:swim-left-to-right linear infinite}.jellyfish-creature[data-astro-cid-rudmwgff]{position:absolute;right:8%;top:38%;animation:jellyfish-pulse 8s ease-in-out infinite;filter:drop-shadow(0 0 15px rgba(0,245,255,.4))}.sea-floor-flora[data-astro-cid-rudmwgff]{position:fixed;bottom:0;left:0;width:100%;height:150px;pointer-events:none;z-index:0;opacity:.85}.flora-cluster[data-astro-cid-rudmwgff]{position:absolute;bottom:-10px;width:180px;height:140px}.left-flora[data-astro-cid-rudmwgff]{left:1rem}.right-flora[data-astro-cid-rudmwgff]{right:1rem}.flora-svg[data-astro-cid-rudmwgff]{width:100%;height:100%}.seaweed-stem-1[data-astro-cid-rudmwgff]{animation:seaweed-sway 7s ease-in-out infinite;transform-origin:bottom center}.seaweed-stem-2[data-astro-cid-rudmwgff]{animation:seaweed-sway-reverse 8.5s ease-in-out infinite;transform-origin:bottom center}@media(max-width:768px){.jellyfish-creature[data-astro-cid-rudmwgff]{display:none}.flora-cluster[data-astro-cid-rudmwgff]{width:100px;height:90px;opacity:.5}.fish-2[data-astro-cid-rudmwgff]{display:none}}:root{--bg-deep: #031321;--bg-midnight: #071e35;--bg-abyss: #020a12;--bg-surface: rgba(7, 30, 53, .65);--bg-surface-elevated: rgba(11, 40, 70, .75);--bg-surface-hover: rgba(16, 54, 92, .85);--neon-cyan: #00f5ff;--neon-aqua: #20e3d2;--prism-purple: #9b5cff;--prism-violet: #6b2cf5;--coral-pink: #ff5db1;--amber-gold: #ffbe3b;--text-main: #eafbff;--text-muted: #9ab8c8;--text-dim: #608298;--border-glass: rgba(0, 245, 255, .16);--border-glass-glow: rgba(0, 245, 255, .45);--border-purple: rgba(155, 92, 255, .35);--border-coral: rgba(255, 93, 177, .35);--glow-cyan: 0 0 20px rgba(0, 245, 255, .35);--glow-purple: 0 0 20px rgba(155, 92, 255, .35);--glow-coral: 0 0 20px rgba(255, 93, 177, .35);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--prism-gradient: linear-gradient(135deg, #00f5ff 0%, #20e3d2 25%, #9b5cff 55%, #ec4899 80%, #ff5db1 100%);--aurora-gradient: linear-gradient(135deg, #00f5ff 0%, #3b82f6 30%, #8b5cf6 60%, #ec4899 100%);--sunset-gradient: linear-gradient(135deg, #ff5db1 0%, #ec4899 40%, #f59e0b 100%);--cyan-emerald: linear-gradient(135deg, #00f5ff 0%, #10b981 100%);--ocean-gradient: radial-gradient(ellipse at 50% -10%, #0c3358 0%, #031321 45%, #020a12 100%);--font-sans: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-full: 9999px;--nav-height: 72px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);color:var(--text-main);background-color:var(--bg-deep);scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 1.5rem);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{min-height:100vh;position:relative;overflow-x:hidden;background:var(--ocean-gradient);line-height:1.65;font-size:1rem}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#020a12}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--neon-cyan),var(--prism-purple));border-radius:var(--radius-full);border:2px solid #020a12}::-webkit-scrollbar-thumb:hover{background:var(--neon-cyan)}::selection{background:#00f5ff4d;color:#fff}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--text-main);font-weight:700;line-height:1.25}h1{font-size:clamp(2.2rem,5vw,3.5rem)}h2{font-size:clamp(1.8rem,4vw,2.5rem)}h3{font-size:clamp(1.3rem,2.5vw,1.75rem)}h4{font-size:1.2rem}p{color:var(--text-muted);margin-bottom:1rem}a{color:var(--neon-cyan);text-decoration:none;transition:all .25s ease}a:hover{color:var(--neon-aqua);text-shadow:0 0 8px rgba(32,227,210,.5)}code,pre{font-family:var(--font-mono)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.container-narrow{width:100%;max-width:860px;margin:0 auto;padding:0 1.5rem}.glass-panel{background:var(--bg-surface);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s ease,box-shadow .3s ease}.glass-panel:hover{border-color:var(--border-glass-glow);box-shadow:0 12px 36px #00f5ff1f,0 0 20px #00f5ff1a}.glass-panel-elevated{background:var(--bg-surface-elevated);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(0,245,255,.22);border-radius:var(--radius-lg);box-shadow:0 16px 40px #00000073}.gradient-text{background:var(--prism-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block}.section-header{text-align:center;margin-bottom:3.5rem;position:relative}.section-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .9rem;border-radius:var(--radius-full);background:#00f5ff14;border:1px solid var(--border-glass);color:var(--neon-cyan);font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.85rem}.section-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--neon-cyan);box-shadow:0 0 8px var(--neon-cyan)}.section-title{font-weight:800;margin-bottom:.75rem}.section-subtitle{color:var(--text-muted);max-width:620px;margin:0 auto;font-size:1.05rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.75rem 1.6rem;border-radius:var(--radius-full);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);text-decoration:none;border:none;outline:none;position:relative;overflow:hidden}.btn-primary{background:linear-gradient(135deg,var(--neon-cyan) 0%,var(--prism-purple) 100%);color:#031321;font-weight:700;box-shadow:0 4px 20px #00f5ff59}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00f5ff99;color:#031321}.btn-secondary{background:#071e35b3;color:var(--text-main);border:1px solid var(--border-glass);backdrop-filter:blur(8px)}.btn-secondary:hover{border-color:var(--neon-cyan);background:#00f5ff1f;color:var(--neon-cyan);transform:translateY(-2px)}.btn-outline-coral{background:transparent;color:var(--coral-pink);border:1px solid var(--border-coral)}.btn-outline-coral:hover{background:#ff5db126;box-shadow:var(--glow-coral);color:#fff}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;background:#00f5ff14;color:var(--neon-cyan);border:1px solid rgba(0,245,255,.18)}.badge-purple{background:#9b5cff1f;color:#d1b5ff;border-color:#9b5cff40}.badge-coral{background:#ff5db11f;color:#ff9ecb;border-color:#ff5db140}.badge-emerald{background:#22c55e1f;color:#4ade80;border-color:#22c55e47}.badge-gold{background:#f59e0b1f;color:#fbbf24;border-color:#f59e0b47}.badge-blue{background:#3b82f61f;color:#60a5fa;border-color:#3b82f647}.badge-aurora{background:linear-gradient(135deg,#00f5ff26,#a855f726);color:#eafbff;border-color:#00f5ff59}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes shimmer-rays{0%{opacity:.18;transform:rotate(-12deg) scaleY(1)}50%{opacity:.35;transform:rotate(-8deg) scaleY(1.08)}to{opacity:.18;transform:rotate(-12deg) scaleY(1)}}.ocean-sun-rays{position:absolute;top:-20%;left:0;width:140%;height:90vh;pointer-events:none;background:radial-gradient(ellipse at 50% 0%,rgba(0,245,255,.22) 0%,rgba(32,227,210,.08) 45%,transparent 75%);filter:blur(24px);animation:shimmer-rays 14s ease-in-out infinite;z-index:0}@keyframes rise-up{0%{transform:translateY(105vh) translate(0) scale(.6);opacity:0}15%{opacity:.7}85%{opacity:.8}to{transform:translateY(-10vh) translate(40px) scale(1.1);opacity:0}}.bubble{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fffc,#00f5ff4d 60%,#9b5cff33);border:1px solid rgba(255,255,255,.4);box-shadow:inset 0 0 6px #00f5ff99,0 0 8px #00f5ff4d;pointer-events:none;animation:rise-up linear infinite}@keyframes swim-left-to-right{0%{transform:translate(-15vw) translateY(0) scaleX(1)}45%{transform:translate(45vw) translateY(-25px) scaleX(1)}50%{transform:translate(50vw) translateY(-20px) scaleX(1)}95%{transform:translate(110vw) translateY(15px) scaleX(1)}to{transform:translate(115vw) translateY(0) scaleX(1)}}@keyframes swim-right-to-left{0%{transform:translate(115vw) translateY(0) scaleX(-1)}45%{transform:translate(55vw) translateY(30px) scaleX(-1)}95%{transform:translate(-10vw) translateY(-10px) scaleX(-1)}to{transform:translate(-15vw) translateY(0) scaleX(-1)}}@keyframes fin-wiggle{0%,to{transform:rotate(0)}50%{transform:rotate(14deg)}}@keyframes jellyfish-pulse{0%{transform:translateY(0) scale(1)}35%{transform:translateY(-28px) scale(.92,1.12)}70%{transform:translateY(-12px) scale(1.05,.95)}to{transform:translateY(0) scale(1)}}@keyframes jellyfish-tentacles{0%,to{transform:rotate(0) skew(0)}50%{transform:rotate(-6deg) skew(8deg)}}@keyframes seaweed-sway{0%,to{transform:rotate(0)}50%{transform:rotate(8deg)}}@keyframes seaweed-sway-reverse{0%,to{transform:rotate(0)}50%{transform:rotate(-7deg)}}@keyframes bioluminescent-pulse{0%,to{filter:drop-shadow(0 0 6px rgba(0,245,255,.45))}50%{filter:drop-shadow(0 0 16px rgba(32,227,210,.85)) drop-shadow(0 0 28px rgba(155,92,255,.4))}}@keyframes glow-border{0%,to{border-color:#00f5ff33;box-shadow:0 0 15px #00f5ff1a}50%{border-color:#9b5cff80;box-shadow:0 0 25px #9b5cff40}}@keyframes mermaid-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(1.5deg)}}@keyframes mermaid-tail-sway{0%,to{transform:rotate(0)}50%{transform:rotate(10deg)}}.prism-card-effect{position:relative;overflow:hidden;transition:all .35s cubic-bezier(.16,1,.3,1)}.prism-card-effect:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 180deg at 50% 50%,transparent 0deg,rgba(0,245,255,.15) 60deg,transparent 120deg,rgba(155,92,255,.15) 180deg,transparent 240deg,rgba(255,93,177,.15) 300deg,transparent 360deg);opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:1}.prism-card-effect:hover:before{opacity:1;animation:rotate-conic 8s linear infinite}@keyframes rotate-conic{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes scroll-bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(8px)}60%{transform:translateY(4px)}}.scroll-indicator{animation:scroll-bounce 2.2s infinite}.navbar{position:fixed;top:0;left:0;width:100%;height:var(--nav-height);z-index:1000;transition:all .35s ease;background:#0313218c;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,245,255,.1)}.navbar.scrolled{background:#031321eb;border-bottom-color:#00f5ff40;box-shadow:0 10px 30px #00000080,0 0 15px #00f5ff1a}.nav-container{display:flex;align-items:center;justify-content:space-between;height:100%}.nav-logo{display:flex;align-items:center;gap:.75rem;font-weight:800;font-size:1.35rem;letter-spacing:.05em;color:var(--text-main)}.logo-prism-gem{width:32px;height:32px;filter:drop-shadow(0 0 8px var(--neon-cyan));animation:bioluminescent-pulse 6s ease-in-out infinite}.nav-links{display:flex;align-items:center;gap:1.5rem;list-style:none}.nav-link{color:var(--text-muted);font-size:.92rem;font-weight:500;padding:.4rem .6rem;border-radius:var(--radius-sm);position:relative;transition:color .25s ease}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--prism-gradient);transition:all .3s ease;transform:translate(-50%);border-radius:2px}.nav-link:hover,.nav-link.active{color:var(--neon-cyan)}.nav-link:hover:after,.nav-link.active:after{width:80%;box-shadow:0 0 8px var(--neon-cyan)}.nav-cta{padding:.55rem 1.25rem;font-size:.88rem}.mobile-toggle{display:none;background:none;border:1px solid var(--border-glass);border-radius:var(--radius-sm);padding:.5rem;color:var(--neon-cyan);cursor:pointer}.mobile-menu{display:none;position:fixed;top:var(--nav-height);left:0;width:100%;background:#031321f7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-glass);padding:1.5rem;flex-direction:column;gap:1rem;z-index:999}.mobile-menu.open{display:flex}.mobile-menu .nav-link{font-size:1.1rem;padding:.75rem;display:block}@media(max-width:900px){.nav-links,.nav-actions-desktop{display:none}.mobile-toggle{display:flex;align-items:center;justify-content:center}}.site-footer{position:relative;border-top:1px solid rgba(0,245,255,.15);background:linear-gradient(180deg,#031321cc,#01070d);padding:4.5rem 0 2rem;margin-top:6rem;overflow:hidden}.footer-sea-shelf{position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent 0%,var(--neon-cyan) 30%,var(--prism-purple) 70%,transparent 100%);box-shadow:0 0 15px var(--neon-cyan)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3.5rem}.footer-brand p{max-width:340px;margin-top:.8rem;font-size:.95rem}.footer-col h4{color:var(--neon-cyan);font-size:1rem;letter-spacing:.05em;margin-bottom:1.2rem;text-transform:uppercase}.footer-links{list-style:none;display:flex;flex-direction:column;gap:.65rem}.footer-links a{color:var(--text-muted);font-size:.92rem}.footer-links a:hover{color:var(--neon-cyan);transform:translate(4px);display:inline-block}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:2rem;border-top:1px solid rgba(255,255,255,.06);font-size:.88rem;color:var(--text-dim)}@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}}@media(max-width:500px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}}.project-card{position:relative;background:var(--bg-surface);border:1px solid var(--border-glass);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;transition:all .35s cubic-bezier(.16,1,.3,1)}.project-card:hover{transform:translateY(-6px);border-color:var(--neon-cyan);box-shadow:0 16px 40px #00000080,0 0 30px #00f5ff40,0 0 15px #a855f733}.project-thumb-wrapper{position:relative;width:100%;height:220px;overflow:hidden;background:#020e18;border-bottom:1px solid rgba(0,245,255,.15)}.project-thumb{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.16,1,.3,1),filter .5s ease}.project-card:hover .project-thumb{transform:scale(1.06);filter:brightness(1.08)}.project-category-badge{position:absolute;top:1rem;left:1rem;padding:.35rem .85rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;letter-spacing:.05em;background:#031321e6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,245,255,.4);color:var(--neon-cyan);box-shadow:0 4px 15px #0006}.project-content{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.project-title{font-size:1.3rem;margin-bottom:.6rem;color:var(--text-main);transition:color .25s ease}.project-card:hover .project-title{color:var(--neon-cyan)}.project-desc{font-size:.92rem;color:var(--text-muted);margin-bottom:1.2rem;flex-grow:1}.project-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem}.project-links{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.project-link-btn{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem;font-weight:600;color:var(--neon-cyan)}.project-link-btn:hover{color:var(--neon-aqua);text-shadow:0 0 6px var(--neon-cyan)}.blog-card{display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-glass);border-radius:var(--radius-md);overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1)}.blog-card:hover{transform:translateY(-5px);border-color:var(--prism-purple);box-shadow:0 14px 30px #00000059,0 0 20px #9b5cff40}.blog-thumb-wrap{width:100%;height:200px;background:#06192a;position:relative;overflow:hidden}.blog-thumb{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.blog-card:hover .blog-thumb{transform:scale(1.04)}.blog-card-body{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.blog-meta{display:flex;align-items:center;gap:.8rem;font-size:.82rem;color:var(--text-dim);margin-bottom:.8rem}.blog-title{font-size:1.25rem;margin-bottom:.75rem;line-height:1.35}.blog-title a{color:var(--text-main)}.blog-title a:hover{color:var(--neon-cyan)}.blog-excerpt{font-size:.92rem;color:var(--text-muted);margin-bottom:1.2rem;line-height:1.55;flex-grow:1}.blog-tags{display:flex;flex-wrap:wrap;gap:.4rem}.skill-card{padding:1.5rem;border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-glass)}.skill-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.skill-name{font-weight:600;font-size:1rem;display:flex;align-items:center;gap:.5rem}.skill-percent{font-family:var(--font-mono);font-size:.88rem;color:var(--neon-cyan)}.skill-bar-track{width:100%;height:8px;background:#ffffff14;border-radius:var(--radius-full);overflow:hidden;position:relative}.skill-bar-fill{height:100%;border-radius:var(--radius-full);background:var(--prism-gradient);position:relative;box-shadow:0 0 10px #00f5ff80;transition:width 1s cubic-bezier(.16,1,.3,1)}.cursor-glow{position:fixed;width:450px;height:450px;background:radial-gradient(circle,rgba(0,245,255,.06) 0%,rgba(155,92,255,.03) 40%,transparent 70%);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);z-index:1;transition:opacity .3s ease;will-change:transform}@media(max-width:768px){.cursor-glow{display:none}}.scroll-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}
