.top-arrow[data-v-02c67a3b]{position:fixed;bottom:30px;right:30px;width:50px;height:50px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #667eea66;transition:all .3s ease;z-index:1000}.top-arrow[data-v-02c67a3b]:hover{transform:translateY(-3px);box-shadow:0 6px 20px #667eea99}.top-arrow[data-v-02c67a3b]:active{transform:translateY(-1px)}.fade-enter-active[data-v-02c67a3b],.fade-leave-active[data-v-02c67a3b]{transition:opacity .3s ease,transform .3s ease}.fade-enter-from[data-v-02c67a3b],.fade-leave-to[data-v-02c67a3b]{opacity:0;transform:translateY(20px)}@media (max-width: 768px){.top-arrow[data-v-02c67a3b]{bottom:20px;right:20px;width:45px;height:45px}}#app[data-v-336d6bb2]{min-height:100vh;display:flex;flex-direction:column;background:#181a1b}.hero-buttons[data-v-336d6bb2]{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.hero-section[data-v-336d6bb2]{position:relative;width:100vw;min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow:hidden}.hero-bg[data-v-336d6bb2]{position:absolute;top:0;left:0;width:100vw;height:100%;object-fit:cover;z-index:1}.hero-overlay[data-v-336d6bb2]{position:absolute;top:0;left:0;width:100vw;height:100%;background:rgba(24,26,27,.7);z-index:2}.hero-header[data-v-336d6bb2]{position:absolute;top:0;left:0;width:100vw;display:flex;justify-content:space-between;align-items:center;padding:2rem 3vw 0 3vw;z-index:1001}.hero-logo img[data-v-336d6bb2]{height:60px;width:auto;display:block;border-radius:50%}.menu-btn[data-v-336d6bb2]{background:none;border:none;display:flex;flex-direction:column;gap:6px;cursor:pointer;z-index:1001}.menu-btn span[data-v-336d6bb2]{display:block;width:32px;height:4px;background:#fff;border-radius:2px;transition:all .3s}.menu-btn span.open[data-v-336d6bb2]:nth-child(1){transform:translateY(10px) rotate(45deg)}.menu-btn span.open[data-v-336d6bb2]:nth-child(2){opacity:0}.menu-btn span.open[data-v-336d6bb2]:nth-child(3){transform:translateY(-10px) rotate(-45deg)}.hero-content[data-v-336d6bb2]{position:relative;z-index:4;margin-top:10vh;text-align:center;color:#fff}.hero-title[data-v-336d6bb2]{font-size:3rem;font-weight:700;margin-bottom:1rem}.hero-subtitle[data-v-336d6bb2]{font-size:1.5rem;opacity:.9}.fullscreen-menu[data-v-336d6bb2]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(24,26,27,.98);z-index:1000;display:flex;align-items:center;justify-content:center;flex-direction:column;animation:fadeIn .3s}.fullscreen-menu ul[data-v-336d6bb2]{list-style:none;padding:0;margin:0;text-align:center}.fullscreen-menu li[data-v-336d6bb2]{margin:2rem 0}.fullscreen-menu a[data-v-336d6bb2]{color:#fff;font-size:2.5rem;text-decoration:none;font-weight:600;transition:color .2s}.fullscreen-menu a[data-v-336d6bb2]:hover{color:#e44c65}.menu-section-btn[data-v-336d6bb2]{background:none;border:none;color:#fff;font-size:2.5rem;text-decoration:none;font-weight:600;transition:color .2s;cursor:pointer;font-family:inherit}.menu-section-btn[data-v-336d6bb2]:hover{color:#e44c65}.fade-enter-active[data-v-336d6bb2],.fade-leave-active[data-v-336d6bb2]{transition:opacity .3s}.fade-enter-from[data-v-336d6bb2],.fade-leave-to[data-v-336d6bb2]{opacity:0}.main-content[data-v-336d6bb2]{flex:1;width:100vw;display:flex;flex-direction:column;align-items:center;background:#fff}.main-content[data-v-336d6bb2]>*{width:100%;max-width:1440px;margin:0 auto}.footer[data-v-336d6bb2]{background:#181a1b;color:#fff;padding:3rem 0 1rem;width:100vw}.footer-content[data-v-336d6bb2]{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:2rem}.footer-content img[data-v-336d6bb2]{height:120px;width:auto;display:block;border-radius:50%}.footer-section h3[data-v-336d6bb2]{color:#667eea;margin-bottom:1rem;font-size:1.2rem}.footer-section p[data-v-336d6bb2]{margin-bottom:.5rem;opacity:.9}.footer-section ul[data-v-336d6bb2]{list-style:none;padding:0}.footer-section ul li[data-v-336d6bb2]{margin-bottom:.5rem}.footer-section ul li a[data-v-336d6bb2]{color:#fff;text-decoration:none;opacity:.9;transition:opacity .2s}.footer-section ul li a[data-v-336d6bb2]:hover{opacity:1}.footer-bottom[data-v-336d6bb2]{border-top:1px solid #333;padding-top:1rem;text-align:center;position:relative}.footer-bottom p[data-v-336d6bb2]{opacity:.8;font-size:.9rem}.admin-access[data-v-336d6bb2]{position:absolute;bottom:10px;right:20px;cursor:pointer;opacity:.1;transition:opacity .3s ease}.admin-access[data-v-336d6bb2]:hover{opacity:.3}.admin-dot[data-v-336d6bb2]{display:block;width:8px;height:8px;background:#667eea;border-radius:50%;margin:0 auto}.btn[data-v-336d6bb2]{padding:.75rem 2rem;border:none;border-radius:5px;font-size:1rem;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;font-weight:500}.btn-primary[data-v-336d6bb2]{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.btn-secondary[data-v-336d6bb2]{background:transparent;color:#fff;border:2px solid white}.btn-primary[data-v-336d6bb2]:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0003}.btn-secondary[data-v-336d6bb2]:hover{background:white;color:#667eea;transform:translateY(-2px)}@media (max-width: 900px){.hero-title[data-v-336d6bb2]{font-size:2.2rem}.hero-subtitle[data-v-336d6bb2]{font-size:1.1rem}.hero-logo img[data-v-336d6bb2]{height:40px}.fullscreen-menu a[data-v-336d6bb2]{font-size:2rem}}@media (max-width: 600px){.hero-header[data-v-336d6bb2]{padding:1rem 2vw 0 2vw}.hero-content[data-v-336d6bb2]{margin-top:5vh}.main-content[data-v-336d6bb2]>*{padding:0 1rem}.hero-buttons[data-v-336d6bb2]{flex-direction:column;align-items:center;gap:1rem}}.skill-card[data-v-5ec5f40d]{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;padding:1rem;background:white;border-radius:10px;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease;width:120px;height:120px;justify-content:center;flex-shrink:0}.skill-card[data-v-5ec5f40d]:hover{transform:translateY(-5px)}.skill-card img[data-v-5ec5f40d]{width:50px;height:50px;margin-bottom:.5rem;object-fit:contain;flex-shrink:0}.skill-card span[data-v-5ec5f40d]{font-size:.9rem;font-weight:500;color:#333;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;line-height:1.2;max-width:100%}.project-card[data-v-56f4b708]{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000014;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.project-card[data-v-56f4b708]:hover{transform:translateY(-8px);box-shadow:0 8px 32px #00000026}.project-image[data-v-56f4b708]{position:relative;height:200px;overflow:hidden}.project-image img[data-v-56f4b708]{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-card:hover .project-image img[data-v-56f4b708]{transform:scale(1.05)}.project-overlay[data-v-56f4b708]{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.project-card:hover .project-overlay[data-v-56f4b708]{opacity:1}.project-stack[data-v-56f4b708]{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.project-stack img[data-v-56f4b708]{width:30px;height:30px;background:white;border-radius:4px;padding:2px}.project-info[data-v-56f4b708]{padding:1.5rem}.project-info h2[data-v-56f4b708]{font-size:1.4rem;margin-bottom:.8rem;color:#181a1b;font-weight:600}.project-info p[data-v-56f4b708],.project-description[data-v-56f4b708]{color:#666;font-size:.95rem;line-height:1.6;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-benefit[data-v-56f4b708]{background:#f8f9fa;padding:.8rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem;line-height:1.5;color:#333;border-left:3px solid #667eea}.project-benefit strong[data-v-56f4b708]{color:#667eea;font-weight:600}.project-links[data-v-56f4b708]{display:flex;justify-content:space-between;align-items:center}.project-link[data-v-56f4b708]{display:inline-block;padding:.6rem 1.2rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-radius:6px;text-decoration:none;font-weight:500;font-size:.9rem;transition:all .2s ease}.project-link[data-v-56f4b708]:hover{background:linear-gradient(135deg,#e44c65 0%,#764ba2 100%);transform:translateY(-2px)}.project-status[data-v-56f4b708]{font-size:.9rem;color:#e44c65;font-weight:500;font-style:italic}.home{width:100vw;display:flex;flex-direction:column;align-items:center;background:#fff}.container{max-width:1440px;width:100%;margin:0 auto;padding:2rem 2vw}.hero-section{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:8rem 0 6rem;text-align:center}.hero-content h1{font-size:3.5rem;font-weight:700;margin-bottom:1rem}.hero-content h2{font-size:2rem;margin-bottom:1.5rem;opacity:.9}.hero-content p{font-size:1.3rem;margin-bottom:3rem;opacity:.8;max-width:600px;margin-left:auto;margin-right:auto}.btn{padding:.75rem 2rem;border:none;border-radius:5px;font-size:1rem;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;font-weight:500}.btn-primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.btn-secondary{background:transparent;color:#fff;border:2px solid white}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0003}.btn-secondary:hover{background:white;color:#667eea;transform:translateY(-2px)}.btn:disabled{opacity:.7;cursor:not-allowed}.about-section{padding:5rem 0;background:#fff}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-text h2{font-size:2.5rem;margin-bottom:1rem;color:#333}.about-text h3{font-size:2rem;margin-bottom:.5rem;color:#667eea}.about-text h4{font-size:1.2rem;margin-bottom:2rem;color:#666}.about-text p{font-size:1.1rem;line-height:1.8;color:#666;margin-bottom:1.5rem}.about-links{display:flex;gap:1rem;margin-top:2rem}.cv-link{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;text-decoration:none;border-radius:5px;font-weight:500;transition:transform .2s}.cv-link:hover{transform:translateY(-2px)}.about-image img{width:100%;max-width:400px;border-radius:10px;box-shadow:0 10px 30px #0000001a}#panda-with-computer{box-shadow:none!important}.competences-section{padding:5rem 0;background:#fff}.section-title{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#333}.section-subtitle{text-align:center;font-size:1.5rem;margin-bottom:2rem;color:#666}.competence-category{margin-bottom:4rem;opacity:0;transform:translateY(30px);transition:all .6s ease}.competence-category.animate-in{opacity:1;transform:translateY(0)}.competence-category h3{font-size:1.8rem;margin-bottom:2rem;color:#333;text-align:center}.competence-category .competence-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:flex-start!important;gap:1.5rem!important;max-width:900px;margin:0 auto}.projects-section{padding:5rem 0;background:#fff}.loading,.error{text-align:center;padding:2rem;font-size:1.1rem;color:#666}.error{color:#e44c65}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1200px;margin:0 auto;justify-items:center}.services-section{padding:5rem 0;background:#fff}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:800px;margin:0 auto}.service-card{background:white;padding:2rem;border-radius:10px;text-align:center;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease}.service-card:hover{transform:translateY(-5px)}.service-icon{font-size:3rem;margin-bottom:1rem}.responsive-icon{width:50px;height:50px}.service-card h3{font-size:1.5rem;margin-bottom:1rem;color:#333}.service-card p{color:#666;line-height:1.6}.contact-section{padding:5rem 0;background:#fff}.contact-intro{text-align:center;font-size:1.2rem;margin-bottom:3rem;color:#666;max-width:600px;margin-left:auto;margin-right:auto}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.contact-info h3{font-size:2rem;margin-bottom:2rem;color:#333}.contact-item{display:flex;align-items:center;margin-bottom:1.5rem;font-size:1.1rem;color:#666}.contact-icon{font-size:1.5rem;margin-right:1rem;width:30px}.contact-form h3{font-size:1.8rem;margin-bottom:2rem;color:#333}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:2px solid #e1e5e9;border-radius:5px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.form-group input:disabled,.form-group textarea:disabled{background-color:#f8f9fa;cursor:not-allowed}.message{margin-top:1rem;padding:1rem;border-radius:5px;font-weight:500}.message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.recaptcha-container{display:flex;justify-content:center;margin:1rem 0}.recaptcha-container .g-recaptcha{transform:scale(1);transform-origin:0 0}@media (max-width: 400px){.recaptcha-container .g-recaptcha{transform:scale(.9)}}@media (max-width: 1200px){.projects-grid{grid-template-columns:repeat(2,1fr);max-width:800px}}@media (max-width: 900px){.hero-content h1{font-size:2.8rem}.hero-content h2{font-size:1.6rem}.hero-content p{font-size:1.1rem}.about-content,.contact-content{grid-template-columns:1fr;gap:2rem}.form-row{grid-template-columns:1fr}.competence-grid{gap:1rem!important}.projects-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.services-grid{grid-template-columns:1fr;max-width:100%}}@media (max-width: 770px){.competence-grid{gap:.75rem!important}}@media (max-width: 768px){.projects-grid{grid-template-columns:1fr;max-width:500px}}@media (max-width: 600px){.hero-section{padding:6rem 0 4rem}.hero-content h1{font-size:2.2rem}.hero-content h2{font-size:1.3rem}.hero-content p{font-size:1rem}.container{padding:1rem .5rem}.section-title,.about-text h2{font-size:2rem}.about-text h3{font-size:1.5rem}.competence-grid{gap:.75rem!important}}@media (max-width: 480px){.competence-grid{gap:.5rem!important}}
