.cookie-banner[hidden],.cookie-modal[hidden]{display:none!important}

.cookie-banner{position:fixed;z-index:9998;right:18px;bottom:18px;left:18px;max-width:560px;margin:0 auto;opacity:0;transform:translateY(14px);transition:opacity .25s ease,transform .25s ease}
.cookie-banner.is-visible{opacity:1;transform:translateY(0)}
.cookie-banner__inner{padding:17px 18px 16px;border:1px solid rgba(188,183,172,.7);border-radius:14px;background:#f7f2e9;box-shadow:0 14px 45px rgba(45,42,37,.14)}
.cookie-banner__content h2{margin:0 0 6px;color:#353738;font-family:"Cormorant Garamond",serif;font-size:24px;font-weight:600;line-height:1}
.cookie-banner__content>p{max-width:510px;margin:0;color:#5b5b58;font-family:"Montserrat",sans-serif;font-size:11px;line-height:1.55}
.cookie-banner__settings-link{display:inline;margin:0 0 0 3px;padding:0;border:0;background:none;color:#666b58;font:600 11px/1.55 "Montserrat",sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.cookie-banner__actions,.cookie-modal__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:13px}
.cookie-btn{min-height:38px;padding:0 15px;border-radius:999px;font-family:"Montserrat",sans-serif;font-size:10.5px;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.cookie-btn:hover{transform:translateY(-1px)}
.cookie-btn--primary{border:1px solid #b76e56;background:#b76e56;color:#fff}
.cookie-btn--secondary{border:1px solid #c8c2b7;background:transparent;color:#4e504e}

.cookie-banner__eyebrow{margin:0 0 8px;color:#7a8065;font-family:"Montserrat",sans-serif;font-size:10px;font-weight:700;letter-spacing:1.6px}
.cookie-modal{position:fixed;z-index:9999;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .25s ease}
.cookie-modal.is-visible{opacity:1}
.cookie-modal__backdrop{position:absolute;inset:0;background:rgba(32,31,29,.38);backdrop-filter:blur(3px)}
.cookie-modal__box{position:relative;z-index:1;width:100%;max-width:560px;max-height:calc(100vh - 40px);padding:27px;overflow-y:auto;border:1px solid rgba(188,183,172,.65);border-radius:17px;background:#f7f2e9;box-shadow:0 24px 80px rgba(30,28,25,.22);transform:translateY(12px);transition:transform .25s ease}
.cookie-modal.is-visible .cookie-modal__box{transform:translateY(0)}
.cookie-modal__close{position:absolute;top:13px;right:15px;width:32px;height:32px;padding:0;border:1px solid #d3cec4;border-radius:50%;background:transparent;color:#555;font-size:20px;line-height:1;cursor:pointer}
.cookie-modal h2{margin:0 0 9px;color:#353738;font-family:"Cormorant Garamond",serif;font-size:29px;font-weight:600;line-height:.98}
.cookie-modal h2 em{color:#7a8065;font-weight:600}
.cookie-modal__intro{max-width:500px;margin:0 0 18px;color:#5b5b58;font-family:"Montserrat",sans-serif;font-size:11.5px;line-height:1.55}
.cookie-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px 0;border-top:1px solid #d9d3c8}
.cookie-option:last-of-type{border-bottom:1px solid #d9d3c8}
.cookie-option__text h3{margin:0 0 3px;color:#383a39;font-family:"Cormorant Garamond",serif;font-size:19px;font-weight:600}
.cookie-option__text p{max-width:420px;margin:0;color:#666560;font-family:"Montserrat",sans-serif;font-size:10.5px;line-height:1.5}
.cookie-option__required{color:#777b69;font-family:"Montserrat",sans-serif;font-size:10px;font-weight:600;white-space:nowrap}
.cookie-switch{position:relative;display:block;width:42px;height:24px;cursor:pointer}
.cookie-switch input{position:absolute;width:1px;height:1px;opacity:0}
.cookie-switch span{position:absolute;inset:0;border-radius:999px;background:#cbc6bc;transition:background .2s ease}
.cookie-switch span::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15);transition:transform .2s ease}
.cookie-switch input:checked+span{background:#7a8065}
.cookie-switch input:checked+span::after{transform:translateX(18px)}
.cookie-switch input:focus-visible+span{outline:2px solid #7a8065;outline-offset:3px}
.cookie-modal__footer{margin:12px 0 0;color:#85827b;font-family:"Montserrat",sans-serif;font-size:10px;line-height:1.5;text-align:right}
body.cookie-modal-open{overflow:hidden}

.footer-cookie-settings{margin:0;padding:0;border:0;background:none;color:#55575a;font-family:"Montserrat",sans-serif;font-size:12px;font-weight:400;line-height:inherit;cursor:pointer}
.footer-cookie-settings:hover{text-decoration:underline}

@media(max-width:600px){
  .cookie-banner{right:9px;bottom:9px;left:9px;max-width:none}
  .cookie-banner__inner{padding:14px 14px 13px;border-radius:13px}
  .cookie-banner__content h2{margin-bottom:5px;font-size:21px}
  .cookie-banner__content>p{font-size:10.5px;line-height:1.48}
  .cookie-banner__settings-link{font-size:10.5px;line-height:1.48}
  .cookie-banner__actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:11px}
  .cookie-btn{width:100%;min-height:38px;padding:0 8px;font-size:9.5px}
  .cookie-modal{align-items:flex-end;padding:8px}
  .cookie-modal__box{max-height:calc(100vh - 16px);padding:23px 16px 17px;border-radius:16px}
  .cookie-modal h2{font-size:26px}
  .cookie-option{gap:12px;padding:13px 0}
  .cookie-option__text h3{font-size:18px}
  .cookie-option__text p{font-size:10.5px}
  .cookie-option__required{max-width:65px;white-space:normal;text-align:right}
  .cookie-modal__actions{display:grid;grid-template-columns:1fr 1fr}
  .cookie-modal__footer{text-align:left}
}


/* Cookie consent zawsze nad sticky CTA, także na mobile */
.cookie-banner {
    z-index: 2147483645 !important;
}

.cookie-modal {
    z-index: 2147483646 !important;
}
