html{scroll-behavior:smooth}body{margin:0;font-family:Montserrat,sans-serif;background-color:#fff;color:#000;line-height:1.6}h1{font-family:Onest,sans-serif;font-variation-settings:"wght" 900}h1,h2{font-size:2.25rem}h2{text-align:center;margin-bottom:10px;font-family:Onest,sans-serif;font-weight:700}#app{display:flex;flex-direction:column;min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 20px}.highlight{color:#42b983;font-weight:600}.dark-mode{background-color:#050d1a;color:#f0f0f0}.about-me[data-v-271706f0]{padding:40px 20px;text-align:left;max-width:1200px;margin:0 auto}.about-content[data-v-271706f0]{display:flex;flex-direction:column;align-items:center;gap:20px}.profile-photo[data-v-271706f0]{width:150px;height:150px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.cv-button[data-v-271706f0]{padding:10px 20px;background-color:#42b983;color:#fff;text-decoration:none;border-radius:5px;font-size:1rem;transition:background-color .3s}.cv-button[data-v-271706f0]:hover{background-color:#369f6e}p[data-v-271706f0]{font-size:1.2rem;line-height:1.6;color:#555}ul[data-v-271706f0]{text-align:left;list-style-type:disc;margin-left:20px;margin-bottom:15px}li[data-v-271706f0]{font-size:1rem;color:#555;margin-bottom:5px}@media (max-width:768px){h2[data-v-271706f0]{font-size:2rem}p[data-v-271706f0]{font-size:1rem}}.dark-mode .about-me h2[data-v-271706f0],.dark-mode .about-me[data-v-271706f0]{color:#f0f0f0}.dark-mode .about-me li[data-v-271706f0],.dark-mode .about-me p[data-v-271706f0]{color:#d0d0d0}.dark-mode .cv-button[data-v-271706f0]{background-color:#369f6e}.dark-mode .cv-button[data-v-271706f0]:hover{background-color:#2a7f56}.footer[data-v-a32f7762]{padding:20px;text-align:center;background-color:#333;color:#fff}.social-links[data-v-a32f7762]{margin-bottom:10px}.social-links a[data-v-a32f7762]{color:#fff;text-decoration:none;margin:0 10px;font-size:2rem;transition:color .3s}.social-links a[data-v-a32f7762]:hover{color:#42b983}p[data-v-a32f7762]{font-size:.9rem;margin:0}.dark-mode .footer[data-v-a32f7762]{background-color:#2a2a40;color:#f0f0f0}.dark-mode .social-links a[data-v-a32f7762]{color:#f0f0f0}.dark-mode .social-links a[data-v-a32f7762]:hover{color:#42b983}.dark-mode .hero[data-v-74075cb9]{background:linear-gradient(120deg,#4e4b67,#1f1f35,#06634f);background-size:400% 400%;animation:gradientBG-74075cb9 9s ease infinite}.hero[data-v-74075cb9]{background:linear-gradient(120deg,#42b983,#5c5c8f,#e4e4e4);background-size:400% 400%;animation:gradientBG-74075cb9 6s ease infinite;display:flex;justify-content:center;align-items:center;height:100vh;text-align:center;padding:20px}@keyframes gradientBG-74075cb9{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.hero-content[data-v-74075cb9]{max-width:800px}h1[data-v-74075cb9]{font-size:4rem;color:#fff;font-weight:700;margin-bottom:10px}h2[data-v-74075cb9]{font-size:2rem;margin-bottom:20px;color:#fff;overflow:hidden;white-space:nowrap;width:-moz-fit-content;width:fit-content;position:relative;margin:0 auto;text-align:center}h2[data-v-74075cb9]:after{content:"|";display:inline-block;width:8px;animation:blink-74075cb9 .7s infinite}@keyframes blink-74075cb9{50%{opacity:0}}p[data-v-74075cb9]{font-size:1.2rem;color:#fff;margin-bottom:30px}.cta-button[data-v-74075cb9]{padding:10px 20px;background-color:#42b983;color:#fff;text-decoration:none;border-radius:24px;font-size:1rem;transition:transform .3s ease;will-change:transform}.cta-button[data-v-74075cb9]:hover{transform:scale(1.1)}@media (max-width:768px){h1[data-v-74075cb9]{font-size:3rem}h2[data-v-74075cb9]{font-size:1.5rem}p[data-v-74075cb9]{font-size:1rem}}.skill-icon[data-v-3aad7c36]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-3aad7c36]{fill:#fff}.skill-icon[data-v-2d00d810]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-2d00d810]{fill:#fff}.skill-icon[data-v-c50ed42c]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-c50ed42c]{fill:#fff}.skill-icon[data-v-fb8a3054]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-fb8a3054]{fill:#fff}.skill-icon[data-v-4634e832]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-4634e832]{fill:#fff}.skill-icon[data-v-4fd27282]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-4fd27282]{fill:#fff}.skill-icon[data-v-4a34ed2e]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-4a34ed2e]{fill:#fff}.skill-icon[data-v-3c36feba]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-3c36feba]{fill:#fff}.skill-icon[data-v-31c630fc]{width:24px;height:24px;fill:#000}.dark-mode-icon[data-v-31c630fc]{fill:#fff}.skills[data-v-0f466164]{padding:40px 20px;text-align:center;max-width:1200px;margin:0 auto}h2[data-v-0f466164]{margin-bottom:40px;color:#333}.skills-grid[data-v-0f466164]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}.skill-category[data-v-0f466164]{background-color:#f9f9f9;border-radius:10px;padding:0 20px 20px;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:transform .3s;justify-content:space-between}.skill-category[data-v-0f466164]:hover{transform:translateY(-10px)}h3[data-v-0f466164]{font-size:1.5rem;margin-bottom:15px;color:#42b983}.skill-list[data-v-0f466164]{display:flex;flex-direction:column;gap:10px}.skill[data-v-0f466164]{display:flex;align-items:center;gap:10px}.skill-icon[data-v-0f466164]{width:24px;height:24px}.skill span[data-v-0f466164]{font-size:1rem;color:#555}@media (max-width:768px){.skills-grid[data-v-0f466164]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.dark-mode .skills h2[data-v-0f466164],.dark-mode .skills[data-v-0f466164]{color:#f0f0f0}.dark-mode .skill-category[data-v-0f466164]{background-color:#3a3a50}.dark-mode .skill-category[data-v-0f466164]:hover{transform:translateY(-10px)}.dark-mode .skill span[data-v-0f466164]{color:#d0d0d0}.contact[data-v-5275d4f6]{padding:40px 20px;text-align:center;max-width:800px;margin:0 auto}h2[data-v-5275d4f6]{margin-bottom:20px}p[data-v-5275d4f6]{font-size:1.1rem;color:#555;margin-bottom:30px}.contact-links[data-v-5275d4f6]{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.contact-link[data-v-5275d4f6]{display:flex;align-items:center;text-decoration:none;color:#42b983;font-size:1.2rem;transition:color .3s}.contact-link[data-v-5275d4f6]:hover{color:#369f6e}.contact-icon[data-v-5275d4f6]{font-size:1.5rem;margin-right:10px}@media (max-width:768px){h2[data-v-5275d4f6]{font-size:2rem}.contact-link[data-v-5275d4f6],p[data-v-5275d4f6]{font-size:1rem}}.dark-mode .contact h2[data-v-5275d4f6],.dark-mode .contact[data-v-5275d4f6]{color:#f0f0f0}.dark-mode .contact p[data-v-5275d4f6]{color:#d0d0d0}.dark-mode .contact-link[data-v-5275d4f6]{color:#42b983}.dark-mode .contact-link[data-v-5275d4f6]:hover{color:#369f6e}.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}.navbar[data-v-6971a447]{position:fixed;top:20px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;align-items:center;padding:10px 20px;box-shadow:none;border:none;z-index:1000;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s ease}.navbar.scrolled[data-v-6971a447]{box-shadow:0 4px 6px rgba(0,0,0,.1);border:1px solid rgba(0,0,0,.2);background-color:hsla(0,0%,100%,.7);border-radius:30px}.nav-links[data-v-6971a447]{display:flex;gap:20px}.navbar:not(.scrolled) .nav-icon[data-v-6971a447],.navbar:not(.scrolled) .nav-link[data-v-6971a447]{color:#fff}.nav-link[data-v-6971a447]{text-decoration:none;color:#333;font-size:.9rem;transition:color .3s;display:flex;align-items:center;gap:5px}.nav-link[data-v-6971a447]:hover{color:#42b983}.nav-link span[data-v-6971a447]{white-space:nowrap}.nav-actions[data-v-6971a447]{display:flex;gap:5px;margin-left:15px}.nav-button[data-v-6971a447]{background:none;border:none;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center;transition:transform .3s}.nav-button[data-v-6971a447]:hover{transform:scale(1.1)}.nav-icon[data-v-6971a447]{font-size:1rem;color:#333}.dark-mode .navbar.scrolled[data-v-6971a447]{background-color:rgba(42,42,64,.9)}.dark-mode .nav-link[data-v-6971a447]{color:#f0f0f0}.dark-mode .nav-link[data-v-6971a447]:hover{color:#42b983}.dark-mode .nav-icon[data-v-6971a447]{color:#f0f0f0}.dark-mode .nav-button:hover .nav-icon[data-v-6971a447]{color:#42b983}@media (max-width:870px){.nav-link span[data-v-6971a447]{font-size:.8rem}}@media (max-width:820px){.nav-link span[data-v-6971a447]{font-size:.75rem}}@media (max-width:768px){.nav-link span[data-v-6971a447]{display:none}.nav-link[data-v-6971a447]{font-size:1.2rem}}.projects[data-v-b6fefb7a]{padding:60px 20px;max-width:1200px;margin:auto;text-align:center}.projects h2[data-v-b6fefb7a]{margin-bottom:40px;color:#333}.projects-grid[data-v-b6fefb7a]{display:flex;flex-wrap:wrap;justify-content:center;gap:40px}.project-card[data-v-b6fefb7a]{padding:20px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 20px rgba(0,0,0,.05);transition:transform .3s ease;display:flex;flex-direction:column;flex:1 1 320px;max-width:320px}.project-card[data-v-b6fefb7a]:hover{transform:translateY(-10px)}.image-wrapper[data-v-b6fefb7a]{position:relative;aspect-ratio:16/9;overflow:hidden;display:flex;justify-content:center;align-items:center;background-color:#f8f8f8;border-radius:12px}.logo-container[data-v-b6fefb7a]{padding:20px}.image-wrapper img[data-v-b6fefb7a]{width:100%;height:100%;border-radius:12px;-o-object-position:center;object-position:center}.logo-image[data-v-b6fefb7a]{-o-object-fit:contain;object-fit:contain;max-height:80%;max-width:80%;width:auto;height:auto}.badge[data-v-b6fefb7a]{position:absolute;top:12px;left:12px;padding:4px 12px;border-radius:20px;font-size:.75rem;color:#fff;font-weight:700;text-transform:uppercase}.badge.inProgress[data-v-b6fefb7a]{background-color:#f0ad4e}.badge.done[data-v-b6fefb7a]{background-color:#5cb85c}.card-content[data-v-b6fefb7a]{text-align:left;flex-grow:1;padding:20px 0 0 0;display:flex;flex-direction:column;justify-content:space-between}.card-content h3[data-v-b6fefb7a]{margin:0 0 10px;font-size:1.4rem;color:#222}.card-content p[data-v-b6fefb7a]{flex-grow:1;color:#555;font-size:.95rem;margin-bottom:15px}.tech-list[data-v-b6fefb7a]{display:flex;flex-wrap:wrap;gap:8px}.tech-badge[data-v-b6fefb7a]{display:flex;align-items:center;gap:6px;background:#eee;border-radius:12px;padding:5px 10px;font-size:.8rem;color:#333}.tech-icon[data-v-b6fefb7a]{width:20px;height:20px}.buttons[data-v-b6fefb7a]{display:flex;gap:15px;justify-content:center;margin-top:20px}.btn[data-v-b6fefb7a]{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;background-color:#42b983;color:#fff;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,.1);transition:transform .3s ease,box-shadow .3s ease;font-size:24px;cursor:pointer}.btn[data-v-b6fefb7a]:hover{transform:translateY(-4px);box-shadow:0 8px 12px rgba(0,0,0,.15)}.demo-btn[data-v-b6fefb7a]{background-color:#4d4d4d}.demo-btn[data-v-b6fefb7a]:hover{background-color:#3c3c3c}.repo-btn[data-v-b6fefb7a]{background-color:#333}.repo-btn[data-v-b6fefb7a]:hover{background-color:#252525}.btn-icon[data-v-b6fefb7a]{font-size:24px;transition:transform .3s ease}.btn:hover .btn-icon[data-v-b6fefb7a]{transform:scale(1.1)}@media (max-width:768px){.buttons[data-v-b6fefb7a]{flex-direction:column;gap:15px}}.dark-mode .projects h2[data-v-b6fefb7a],.dark-mode .projects[data-v-b6fefb7a]{color:#f0f0f0}.dark-mode .project-card[data-v-b6fefb7a]{background-color:#2c2c3e}.dark-mode .image-wrapper[data-v-b6fefb7a]{background-color:#3c3c4e}.dark-mode .card-content h3[data-v-b6fefb7a],.dark-mode .card-content p[data-v-b6fefb7a],.dark-mode .tech-badge[data-v-b6fefb7a]{color:#f0f0f0}.dark-mode .tech-badge[data-v-b6fefb7a]{background-color:#444}.timeline-section[data-v-5ba19eba]{padding:60px 20px;max-width:1200px;margin:auto;text-align:center}.timeline-title[data-v-5ba19eba]{margin-bottom:40px;color:#333}.timeline[data-v-5ba19eba]{position:relative;margin:0 auto;padding:20px 0;width:100%}.timeline[data-v-5ba19eba]:before{content:"";position:absolute;left:24px;top:0;width:3px;height:100%;background:#42b983;border-radius:2px;z-index:0}.timeline-item[data-v-5ba19eba]{display:flex;align-items:flex-start;margin-bottom:40px;position:relative}.timeline-dot[data-v-5ba19eba]{width:12px;height:12px;background:#fff;border:4px solid #42b983;border-radius:50%;position:relative;left:16px;z-index:2;box-shadow:0 2px 8px rgba(66,185,131,.15);transition:background .3s}.timeline-content[data-v-5ba19eba]{background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.07);padding:18px 24px;margin-left:48px;text-align:left;min-width:0;flex:1}.job-title[data-v-5ba19eba]{margin:0 0 6px 0;font-size:1.15rem;color:#222}.company[data-v-5ba19eba]{font-weight:600;color:#42b983;display:block;margin-bottom:2px}.period[data-v-5ba19eba]{font-size:.95rem;color:#888;display:block;margin-bottom:10px}.description[data-v-5ba19eba]{color:#555;font-size:.97rem}@media (max-width:600px){.timeline[data-v-5ba19eba]:before{left:10px}.timeline-dot[data-v-5ba19eba]{left:-2px}.timeline-content[data-v-5ba19eba]{margin-left:32px;padding:14px 12px}}.dark-mode .timeline-section[data-v-5ba19eba],.dark-mode .timeline-title[data-v-5ba19eba]{color:#f0f0f0}.dark-mode .timeline-content[data-v-5ba19eba]{background:#23233a;color:#f0f0f0;box-shadow:0 4px 12px rgba(0,0,0,.25)}.dark-mode .timeline[data-v-5ba19eba]:before{background:#42b983}.dark-mode .timeline-dot[data-v-5ba19eba]{background:#23233a;border-color:#42b983}.dark-mode .job-title[data-v-5ba19eba]{color:#fff}.dark-mode .company[data-v-5ba19eba]{color:#42b983}.dark-mode .period[data-v-5ba19eba]{color:#bbb}.dark-mode .description[data-v-5ba19eba]{color:#e0e0e0}.home[data-v-244c9f9c]{text-align:center}