@charset "UTF-8";.home-page{--accent-1:#7c6bff;--accent-2:#c169d7;--accent-3:#4cc2ff;--surface-1:#0d0d12;--surface-2:#14141c;--surface-3:#1c1c28;--surface-4:#242434;--text-1:#f4f4f8;--text-2:#b8b8c8;--text-3:#7a7a90;--border-1:rgba(255, 255, 255, 0.08);--border-2:rgba(255, 255, 255, 0.14);--glow-purple:rgba(124, 107, 255, 0.35);--glow-pink:rgba(193, 105, 215, 0.25)}.home-back-link{position:fixed;top:1.5rem;left:1.5rem;z-index:50;display:inline-flex;align-items:center;gap:.6rem;padding:.5rem 1.1rem .5rem .9rem;background:rgba(20,20,28,.55);border:1px solid rgba(255,255,255,8%);border-radius:999px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:rgba(255,255,255,.85) !important;text-decoration:none !important;font-size:1.1rem;font-weight:600;letter-spacing:.01em;box-shadow:0 4px 20px rgba(0,0,0,.25);transition:color .2s ease,border-color .2s ease,gap .2s ease}.home-back-link .home-back-link-arrow{font-size:1.15em;transition:transform .2s ease}.home-back-link:hover,.home-back-link:focus-visible{color:#fff !important;border-color:rgba(255,255,255,.18);gap:.85rem;outline:none}.home-back-link:hover .home-back-link-arrow,.home-back-link:focus-visible .home-back-link-arrow{transform:translateX(-3px)}@media only screen and (max-width:768px){.home-back-link{top:1rem;left:1rem;font-size:1rem;padding:.4rem .9rem .4rem .75rem}.home-back-link .home-back-link-label{display:none}}.lang-switcher{position:fixed;top:1.5rem;right:1.5rem;z-index:50;display:inline-flex;align-items:center;gap:.25rem;padding:.35rem .5rem;background:rgba(20,20,28,.55);border:1px solid rgba(255,255,255,8%);border-radius:999px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:1.05rem;font-weight:600;letter-spacing:.06em;box-shadow:0 4px 20px rgba(0,0,0,.25);transition:opacity .2s ease}.lang-switcher .lang-switcher-item{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;padding:.3rem .6rem;border-radius:999px;color:rgba(255,255,255,.55) !important;text-decoration:none !important;transition:color .2s ease,background .2s ease;line-height:1}.lang-switcher .lang-switcher-item:hover,.lang-switcher .lang-switcher-item:focus-visible{color:rgba(255,255,255,.95) !important;outline:none}.lang-switcher .lang-switcher-item.is-active{color:#fff !important;background:rgba(255,255,255,8%);cursor:default}@media only screen and (max-width:768px){.lang-switcher{top:1rem;right:1rem;font-size:.95rem}.lang-switcher .lang-switcher-item{min-width:2.1rem;padding:.25rem .5rem}}.content{flex-direction:column;margin-top:0}.content header{margin-top:0}.home-page{display:flex;flex-direction:column;width:100%}.home-section{width:100%;padding:6rem 0;position:relative}@media only screen and (max-width:768px){.home-section{padding:4rem 0}}.home-section .container{max-width:110rem;margin:0 auto;padding-left:2rem;padding-right:2rem}.home-blog+.home-contact{padding-top:2rem}.home-blog{padding-bottom:4rem}.section-header{text-align:center;margin-bottom:4rem}.section-header .section-title{margin:0 0 1rem;font-size:3.2rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;background:linear-gradient(135deg,var(--text-1) 0%,var(--text-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-header .section-subtitle{margin:0;font-size:1.5rem;color:var(--text-2);max-width:60rem;margin-left:auto;margin-right:auto;line-height:1.5}.section-title-quiet{text-align:center;font-size:1.1rem !important;font-weight:600;text-transform:uppercase;letter-spacing:.25em;color:var(--text-3);margin:0 0 3rem}.home-intro{padding:8rem 0 6rem;background:radial-gradient(ellipse 80rem 40rem at 50% 0%,rgba(124,107,255,.18),transparent 60%),radial-gradient(ellipse 60rem 30rem at 80% 30%,rgba(193,105,215,.12),transparent 60%),radial-gradient(ellipse 60rem 30rem at 20% 70%,rgba(76,194,255,.1),transparent 60%);overflow:hidden}.home-intro::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse 60rem 40rem at 50% 40%,black,transparent 70%);pointer-events:none}.home-intro .container{position:relative}.home-intro .home-intro-grid{display:grid;grid-template-columns:1.1fr .9fr 1.1fr;gap:4rem;align-items:center}.home-intro .home-intro-identity{text-align:left}.home-intro .home-intro-identity .home-intro-eyebrow{margin:0 0 1rem;font-size:1.1rem;text-transform:uppercase;letter-spacing:.3em;font-weight:600;color:var(--accent-1)}.home-intro .home-intro-identity .home-intro-name{margin:0 0 1rem;font-size:4.2rem;line-height:1.05;font-weight:800;letter-spacing:-.03em;background:linear-gradient(135deg,#ffffff 0%,#c8c8d8 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-intro .home-intro-identity .home-intro-role{margin:0;font-size:1.6rem;font-weight:500;color:var(--text-2)}.home-intro .home-intro-avatar{display:flex;justify-content:center}.home-intro .home-intro-avatar .home-intro-avatar-frame{position:relative;width:100%;max-width:280px;aspect-ratio:1/1;border-radius:20px;padding:4px;background:linear-gradient(135deg,var(--accent-1),var(--accent-2),var(--accent-3));box-shadow:0 0 60px var(--glow-purple),0 20px 50px rgba(0,0,0,.4)}.home-intro .home-intro-avatar .home-intro-avatar-frame img{width:100%;height:100%;border-radius:18px;object-fit:cover;display:block}.home-intro .home-intro-avatar .home-intro-avatar-frame::after{content:"";position:absolute;inset:-2px;border-radius:22px;background:linear-gradient(135deg,var(--accent-1),var(--accent-2),var(--accent-3));opacity:.4;filter:blur(20px);z-index:-1}.home-intro .home-intro-pitch{position:relative;font-size:1.7rem;line-height:1.55;color:var(--text-1);padding:1rem 0 1rem 4rem;font-style:italic;font-weight:300}.home-intro .home-intro-pitch .home-intro-pitch-mark{position:absolute;top:-2rem;left:0;font-size:8rem;line-height:1;font-family:Georgia,serif;color:var(--accent-1);opacity:.5;font-style:normal}.home-intro .home-intro-pitch p{margin:0}@media only screen and (max-width:1024px){.home-intro .home-intro-grid{grid-template-columns:1fr;gap:3rem;text-align:center}.home-intro .home-intro-identity{text-align:center}.home-intro .home-intro-pitch{padding:1rem 2rem 1rem 4rem;text-align:left;max-width:60rem;margin:0 auto}}@media only screen and (max-width:768px){.home-intro{padding:6rem 0 4rem}.home-intro .home-intro-identity .home-intro-name{font-size:3.2rem}}.home-intro .home-intro-cta{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--border-1);display:flex;flex-direction:column;align-items:center;gap:2rem}.home-intro .hero-primary-cta{display:inline-flex;align-items:center;gap:.7rem;padding:1.25rem 2.5rem;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));color:#fff !important;text-decoration:none !important;border-radius:999px;font-size:1.4rem;font-weight:700;letter-spacing:.01em;box-shadow:0 12px 36px rgba(124,107,255,.4),0 0 0 1px rgba(255,255,255,8%)inset;transition:transform .25s ease,box-shadow .25s ease,gap .25s ease}.home-intro .hero-primary-cta span[aria-hidden]{transition:transform .25s ease}.home-intro .hero-primary-cta:hover,.home-intro .hero-primary-cta:focus-visible{transform:translateY(-2px);gap:1rem;box-shadow:0 18px 44px rgba(124,107,255,.55),0 0 0 1px rgba(255,255,255,.1)inset;outline:none}.home-intro .hero-primary-cta:hover span[aria-hidden],.home-intro .hero-primary-cta:focus-visible span[aria-hidden]{transform:translateY(3px)}.home-intro .home-intro-contact{position:relative}.home-stats{background:var(--surface-1);padding:4rem 0;border-top:1px solid var(--border-1);border-bottom:1px solid var(--border-1)}.home-stats .section-title-quiet{margin-bottom:2.5rem}.home-stats .stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.home-stats .stat-item{text-align:center;padding:1.5rem 1rem;position:relative}.home-stats .stat-item:not(:last-child)::after{content:"";position:absolute;top:25%;right:0;width:1px;height:50%;background:var(--border-1)}.home-stats .stat-item-value{display:inline-flex;align-items:baseline;justify-content:center;gap:.1rem;font-weight:800;line-height:1;background:linear-gradient(135deg,var(--accent-1),var(--accent-3));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-stats .stat-item-number{font-size:4.8rem;letter-spacing:-.04em}.home-stats .stat-item-suffix{font-size:3rem}.home-stats .stat-item-label{margin-top:.75rem;font-size:1.25rem;font-weight:600;color:var(--text-1)}.home-stats .stat-item-sub{margin-top:.25rem;font-size:1rem;color:var(--text-3);font-style:italic}@media only screen and (max-width:900px){.home-stats .stats-row{grid-template-columns:repeat(2,1fr);gap:1rem}.home-stats .stat-item:nth-child(2)::after{display:none}.home-stats .stat-item-number{font-size:3.6rem}}@media only screen and (max-width:480px){.home-stats .stats-row{grid-template-columns:1fr}.home-stats .stat-item::after{display:none}.home-stats .stat-item:not(:last-child){border-bottom:1px solid var(--border-1)}}.home-testimonials{background:var(--surface-1)}.home-testimonials .testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.home-testimonials .testimonial-card{position:relative;margin:0;padding:3rem 2.25rem 2rem;background:linear-gradient(180deg,var(--surface-3),var(--surface-2));border:1px solid var(--border-1);border-radius:18px;display:flex;flex-direction:column;gap:1.5rem;overflow:hidden}.home-testimonials .testimonial-card::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-1),var(--accent-2),var(--accent-3));opacity:.6}.home-testimonials .testimonial-mark{position:absolute;top:.5rem;left:1.5rem;font-size:7rem;line-height:1;font-family:Georgia,serif;color:var(--accent-1);opacity:.35;pointer-events:none}.home-testimonials .testimonial-quote{margin:0;font-size:1.25rem;line-height:1.6;color:var(--text-1);font-style:italic;position:relative;z-index:1;flex:1}.home-testimonials .testimonial-author{display:block;border-top:1px solid var(--border-1);padding-top:1.25rem}.home-testimonials .testimonial-author-name{font-size:1.25rem;font-weight:700;color:var(--text-1)}.home-testimonials .testimonial-author-role{font-size:1.05rem;color:var(--text-3);margin-top:.15rem}@media only screen and (max-width:1024px){.home-testimonials .testimonials-grid{grid-template-columns:1fr;gap:1.5rem}}.project-dialog-tech-names{margin:.5rem 0 1.25rem;font-size:1.15rem;line-height:1.55;color:var(--text-2);letter-spacing:.01em}.blog-card{padding:0;overflow:hidden}.blog-card-body{display:flex;flex-direction:column;gap:.85rem;padding:1.75rem 2rem}.blog-card-media{width:100%;aspect-ratio:16/9;overflow:hidden;position:relative}.blog-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.blog-card:hover .blog-card-media img{transform:scale(1.04)}.blog-card-media--placeholder{display:flex;align-items:center;justify-content:center}.blog-card-media--placeholder .blog-card-media-icon{font-size:4.5rem;color:rgba(255,255,255,.85);filter:drop-shadow(0 4px 16px rgba(0,0,0,.25))}.blog-single-page .blog-post-featured-image{margin:0 0 2.5rem;border-radius:16px;overflow:hidden;border:1px solid var(--border-1);box-shadow:0 20px 50px rgba(0,0,0,.4)}.blog-single-page .blog-post-featured-image img{width:100%;height:auto;display:block}.site-footer{background:#0a0a10;border-top:1px solid rgba(255,255,255,8%);color:#b8b8c8;padding:3rem 0 2.5rem;position:relative}.site-footer::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:30%;max-width:30rem;height:1px;background:linear-gradient(90deg,transparent,#7c6bff,transparent)}.site-footer .site-footer-inner{max-width:110rem;margin:0 auto;padding:0 2rem;display:flex;flex-direction:column;align-items:center;gap:1.25rem;text-align:center}.site-footer .site-footer-brand{display:flex;flex-direction:column;gap:.4rem}.site-footer .site-footer-tagline{font-size:1.25rem;font-weight:600;color:#f4f4f8;letter-spacing:.005em}.site-footer .site-footer-availability{font-size:1.1rem;color:#b8b8c8}.site-footer .site-footer-meta{display:inline-flex;align-items:center;gap:.85rem;flex-wrap:wrap;justify-content:center;font-size:1rem;color:#7a7a90;letter-spacing:.04em}.site-footer .site-footer-version{padding:.15rem .6rem;border-radius:999px;border:1px solid rgba(255,255,255,8%);font-family:sf mono,Menlo,Consolas,monospace;font-size:.95rem;color:#b8b8c8}.site-footer a{color:#7c6bff !important;text-decoration:none !important}.site-footer a:hover,.site-footer a:focus-visible{color:#4cc2ff !important}@media only screen and (max-width:768px){.site-footer{padding:2.5rem 0 2rem}.site-footer .site-footer-tagline{font-size:1.15rem}.site-footer .site-footer-availability{font-size:1rem}}.home-clients{background:var(--surface-1);padding:5rem 0;border-top:1px solid var(--border-1);border-bottom:1px solid var(--border-1)}.home-clients .client-logo-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2.5rem 3rem}.home-clients .client-logo{display:flex;align-items:center;justify-content:center;flex:0 0 140px;width:140px;height:60px;opacity:.5;filter:brightness(0)invert(1);transition:opacity .3s ease,filter .3s ease,transform .3s ease}.home-clients .client-logo img{max-width:100%;max-height:100%;object-fit:contain}.home-clients .client-logo:hover,.home-clients .client-logo:focus{opacity:1;filter:brightness(0)invert(1);transform:translateY(-3px)}.home-clients .client-logo .client-logo-fallback{font-size:1.2rem;font-weight:500;text-align:center;color:var(--text-2)}@media only screen and (max-width:900px){.home-clients .client-logo-grid{gap:1.5rem 2rem}.home-clients .client-logo{flex:0 0 110px;width:110px;height:50px}}@media only screen and (max-width:480px){.home-clients .client-logo{flex:0 0 90px;width:90px}}.home-services{background:var(--surface-2)}.home-services .service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.home-services .service-card{position:relative;background:linear-gradient(180deg,var(--surface-3),var(--surface-2));border:1px solid var(--border-1);border-radius:20px;padding:3rem 2.5rem;display:flex;flex-direction:column;gap:1.25rem;overflow:hidden;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.home-services .service-card::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-1),var(--accent-2),var(--accent-3));opacity:0;transition:opacity .35s ease}.home-services .service-card::after{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,var(--glow-purple),transparent 70%);opacity:0;transition:opacity .4s ease;pointer-events:none}.home-services .service-card:hover{transform:translateY(-6px);border-color:var(--border-2);box-shadow:0 20px 60px rgba(0,0,0,.4)}.home-services .service-card:hover::before,.home-services .service-card:hover::after{opacity:1}.home-services .service-card .service-card-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:linear-gradient(135deg,rgba(124,107,255,.15),rgba(193,105,215,.1));border:1px solid var(--border-1);margin-bottom:.5rem}.home-services .service-card .service-card-icon img{width:32px;height:32px;object-fit:contain;filter:brightness(0)invert(1);opacity:.9}.home-services .service-card .service-card-title{margin:0;font-size:1.8rem;font-weight:700;color:var(--text-1);line-height:1.25}.home-services .service-card .service-card-description{margin:0;font-size:1.35rem;line-height:1.55;color:var(--text-2)}.home-services .service-card .service-card-bullets{list-style:none;padding:0;margin:.5rem 0 0}.home-services .service-card .service-card-bullets li{position:relative;padding-left:1.5rem;font-size:1.25rem;line-height:1.5;margin-bottom:.6rem;color:var(--text-2)}.home-services .service-card .service-card-bullets li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:1px;background:var(--accent-1)}@media only screen and (max-width:900px){.home-services .service-grid{grid-template-columns:1fr;gap:1.5rem}}.home-projects{background:var(--surface-1)}.home-projects .project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.home-projects .project-card{position:relative;border-radius:18px;overflow:hidden;background:var(--surface-3);border:1px solid var(--border-1);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.home-projects .project-card:hover{transform:translateY(-6px);border-color:var(--accent-1);box-shadow:0 25px 60px rgba(0,0,0,.45),0 0 0 1px var(--accent-1)inset}.home-projects .project-card-trigger{display:flex;flex-direction:column;text-align:left;width:100%;background:0 0;border:none;padding:0;color:inherit;font:inherit;cursor:pointer}.home-projects .project-card-media{display:block;width:100%;aspect-ratio:16/10;overflow:hidden;position:relative;background:var(--surface-4)}.home-projects .project-card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(13,13,18,.6) 100%);pointer-events:none}.home-projects .project-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.home-projects .project-card:hover .project-card-media img{transform:scale(1.06)}.home-projects .project-card-head{display:flex;flex-direction:column;gap:.6rem;padding:1.75rem 1.75rem 2rem}.home-projects .project-card-title{margin:0;font-size:1.55rem;font-weight:700;line-height:1.3;color:var(--text-1)}.home-projects .project-card-mission{margin:0;font-size:1.2rem;line-height:1.5;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-projects .project-card-cta{margin-top:.5rem;font-size:1.1rem;font-weight:600;color:var(--accent-1);letter-spacing:.04em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem;transition:gap .25s ease}.home-projects .project-card:hover .project-card-cta{gap:.85rem}@media only screen and (max-width:1024px){.home-projects .project-grid{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width:700px){.home-projects .project-grid{grid-template-columns:1fr}}.project-dialog{padding:0;border:1px solid var(--border-2);border-radius:20px;background:var(--surface-2);color:var(--text-1);max-width:90rem;width:calc(100vw - 4rem);max-height:calc(100vh - 4rem);overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px var(--border-1)}.project-dialog::backdrop{background:rgba(8,8,12,.75);backdrop-filter:blur(8px)}.project-dialog[open]{display:flex;flex-direction:column;animation:dialogIn .25s ease}.project-dialog .project-dialog-close-form{position:absolute;top:1.25rem;right:1.25rem;z-index:2;margin:0}.project-dialog .project-dialog-close{width:42px;height:42px;border-radius:50%;border:1px solid var(--border-2);background:rgba(0,0,0,.5);color:var(--text-1);font-size:2.4rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease,transform .2s ease}.project-dialog .project-dialog-close:hover{background:rgba(124,107,255,.25);border-color:var(--accent-1);transform:rotate(90deg)}.project-dialog .project-dialog-media{width:100%;max-height:38vh;overflow:hidden;background:var(--surface-4);flex-shrink:0}.project-dialog .project-dialog-media img{width:100%;height:100%;max-height:38vh;object-fit:cover;display:block}.project-dialog .project-dialog-body{padding:2.5rem 3rem 3rem;overflow-y:auto}.project-dialog .project-dialog-title{margin:0 0 .75rem;font-size:2.4rem;font-weight:800;letter-spacing:-.01em;background:linear-gradient(135deg,var(--text-1),var(--accent-3));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.project-dialog .project-dialog-mission{margin:0 0 1.5rem;font-size:1.4rem;line-height:1.55;color:var(--text-2)}.project-dialog .project-dialog-techs{display:flex;flex-wrap:wrap;gap:.6rem;padding:.5rem 0 1.5rem;border-bottom:1px solid var(--border-1);margin-bottom:.5rem}.project-dialog .project-dialog-techs .project-tech{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--surface-3);border:1px solid var(--border-1);padding:6px}.project-dialog .project-dialog-techs .project-tech img{max-width:100%;max-height:100%;object-fit:contain}.project-dialog .project-dialog-techs .project-tech-text{width:auto;padding:0 .8rem;font-size:1.05rem;color:var(--text-2)}.project-dialog .project-dialog-block h4{margin:1.5rem 0 .75rem;font-size:1.05rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-3);font-weight:700}.project-dialog .project-dialog-block ul{margin:0;padding-left:1.25rem;font-size:1.25rem;line-height:1.6;color:var(--text-1)}.project-dialog .project-dialog-block ul li{margin-bottom:.5rem}.project-dialog .project-dialog-block ul li strong{color:var(--accent-3);font-weight:600}.project-dialog .project-dialog-block ul li a{color:var(--accent-1) !important}.project-dialog .project-dialog-block ul li a:hover{color:var(--accent-2) !important}@media only screen and (max-width:768px){.project-dialog{width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)}.project-dialog .project-dialog-body{padding:1.5rem 1.75rem 2rem}.project-dialog .project-dialog-title{font-size:1.8rem}}.home-blog{background:var(--surface-2)}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.blog-card{display:flex;flex-direction:column;gap:.85rem;padding:2rem 2rem 1.75rem;background:linear-gradient(180deg,var(--surface-3),var(--surface-2));border:1px solid var(--border-1);border-radius:18px;text-decoration:none !important;color:var(--text-1) !important;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.blog-card::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-1),var(--accent-3));opacity:0;transition:opacity .3s ease}.blog-card:hover,.blog-card:focus-visible{transform:translateY(-4px);border-color:var(--border-2);box-shadow:0 20px 50px rgba(0,0,0,.4);outline:none}.blog-card:hover::before,.blog-card:focus-visible::before{opacity:1}.blog-card:hover .blog-card-cta,.blog-card:focus-visible .blog-card-cta{gap:.85rem;color:var(--accent-3)}.blog-card-date{font-size:1rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-3);font-weight:600}.blog-card-title{margin:0;font-size:1.5rem;font-weight:700;line-height:1.3;color:var(--text-1)}.blog-card-tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem}.blog-card-tags li{font-size:1rem;padding:.2rem .7rem;border-radius:999px;background:rgba(124,107,255,.12);border:1px solid rgba(124,107,255,.25);color:var(--accent-1);font-weight:500}.blog-card-description{margin:0;font-size:1.2rem;line-height:1.55;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}.blog-card-cta{margin-top:.5rem;font-size:1.1rem;font-weight:600;color:var(--accent-1);letter-spacing:.04em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem;transition:gap .25s ease,color .25s ease}.blog-footer{text-align:center;margin-top:3rem}.blog-view-all{display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 1.6rem;border:1px solid var(--border-2);border-radius:999px;font-size:1.15rem;font-weight:600;color:var(--text-1) !important;text-decoration:none !important;transition:border-color .25s ease,gap .25s ease,background .25s ease}.blog-view-all:hover,.blog-view-all:focus-visible{border-color:var(--accent-1);background:rgba(124,107,255,8%);gap:.85rem;outline:none}@media only screen and (max-width:1024px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width:700px){.blog-grid{grid-template-columns:1fr}}.blog-page{background:var(--surface-1);color:var(--text-1);min-height:100vh;--accent-1:#7c6bff;--accent-2:#c169d7;--accent-3:#4cc2ff;--surface-1:#0d0d12;--surface-2:#14141c;--surface-3:#1c1c28;--surface-4:#242434;--text-1:#f4f4f8;--text-2:#b8b8c8;--text-3:#7a7a90;--border-1:rgba(255, 255, 255, 0.08);--border-2:rgba(255, 255, 255, 0.14);--glow-purple:rgba(124, 107, 255, 0.35)}.blog-list-header{padding:8rem 0 3rem;background:radial-gradient(ellipse 80rem 30rem at 50% 0%,rgba(124,107,255,.15),transparent 60%),var(--surface-1)}.blog-list-header .section-subtitle p{margin:0;color:var(--text-2);font-size:1.5rem;line-height:1.55}.blog-list-section{padding-top:2rem}.blog-back-cta{background:var(--surface-1);padding:4rem 0 6rem}.blog-back-cta .blog-cta-card{max-width:70rem;margin:0 auto;text-align:center;padding:4rem 3rem;border-radius:24px;background:radial-gradient(ellipse 40rem 20rem at 50% 100%,rgba(124,107,255,.2),transparent 70%),linear-gradient(180deg,var(--surface-3),var(--surface-2));border:1px solid var(--border-1);position:relative;overflow:hidden}.blog-back-cta .blog-cta-card::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,var(--accent-1),transparent)}.blog-back-cta .blog-cta-card h2{margin:0 0 .75rem;font-size:2.4rem;font-weight:800;letter-spacing:-.01em;background:linear-gradient(135deg,var(--text-1) 0%,var(--accent-3) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.blog-back-cta .blog-cta-card p{margin:0 auto 2rem;max-width:50rem;font-size:1.4rem;line-height:1.55;color:var(--text-2)}.blog-back-cta .blog-cta-button{display:inline-flex;align-items:center;gap:.6rem;padding:1.1rem 2rem;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));color:#fff !important;text-decoration:none !important;border-radius:999px;font-size:1.3rem;font-weight:700;letter-spacing:.02em;box-shadow:0 10px 30px rgba(124,107,255,.35);transition:transform .25s ease,box-shadow .25s ease,gap .25s ease}.blog-back-cta .blog-cta-button:hover,.blog-back-cta .blog-cta-button:focus-visible{transform:translateY(-2px);gap:.9rem;box-shadow:0 16px 40px rgba(124,107,255,.5);outline:none}@media only screen and (max-width:768px){.blog-back-cta .blog-cta-card{padding:3rem 1.75rem}.blog-back-cta .blog-cta-card h2{font-size:1.9rem}.blog-back-cta .blog-cta-card p{font-size:1.2rem}}.blog-single-page .blog-post-header{padding:8rem 0 3rem;background:radial-gradient(ellipse 80rem 35rem at 50% 0%,rgba(124,107,255,.18),transparent 60%),var(--surface-1);border-bottom:1px solid var(--border-1)}.blog-single-page .blog-post-header-inner{max-width:80rem;margin:0 auto;padding-left:2rem;padding-right:2rem}.blog-single-page .blog-post-breadcrumb{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:1.1rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-1) !important;text-decoration:none !important;transition:gap .2s ease,color .2s ease}.blog-single-page .blog-post-breadcrumb:hover,.blog-single-page .blog-post-breadcrumb:focus-visible{gap:.85rem;color:var(--accent-3) !important;outline:none}.blog-single-page .blog-post-title{margin:0 0 1.5rem;font-size:3.6rem;font-weight:800;line-height:1.1;letter-spacing:-.02em;background:linear-gradient(135deg,var(--text-1) 0%,var(--accent-3) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.blog-single-page .blog-post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.5rem;color:var(--text-3);font-size:1.1rem}.blog-single-page .blog-post-meta time{text-transform:uppercase;letter-spacing:.18em;font-weight:600}.blog-single-page .blog-post-meta .blog-post-tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem}.blog-single-page .blog-post-meta .blog-post-tags li a{display:inline-block;padding:.2rem .7rem;border-radius:999px;background:rgba(124,107,255,.12);border:1px solid rgba(124,107,255,.25);color:var(--accent-1) !important;font-weight:500;font-size:1rem;text-decoration:none !important;transition:background .2s ease,border-color .2s ease}.blog-single-page .blog-post-meta .blog-post-tags li a:hover,.blog-single-page .blog-post-meta .blog-post-tags li a:focus-visible{background:rgba(124,107,255,.22);border-color:var(--accent-1);outline:none}.blog-single-page .blog-post-description{margin:1.75rem 0 0;font-size:1.5rem;line-height:1.5;color:var(--text-2);font-style:italic;max-width:70rem}.blog-single-page .blog-post-layout{max-width:80rem;margin:0 auto;padding:4rem 2rem 3rem}.blog-single-page .blog-post-body{font-size:1.35rem;line-height:1.7;color:var(--text-1)}.blog-single-page .blog-post-body h2{margin:3rem 0 1rem;font-size:2.4rem;font-weight:700;color:var(--text-1);letter-spacing:-.01em}.blog-single-page .blog-post-body h3{margin:2.5rem 0 1rem;font-size:1.8rem;font-weight:700;color:var(--text-1)}.blog-single-page .blog-post-body h4{margin:2rem 0 .75rem;font-size:1.4rem;font-weight:700;color:var(--text-1)}.blog-single-page .blog-post-body p{margin:0 0 1.25rem;color:var(--text-1)}.blog-single-page .blog-post-body ul,.blog-single-page .blog-post-body ol{margin:0 0 1.25rem;padding-left:1.5rem}.blog-single-page .blog-post-body ul li,.blog-single-page .blog-post-body ol li{margin-bottom:.4rem}.blog-single-page .blog-post-body a{color:var(--accent-1) !important;text-decoration:underline;text-decoration-color:rgba(124,107,255,.4);text-underline-offset:3px}.blog-single-page .blog-post-body a:hover,.blog-single-page .blog-post-body a:focus-visible{color:var(--accent-3) !important;text-decoration-color:var(--accent-3)}.blog-single-page .blog-post-body strong{color:var(--text-1);font-weight:700}.blog-single-page .blog-post-body em{color:var(--text-2)}.blog-single-page .blog-post-body blockquote{margin:2rem 0;padding:1.25rem 1.75rem;border-left:3px solid var(--accent-1);background:rgba(124,107,255,6%);border-radius:0 12px 12px 0;color:var(--text-2);font-style:italic}.blog-single-page .blog-post-body pre,.blog-single-page .blog-post-body code{font-family:sf mono,Menlo,Consolas,monospace}.blog-single-page .blog-post-body code{padding:.15rem .4rem;border-radius:4px;background:var(--surface-3);border:1px solid var(--border-1);font-size:.92em;color:var(--accent-3)}.blog-single-page .blog-post-body pre{padding:1.25rem 1.5rem;background:var(--surface-2);border:1px solid var(--border-1);border-radius:12px;overflow-x:auto;font-size:1.15rem;line-height:1.55}.blog-single-page .blog-post-body pre code{background:0 0;border:none;padding:0;color:var(--text-1)}.blog-single-page .blog-post-body img{max-width:100%;border-radius:12px;margin:1.5rem 0}.blog-single-page .blog-post-body hr{border:none;border-top:1px solid var(--border-1);margin:2.5rem 0}.blog-single-page .blog-post-nav{max-width:80rem;margin:0 auto 4rem;padding:0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.blog-single-page .blog-post-nav-item{min-width:0}.blog-single-page .blog-post-nav-item:nth-child(2){text-align:right}.blog-single-page .blog-post-nav-link{display:inline-flex;flex-direction:column;gap:.4rem;padding:1.25rem 1.5rem;background:var(--surface-3);border:1px solid var(--border-1);border-radius:14px;text-decoration:none !important;color:var(--text-1) !important;max-width:100%;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.blog-single-page .blog-post-nav-link:hover,.blog-single-page .blog-post-nav-link:focus-visible{transform:translateY(-2px);border-color:var(--accent-1);box-shadow:0 10px 30px rgba(0,0,0,.35);outline:none}.blog-single-page .blog-post-nav-link .blog-post-nav-dir{font-size:1rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-3);font-weight:600}.blog-single-page .blog-post-nav-link .blog-post-nav-title{font-size:1.2rem;font-weight:600;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blog-single-page .blog-post-nav-link.blog-post-nav-link--next{text-align:right}.blog-single-page .toc-sidebar{display:none}@media only screen and (max-width:768px){.blog-single-page .blog-post-header{padding:6rem 0 2rem}.blog-single-page .blog-post-title{font-size:2.4rem}.blog-single-page .blog-post-description{font-size:1.3rem}.blog-single-page .blog-post-nav{grid-template-columns:1fr}.blog-single-page .blog-post-nav-item:nth-child(2){text-align:left}.blog-single-page .blog-post-nav-link.blog-post-nav-link--next{text-align:left}}@keyframes dialogIn{from{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.home-contact{background:radial-gradient(ellipse 60rem 30rem at 50% 100%,rgba(124,107,255,.15),transparent 60%),var(--surface-2)}.profile-filter{max-width:100rem;margin:0 auto 3rem;padding:2.5rem 2rem .5rem}.profile-filter .profile-filter-title{text-align:center;font-size:1.1rem;font-weight:600;text-transform:uppercase;letter-spacing:.25em;color:var(--text-3);margin:0 0 2rem}.profile-filter .profile-filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.profile-filter .profile-filter-col{--col-accent:var(--accent-1);--col-glow:rgba(124, 107, 255, 0.18);padding:1.75rem 1.5rem;background:linear-gradient(180deg,var(--surface-3),var(--surface-2));border:1px solid var(--border-1);border-radius:14px;position:relative;transition:border-color .25s ease,transform .25s ease}.profile-filter .profile-filter-col:hover{border-color:var(--col-accent);transform:translateY(-2px)}.profile-filter .profile-filter-col i{font-size:1.4rem;color:var(--col-accent);margin-bottom:.75rem;display:block}.profile-filter .profile-filter-col h4{margin:0 0 1rem;font-size:1.25rem;font-weight:700;color:var(--text-1);letter-spacing:-.005em}.profile-filter .profile-filter-col ul{list-style:none;padding:0;margin:0}.profile-filter .profile-filter-col ul li{position:relative;padding-left:1.25rem;font-size:1.15rem;line-height:1.5;margin-bottom:.5rem;color:var(--text-2)}.profile-filter .profile-filter-col ul li::before{content:"";position:absolute;left:0;top:.65em;width:8px;height:1px;background:var(--col-accent)}.profile-filter .profile-filter-col ul li strong{color:var(--text-1);font-weight:600}.profile-filter .profile-filter-col-1{--col-accent:#38d9a9}.profile-filter .profile-filter-col-2{--col-accent:#4cc2ff}.profile-filter .profile-filter-col-3{--col-accent:#ff7a7a}.profile-filter .profile-filter-col-3 ul li{color:var(--text-3);text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:rgba(255,122,122,.35)}.profile-filter .profile-filter-col-3 ul li strong{color:var(--text-2)}@media only screen and (max-width:900px){.profile-filter .profile-filter-grid{grid-template-columns:1fr}}.contact-actions{position:relative;display:flex;justify-content:center;flex-wrap:wrap;gap:1.5rem;margin-top:1rem}.contact-actions .contact-action-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.contact-actions .contact-action{--ring:var(--accent-1);--glow:var(--glow-purple);position:relative;display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;border:1px solid var(--border-2);background:linear-gradient(180deg,var(--surface-3),var(--surface-2));color:var(--text-1) !important;text-decoration:none !important;cursor:pointer;padding:0;font:inherit;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,color .25s ease}.contact-actions .contact-action i{font-size:2.6rem;color:var(--text-1);transition:color .25s ease,transform .25s ease}.contact-actions .contact-action:hover,.contact-actions .contact-action:focus-visible{transform:translateY(-3px);border-color:var(--ring);box-shadow:0 15px 35px rgba(0,0,0,.4),0 0 28px var(--glow);outline:none}.contact-actions .contact-action:hover i,.contact-actions .contact-action:focus-visible i{color:var(--ring);transform:scale(1.08)}.contact-actions .contact-action::after{content:attr(title);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%)translateY(4px);padding:.4rem .8rem;background:var(--surface-4);border:1px solid var(--border-2);border-radius:8px;font-size:1.05rem;font-weight:500;color:var(--text-1);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.contact-actions .contact-action:hover::after,.contact-actions .contact-action:focus-visible::after{opacity:1;transform:translateX(-50%)translateY(0)}.contact-actions .contact-action.contact-action--email{--ring:#ea4335;--glow:rgba(234, 67, 53, 0.3)}.contact-actions .contact-action.contact-action--whatsapp{--ring:#25d366;--glow:rgba(37, 211, 102, 0.3)}.contact-actions .contact-action.contact-action--linkedin{--ring:#0a66c2;--glow:rgba(10, 102, 194, 0.3)}.contact-actions .contact-toast{position:absolute;bottom:calc(100% + 1.5rem);left:50%;transform:translateX(-50%)translateY(8px);padding:.75rem 1.25rem;background:var(--surface-3);border:1px solid var(--accent-1);border-radius:999px;font-size:1.2rem;color:var(--text-1);white-space:nowrap;opacity:0;pointer-events:none;box-shadow:0 10px 30px rgba(0,0,0,.45),0 0 25px var(--glow-purple);transition:opacity .25s ease,transform .25s ease;z-index:5}.contact-actions .contact-toast[data-visible=true]{opacity:1;transform:translateX(-50%)translateY(0)}.contact-actions .contact-toast strong{color:var(--accent-1);font-weight:600;margin-left:.4rem}h1 .heading-link,h2 .heading-link,h3 .heading-link,h4 .heading-link,h5 .heading-link,h6 .heading-link{color:#000 !important;fill:#000 !important;text-shadow:none}h1 .heading-link:hover,h2 .heading-link:hover,h3 .heading-link:hover,h4 .heading-link:hover,h5 .heading-link:hover,h6 .heading-link:hover{color:#333 !important;fill:#333 !important;text-shadow:none}h1 .heading-link:focus,h2 .heading-link:focus,h3 .heading-link:focus,h4 .heading-link:focus,h5 .heading-link:focus,h6 .heading-link:focus{color:#000 !important;fill:#000 !important;outline:2px solid rgba(0,0,0,.5);outline-offset:2px}.colorscheme-dark h1 .heading-link,.colorscheme-dark h2 .heading-link,.colorscheme-dark h3 .heading-link,.colorscheme-dark h4 .heading-link,.colorscheme-dark h5 .heading-link,.colorscheme-dark h6 .heading-link,.colorscheme-auto h1 .heading-link,.colorscheme-auto h2 .heading-link,.colorscheme-auto h3 .heading-link,.colorscheme-auto h4 .heading-link,.colorscheme-auto h5 .heading-link,.colorscheme-auto h6 .heading-link{color:#fff !important;fill:#fff !important;text-shadow:1px 1px 2px rgba(0,0,0,.8),0 0 3px rgba(0,0,0,.6)}.colorscheme-dark h1 .heading-link:hover,.colorscheme-dark h2 .heading-link:hover,.colorscheme-dark h3 .heading-link:hover,.colorscheme-dark h4 .heading-link:hover,.colorscheme-dark h5 .heading-link:hover,.colorscheme-dark h6 .heading-link:hover,.colorscheme-auto h1 .heading-link:hover,.colorscheme-auto h2 .heading-link:hover,.colorscheme-auto h3 .heading-link:hover,.colorscheme-auto h4 .heading-link:hover,.colorscheme-auto h5 .heading-link:hover,.colorscheme-auto h6 .heading-link:hover{color:#fff !important;fill:#fff !important;text-shadow:1px 1px 3px rgba(0,0,0,.9),0 0 5px rgba(0,0,0,.7)}.colorscheme-dark h1 .heading-link:focus,.colorscheme-dark h2 .heading-link:focus,.colorscheme-dark h3 .heading-link:focus,.colorscheme-dark h4 .heading-link:focus,.colorscheme-dark h5 .heading-link:focus,.colorscheme-dark h6 .heading-link:focus,.colorscheme-auto h1 .heading-link:focus,.colorscheme-auto h2 .heading-link:focus,.colorscheme-auto h3 .heading-link:focus,.colorscheme-auto h4 .heading-link:focus,.colorscheme-auto h5 .heading-link:focus,.colorscheme-auto h6 .heading-link:focus{color:#fff !important;fill:#fff !important;outline:2px solid rgba(255,255,255,.5);outline-offset:2px}@media(prefers-color-scheme:light){.colorscheme-auto h1 .heading-link,.colorscheme-auto h2 .heading-link,.colorscheme-auto h3 .heading-link,.colorscheme-auto h4 .heading-link,.colorscheme-auto h5 .heading-link,.colorscheme-auto h6 .heading-link{color:#000 !important;fill:#000 !important;text-shadow:none}.colorscheme-auto h1 .heading-link:hover,.colorscheme-auto h2 .heading-link:hover,.colorscheme-auto h3 .heading-link:hover,.colorscheme-auto h4 .heading-link:hover,.colorscheme-auto h5 .heading-link:hover,.colorscheme-auto h6 .heading-link:hover{color:#333 !important;fill:#333 !important;text-shadow:none}.colorscheme-auto h1 .heading-link:focus,.colorscheme-auto h2 .heading-link:focus,.colorscheme-auto h3 .heading-link:focus,.colorscheme-auto h4 .heading-link:focus,.colorscheme-auto h5 .heading-link:focus,.colorscheme-auto h6 .heading-link:focus{color:#000 !important;fill:#000 !important;outline:2px solid rgba(0,0,0,.5);outline-offset:2px}}.navigation .container{display:flex;align-items:center;justify-content:space-between;min-height:6rem}.navigation .navigation-title{margin:0;flex-shrink:0;font-family:sf pro display,helvetica neue,segoe ui,arial,sans-serif;font-weight:700;font-size:3rem;letter-spacing:-.02em;text-transform:none;background:linear-gradient(135deg,#5d47ff 0%,#c169d7 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:all .3s ease}.navigation .navigation-list{float:none !important;display:flex;align-items:center;margin:0}.navigation .navigation-list .navigation-item{float:none !important;display:flex;align-items:center;white-space:nowrap}.navigation .navigation-list .navigation-item a,.navigation .navigation-list .navigation-item span{white-space:nowrap;margin-left:.8rem;margin-right:.8rem}@media only screen and (max-width:768px){.navigation .container{flex-direction:column;align-items:flex-start;padding:0 1rem;min-height:auto}.navigation .navigation-title{font-size:2rem !important;margin-bottom:.5rem}.navigation .navigation-list{width:100%;flex-wrap:wrap}.navigation .navigation-list .navigation-item{white-space:normal !important}.navigation .navigation-list .navigation-item a,.navigation .navigation-list .navigation-item span{white-space:normal !important;margin:.2rem .5rem}}.projects-gallery{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;margin:2rem 0}.projects-gallery .project-card{background:var(--background-secondary,#f8f9fa);border:1px solid var(--border-color,#e1e4e8);border-radius:12px;padding:1.5rem;transition:all .3s ease;box-shadow:0 2px 8px rgba(0,0,0,.1);display:flex;flex-direction:column;position:relative;overflow:hidden}.projects-gallery .project-card:hover{transform:translateY(0);box-shadow:0 8px 25px rgba(0,0,0,.15);border-color:var(--accent,#007acc)}.projects-gallery .project-card.tall{min-height:500px}.projects-gallery .project-card.tall .project-image{height:200px;object-fit:cover}.projects-gallery .project-card.medium{min-height:400px}.projects-gallery .project-card.medium .project-image{height:150px;object-fit:cover}.projects-gallery .project-card.short{min-height:350px}.projects-gallery .project-card.short .project-image{height:120px;object-fit:cover}.projects-gallery .project-card.methodology-card{grid-column:span 2;min-height:300px;background:linear-gradient(135deg,var(--accent-alpha,rgba(0,122,204,5%)),transparent)}.projects-gallery .project-card.cta-card{grid-column:span 3;text-align:center;background:linear-gradient(135deg,var(--accent-alpha,rgba(0,122,204,.1)),transparent);min-height:250px;display:flex;align-items:center;justify-content:center}.projects-gallery .project-card .project-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.projects-gallery .project-card .project-header .project-title{margin:0 0 .5rem;color:var(--text-color,#333)}.projects-gallery .project-card .project-header .project-context{margin:.25rem 0;color:var(--text-color-secondary,#666)}.projects-gallery .project-card .project-image{width:100%;border-radius:8px;margin:1rem 0;transition:transform .3s ease}.projects-gallery .project-card .tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.projects-gallery .project-card .tech-stack .tech-stack-icons .tech-icon img{height:64px;filter:none;transition:filter .3s ease}.colorscheme-dark .projects-gallery .project-card,.colorscheme-auto .projects-gallery .project-card{background:var(--background-secondary,#1e1e1e);border-color:var(--border-color,#333)}.colorscheme-dark .projects-gallery .project-card .project-header .project-title,.colorscheme-auto .projects-gallery .project-card .project-header .project-title{color:var(--text-color,#fff)}.colorscheme-dark .projects-gallery .project-card .project-header .project-context,.colorscheme-auto .projects-gallery .project-card .project-header .project-context{color:var(--text-color-secondary,#ccc)}.colorscheme-dark .tech-stack-icons .tech-icon,.colorscheme-auto .tech-stack-icons .tech-icon{filter:brightness(.5)saturate(0)invert(1)}.colorscheme-dark .tech-stack-icons .tech-text,.colorscheme-auto .tech-stack-icons .tech-text{background:var(--background-secondary,#2a2a2a);color:#fff}a{color:#212121 !important}a:hover,a:focus{color:#424242 !important}.colorscheme-dark a,.colorscheme-auto a{color:#e0e0e0 !important}.colorscheme-dark a:hover,.colorscheme-dark a:focus,.colorscheme-auto a:hover,.colorscheme-auto a:focus{color:#bdbdbd !important}@media(prefers-color-scheme:light){.colorscheme-auto a{color:#212121 !important}.colorscheme-auto a:hover,.colorscheme-auto a:focus{color:#424242 !important}.colorscheme-auto .tech-stack-icons .tech-icon img{filter:none}.colorscheme-auto .tech-stack-icons .tech-text{background:var(--background-secondary,#f5f5f5);color:#000}}@media(prefers-color-scheme:dark){.colorscheme-auto a{color:#e0e0e0 !important}.colorscheme-auto a:hover,.colorscheme-auto a:focus{color:#bdbdbd !important}.colorscheme-auto .tech-stack-icons .tech-icon img{filter:brightness(0)invert(1)}.colorscheme-auto .tech-stack-icons .tech-text{background:var(--background-secondary,#2a2a2a);color:#fff}}@media only screen and (max-width:1024px){.projects-gallery{grid-template-columns:repeat(1,1fr)}.projects-gallery .project-card.methodology-card{grid-column:span 2}.projects-gallery .project-card.cta-card{grid-column:span 2}}@media only screen and (max-width:768px){.projects-gallery{grid-template-columns:1fr;gap:1rem}.projects-gallery .project-card{min-height:auto !important}.projects-gallery .project-card.methodology-card,.projects-gallery .project-card.cta-card{grid-column:span 1}.projects-gallery .project-card .project-image{height:auto !important;max-height:200px}}.blog-posts .blog-post-preview{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.blog-posts .blog-post-preview:last-child{border-bottom:none}.blog-posts .blog-post-preview h3{margin:0 0 .5rem}.blog-posts .blog-post-preview h3 a{color:var(--accent);text-decoration:none}.blog-posts .blog-post-preview h3 a:hover{text-decoration:underline}.blog-posts .blog-post-preview .post-meta{font-size:.9rem;color:var(--secondary-text);margin-bottom:.75rem}.blog-posts .blog-post-preview .post-meta .tags{margin-left:1rem}.blog-posts .blog-post-preview .post-meta .tags .tag{background:var(--accent);color:#fff;padding:.1rem .4rem;border-radius:3px;font-size:.8rem;margin-right:.3rem}.blog-posts .blog-post-preview p{margin:0 0 .5rem;line-height:1.6}.blog-posts .blog-post-preview .read-more{color:var(--accent);text-decoration:none;font-weight:500}.blog-posts .blog-post-preview .read-more:hover{text-decoration:underline}.post-meta{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.post-meta .post-date{color:var(--secondary-text);font-size:1.2rem}.post-meta .post-tags{margin-left:1rem}.post-meta .post-tags a{background:var(--accent);color:#fff;padding:.2rem .5rem;border-radius:3px;text-decoration:none;font-size:1.6rem;margin-right:.3rem}.post-meta .post-tags a:hover{opacity:.8}.post-description{font-style:italic;color:var(--secondary-text);margin-bottom:1rem}.post-navigation{display:flex;justify-content:space-between;margin:3rem 0 2rem;padding:1rem 0;border-top:1px solid var(--border-color)}.post-navigation .post-nav-item{flex:1}.post-navigation .post-nav-item:last-child{text-align:right}.post-navigation .post-nav-item .post-nav-link{color:var(--accent);text-decoration:none}.post-navigation .post-nav-item .post-nav-link:hover{text-decoration:underline}.back-to-blog{margin-top:2rem}.back-to-blog a{color:var(--accent);text-decoration:none}.back-to-blog a:hover{text-decoration:underline}.posts .post.on-list{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.posts .post.on-list:last-child{border-bottom:none}.posts .post.on-list .post-title{margin:0 0 .5rem}.posts .post.on-list .post-title a{color:var(--text-color);text-decoration:none}.posts .post.on-list .post-title a:hover{color:var(--accent)}.posts .post.on-list .post-content{margin-top:1rem}.posts .post.on-list .post-content .read-more{color:var(--accent);text-decoration:none;font-weight:500}.posts .post.on-list .post-content .read-more:hover{text-decoration:underline}.tech-stack-icons{display:flex;justify-content:space-around;flex-wrap:wrap;align-items:center}.tech-stack-icons .tech-icon{padding:4px;height:48px;display:flex;align-items:center;justify-content:center}.tech-stack-icons .tech-icon img{height:100%;max-width:40px;max-height:40px;object-fit:contain;filter:none;transition:filter .3s ease}.tech-stack-icons .tech-text{font-size:.8rem;padding:.3rem .6rem;background:var(--background-secondary,#f5f5f5);border-radius:6px;color:var(--text-color,#000);margin:20px;text-align:center;min-width:60px}.download-button-wrapper{text-align:center;margin:2rem 0}.download-button{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff !important;text-decoration:none !important;border-radius:50px;font-weight:600;font-size:2rem;transition:all .3s ease;box-shadow:0 4px 15px rgba(102,126,234,.4);position:relative;overflow:hidden}.download-button:active{transform:translateY(0)}.download-button .download-icon{font-size:1.3rem}.download-button .download-text{white-space:nowrap}.content article p{text-align:unset}.post-simple{display:flex;align-items:center;padding:.75rem 0;border-bottom:1px solid #e1e5e9}.post-simple .post-date{flex-shrink:0;width:100px;font-size:.9rem;color:#666}.post-simple .post-title{flex:1;margin-left:1.5rem}.post-simple .post-title a{text-decoration:none;font-weight:500;color:inherit}.post-simple .post-title a:hover{color:#0366d6}.post-simple:last-child{border-bottom:none}.colorscheme-dark .post-simple,.colorscheme-auto .post-simple{border-bottom-color:#444}.colorscheme-dark .post-simple .post-date,.colorscheme-auto .post-simple .post-date{color:#999}.colorscheme-dark .post-simple .post-title a:hover,.colorscheme-auto .post-simple .post-title a:hover{color:#58a6ff}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:1.5rem;margin:2rem 0;padding:1rem 0}.stats-grid .stat-card{background:var(--background-secondary,#f8f9fa);border:2px solid var(--border-color,#e1e4e8);border-radius:16px;padding:2rem 1.5rem;text-align:center;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.1);position:relative;overflow:hidden}.stats-grid .stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.stats-grid .stat-card .stat-number{font-size:3rem;font-weight:800;color:var(--accent,#667eea);margin-bottom:.5rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.stats-grid .stat-card .stat-label{font-size:2rem;color:var(--text-color-secondary,#666);font-weight:500;line-height:1.4}.colorscheme-dark .stats-grid .stat-card,.colorscheme-auto .stats-grid .stat-card{background:var(--background-secondary,#1e1e1e);border-color:var(--border-color,#333)}.colorscheme-dark .stats-grid .stat-card .stat-label,.colorscheme-auto .stats-grid .stat-card .stat-label{color:var(--text-color-secondary,#ccc)}@media only screen and (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.stats-grid .stat-card{padding:1.5rem 1rem}.stats-grid .stat-card .stat-number{font-size:2.5rem}.stats-grid .stat-card .stat-label{font-size:.9rem}}@media only screen and (max-width:480px){.stats-grid{grid-template-columns:1fr}.stats-grid .stat-card .stat-number{font-size:2rem}}.page-layout{position:relative;width:100%}.main-content{width:100%}.toc-sidebar{position:fixed;right:calc((100vw - 90rem)/2 - 280px);top:14rem;width:260px;max-height:calc(100vh - 8rem);overflow-y:auto;z-index:10}.toc-sidebar .toc-sticky{background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-radius:8px;padding:1rem;box-shadow:0 2px 10px rgba(0,0,0,.1)}.toc-sidebar .toc-header{margin-bottom:1rem}.toc-sidebar .toc-header h3{margin:0;font-size:1.4rem;font-weight:400;color:inherit}.toc-sidebar .toc-content #TableOfContents{margin:0}.toc-sidebar .toc-content #TableOfContents>ul{margin:0;padding:0;list-style:none}.toc-sidebar .toc-content #TableOfContents>ul>li{margin:.5rem 0}.toc-sidebar .toc-content #TableOfContents>ul>li>a{display:block;padding:.25rem 0;color:inherit;text-decoration:none;font-size:1.8rem;line-height:1.5}.toc-sidebar .toc-content #TableOfContents>ul>li>a:hover{text-decoration:underline}.toc-sidebar .toc-content #TableOfContents>ul>li ul{margin:.25rem 0;padding:0;list-style:none;margin-left:1rem}.toc-sidebar .toc-content #TableOfContents>ul>li ul li{margin:.25rem 0}.toc-sidebar .toc-content #TableOfContents>ul>li ul li a{display:block;padding:.25rem 0;color:#666;text-decoration:none;font-size:1.5rem;line-height:1.4}.toc-sidebar .toc-content #TableOfContents>ul>li ul li a:hover{text-decoration:underline}.toc-sidebar .toc-content #TableOfContents>ul>li ul li ul{margin-left:1rem}.toc-sidebar .toc-content #TableOfContents>ul>li ul li ul li a{font-size:.85rem;color:#888}@media(max-width:1280px){.toc-sidebar{display:none}}@media(max-width:768px){.toc-sidebar{display:none !important}}@media(prefers-color-scheme:dark){.toc-sidebar .toc-sticky{background:0 0}}.dark .toc-sidebar .toc-sticky{background:0 0}html{scroll-behavior:smooth}.client-logos-bigger .tech-icon{height:80px}.differentiator-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:2rem 0;padding:1rem 0}.differentiator-cards .differentiator-card{background:var(--background-secondary,#f8f9fa);border:2px solid var(--border-color,#e1e4e8);border-radius:16px;padding:2rem 1.5rem;text-align:center;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.1);position:relative;overflow:hidden}.differentiator-cards .differentiator-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.differentiator-cards .differentiator-card .card-icon{width:60px;height:60px;margin:1rem auto;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.differentiator-cards .differentiator-card .card-title{font-weight:700;color:var(--accent,#667eea);margin-bottom:1rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.3}.differentiator-cards .differentiator-card .card-content{color:var(--text-color-secondary,#666);line-height:1.5;text-align:left}.differentiator-cards .differentiator-card .card-content p{margin-bottom:.8rem}.differentiator-cards .differentiator-card .card-content ul{list-style:none;padding:0;margin:0}.differentiator-cards .differentiator-card .card-content ul li{margin-bottom:.5rem;position:relative;padding-left:1rem}.differentiator-cards .differentiator-card .card-content ul li:before{content:"•";position:absolute;left:0;color:#667eea}.differentiator-cards .differentiator-card .card-content ul li strong{color:var(--text-color,#333)}.colorscheme-dark .differentiator-cards .differentiator-card,.colorscheme-auto .differentiator-cards .differentiator-card{background:var(--background-secondary,#1e1e1e);border-color:var(--border-color,#333)}.colorscheme-dark .differentiator-cards .differentiator-card .card-icon img,.colorscheme-auto .differentiator-cards .differentiator-card .card-icon img{filter:invert(1)}.colorscheme-dark .differentiator-cards .differentiator-card .card-content,.colorscheme-auto .differentiator-cards .differentiator-card .card-content{color:var(--text-color-secondary,#ccc)}.colorscheme-dark .differentiator-cards .differentiator-card .card-content strong,.colorscheme-auto .differentiator-cards .differentiator-card .card-content strong{color:var(--text-color,#fff)}@media only screen and (max-width:768px){.differentiator-cards{grid-template-columns:1fr;gap:1rem}.differentiator-cards .differentiator-card{padding:1.5rem 1rem}.differentiator-cards .differentiator-card .card-icon{width:50px;height:50px;font-size:1.2rem}.differentiator-cards .differentiator-card .card-title{font-size:1.1rem}}@media only screen and (max-width:768px){html,body{overflow-x:hidden;max-width:100vw}*{max-width:100%;box-sizing:border-box}.container{max-width:100% !important;padding-left:1rem !important;padding-right:1rem !important}.wrapper{max-width:100vw;overflow-x:hidden}}@media only screen and (max-width:768px){.navigation .container{position:relative}.navigation .menu-button{position:absolute !important;top:50%;right:1rem;transform:translateY(-50%);z-index:1000}.navigation .menu-button i{font-size:2.4rem}.navigation .navigation-list{position:fixed !important;top:0 !important;left:0 !important;width:100vw !important;height:100vh !important;background-color:#fafafa !important;z-index:999 !important;display:flex !important;flex-direction:column !important;justify-content:center !important;align-items:center !important;padding:2rem !important;border:none !important}.navigation .navigation-list .navigation-item{margin:1.5rem 0 !important}.navigation .navigation-list .navigation-item a,.navigation .navigation-list .navigation-item span{font-size:3rem !important;font-weight:700 !important;line-height:1.2 !important;margin:0 !important;padding:1rem !important;display:block !important;text-align:center !important;transition:all .3s ease !important;color:inherit !important}.navigation .navigation-list .navigation-item a:hover,.navigation .navigation-list .navigation-item span:hover{color:var(--link-color,#007acc) !important;transform:scale(1.1) !important}.navigation .navigation-list .menu-separator{border-top:2px solid !important;margin:2rem 4rem !important;width:80% !important}.navigation .navigation-list .menu-separator span{display:none !important}.navigation #menu-toggle:checked+.menu-button{position:absolute !important;top:50% !important;right:1rem !important;transform:translateY(-50%) !important;z-index:1001 !important;background:rgba(0,0,0,.1) !important;border-radius:50% !important;width:5rem !important;height:5rem !important;display:flex !important;align-items:center !important;justify-content:center !important}.navigation #menu-toggle:checked+.menu-button i{transition:none !important}}@media only screen and (max-width:768px){.colorscheme-dark .navigation .navigation-list,.colorscheme-auto .navigation .navigation-list{background-color:#212121 !important}}