.siteFooter{position:relative;margin-top:1.5rem;padding:2.5rem 0;background:var(--footer-bg);color:var(--footer-link);font-size:.875rem;line-height:1.5}.siteFooter-fade{bottom:100%;height:200px;background:linear-gradient(to bottom,transparent,var(--footer-bg));z-index:-1}.siteFooter-fade,.siteFooter-horizon{position:absolute;left:0;right:0;pointer-events:none}.siteFooter-horizon{top:0;height:2.5rem;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent-text) 55%,transparent) 50%,transparent) top /100% 1px no-repeat,radial-gradient(ellipse 55% 100% at 50% 0,color-mix(in srgb,var(--glow) 22%,transparent),transparent 80%)}.siteFooter-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none}.siteFooter-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand mark" "groups groups" "lang lang";align-items:start;grid-gap:1.5rem 1rem;gap:1.5rem 1rem;max-width:78rem;margin:0 auto;--footer-pad:min(1.5rem,6.15vw);padding:0 var(--footer-pad)}:where(.siteFooter) h2,:where(.siteFooter) p,:where(.siteFooter) ul{margin:0}.siteFooter-brand{grid-area:brand;min-width:0;position:relative;z-index:1}.siteFooter-name{font-family:var(--font-brand),system-ui,sans-serif;letter-spacing:-.0167em;font-size:1.375rem}.siteFooter-headline,.siteFooter-name{color:var(--text-primary);font-weight:700;line-height:1.2;overflow-wrap:anywhere}.siteFooter-headline{margin-top:.5rem;font-size:1.25rem;text-wrap:balance}.siteFooter-mark{grid-area:mark;position:relative;width:min(92px,24vw);height:min(92px,24vw)}.siteFooter-mark:before{content:"";position:absolute;top:-20%;bottom:-20%;left:-20%;right:max(-20%,calc(-1 * var(--footer-pad)));background:radial-gradient(closest-side,color-mix(in srgb,var(--glow) 22%,transparent),transparent);pointer-events:none}.siteFooter-mark img{position:relative;display:block;width:100%;height:100%}.siteFooter-groups{grid-area:groups;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem 1rem;gap:.5rem 1rem}.siteFooter-group--project{grid-column:1/-1;margin-top:.75rem;padding-top:1rem;border-top:1px solid var(--footer-line)}.siteFooter-group--project ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0 1rem;gap:0 1rem}.siteFooter-groupTitle{margin-bottom:.5rem;color:var(--footer-heading);font-size:.75rem;font-weight:600;line-height:1.5}.siteFooter ul{padding:0;list-style:none}.siteFooter li{display:flex}.siteFooter a,.siteFooter-linkButton{display:inline-flex;align-items:center;gap:.625rem;min-height:2.75rem;color:var(--footer-link);text-decoration:none}.siteFooter-linkButton{padding:0;border:0;background:none;font:inherit;text-align:start;cursor:pointer}.siteFooter-icon{flex:none;color:var(--accent-text)}.siteFooter a:hover,.siteFooter-linkButton:hover{color:var(--text-primary);text-decoration:underline}.siteFooter a:focus-visible,.siteFooter-linkButton:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:.25rem}@media (min-width:64rem){.siteFooter{padding:3rem 0}.siteFooter-horizon{height:3rem}.siteFooter-inner{grid-template-areas:"brand mark" "groups mark" "lang lang";grid-template-rows:auto 1fr auto;align-items:start;gap:2rem 3rem;--footer-pad:clamp(2rem,6.67vw,6rem)}.siteFooter-name{font-size:1.625rem;line-height:1.25}.siteFooter-headline{margin-top:.75rem;font-size:2rem;line-height:1.25}.siteFooter-mark{width:220px;height:220px;align-self:center}.siteFooter-groups{grid-template-columns:repeat(3,minmax(0,14.75rem));gap:0 2rem;align-self:start}.siteFooter-group--project{grid-column:auto;margin-top:0;padding-top:0;border-top:0}.siteFooter-group--project ul{display:block}.siteFooter-groupTitle{margin-bottom:.375rem}}@media (min-width:64rem) and (hover:hover) and (pointer:fine) and (not (any-pointer:coarse)){.siteFooter a,.siteFooter-linkButton{min-height:1.25rem;line-height:1.25rem}.siteFooter li+li{margin-top:.75rem}}@media (prefers-contrast:more){.siteFooter{border-top:1px solid var(--hairline)}.siteFooter-fade,.siteFooter-horizon,.siteFooter-mark:before{display:none}}@media print{.siteFooter{background:none}.siteFooter .siteFooter-language,.siteFooter-backdrop,.siteFooter-fade,.siteFooter-horizon,.siteFooter-mark{display:none}}.siteFooter-language{grid-area:lang;justify-self:start;color:var(--footer-link)}.cookieBanner{--cookie-glass:color-mix(in srgb,var(--bg) 55%,transparent);position:fixed;left:0;right:0;bottom:0;z-index:50;padding:.5rem max(1rem,env(safe-area-inset-right)) calc(.5rem + env(safe-area-inset-bottom, 0px)) max(1rem,env(safe-area-inset-left));border-top:1px solid var(--hairline);border-radius:1rem 1rem 0 0;background:var(--cookie-glass);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(.4);backdrop-filter:blur(20px) saturate(180%) brightness(.4);color:var(--text-primary);font-size:.8125rem;line-height:1.6;max-height:70dvh;overflow-y:auto;transition:transform var(--motion-sheet-in) var(--ease-out),opacity var(--motion-sheet-in) var(--ease-out)}.cookieBanner[data-state=closing],.cookieBanner[data-state=entering]{transform:translateY(100%);opacity:0}.cookieBanner[data-state=closing]{transition:transform var(--motion-sheet-out) var(--ease-in),opacity var(--motion-sheet-out) var(--ease-in)}@media (prefers-reduced-motion:reduce){.cookieBanner,.cookieBanner[data-state=closing]{transition:opacity var(--motion-reduced) linear}.cookieBanner[data-state=closing],.cookieBanner[data-state=entering]{transform:none}}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.cookieBanner{background:var(--bg)}}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.cookieBanner{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}}.cookieBanner-inner{display:grid;grid-gap:.75rem;gap:.75rem;max-width:64rem;margin:0 auto}.cookieBanner p{margin:0;text-wrap:balance}.cookieBanner-current,.cookieBanner-sentence{color:var(--text-secondary)}.cookieBanner-details,.cookieBanner-sentence{word-break:keep-all}.cookieBanner-tail{white-space:nowrap}.cookieBanner-link{display:inline;min-height:0;min-width:0;padding:0;border:0;background:none;color:var(--accent-text);font:inherit;text-decoration:underline;text-underline-offset:.2em;white-space:nowrap;cursor:pointer}.cookieBanner-link:active{transform:none}.cookieBanner-link--inline{position:relative}.cookieBanner-link--inline:after{content:"";position:absolute;inset:-.75rem -.5rem}.cookieBanner-link--beside{display:none}.cookieBanner-button:focus-visible,.cookieBanner-link:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px;border-radius:.25rem}.cookieBanner-actions{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:.5rem;gap:.5rem}.cookieBanner-button{min-height:2.75rem;padding:0 1.25rem;border:1px solid var(--control-border);border-radius:999px;background:transparent;color:var(--text-primary);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}.cookieBanner-button:hover{background:var(--footer-line)}.cookieBanner-button:active{background:var(--hairline)}.cookieBanner-details{padding-top:.75rem;border-top:1px solid var(--hairline);color:var(--text-secondary)}@media (min-width:40rem){.cookieBanner-inner{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:1.5rem}.cookieBanner-link--inline{display:none}.cookieBanner-link--beside{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 .25rem;white-space:nowrap}.cookieBanner-details{grid-column:1/-1}}@media print{.cookieBanner{display:none}}