:root{--bg-color:#fafafa;--bg-color-rgb:250, 250, 250;--text-color:#333333;--heading-color:#111111;--accent-color:#0d9488;--accent-purple:#8b5cf6;--gradient-primary:linear-gradient(135deg, var(--accent-color), var(--accent-purple));--secondary-color:#f3f4f6;--border-color:#e5e7eb;--card-bg:#ffffff;--header-bg:#ffffff;--footer-bg:#ffffff;--caption-color:#6b7280;--page-number-color:#9ca3af;--subtle-accent:#f3f4f6;--link-color:var(--accent-color);--link-hover-color:var(--accent-purple);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-serif:"Libre Baskerville", Georgia, "Times New Roman", serif;--font-mono:"Fira Code", "Consolas", "Monaco", monospace;--font-heading:"Outfit", var(--font-sans);--font-logo:var(--font-heading);--radius-sm:8px;--radius-md:16px;--radius-full:9999px;--shadow-sm:0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);--shadow-md:0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -2px rgba(0, 0, 0, 0.025);--shadow-lg:0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.02);--shadow-hover:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)}[data-theme=dark]{--bg-color:#0f1115;--bg-color-rgb:15, 17, 21;--text-color:#d1d5db;--heading-color:#f9fafb;--accent-color:#2dd4bf;--accent-purple:#a78bfa;--gradient-primary:linear-gradient(135deg, var(--accent-color), var(--accent-purple));--secondary-color:#1f2937;--border-color:rgba(255, 255, 255, 0.08);--card-bg:#181b21;--header-bg:#181b21;--footer-bg:#181b21;--caption-color:#9ca3af;--page-number-color:#6b7280;--subtle-accent:#1f2937;--link-color:var(--accent-color);--link-hover-color:var(--accent-purple);--shadow-sm:0 4px 6px -1px rgba(0, 0, 0, 0.3);--shadow-md:0 10px 15px -3px rgba(0, 0, 0, 0.4);--shadow-lg:0 20px 25px -5px rgba(0, 0, 0, 0.5);--shadow-hover:0 20px 25px -5px rgba(0, 0, 0, 0.7);--dark-mode-glow:0 0 20px rgba(167, 139, 250, 0.15)}*{box-sizing:border-box;margin:0;padding:0}.fixed-header{position:fixed;top:0;left:0;right:0;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,.1);background-color:var(--header-bg);padding:1rem}[data-theme=dark] .fixed-header{box-shadow:0 2px 10px var(--border-color)}.fixed-header .container{display:flex;align-items:flex-end;gap:2rem;height:100%}.fixed-header nav{flex-grow:1;display:flex;justify-content:flex-end;align-items:flex-end;gap:1rem}.fixed-header nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1rem;align-items:flex-end}.fixed-header nav ul li{margin:0;padding:0}.fixed-header nav a{text-decoration:none;color:var(--text-color);padding:.5rem 1rem;display:inline-flex;align-items:flex-end;height:100%;transition:color .3s ease}.fixed-header nav a:hover{color:var(--accent-color)}.fixed-header .theme-switch-wrapper{position:static;margin-left:1rem;flex-shrink:0;display:flex;align-items:flex-end}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-sans);font-size:18px;line-height:1.8;transition:all .1s;letter-spacing:.01em}.container{width:95%;max-width:1200px;margin:0 auto;padding:0 15px}@media(min-width:1200px){.projects-page .content-list{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}.projects-page .project-card{flex:1 1 calc(50% - 1rem);max-width:calc(50% - 1rem);margin:0}.home .project-card{width:100%;max-width:100%}.blog-page .post-card{width:100%;margin-bottom:2rem}}.post-card{width:100%;margin-bottom:2rem}a{color:var(--link-color);text-decoration:none;transition:color .3s ease;border-bottom:1px solid transparent}a:hover{color:var(--link-hover-color);border-bottom:1px solid var(--link-hover-color);text-decoration:none}.image-container{display:flex;flex-direction:column;gap:.5rem}img{max-width:100%;height:auto;display:block;margin:0}.image-credit{font-size:.9rem;color:var(--caption-color);margin:0;text-align:center}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--heading-color);font-weight:500;line-height:1.2;margin-top:2.5rem;margin-bottom:1.5rem;letter-spacing:-.01em}h1{font-size:2.8rem;margin-top:0;font-weight:300}h2{font-size:1.8rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}h3{font-size:1.5rem}p,ul,ol{margin-bottom:1.75rem}.button{display:inline-block;background-color:transparent;color:var(--heading-color);padding:10px 20px;font-family:var(--font-sans);font-size:.85rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:all .3s ease;position:relative}.button:after{content:"→";margin-left:8px;transition:transform .3s ease;display:inline-block}.button:hover{color:var(--heading-color);border-color:var(--heading-color);text-decoration:none;transform:translateY(-2px)}.button:hover:after{transform:translateX(3px)}.button.primary{font-weight:600}.button.primary-button{background:var(--gradient-primary);color:#fff;border:none;padding:12px 28px;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .button.primary-button{background:var(--gradient-primary);color:#fff;border:none;box-shadow:var(--shadow-sm)}.button.secondary-button{background-color:transparent;color:var(--text-color);border:1px solid var(--border-color);padding:12px 28px;border-radius:var(--radius-full);transition:all .3s cubic-bezier(.4,0,.2,1)}.button.primary-button:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.button.secondary-button:hover{background-color:var(--secondary-color)}blockquote{font-style:italic;border-left:3px solid var(--border-color);padding-left:1.5rem;margin-left:0;margin-right:0;color:var(--caption-color)}code{font-family:var(--font-mono);background-color:var(--subtle-accent);padding:.2rem .4rem;border-radius:3px}.highlight{margin:1.5rem 0}.highlight pre{padding:0;margin:0;background-color:#282a36;border-radius:var(--radius-md);overflow:hidden}.highlight code{background:0 0;padding:1rem;display:block;overflow-x:auto;border-radius:0}figcaption,.caption{font-family:var(--font-sans);font-size:.9rem;color:var(--caption-color);text-align:center;margin-top:-1rem;margin-bottom:2rem;font-style:italic}header{background-color:var(--header-bg);padding:40px 0 20px;margin-bottom:30px;border-bottom:1px solid var(--border-color)}header .container{display:flex;justify-content:space-between;align-items:flex-end}.logo a{font-family:var(--font-sans);font-size:24px;letter-spacing:-.02em;font-weight:400;color:var(--heading-color);text-decoration:none;border-bottom:none}.logo a:hover{border-bottom:none}nav ul{display:flex;list-style:none;gap:40px}nav a{font-family:var(--font-sans);font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:var(--caption-color);font-weight:500;text-decoration:none;border-bottom:none;position:relative}nav a:hover{color:var(--heading-color);border-bottom:none}nav a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:1px;background-color:var(--heading-color);transition:width .3s ease}nav a:hover:after{width:100%}main{min-height:calc(100vh - 200px);padding:20px 0 60px}.section{margin-bottom:80px;position:relative}.section-header{margin-bottom:50px;text-align:left;position:relative}.hero{padding:40px 0;text-align:left;background-color:transparent;margin-bottom:40px;position:relative}.hero-content{display:flex;align-items:center}.hero-text{flex:1}.hero-visualization{flex:1;display:flex;flex-direction:column;align-items:center;height:600px;width:600px;margin:0 auto;position:relative}.expand-graph-btn{display:flex;align-items:center;justify-content:center;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:5px 10px;font-family:var(--font-sans);font-size:.8rem;cursor:pointer;transition:all .3s ease;gap:5px;width:auto;position:absolute;right:10px;z-index:10}.expand-graph-btn:hover{background-color:var(--secondary-color)}[data-theme=dark] .expand-graph-btn{background-color:var(--card-bg);border-color:var(--border-color);color:var(--text-color)}[data-theme=dark] .expand-graph-btn:hover{background-color:var(--secondary-color);box-shadow:var(--dark-mode-glow)}.hero h1{font-size:3.5rem;margin-bottom:1rem;line-height:1.1;font-weight:300;letter-spacing:-.02em}.hero .subtitle{font-family:var(--font-sans);font-size:1.2rem;color:var(--accent-color);margin-bottom:1.5rem;font-weight:400}.hero .lead{font-family:var(--font-sans);font-size:1.1rem;max-width:600px;margin:0 0 2rem;font-weight:400;color:var(--caption-color);line-height:1.6}.hero-buttons{display:flex;gap:20px;margin-top:2rem}#cy{width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;overflow:hidden;background-color:transparent;box-shadow:0 4px 15px var(--border-color)}@media(max-width:768px){.hero-visualization{display:none}}@media(max-width:768px){.container{width:90%}header .container{flex-direction:column;align-items:flex-start}nav{margin-top:1rem}nav ul{flex-direction:column;gap:15px;padding-left:0}.hero h1{font-size:2.5rem}.hero .lead{font-size:1.1rem}.project-card:before,.post-card:before{position:static;margin-bottom:.5rem;display:block}.theme-switch-wrapper{position:static;padding-right:0}[data-theme=dark] .hero h1{font-size:2.2rem}}@media(max-width:1200px){.fixed-header .logo{display:none}.hero-content{flex-direction:column;align-items:center;gap:80px}.hero-visualization{width:100%;min-width:300px;height:400px}#cy{min-width:300px}}.knowledge-graph{margin:2rem;display:flex;flex-direction:column;background-color:var(--bg-color);border-radius:var(--radius-md);overflow:hidden;min-height:400px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);z-index:1000;display:none;justify-content:center;align-items:center;padding:20px}.modal-content{background-color:var(--card-bg);width:90%;height:90%;border-radius:var(--radius-md);position:relative;overflow:hidden;display:flex;flex-direction:column}.modal-header{padding:15px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.graph-search-container{display:flex;align-items:center;gap:10px;background:var(--bg-color);border:1px solid var(--border-color);border-radius:20px;padding:5px 15px;width:300px}#graph-search{background:0 0;border:none;color:var(--text-color);outline:none;width:100%;font-size:.9rem}#search-results-count{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.modal-description{padding:20px 20px 0;background-color:var(--card-bg);color:var(--text-color);font-size:.95rem}.modal-description a{color:var(--accent-color);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s ease}.modal-description a:hover{border-bottom-color:var(--accent-color)}.modal-title{font-family:var(--font-sans);font-size:1.2rem;margin:0;color:var(--heading-color)}.close-modal{background:0 0;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-color);transition:color .3s ease}.close-modal:hover{color:var(--accent-color)}.modal-body{flex:1;padding:0}#modal-overlay .graph-search-container{position:absolute;top:20px;left:50%;transform:translateX(-50%);width:300px;z-index:1000}#modal-overlay .graph-search-input{width:100%;padding:10px 15px;border-radius:20px;border:1px solid #ddd;font-size:14px;box-shadow:0 2px 5px rgba(0,0,0,.1);transition:all .3s ease;background-color:var(--bg-color);color:var(--text-color)}#modal-overlay .graph-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2)}#modal-overlay .search-results{position:absolute;width:100%;max-height:200px;overflow-y:auto;background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-top:5px;display:none;z-index:1001}#modal-overlay .search-result-item{padding:8px 15px;cursor:pointer;border-bottom:1px solid var(--border-color);color:var(--text-color)}#modal-overlay .search-result-item:last-child{border-bottom:none}#modal-overlay .search-result-item:hover{background-color:var(--bg-color-light)}.highlighted-node{background-color:var(--primary-color)!important;color:#fff!important;transition:all .3s ease}#cy-fullscreen{width:100%!important;height:100%!important;display:block!important;position:absolute!important}[data-theme=dark] .expand-graph-btn{background-color:var(--card-bg);border-color:var(--border-color);color:var(--text-color)}[data-theme=dark] .expand-graph-btn:hover{background-color:var(--secondary-color);box-shadow:var(--dark-mode-glow)}.carousel-container{position:relative;width:100%;overflow:hidden;margin:2rem 0;padding:0 15px;box-sizing:border-box}.carousel-track{display:flex;transition:transform .5s ease;width:100%;margin:0;padding:0;list-style:none}.carousel-slide{flex:0 0 100%;padding:0 5px;box-sizing:border-box}@media(min-width:768px){.carousel-slide{flex:0 0 50%}}@media(min-width:1200px){.carousel-slide{flex:0 0 33.333%}}.carousel-slide:first-child{padding-left:0}.carousel-slide:last-child{padding-right:0}.carousel-nav{display:flex;justify-content:center;align-items:center;margin-top:30px}.carousel-prev,.carousel-next{background:0 0;border:none;font-size:22px;color:var(--text-color);cursor:pointer;padding:5px 10px;opacity:.6;transition:opacity .3s ease}.carousel-prev:hover,.carousel-next:hover{opacity:1}.carousel-dots{display:flex;justify-content:center;margin:0 15px}.carousel-dot{width:10px;height:10px;border-radius:50%;border:none;background-color:var(--border-color);margin:0 5px;padding:0;cursor:pointer;transition:all .3s ease}.carousel-dot.active{background-color:var(--accent-color);transform:scale(1.2)}[data-theme=dark] .carousel-prev,[data-theme=dark] .carousel-next{color:var(--text-color)}[data-theme=dark] .carousel-prev:hover,[data-theme=dark] .carousel-next:hover{color:var(--highlight-color);text-shadow:var(--dark-mode-glow)}[data-theme=dark] .carousel-dot{background-color:rgba(255,255,255,.2)}[data-theme=dark] .carousel-dot.active{background-color:var(--highlight-color);box-shadow:0 0 5px var(--highlight-color)}.project-card{background-color:var(--card-bg);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);height:100%;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.project-image{width:100%;height:200px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-card:hover .project-image img{transform:scale(1.05)}.project-content{padding:1.5rem;display:flex;flex-direction:column;flex:1}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{background-color:var(--secondary-color);color:var(--text-color);padding:.25rem .75rem;border-radius:20px;font-size:.7rem;font-family:var(--font-sans);display:inline-block}.project-content h3{margin-top:0;margin-bottom:1rem;font-size:1.3rem}.project-content h3 a{color:var(--heading-color);text-decoration:none;border-bottom:none}.project-content h3 a:hover{color:var(--accent-color);border-bottom:none}.project-content p{margin-bottom:1.5rem;flex:1;font-size:.9rem}.project-links{display:flex;gap:10px;margin-top:auto}.small-button{font-size:.8rem;padding:6px 12px}@media(max-width:1200px){.carousel-slide{flex:0 0 calc(50% - 10px)}}@media(max-width:767px){.carousel-container{padding:0 15px;overflow:hidden}.carousel-slide{flex:0 0 100%;padding:0 5px}.project-image{height:180px}.project-card{width:100%;margin:0;box-sizing:border-box}}.project-image{border:1px solid var(--border-color);overflow:hidden;margin-bottom:0;position:relative}.project-image img{margin:0;transition:transform .5s ease;width:100%;height:auto;object-fit:cover;aspect-ratio:16/9}.project-card:hover .project-image img{transform:scale(1.02)}.project-content{padding-top:1rem}.project-content h3{margin-top:0;font-size:1.6rem;margin-bottom:1rem}.project-content h3 a{color:var(--heading-color);text-decoration:none;border-bottom:none}.project-content h3 a:hover{color:var(--accent-color);border-bottom:none}.project-tags{margin:1.5rem 0 1rem}.project-links{margin-top:1.5rem;display:flex;gap:15px}.post{max-width:900px;margin:0 auto;padding:0 1rem}.post-header{position:relative;margin-bottom:3rem}.post-header h1{margin-bottom:.5rem}.meta{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-family:var(--font-sans);color:var(--caption-color);font-size:.9rem;margin:.75rem 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:15px}.date{flex-shrink:0}.tags-container{display:flex;gap:.5rem;align-items:center}.tag{display:inline-block;margin:0}.list-tag{display:inline-block;margin-left:.5rem}.list-meta{display:flex;justify-content:space-between;gap:.5rem;align-items:center}.featured-image,.post-image{margin:2rem auto 3rem;overflow:hidden;border:0 solid var(--border-color);position:relative;max-width:600px;width:100%;display:block;box-sizing:border-box}.featured-image img{object-fit:cover;aspect-ratio:4/3;max-width:600px;width:100%;height:auto}.post-image img{width:100%;height:100%;aspect-ratio:4/3}.post-card{display:grid;grid-template-columns:1fr;align-items:start;margin-bottom:2rem}[data-theme=dark] .post-card{margin-bottom:2rem}@media(min-width:768px){.post-card{grid-template-columns:1fr}}.post-card:hover .post-image img{transform:scale(1.02)}.post-content{padding-top:1rem}.date{font-style:normal}.tag,.list-tag{display:inline-block;font-family:var(--font-sans);font-size:.75rem;color:var(--text-color);background-color:rgba(255,255,255,5%);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:.25rem .75rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:none}.read-more{font-family:var(--font-sans);font-size:.85rem;font-weight:500;display:inline-block;margin-top:1rem;color:var(--heading-color);border-bottom:1px solid transparent}.read-more:after{content:"→";margin-left:5px;transition:transform .3s ease;display:inline-block}.read-more:hover{border-bottom-color:var(--heading-color)}.read-more:hover:after{transform:translateX(3px)}.view-all{text-align:left;margin-top:40px}.resume-button{display:inline-block;margin:1.5rem 0;padding:12px 24px;background-color:var(--accent-color);color:#fff!important;border-radius:var(--radius-md);font-weight:500;text-decoration:none!important;transition:all .3s ease;border:none;cursor:pointer;text-align:center}.resume-button:hover{background-color:var(--accent-hover,#2c7a7b);transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}[data-theme=dark] .resume-button{background-color:var(--accent-color);color:#fff!important}[data-theme=dark] .resume-button:hover{background-color:var(--accent-hover,#2c7a7b);box-shadow:0 4px 15px rgba(0,0,0,.3)}.footer-with-particles{position:relative;padding:80px 0 60px;overflow:hidden;background-color:rgba(var(--bg-color-rgb),.9);border-top:1px solid var(--border-color);color:var(--text-color);min-height:300px}#particles-js{position:absolute!important;top:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);will-change:transform,opacity;transition:opacity .3s ease;cursor:pointer}#particles-js:hover{opacity:.9}#particles-js:active{opacity:1;transition:opacity .1s ease}#particles-js canvas{display:block;position:absolute;top:0;left:0;width:100%!important;height:100%!important;transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);will-change:transform}.footer-with-particles .container{position:relative;z-index:2;background:rgba(var(--bg-color-rgb),.5);backdrop-filter:blur(2px);padding:30px;border-radius:10px;max-width:1200px;margin:0 auto;box-shadow:0 4px 15px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1)}.footer-with-particles .footer-content{position:relative;z-index:2}.footer-with-particles .footer-right{color:var(--text-color)}.footer-with-particles .social-links a{color:var(--text-color);transition:color .3s ease;text-decoration:none;border-bottom:1px solid transparent}.footer-with-particles .social-links a:hover{color:var(--accent-color);border-bottom-color:var(--accent-color)}.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:25px;margin-bottom:20px}.social-links a{color:var(--caption-color);text-decoration:none;border-bottom:none;padding:5px 10px;border-radius:var(--radius-md);transition:all .2s ease}.social-links a:hover{color:var(--link-hover-color);background-color:var(--subtle-accent);border-bottom:none}[data-theme=dark] .social-links a:hover{color:var(--highlight-color);background-color:var(--secondary-color);text-shadow:var(--dark-mode-glow)}.theme-switch-wrapper{display:flex;align-items:center;position:absolute;top:40px;right:15px;padding-right:10px}.theme-switch{position:relative;display:inline-block;width:40px;height:20px}.theme-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:.3s}.slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;transition:.3s}input:checked+.slider{background-color:var(--heading-color)}input:focus+.slider{box-shadow:0 0 1px var(--heading-color)}input:checked+.slider:before{transform:translateX(20px)}.slider.round{border-radius:20px}.slider.round:before{border-radius:50%}.theme-label{margin-left:10px;font-family:var(--font-sans);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--caption-color)}.content{font-family:var(--font-sans)}.figure{margin:3rem 0;border:1px solid var(--border-color)}.taxonomies{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border-color);font-family:var(--font-sans);font-size:.85rem;color:var(--caption-color)}[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] h4,[data-theme=dark] h5,[data-theme=dark] h6{font-weight:500;text-transform:uppercase}[data-theme=dark] .logo a{letter-spacing:.05em;text-transform:uppercase;font-weight:600}[data-theme=dark] .section-header{position:relative}[data-theme=dark] .section-header h2{font-size:1.5rem;letter-spacing:.05em;font-weight:500;text-transform:uppercase;color:var(--heading-color)}[data-theme=dark] .hero{position:relative}[data-theme=dark] .profile-image img{border:none;box-shadow:0 0 20px rgba(87,197,197,.1)}[data-theme=dark] .hero h1{position:relative;display:inline-block;margin-top:0;text-transform:capitalize}[data-theme=dark] .hero .lead{font-weight:300}[data-theme=dark] nav a{letter-spacing:.15em;font-size:.8rem;text-transform:uppercase;opacity:.6;transition:all .3s ease}[data-theme=dark] nav a:hover{opacity:1;text-shadow:var(--dark-mode-glow)}[data-theme=dark] nav a:after{background-color:var(--highlight-color)}[data-theme=dark] .project-card,[data-theme=dark] .post-card{margin-bottom:80px;transition:transform .5s ease,box-shadow .5s ease}[data-theme=dark] .project-card:hover,[data-theme=dark] .post-card:hover{transform:translateY(-5px);box-shadow:var(--dark-mode-shadow)}[data-theme=dark] .project-image,[data-theme=dark] .post-image{border-color:transparent;box-shadow:var(--dark-mode-shadow);position:relative;overflow:hidden}[data-theme=dark] .project-card h3,[data-theme=dark] .post-card h3{position:relative;padding-top:18px;margin-top:0}[data-theme=dark] .project-card h3:before,[data-theme=dark] .post-card h3:before{content:"";position:absolute;top:0;left:0;width:25px;height:1px;background-color:var(--highlight-color);opacity:.5}[data-theme=dark] .project-content h3 a,[data-theme=dark] .post-card h3 a{position:relative;display:inline-block;transition:all .3s ease;letter-spacing:.02em;font-size:1.2rem}[data-theme=dark] .project-content h3 a:hover,[data-theme=dark] .post-card h3 a:hover{color:var(--highlight-color);text-shadow:var(--dark-mode-glow)}[data-theme=dark] .tag{opacity:1;font-weight:400;box-shadow:0 2px 4px rgba(0,0,0,.1)}[data-theme=dark] .read-more{color:var(--highlight-color);text-transform:uppercase}[data-theme=dark] .read-more:hover{text-shadow:var(--dark-mode-glow)}[data-theme=dark] .button{border-color:var(--highlight-color);color:var(--highlight-color)}[data-theme=dark] .button:hover{background-color:rgba(87,197,197,.1);text-shadow:var(--dark-mode-glow)}[data-theme=dark] .post-header{background-color:var(--bg-color);position:relative;padding-top:25px}[data-theme=dark] .post-header:before{content:"";position:absolute;top:0;left:0;width:40px;height:1px;background-color:var(--highlight-color);opacity:.7}[data-theme=dark] .post-header h1{position:relative;margin-bottom:1.5rem;margin-top:10px}[data-theme=dark] input:checked+.slider{background-color:var(--highlight-color)}[data-theme=dark] input:focus+.slider{box-shadow:0 0 1px var(--highlight-color)}.header-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;width:100%}.hamburger{display:none;background:0 0;border:none;cursor:pointer;padding:10px;z-index:1000}.hamburger span{display:block;width:25px;height:3px;background-color:var(--text-color);margin:5px 0;transition:.4s}.nav-menu{display:flex;flex:1;justify-content:flex-end;align-items:center}@media(max-width:768px){.nav-menu{display:none!important;width:100%;order:3;padding:1rem 0}.nav-menu.is-active,.nav-menu.active,.nav-menu.is-active.active{display:block!important}.nav-menu ul{flex-direction:column;gap:15px;padding-left:0;margin:0}.hamburger{display:block;order:1}.theme-switch-wrapper{order:2}}@media(max-width:768px){.container{width:90%}.hamburger{display:block;order:1}.nav-menu{display:none;width:100%;order:3;padding:1rem 0}.nav-menu.active{display:block}.nav-menu ul{flex-direction:column;gap:15px;padding-left:0}.theme-switch-wrapper{order:2}.hero h1{font-size:2.5rem}.hero .lead{font-size:1.1rem}.project-card:before,.post-card:before{position:static;margin-bottom:.5rem;display:block}.theme-switch-wrapper{position:static;padding-right:0}[data-theme=dark] .hero h1{font-size:2.2rem}}@-webkit-viewport{width: device-width; }@-moz-viewport{width: device-width; }@-ms-viewport{width: device-width; }@-o-viewport{width: device-width; }@viewport{width: device-width; }@media(max-width:768px){html,body{width:100%;max-width:100%;overflow-x:hidden;position:relative}.fixed-header{position:fixed!important;top:0;left:0!important;right:0!important;width:100%!important;max-width:100%!important;padding:.5rem 5%!important;margin:0!important;box-sizing:border-box!important;overflow:visible!important;z-index:1000;transform:translateZ(0);-webkit-transform:translateZ(0)}.fixed-header .container,.fixed-header>.container{width:100%!important;max-width:100%!important;margin:0 auto!important;padding:0!important;flex-direction:column;gap:.5rem;box-sizing:border-box!important}.fixed-header nav{width:100%;justify-content:center}.fixed-header nav ul{justify-content:center;width:100%;padding:0 10px;box-sizing:border-box}.fixed-header .theme-switch-wrapper{width:100%;justify-content:center}.project-card{padding:1.5rem}}.footer-content{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;justify-content:center}.profile-photo{flex:none}.profile-img{width:160px;height:160px;border-radius:50%;object-fit:cover;border:3px solid var(--border-color);transition:transform .3s ease,border-color .3s ease}.profile-img:hover{transform:scale(1.05);border-color:var(--accent-color)}.footer-right{flex:1;min-width:200px;text-align:center}.footer-right .social-links{margin-bottom:10px}@media(max-width:768px){.footer-content{flex-direction:column;text-align:center}.footer-right{width:100%}.profile-img{margin:0 auto}}.testimonials-section{margin-bottom:80px}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.testimonial-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:2rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:space-between;transition:all .3s cubic-bezier(.4,0,.2,1)}.testimonial-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:transparent}.quote-icon{color:var(--accent-color);opacity:.2;margin-bottom:1rem;width:32px;height:32px}.testimonial-content p{font-family:var(--font-sans);font-size:1rem;line-height:1.7;color:var(--text-color);font-style:italic;margin-bottom:2rem}.testimonial-author{display:flex;align-items:center;gap:1rem;border-top:1px solid var(--border-color);padding-top:1.5rem}.author-info h4{margin:0;font-size:1rem;color:var(--heading-color)}.author-info p{margin:0;font-size:.85rem;color:var(--caption-color);font-style:normal}