@layer content,components;@layer components{.box,.cols{margin:1rem 0}.box,.cols section,.cols figure{position:relative;padding:2rem;filter:drop-shadow(.2rem .2rem 1rem var(--shadow-color))}:is(.box,.cols section,.cols figure) h2:first-child{margin:0;font-size:1.5em}.cols{display:grid;gap:2rem;grid-template-columns:1fr 1fr}.box,.cols section{margin:0;padding:2rem 2rem 1rem;display:grid;grid-template-rows:auto 1fr auto;position:relative;z-index:2;background-color:var(--background-color-alt);border-top:var(--border-width) solid var(--accent-color)}:is(.box,.cols section) img{max-width:100%;display:block;border:var(--border-width) solid var(--border-color);margin-top:1rem}:is(.box,.cols section) hr{margin:1em 0}.herolinks a:not(:last-child){margin-right:.5em}@media(max-width:800px){.cols{grid-template-columns:1fr}}}@layer content{h1,h2,h3,h4{text-wrap:balance;font-family:var(--headline-font);font-weight:700}h2{font-size:1.75em;line-height:1.2;margin:1em 0}h2:before{content:"/";margin-right:.5ch;color:var(--accent-color);font-weight:700}h3{font-size:1.5em;line-height:1.3;margin:2em 0 0}h3:before{content:"/";margin-right:.5ch;color:var(--text-color-alt);font-weight:700}h3:target{outline:var(--border-width) dotted var(--accent-color);outline-offset:.25rem}p.hero{font-size:1.3em}img{max-width:100%;border:var(--border-width) solid var(--border-color)}video{width:calc(100% - 2 * var(--border-width));aspect-ratio:16 / 9;outline:var(--border-width) solid var(--border-color);filter:drop-shadow(.2rem .2rem 1rem var(--shadow-color))}video:hover{outline-color:#fff}video:focus{outline-color:var(--base-accent-color)}hr{display:block;margin:3em 0;width:100%;border:none;height:var(--border-width);background:rgba(from currentColor r g b / .25)}p,ul,ol .box{margin:1rem 0}b,strong{font-weight:var(--font-bold)}blockquote{border-left:var(--border-width) solid var(--border-color);margin-left:0;padding-left:2rem;font-style:italic}a{font-weight:var(--font-bold);text-decoration-line:underline;text-decoration-style:solid;text-decoration-thickness:calc(1em / 9);text-decoration-color:transparent;text-decoration-skip-ink:none;padding:.2em}a.hero{display:inline-block;padding:.2em .5em;color:#fff;text-decoration:none;border:var(--border-width) solid var(--accent-color);text-shadow:.1em .1em .1em light-dark(#fff,#000)}a.hero:before{content:"→";margin-right:.5em}a.hero:is(:hover,:focus) span{text-decoration-line:underline;text-decoration-style:solid;text-decoration-thickness:calc(1em / 9);text-decoration-color:inherit}a:link{color:currentColor;background:rgba(from light-dark(var(--dark0),var(--light0)) r g b / .05);text-decoration-color:var(--accent-color)}a:visited{color:currentColor;background:transparent;text-decoration-style:dotted;text-decoration-color:rgba(from var(--accent-color) r g b / .333)}a:hover,a.active{color:#fff;background:var(--accent-color);text-decoration-color:color-mix(in hsl,var(--accent-color),currentColor 50%);text-shadow:.1em .1em .1em #000}a.active:not(:hover):not(:focus),a.hero:not(:hover):not(:focus){text-decoration:none}a:active{color:#fff;background:var(--accent-color);text-decoration-color:#fff!important;text-shadow:.1em .1em .1em #000}a:focus{color:#fff;box-shadow:0 0 1em rgba(from var(--text-color),r g b / .333);background:var(--accent-color);text-decoration-color:color-mix(in hsl,var(--accent-color),currentColor 50%);text-shadow:.1em .1em .1em #000}figure{color:var(--text-color-alt);--accent-color: currentColor}figure p{margin:.5em 0}figure a:hover,figure a:focus{--accent-color: light-dark(var(--light1), var(--dark1))}figure.aside{float:right;width:calc(50% - 4em);margin:0 0 1rem 2rem}@media(max-width:640px){figure.aside{float:none;width:100%;margin:1rem 0}}figure.video{margin:0;padding:0!important}.logos{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr;grid-template-rows:auto auto auto;gap:1.5rem 3rem;align-items:center}.logos img{border:none;transition:all var(--transition-time)}.logos [src*=sap]{grid-row:1;grid-column:1}.logos [src*=arag]{grid-row:1 / 3;grid-column:2}.logos [src*=swr]{grid-row:1;grid-column:3}.logos [src*=datev]{grid-row:2 / 4;grid-column:4}.logos [src*=freenet]{grid-row:1;grid-column:5 / 7}.logos [src*=oerlikon]{grid-row:3;grid-column:1}.logos [src*=lvm]{grid-row:2;grid-column:3}.logos [src*=siemens]{grid-row:2;grid-column:1}.logos [src*=bosch]{display:none;grid-row:1;grid-column:6}.logos [src*=tsystems]{grid-row:3;grid-column:2 / 4}.logos [src*=tns]{grid-row:2;grid-column:5 / 7}.logos [src*=tuevnord]{grid-row:3;grid-column:5 / 7}@media(prefers-color-scheme:dark){.logos img{filter:brightness(1000%) saturate(0%)}:root:has(dark-mode-toggle:state(light)) .logos img{filter:none!important;mix-blend-mode:normal!important}}:root:has(dark-mode-toggle:state(dark)) .logos img{filter:brightness(1000%) saturate(0%)}:root:has(dark-mode-toggle:state(dark)) .logos img[src*=sap]{filter:brightness(130%) saturate(0%);mix-blend-mode:color-dodge}:root:has(dark-mode-toggle:state(dark)) .logos img[src*=tuevnord],:root:has(dark-mode-toggle:state(dark)) .logos img[src*=swr],:root:has(dark-mode-toggle:state(dark)) .logos img[src*=tsystems],:root:has(dark-mode-toggle:state(dark)) .logos img[src*=tns]{filter:invert() saturate(0%)}}@layer components{.pageHeader{margin-top:2rem!important;margin-bottom:2rem!important}hgroup{display:grid;grid-template-columns:auto;grid-template-rows:auto auto auto;gap:1rem 0}h1{font-size:3em;margin:0;grid-row:2}h1 a{background:none;text-decoration:none;padding:0}nav{grid-row:1;text-align:right;font-size:1.2em;display:grid;grid-auto-flow:column;width:min-content;white-space:nowrap;gap:.5rem;align-items:center;justify-self:end}nav a{padding:.25rem .5rem;position:relative}.subtitle{grid-row:3;font-size:1.333em;font-weight:700;margin:-1rem 0 0}.ipa{font-family:"Noto Serif",serif;font-weight:400;font-style:oblique 12deg;text-transform:none;opacity:.333;font-size:.75em}@media(max-width:800px){h1{font-size:2.5em}nav,.subtitle{font-size:1em}}@media(max-width:640px){h1{font-size:2.5em}nav{justify-self:start}nav .opt{position:absolute;top:0;left:0;width:0;height:0;overflow:hidden}}.tags{display:block;font-weight:400;font-size:1rem}.tags span{font-style:italic;white-space:nowrap}.tags span:not(:last-child){margin-right:.5em}.tags span:before{content:"#";color:var(--text-color-alt)}dark-mode-toggle{width:2rem;height:2rem;overflow:hidden;transition:all var(--transition-time);outline:.2em solid transparent;outline-offset:.1em}dark-mode-toggle:not(:defined){opacity:0}dark-mode-toggle svg{width:2rem;height:2rem;position:absolute;inset:0;z-index:1;transition:all var(--transition-time);transform:scale(.8);opacity:.8}dark-mode-toggle:is(:focus,:focus-within){outline-color:var(--accent-color)}dark-mode-toggle:is(:hover,:focus,:focus-within) svg{transform:scale(1);opacity:1}dark-mode-toggle:state(light) svg.dark{transform:rotate(180deg) scale(.5);opacity:0}dark-mode-toggle:state(dark) svg.light{transform:rotate(180deg) scale(.5);opacity:0}}@layer components{.pageFooter{margin-top:2rem!important;margin-bottom:2rem!important;font-style:italic;color:var(--text-color-alt);--accent-color: currentColor}.pageFooter a:hover,.pageFooter a:focus{--accent-color: light-dark(var(--light1), var(--dark1))}.pageFooter hr{margin-bottom:2rem}}@font-face{font-family:"Noto Serif";src:url(/assets/NotoSerif-subset-oWXajqlX.woff2);font-weight:400;font-style:italic;unicode-range:U+005B,U+02C8,U+006B,U+0280,U+00F8,U+02D0,U+006E,U+002E,U+0259,U+005D}@font-face{font-family:Bitter;src:url(/assets/Bitter-VariableFont_wght-CyeAze9L.ttf);font-weight:400;font-style:normal}@font-face{font-family:Bitter;src:url(/assets/Bitter-VariableFont_wght-CyeAze9L.ttf);font-weight:700;font-style:normal}@font-face{font-family:Bitter;src:url(/assets/Bitter-Italic-VariableFont_wght-Blc43vdH.ttf);font-weight:400;font-style:italic}@font-face{font-family:Bitter;src:url(/assets/Bitter-Italic-VariableFont_wght-Blc43vdH.ttf);font-weight:700;font-style:italic}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Regular-BCvwfN5l.ttf);font-weight:400;font-style:normal}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Bold-DYbenGlc.ttf);font-weight:700;font-style:normal}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Italic-CLUCr1wN.ttf);font-weight:400;font-style:italic}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-BoldItalic-B5zX-gTL.ttf);font-weight:700;font-style:italic}*,*:before,*:after{box-sizing:border-box}:root{font-size:16px;color-scheme:light dark;--dark0: hsl(240, 8%, 10%);--dark1: hsl(240, 9%, 12%);--dark2: hsl(240, 9%, 15%);--dark3: hsl(240, 10%, 22%);--light0: hsl(28, 100%, 97%);--light1: #fff1e5;--light2: #faf0e6;--light3: #efe3d7;--text-color: light-dark(var(--dark1), var(--light1));--text-color-alt: rgba(from var(--text-color) r g b / .6);--background-color: light-dark(var(--light0), var(--dark0));--background-color-alt: light-dark(var(--light2), var(--dark2));--border-color: light-dark(var(--light3), var(--dark3));--base-accent-color: #a60707;--accent-color: #a60707;--border-width: .25rem;--headline-font: "Bitter", Georgia, "Times New Roman", serif;--body-font: "Bitter", Georgia, "Times New Roman", serif;--mono-font: "IBM Plex Mono", monospace;--font-bold: 800;--font-normal: 300;--border: var(--border-width) solid var(--border-color);--box-border: var(--border-width) solid var(--border-color);--shadow-color: light-dark(rgba(0, 0, 0, .275), rgba(0, 0, 0, .525));--image-shadow: 0 0 1em var(--shadow-color);--transition-time: .3s;--gap: 4rem}@media(prefers-color-scheme:light){:root{color-scheme:light}}@media(prefers-color-scheme:dark){:root{color-scheme:dark}}:root:has(dark-mode-toggle:state(light)){color-scheme:light}:root:has(dark-mode-toggle:state(dark)){color-scheme:dark}html,body{max-width:100%;overflow-x:hidden}body{text-wrap:pretty;text-rendering:optimizeLegibility;font-family:var(--body-font);font-weight:300;background:var(--background-color);border-top:var(--border-width) solid var(--accent-color);color:var(--text-color);line-height:2;margin:0}main,.container{max-width:1200px;margin:0 auto;padding:0 2rem;position:relative}main{text-shadow:.05em .05em .05em light-dark(#fff,#000)}@media not (min-width:480px){main,.container{padding:0 1rem}}@view-transition{navigation:auto}::view-transition-group(root){animation-duration:.5s}
