@charset "UTF-8";.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.glightbox-button-hidden,.zoomed .gslide-description{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px 50px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s;transition:opacity .5s;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s;transition:opacity .5s;opacity:1}.greset{-webkit-transition:.3s;transition:.3s}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:.8s linear infinite lightboxLoader;animation:.8s linear infinite lightboxLoader;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:#0f3d81 solid 2px}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:.5s gfadeIn;animation:.5s gfadeIn}.gfadeOut{-webkit-animation:.5s gfadeOut;animation:.5s gfadeOut}.gslideOutLeft{-webkit-animation:.3s gslideOutLeft;animation:.3s gslideOutLeft}.gslideInLeft{-webkit-animation:.3s gslideInLeft;animation:.3s gslideInLeft}.gslideOutRight{-webkit-animation:.3s gslideOutRight;animation:.3s gslideOutRight}.gslideInRight{-webkit-animation:.3s gslideInRight;animation:.3s gslideInRight}.gzoomIn{-webkit-animation:.5s gzoomIn;animation:.5s gzoomIn}.gzoomOut{-webkit-animation:.5s gzoomOut;animation:.5s gzoomOut}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gnext,.glightbox-clean .gprev{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}}:root{--color-bg:#ffffff;--color-bg-secondary:#f8f9fa;--color-text:#1a1a1a;--color-text-secondary:#6c757d;--color-accent:#0d7377;--color-accent-hover:#0a5c5f;--color-border:#e9ecef;--color-code-bg:#f4f4f4;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-mono:"SF Mono",SFMono-Regular,Consolas,"Liberation Mono",Menlo,Courier,monospace;--font-size-base:18px;--line-height:1.7;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--spacing-xxl:4rem;--max-width:960px;--header-height:60px}[data-theme=dark]{--color-bg:#1a1a1a;--color-bg-secondary:#2d2d2d;--color-text:#e8e8e8;--color-text-secondary:#a0a0a0;--color-accent:#4ecdc4;--color-accent-hover:#6ed9d2;--color-border:#404040;--color-code-bg:#2d2d2d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:#1a1a1a;--color-bg-secondary:#2d2d2d;--color-text:#e8e8e8;--color-text-secondary:#a0a0a0;--color-accent:#4ecdc4;--color-accent-hover:#6ed9d2;--color-border:#404040;--color-code-bg:#2d2d2d}}*,::after,::before{box-sizing:border-box;margin:0;padding:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:50%;transform:translateX(-50%);background:var(--color-accent);color:#fff;padding:var(--spacing-sm) var(--spacing-md);border-radius:0 0 6px 6px;z-index:9999;text-decoration:none;font-weight:600;transition:top .2s}.skip-link:focus{top:0;outline:2px solid var(--color-accent);outline-offset:2px}html{font-size:var(--font-size-base);scroll-behavior:smooth;overflow-y:scroll;background-color:var(--color-bg)}body{font-family:var(--font-sans);line-height:var(--line-height);color:var(--color-text);background-color:var(--color-bg);min-height:100vh;display:flex;flex-direction:column;transition:background-color .3s,color .3s}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-md)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}h1{font-size:2.25rem}h2{font-size:1.75rem}h3{font-size:1.35rem}h4{font-size:1.1rem}p{margin-bottom:var(--spacing-md)}a{color:var(--color-accent);text-decoration:none;transition:color .2s;overflow-wrap:break-word;word-break:break-word}a:hover{color:var(--color-accent-hover);text-decoration:underline}ol,ul{margin-bottom:var(--spacing-md);padding-left:var(--spacing-lg)}li{margin-bottom:var(--spacing-xs)}code{font-family:var(--font-mono);font-size:.9em;background-color:var(--color-code-bg);padding:.2em .4em;border-radius:3px}pre{background-color:var(--color-code-bg);padding:var(--spacing-md);border-radius:6px;overflow-x:auto;margin-bottom:var(--spacing-md)}pre code{background:0 0;padding:0;font-size:.875rem}.code-block-wrapper{position:relative}.code-copy-btn{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;opacity:0;transition:opacity .2s;color:var(--color-text-secondary)}.code-block-wrapper:hover .code-copy-btn{opacity:1}.code-copy-btn:hover{background:var(--color-border)}.code-copy-btn.copied{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}blockquote{border-left:3px solid var(--color-accent);padding-left:var(--spacing-md);margin:var(--spacing-md) 0;color:var(--color-text-secondary);font-style:italic}hr{border:none;border-top:1px solid var(--color-border);margin:var(--spacing-xl) 0}img{max-width:100%;height:auto;border-radius:6px}.page-content img,.post-content img{display:block;width:auto;max-width:100%;height:auto;margin-left:auto;margin-right:auto}figure{margin:var(--spacing-md) 0;padding:0}figure img{display:block}figure.aligncenter,figure.center{width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;text-align:center}figure.aligncenter a,figure.aligncenter img,figure.aligncenter picture,figure.center a,figure.center img,figure.center picture{display:inline-block;margin:0 auto}figure.alignleft,figure.left{float:left;margin-right:var(--spacing-md);margin-bottom:var(--spacing-sm);max-width:50%}figure.alignright,figure.right{float:right;margin-left:var(--spacing-md);margin-bottom:var(--spacing-sm);max-width:50%}figcaption{font-size:.875rem;color:var(--color-text-secondary);margin-top:var(--spacing-xs);font-style:italic;line-height:1.4}.page-content::after,.post-content::after{content:"";display:table;clear:both}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-sm);margin:var(--spacing-lg) 0;clear:both}.gallery a{display:block;aspect-ratio:1;overflow:hidden;border-radius:6px}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery a:hover img{transform:scale(1.05)}@media (max-width:640px){figure.alignleft,figure.alignright,figure.left,figure.right{float:none;max-width:100%;margin-left:0;margin-right:0}.gallery{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.gallery-slideshow{position:relative;margin:var(--spacing-lg) auto;overflow:hidden;border-radius:6px;aspect-ratio:3/2;background:var(--color-bg-secondary);max-width:85%}.gallery-slideshow a{display:block;position:absolute;inset:0;bottom:40px;opacity:0;transition:opacity .5s ease-in-out;pointer-events:none}.gallery-slideshow a.active{opacity:1;pointer-events:auto}.gallery-slideshow picture{width:100%;height:100%;display:block}.gallery-slideshow img{width:100%;height:100%;object-fit:cover;border-radius:6px}.gallery-slideshow .slideshow-nav{position:absolute;top:calc(50% - 20px);transform:translateY(-50%);background:rgba(0,0,0,.3);color:#fff;border:none;padding:1rem .75rem;cursor:pointer;font-size:1.5rem;z-index:10}.gallery-slideshow .slideshow-nav:hover{background:rgba(0,0,0,.5)}.gallery-slideshow .slideshow-prev{left:0;border-radius:0 4px 4px 0}.gallery-slideshow .slideshow-next{right:0;border-radius:4px 0 0 4px}.gallery-slideshow .slideshow-dots{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:var(--spacing-sm) 0;background:var(--color-bg-secondary);z-index:10}.gallery-slideshow .slideshow-dot{display:inline-block;width:10px;height:10px;margin:0 4px;background:var(--color-border);border-radius:50%;cursor:pointer}.gallery-slideshow .slideshow-dot.active{background:var(--color-accent)}.site-header{min-height:var(--header-height);padding:var(--spacing-sm) 0;display:flex;align-items:center}.header-container{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-accent)}.site-title{font-size:1.25rem;font-weight:600;color:var(--color-accent)}.site-title:hover{color:var(--color-accent-hover);text-decoration:none}.site-nav{display:flex;align-items:center;gap:var(--spacing-md)}.site-nav a{color:var(--color-text-secondary);font-size:.95rem}.site-nav a:hover{color:var(--color-text);text-decoration:none}.theme-toggle{background:0 0;border:none;cursor:pointer;padding:var(--spacing-xs);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.theme-toggle:hover{background-color:var(--color-bg-secondary);color:var(--color-text)}.sun-icon{display:none}.moon-icon,[data-theme=dark] .sun-icon{display:block}[data-theme=dark] .moon-icon{display:none}main{flex:1;padding:var(--spacing-xl) 0}.intro{margin-bottom:var(--spacing-xxl)}.intro h1{margin-top:0}.intro p{font-size:1.15rem;color:var(--color-text-secondary)}.posts-section .page-title{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.posts-section h2{margin-top:0;margin-bottom:var(--spacing-lg)}.post-list{list-style:none;padding:0}.post-list-item{padding:var(--spacing-lg) var(--spacing-sm);margin-left:calc(var(--spacing-sm) * -1);margin-right:calc(var(--spacing-sm) * -1);border-bottom:1px solid var(--color-border);border-left:3px solid transparent;transition:border-color .2s,background-color .2s}.post-list-item:hover{border-left-color:var(--color-accent);background-color:var(--color-bg-secondary)}.post-list-item:last-child{border-bottom:none}.post-list-item article{display:block}.post-list-item.has-image article{display:grid;grid-template-columns:280px 1fr;gap:var(--spacing-lg);align-items:start}.post-list-image{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:8px}.post-list-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.post-list-image:hover img{transform:scale(1.05)}.post-list-content{min-width:0}.post-list-item .post-list-title{font-size:1.35rem;margin:0 0 var(--spacing-xs) 0}.post-list-title a{color:var(--color-text)}.post-list-title a:hover{color:var(--color-accent);text-decoration:none}.post-list-meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.post-list-reading-time::before{content:"\B7";margin-right:var(--spacing-sm)}.post-list-excerpt{color:var(--color-text-secondary);margin-bottom:0;line-height:1.6}@media (max-width:700px){.post-list-item.has-image article{grid-template-columns:1fr}.post-list-image{aspect-ratio:16/9}}.post-header{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.post-title{margin-top:0;margin-bottom:var(--spacing-sm);color:var(--color-accent);text-align:center}.post-meta{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:.95rem}.post-meta::before{display:none}.post-date,.post-reading-time{color:var(--color-text-secondary)}.post-reading-time::before{content:"\B7";margin-right:var(--spacing-sm)}.post-tags{margin-top:var(--spacing-sm);text-align:center}.tag{display:inline-block;background-color:var(--color-bg-secondary);color:var(--color-text-secondary);padding:.2em .6em;border-radius:3px;font-size:.85rem;margin-right:var(--spacing-xs);border:1px solid transparent;transition:.2s}.tag:hover{border-color:var(--color-accent);color:var(--color-accent)}.post-content h2:first-child,.post-content h3:first-child{margin-top:0}.page-content h2,.post-content h2{padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-accent);display:inline-block}.post-footer{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.author-box{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-bg-secondary);border-left:4px solid var(--color-accent);border-radius:0 8px 8px 0}.author-heading{width:100%;font-size:.95rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin:0 0 var(--spacing-xs) 0;color:var(--color-accent)}.author-image{flex-shrink:0;width:90px;height:90px;border-radius:50%;object-fit:cover;border:3px solid var(--color-accent)}.author-info{flex:1}.author-name{display:block;font-weight:600;font-size:1.05rem;color:var(--color-text);margin-bottom:.25rem}.author-bio{margin:0;font-size:.9rem;color:var(--color-text-secondary);line-height:1.5}@media (max-width:480px){.author-box{flex-direction:column;text-align:center;border-left:none;border-top:4px solid var(--color-accent);border-radius:0 0 8px 8px}.author-image{width:100px;height:100px}}.share-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm)}.share-label{color:var(--color-text-secondary);font-size:.9rem}.share-buttons-group{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.share-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;color:#fff;transition:transform .2s,opacity .2s}.share-btn:hover{transform:translateY(-2px);opacity:.85;text-decoration:none}.share-twitter{background:#000}.share-mastodon{background:#6364ff}.share-bluesky{background:#0085ff}.share-facebook{background:#1877f2}.share-linkedin{background:#0a66c2}.share-xing{background:#006567}.share-email{background:#ea4335}.page-content .share-buttons{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.page-header{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.page-title{margin-top:0;color:var(--color-accent);text-align:center}.site-footer{padding:var(--spacing-lg) 0;color:var(--color-text-secondary);font-size:.9rem;text-align:center}.site-footer .container{padding-top:var(--spacing-lg);border-top:2px solid var(--color-accent)}.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin:var(--spacing-md) 0}.social-links a{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--color-bg-secondary);color:var(--color-text-secondary);transition:.2s}.social-links a:hover{background:var(--color-accent);color:#fff;transform:translateY(-2px)}.social-links a svg{flex-shrink:0}.footer-legal{margin-top:var(--spacing-sm);font-size:.85rem}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#6a9955}.token.punctuation{color:var(--color-text-secondary)}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#b5cea8}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#ce9178}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#d4d4d4}.token.atrule,.token.attr-value,.token.keyword{color:#569cd6}.token.class-name,.token.function{color:#dcdcaa}.token.important,.token.regex,.token.variable{color:#d16969}.cv-header-section{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.page-content .cv-portrait{width:180px;height:auto;border-radius:6px;flex-shrink:0}.cv-header-info{flex:1}.cv-name{margin:0 0 var(--spacing-xs);border:none;padding:0}.cv-title{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.cv-slogan{font-size:1.1rem;color:var(--color-text-secondary);font-style:italic;text-align:center;margin:var(--spacing-lg) 0 var(--spacing-md) 0;padding:var(--spacing-md) 0;border-top:1px solid var(--color-border)}.cv-highlights{margin:0 0 var(--spacing-lg) 0;padding:0 0 var(--spacing-md) 0;border-bottom:1px solid var(--color-border)}.cv-highlights ul{list-style:none;padding:0;margin:0;text-align:center}.cv-highlights li{font-size:1rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.cv-highlights li::before{content:"\2713  ";color:var(--color-accent);font-weight:700}.cv h2{margin-top:var(--spacing-xl);padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-accent)}.cv h2:first-child{margin-top:0}.cv-entry{margin:var(--spacing-lg) 0;padding-left:var(--spacing-md);border-left:3px solid var(--color-border);transition:border-color .2s}.cv-entry:hover{border-left-color:var(--color-accent)}.cv-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--spacing-xs) var(--spacing-sm);margin-bottom:var(--spacing-xs)}.cv-header h3{margin:0;font-size:1.1rem;width:100%}.cv-company{color:var(--color-text-secondary);font-weight:500}.cv-date{color:var(--color-text-secondary);font-size:.9rem;margin-left:auto}.cv-description{color:var(--color-text-secondary);font-size:.95rem}.cv-description ul{margin:var(--spacing-xs) 0;padding-left:var(--spacing-md)}.cv-description li{margin:var(--spacing-xs) 0}.cv-skills h3{font-size:1rem;margin:var(--spacing-md) 0 var(--spacing-sm);color:var(--color-text-secondary)}.cv-skill-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.cv-skill{background:var(--color-bg-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;font-size:.9rem;border:1px solid var(--color-border)}.cv-languages{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.cv-language{display:flex;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-radius:4px;border:1px solid var(--color-border)}.cv-language-name{font-weight:500}.cv-language-level{color:var(--color-text-secondary)}@media (max-width:640px){:root{--font-size-base:16px}.cv-header{flex-direction:column;align-items:flex-start}.cv-company::before{display:none}.cv-date{margin-left:0}.cv-header-section{flex-direction:column;text-align:center}.page-content .cv-portrait{width:150px}h1{font-size:1.875rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.header-container{flex-direction:column;gap:var(--spacing-sm)}.site-nav{gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center}main{padding:var(--spacing-lg) 0}}.reading-progress{position:fixed;top:0;left:0;width:0;height:3px;background:var(--color-accent);z-index:1000;display:none;transition:width .1s ease-out}.back-to-top{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);width:48px;height:48px;border-radius:50%;background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(20px);transition:.3s;display:flex;align-items:center;justify-content:center;z-index:100}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.search-toggle{background:0 0;border:none;cursor:pointer;padding:var(--spacing-xs);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.search-toggle:hover{background-color:var(--color-bg-secondary);color:var(--color-text)}.search-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}.search-modal.active{opacity:1;visibility:visible}.search-modal-content{background:var(--color-bg);border-radius:8px;width:90%;max-width:600px;max-height:80vh;overflow:hidden;position:relative;box-shadow:0 20px 50px rgba(0,0,0,.3)}.search-modal-close{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:0 0;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);z-index:10;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.search-modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text)}.pagefind-ui{--pagefind-ui-scale:1;--pagefind-ui-primary:var(--color-accent);--pagefind-ui-text:var(--color-text);--pagefind-ui-background:var(--color-bg);--pagefind-ui-border:var(--color-border);--pagefind-ui-tag:var(--color-bg-secondary);--pagefind-ui-border-width:1px;--pagefind-ui-border-radius:6px;--pagefind-ui-font:var(--font-sans)}.pagefind-ui .pagefind-ui__search-input{font-size:1.1rem;padding:var(--spacing-md)}.pagefind-ui .pagefind-ui__results-area{max-height:60vh;overflow-y:auto;padding:var(--spacing-sm)}.pagefind-ui .pagefind-ui__result-link{color:var(--color-accent)}.pagefind-ui .pagefind-ui__result-link:hover{color:var(--color-accent-hover)}