.cookie-panel,.cookie-dialog { font: 16px/1.55 "DM Sans",system-ui,sans-serif; color:#f7f7ef; background:linear-gradient(120deg,rgba(37,74,62,.98),rgba(55,91,76,.97)); border:1px solid #ffffff45; border-radius:24px; box-shadow:0 12px 48px #102b2830,inset 0 1px #ffffff45; padding:24px; }
.cookie-panel { position:fixed; bottom:20px; left:20px; right:20px; z-index:10000; display:flex; align-items:center; gap:28px; max-width:1120px; margin:auto; backdrop-filter:blur(20px); }
.cookie-panel[hidden] { display:none; }
.cookie-panel h2,.cookie-dialog h2 { font:500 23px/1.2 "DM Sans",system-ui,sans-serif; margin:0 0 10px; }
.cookie-panel p,.cookie-dialog p { margin:8px 0; }
.cookie-panel a,.cookie-dialog a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:10px; flex-shrink:0; }
.cookie-panel .cookie-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:300px; max-width:100%; }
.cookie-panel .cookie-actions button { padding:10px 8px; background:transparent; border-color:transparent; font-size:14px; }
.cookie-panel .cookie-actions .cookie-accept { grid-column:1 / -1; padding:14px 20px; background:#fff; border-color:#fff; color:#183e30; font-size:16px; font-weight:600; }
.cookie-panel .cookie-actions .cookie-accept:hover { background:#edf3ee; border-color:#edf3ee; }
.cookie-panel .cookie-actions button:not(.cookie-accept) { border:0; border-radius:0; background:none; box-shadow:none; text-decoration:underline; text-underline-offset:3px; padding:6px 0; }
.cookie-panel .cookie-actions button:not(.cookie-accept):hover { background:none; text-decoration-thickness:2px; }
.cookie-actions button { font:inherit; padding:11px 16px; color:inherit; background:#ffffff18; border:1px solid #ffffff65; border-radius:12px; cursor:pointer; }
.cookie-actions button:hover { background:#ffffff30; }
.cookie-actions button:focus-visible,.cookie-dialog input:focus-visible,[data-cookie-settings]:focus-visible { outline:3px solid #d6e8c2; outline-offset:4px; }
.cookie-dialog { width: min(560px,calc(100% - 32px)); max-height:85dvh; overflow:auto; }
.cookie-dialog::backdrop { background:#0c201866; backdrop-filter:blur(5px); }
.cookie-category { margin:20px 0; padding:16px; border-radius:16px; background:#ffffff0d; }
.cookie-category span { float:right; font-size:14px; }
.cookie-category input { width:20px; height:20px; accent-color:#b7d5bd; vertical-align:middle; }
.cookie-category label { cursor:pointer; }
.footer [data-cookie-settings] { display:block; font:inherit; text-align:left; margin-top:8px; }
.legal-page { background:#f5f1e7; color:#193b30; margin:0; font:17px/1.75 "DM Sans",system-ui,sans-serif; }
.legal-nav,.legal-main,.legal-footer { width:min(820px,calc(100% - 40px)); margin:auto; }
.legal-nav { padding:28px 0; display:flex; justify-content:space-between; align-items:center; }
.legal-nav img { width:44px; height:auto; }
.legal-page a { color:inherit; text-underline-offset:4px; }
.legal-main { padding:24px 0 64px; }
.legal-main h1 { font-size:clamp(36px,7vw,60px); letter-spacing:-.04em; line-height:1.1; margin:16px 0 28px; }
.legal-main h2 { font-size:23px; margin:36px 0 12px; }
.legal-intro { padding:24px; border-radius:24px; background:linear-gradient(120deg,#d8e4d8,#f4e7ce); }
.legal-footer { padding:24px 0 60px; display:flex; flex-wrap:wrap; gap:20px; }
.legal-footer button { font:inherit; border:0; background:none; padding:0; color:inherit; text-decoration:underline; cursor:pointer; }
@media(max-width:760px) { .cookie-panel { left:12px;right:12px;bottom:12px;padding:20px;display:block;max-height:80dvh;overflow:auto; } .cookie-panel .cookie-actions { margin-top:18px;max-width:none;width:100%; } .cookie-actions button { flex:1 1 auto; } }

.cookie-panel { max-width:980px;padding:12px 16px;gap:20px;border-radius:18px;background:rgba(224,225,221,.78);color:#202820;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);font-size:13px;line-height:1.5; }
.cookie-panel p { margin:0; }
.cookie-panel > div:first-child { flex:1;min-width:0; }
.cookie-panel .cookie-actions { width:auto;grid-template-columns:auto auto auto;align-items:center;gap:10px; }
.cookie-panel .cookie-actions .cookie-accept { grid-column:auto;padding:8px 14px;min-height:40px;font-size:14px; }
.cookie-panel .cookie-actions button:not(.cookie-accept) { font-size:11px;min-height:40px;padding:8px 4px;white-space:nowrap; }
@media(max-width:760px) {
 .cookie-panel { display:flex;flex-direction:column;align-items:stretch;padding:12px 14px;gap:10px;max-width:460px; }
 .cookie-panel .cookie-actions { width:100%;margin-top:0;grid-template-columns:1.3fr 1fr 1fr;gap:4px; }
 .cookie-panel .cookie-actions .cookie-accept { padding:8px;font-size:12px;white-space:nowrap; }
 .cookie-panel .cookie-actions button:not(.cookie-accept) { font-size:10px;padding:8px 2px; }
}
/* Footer settings use the same quiet text treatment as legal links. */
footer [data-cookie-settings] { appearance:none;border:0;border-radius:0;background:none;box-shadow:none;padding:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer;width:auto; }
