.niro-assistant-container{z-index:1000;font-family:var(--ff-inter);position:fixed;bottom:100px;right:30px}.niro-fab{background:var(--text-gradient-yellow);width:60px;height:60px;color:var(--smoky-black);transition:var(--transition-1);cursor:pointer;border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;font-size:28px;animation:4s infinite pulseGlow;display:flex;position:relative;overflow:hidden;box-shadow:0 0 10px #70cfff4d}@keyframes pulseGlow{0%{box-shadow:0 0 10px #70cfff4d}50%{box-shadow:0 0 20px #70cfff99}to{box-shadow:0 0 10px #70cfff4d}}.niro-fab:after{content:"";background:linear-gradient(90deg,#fff0 0%,#fff3 50%,#fff0 100%);width:200%;height:200%;animation:8s infinite shine;position:absolute;top:-50%;left:-50%;transform:rotate(45deg)translate(-50%,-50%)}@keyframes shine{0%{transform:rotate(45deg)translate(-150%,-50%)}10%{transform:rotate(45deg)translate(150%,-50%)}to{transform:rotate(45deg)translate(150%,-50%)}}.niro-fab:hover{box-shadow:var(--shadow-3);transform:translateY(-5px)}.niro-fab.active{background:var(--bg-gradient-onyx);color:var(--orange-yellow-crayola);border:1px solid var(--jet)}.niro-fab ion-icon{--ionicon-stroke-width:40px}.niro-chat-window{background:var(--eerie-black-2);border:1px solid var(--jet);width:350px;max-width:calc(100vw - 40px);height:500px;max-height:calc(100vh - 120px);box-shadow:var(--shadow-5);transform-origin:100% 100%;border-radius:20px;flex-direction:column;animation:.3s forwards scaleUp;display:flex;position:absolute;bottom:80px;right:0;overflow:hidden}@keyframes scaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.niro-chat-header{background:var(--onyx);border-bottom:1px solid var(--jet);align-items:center;gap:15px;padding:15px 20px;display:flex}.niro-avatar{background:var(--bg-gradient-onyx);width:40px;height:40px;color:var(--orange-yellow-crayola);border:1px solid var(--jet);border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.niro-chat-header h3{color:var(--white-2);font-size:var(--fs-5);font-weight:var(--fw-600);margin-bottom:2px}.niro-chat-header span{color:var(--orange-yellow-crayola);font-size:var(--fs-8);font-weight:var(--fw-500);align-items:center;gap:5px;display:flex}.niro-chat-header span:before{content:"";background:var(--orange-yellow-crayola);border-radius:50%;width:6px;height:6px;display:block}.niro-close-btn{color:var(--light-gray-70);transition:var(--transition-1);margin-left:auto;font-size:24px}.niro-close-btn:hover{color:var(--orange-yellow-crayola)}.niro-chat-body{flex-direction:column;flex:1;gap:15px;padding:20px;display:flex;overflow-y:auto}.niro-chat-body::-webkit-scrollbar{width:5px}.niro-chat-body::-webkit-scrollbar-track{background:var(--eerie-black-1)}.niro-chat-body::-webkit-scrollbar-thumb{background:var(--jet);border-radius:5px}.niro-message{max-width:85%;display:flex}.niro-message.user{align-self:flex-end}.niro-message.niro{align-self:flex-start}.niro-message-content{font-size:var(--fs-6);word-break:break-word;border-radius:16px;padding:12px 16px;line-height:1.5}.niro-message.user .niro-message-content{background:var(--text-gradient-yellow);color:var(--smoky-black);border-bottom-right-radius:4px}.niro-message.niro .niro-message-content{background:var(--onyx);color:var(--light-gray);border:1px solid var(--jet);border-bottom-left-radius:4px}.niro-chat-input-area{background:var(--onyx);border-top:1px solid var(--jet);align-items:center;gap:10px;padding:15px 20px;display:flex}.niro-chat-input-area input{background:var(--eerie-black-2);color:var(--white-2);border:1px solid var(--jet);font-size:var(--fs-6);transition:var(--transition-1);border-radius:12px;flex:1;padding:12px 15px}.niro-chat-input-area input:focus{border-color:var(--orange-yellow-crayola);outline:none}.niro-chat-input-area button{background:var(--text-gradient-yellow);width:45px;height:45px;color:var(--smoky-black);transition:var(--transition-1);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.niro-chat-input-area button:disabled{background:var(--jet);color:var(--light-gray-70);cursor:not-allowed}.niro-chat-input-area button:not(:disabled):hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.typing{align-items:center;gap:4px;display:flex;padding:16px!important}.typing .dot{background:var(--light-gray-70);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both typing}.typing .dot:first-child{animation-delay:-.32s}.typing .dot:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.niro-tooltip{background:var(--onyx);color:var(--white-2);font-size:var(--fs-7);font-weight:var(--fw-500);white-space:nowrap;border:1px solid var(--jet);box-shadow:var(--shadow-2);opacity:0;pointer-events:none;border-radius:12px;padding:10px 15px;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);position:absolute;bottom:12px;right:80px;transform:translate(20px)}.niro-tooltip.visible{opacity:1;transform:translate(0)}.niro-tooltip:after{content:"";border-style:solid;border-width:6px 0 6px 6px;border-color:transparent transparent transparent var(--jet);position:absolute;top:50%;right:-6px;transform:translateY(-50%)}:root{--bg-gradient-jet:linear-gradient(to bottom right, #1c1f26 0%, #101318 100%);--bg-gradient-onyx:linear-gradient(to bottom right, #2b323b 3%, #202327 97%);--bg-gradient-yellow-1:linear-gradient(to bottom right, #80d4ff 0%, #66b3ff00 50%);--bg-gradient-yellow-2:linear-gradient(135deg, #70cfff2e 0%, #5cadff00 59.86%), #16181d;--border-gradient-onyx:linear-gradient(to bottom right, #394d60 0%, #394d6000 50%);--text-gradient-yellow:linear-gradient(to right, #9df, #66e6ff);--jet:#181b20;--onyx:#1f2328;--eerie-black-1:#16181d;--eerie-black-2:#111318;--smoky-black:#0a0c0f;--white-1:#fff;--white-2:#fafafa;--orange-yellow-crayola:#70cfff;--vegas-gold:#30abe8;--light-gray:#c4ccd4;--light-gray-70:#c4ccd4b3;--bittersweet-shimmer:#2e8ab8;--ff-inter:"Inter", sans-serif;--fs-1:24px;--fs-2:18px;--fs-3:17px;--fs-4:16px;--fs-5:15px;--fs-6:14px;--fs-7:13px;--fs-8:11px;--fw-300:300;--fw-400:400;--fw-500:500;--fw-600:600;--shadow-1:-4px 8px 24px #00000040;--shadow-2:0 16px 30px #00000040;--shadow-3:0 16px 40px #00000040;--shadow-4:0 25px 50px #00000026;--shadow-5:0 24px 80px #00000040;--transition-1:.25s ease;--transition-2:.5s ease-in-out}*,:before,:after{box-sizing:border-box;font-family:var(--ff-inter);margin:0;padding:0}li{list-style:none}a{text-decoration:none}a,img,time,span,ion-icon{display:block}button{font:inherit;text-align:left;cursor:pointer;background:0 0;border:none}input,textarea{width:100%;font-family:inherit;font-size:inherit;background:0 0;display:block}::selection{background:var(--orange-yellow-crayola);color:var(--smoky-black)}:focus{outline-color:var(--orange-yellow-crayola)}html{font-family:var(--ff-inter)}body{font-family:var(--ff-inter);background:var(--smoky-black);color:var(--light-gray);padding:20px 20px 100px;overflow-x:hidden}.sidebar,.main-content{background:var(--eerie-black-2);border:1px solid var(--jet);box-shadow:var(--shadow-5);z-index:1;transition:var(--transition-2);border-radius:20px;padding:30px}.separator{background:var(--jet);width:100%;height:1px;margin:20px 0}.icon-box{color:var(--light-gray-70);justify-content:center;align-items:center;font-size:18px;display:flex}.icon-box ion-icon{--ionicon-stroke-width:35px}.article-title{font-weight:var(--fw-600);margin-bottom:25px;position:relative}.h1,.h2,.h3,.h4,.h5{color:var(--white-2);text-transform:capitalize;font-family:var(--ff-inter);font-weight:var(--fw-500)}.h2{font-size:var(--fs-1)}.h3{font-size:var(--fs-2)}.h4{font-size:var(--fs-4)}.h5{font-size:var(--fs-6)}.sidebar{max-height:120px;transition:var(--transition-2);margin-bottom:20px;position:relative;overflow:hidden}.sidebar.active{max-height:460px}.sidebar-info{justify-content:flex-start;align-items:center;gap:20px;display:flex;position:relative}.info-content{flex-grow:1;min-width:0}.avatar-box{box-shadow:none;background:0 0;border-radius:30px}.info-content .name{color:var(--white-2);font-size:var(--fs-2);font-weight:var(--fw-500);letter-spacing:-.5px;margin-bottom:5px}.info-content .title{color:var(--white-1);font-size:var(--fs-8);font-weight:var(--fw-400);letter-spacing:.5px;background:#70cfff0d;border:1px solid #70cfff33;border-radius:10px;width:max-content;padding:4px 14px}.info_more-btn{background:var(--bg-gradient-onyx);width:30px;height:30px;color:var(--orange-yellow-crayola);box-shadow:var(--shadow-3);z-index:1;transition:var(--transition-1);border:1px solid var(--jet);border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:18px;display:flex;position:absolute;top:15px;right:15px}@media (width<=1024px){.info_more-btn{border-radius:10px;width:35px;height:35px;top:auto;bottom:15px;right:15px}}.info_more-btn:before{content:"";background:var(--bg-gradient-jet);border-radius:inherit;z-index:-1;transition:var(--transition-1);position:absolute;inset:1px}.info_more-btn:hover{box-shadow:var(--shadow-4);transform:translateY(-2px)}.info_more-btn:hover:before{background:var(--bg-gradient-yellow-2)}.info_more-btn ion-icon{--ionicon-stroke-width:40px;transition:transform var(--transition-1);font-size:18px}.sidebar.active .info_more-btn ion-icon{transform:rotate(180deg)}.info_more-btn span{display:none}.sidebar-info_more{opacity:0;visibility:hidden;transition:var(--transition-2)}.sidebar.active .sidebar-info_more{opacity:1;visibility:visible}.contacts-list{grid-template-columns:1fr;gap:16px;display:grid}.contact-item{align-items:center;gap:16px;min-width:100%;display:flex}.contact-info{width:calc(100% - 46px);max-width:calc(100% - 46px)}.contact-title{color:var(--light-gray-70);font-size:var(--fs-8);text-transform:uppercase;margin-bottom:2px}.contact-info :is(.contact-link,time,address){color:var(--white-2);font-size:var(--fs-7)}.contact-info address{font-style:normal}.social-list{justify-content:flex-start;align-items:center;gap:15px;padding-bottom:4px;padding-left:7px;display:flex}.social-item .social-link{color:var(--light-gray-70);transition:var(--transition-1);font-size:20px}.social-item .social-link:hover{color:var(--white-1);transform:translateY(-2px)}.social-item .social-link ion-icon{font-size:20px}.navbar{-webkit-backdrop-filter:blur(20px)saturate(180%);z-index:10;background:#1a1a1a99;border:1px solid #ffffff1a;border-radius:50px;width:calc(100% - 40px);position:fixed;bottom:20px;left:20px;right:20px;box-shadow:0 8px 32px #0000005e}.navbar-list{justify-content:space-around;align-items:center;padding:8px 10px;display:flex}.navbar-link{color:var(--light-gray);font-size:var(--fs-6);font-weight:var(--fw-500);transition:var(--transition-1);border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:10px;display:flex}.navbar-link ion-icon{--ionicon-stroke-width:40px;font-size:20px}.navbar-link span{font-size:10px}.navbar-link:hover,.navbar-link:focus{color:var(--light-gray-70)}.navbar-link.active{color:var(--orange-yellow-crayola)}.main-content{min-width:100%}article{display:none}article.active{animation:.5s backwards fade;display:block}@keyframes fade{0%{opacity:0}to{opacity:1}}.rotating{animation:1.5s linear infinite rotate}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.about-text{color:var(--light-gray);font-size:var(--fs-6);font-weight:var(--fw-300);margin-bottom:40px;line-height:1.6}.about-text p{margin-bottom:15px}.service{margin-bottom:35px}.service-title{margin-bottom:20px}.service-list{grid-template-columns:1fr;gap:20px;display:grid}.service-item{background:var(--eerie-black-2);border:1px solid var(--jet);box-shadow:var(--shadow-2);z-index:1;min-height:90px;transition:var(--transition-1);border-radius:20px;justify-content:flex-start;align-items:flex-start;gap:20px;padding:28px 32px;display:flex;position:relative}.service-item:before{content:"";border-radius:inherit;z-index:-1;background:0 0;position:absolute;inset:1px}.service-item:hover{box-shadow:var(--shadow-3);transform:translateY(-5px)}.service-icon-box{background:#70cfff0d;border:1px solid #70cfff33;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.service-item-title{font-weight:var(--fw-600);margin-bottom:8px}.service-item-text{color:var(--light-gray-70);font-size:var(--fs-6);font-weight:var(--fw-300);line-height:1.6}.resume-header{justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px;display:flex}.download-btn{background:var(--bg-gradient-onyx);color:var(--orange-yellow-crayola);font-size:var(--fs-6);font-weight:var(--fw-600);border:1px solid var(--jet);transition:var(--transition-1);box-shadow:var(--shadow-2);z-index:1;border-radius:14px;align-items:center;gap:8px;padding:10px 20px;display:flex;position:relative}.download-btn:before{content:"";background:var(--bg-gradient-jet);border-radius:inherit;z-index:-1;transition:var(--transition-1);position:absolute;inset:1px}.download-btn:hover{box-shadow:var(--shadow-3);transform:translateY(-2px)}.download-btn:hover:before{background:var(--bg-gradient-yellow-2)}.download-btn ion-icon{--ionicon-stroke-width:40px;font-size:20px}.resume-actions{gap:10px;display:flex}@media (width<=768px){.resume-actions{flex-direction:row;justify-content:flex-start;width:100%}}@media (width<=580px){.resume-header{flex-direction:column;align-items:flex-start;gap:15px}.resume-actions{flex-direction:column;width:100%}.download-btn{justify-content:center;width:100%}}.timeline{margin-bottom:30px}.timeline .title-wrapper{align-items:center;gap:15px;margin-bottom:25px;display:flex}.timeline-list{font-size:var(--fs-6);margin-left:45px}.timeline-item:not(:last-child){margin-bottom:25px}.timeline-item-title{font-size:var(--fs-5);font-weight:var(--fw-600);color:var(--white-2);margin-bottom:7px;line-height:1.3}.timeline-list span{color:var(--vegas-gold);font-weight:var(--fw-500);line-height:1.6;font-size:var(--fs-7)}.timeline-item:after{content:"";background:var(--jet);width:1px;height:calc(100% + 50px);position:absolute;top:-25px;left:-33px}.timeline-item:last-child:after{height:calc(100% + 25px)}.timeline-item:before{content:"";background:var(--text-gradient-yellow);width:12px;height:12px;box-shadow:0 0 0 4px var(--jet);z-index:1;border-radius:50%;position:absolute;top:5px;left:-38px}.timeline-text{color:var(--light-gray-70);font-weight:var(--fw-300);margin-top:10px;line-height:1.6}.skills-list{background:0 0;border:none;border-radius:20px;padding:0}.skills-item:not(:last-child){margin-bottom:10px}.skills-item .title-wrapper{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.skills-item .title-wrapper h5{font-weight:var(--fw-500);color:var(--white-2)}.skills-item .title-wrapper data{color:#70cfff;font-size:var(--fs-7);font-weight:var(--fw-600);background:#70cfff0d;border:1px solid #70cfff33;border-radius:6px;padding:2px 8px}.skill-progress-bg{background:var(--jet);border-radius:10px;width:100%;height:6px;overflow:hidden}.skill-progress-fill{background:var(--text-gradient-yellow);border-radius:inherit;height:100%;transition:width 1s ease-in-out}.tech-icons-container{background:var(--bg-gradient-onyx);border:1px solid var(--jet);border-radius:20px;justify-content:center;margin-bottom:30px;padding:20px;display:flex}.tech-icons-container img{width:100%;max-width:500px;height:auto}.certifications{margin-top:40px}.cert-category-title{color:var(--orange-yellow-crayola);font-size:var(--fs-6);font-weight:var(--fw-500);letter-spacing:.5px;margin-top:25px;margin-bottom:15px;padding-left:2px}.certifications-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.cert-nav{gap:10px;display:flex}.cert-nav-btn{background:var(--border-gradient-onyx);color:var(--orange-yellow-crayola);cursor:pointer;width:40px;height:40px;transition:var(--transition-1);box-shadow:var(--shadow-2);border:none;border-radius:10px;justify-content:center;align-items:center;font-size:20px;display:flex}.cert-nav-btn:hover{background:var(--orange-yellow-crayola);color:var(--eerie-black-1)}.cert-slider-container{perspective:1000px;width:100%;height:480px;padding:20px 0;position:relative;overflow:hidden}.cert-list{width:100%;height:100%;transform-style:preserve-3d;justify-content:center;align-items:center;display:flex}.cert-item{background:var(--bg-gradient-onyx);width:80%;max-width:420px;height:auto;box-shadow:var(--shadow-2);cursor:pointer;border-radius:20px;transition:transform .5s,opacity .5s,filter .5s,z-index 0s .25s;position:absolute}.cert-item--active{opacity:1;filter:blur();z-index:3;transition:transform .5s,opacity .5s,filter .5s,z-index;transform:translate(0)scale(1)translateZ(0)}.cert-item--prev{opacity:.5;filter:blur(3px);z-index:2;transform:translate(-65%)scale(.85)translateZ(-100px)}.cert-item--next{opacity:.5;filter:blur(3px);z-index:2;transform:translate(65%)scale(.85)translateZ(-100px)}.cert-item--hidden{opacity:0;z-index:1;pointer-events:none;transform:translate(0)scale(.5)translateZ(-200px)}.cert-link{text-align:left;width:100%;color:inherit;border-radius:20px;flex-direction:column;align-items:flex-start;gap:15px;padding:0;display:flex;overflow:hidden}.cert-img{width:100%;height:auto;margin:0}.cert-img img{width:100%;height:auto;display:block}.cert-content{padding:15px 20px}.cert-item-title{font-weight:var(--fw-600);margin-bottom:4px}.cert-item-text{color:var(--light-gray-70);font-size:var(--fs-7)}.filter-list{display:none}.project-list{grid-template-columns:1fr;gap:35px;margin-top:30px;display:grid}.project-item{display:none}.project-item.active{animation:.6s cubic-bezier(.4,0,.2,1) forwards scaleUp;display:block}.project-item>a{width:100%;transition:var(--transition-1);display:block}.project-img{width:100%;height:220px;box-shadow:var(--shadow-2);border-radius:12px;margin-bottom:14px;position:relative;overflow:hidden}.project-img img{object-fit:cover;width:100%;height:100%;transition:var(--transition-2)}.project-item:hover .project-img img{transform:scale(1.05)}.project-footer{justify-content:space-between;align-items:center;padding:0 5px;display:flex}.project-title{color:var(--white-2);font-size:var(--fs-4);font-weight:var(--fw-600);transition:var(--transition-1);margin-bottom:4px}.project-category{color:var(--light-gray-70);font-size:var(--fs-7);font-weight:var(--fw-300)}.project-links{flex-shrink:0;align-items:center;gap:12px;display:flex}.project-link-icon{color:var(--light-gray-70);transition:var(--transition-1);justify-content:center;align-items:center;display:flex}.project-link-icon:hover{color:var(--white-1);transform:translateY(-2px)}.project-link-icon ion-icon{font-size:22px}.project-item{cursor:pointer}.project-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:2000;opacity:0;visibility:hidden;background:#000000bf;justify-content:center;align-items:center;padding:20px;transition:opacity .35s,visibility .35s;display:flex;position:fixed;inset:0}.project-modal-overlay.active{opacity:1;visibility:visible}.project-modal{background:var(--eerie-black-1);opacity:0;border:1px solid #ffffff14;border-radius:24px;width:100%;max-width:720px;max-height:90vh;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s;position:relative;overflow-y:auto;transform:translateY(40px)scale(.95);box-shadow:0 32px 80px #00000080,0 0 0 1px #ffffff0d}.project-modal-overlay.active .project-modal{opacity:1;transform:translateY(0)scale(1)}.project-modal::-webkit-scrollbar{width:6px}.project-modal::-webkit-scrollbar-track{background:0 0}.project-modal::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.project-modal::-webkit-scrollbar-thumb:hover{background:#fff3}.project-modal-close{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:40px;height:40px;color:var(--white-1);cursor:pointer;z-index:10;transition:var(--transition-1);background:#00000080;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;top:16px;right:16px}.project-modal-close:hover{background:#ffffff26;transform:rotate(90deg)}.project-modal-close ion-icon{--ionicon-stroke-width:48px}.project-modal-img{border-radius:24px 24px 0 0;width:100%;height:300px;overflow:hidden}.project-modal-img img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.project-modal:hover .project-modal-img img{transform:scale(1.03)}.project-modal-body{padding:30px 30px 35px}.project-modal-header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.project-modal-title{color:var(--white-1);font-size:26px;font-weight:var(--fw-600);letter-spacing:-.3px;margin-bottom:6px}.project-modal-category{color:var(--orange-yellow-crayola);font-size:var(--fs-7);font-weight:var(--fw-500);letter-spacing:.3px;background:#ffd15c1a;border-radius:8px;padding:4px 14px;display:inline-block}.project-modal-separator{background:linear-gradient(to right, transparent, var(--jet), transparent);width:100%;height:1px;margin:24px 0}.project-modal-section{margin-bottom:24px}.project-modal-section-title{color:var(--white-2);font-size:var(--fs-5);font-weight:var(--fw-600);letter-spacing:.2px;margin-bottom:12px}.project-modal-desc{color:var(--light-gray);font-size:var(--fs-6);font-weight:var(--fw-300);line-height:1.75}.project-modal-tech{flex-wrap:wrap;gap:10px;display:flex}.project-modal-tech-tag{background:var(--bg-gradient-onyx);color:var(--white-2);font-size:var(--fs-7);font-weight:var(--fw-500);border:1px solid var(--jet);transition:var(--transition-1);border-radius:50px;align-items:center;gap:6px;padding:8px 16px;display:inline-flex}.project-modal-tech-tag:hover{border-color:var(--orange-yellow-crayola);color:var(--orange-yellow-crayola);transform:translateY(-2px)}.project-modal-tech-tag:before{content:"#";color:var(--orange-yellow-crayola);font-weight:var(--fw-600)}.project-modal-actions{gap:14px;margin-top:28px;display:flex}.project-modal-btn{font-size:var(--fs-6);font-weight:var(--fw-600);text-align:center;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 28px;transition:all .3s;display:inline-flex}.project-modal-btn ion-icon{--ionicon-stroke-width:40px;font-size:20px}.project-modal-btn-github{color:var(--white-2);background:#ffffff0f;border:1px solid #ffffff1a}.project-modal-btn-github:hover{color:var(--white-1);background:#ffffff1f;border-color:#fff3;transform:translateY(-3px);box-shadow:0 10px 30px #0000004d}.project-modal-btn-live{color:var(--smoky-black);background:linear-gradient(135deg,#ffdb70,#fa3);border:none}.project-modal-btn-live:hover{color:var(--smoky-black);transform:translateY(-3px);box-shadow:0 10px 30px #ffd15c40}@media (width<=580px){.project-modal-img{height:200px}.project-modal-body{padding:24px 20px 28px}.project-modal-title{font-size:22px}.project-modal-actions{flex-direction:column}.project-modal-btn{width:100%}}.mapbox{border:1px solid var(--jet);width:100%;height:300px;box-shadow:var(--shadow-2);border-radius:20px;margin-bottom:35px;overflow:hidden}.mapbox iframe{filter:grayscale()invert(.9)contrast(1.2);width:100%;height:100%}.contact-form{margin-bottom:10px}.form-title{margin-bottom:25px}.contact-social{margin-top:30px}.contact-social .social-list{flex-wrap:wrap;align-items:center;gap:15px 30px;margin-top:20px;padding-left:0;display:flex}.contact-social .social-item .social-link{font-size:var(--fs-6);font-weight:var(--fw-500);align-items:center;gap:10px;display:flex}.contact-social .social-item .social-link ion-icon{font-size:22px}.input-wrapper{grid-template-columns:1fr;gap:20px;margin-bottom:20px;display:grid}.form-input{color:var(--white-2);font-size:var(--fs-6);font-weight:var(--fw-400);border:1px solid var(--jet);background:var(--eerie-black-1);transition:var(--transition-1);border-radius:14px;outline:none;padding:15px 20px}.form-input::placeholder{font-weight:var(--fw-400);color:var(--light-gray-70)}.form-input:focus{border-color:var(--orange-yellow-crayola);box-shadow:0 0 0 3px #ffdb701a}textarea.form-input{resize:vertical;height:150px;min-height:120px;max-height:300px;margin-bottom:25px}.form-btn{background:var(--bg-gradient-onyx);width:max-content;color:var(--orange-yellow-crayola);font-size:var(--fs-6);font-weight:var(--fw-600);box-shadow:var(--shadow-3);z-index:1;transition:var(--transition-1);border:1px solid var(--jet);border-radius:16px;justify-content:center;align-items:center;gap:12px;padding:12px 24px;display:flex;position:relative}.form-btn:before{content:"";background:var(--bg-gradient-jet);border-radius:inherit;z-index:-1;transition:var(--transition-1);position:absolute;inset:1px}.form-btn ion-icon{--ionicon-stroke-width:40px;font-size:18px}.form-btn:hover{box-shadow:var(--shadow-4);transform:translateY(-2px)}.form-btn:hover:before{background:var(--bg-gradient-yellow-2)}.form-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.form-btn:disabled:hover{box-shadow:var(--shadow-3)}@media (width>=450px){.sidebar,.main-content{width:100%;max-width:520px;margin-inline:auto;padding:10px}.sidebar{max-height:200px}.sidebar.active{max-height:600px}.sidebar-info{gap:25px}.avatar-box img{width:120px}.info-content .name{margin-bottom:10px}.info-content .title{padding:5px 18px}.sidebar-info{padding-right:0}.info-content{max-width:100%}.info_more-btn{font-size:var(--fs-6);padding:10px 20px}.info_more-btn span{display:none}.info_more-btn ion-icon{display:block}.contacts-list{grid-template-columns:1fr 1fr;gap:30px 20px}.navbar{border-radius:50px;width:max-content;padding:0 15px;bottom:25px;left:50%;transform:translate(-50%)}.navbar-list{gap:10px}.navbar-link{padding:12px 15px;font-size:14px}}@media (width>=580px){:root{--fs-1:32px}.sidebar,.main-content{max-width:700px}.project-list,.input-wrapper{grid-template-columns:1fr 1fr}.form-btn{margin-left:auto}}@media (width>=1024px){body{margin-top:15px;margin-bottom:15px}main{justify-content:center;align-items:stretch;gap:30px;max-width:1250px;margin-inline:auto;display:flex}.sidebar{z-index:1;border-radius:20px;height:max-content;max-height:max-content;margin-bottom:0;padding:30px;position:sticky;top:15px}.sidebar-info{text-align:center;flex-direction:column}.avatar-box img{width:150px;margin-inline:auto}.info-content .name{white-space:nowrap;margin-top:15px;font-size:24px}.info-content .title{margin-inline:auto}.info_more-btn{display:none}.sidebar-info_more{opacity:1;visibility:visible}.contacts-list{grid-template-columns:1fr}.contact-info{width:100%;max-width:100%}.main-content{border-radius:20px;width:75%;min-width:75%;margin:0;padding:50px 30px 30px;position:relative}article{padding:0}.navbar{all:unset;-webkit-backdrop-filter:blur(15px);z-index:1000;background:#2b2b2cbf;border:1px solid #ffffff1a;border-radius:20px;width:max-content;height:auto;padding:0 15px;display:block;position:fixed;top:15px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0000005e}main{margin-top:40px}.sidebar{top:60px}.navbar-list{justify-content:flex-end;align-items:center;gap:10px;margin:0;padding:0;list-style:none;display:flex}.navbar-link{color:var(--light-gray);font-size:15px;font-weight:var(--fw-500);transition:var(--transition-1);padding:15px 10px;display:block}.navbar-link span{display:block}.navbar-link.active{color:var(--orange-yellow-crayola)}.navbar-link{flex-direction:row;gap:8px;padding:15px 10px;font-size:15px}.navbar-link ion-icon{display:none}.navbar-link span{font-size:15px;font-weight:var(--fw-500)}}.experience-hub{margin-bottom:40px}.exp-hub-container{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;gap:20px;min-height:420px;padding:20px 0;display:grid;position:relative}.exp-center{z-index:2;width:160px;height:160px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.exp-center-ring{border:2px solid #5b9cf540;border-radius:50%;animation:4s ease-in-out infinite exp-pulse;position:absolute;inset:0;box-shadow:0 0 40px #5b9cf514,inset 0 0 40px #5b9cf50d}.exp-center-glow{background:radial-gradient(circle,#5b9cf514 0%,#0000 70%);border-radius:50%;animation:6s ease-in-out infinite exp-glow;position:absolute;inset:-20px}.exp-center-content{z-index:1;background:radial-gradient(circle,#1e2229 0%,#17191c 100%);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.exp-brain-icon{color:#5b9cf5b3;margin-bottom:6px}.exp-title{color:var(--white-2);font-size:13px;font-weight:var(--fw-600);letter-spacing:2px;text-transform:uppercase}.exp-subtitle{color:var(--light-gray-70);font-size:9px;font-weight:var(--fw-500);letter-spacing:3px;text-transform:uppercase;margin-top:2px}.exp-orbit-dot{transform-origin:0 0;background:#5b9cf5;border-radius:50%;width:10px;height:10px;animation:8s linear infinite exp-orbit;position:absolute;top:50%;left:50%;box-shadow:0 0 12px #5b9cf599}@keyframes exp-orbit{0%{transform:rotate(0)translate(95px)rotate(0)}to{transform:rotate(360deg)translate(95px)rotate(-360deg)}}@keyframes exp-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes exp-glow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.exp-quadrant{flex-direction:column;gap:8px;padding:8px;display:flex}.exp-top-left,.exp-bottom-left{justify-self:center;align-items:flex-end}.exp-top-left{justify-content:flex-end}.exp-bottom-left{justify-content:flex-start}.exp-top-right,.exp-bottom-right{justify-self:center;align-items:flex-start}.exp-top-right{justify-content:flex-end}.exp-bottom-right{justify-content:flex-start}.exp-top-left .exp-tags,.exp-bottom-left .exp-tags{justify-content:flex-end}.exp-top-right .exp-tags,.exp-bottom-right .exp-tags{justify-content:flex-start}.exp-quadrant-label{font-size:10px;font-weight:var(--fw-600);letter-spacing:2px;text-transform:uppercase;margin-top:4px}.exp-tags{flex-wrap:wrap;gap:7px;max-width:190px;display:flex}.exp-tag{color:var(--white-2);font-size:11px;font-weight:var(--fw-500);white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;padding:6px 12px;transition:all .3s;animation:5s ease-in-out infinite exp-float;display:inline-block}.exp-tag:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-3px)}.exp-tag.exp-tag--highlight{position:relative}.exp-tag.exp-tag--highlight:before{content:"";border:1.5px solid var(--eerie-black-2);background:#22c55e;border-radius:50%;width:9px;height:9px;animation:2s ease-in-out infinite green-pulse;position:absolute;top:-4px;right:-4px;box-shadow:0 0 8px 3px #22c55eb3}@keyframes green-pulse{0%,to{transform:scale(1);box-shadow:0 0 8px 3px #22c55eb3}50%{transform:scale(1.2);box-shadow:0 0 14px 5px #22c55e}}@keyframes exp-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (width<=580px){.exp-hub-container{grid-template-columns:1fr;gap:30px;min-height:auto}.exp-center{order:-1;width:140px;height:140px;margin:0 auto;position:relative;top:auto;left:auto;transform:none}.exp-quadrant{text-align:center;align-items:center!important}.exp-tags{justify-content:center!important}}.tools-inventory{margin-bottom:40px}.tools-inventory-header{margin-bottom:20px;background:#ffffff0a;border:1px solid #ffffff14;border-radius:50px;justify-content:center;align-items:center;gap:10px;width:max-content;margin-inline:auto;padding:8px 22px;display:flex}.tools-inventory-icon{color:var(--orange-yellow-crayola);font-size:16px}.tools-inventory-label{font-size:11px;font-weight:var(--fw-600);letter-spacing:2.5px;text-transform:uppercase;color:var(--white-2)}.tools-marquee-wrapper{background:#ffffff05;border:1px solid #ffffff0f;border-radius:16px;padding:16px 0;position:relative;overflow:hidden}.tools-marquee-fade{z-index:2;pointer-events:none;width:60px;position:absolute;top:0;bottom:0}.tools-marquee-fade-left{background:linear-gradient(to right, var(--eerie-black-2), transparent);left:0}.tools-marquee-fade-right{background:linear-gradient(to left, var(--eerie-black-2), transparent);right:0}.tools-marquee-track{align-items:center;gap:20px;width:max-content;animation:25s linear infinite marquee-scroll;display:flex}.tools-marquee-track:hover{animation-play-state:paused}.tools-marquee-item{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s;display:flex}.tools-marquee-item:hover{border-color:var(--orange-yellow-crayola);background:#ffffff1a;transform:translateY(-4px)scale(1.1);box-shadow:0 8px 20px #0000004d}.tools-marquee-item img{object-fit:contain;width:28px;height:28px}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.about-text{color:var(--light-gray);margin-bottom:25px;font-size:15px;line-height:1.8}.text-highlight{color:var(--orange-yellow-crayola);font-weight:600;transition:transform .3s,text-shadow .3s;display:inline-block}.text-highlight:hover{text-shadow:0 0 5px #ffdb7066;transform:translateY(-2px)rotate(1deg)}.animate-fade-in-up{opacity:0;animation:.8s cubic-bezier(.2,.8,.2,1) forwards fadeInUp;transform:translateY(20px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.name{flex-direction:column;gap:1px;line-height:1.25;display:flex}.name-line{color:var(--white-2);letter-spacing:.3px;white-space:nowrap;font-size:15px;font-weight:500;display:block}.name-line--highlight{background:var(--text-gradient-yellow);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:17px;font-weight:700}.typewriter-text{color:var(--orange-yellow-crayola);letter-spacing:.5px;font-size:12px;font-weight:500;display:inline}.typewriter-cursor{color:var(--orange-yellow-crayola);margin-left:1px;font-size:14px;font-weight:300;animation:.8s step-end infinite blink-cursor;display:inline}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}*,:before,:after{cursor:none!important}.cursor-dot{background:var(--orange-yellow-crayola);pointer-events:none;z-index:99999;will-change:transform;border-radius:50%;width:8px;height:8px;transition:width .15s,height .15s,top .15s,left .15s;position:fixed;top:-4px;left:-4px}.cursor-dot--click{width:4px;height:4px;top:-2px;left:-2px}.cursor-ring{border:1.5px solid var(--orange-yellow-crayola);pointer-events:none;z-index:99998;opacity:.55;will-change:transform;border-radius:50%;width:36px;height:36px;transition:width .25s,height .25s,top .25s,left .25s,opacity .25s,border-color .25s;position:fixed;top:-18px;left:-18px}.cursor-ring--hover{opacity:.85;border-color:var(--vegas-gold);width:56px;height:56px;top:-28px;left:-28px}.cursor-ring--click{opacity:1;width:28px;height:28px;top:-14px;left:-14px}.preloader{z-index:999999;background:var(--eerie-black-2);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.preloader-snow{pointer-events:none;position:absolute;inset:0}.preloader-flake{background:#ffffffe6;border-radius:50%;animation:linear infinite preloader-fall;position:absolute;top:-10px}@keyframes preloader-fall{0%{transform:translateY(-10px)rotate(0)}to{transform:translateY(110vh)rotate(360deg)}}.preloader-stage{z-index:1;text-align:center;padding:0 20px;position:relative}.preloader-line{background:var(--orange-yellow-crayola);width:80px;height:1.5px;margin:0 auto 20px}.preloader-subtitle{letter-spacing:4px;text-transform:uppercase;color:var(--light-gray-70);margin-bottom:28px;font-size:11px;font-weight:500}.preloader-title{transform-style:preserve-3d;flex-wrap:wrap;justify-content:center;gap:0;margin-bottom:40px;display:flex}.preloader-char{letter-spacing:.06em;color:var(--white-1);text-shadow:0 0 40px #ffdb7026,0 2px #0006;will-change:transform, opacity;font-size:clamp(38px,8vw,92px);font-weight:700;line-height:1;display:inline-block}.preloader-space{width:.35em}.preloader-bar-track{background:#ffffff14;border-radius:2px;width:min(480px,80vw);height:2px;margin:0 auto;overflow:hidden}.preloader-bar{will-change:transform;background:linear-gradient(90deg,#70cfff,#4ce1ff);border-radius:2px;height:100%;box-shadow:0 0 16px #70cfffb3}body{background:radial-gradient(at 20% 0,#081221e6 0%,#0000 60%),radial-gradient(at 80% 100%,#09151bcc 0%,#0000 60%),#0c0e12}::selection{color:var(--white-1);background:#70cfff4d}.sidebar,.main-content{position:relative;overflow:visible}.sidebar:before,.main-content:before{content:"";z-index:5;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#b3e6ff73 30%,#ffffffd9 50%,#b3e6ff73 70%,#0000 100%);height:1px;position:absolute;top:0;left:8%;right:8%}.sidebar:after,.main-content:after{content:"";pointer-events:none;z-index:5;border:1px solid #70cfff2e;border-radius:20px;position:absolute;inset:0;box-shadow:inset 0 1px #cceeff12,0 0 35px #70cfff12,0 0 70px #70cfff08}.service-item,.project-item{position:relative}.service-item:hover,.project-item:hover{box-shadow:var(--shadow-2), 0 0 22px #70cfff24, 0 0 44px #70cfff0f}.sidebar{background:linear-gradient(to bottom right,#1d232bfa 0%,#16191dfa 100%);border:1px solid #297aa333}.navbar-link.active{text-shadow:0 0 10px #70cfff66;color:#80d4ff!important}.dot-glow{background:#70cfff!important;box-shadow:0 0 6px #70cfffe6,0 0 12px #70cfff99,0 0 24px #70cfff4d!important}.timeline-item{position:relative}::-webkit-scrollbar-thumb{background:#297aa380}::-webkit-scrollbar-thumb:hover{background:#1aa1e6b3}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(100% 40% at 50% 0,#d1ecfa06 0%,#0000 100%),radial-gradient(100% 20% at 50% 100%,#add6eb08 0%,#0000 100%);position:fixed;inset:0}.cert-slider-container{z-index:1;position:relative}.cert-item{position:absolute}.service-content-box{flex:1;min-width:0}.service-item-text{word-break:break-word;overflow-wrap:break-word;line-height:1.7}.project-content-wrapper{flex:1;min-width:0}.project-title{white-space:normal;overflow-wrap:break-word}.contact-info{min-width:0}.contact-link,.contact-info address{overflow-wrap:break-word;word-break:break-all}.timeline-text{overflow-wrap:break-word;word-break:break-word}.timeline-item-title{overflow-wrap:break-word}.sidebar,.main-content{padding:35px}
