/* Floating card: bottom-left on desktop, inset from the edges on phones (see the 600px query). */
.tm-cookie-banner{position:fixed;z-index:150;left:24px;bottom:24px;box-sizing:border-box;width:380px;max-width:calc(100% - 48px);padding:14px 18px;background:#fffdf7;color:#212722;border:1px solid #e1ab33;border-radius:14px;box-shadow:0 18px 48px rgba(5,18,14,.24),0 3px 12px rgba(5,18,14,.16);max-height:calc(100dvh - 80px);overflow:auto;font:inherit;color-scheme:light}
.tm-cookie-banner h2{max-width:15em;font-size:15px;line-height:1.3;letter-spacing:-.2px;margin:0;color:#212722;text-wrap:balance}
.tm-cookie-banner p{font-size:13px;line-height:1.55;color:#4e514a;margin:0 0 8px}
.tm-cookie-banner strong{color:#212722}
.tm-cookie-banner a{color:#173c36;text-decoration:underline;text-underline-offset:3px}
.tm-cookie-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:18px}
.tm-cookie-actions button{min-height:44px;padding:10px 26px;border-radius:5px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.tm-cookie-primary{background:#173c36;color:#fff;border:1px solid #173c36}
.tm-cookie-primary:hover{background:#102f2a;border-color:#102f2a}
.tm-cookie-continue{background:#f1e7cc;color:#29271f;border:1px solid #8b6b25}
.tm-cookie-continue:hover{background:#e8d8b0;border-color:#8b6b25;color:#29271f}
.tm-cookie-secondary{background:transparent;color:#29271f;border:1px solid #8b6b25}
.tm-cookie-secondary:hover{background:#f6f1e5;border-color:#8b6b25;color:#29271f}
.tm-cookie-banner .tm-cookie-text,.tm-cookie-dialog .tm-cookie-text{background:none;border:0;color:#173c36;min-height:44px;padding:10px 8px;font:inherit;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.tm-cookie-text:hover{text-decoration:underline;text-underline-offset:4px}
.tm-cookie-dialog{margin:auto;inset:0;overflow:auto;box-sizing:border-box;width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:26px 28px;background:#fffdf7;color:#212722;border:1px solid #e1ab33;border-radius:14px;box-shadow:0 24px 64px rgba(5,18,14,.3),0 4px 16px rgba(5,18,14,.18);font:inherit;color-scheme:light}
.tm-cookie-dialog::backdrop{background:rgba(3,8,10,.72)}
.tm-cookie-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.tm-cookie-dialog h2{font-size:21px;line-height:1.3;margin:0;color:#212722}
.tm-cookie-description{font-size:13.5px;line-height:1.55;color:#4e514a;margin-bottom:16px}
.tm-cookie-description p{margin:0 0 10px}
.tm-cookie-description p:last-child{margin-bottom:0}
.tm-cookie-description strong{color:#212722}
.tm-cookie-description a{color:#173c36;text-decoration:underline;text-underline-offset:3px}
.tm-cookie-x{width:44px;height:44px;flex:0 0 auto;border:1px solid #8b6b25;border-radius:50%;background:#f1e7cc;color:#29271f;font-size:22px;line-height:1;cursor:pointer}
.tm-cookie-x:hover{background:#e8d8b0;border-color:#8b6b25;color:#29271f}
.tm-cookie-category{padding:16px 0;border-top:1px solid #d7cdb5}
.tm-cookie-category-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}
.tm-cookie-category h3,.tm-cookie-category label{font-size:16px;font-weight:600;color:#212722;margin:0;cursor:pointer}
.tm-cookie-category p{font-size:13.5px;line-height:1.65;color:#4e514a;margin:0}
.tm-cookie-category-head label{margin-right:auto}.tm-cookie-badge{font-size:12px;font-weight:600;color:#173c36;white-space:nowrap;padding:3px 10px;border:1px solid #8b6b25;border-radius:20px;background:#f1e7cc}.tm-switch:checked:disabled{opacity:1}
.tm-switch{appearance:none;flex:0 0 auto;width:46px;height:26px;margin:0;border-radius:26px;background:#777c74;border:1px solid #6a7067;position:relative;cursor:pointer;transition:background .2s}
.tm-switch::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}
.tm-switch:checked{background:#0d6b60;border-color:#0d6b60}
.tm-switch:checked::after{transform:translateX(20px);background:#fff}
.tm-switch:disabled{opacity:.4;cursor:not-allowed}
.tm-cookie-dialog .tm-cookie-actions{padding-top:16px;border-top:1px solid #d7cdb5;margin-top:0}
.tm-cookie-preferences{font-size:12px;color:#c3d1d2;text-decoration:underline;text-underline-offset:4px;background:none;border:0;padding:8px 0;cursor:pointer}
.tm-cookie-banner :focus-visible,.tm-cookie-dialog :focus-visible{outline:2px solid #00666e;outline-offset:3px}
.tm-cookie-preferences:focus-visible{outline:2px solid #e1ab33;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.tm-switch,.tm-switch::after{transition:none}}
/* Keep the summary compact; full information is available in Preferences. */
.tm-cookie-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.tm-cookie-banner-x{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:8px;background:transparent;color:#173c36;font:inherit;font-size:24px;line-height:1;cursor:pointer}
.tm-cookie-banner-x:hover{background:#f1e7cc}
.tm-cookie-banner .tm-cookie-actions{gap:8px;margin-top:10px;flex-wrap:wrap}
.tm-cookie-banner .tm-cookie-actions button{flex:1 1 0;min-height:44px;padding:8px 12px;font-size:13px}
.tm-cookie-banner .tm-cookie-actions .tm-cookie-text{flex:1 0 100%;padding:8px 4px}
.tm-cookie-banner .tm-cookie-actions .tm-cookie-continue{min-height:44px;padding:8px 12px}
@media(max-width:600px){
 .tm-cookie-banner{left:calc(12px + env(safe-area-inset-left,0px));right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));width:auto;max-width:none;padding:10px 14px}
 .tm-cookie-banner h2{font-size:14px}
 .tm-cookie-banner p{font-size:12.5px;line-height:1.5;margin-bottom:6px}
 .tm-cookie-dialog{padding:14px 16px;max-height:calc(100dvh - 24px)}
 .tm-cookie-dialog-head{margin-bottom:6px}
 .tm-cookie-dialog h2{font-size:16px}
 .tm-cookie-description{font-size:12px;line-height:1.45;margin-bottom:12px}
 .tm-cookie-x{width:44px;height:44px;font-size:18px}
 .tm-cookie-category{padding:8px 0}
 .tm-cookie-category-head{margin-bottom:3px}
 .tm-cookie-category label{font-size:14px}
 .tm-cookie-badge{font-size:11px;padding:2px 8px}
 .tm-cookie-category p{font-size:12px;line-height:1.45;display:block}
 .tm-cookie-dialog .tm-cookie-actions{padding-top:10px;margin-top:0}
 .tm-cookie-dialog .tm-cookie-actions button{flex:1 1 auto;min-height:44px;font-size:13px}
}
@media(max-width:360px){.tm-cookie-banner .tm-cookie-actions button{font-size:12px;padding:8px 2px;white-space:nowrap}.tm-cookie-banner .tm-cookie-actions .tm-cookie-text{padding:8px 2px}}
@media print{.tm-cookie-banner,.tm-cookie-dialog,.tm-cookie-preferences{display:none!important}}
