﻿:root{--primary: hsl(var(--sl-hsl-primary));--primary-dark: hsl(var(--sl-hsl-primary));--primary-light: hsl(var(--sl-hsl-accent-coral));--secondary: hsl(var(--sl-hsl-accent));--secondary-dark: hsl(var(--sl-hsl-accent));--secondary-light: hsl(var(--sl-hsl-accent-lavender));--bg-primary: hsl(var(--sl-hsl-background));--bg-secondary: hsl(var(--sl-hsl-muted));--bg-card: hsl(var(--sl-hsl-card));--text-primary: hsl(var(--sl-hsl-foreground));--text-secondary: hsl(var(--sl-hsl-muted-foreground));--text-muted: hsl(var(--sl-hsl-muted-foreground));--border-color: hsl(var(--sl-hsl-border));--gradient-primary: linear-gradient(135deg, hsl(var(--sl-hsl-primary)) 0%, hsl(var(--sl-hsl-accent-coral)) 100%);--gradient-secondary: linear-gradient(135deg, hsl(var(--sl-hsl-accent)) 0%, hsl(var(--sl-hsl-accent-lavender)) 100%);--shadow-sm: var(--sl-shadow-sm);--shadow: var(--sl-shadow-sm);--shadow-md: var(--sl-shadow-md);--shadow-lg: var(--sl-shadow-lg)}.dark{--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.3);--shadow: 0 1px 3px 0 rgb(0 0 0 / 0.4), 0 1px 2px -1px rgb(0 0 0 / 0.4);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.4);--gradient-overlay: linear-gradient( 135deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.05) 100% )}html{width:100%;height:100%;padding:0;margin:0}body{width:100%;height:100%;min-height:100vh;padding:0;margin:0;font-family:"Lato",sans-serif;line-height:1.6;font-size:16px;background:var(--bg-primary);display:flex;flex-direction:column;transition:background-color .3s ease}body::before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:url(/images/bg.svg) no-repeat center center fixed;background-size:cover;opacity:.05;z-index:-2;pointer-events:none}.dark body::before{opacity:.03}.container{width:100%;max-width:1440px;margin:0 auto;padding:0 2rem}@media (min-width: 1025px) and (max-width: 1280px){.container{max-width:1232px;width:calc(100% - 3rem);padding:0 1.5rem}}@media (min-width: 768px) and (max-width: 1024px){.container{max-width:976px;padding:0 1.5rem}}@media (max-width: 767px){.container{max-width:100%;width:calc(100% - 2rem);padding:0 1rem}}#particles-js{position:absolute;width:100%;height:99.5%;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-color:rgba(0,0,0,0);z-index:-1;opacity:.3}.dark #particles-js{opacity:.15}.main{flex:1;padding:2rem 0}.global-header{position:sticky;top:0;z-index:100;padding:1rem 0;backdrop-filter:blur(10px);background:hsl(var(--sl-hsl-background)/.8);transition:all .3s ease}.global-header .container{display:flex;align-items:center;gap:2rem}@media (max-width: 767px){.global-header .container{gap:1rem;justify-content:space-between}}.global-header h1{margin:0;font-size:var(--sl-font-size-2xl);flex-shrink:0}.header-logo{color:var(--text-primary);text-decoration:none;font-weight:700;font-size:var(--sl-font-size-xl);transition:color .2s ease}.header-logo:hover{color:var(--primary)}.header-nav{display:flex;gap:2rem;align-items:center;margin:0;padding:0;flex:1;justify-content:center}@media (max-width: 767px){.header-nav{display:none}}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:all .2s ease;position:relative;padding:.5rem 0}.nav-link::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--primary);transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.nav-link:hover{color:var(--text-primary)}.nav-link:hover::after{transform:scaleX(1);transform-origin:left}.nav-link--active{color:var(--text-primary)}.nav-link--active::after{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:1rem;flex-shrink:0;margin-left:auto}@media (max-width: 767px){.header-actions{margin-left:0}.header-actions .language-selector{display:none}}.theme-toggle{background:none;border:none;padding:.5rem;color:var(--text-secondary);cursor:pointer;transition:color .2s ease;display:flex;align-items:center;justify-content:center}.theme-toggle:hover{color:var(--text-primary)}.theme-toggle__icon{width:20px;height:20px;display:none}.dark .theme-toggle__icon--sun{display:block}.theme-toggle__icon--moon{display:block}.dark .theme-toggle__icon--moon{display:none}.mobile-menu-toggle{background:none;border:none;padding:.5rem;color:var(--text-secondary);cursor:pointer;transition:color .2s ease;display:none}@media (max-width: 767px){.mobile-menu-toggle{display:flex;align-items:center;justify-content:center}}.mobile-menu-toggle:hover{color:var(--text-primary)}.mobile-menu-toggle svg{width:24px;height:24px}.footer{padding:2rem 0;background:hsl(var(--sl-hsl-background)/.8);backdrop-filter:blur(10px);border-top:1px solid var(--border-color);margin-top:4rem}.footer .container{display:flex;flex-direction:column;gap:2rem;align-items:center;text-align:center}.footer-nav__list{display:flex;gap:1.5rem;list-style:none;padding:0;margin:0;flex-wrap:wrap;justify-content:center}.footer-nav__link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .2s ease;position:relative;padding:.5rem 0}.footer-nav__link::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--primary);transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.footer-nav__link:hover{color:var(--text-primary)}.footer-nav__link:hover::after{transform:scaleX(1);transform-origin:left}.footer-credits{color:var(--text-secondary);font-size:.875rem}.footer-credits p{margin:0}.hero{position:relative;padding:6rem 0;background:hsl(var(--sl-hsl-background)/.3);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:1rem;overflow:hidden;margin:2rem 0;box-shadow:0 8px 32px 0 rgba(0,0,0,.1)}.hero__content{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:center;padding:0 3rem}@media (min-width: 1025px) and (max-width: 1280px){.hero__content{gap:3rem;padding:0 2rem}}@media (min-width: 768px) and (max-width: 1024px){.hero__content{gap:2.5rem;grid-template-columns:1.1fr 1fr;padding:0 2rem}}@media (max-width: 767px){.hero__content{grid-template-columns:1fr;gap:2rem;text-align:center;padding:0 1.5rem}}.hero__text{animation:fadeInUp .8s ease-out}.hero__title{font-size:var(--sl-font-size-6xl);margin-bottom:1.5rem}.hero__title span{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}@media (min-width: 1025px) and (max-width: 1280px){.hero__title{font-size:var(--sl-font-size-5xl)}}@media (min-width: 768px) and (max-width: 1024px){.hero__title{font-size:var(--sl-font-size-4xl)}}@media (max-width: 767px){.hero__title{font-size:var(--sl-font-size-3xl)}}.hero__subtitle{font-size:var(--sl-font-size-xl);color:var(--text-secondary);margin-bottom:2rem;line-height:var(--sl-line-height-relaxed)}@media (min-width: 768px) and (max-width: 1024px){.hero__subtitle{font-size:var(--sl-font-size-lg)}}@media (max-width: 767px){.hero__subtitle{font-size:var(--sl-font-size-base)}}.hero__highlights{list-style:none;padding:0;margin:2rem 0}.hero__highlight-item{display:flex;align-items:center;margin-bottom:1rem;font-size:var(--sl-font-size-lg);color:var(--text-primary);animation:fadeInLeft .6s ease-out;animation-fill-mode:both}.hero__highlight-item:nth-child(1){animation-delay:.1s}.hero__highlight-item:nth-child(2){animation-delay:.2s}.hero__highlight-item:nth-child(3){animation-delay:.3s}.hero__highlight-item:nth-child(4){animation-delay:.4s}.hero__highlight-item:nth-child(5){animation-delay:.5s}.hero__highlight-item::before{content:"→";margin-right:1rem;color:var(--primary);font-weight:bold}@media (min-width: 768px) and (max-width: 1024px){.hero__highlight-item{font-size:var(--sl-font-size-base);margin-bottom:.875rem}}@media (max-width: 767px){.hero__highlight-item{font-size:var(--sl-font-size-base);justify-content:center;margin-bottom:.75rem}}.hero__image{position:relative;animation:fadeInRight .8s ease-out}.hero__image::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:100%;height:100%;background:radial-gradient(circle, rgba(var(--primary), .1) 0%, rgba(0,0,0,0) 70%);z-index:-1}.hero__illustration{width:100%;height:auto;max-height:500px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.1));transform-origin:center;animation:float 6s ease-in-out infinite}.hero__cta{display:flex;gap:1rem;margin-top:2rem}@media (max-width: 767px){.hero__cta{justify-content:center}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes float{0%, 100%{transform:translateY(0)}50%{transform:translateY(-20px)}}.mobile-menu{position:fixed;top:0;left:0;width:100%;height:100%;background:hsl(var(--sl-hsl-background)/.95);backdrop-filter:blur(10px);z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.mobile-menu.is-active{opacity:1;visibility:visible}.mobile-menu.is-active .mobile-menu__content{transform:translateY(0);opacity:1}.mobile-menu__content{width:100%;max-width:320px;padding:2rem;position:relative;transform:translateY(20px);opacity:0;transition:all .3s ease .1s}.mobile-menu__close{position:absolute;top:-3rem;right:0;background:none;border:none;color:var(--text-secondary);padding:.5rem;cursor:pointer;transition:color .2s ease;font-size:1rem}.mobile-menu__close:hover{color:var(--text-primary)}.mobile-menu__nav{display:flex;flex-direction:column;gap:1.5rem;text-align:center}.mobile-menu__link{color:var(--text-secondary);text-decoration:none;font-size:1.5rem;font-weight:500;padding:.5rem;transition:all .2s ease;position:relative;display:inline-block}.mobile-menu__link::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--primary);transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.mobile-menu__link:hover{color:var(--text-primary)}.mobile-menu__link:hover::after{transform:scaleX(1);transform-origin:left}.mobile-menu__link--active{color:var(--text-primary)}.mobile-menu__link--active::after{transform:scaleX(1)}.mobile-menu__languages{display:flex;justify-content:center;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.mobile-menu__lang{color:var(--text-secondary);text-decoration:none;font-size:.875rem;padding:.5rem .75rem;border-radius:.375rem;transition:all .2s ease}.mobile-menu__lang:hover{background:var(--bg-secondary);color:var(--text-primary)}.mobile-menu__lang--active{background:var(--primary);color:#fff}.mobile-menu__lang--active:hover{background:var(--primary-hover);color:#fff}@media (max-width: 767px){.mobile-menu-toggle__label{display:none}}.button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;font-size:1rem;line-height:1.5;text-decoration:none;transition:all .2s ease;cursor:pointer;border:none;position:relative;overflow:hidden}.button::after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle, #fff 10%, rgba(0,0,0,0) 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10, 10);opacity:0;transition:transform .3s,opacity .5s}.button:active::after{transform:scale(0, 0);opacity:.3;transition:0s}.button--primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.button--primary:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);filter:brightness(110%)}.button--primary:active{transform:translateY(0)}.dark .button--primary{box-shadow:0 4px 12px rgba(37,99,235,.3)}.dark .button--primary:hover{box-shadow:0 6px 16px rgba(37,99,235,.4)}.button--secondary{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow);border:1px solid var(--border-color)}.button--secondary:hover{background:var(--bg-secondary);box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--primary)}.button--secondary:active{transform:translateY(0)}.dark .button--secondary{background:var(--bg-secondary);border-color:var(--border-color)}.dark .button--secondary:hover{background:var(--bg-card);border-color:var(--primary)}.button--outline{background:rgba(0,0,0,0);color:var(--primary);border:2px solid var(--primary)}.button--outline:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.button--outline:active{transform:translateY(0)}.button--ghost{background:rgba(0,0,0,0);color:var(--text-primary)}.button--ghost:hover{background:var(--bg-secondary);transform:translateY(-2px)}.button--ghost:active{transform:translateY(0)}.dark .button--ghost{color:var(--text-secondary)}.dark .button--ghost:hover{color:var(--text-primary);background:var(--bg-card)}.button__icon{margin-right:.5rem;width:20px;height:20px}.button--small{padding:.5rem 1rem;font-size:.875rem}.button--large{padding:1rem 2rem;font-size:1.125rem}.button--full{width:100%}.button--loading{position:relative;cursor:wait;opacity:.8}.button--loading::before{content:"";position:absolute;width:20px;height:20px;border:2px solid rgba(0,0,0,0);border-top-color:currentColor;border-radius:50%;animation:button-loading .8s ease infinite}@keyframes button-loading{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.button-group{display:inline-flex;gap:.5rem}.button-group--vertical{flex-direction:column}.expertise-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:2rem;margin:4rem 0}@media (max-width: 767px){.expertise-grid{grid-template-columns:1fr}}.expertise-card{background:var(--bg-card);border-radius:1rem;padding:2rem;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease;position:relative;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.expertise-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);background:var(--bg-secondary)}.expertise-card:hover .expertise-card__icon{transform:scale(1.1);color:var(--primary);background:var(--bg-card)}.dark .expertise-card{background:var(--bg-card)}.dark .expertise-card:hover{background:var(--bg-secondary)}.expertise-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease}.expertise-card:hover::before{opacity:1}.expertise-card h3{font-size:var(--sl-font-size-xl);margin:1.5rem 0 1rem}.expertise-card p{color:var(--text-secondary);line-height:1.6;margin:0}.expertise-card__icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:12px;color:var(--text-secondary);transition:all .3s ease;border:1px solid var(--border-color)}.expertise-card__icon svg{width:24px;height:24px}.dark .expertise-card__icon{background:var(--bg-card);color:var(--text-primary)}.content-section{margin:4rem auto;padding:3rem;background:var(--bg-card);border-radius:1rem;box-shadow:var(--shadow)}.content-section h2{font-size:var(--sl-font-size-3xl);margin-bottom:1.5rem}.content-section p{color:var(--text-secondary);line-height:1.8;margin-bottom:1.5rem}.portfolio{padding:4rem 0}.portfolio__header{text-align:center;margin-bottom:4rem}.portfolio__title{font-size:var(--sl-font-size-5xl);margin-bottom:1rem}.portfolio__title span{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}@media (max-width: 767px){.portfolio__title{font-size:var(--sl-font-size-4xl)}}.portfolio__subtitle{font-size:var(--sl-font-size-xl);color:var(--text-secondary);max-width:600px;margin:0 auto}.portfolio__empty{text-align:center;padding:3rem;background:var(--bg-card);border-radius:1rem;color:var(--text-secondary);border:1px solid var(--border-color)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(350px, 1fr));gap:2rem;padding:1rem}@media (max-width: 767px){.portfolio-grid{grid-template-columns:1fr}}.project-card{background:var(--bg-card);border-radius:1rem;overflow:hidden;box-shadow:var(--shadow-md);transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease;border:1px solid var(--border-color)}.project-card:not(.project-card--single):hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--primary)}.project-card:not(.project-card--single):hover .project-card__image img{transform:scale(1.05)}.dark .project-card:hover{background:var(--bg-secondary)}.project-card--single{max-width:900px;margin:0 auto;transform:none}.project-card--single .project-card__image{height:0;padding-bottom:56.25%;position:relative}.project-card--single .project-card__image img{position:absolute;top:0;left:0;width:100%;height:100%}.project-card--single .project-card__content{padding:2rem}.project-card--single .project-card__title{font-size:var(--sl-font-size-4xl);margin-bottom:1.5rem}@media (max-width: 767px){.project-card--single .project-card__title{font-size:var(--sl-font-size-3xl)}}.project-card--single .project-card__description{font-size:var(--sl-font-size-lg);margin-bottom:2rem}.project-card--single .project-card__tech{margin-bottom:2rem}.project-card--single .project-card__full-description{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color);color:var(--text-secondary);line-height:1.8}.project-card--single .project-card__full-description h2{font-size:var(--sl-font-size-3xl);margin:2rem 0 1rem}.project-card--single .project-card__full-description h3{font-size:var(--sl-font-size-2xl);margin:1.5rem 0 1rem}.project-card--single .project-card__full-description p{margin-bottom:1.5rem}.project-card--single .project-card__full-description ul,.project-card--single .project-card__full-description ol{margin:1.5rem 0;padding-left:2rem}.project-card--single .project-card__full-description li{margin-bottom:.5rem}.project-card--single .project-card__full-description code{background:var(--bg-secondary);padding:.2rem .4rem;border-radius:.25rem;font-size:.9em;color:var(--primary)}.project-card--single .project-card__full-description pre{background:var(--bg-secondary);padding:1rem;border-radius:.5rem;overflow-x:auto;margin:1.5rem 0;border:1px solid var(--border-color)}.project-card--single .project-card__full-description pre code{background:none;padding:0;color:var(--text-primary)}.project-card__image{width:100%;height:0;padding-bottom:56.25%;overflow:hidden;position:relative}.project-card__image::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,.2) 100%)}.project-card__image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-card__content{padding:1.5rem}.project-card__title{font-size:var(--sl-font-size-2xl);margin-bottom:1rem}.project-card__description{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.project-card__tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.project-card__links{display:flex;gap:1rem}.tech-tag{background:var(--bg-secondary);color:var(--text-secondary);padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500;transition:all .2s ease;border:1px solid var(--border-color)}.tech-tag:hover{background:var(--primary);color:#fff;transform:translateY(-2px);border-color:var(--primary)}.dark .tech-tag{background:var(--bg-card)}.dark .tech-tag:hover{background:var(--primary);color:#fff}.portfolio-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;margin-bottom:3rem}.portfolio-filters__button{background:var(--bg-secondary);color:var(--text-secondary);padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;border:none;cursor:pointer;transition:all .2s ease}.portfolio-filters__button:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.portfolio-filters__button--active{background:var(--primary);color:#fff}.portfolio-pagination{display:flex;justify-content:center;gap:.5rem;margin-top:3rem}.portfolio-pagination__button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;background:var(--bg-secondary);color:var(--text-secondary);border:none;cursor:pointer;transition:all .2s ease}.portfolio-pagination__button:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.portfolio-pagination__button--active{background:var(--primary);color:#fff}.article{padding:3rem 0}@media (max-width: 767px){.article{padding:2rem 0}}.article__nav{margin-bottom:2rem}.article__back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-primary);text-decoration:none;font-weight:600;transition:color .3s ease-in-out}.article__back-link:hover{color:var(--primary-light)}.article__back-link svg{width:20px;height:20px}.article__header{margin-bottom:3rem}@media (max-width: 767px){.article__header{margin-bottom:2rem}}.article__title{font-size:var(--sl-font-size-4xl);margin-bottom:1.5rem}@media (min-width: 768px) and (max-width: 1024px){.article__title{font-size:var(--sl-font-size-3xl)}}@media (max-width: 767px){.article__title{font-size:var(--sl-font-size-2xl)}}.article__date{display:block;font-size:.875rem;color:var(--text-secondary);margin-bottom:2rem}.article__image{width:100%;max-height:400px;overflow:hidden;border-radius:8px}.article__image img{width:100%;height:100%;object-fit:cover;display:block}.article__content{max-width:800px;margin:0 auto;color:var(--text-primary);text-align:justify}.article__content h2,.article__content h3,.article__content h4,.article__content h5,.article__content h6{margin:2rem 0 1.5rem}.article__content h2{font-size:var(--sl-font-size-3xl)}.article__content h3{font-size:var(--sl-font-size-2xl)}.article__content h4{font-size:var(--sl-font-size-xl)}.article__content p{margin-bottom:1.5rem;line-height:1.8}.article__content a{color:var(--primary);text-decoration:none;transition:color .3s ease-in-out}.article__content a:hover{color:var(--primary-light)}.article__content ul,.article__content ol{margin-bottom:1.5rem;padding-left:2rem}.article__content img{max-width:100%;height:auto;margin:2rem 0;border-radius:8px}.article__content code{background-color:var(--bg-secondary);padding:2px 6px;border-radius:4px;font-size:.9em}.article__content pre{background-color:var(--bg-secondary);padding:1.5rem;border-radius:8px;overflow-x:auto;margin:2rem 0}.article__content pre code{background-color:rgba(0,0,0,0);padding:0}.article__content blockquote{border-left:4px solid var(--primary);margin:2rem 0;padding:1.5rem 2rem;background-color:var(--bg-secondary);border-radius:8px}.article__content blockquote p:last-child{margin-bottom:0}.blog{padding:4rem 0}.blog__header{text-align:center;margin-bottom:3rem}.blog__title{font-size:var(--sl-font-size-5xl);margin-bottom:1rem}.blog__title span{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}@media (max-width: 767px){.blog__title{font-size:var(--sl-font-size-4xl)}}.blog__subtitle{font-size:var(--sl-font-size-xl);color:var(--text-secondary);max-width:600px;margin:0 auto}.blog-categories{display:block;text-align:center;margin-bottom:3rem}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2rem;padding:1rem}@media (max-width: 767px){.blog-grid{grid-template-columns:1fr}}.blog-card{background:var(--bg-card);border-radius:1rem;padding:0;overflow:hidden;display:flex;flex-direction:column;height:500px;box-shadow:var(--shadow-md);transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease;animation:fadeIn .5s ease forwards;border:1px solid var(--border-color)}.blog-card__image{width:100%;height:200px;overflow:hidden;flex-shrink:0}.blog-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.blog-card:hover .blog-card__image img{transform:scale(1.05)}.blog-card__content{padding:1.5rem 2rem;flex-grow:1;display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);background:var(--bg-secondary);border-color:var(--primary)}.dark .blog-card{background:var(--bg-card)}.dark .blog-card:hover{background:var(--bg-secondary)}.blog-card__meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.875rem;color:var(--text-secondary);height:24px}.blog-card__categories{display:flex;gap:.5rem}.blog-card__title{font-size:var(--sl-font-size-2xl);margin-bottom:1rem;height:60px;overflow:hidden}.blog-card__title a{color:var(--text-primary);text-decoration:none;transition:color .2s ease;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.blog-card__title a:hover{color:var(--primary)}.blog-card__description{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem;height:72px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.blog-card__footer{margin-top:auto;padding:1.5rem 2rem;background:var(--bg-card);border-top:1px solid var(--border-color)}.category-tag{background:var(--bg-secondary);color:var(--text-secondary);padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500;transition:all .2s ease;border:1px solid var(--border-color)}.category-tag:hover{background:var(--primary);color:#fff;transform:translateY(-2px);border-color:var(--primary)}.category-tag[data-category=tech]{background:var(--primary);color:#fff;border-color:var(--primary)}.dark .category-tag[data-category=tech]{box-shadow:0 0 12px rgba(37,99,235,.2)}.category-tag[data-category=reflections]{background:var(--secondary);color:#fff;border-color:var(--secondary)}.dark .category-tag[data-category=reflections]{box-shadow:0 0 12px rgba(225,29,72,.2)}.dark .category-tag{background:var(--bg-card)}.dark .category-tag:hover{background:var(--primary);color:#fff}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.blog-post{max-width:800px;margin:0 auto;padding:2rem;background:var(--bg-card);border-radius:1rem;box-shadow:var(--shadow);border:1px solid var(--border-color)}.blog-post__header{margin-bottom:3rem;text-align:center}.blog-post__title{font-size:var(--sl-font-size-4xl);margin-bottom:1rem}@media (max-width: 767px){.blog-post__title{font-size:var(--sl-font-size-3xl)}}.blog-post__meta{color:var(--text-secondary);font-size:1rem}.blog-post__content{color:var(--text-primary);line-height:1.8}.blog-post__content h2{font-size:var(--sl-font-size-3xl);margin:2rem 0 1rem}.blog-post__content h3{font-size:var(--sl-font-size-2xl);margin:1.5rem 0 1rem}.blog-post__content p{margin-bottom:1.5rem;color:var(--text-secondary)}.blog-post__content code{background:var(--bg-secondary);padding:.2rem .4rem;border-radius:.25rem;font-size:.9em;color:var(--primary)}.blog-post__content pre{background:var(--bg-secondary);padding:1rem;border-radius:.5rem;overflow-x:auto;margin:1.5rem 0;border:1px solid var(--border-color)}.blog-post__content pre code{background:none;padding:0;color:var(--text-primary)}.blog-post__content blockquote{border-left:4px solid var(--primary);padding-left:1rem;margin:1.5rem 0;font-style:italic;color:var(--text-secondary);background:var(--bg-secondary);padding:1rem;border-radius:0 .5rem .5rem 0}.page-main__container{width:100%;max-width:1440px;margin:0 auto}.page{padding:3rem 0}.page.pt-0{padding-top:0}@media (max-width: 767px){.page{padding:2rem 0}}.page__content{max-width:800px;margin:0 auto;text-align:justify}.page__header{margin-bottom:3rem}@media (max-width: 767px){.page__header{margin-bottom:2rem}}.page__title{font-size:var(--sl-font-size-4xl)}@media (min-width: 768px) and (max-width: 1024px){.page__title{font-size:var(--sl-font-size-3xl)}}@media (max-width: 767px){.page__title{font-size:var(--sl-font-size-2xl)}}.page__body{color:var(--text-primary)}.page__body h2,.page__body h3,.page__body h4,.page__body h5,.page__body h6{margin:2rem 0 1.5rem}.page__body h2{font-size:var(--sl-font-size-3xl)}.page__body h3{font-size:var(--sl-font-size-2xl)}.page__body h4{font-size:var(--sl-font-size-xl)}.page__body p{margin-bottom:1.5rem;line-height:1.8}.page__body a{color:var(--primary);text-decoration:none;transition:color .3s ease-in-out}.page__body a:hover{color:var(--primary-light)}.page__body ul,.page__body ol{margin-bottom:1.5rem;padding-left:2rem}.page__body img{max-width:100%;height:auto;margin:2rem 0;border-radius:8px}.page__body code{background-color:var(--bg-secondary);padding:2px 6px;border-radius:4px;font-size:.9em}.page__body pre{background-color:var(--bg-secondary);padding:1.5rem;border-radius:8px;overflow-x:auto;margin:2rem 0}.page__body pre code{background-color:rgba(0,0,0,0);padding:0}.page__body blockquote{border-left:4px solid var(--primary);margin:2rem 0;padding:1.5rem 2rem;background-color:var(--bg-secondary);border-radius:8px}.page__body blockquote p:last-child{margin-bottom:0}.error-page{padding:3rem 0;min-height:60vh;display:flex;align-items:center}.error-page__content{text-align:center;max-width:600px;margin:0 auto}.error-page__title{font-size:var(--sl-font-size-4xl);margin-bottom:1.5rem}@media (max-width: 767px){.error-page__title{font-size:var(--sl-font-size-3xl)}}.error-page__message{font-size:1rem;color:var(--fg2);margin-bottom:2rem}.error-page__action{margin-top:2rem}.content-section{padding:3rem 0;color:var(--text-primary);width:100%}.content-section__inner{max-width:1440px;margin:0 auto;padding:0 2rem}@media (max-width: 767px){.content-section__inner{padding:0 1.5rem}}.content-section h1,.content-section h2,.content-section h3,.content-section h4,.content-section h5,.content-section h6{margin:2rem 0 1.5rem;text-align:left}.content-section h1{font-size:var(--sl-font-size-4xl);margin-bottom:2rem}@media (max-width: 767px){.content-section h1{font-size:var(--sl-font-size-3xl)}}.content-section h2{font-size:var(--sl-font-size-3xl);color:hsl(var(--sl-hsl-primary));margin-top:3rem}@media (max-width: 767px){.content-section h2{font-size:var(--sl-font-size-2xl)}}.content-section p{margin-bottom:1.5rem;line-height:1.8;color:var(--text-primary);text-align:left}.content-section ul,.content-section ol{margin-bottom:2rem;padding-left:2rem;color:var(--text-primary);text-align:left}.content-section ul li,.content-section ol li{margin-bottom:1rem;line-height:1.6}.content-section ul li::marker,.content-section ol li::marker{color:var(--primary)}.content-section a{color:var(--primary);text-decoration:none;transition:color .3s ease-in-out}.content-section a:hover{color:var(--primary-light)}.content-section strong,.content-section b{font-weight:600;color:var(--text-primary)}.content-section .expertise-section{margin:3rem 0}.content-section .expertise-section ul{list-style:none;padding-left:0}.content-section .expertise-section ul li{position:relative;padding-left:2rem;margin-bottom:1.5rem}.content-section .expertise-section ul li::before{content:"•";color:var(--primary);position:absolute;left:0;font-weight:bold}.page-main__container{width:100%;max-width:1440px;margin:0 auto}@media (max-width: 767px){.page-main__container{padding:0 1.5rem}}.page-main__content{margin-top:3rem}.comments-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color)}.comments-section h2{font-size:var(--sl-font-size-2xl);margin-bottom:2rem}.comment{margin-bottom:1.5rem;padding:1.5rem 1.5rem 1rem;border-radius:8px;background:var(--bg-card);box-shadow:var(--shadow-sm);transition:all .2s ease-in-out;position:relative}.comment:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;opacity:.4;transition:opacity .2s ease-in-out}.comment:hover{transform:translateX(2px);box-shadow:var(--shadow-md)}.comment:hover:before{opacity:.8}.comment.mastodon:before{background:var(--primary);background:linear-gradient(to bottom, var(--primary), rgba(0,0,0,0))}.comment.bluesky:before{background:var(--secondary);background:linear-gradient(to bottom, var(--secondary), rgba(0,0,0,0))}.comment[style*=margin-left]{margin-top:.5rem}.comment[style*=margin-left]:after{content:"";position:absolute;left:-15px;top:20px;width:15px;height:1px;background:var(--border-color);opacity:.3}.comment[style*=margin-left]:before{height:calc(100% - 15px);top:15px}@media (max-width: 767px){.comment{padding:1rem;margin-bottom:1rem}.comment[style*=margin-left]{margin-left:15px !important}}.comment-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:nowrap;margin-bottom:1rem}.comment-header-main{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:1rem}.comment-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;overflow:hidden}.comment-avatar img{width:100%;height:100%;object-fit:cover}.comment-meta{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:.5rem}.comment-author{font-weight:700;color:var(--text-primary);font-size:.875rem}.comment-platform{padding:.25rem .5rem;border-radius:4px;font-size:.875rem;text-transform:capitalize;font-weight:500}.mastodon .comment-platform{background:var(--primary);color:#fff}.bluesky .comment-platform{background:var(--secondary);color:#fff}.comment-time{color:var(--text-muted);font-size:.875rem}.comment-content{margin:1rem 0;line-height:1.6;color:var(--text-secondary);font-size:.875rem;text-align:left;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.comment-content p{margin:0;text-align:left}.comment-footer{padding-top:1rem;text-align:right}.comment-link{display:inline-block;font-size:.875rem;color:var(--text-muted);text-decoration:none;transition:color .2s ease-in-out}.comment-link:focus{outline:2px solid var(--primary);outline-offset:2px}.comment-link:focus:not(:focus-visible){outline:none}.comment-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.comment-link:hover{color:var(--primary)}.bluesky .comment-link:hover{color:var(--secondary)}#comments-container p{color:var(--text-muted);font-size:.875rem;text-align:left;padding:2rem;background:var(--bg-card);border-radius:8px;margin:1.5rem 0}img{max-width:100%;height:auto}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);display:inline-block}table{width:100%;border-collapse:collapse;margin-bottom:2rem}@media (max-width: 767px){table{font-size:.875rem}}th,td{border:1px solid var(--fg-muted);padding:1rem}@media (max-width: 767px){th,td{padding:.5rem}}@media (min-width: 1440px){body{font-size:1rem}.container{max-width:1440px}.mobile-menu-toggle{display:none}}.page-main{padding:2rem 0}.page-main__container{width:100%;max-width:1440px;margin:0 auto;padding:0}@media (max-width: 767px){.page-main__container{padding:0}}@media (min-width: 1025px) and (max-width: 1280px){.page-main__container{padding:0}}.page-main__content{width:100%;margin:3rem auto;color:var(--text-primary)}@media (max-width: 767px){.page-main__content{margin:2rem auto}}.page-main__header{margin-bottom:2rem}.page-main__title{font-size:var(--sl-font-size-4xl);margin-bottom:1.5rem}.page-main__body{font-size:1rem;line-height:1.8;color:var(--text-primary)}