:root{--footer-bar-height:64px;--footer-clearance:calc(var(--footer-bar-height) + 1px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:calc(var(--footer-clearance) + 16px)}
body{padding-bottom:calc(var(--footer-clearance) + 12px)}
.site-footer{position:fixed;inset:auto 0 0;z-index:40;padding:0 0 env(safe-area-inset-bottom,0px);border-top:1px solid #ded8ce;background:#f7f4ee;color:#24261f;box-shadow:0 -4px 20px #27221a08}
.footer-drawer{position:relative}
.footer-drawer:not([open]) .footer-panel{display:none}
.footer-bar{display:block;cursor:pointer;list-style:none;background:#f7f4ee}
.footer-bar::-webkit-details-marker{display:none}
.footer-bar::marker{content:""}
.footer-bar-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;min-height:var(--footer-bar-height);padding-block:8px;max-width:calc(var(--www-wide-content) + 64px)}
.footer-copyright{font-size:12px;color:#716b60;white-space:nowrap}
.footer-hosting{display:inline-flex;align-items:center;gap:9px;font-size:12px;color:#716b60;white-space:nowrap}
.footer-hosting .swiss-flag{width:14px;height:10px;flex-shrink:0}
.footer-toggle{justify-self:end;display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:12px;font-weight:600;white-space:nowrap}
.footer-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.footer-bar:hover .footer-toggle{color:#bb482e}
.footer-bar:focus-visible{outline:2px solid #bb482e;outline-offset:-5px;border-radius:0}
.footer-collapse-label{display:none}
.footer-drawer[open] .footer-expand-label{display:none}
.footer-drawer[open] .footer-collapse-label{display:inline}
.footer-drawer[open] .footer-toggle svg{transform:rotate(180deg)}
.footer-panel{position:absolute;inset:auto 0 100%;max-height:min(70dvh,calc(100dvh - var(--footer-clearance) - 110px));overflow-y:auto;overscroll-behavior:contain;background:#f7f4ee;border-top:1px solid #ded8ce;border-bottom:1px solid #ded8ce;box-shadow:0 -16px 45px #27221a14;scroll-padding:20px;color:#24261f}
.footer-panel>.container-main{max-width:calc(var(--www-wide-content) + 64px);padding-block:28px}
.footer-panel .grid-footer{grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:32px}
.footer-panel .grid-footer>div:first-child p{max-width:300px;font-size:12px;line-height:1.7;color:#716b60}
.footer-panel .grid-footer h4{margin-bottom:8px;color:#534f44}
.footer-panel .grid-footer ul{margin:0;padding:0;list-style:none}
.footer-panel .grid-footer li+li{margin-top:0}
.footer-panel .grid-footer li a{display:flex;align-items:center;min-height:44px;width:fit-content;font-size:13px;color:#716b60!important;line-height:1.5}
.footer-panel .grid-footer li a:hover{color:#bb482e!important}
.footer-panel a:focus-visible{outline:2px solid #bb482e;outline-offset:3px;border-radius:4px}
.footer-panel .footer-bottom{margin-top:20px;padding-top:20px;font-size:10px;line-height:1.6;gap:12px;border-color:#ded8ce;color:#716b60}
.footer-panel .footer-bottom .swiss-flag{flex-shrink:0}
@media(max-width:767px){.footer-panel .grid-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.footer-panel .grid-footer>div:first-child{grid-column:1 / -1}
.footer-panel .grid-footer>div:nth-child(2){grid-column:1;grid-row:2 / span 2}
.footer-panel .grid-footer>div:nth-child(3){grid-column:2;grid-row:2}
.footer-panel .grid-footer>div:nth-child(4){grid-column:2;grid-row:3}
.footer-panel>.container-main{padding-block:22px}
.footer-panel .footer-bottom{align-items:flex-start}
}
@media(max-width:650px){:root{--footer-bar-height:76px}
.footer-bar-inner{grid-template-columns:minmax(0,1fr) auto;gap:0 16px;padding:6px 16px}
.footer-copyright{grid-column:1;grid-row:1;font-size:11px}
.footer-toggle{grid-column:2;grid-row:1;font-size:12px}
.footer-hosting{grid-column:1 / -1;grid-row:2;justify-self:center;font-size:11px;line-height:20px;gap:7px}
.footer-panel>.container-main{padding-inline:20px}
}
@media(prefers-reduced-motion:reduce){.footer-toggle svg{transition:none}
}
@media print{body{padding-bottom:0}
.site-footer{position:static;padding:0;box-shadow:none}
.footer-bar{display:none}
.footer-panel{position:static;max-height:none;overflow:visible;box-shadow:none}
.footer-drawer::details-content{content-visibility:visible}
}
