:root{--primary-color: #007bff;--primary-dark: #003366;--accent-color: #f0a500;--bg-dark: #0d0d0d;--bg-secondary: #1a1a1a;--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--border-color: #2a2a2a;--shadow-lg: 0 4px 15px rgba(0, 0, 0, .2);--shadow-hover: 0 12px 30px rgba(0, 123, 255, .4);--transition: all .4s ease-out}body{background-color:var(--bg-dark);color:var(--text-primary);font-family:Roboto,sans-serif;line-height:1.6;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 15px;position:relative;z-index:1}.row{display:flex;flex-wrap:wrap;margin:-15px}.col-lg-6{flex:1;padding:15px}.col-lg-6{flex-basis:50%;max-width:50%}@media (max-width: 768px){.col-lg-6{flex-basis:100%;max-width:100%}}.min-vh-80{min-height:80vh}.hero-section{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-color) 100%);color:var(--text-primary);padding:5rem 0;position:relative;overflow:hidden;z-index:0}#particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;opacity:.5}.hero-section:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1440 320"><path fill="%23ffffff" fill-opacity="0.05" d="M0,96L48,112C96,128,192,160,288,160C384,160,480,128,576,112C672,96,768,96,864,112C960,128,1056,160,1152,160C1248,160,1344,128,1392,112L1440,96L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z"></path></svg>');background-size:cover;animation:wave 15s linear infinite;will-change:transform;opacity:.1}@keyframes wave{0%{transform:translate(0)}to{transform:translate(-1440px)}}.hero-title{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;margin-bottom:1.5rem;color:var(--text-primary);text-shadow:0 0 10px rgba(0,123,255,.3)}.text-primary{color:var(--accent-color);text-shadow:0 0 5px rgba(240,165,0,.5)}.hero-subtitle{font-size:clamp(1.5rem,4vw,2rem);margin-bottom:2rem;color:var(--accent-color);overflow:hidden;white-space:nowrap}.typing-text-inner{display:inline-block;animation:fadeInText .5s ease-out}.cursor{display:inline-block;animation:blink .6s step-end infinite}.glowing-cursor{animation:glow 1.5s ease-in-out infinite alternate}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes glow{0%{text-shadow:0 0 5px #fff,0 0 10px #fff}to{text-shadow:0 0 10px #f0a500,0 0 20px #f0a500}}@keyframes fadeInText{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hero-description{font-size:1.2rem;margin-bottom:2.5rem;color:var(--text-secondary);max-width:650px;text-shadow:0 0 5px rgba(0,0,0,.3)}.profile-image{width:100%;max-width:450px;aspect-ratio:1;border-radius:50%;border:6px solid rgba(255,255,255,.4);box-shadow:var(--shadow-lg);animation:float 5s ease-in-out infinite;will-change:transform;transition:var(--transition);filter:brightness(1.1)}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-30px) rotate(5deg)}}.hero-buttons{margin-top:2.5rem}.hero-buttons .btn{padding:1rem 2rem;font-weight:600;transition:var(--transition);border-radius:25px;position:relative;overflow:hidden}.hero-buttons .btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.hero-buttons .btn:hover:before{width:300px;height:300px}.hero-buttons .btn:focus,.hero-buttons .btn:hover{outline:none;box-shadow:0 0 0 4px #fff9}.btn-primary-custom{background-color:var(--primary-color);color:var(--text-primary)}.btn-primary-custom:hover{background-color:var(--primary-dark);color:var(--text-primary)}.btn-outline-custom{border-color:var(--primary-color);color:var(--primary-color);background:transparent}.btn-outline-custom:hover{background-color:var(--primary-color);color:var(--text-primary)}.hobbies-section{padding:5rem 0;background:var(--bg-secondary);position:relative;overflow:hidden}.section-title{font-size:3rem;font-weight:800;margin-bottom:1.5rem;color:var(--text-primary);text-align:center;text-shadow:0 0 10px rgba(0,123,255,.2)}.section-subtitle{color:var(--text-secondary);margin-bottom:4rem;text-align:center;max-width:900px;margin-left:auto;margin-right:auto;text-shadow:0 0 5px rgba(0,0,0,.2)}.hobby-card{padding:2.5rem 2rem;height:100%;border:2px solid var(--border-color);background:var(--bg-dark);transition:var(--transition);border-radius:15px;overflow:hidden;position:relative}.hobby-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,#f0a5001a,#0000 70%);animation:radialGlow 10s linear infinite;z-index:0}@keyframes radialGlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hobby-card:hover{transform:translateY(-15px) rotateX(5deg);box-shadow:var(--shadow-hover)}.hobby-card:hover .hobby-icon{transform:scale(1.2);color:var(--accent-color)!important}.hobby-icon{font-size:3.5rem;margin-bottom:2rem;color:var(--primary-color);transition:var(--transition);position:relative;z-index:1}.hobby-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-primary);position:relative;z-index:1}.hobby-description{color:var(--text-secondary);line-height:1.7;position:relative;z-index:1}@media (max-width: 768px){.hero-title{font-size:clamp(1.8rem,5vw,2.5rem)}.hero-subtitle{font-size:clamp(1.2rem,3vw,1.5rem)}.profile-image{max-width:300px;margin-bottom:2rem}.hero-buttons .btn{display:block;width:100%;margin-bottom:1.5rem}.hero-buttons .me-3{margin-right:0!important}.hobbies-section{padding:3rem 0}.hobby-card{padding:2rem 1.5rem}.section-title{font-size:2.5rem}}.fade-in-initial{opacity:0}.fade-in{animation:fadeIn .8s cubic-bezier(.4,0,.2,1) forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}section{opacity:0;transform:translateY(30px) scale(.95);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1)}section.visible{opacity:1;transform:translateY(0) scale(1)}
