@import "https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&family=Inter:wght@400;500&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--rich-black:#001f2d;--prussian-blue:#003459;--cerulean:#007ea7;--picton-blue:#00a8e8;--white:#fff}body{color:#00b4b6;background:#000;font-family:Inter,sans-serif;overflow:hidden}html,body,#root{height:100%}.app-container{flex-direction:column;min-height:100vh;display:flex}.profile-header-card{background:#000000b3;border-radius:0 0 24px 24px;flex-direction:column;align-items:center;width:100%;max-width:1024px;margin:0 auto 32px;padding:2.5rem 1.5rem;display:flex;position:relative;box-shadow:0 8px 32px #00000080}.profile-header-card img:not(.linkedin-logo){object-fit:cover;background:#222;border:3px solid #00b4b6;border-radius:50%;width:120px;height:120px;margin-bottom:20px;box-shadow:0 4px 24px #00000080}.profile-header-card h1{text-align:center;letter-spacing:1px;color:#fff;margin:0;font-size:2rem;font-weight:700}.profile-header-card h2{color:#00b4b6;text-align:center;letter-spacing:.5px;margin:8px 0 0;font-size:1.1rem;font-weight:500}.header-location{color:#fff9;align-items:center;gap:6px;margin-top:10px;font-size:.9rem;display:flex}.header-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:22px;display:flex}.header-action-btn{color:#00b4b6;cursor:pointer;background:#00b4b614;border:1.5px solid #00b4b666;border-radius:12px;align-items:center;gap:8px;padding:10px 20px;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex}.header-action-btn:hover{color:#000;background:#00b4b6;border-color:#00b4b6;transform:translateY(-2px);box-shadow:0 4px 16px #00b4b64d}.header-action-btn--primary{color:#000;background:#00b4b6;border-color:#00b4b6}.header-action-btn--primary:hover{background:#00cdd0;border-color:#00cdd0}.header-action-btn--call{transition:all .25s}.header-action-btn--calling{color:#000;background:#00b4b6;border-color:#00b4b6}.header-action-btn--icon{padding:10px 14px}.phone-ring{animation:.5s ease-in-out infinite phoneRing}@keyframes phoneRing{0%,to{transform:rotate(0)}15%{transform:rotate(15deg)}30%{transform:rotate(-15deg)}45%{transform:rotate(10deg)}60%{transform:rotate(-10deg)}75%{transform:rotate(5deg)}}.linkedin-logo{width:auto;height:22px;box-shadow:none;background:0 0;border:none;border-radius:0;display:block}.section-card,.section-card-no-hover{background:#00000080;border:1.5px solid #00b4b6;border-radius:18px;flex-direction:column;align-items:center;width:100%;margin-bottom:18px;padding:28px 22px;display:flex;box-shadow:0 4px 24px #00b4b61f}.section-card h4,.section-card-no-hover h4{color:#00b4b6;letter-spacing:1px;margin-bottom:12px;font-size:1.25rem;font-weight:700}.section-card a,.section-card-no-hover a{color:#00b4b6;margin-bottom:12px;font-size:1.1rem;font-weight:600;text-decoration:underline;transition:color .2s}.section-card:hover{background:#00b4b633;transition:background .2s,color .2s,border-color .2s;transform:translateY(-4px)}.section-card p{color:#fff;text-align:center;margin-top:16px;font-size:1rem;line-height:1.7}.section-card .stack{text-align:center;color:#b2f7ef;width:100%;margin-top:auto;padding-top:18px;font-weight:600}.accordion{cursor:pointer;background:#00000080;border:1.5px solid #00b4b666;border-radius:18px;width:100%;margin-bottom:12px;transition:border-color .3s,background .3s,box-shadow .3s;box-shadow:0 4px 24px #00b4b61f}.accordion:hover{background:#00b4b60f;border-color:#00b4b6}.accordion--open{border-color:#00b4b6;box-shadow:0 4px 24px #00b4b633}.accordion-header{justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.accordion-chevron{color:#00b4b6;flex-shrink:0;transition:transform .3s}.accordion-chevron--open{transform:rotate(180deg)}.accordion-body{transition:height .35s cubic-bezier(.4,0,.2,1);overflow:hidden}.accordion-content{padding:0 22px 22px}.accordion-paragraph{color:#ffffffe6;margin-bottom:10px;font-size:.95rem;line-height:1.7}.accordion-paragraph:last-child{margin-bottom:0}.accordion-title{color:#00b4b6;margin-bottom:2px;font-size:1.1rem;font-weight:700}.accordion-subtitle{color:#aaa;margin-bottom:2px;font-size:.98rem;font-weight:500}.accordion-date{color:#aaa;font-size:.85rem;font-style:italic;font-weight:400}.responsibilities-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:16px;display:grid}.responsibility-card{color:#fff;background:#00b4b614;border-left:3px solid #00b4b6;border-radius:6px;padding:12px 16px;font-size:.95rem;line-height:1.6;transition:all .3s}.responsibility-card:hover{background:#00b4b626;transform:translate(4px)}.responsibility-title{color:#00b4b6;align-items:center;margin-bottom:8px;font-size:1rem;font-weight:600;display:flex}.responsibility-example{color:#00b4b6e6;border-top:1px solid #00b4b633;margin-top:10px;padding-top:8px;font-size:.85rem;font-style:italic}.responsibility-description{color:#ffffffe6;font-size:.9rem;line-height:1.6}.projects-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#00b4b6 transparent;gap:16px;padding:4px 2px 16px;display:flex;overflow-x:auto}.projects-scroll::-webkit-scrollbar{height:6px}.projects-scroll::-webkit-scrollbar-track{background:0 0}.projects-scroll::-webkit-scrollbar-thumb{background:#00b4b666;border-radius:3px}.projects-scroll::-webkit-scrollbar-thumb:hover{background:#00b4b6}.project-card{scroll-snap-align:start;background:#00000080;border:1.5px solid #00b4b666;border-radius:18px;flex-direction:column;flex:0 0 300px;align-items:center;padding:24px 20px;transition:border-color .3s,background .3s,transform .3s;display:flex;box-shadow:0 4px 24px #00b4b61f}.project-card:hover{background:#00b4b614;border-color:#00b4b6;transform:translateY(-4px)}.project-card-logo{object-fit:contain;border-radius:10px;width:64px;height:64px;margin-bottom:14px}.project-card-name{color:#00b4b6;align-items:center;gap:6px;margin-bottom:10px;font-size:1.05rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.project-card-name:hover{color:#fff}.project-card-desc{color:#fff;text-align:center;flex:1;font-size:.9rem;line-height:1.65}.project-card-stack{color:#b2f7ef;text-align:center;margin-top:14px;font-size:.85rem;font-weight:600}@media (max-width:768px){.project-card{flex:0 0 260px;padding:18px 14px}}.section-title{color:#fff;text-align:center;justify-content:center;align-items:center;margin-top:32px;margin-bottom:32px;font-size:1.3rem;font-weight:600;display:flex}.skills-filter-wrapper{align-items:center;gap:8px;width:100%;margin-bottom:24px;display:flex}.skills-filter{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1;gap:8px;padding:4px 0;display:flex;overflow-x:auto}.skills-filter--centered{flex-wrap:wrap;justify-content:center;overflow-x:visible}.skills-tags{flex-wrap:wrap;justify-content:center;gap:8px;min-height:80px;display:flex}.skills-filter::-webkit-scrollbar{display:none}.skills-filter-arrow{color:#00b4b6;cursor:pointer;background:#00b4b61a;border:1.5px solid #00b4b64d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .3s;display:flex}.skills-filter-arrow:hover{background:#00b4b640;border-color:#00b4b6}.filter-btn{color:#ffffffb3;cursor:pointer;white-space:nowrap;scroll-snap-align:start;background:#0000004d;border:1.5px solid #00b4b64d;border-radius:20px;flex-shrink:0;align-items:center;gap:6px;padding:8px 16px;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;transition:all .3s;display:flex}.filter-btn svg{flex-shrink:0}.filter-btn:hover{color:#00b4b6;background:#00b4b61a;border-color:#00b4b6}.filter-btn.active{color:#000;background:#00b4b6;border-color:#00b4b6;font-weight:600}.skill-tag{color:#fff;background:#000;border-radius:12px;justify-content:center;align-items:center;height:28px;margin:4px;padding:6px 12px;font-size:.9rem;font-weight:600;transition:background .2s,color .2s,box-shadow .2s;display:inline-flex;box-shadow:0 0 0 2px #00b4b6}.skill-tag:hover{color:#00b4b6}.portfolio-page{color:#fff;background-color:#000;background-position:top;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;flex-direction:column;height:100dvh;max-height:100dvh;font-family:Inter,Poppins,sans-serif;display:flex;position:relative;overflow:hidden}.portfolio-scroll{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow:hidden auto}.portfolio-page--blocked{visibility:hidden;pointer-events:none}.lang-picker-overlay{z-index:3000}.lang-picker-modal{text-align:center;max-width:420px}.lang-picker-title{margin-bottom:.5rem}.lang-picker-subtitle{color:#ffffffa6;margin-bottom:1.5rem;font-size:.95rem}.lang-picker-options{flex-direction:column;gap:.75rem;display:flex}.lang-picker-option{color:#fff;cursor:pointer;background:#00b4b614;border:1.5px solid #00b4b659;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:.9rem 1.25rem;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;transition:background .2s,border-color .2s,transform .2s;display:flex}.lang-picker-option:hover{background:#00b4b62e;border-color:#00b4b6;transform:translateY(-1px)}.lang-picker-flag{font-size:1.5rem;line-height:1}.lang-picker-label{font-size:1rem}.portfolio-body{flex-direction:column;width:100%;display:flex}.portfolio-main{background:#000000b3;border-radius:24px;width:100%;max-width:1024px;margin:40px auto 0;padding:1rem 2rem;box-shadow:0 8px 32px #00000080}.site-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#000000d9;border-top:1.5px solid #00b4b64d;flex-shrink:0;width:100%;margin-top:32px;transition:opacity .35s;box-shadow:0 -4px 24px #0006}.site-footer--visible{opacity:1;pointer-events:auto}.site-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1024px;margin:0 auto;padding:1.25rem 2rem;display:flex}.site-footer-brand{cursor:pointer;color:#fff;background:0 0;border:none;align-items:center;gap:.6rem;padding:0;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;transition:color .2s;display:flex}.site-footer-brand:hover{color:#00b4b6}.site-footer-logo{object-fit:contain;border-radius:6px;width:28px;height:28px}.site-footer-link{color:#00b4b6;font-size:.9rem;font-weight:500;text-decoration:none;transition:opacity .2s}.site-footer-link:hover{opacity:.8}.site-footer-copy{color:#ffffff80;font-size:.85rem}@media (max-width:768px){.portfolio-page--mobile,.portfolio-page{background-position:50%!important;background-size:cover!important;background-attachment:scroll!important}.portfolio-main{border-radius:0;margin-top:40px;padding:1rem}.site-footer{margin-top:24px}.site-footer-inner{text-align:center;padding:1.25rem 1rem calc(5rem + env(safe-area-inset-bottom,0px));flex-direction:column;align-items:center;gap:.75rem}.site-footer-brand{justify-content:center}.site-footer-copy{font-size:.8rem;line-height:1.4}}.modal-honeypot{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-9999px}.modal-turnstile{justify-content:center;min-height:65px;display:flex}@media (max-width:768px){.portfolio-page{height:100dvh;max-height:100dvh;background-position:50%!important;background-size:cover!important;background-attachment:scroll!important}.profile-header-card{border-radius:0;padding:1.5rem .5rem}.profile-header-card img:not(.linkedin-logo){width:80px!important;height:80px!important;margin-bottom:12px!important}.profile-header-card h1{font-size:1.3rem!important}.profile-header-card h2{font-size:1rem!important}.projects-grid{gap:16px;padding:0 4px}.header-actions{flex-direction:column;gap:8px;padding:0 8px}.header-action-btn{justify-content:center;width:100%;padding:12px 20px}}.navbar{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000d9;border-bottom:1px solid #00b4b633;margin-bottom:0;padding:.75rem 0;transition:transform .3s ease-in-out;position:sticky;top:0;transform:translateY(0)}.navbar-hidden{transform:translateY(-100%)}.navbar-visible{transform:translateY(0)}.navbar-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;max-width:1024px;margin:0 auto;padding:0 1rem;display:flex}.nav-item{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;transition:all .3s;display:flex;position:relative}.nav-item svg{flex-shrink:0}.nav-item:hover{color:#00b4b6;background:#00b4b61a}.nav-item.active{color:#00b4b6;background:#00b4b626}.nav-item.active:after{content:"";background:#00b4b6;border-radius:2px;width:60%;height:2px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.lang-fab{z-index:1100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#000000d9;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 4px 20px #00000080,0 0 16px #00b4b640}.lang-fab:hover{transform:scale(1.08);box-shadow:0 6px 28px #0000008c,0 0 22px #00b4b666}.lang-fab:active{transform:scale(.96)}.lang-fab-flag{font-size:1.5rem;line-height:1}@media (max-width:768px){.lang-fab{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));width:48px;height:48px}.lang-fab-flag{font-size:1.35rem}.navbar-content{gap:.25rem}.nav-item{justify-content:center;min-width:44px;padding:.6rem;font-size:.8rem}}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:2000;background:#000000bf;justify-content:center;align-items:center;padding:16px;animation:.25s modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#0a0a0a;border:1.5px solid #00b4b6;border-radius:18px;width:100%;max-width:460px;padding:32px 28px;animation:.3s modalSlideIn;position:relative;box-shadow:0 8px 40px #00b4b633}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close{color:#ffffff80;cursor:pointer;background:0 0;border:none;padding:4px;transition:color .2s;position:absolute;top:14px;right:14px}.modal-close:hover{color:#00b4b6}.modal-title{color:#00b4b6;text-align:center;margin-bottom:20px;font-size:1.25rem;font-weight:700}.modal-form{flex-direction:column;gap:12px;display:flex}.modal-input{color:#fff;background:#ffffff0f;border:1.5px solid #00b4b64d;border-radius:10px;outline:none;padding:12px 14px;font-family:Inter,sans-serif;font-size:.95rem;transition:border-color .2s,background .2s}.modal-input::placeholder{color:#ffffff59}.modal-input:focus{background:#00b4b60f;border-color:#00b4b6}.modal-textarea{resize:vertical;min-height:100px}.modal-submit{color:#000;cursor:pointer;background:#00b4b6;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:12px 20px;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;transition:background .2s,transform .2s;display:flex}.modal-submit:hover{background:#00cdd0;transform:translateY(-1px)}.modal-status{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.modal-status-icon{margin-bottom:4px}.modal-status-icon--success{color:#00b4b6}.modal-status-icon--error{color:#e05555}.modal-status-text{color:#ffffffb3;margin-bottom:8px;font-size:.95rem;line-height:1.6}.modal-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-input:disabled{opacity:.5;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:1s linear infinite spin}
