/* The website footer (shared/footer.js): a dark panel with the brand, links and a small bottom row */
.wf { margin: 12px; border-radius: 32px; background: #121513; color: #EEF0EC; overflow: hidden; font-family: 'Geist', system-ui, sans-serif; }
.wf a { color: inherit; text-decoration: none; }
.wf-inner { width: min(1200px, 100% - 48px); margin: 0 auto; padding: clamp(48px, 6vw, 72px) 0 0; }
.wf-top { display: grid; grid-template-columns: 1.1fr 1.6fr; gap: clamp(36px, 6vw, 90px); }
.wf-logo { display: block; width: 138px; height: auto; color: #EEF0EC; }
.wf-brand p { margin: 20px 0 22px; max-width: 34ch; color: rgba(238, 240, 236, .62); font-size: 15px; line-height: 1.6; }
.wf-cta { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 18px; border-radius: 12px; background: #7CC3A1; color: #0B1F17 !important; font-weight: 600; font-size: 14px; transition: background .2s, transform .2s; }
.wf-cta:hover { background: #95D2B4; }
.wf-cta:active { transform: scale(.98); }
.wf-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.wf-col h4 { margin: 0 0 16px; font-size: 13px; font-weight: 600; color: rgba(238, 240, 236, .5); letter-spacing: 0; }
.wf-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 11px; }
.wf-col a { font-size: 15px; color: rgba(238, 240, 236, .86); transition: color .2s; }
.wf-col a:hover { color: #7CC3A1; }
.wf-bottom { display: flex; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap; margin-top: clamp(40px, 5vw, 60px); padding: 22px 0 26px; border-top: 1px solid rgba(238, 240, 236, .12); font-size: 13px; color: rgba(238, 240, 236, .5); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .wf { background: #0E2A20; }
}
@media (max-width: 860px) { .wf-top { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .wf { margin: 8px; border-radius: 24px; } .wf-inner { width: calc(100% - 40px); } .wf-cols { grid-template-columns: 1fr 1fr; } }

.wf-ck-open { border: 0; background: none; padding: 0; color: inherit; font: inherit; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.wf-ck-open:hover { color: #7CC3A1; }
/* cookie choices */
.ck { position: fixed; left: 16px; bottom: 16px; z-index: 90; width: min(420px, calc(100vw - 32px)); padding: 18px; border-radius: 16px; background: #FCFCFA; color: #121513; border: 1px solid #DADDD7; box-shadow: 0 24px 60px -24px rgba(0, 0, 0, .35); font-family: 'Geist', system-ui, sans-serif; font-size: 14px; opacity: 0; transform: translateY(14px); transition: opacity .3s, transform .45s cubic-bezier(.16, 1, .3, 1); }
.ck.on { opacity: 1; transform: none; }
.ck b { font-size: 15px; font-weight: 600; }
.ck p { margin: 6px 0 14px; color: #3A403C; line-height: 1.5; }
.ck a { color: #1F5641; }
.ck-opts { display: grid; gap: 8px; margin: 0 0 14px; }
.ck-opts label { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid #DADDD7; border-radius: 10px; cursor: pointer; }
.ck-opts input { width: 17px; height: 17px; accent-color: #1F5641; margin: 0; }
.ck-opts small { margin-left: auto; color: #5B615D; font-size: 12px; }
.ck-acts { display: flex; gap: 8px; flex-wrap: wrap; }
.ck-acts button { flex: 1; height: 40px; border-radius: 10px; border: 1px solid #DADDD7; background: #fff; color: #121513; font: inherit; font-weight: 600; cursor: pointer; white-space: nowrap; }
.ck-acts button:hover { border-color: #1F5641; }
.ck-acts button.dark { background: #1F5641; border-color: #1F5641; color: #F3F7F4; }
.ck-acts button.link { flex: none; border: 0; background: none; text-decoration: underline; text-underline-offset: 2px; padding: 0 6px; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .ck { background: #171A18; color: #EEF0EC; border-color: #2B302D; }
  :root:not([data-theme="light"]) .ck p { color: #C9CEC9; }
  :root:not([data-theme="light"]) .ck a { color: #7CC3A1; }
  :root:not([data-theme="light"]) .ck-opts label, :root:not([data-theme="light"]) .ck-acts button { border-color: #2B302D; background: #1D211F; color: #EEF0EC; }
  :root:not([data-theme="light"]) .ck-acts button.dark { background: #7CC3A1; border-color: #7CC3A1; color: #0B1F17; }
  :root:not([data-theme="light"]) .ck-acts button.link { background: none; }
  :root:not([data-theme="light"]) .ck-opts small { color: #A0A7A2; }
}
