.footer-cookie-link{display:inline;padding:0;background:none;border:0;color:var(--tx-d-mut);font:inherit;font-size:.85rem;line-height:1.6;text-align:left;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;cursor:pointer;transition:color .2s var(--e),text-decoration-color .2s var(--e)}
.footer-cookie-link:hover{color:var(--tx-d);text-decoration-color:var(--y)}
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:300;background:rgba(11,10,8,.98);border-top:1px solid rgba(255,193,60,.42);box-shadow:0 -22px 55px -30px rgba(0,0,0,.95);color:var(--tx-d);transform:translateY(110%);transition:transform .42s var(--e)}
.cookie-banner.is-visible{transform:translateY(0)}
.cookie-inner{max-width:var(--maxw);margin-inline:auto;padding:1.25rem clamp(1.1rem,4vw,2.5rem);display:grid;grid-template-columns:auto minmax(260px,1fr) auto;gap:1.15rem;align-items:center}
.cookie-icon{width:32px;height:32px;color:var(--y);flex:none}
.cookie-copy{max-width:72ch;color:var(--tx-d-mut);font-size:.78rem;line-height:1.55}
.cookie-copy strong{color:var(--tx-d);font-weight:700}
.cookie-copy a{color:var(--y);text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;gap:.55rem;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.cookie-btn{min-height:42px;padding:.7rem 1rem;border:1px solid transparent;border-radius:3px;font-family:var(--body);font-size:.61rem;font-weight:750;line-height:1.2;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background .2s var(--e),border-color .2s var(--e),color .2s var(--e),transform .2s var(--e)}
.cookie-btn:hover{transform:translateY(-1px)}
.cookie-btn-primary{background:var(--y);border-color:var(--y);color:var(--tx-l)}
.cookie-btn-primary:hover{background:#ffcf69;border-color:#ffcf69}
.cookie-btn-secondary{background:transparent;border-color:rgba(255,255,255,.28);color:var(--tx-d)}
.cookie-btn-secondary:hover{border-color:var(--y);color:var(--y)}
.cookie-btn-link{min-height:42px;padding:.7rem .35rem;background:none;border:0;color:var(--tx-d-mut)}
.cookie-btn-link:hover{color:var(--y)}
.cookie-panel{max-width:var(--maxw);max-height:0;margin-inline:auto;padding-inline:clamp(1.1rem,4vw,2.5rem);overflow:hidden;transition:max-height .38s var(--e),padding-bottom .38s var(--e)}
.cookie-panel.is-open{max-height:470px;padding-bottom:1.35rem}
.cookie-category{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start;padding:1rem 0;border-top:1px solid rgba(255,255,255,.1)}
.cookie-category h3{margin:0 0 .18rem;font-family:var(--disp);font-size:.88rem;font-weight:750;line-height:1.25;letter-spacing:-.01em;color:var(--tx-d)}
.cookie-category p{margin:0;max-width:75ch;color:var(--tx-d-mut);font-size:.72rem;line-height:1.5}
.cookie-toggle{position:relative;width:46px;height:26px;margin-top:.12rem;flex:none}
.cookie-toggle input{position:absolute;width:1px;height:1px;opacity:0}
.cookie-track{position:absolute;inset:0;border-radius:99px;background:rgba(255,255,255,.18);cursor:pointer;transition:background .2s var(--e)}
.cookie-track::before{content:"";position:absolute;left:4px;top:4px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.35);transition:transform .2s var(--e)}
.cookie-toggle input:checked+.cookie-track{background:var(--y)}
.cookie-toggle input:checked+.cookie-track::before{transform:translateX(20px)}
.cookie-toggle input:disabled+.cookie-track{opacity:.48;cursor:not-allowed}
.cookie-toggle input:focus-visible+.cookie-track{outline:2px solid var(--y);outline-offset:3px}
.cookie-save{display:flex;justify-content:flex-end;padding-top:.35rem}
@media(max-width:920px){
  .cookie-inner{grid-template-columns:auto minmax(0,1fr)}
  .cookie-actions{grid-column:1/-1;justify-content:flex-start;padding-left:47px}
}
@media(max-width:620px){
  .cookie-inner{grid-template-columns:1fr;gap:.75rem;padding-block:1rem}
  .cookie-icon{display:none}
  .cookie-copy{font-size:.73rem}
  .cookie-actions{padding-left:0;display:grid;grid-template-columns:1fr 1fr;width:100%}
  .cookie-btn{width:100%;padding-inline:.6rem;white-space:normal}
  .cookie-btn-link{grid-column:1/-1}
  .cookie-panel.is-open{max-height:600px}
  .cookie-save .cookie-btn{width:auto;min-width:170px}
}
@media(prefers-reduced-motion:reduce){.cookie-banner,.cookie-panel,.cookie-btn,.cookie-track,.cookie-track::before{transition:none}}
