:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down}@font-face{font-family:MonospaceTypewriter;src:url(/fonts/MonospaceTypewriter.woff) format("woff"),url(/fonts/MonospaceTypewriter.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Liberation Sans;src:url(/fonts/LiberationSans-Bold.woff) format("woff"),url(/fonts/LiberationSans-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Liberation Sans;src:url(/fonts/LiberationSans-Regular.woff) format("woff"),url(/fonts/LiberationSans-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:light dark;--color-primary: #2e7d32;--color-primary--dark: #1e6e22;--color-primary--darker: #1a551d;--color-secondary: #81c784;--color-accent: #4caf50;--color-teal: #26c6da;--color-tertiary: #607d8b;--color-tertiary--dark: #455a64;--color-darkgrey: #1d2933;--color-background: #f8f9fa;--color-text: #212121;--color-headline: var(--color-primary--dark);--color-success: #43a047;--color-warning: #ff9800;--color-error: #d32f2f;--font-special: "MonospaceTypewriter";--font-sans-serif: "Liberation Sans", Helvetica, sans-serif;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px;--border-radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .09);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .13);--shadow-xl: 0 16px 40px rgba(0, 0, 0, .18)}*,*:before,*:after{box-sizing:border-box;scroll-margin-top:100px}html,body{margin:0;width:100%;min-height:100%;font-size:16px;font-family:var(--font-sans-serif)}html{color:var(--color-text);background-color:var(--color-background);scroll-behavior:smooth}body{padding-block-start:80px;font-size:calc(16px + (18 - 16) * ((100vw - 320px) / (1600 - 320)));background-image:linear-gradient(160deg,#f8f9fa,#eef1ec)}a{color:var(--color-primary--dark);text-decoration:none;transition:color .25s ease;&:hover{color:var(--color-accent)}}img,picture,figure{width:100%;height:auto}figure{margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-special);color:var(--color-headline);line-height:1.2;font-weight:600}h1,h2{--color-headline: var(--color-primary--dark)}body{display:grid;grid-template-rows:auto 1fr auto;min-height:100vh}.content-wrapper{display:grid;>*{margin-block-start:3rem;grid-column:content}p,li{line-height:1.6}}.page-body:not(:has(aside)){margin-block-end:4rem}.headline-gradient{background:linear-gradient(135deg,var(--color-teal) 0%,var(--color-accent) 45%,var(--color-primary) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}.headline-gradient .emoji{-webkit-text-fill-color:initial;color:initial}details summary{cursor:pointer;color:var(--color-primary--dark);transition:color .25s ease;user-select:none;&:hover{color:var(--color-accent)}&:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}}button:not(#theme-toggler),.button{border:none;margin:0;padding:0;width:auto;overflow:visible;background:transparent;color:inherit;font:inherit;line-height:normal;-webkit-font-smoothing:inherit;-moz-osx-font-smoothing:inherit;-webkit-appearance:none;background-color:var(--color-primary);color:#fff;padding:.85rem 1.25rem;cursor:pointer;border-radius:var(--border-radius-md);transition:background-color .25s ease,transform .2s ease,box-shadow .25s ease;font-weight:600;box-shadow:var(--shadow-sm);text-align:center;&:hover{background-color:var(--color-primary--dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}&:active{transform:translateY(0);box-shadow:var(--shadow-sm)}&:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}}.cta-button{display:inline-block;padding:1rem 1.75rem;text-decoration:none;font-family:var(--font-special);color:#fff;border-radius:var(--border-radius-lg);background:linear-gradient(135deg,var(--color-primary),var(--color-accent));transition:transform .25s ease,box-shadow .25s ease,background .25s ease;box-shadow:var(--shadow-md);font-weight:600;letter-spacing:.03em;&:hover,&:focus-visible{transform:translateY(-3px);box-shadow:var(--shadow-xl);background:linear-gradient(135deg,var(--color-primary--dark),var(--color-primary));color:#fff}& a{color:#fff}}@media(min-width:800px){.flex-center{display:flex;align-items:center;gap:3rem}.half-md{width:50%}}.content-grid{--padding-inline: 1rem;--content-max-width: 900px;--breakout-max-width: 1200px;--breakout-size: calc((var(--breakout-max-width) - var(--content-max-width)) / 2);display:grid;grid-template-columns:[full-width-start] minmax(var(--padding-inline),1fr) [breakout-start] minmax(0,var(--breakout-size)) [content-start] min(100% - (var(--padding-inline) * 2),var(--content-max-width)) [content-end] minmax(0,var(--breakout-size)) [breakout-end] minmax(var(--padding-inline),1fr) [full-width-end]}.content-grid>:not(.breakout,.full-width),.full-width>:not(.breakout,.full-width){grid-column:content}.content-grid>.breakout{grid-column:breakout}.content-grid>.full-width{grid-column:full-width;display:grid;grid-template-columns:inherit}@keyframes fromLeft{0%{transform:translate(-60px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fromRight{0%{transform:translate(60px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes blink-caret{0%,to{opacity:1}50%{opacity:0}}.blink-caret{position:relative;animation:fadeIn 1.2s cubic-bezier(.22,.61,.36,1) both}.blink-caret:after{content:"";display:inline-block;width:.2em;height:1em;margin-inline-start:.1em;vertical-align:middle;background:linear-gradient(to bottom,var(--color-primary),var(--color-accent));border-radius:2px;animation:blink-caret .75s step-end infinite}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}[data-theme=dark]{--color-background: #111614;--color-text: #e8ebe8;--color-headline: var(--color-text);--color-tertiary: #8fa8b8;--color-tertiary--dark: #b0c4cc;h1,h2{--color-headline: var(--color-primary)}body{background-image:linear-gradient(160deg,#111614,#1c2520)}a,details summary{color:var(--color-accent);&:hover{color:var(--color-secondary)}}button:not(#theme-toggler),.button,.cta-button,.cta-button a{color:#fff}}#main-navigation{--nav-link-color: var(--color-tertiary--dark);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.5rem;padding-inline:1.5rem;position:fixed;inset-block-start:0;inset-inline:0;z-index:999;background-color:#f8f9fae0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-block-end:1px solid rgba(0,0,0,.06);box-shadow:0 2px 16px #00000012;min-height:64px}#main-navigation .logo{display:flex;align-items:center;padding:.5rem;flex-shrink:0;transition:transform .25s ease;svg{display:block;width:140px;height:auto;transition:filter .25s ease}&:hover{transform:scale(1.04);svg{filter:drop-shadow(0 0 6px rgba(46,125,50,.35))}}}#main-navigation ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:.25rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}#main-navigation ul::-webkit-scrollbar{display:none}#main-navigation a.nav-item{display:inline-block;padding:.6rem 1.1rem;text-decoration:none;font-family:var(--font-special);font-weight:500;font-size:.95rem;color:var(--nav-link-color);border-radius:var(--border-radius-md);transition:color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease;position:relative;white-space:nowrap;&:hover,&:focus-visible{--nav-link-color: white;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));transform:translateY(-2px);box-shadow:var(--shadow-md);outline:none}&:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}&.active:not(:hover,:focus-visible){--nav-link-color: var(--color-primary);font-weight:600;background:#2e7d321a;border-radius:var(--border-radius-lg);&:after{content:"";position:absolute;inset-block-end:-4px;inset-inline-start:50%;transform:translate(-50%);width:60%;height:3px;background:var(--color-primary);border-radius:2px}}}[data-theme=dark] #main-navigation{--nav-link-color: #e8ebe8;background-color:#111614e6;border-block-end:1px solid rgba(255,255,255,.08);box-shadow:0 2px 20px #00000059}[data-theme=dark] #main-navigation .logo svg path{fill:#fff}[data-theme=dark] #main-navigation .nav-item.active:not(:hover,:focus-visible){--nav-link-color: var(--color-accent);background:#4caf501f}@media(max-width:600px){#main-navigation{padding-inline:1rem;gap:.5rem}#main-navigation .logo svg{width:110px}#main-navigation a.nav-item{padding:.5rem .75rem;font-size:.875rem}}svg[data-astro-cid-tvrurpns].animate #lbracket[data-astro-cid-tvrurpns]{transform:translate(-100px);animation:fromLeft .5s ease-in-out .5s forwards}svg[data-astro-cid-tvrurpns].animate #rbracket[data-astro-cid-tvrurpns]{transform:translate(100px);animation:fromRight .5s ease-in-out .5s forwards}svg[data-astro-cid-tvrurpns].animate #d[data-astro-cid-tvrurpns]{opacity:0%;animation:fadeIn .5s ease-in-out forwards}#theme-toggler[data-astro-cid-ef2qs43u]{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;flex-shrink:0;margin-inline-start:.5rem;background:transparent;transition:background .2s ease,transform .2s ease;&:hover{background:#00000014;transform:scale(1.1)}&:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}}[data-astro-cid-ef2qs43u][data-theme=dark] #theme-toggler[data-astro-cid-ef2qs43u]:hover{background:#ffffff1a}#lightbulb[data-astro-cid-ef2qs43u]{width:24px;height:24px;fill:var(--color-text);display:block;transition:fill .25s ease;flex-shrink:0}#scroll-indicator[data-astro-cid-7ivj2o3m]{position:absolute;inset-inline:0;inset-block-end:0;height:3px;background:transparent;overflow:hidden;pointer-events:none;z-index:1}#scroll-indicator-bar[data-astro-cid-7ivj2o3m]{height:100%;width:0%;border-radius:0 2px 2px 0;background:linear-gradient(90deg,var(--color-teal) 0%,var(--color-accent) 50%,var(--color-primary) 100%);box-shadow:0 0 8px #4caf5066,0 0 3px #26c6da4d;transition:width .08s linear,opacity .3s ease;opacity:0;will-change:width}#scroll-indicator-bar[data-astro-cid-7ivj2o3m][data-scrolled]{opacity:1}[data-astro-cid-7ivj2o3m][data-theme=dark] #scroll-indicator-bar[data-astro-cid-7ivj2o3m]{box-shadow:0 0 10px #4caf508c,0 0 4px #26c6da73}@media(prefers-reduced-motion:reduce){#scroll-indicator-bar[data-astro-cid-7ivj2o3m]{transition:none}}footer[data-astro-cid-sz7xmlte]{display:flex;justify-self:center;flex-direction:column-reverse;text-align:center;gap:1rem;padding:2.5rem;width:100%;color:var(--color-text);background:var(--color-darkgrey);justify-self:end;border-top:1px solid rgba(255,255,255,.1)}footer[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--color-primary);text-decoration:none;transition:color .3s ease;padding:.25rem .5rem;border-radius:var(--border-radius-sm)}footer[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-accent);background:#ffffff1a}@media(min-width:800px){footer[data-astro-cid-sz7xmlte]{flex-direction:row;justify-content:space-between}}[data-astro-cid-sz7xmlte][data-theme=dark] footer[data-astro-cid-sz7xmlte]{background:#0f172a;border-top:1px solid rgba(255,255,255,.05)}[data-astro-cid-sz7xmlte][data-theme=dark] footer[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{background:#ffffff26;color:var(--color-accent)}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
