*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.6;color:#111827;background-color:#f0f2f5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-weight:700;line-height:1.2;margin-bottom:1rem;color:#111827}h1{font-size:3rem}@media(max-width: 768px){h1{font-size:2.25rem}}h2{font-size:2.25rem}@media(max-width: 768px){h2{font-size:1.875rem}}h3{font-size:1.875rem}@media(max-width: 768px){h3{font-size:1.5rem}}h4{font-size:1.5rem}@media(max-width: 768px){h4{font-size:1.25rem}}h5{font-size:1.25rem}h6{font-size:1.125rem}p{margin-bottom:1rem;color:#4b5563;line-height:1.7}a{color:#2563eb;text-decoration:none;transition:color .2s ease-in-out}a:hover{color:#3b82f6}ul,ol{margin-bottom:1rem;padding-left:1.5rem}li{margin-bottom:.25rem;color:#4b5563}img{max-width:100%;height:auto}.btn{display:inline-block;padding:.5rem 1.5rem;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:500;text-align:center;text-decoration:none;border:2px solid;border-radius:4px;cursor:pointer;transition:all .3s ease-in-out}.btn--primary{background-color:#2563eb;border-color:#2563eb;color:#fff}.btn--primary:hover{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.btn--outline{background-color:rgba(0,0,0,0);border-color:#2563eb;color:#2563eb}.btn--outline:hover{background-color:#2563eb;color:#fff}.container{max-width:1200px;margin:0 auto;padding:0 1rem}@media(min-width: 640px){.container{padding:0 1.5rem}}.text-center{text-align:center}.text-accent{color:#2563eb}.fade-in{opacity:0;transform:translateY(20px);transition:all .5s ease-in-out}.fade-in.visible{opacity:1;transform:translateY(0)}.header{position:fixed;top:0;left:0;right:0;background-color:#fff;box-shadow:0 1px 0 #e5e7eb;border-bottom:1px solid #d1d5db;z-index:1000;transition:all .3s ease-in-out}.header__nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.header__logo{font-size:1.25rem;font-weight:700;color:#111827;text-decoration:none}.header__logo:hover{color:#2563eb}.header__menu{display:flex;list-style:none;padding:0;margin:0}@media(max-width: 768px){.header__menu{display:none}}.header__menu-item{margin-left:1.5rem}.header__menu-item a{color:#374151;font-weight:500;transition:color .2s ease-in-out}.header__menu-item a:hover{color:#2563eb}.main-content{margin-top:80px}.section{padding:8rem 0}.section:nth-child(even){background-color:#fff}@media(max-width: 768px){.section{padding:6rem 0}}.section__title{text-align:center;margin-bottom:4rem;position:relative}.section__title::after{content:"";position:absolute;bottom:-1rem;left:50%;transform:translateX(-50%);width:60px;height:3px;background:linear-gradient(45deg, #2563eb, #3b82f6)}.hero{min-height:100vh;display:flex;align-items:center;text-align:center;background:linear-gradient(135deg, #f0f2f5 0%, #ffffff 100%)}.hero__content{width:100%}.hero__title{font-size:3rem;margin-bottom:1rem;color:#111827}@media(max-width: 1024px){.hero__title{font-size:2.25rem}}@media(max-width: 768px){.hero__title{font-size:1.875rem}}.hero__subtitle{font-size:1.5rem;color:#2563eb;font-weight:500;margin-bottom:1rem}@media(max-width: 768px){.hero__subtitle{font-size:1.25rem}}.hero__description{font-size:1.125rem;color:#4b5563;max-width:600px;margin:0 auto 3rem;line-height:1.6}.hero__cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero__avatar{width:200px;height:200px;border-radius:50%;margin:0 auto 3rem;background:linear-gradient(45deg, #2563eb, #3b82f6);padding:4px}.hero__avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}@media(max-width: 768px){.hero__avatar{width:150px;height:150px}}.footer{background-color:#e4e7ec;padding:3rem 0;text-align:center}.footer__social{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1rem}.footer__social a{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;background-color:#fff;border-radius:50%;color:#4b5563;transition:all .3s ease-in-out}.footer__social a:hover{background-color:#2563eb;color:#fff;transform:translateY(-2px)}.footer__copyright{color:#9ca3af;font-size:.875rem}.card{background-color:#fff;border-radius:8px;padding:2rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 1px 2px 0 rgba(0,0,0,.08);transition:all .3s ease-in-out;border:1px solid #d1d5db}.card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px rgba(0,0,0,.15),0 10px 10px -5px rgba(0,0,0,.08);border-color:#2563eb}.card__title{color:#111827;margin-bottom:1rem}.card__content{color:#4b5563}.grid{display:grid;gap:2rem}.grid--2-cols{grid-template-columns:repeat(auto-fit, minmax(300px, 1fr))}.grid--3-cols{grid-template-columns:repeat(3, 1fr)}@media(max-width: 1024px){.grid--3-cols{grid-template-columns:repeat(2, 1fr)}}.grid--4-cols{grid-template-columns:repeat(auto-fit, minmax(200px, 1fr))}@media(max-width: 768px){.grid{grid-template-columns:1fr;gap:1.5rem}}.timeline{position:relative;padding-left:3rem}.timeline::before{content:"";position:absolute;left:1rem;top:0;bottom:0;width:2px;background:linear-gradient(to bottom, #2563eb, #3b82f6)}.timeline__item{position:relative;margin-bottom:3rem}.timeline__item::before{content:"";position:absolute;left:calc(-2rem - 6px);top:4px;width:12px;height:12px;border-radius:50%;background-color:#2563eb;box-shadow:0 0 0 4px #f0f2f5,0 0 0 6px #2563eb}.timeline__date{color:#3b82f6;font-size:.875rem;font-weight:600;margin-bottom:.25rem}.timeline__title{color:#111827;font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.timeline__company{color:#2563eb;font-weight:500;margin-bottom:.5rem}.timeline__description{color:#4b5563;line-height:1.6}.skills{display:flex;flex-wrap:wrap;gap:.5rem}.skills__item{background-color:#fff;color:#111827;padding:.25rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500;border:1px solid #d1d5db;transition:all .2s ease-in-out}.skills__item:hover{background-color:#2563eb;color:#fff;transform:translateY(-2px)}.contact-intro{text-align:center;max-width:600px;margin:0 auto 3rem auto}.contact-intro h3{color:#111827;font-size:1.25rem;font-weight:700;margin-bottom:1rem}.contact-intro p{color:#4b5563;font-size:1.125rem;line-height:1.6;margin-bottom:1rem}.contact-response-time{color:#9ca3af !important;font-size:1rem !important;font-style:italic}.contact-linkedin{margin-bottom:1.5rem}.contact-linkedin__card{background:linear-gradient(135deg, #0077B5 0%, #005885 100%);border-radius:16px;padding:2rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 20px 25px -5px rgba(0,0,0,.15),0 10px 10px -5px rgba(0,0,0,.08);transition:all .3s ease-in-out;width:100%;position:relative;overflow:hidden}.contact-linkedin__card::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, transparent 50%);pointer-events:none}.contact-linkedin__card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,119,181,.3)}@media(max-width: 768px){.contact-linkedin__card{flex-direction:column;text-align:center}}.contact-linkedin__icon{background-color:hsla(0,0%,100%,.15);border-radius:12px;padding:1rem;color:#fff;flex-shrink:0}.contact-linkedin__icon svg{display:block}.contact-linkedin__content{color:#fff;flex:1}.contact-linkedin__title{font-size:1.125rem;font-weight:700;margin-bottom:.25rem;color:#fff}.contact-linkedin__description{margin-bottom:1rem;opacity:.9;font-size:1rem}.contact-linkedin__btn{display:inline-flex;align-items:center;gap:.25rem;background-color:hsla(0,0%,100%,.2);color:#fff;padding:.5rem 1rem;border-radius:8px;text-decoration:none;font-weight:500;font-size:.875rem;transition:all .2s ease-in-out;border:1px solid hsla(0,0%,100%,.3)}.contact-linkedin__btn:hover{background-color:hsla(0,0%,100%,.3);transform:translateY(-1px);text-decoration:none;color:#fff}.contact-linkedin__btn svg{transition:transform .2s ease-in-out}.contact-linkedin__btn:hover svg{transform:translateX(2px) translateY(-2px)}.demo-card{background-color:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 1px 2px 0 rgba(0,0,0,.08);transition:all .3s ease-in-out;border:1px solid #d1d5db;display:flex;flex-direction:column;height:100%}.demo-card.hidden{display:none}.demo-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px rgba(0,0,0,.15),0 10px 10px -5px rgba(0,0,0,.08);border-color:#2563eb}.demo-card__header{margin-bottom:1.5rem}.demo-card__title{color:#111827;font-size:1.125rem;font-weight:700;margin-bottom:.5rem;line-height:1.3}.demo-card__tags{display:flex;flex-wrap:wrap;gap:.25rem}.demo-card__tag{background-color:#fff;color:#2563eb;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid #2563eb;transition:all .2s ease-in-out}.demo-card__tag:hover{background-color:#2563eb;color:#fff}.demo-card__content{flex:1;margin-bottom:1.5rem}.demo-card__description{color:#4b5563;line-height:1.6;margin-bottom:1rem}.demo-card__features{display:flex;flex-direction:column;gap:.25rem}.demo-card__feature{display:flex;align-items:center;gap:.5rem;color:#4b5563;font-size:.875rem}.demo-card__feature svg{color:#2563eb;flex-shrink:0}.demo-card__actions{display:flex;gap:.5rem;margin-top:auto}@media(max-width: 640px){.demo-card__actions{flex-direction:column}}.demo-card__btn{flex:1;padding:.5rem 1rem;border-radius:6px;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;text-decoration:none;text-align:center;border:none}.demo-card__btn--primary{background-color:#2563eb;color:#fff}.demo-card__btn--primary:hover{background-color:#3b82f6;transform:translateY(-1px)}.demo-card__btn--secondary{background-color:rgba(0,0,0,0);color:#2563eb;border:1px solid #2563eb}.demo-card__btn--secondary:hover{background-color:#2563eb;color:#fff;transform:translateY(-1px)}.repo-card{background-color:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 1px 2px 0 rgba(0,0,0,.08);transition:all .3s ease-in-out;border:1px solid #d1d5db;display:flex;flex-direction:column;height:100%}.repo-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px rgba(0,0,0,.15),0 10px 10px -5px rgba(0,0,0,.08);border-color:#2563eb}.repo-card__header{margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.5rem}.repo-card__title{color:#111827;font-size:1.125rem;font-weight:700;margin:0;line-height:1.3;flex:1}.repo-card__meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.repo-card__product{color:#2563eb;background-color:rgba(37,99,235,.1);padding:.25rem .5rem;border-radius:12px;font-weight:500}.repo-card__stars{color:#3b82f6;font-weight:500}.repo-card__content{flex:1;margin-bottom:1.5rem}.repo-card__description{color:#4b5563;font-size:.875rem;line-height:1.6;margin-bottom:1.5rem}.repo-card__description ul{margin:.5rem 0;padding-left:1rem}.repo-card__description ul li{font-size:.875rem;color:#4b5563;margin-bottom:.25rem}.repo-card__tags{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:1rem}.repo-card__tag{background-color:#fff;color:#2563eb;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid #2563eb}.repo-card__actions{margin-top:auto}.repo-card__btn{display:block;background-color:#2563eb;color:#fff;padding:.5rem 1rem;border-radius:8px;text-decoration:none;font-size:.875rem;font-weight:500;text-align:center;border:2px solid #2563eb;width:100%;box-sizing:border-box}.repo-card__btn:hover{background-color:#3b82f6;border-color:#3b82f6;color:#fff;text-decoration:none}.link-card{background-color:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 1px 2px 0 rgba(0,0,0,.08);transition:all .3s ease-in-out;border:1px solid #d1d5db;text-align:center;display:flex;flex-direction:column;height:100%;min-height:120px}.link-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.12),0 4px 6px -2px rgba(0,0,0,.07);border-color:#2563eb}.link-card__title{color:#111827;font-size:1rem;font-weight:700;margin-bottom:1rem}.link-card__description{color:#4b5563;font-size:.875rem;line-height:1.4;margin-bottom:1.5rem;flex:1}.link-card__btn{display:inline-block;background-color:#2563eb;color:#fff;padding:.25rem .5rem;border-radius:4px;text-decoration:none;font-size:.75rem;font-weight:500;transition:all .2s ease-in-out;margin-top:auto}.link-card__btn:hover{background-color:#3b82f6;transform:translateY(-1px);text-decoration:none}.contact-form__group{margin-bottom:1.5rem}.contact-form__label{display:block;color:#111827;font-weight:500;margin-bottom:.25rem}.contact-form__input,.contact-form__textarea{width:100%;padding:.5rem 1rem;background-color:#fff;border:2px solid #d1d5db;border-radius:8px;color:#111827;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:1rem;transition:all .2s ease-in-out}.contact-form__input:focus,.contact-form__textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.1)}.contact-form__input::placeholder,.contact-form__textarea::placeholder{color:#9ca3af}.contact-form__textarea{min-height:120px;resize:vertical}.contact-form__submit{width:100%;padding:1rem 1.5rem;background-color:#2563eb;color:#fff;border:none;border-radius:8px;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease-in-out}.contact-form__submit:hover{background-color:#3b82f6;transform:translateY(-2px);box-shadow:0 8px 25px rgba(255,193,7,.3)}.contact-form__submit:active{transform:translateY(0)}.stats{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:2rem;text-align:center}.stats__item{padding:1.5rem}.stats__number{font-size:2.25rem;font-weight:700;color:#2563eb;display:block;margin-bottom:.25rem}.stats__label{color:#4b5563;font-size:.875rem;text-transform:uppercase;letter-spacing:1px}.language-selector{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}.lang-btn{background-color:rgba(0,0,0,0);border:2px solid #d1d5db;color:#4b5563;padding:.5rem 1rem;border-radius:20px;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out}.lang-btn:hover{border-color:#2563eb;color:#2563eb}.lang-btn.active{background-color:#2563eb;border-color:#2563eb;color:#fff}.blog-grid{display:grid;gap:2rem;grid-template-columns:1fr}@media(max-width: 768px){.blog-grid{gap:1.5rem}}.blog-card{background-color:#fff;border-radius:8px;padding:2rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 1px 2px 0 rgba(0,0,0,.08);transition:all .3s ease-in-out;border:1px solid #d1d5db}.blog-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px rgba(0,0,0,.15),0 10px 10px -5px rgba(0,0,0,.08);border-color:#2563eb}.blog-card__meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.blog-card__date{color:#3b82f6;font-size:.875rem;font-weight:500}.blog-card__tags{display:flex;gap:.25rem;flex-wrap:wrap}.blog-card__tag{background-color:#fff;color:#2563eb;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid #2563eb}.blog-card__title{margin-bottom:1rem;line-height:1.2 !important}.blog-card__title a{color:#111827;text-decoration:none;font-size:1.125rem;font-weight:600;line-height:1.2 !important;display:block;transition:color .2s ease-in-out}.blog-card__title a:hover{color:#2563eb}.blog-card__excerpt{color:#4b5563;line-height:1.6;margin-bottom:1.5rem}.blog-card__footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.blog-card__read-more{color:#2563eb;text-decoration:none;font-weight:500;transition:color .2s ease-in-out}.blog-card__read-more:hover{color:#3b82f6}.blog-card__read-time{color:#9ca3af;font-size:.875rem}.post-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid #d1d5db}.post-meta{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.post-date{color:#3b82f6;font-weight:500}.post-tags{display:flex;gap:.25rem;flex-wrap:wrap}.post-tag{background-color:#fff;color:#2563eb;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid #2563eb}.post-read-time{color:#9ca3af;font-size:.875rem}.post-title{color:#111827;font-size:1.875rem;font-weight:700;margin-bottom:1rem;line-height:1.2}.post-description{color:#4b5563;font-size:1.125rem;line-height:1.6;max-width:800px;margin:0 auto}.post-content{max-width:800px;margin:0 auto;line-height:1.7}.post-content h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{color:#111827;margin-top:2rem;margin-bottom:1rem}.post-content p{color:#4b5563;margin-bottom:1rem}.post-content code{background-color:#fff;color:#2563eb;padding:.25rem .5rem;border-radius:4px;font-family:"Monaco","Courier New",monospace;font-size:.875rem}.post-content pre{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;padding:1rem;overflow-x:auto;margin:1.5rem 0}.post-content pre code{background:none;padding:0}.post-content blockquote{border-left:4px solid #2563eb;padding-left:1rem;margin:1.5rem 0;font-style:italic;color:#4b5563}.post-content ul,.post-content ol{margin-bottom:1rem;padding-left:1.5rem}.post-content ul li,.post-content ol li{color:#4b5563;margin-bottom:.25rem}.post-content a{color:#2563eb;text-decoration:none}.post-content a:hover{color:#3b82f6;text-decoration:underline}.post-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid #d1d5db}.post-navigation{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}@media(max-width: 768px){.post-navigation{grid-template-columns:1fr;gap:1rem}}.post-nav-item{padding:1rem;border:1px solid #d1d5db;border-radius:8px;transition:all .2s ease-in-out}.post-nav-item:hover{border-color:#2563eb;background-color:#fff}.post-nav-prev{text-align:left}.post-nav-next{text-align:right}.post-nav-label{color:#9ca3af;font-size:.875rem;display:block;margin-bottom:.25rem}.post-nav-title{color:#111827;text-decoration:none;font-weight:500;transition:color .2s ease-in-out}.post-nav-title:hover{color:#2563eb}.post-back-to-blog{text-align:center}/*# sourceMappingURL=main.css.map */