@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;800&display=swap";:root{--bg-primary:#0d0d0d;--bg-secondary:#141414;--bg-card:#1f1f1f;--accent:#d4af37;--accent-glow:#d4af3759;--text-primary:#fff;--text-secondary:#a0a0a0;--transition-premium:all .7s cubic-bezier(.16, 1, .3, 1);--transition-card:all .6s cubic-bezier(.16, 1, .3, 1);--transition-btn:all .4s cubic-bezier(.16, 1, .3, 1)}html{scroll-behavior:smooth;scrollbar-gutter:stable}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,sans-serif}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;overflow-x:hidden}.glass-panel{-webkit-backdrop-filter:blur(12px);transition:var(--transition-card);background:#1f1f1f66;border:1px solid #ffffff0d;border-radius:16px}.gradient-text{background:linear-gradient(90deg, #fff, var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn-primary{background:var(--accent);color:#000;transition:var(--transition-btn);cursor:pointer;box-shadow:0 4px 15px var(--accent-glow);will-change:transform, box-shadow;border:none;border-radius:30px;padding:12px 28px;font-weight:600;text-decoration:none;display:inline-block}.btn-primary:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 8px 25px #d4af3799,0 0 15px #d4af374d}.btn-secondary{color:var(--text-primary);cursor:pointer;transition:var(--transition-btn);will-change:transform, background-color, border-color;background:0 0;border:1px solid #ffffff1a;border-radius:30px;padding:12px 28px;font-weight:600;text-decoration:none;display:inline-block}.btn-secondary:hover{background:#ffffff0f;border-color:#ffffff40;transform:translateY(-2px)}.project-card{transition:var(--transition-card);will-change:transform, box-shadow, border-color}.project-card:hover{box-shadow:0 20px 40px #0009, 0 0 25px var(--accent-glow);transform:translateY(-8px)scale(1.02);border-color:#d4af3773!important}.project-card img{will-change:transform;transition:transform .8s cubic-bezier(.16,1,.3,1)}.project-card:hover img{opacity:.95;transform:scale(1.06)}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes premiumFadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.88)rotate(-2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes staggerFadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pageReveal{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.animate-page-reveal{animation:.8s cubic-bezier(.16,1,.3,1) both pageReveal}.animate-slide-down{opacity:0;animation:1.2s cubic-bezier(.16,1,.3,1) both slideDown}.animate-premium-fade-up{opacity:0;animation:1.4s cubic-bezier(.16,1,.3,1) both premiumFadeUp}.animate-scale-in{opacity:0;animation:1.5s cubic-bezier(.16,1,.3,1) both scaleIn}.animate-stagger-fade-up{opacity:0;animation:1.2s cubic-bezier(.16,1,.3,1) both staggerFadeUp}.animate-fade-up{opacity:0;animation:1.2s cubic-bezier(.16,1,.3,1) both premiumFadeUp}.init-hidden{opacity:0;pointer-events:none}.delay-1{opacity:0;animation-delay:.15s}.delay-2{opacity:0;animation-delay:.3s}.delay-3{opacity:0;animation-delay:.45s}.nav-container{z-index:100;justify-content:space-between;align-items:center;margin:20px;padding:15px 30px;display:flex;position:sticky;top:20px}.nav-links{gap:30px;display:flex}.nav-links a{color:var(--text-secondary);padding:4px 0;font-weight:600;text-decoration:none;transition:color .4s cubic-bezier(.16,1,.3,1);position:relative}.nav-links a:after{content:"";background-color:var(--accent);transform-origin:100%;width:100%;height:2px;transition:transform .4s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-links a:hover{color:var(--text-primary)}.nav-links a:hover:after{transform-origin:0;transform:scaleX(1)}.hero-section{flex-direction:column;flex:1;justify-content:center;align-items:center;max-width:1200px;margin:0 auto;padding:80px 20px;display:flex}.hero-content-wrapper{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:40px;width:100%;display:flex}.hero-text{text-align:left;flex:500px;max-width:850px}.hero-title{min-height:200px;margin-bottom:25px;font-size:3.5rem;font-weight:800;line-height:1.2}.hero-subtitle{color:var(--text-secondary);max-width:650px;margin-bottom:40px;font-size:1.2rem;line-height:1.6}.hero-buttons{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.social-links-group{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=1024px){.social-links-group{grid-template-columns:repeat(4,1fr)}}.hero-image-wrapper{flex:300px;justify-content:center;display:flex}.hero-image-container{background:linear-gradient(145deg,#1f1f1f99,#0d0d0dcc);border-radius:50%;padding:20px;animation:6s ease-in-out infinite float}.hero-image-crop{border:4px solid var(--accent);width:350px;height:350px;box-shadow:0 0 40px var(--accent-glow);border-radius:50%;animation:4s ease-in-out infinite pulseGlow;overflow:hidden}.hero-image{object-fit:cover;object-position:center 20%;width:100%;height:100%;transform:scale(1.25)}.roles-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;width:100%;margin-top:100px;display:grid}.role-card{text-align:center;transition:var(--transition-card);will-change:transform, box-shadow, border-color;cursor:pointer;padding:35px 20px}.role-card:hover{transform:translateY(-8px)scale(1.04);box-shadow:0 12px 30px #d4af371f,0 0 15px #d4af370d;border-color:#d4af3759!important}.section-title{text-align:center;margin-bottom:50px;font-size:3rem;font-weight:800}.work-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;display:grid}.toolkit-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;width:100%;display:grid}.toolkit-card{height:100%;transition:var(--transition-card);will-change:transform, box-shadow, border-color;flex-direction:column;gap:20px;padding:30px;display:flex}.toolkit-card:hover{transform:translateY(-8px)scale(1.03);box-shadow:0 20px 40px #00000080,0 0 20px #d4af3726;border-color:#d4af3759!important}.frameworks-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px;width:100%;display:grid}.framework-card{text-align:center;cursor:default;transition:var(--transition-card);will-change:transform, box-shadow, border-color;flex-direction:column;align-items:center;gap:14px;padding:28px 20px;display:flex}.framework-card:hover{transform:translateY(-8px)scale(1.05);box-shadow:0 16px 40px #00000080,0 0 20px #d4af3714;border-color:#d4af374d!important}.framework-icon-wrap{width:72px;height:72px;transition:var(--transition-card);border:1px solid #ffffff0f;border-radius:18px;justify-content:center;align-items:center;display:flex}.framework-card:hover .framework-icon-wrap{border-color:#ffffff1f;transform:scale(1.1)}.framework-name{color:var(--text-primary);font-size:.95rem;font-weight:700;line-height:1.3}.framework-tag{color:var(--accent);letter-spacing:.5px;text-transform:uppercase;background:#d4af3712;border:1px solid #d4af3726;border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:600}@media (width<=768px){.nav-container{border-radius:12px;margin:10px;padding:12px 18px}.nav-container h1{font-size:1.25rem!important}.nav-links{gap:12px;font-size:.85rem}.hero-section{padding:20px 16px 60px}.hero-content-wrapper{text-align:center;flex-direction:column;gap:25px}.hero-image-wrapper{order:-1;margin-bottom:10px}.hero-image-crop{border-width:3px;width:220px;height:220px}.hero-text{flex:auto;width:100%}.hero-text h2{letter-spacing:1.5px!important;margin-bottom:10px!important;font-size:.95rem!important}.hero-title{min-height:130px;margin-bottom:15px;font-size:2.2rem;line-height:1.3}.hero-subtitle{max-width:100%;margin:0 auto 25px;font-size:.95rem;line-height:1.5}.hero-buttons{flex-direction:column;gap:15px;width:100%}.btn-primary{text-align:center;width:100%;padding:14px 24px}.social-links-group{grid-template-columns:repeat(2,1fr);gap:10px;width:100%}.btn-social{justify-content:center;padding:12px 16px;font-size:.85rem}.roles-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:40px}.role-card{padding:20px 10px}.role-card h3{font-size:.95rem!important}.role-card svg{width:32px!important;height:32px!important}.section-title{margin-bottom:25px;font-size:2rem}.work-grid{grid-template-columns:1fr;gap:25px}.project-card{border-radius:12px}.project-card img{height:200px!important}.project-card div{padding:20px!important}.project-card h3{font-size:1.3rem!important}.project-card p{font-size:.9rem!important}.toolkit-grid{grid-template-columns:1fr;gap:16px}.toolkit-card{border-radius:12px;padding:20px}.toolkit-card h3{font-size:1.15rem!important}.toolkit-card p{font-size:.88rem!important}#work,#toolkit,#contact{padding:40px 16px}footer h2{font-size:1.8rem!important}footer p{margin-bottom:25px!important;font-size:.9rem!important}footer div{flex-direction:column;width:100%;gap:12px!important}footer .btn-social{width:100%;padding:14px 20px!important;font-size:1rem!important}.frameworks-grid{grid-template-columns:repeat(2,1fr);gap:14px}.framework-card{gap:10px;padding:20px 14px}.framework-icon-wrap{border-radius:14px;width:56px;height:56px}.framework-name{font-size:.85rem}.framework-tag{font-size:.68rem}}.btn-social{color:#fff;transition:var(--transition-btn);z-index:1;will-change:transform, box-shadow;border-radius:30px;align-items:center;gap:10px;padding:12px 28px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.btn-whatsapp{background:linear-gradient(135deg,#25d366,#128c7e);animation:2s infinite pulse-whatsapp}.btn-messenger{background:linear-gradient(135deg,#00c6ff,#0072ff);animation:2.5s infinite pulse-messenger}.btn-github{background:linear-gradient(135deg,#333,#111);border:1px solid #ffffff1a;animation:2.8s infinite pulse-github}.btn-phone{background:linear-gradient(135deg, var(--accent), #9e8226);animation:2.2s infinite pulse-phone;color:#000!important}.btn-whatsapp:hover,.btn-messenger:hover,.btn-github:hover,.btn-phone:hover{animation:none;transform:translateY(-4px)scale(1.05)}.btn-whatsapp:hover{box-shadow:0 8px 25px #25d36699}.btn-messenger:hover{box-shadow:0 8px 25px #0084ff99}.btn-github:hover{border-color:#ffffff4d;box-shadow:0 8px 25px #ffffff4d}.btn-phone:hover{box-shadow:0 8px 25px #d4af3799}@keyframes pulse-whatsapp{0%{box-shadow:0 0 #25d36680}70%{box-shadow:0 0 0 15px #25d36600}to{box-shadow:0 0 #25d36600}}@keyframes pulse-messenger{0%{box-shadow:0 0 #0084ff80}70%{box-shadow:0 0 0 15px #0084ff00}to{box-shadow:0 0 #0084ff00}}@keyframes pulse-github{0%{box-shadow:0 0 #ffffff4d}70%{box-shadow:0 0 0 15px #fff0}to{box-shadow:0 0 #fff0}}@keyframes pulse-phone{0%{box-shadow:0 0 #d4af3780}70%{box-shadow:0 0 0 15px #d4af3700}to{box-shadow:0 0 #d4af3700}}@keyframes roleFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.role-animate{animation:.4s ease-out forwards roleFadeIn;display:inline-block}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes pulseGlow{0%{box-shadow:0 0 40px var(--accent-glow)}50%{box-shadow:0 0 60px #d4af3799}to{box-shadow:0 0 40px var(--accent-glow)}}.preloader-overlay{z-index:9999;will-change:transform, opacity;background:radial-gradient(circle,#121212 0%,#050505 100%);flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;transition:transform .9s cubic-bezier(.85,0,.15,1),opacity .9s cubic-bezier(.85,0,.15,1);display:flex;position:fixed;top:0;left:0}.preloader-overlay.exit{opacity:0;pointer-events:none;transform:translateY(-100%)}.preloader-content{flex-direction:column;align-items:center;gap:20px;display:flex}.preloader-logo{letter-spacing:4px;color:var(--text-primary);text-transform:uppercase;margin-bottom:5px;font-size:2.2rem;font-weight:800;animation:2s ease-in-out infinite alternate logoBreath;position:relative}.preloader-logo span{color:var(--accent)}.preloader-progress-container{background:#ffffff0a;border-radius:4px;width:240px;height:2px;margin-top:10px;position:relative;overflow:hidden}.preloader-progress-bar{background:linear-gradient(90deg, var(--accent), #fff);width:0%;height:100%;box-shadow:0 0 10px var(--accent-glow);transition:width 80ms ease-out}.preloader-percentage{color:var(--accent);letter-spacing:3px;font-family:monospace;font-size:.95rem;font-weight:600}.preloader-status{text-transform:uppercase;letter-spacing:4px;color:var(--text-secondary);opacity:.5;text-align:center;min-height:15px;margin-top:5px;font-size:.72rem;transition:opacity .3s}@keyframes logoBreath{0%{opacity:.85;transform:scale(.97)}to{opacity:1;text-shadow:0 0 25px #d4af3726;transform:scale(1.03)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{border:2px solid var(--bg-primary);background:#d4af372e;border-radius:10px;transition:background .3s}::-webkit-scrollbar-thumb:hover{background:#d4af3766}html{scrollbar-width:thin;scrollbar-color:#d4af372e var(--bg-primary)}.reveal-element{opacity:0;will-change:transform, opacity;transition:opacity 1.2s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.reveal-element.reveal-visible{opacity:1;transform:translateY(0)}.nav-links a.active{color:var(--text-primary)}.nav-links a.active:after{transform-origin:0;transform:scaleX(1)}.framework-card{z-index:1;position:relative;overflow:hidden}.framework-card:before{content:"";opacity:0;pointer-events:none;z-index:-1;background:radial-gradient(circle,#d4af3714 0%,#0000 70%);width:100%;height:100%;transition:opacity .6s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:0}.framework-card:hover:before{opacity:1}.back-to-top{-webkit-backdrop-filter:blur(8px);width:48px;height:48px;color:var(--accent);cursor:pointer;z-index:99;transition:var(--transition-btn);background:#1f1f1fd9;border:1px solid #d4af374d;border-radius:50%;justify-content:center;align-items:center;animation:.4s ease-out fadeIn;display:flex;position:fixed;bottom:30px;right:30px;box-shadow:0 4px 15px #0000004d}.back-to-top:hover{background:var(--accent);color:#000;border-color:var(--accent);transform:translateY(-5px);box-shadow:0 8px 25px #d4af3766}@keyframes fadeIn{0%{opacity:0;transform:scale(.8)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=768px){.back-to-top{width:42px;height:42px;bottom:20px;right:20px}}
