@font-face{font-family:ibm plex sans;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/ibm-plex-sans-var.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:ibm plex mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:ibm plex mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-mono-600.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--bg:#fbf1c7;--bg-soft:#f2e5bc;--bg-code:#f2e5bc;--fg:#3c3836;--fg-muted:#665c54;--fg-faint:#6f6455;--line:#e3d7ae;--accent:#af3a03;--heading:#3d6f4f;--ring:#928374;--measure:700px;--radius:6px;--font-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI",
    Roboto, Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas,
    monospace}[data-theme=dark]{color-scheme:dark;--bg:#282828;--bg-soft:#32302f;--bg-code:#32302f;--fg:#ebdbb2;--fg-muted:#bdae93;--fg-faint:#a89984;--line:#3c3836;--accent:#fe8019;--heading:#8ec07c;--ring:#7c6f64}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,ol{margin:0;padding:0}body{background-color:var(--bg);color:var(--fg);display:flex;flex-direction:column;min-height:100vh;font-family:var(--font-sans);font-size:1.0625rem;font-weight:400;letter-spacing:.005em;line-height:1.72;transition:background-color .2s ease,color .2s ease}.wrap{margin:0 auto;max-width:var(--measure);padding:0 1.25rem}main{display:block;flex:1;padding-bottom:4rem}section{padding:1.5rem 0}h1,h2,h3,h4{color:var(--heading);font-weight:400;line-height:1.25}h1{font-size:1.75rem}h2{font-size:1.35rem;margin-bottom:.75rem;margin-top:2.5rem}h3{font-size:1.1rem;margin-bottom:.5rem;margin-top:2rem}h4{font-size:1rem;margin-top:1.5rem}p{margin-bottom:1.15rem}p:last-child{margin-bottom:0}strong{color:var(--heading);font-weight:600}em{font-style:italic}small{font-size:.85rem}hr{border:0;border-top:1px solid var(--line);margin:2.5rem 0}a{color:var(--accent);text-decoration:none;transition:opacity .15s ease}a:hover{opacity:.75}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}ul,ol{margin-bottom:1.15rem;padding-left:1.25rem}li{margin-bottom:.35rem}li:last-child{margin-bottom:0}blockquote{border-left:2px solid var(--fg-faint);color:var(--fg-muted);font-style:italic;margin:1.5rem 0;padding-left:1.25rem}::selection{background-color:var(--accent);color:var(--bg)}.site-header{background-color:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.site-header .wrap{align-items:center;display:flex;gap:1rem;justify-content:space-between;min-height:60px}.site-brand{color:var(--fg);font-size:.95rem;font-weight:600;letter-spacing:.02em}.site-brand:hover{opacity:1}.site-nav,.site-nav-list{align-items:center;display:flex;gap:1.25rem;list-style:none;margin:0;padding:0}.site-nav li{margin:0}.site-nav a{color:var(--fg-muted);font-size:.9rem}.site-nav a:hover{color:var(--accent);opacity:1}.site-nav a[aria-current=page]{color:var(--accent)}.header-tools{align-items:center;display:flex;gap:.5rem}.icon-button{align-items:center;background:0 0;border:1px solid var(--line);border-radius:var(--radius);color:var(--fg-muted);cursor:pointer;display:flex;height:34px;justify-content:center;padding:0;width:34px}.icon-button:hover{border-color:var(--accent);color:var(--accent)}.icon-button svg{height:17px;width:17px}[data-theme=dark] .icon-sun,[data-theme=light] .icon-moon{display:none}.menu-toggle,.menu-button,.menu-close{display:none}@media(max-width:700px){.menu-button,.menu-close{align-items:center;cursor:pointer;display:flex;justify-content:center}.menu-close{color:var(--fg-faint);position:absolute;right:1.25rem;top:1rem}.site-nav{align-items:center;background-color:var(--bg);bottom:0;display:none;flex-direction:column;gap:0;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:200}.site-nav li{padding:.5rem 0}.site-nav a{color:var(--fg);font-size:1.35rem;text-transform:lowercase}.menu-toggle:checked~.site-nav{display:flex}.no-js .site-nav{background:0 0;display:flex;flex-direction:row;flex-wrap:wrap;gap:.85rem;justify-content:center;position:static}.no-js .site-nav a{font-size:.95rem}.no-js .menu-button,.no-js .menu-close{display:none}}.hello{padding:3rem 0 2rem;text-align:center}.hello p{color:var(--fg-muted);font-size:1.35rem;margin-bottom:.15rem}.hello .greeting,.hello .tagline{display:block}.hello .name{color:var(--heading);display:inline-block;font-size:clamp(2rem,7vw,2.9rem);font-weight:500;letter-spacing:.1em;margin-right:-.1em;margin-top:.3rem;overflow-wrap:break-word;text-transform:uppercase}.hello .tagline{color:var(--fg-muted);display:block;font-size:1rem;letter-spacing:.02em;margin-top:.5rem;text-transform:lowercase}.portrait{display:block;margin:0 auto 1.25rem;max-width:230px;width:100%}.portrait img{aspect-ratio:1/1;border-radius:50%;box-shadow:0 0 0 1px var(--ring);display:block;height:auto;object-fit:cover;width:100%}.intro{text-align:center}.intro p{color:var(--fg-muted)}.home-links{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;padding-top:1rem}.home-links a{font-size:.95rem}.page-head{padding:3rem 0 1rem;text-align:center}.page-head h1{display:inline-block;font-size:clamp(1.5rem,4.5vw,1.9rem);font-weight:500;letter-spacing:.08em;margin-right:-.08em;text-transform:uppercase}.page-head p{color:var(--fg-muted);margin-top:.75rem}.year{color:var(--fg-faint);font-family:var(--font-mono);font-size:.85rem;letter-spacing:.1em;margin-bottom:.75rem;margin-top:2.5rem;text-transform:uppercase}.post-list{list-style:none;margin:0;padding:0}.post-list li{align-items:baseline;border-bottom:1px solid var(--line);display:flex;gap:1.5rem;justify-content:space-between;margin:0;padding:.85rem 0}.post-list li>div{flex:1;min-width:0}.post-list li:last-child{border-bottom:0}.post-list .title{color:var(--fg);font-size:1.05rem}.post-list .title:hover{color:var(--accent);opacity:1}.post-list time{color:var(--fg-faint);flex-shrink:0;font-family:var(--font-mono);font-size:.8rem}.post-list .summary{color:var(--fg-muted);display:block;font-size:.9rem;margin-top:.35rem}.post-tags{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;margin:.35rem 0 0;padding:0}.post-tags li{margin:0}.post-tags .tag{font-size:.7rem;line-height:1.3;padding:.05rem .35rem}.tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;list-style:none;margin:0;padding:1rem 0}.tag-aside{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem}.tag-aside .label{color:var(--fg-faint);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;margin-bottom:.75rem;text-align:center;text-transform:uppercase}.tag-aside .tag{border-color:var(--line);color:var(--fg-muted)}.tag-aside .tag:hover{background-color:var(--accent);border-color:var(--accent);color:var(--bg)}.tag-cloud li{margin:0}.tag-cloud .count{color:var(--fg-faint);font-size:.7em}.tag{--tag-color:var(--fg-muted);border:1px solid var(--tag-color);border-radius:var(--radius);color:var(--tag-color);display:inline-block;font-family:var(--font-mono);font-size:.75rem;line-height:1.4;padding:.1rem .45rem}.tag:hover{background-color:var(--tag-color);color:var(--bg);opacity:1}.tag-list{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:1rem 0 0;padding:0}.tag-list li{margin:0}[data-theme=light] [data-tag=azure],[data-theme=light] [data-tag=docker]{--tag-color:#3f7679}[data-theme=light] [data-tag=kubernetes],[data-theme=light] [data-tag=containers]{--tag-color:#3f7679}[data-theme=light] [data-tag=devops]{--tag-color:#6b6710}[data-theme=light] [data-tag=reflections],[data-theme=light] [data-tag=ai]{--tag-color:#a04a72}[data-theme=light] [data-tag=cloud]{--tag-color:#96600d}[data-theme=light] [data-tag=linux],[data-theme=light] [data-tag=proxmox]{--tag-color:#af3a03}[data-theme=light] [data-tag=homelab],[data-theme=light] [data-tag=sre]{--tag-color:#3d6f4f}[data-theme=light] [data-tag=security]{--tag-color:#9d0006}[data-theme=light] [data-tag=platform]{--tag-color:#a04a72}[data-theme=dark] [data-tag=azure],[data-theme=dark] [data-tag=docker],[data-theme=dark] [data-tag=kubernetes],[data-theme=dark] [data-tag=containers]{--tag-color:#83a598}[data-theme=dark] [data-tag=devops],[data-theme=dark] [data-tag=iac],[data-theme=dark] [data-tag=terraform]{--tag-color:#b8bb26}[data-theme=dark] [data-tag=reflections],[data-theme=dark] [data-tag=ai],[data-theme=dark] [data-tag=platform]{--tag-color:#d3869b}[data-theme=dark] [data-tag=cloud],[data-theme=dark] [data-tag=eda]{--tag-color:#d79921}[data-theme=dark] [data-tag=linux],[data-theme=dark] [data-tag=proxmox]{--tag-color:#fe8019}[data-theme=dark] [data-tag=homelab],[data-theme=dark] [data-tag=sre]{--tag-color:#8ec07c}[data-theme=dark] [data-tag=security]{--tag-color:#fb4934}.article-head{padding:3rem 0 1rem}.article-head h1{font-size:clamp(1.5rem,5vw,2rem);line-height:1.3}.article-meta{color:var(--fg-faint);font-family:var(--font-mono);font-size:.8rem;margin-top:.75rem}.article-meta span+span::before{content:" · "}.article-body{padding-top:.5rem}.article-body h2:first-child,.article-body h3:first-child{margin-top:0}.article-body img{display:block;height:auto;margin:1.5rem auto;max-width:100%}.article-body figure{margin:2rem 0;text-align:center}.article-body figure img{border-radius:var(--radius);box-shadow:0 4px 16px rgba(0,0,0,.18);margin:0 auto}.article-body figcaption{color:var(--fg-faint);font-size:.85rem;margin-top:.75rem;text-align:center}.article-body table{border-collapse:collapse;font-size:.95rem;margin:1.5rem 0;width:100%}.article-body th,.article-body td{border-bottom:1px solid var(--line);padding:.5rem;text-align:left;vertical-align:top}.article-body th{color:var(--heading);font-weight:400}.article-foot{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem}.back-link{font-size:.9rem}.comments{margin-top:2.5rem}code{font-family:var(--font-mono);font-size:.875em}p code,li code,td code{background-color:var(--bg-code);border-radius:3px;padding:.1rem .3rem}pre{background-color:var(--bg-code);border-radius:var(--radius);font-size:.85rem;line-height:1.55;margin:1.5rem 0;overflow-x:auto;padding:1rem 1.1rem}pre code{background:0 0;padding:0}.site-footer{border-top:1px solid var(--line);color:var(--fg-faint);font-size:.8rem;padding:2.5rem 0;text-align:center}.site-footer p{margin-bottom:.5rem}.site-footer a{color:var(--fg-muted)}.footer-links{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;list-style:none;margin:0 0 1rem;padding:0}.footer-links li{margin:0}.muted{color:var(--fg-muted)}.center{text-align:center}.empty{color:var(--fg-faint);padding:2rem 0;text-align:center}@media print{.site-header,.site-footer,.comments,.back-link{display:none}}[data-theme=light] .bg{color:#3c3836;background-color:var(--bg-code)}[data-theme=light] .chroma{color:#3c3836;background-color:var(--bg-code)}[data-theme=light] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}[data-theme=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-theme=light] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}[data-theme=light] .chroma .hl{background-color:#e1d8b3}[data-theme=light] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#9d9b9a}[data-theme=light] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#9d9b9a}[data-theme=light] .chroma .line{display:flex}[data-theme=light] .chroma .k{color:#af3a03}[data-theme=light] .chroma .kc{color:#af3a03}[data-theme=light] .chroma .kd{color:#af3a03}[data-theme=light] .chroma .kn{color:#af3a03}[data-theme=light] .chroma .kp{color:#af3a03}[data-theme=light] .chroma .kr{color:#af3a03}[data-theme=light] .chroma .kt{color:#8f5c0c}[data-theme=light] .chroma .na{color:#6b6710;font-weight:700}[data-theme=light] .chroma .no{color:#8f3f71}[data-theme=light] .chroma .ni{color:#8f5c0c}[data-theme=light] .chroma .ne{color:#9d0006}[data-theme=light] .chroma .nl{color:#9d0006}[data-theme=light] .chroma .nt{color:#9d0006}[data-theme=light] .chroma .nb{color:#8f5c0c}[data-theme=light] .chroma .bp{color:#8f5c0c}[data-theme=light] .chroma .nf{color:#8f5c0c}[data-theme=light] .chroma .fm{color:#8f5c0c}[data-theme=light] .chroma .s{color:#6b6710}[data-theme=light] .chroma .sa{color:#6b6710}[data-theme=light] .chroma .sb{color:#6b6710}[data-theme=light] .chroma .sc{color:#6b6710}[data-theme=light] .chroma .dl{color:#6b6710}[data-theme=light] .chroma .sd{color:#6b6710}[data-theme=light] .chroma .s2{color:#6b6710}[data-theme=light] .chroma .se{color:#6b6710}[data-theme=light] .chroma .sh{color:#6b6710}[data-theme=light] .chroma .si{color:#6b6710}[data-theme=light] .chroma .sx{color:#6b6710}[data-theme=light] .chroma .sr{color:#6b6710}[data-theme=light] .chroma .s1{color:#6b6710}[data-theme=light] .chroma .ss{color:#076678}[data-theme=light] .chroma .m{color:#8f3f71}[data-theme=light] .chroma .mb{color:#8f3f71}[data-theme=light] .chroma .mf{color:#8f3f71}[data-theme=light] .chroma .mh{color:#8f3f71}[data-theme=light] .chroma .mi{color:#8f3f71}[data-theme=light] .chroma .il{color:#8f3f71}[data-theme=light] .chroma .mo{color:#8f3f71}[data-theme=light] .chroma .o{color:#af3a03}[data-theme=light] .chroma .ow{color:#af3a03}[data-theme=light] .chroma .c{color:#6f6455;font-style:italic}[data-theme=light] .chroma .ch{color:#6f6455;font-style:italic}[data-theme=light] .chroma .cm{color:#6f6455;font-style:italic}[data-theme=light] .chroma .c1{color:#6f6455;font-style:italic}[data-theme=light] .chroma .cs{color:#6f6455;font-style:italic}[data-theme=light] .chroma .cp{color:#3d6f4f}[data-theme=light] .chroma .cpf{color:#3d6f4f;font-style:italic}[data-theme=light] .chroma .gd{color:#fbf1c7;background-color:#9d0006}[data-theme=light] .chroma .ge{color:#076678;text-decoration:underline}[data-theme=light] .chroma .gr{background-color:#9d0006;font-weight:700}[data-theme=light] .chroma .gh{color:#6b6710;font-weight:700}[data-theme=light] .chroma .gi{color:#fbf1c7;background-color:#6b6710}[data-theme=light] .chroma .go{color:#504945}[data-theme=light] .chroma .gu{color:#6b6710;font-weight:700}[data-theme=light] .chroma .gt{background-color:#3c3836;font-weight:700}[data-theme=dark] .bg{color:#ebdbb2;background-color:var(--bg-code)}[data-theme=dark] .chroma{color:#ebdbb2;background-color:var(--bg-code)}[data-theme=dark] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}[data-theme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-theme=dark] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}[data-theme=dark] .chroma .hl{background-color:#3d3d3d}[data-theme=dark] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#756d59}[data-theme=dark] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#756d59}[data-theme=dark] .chroma .line{display:flex}[data-theme=dark] .chroma .k{color:#fe8019}[data-theme=dark] .chroma .kc{color:#fe8019}[data-theme=dark] .chroma .kd{color:#fe8019}[data-theme=dark] .chroma .kn{color:#fe8019}[data-theme=dark] .chroma .kp{color:#fe8019}[data-theme=dark] .chroma .kr{color:#fe8019}[data-theme=dark] .chroma .kt{color:#fabd2f}[data-theme=dark] .chroma .na{color:#b8bb26;font-weight:700}[data-theme=dark] .chroma .no{color:#d3869b}[data-theme=dark] .chroma .ni{color:#fabd2f}[data-theme=dark] .chroma .ne{color:#ff6b5e}[data-theme=dark] .chroma .nl{color:#ff6b5e}[data-theme=dark] .chroma .nt{color:#ff6b5e}[data-theme=dark] .chroma .nb{color:#fabd2f}[data-theme=dark] .chroma .bp{color:#fabd2f}[data-theme=dark] .chroma .nf{color:#fabd2f}[data-theme=dark] .chroma .fm{color:#fabd2f}[data-theme=dark] .chroma .s{color:#b8bb26}[data-theme=dark] .chroma .sa{color:#b8bb26}[data-theme=dark] .chroma .sb{color:#b8bb26}[data-theme=dark] .chroma .sc{color:#b8bb26}[data-theme=dark] .chroma .dl{color:#b8bb26}[data-theme=dark] .chroma .sd{color:#b8bb26}[data-theme=dark] .chroma .s2{color:#b8bb26}[data-theme=dark] .chroma .se{color:#b8bb26}[data-theme=dark] .chroma .sh{color:#b8bb26}[data-theme=dark] .chroma .si{color:#b8bb26}[data-theme=dark] .chroma .sx{color:#b8bb26}[data-theme=dark] .chroma .sr{color:#b8bb26}[data-theme=dark] .chroma .s1{color:#b8bb26}[data-theme=dark] .chroma .ss{color:#83a598}[data-theme=dark] .chroma .m{color:#d3869b}[data-theme=dark] .chroma .mb{color:#d3869b}[data-theme=dark] .chroma .mf{color:#d3869b}[data-theme=dark] .chroma .mh{color:#d3869b}[data-theme=dark] .chroma .mi{color:#d3869b}[data-theme=dark] .chroma .il{color:#d3869b}[data-theme=dark] .chroma .mo{color:#d3869b}[data-theme=dark] .chroma .o{color:#fe8019}[data-theme=dark] .chroma .ow{color:#fe8019}[data-theme=dark] .chroma .c{color:#a89984;font-style:italic}[data-theme=dark] .chroma .ch{color:#a89984;font-style:italic}[data-theme=dark] .chroma .cm{color:#a89984;font-style:italic}[data-theme=dark] .chroma .c1{color:#a89984;font-style:italic}[data-theme=dark] .chroma .cs{color:#a89984;font-style:italic}[data-theme=dark] .chroma .cp{color:#8ec07c}[data-theme=dark] .chroma .cpf{color:#8ec07c;font-style:italic}[data-theme=dark] .chroma .gd{color:#282828;background-color:#ff6b5e}[data-theme=dark] .chroma .ge{color:#83a598;text-decoration:underline}[data-theme=dark] .chroma .gr{background-color:#ff6b5e;font-weight:700}[data-theme=dark] .chroma .gh{color:#b8bb26;font-weight:700}[data-theme=dark] .chroma .gi{color:#282828;background-color:#b8bb26}[data-theme=dark] .chroma .go{color:#a89984}[data-theme=dark] .chroma .gu{color:#b8bb26;font-weight:700}[data-theme=dark] .chroma .gt{background-color:#ff6b5e;font-weight:700}