.kf-consent[hidden], .kf-popup[hidden], .kf-consent__settings[hidden] { display: none !important; }
.kf-consent { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1080; background: #0b2a4a; color: #e8eef5; box-shadow: 0 -6px 24px rgba(0, 0, 0, .25); font-size: .9rem; }
.kf-consent__inner { max-width: 1140px; margin: 0 auto; padding: 1rem; display: flex; gap: 1rem 2rem; align-items: center; flex-wrap: wrap; }
.kf-consent__text { flex: 1 1 28rem; }
.kf-consent__text p { margin: 0; }
.kf-consent a { color: #fff; text-decoration: underline; }
.kf-consent__actions { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; }
.kf-consent__btn { border: 1.5px solid #fff; background: transparent; color: #fff; font-weight: 700; padding: .55rem 1rem; border-radius: .35rem; cursor: pointer; }
.kf-consent__btn:hover { background: rgba(255, 255, 255, .12); }
.kf-consent__btn--primary { background: #f26a1b; border-color: #f26a1b; }
.kf-consent__btn--primary:hover { background: #d85a10; border-color: #d85a10; }
.kf-consent__link { background: none; border: 0; color: #fff; text-decoration: underline; padding: .55rem .25rem; cursor: pointer; }
.kf-consent__settings { max-width: 1140px; margin: 0 auto; padding: 0 1rem 1rem; display: grid; gap: .6rem; }
.kf-consent__row { display: flex; gap: .6rem; align-items: flex-start; margin: 0; }
.kf-consent__row input { margin-top: .3rem; }
.kf-consent__settings .kf-consent__btn { justify-self: start; }
.kf-popup { position: fixed; inset: 0; z-index: 1090; background: rgba(11, 42, 74, .6); display: flex; align-items: center; justify-content: center; padding: 1rem; }
.kf-popup__box { position: relative; background: #fff; color: #1c2b3a; max-width: 38rem; width: 100%; max-height: 90vh; overflow: auto; border-radius: .5rem; padding: 1.75rem; box-shadow: 0 20px 50px rgba(0, 0, 0, .35); }
.kf-popup__title { font-size: 1.35rem; font-weight: 800; color: #0b2a4a; margin: 0 2rem .75rem 0; }
.kf-popup__close { position: absolute; top: .5rem; right: .75rem; border: 0; background: none; font-size: 2rem; line-height: 1; cursor: pointer; color: #0b2a4a; }
.kf-popup__content { margin-bottom: 1.25rem; }
.kf-popup .kf-consent__btn { color: #fff; }
