.hbcss-consent[hidden], .hbcss-consent [hidden] { display: none !important; }
.hbcss-consent { box-sizing: border-box; position: fixed; z-index: 2147483000; left: clamp(12px, 2.2vw, 36px); right: clamp(12px, 2.2vw, 36px); bottom: clamp(12px, 2.2vw, 30px); max-width: 1160px; margin-inline: auto; display: grid; grid-template-columns: minmax(175px, 28%) minmax(0, 1fr); align-items: center; overflow: hidden; border: 1px solid rgba(196, 199, 223, .8); border-radius: 24px; background: linear-gradient(120deg, #f7f8ff 0%, #fff 52%, #f2faf7 100%); box-shadow: 0 22px 70px rgba(24, 20, 58, .22), 0 4px 18px rgba(24, 20, 58, .08); color: #221c43; font-family: inherit; isolation: isolate; }
.hbcss-consent *, .hbcss-consent *::before, .hbcss-consent *::after { box-sizing: border-box; }
.hbcss-consent::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 42%; background: radial-gradient(circle at 40% 55%, rgba(178, 156, 231, .21), transparent 65%); pointer-events: none; z-index: -1; }
.hbcss-consent__art { min-width: 0; height: 100%; display: grid; place-items: center; padding: 12px 0 12px 18px; }
.hbcss-consent__art img { display: block; width: min(100%, 320px); height: auto; object-fit: contain; filter: drop-shadow(0 12px 19px rgba(70, 52, 111, .1)); }
.hbcss-consent__content { min-width: 0; padding: clamp(20px, 2.5vw, 30px) clamp(22px, 3.2vw, 42px) clamp(18px, 2.4vw, 26px) 10px; }
.hbcss-consent__eyebrow { color: #6343b4; font-size: .71rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 7px; }
.hbcss-consent h2 { margin: 0 0 8px; color: #221c43; font-size: clamp(1.25rem, 1.7vw, 1.75rem); line-height: 1.17; letter-spacing: -.035em; font-weight: 750; }
.hbcss-consent p { margin: 0; color: #4b4864; font-size: clamp(.88rem, 1vw, .98rem); line-height: 1.5; max-width: 68ch; }
.hbcss-consent__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.hbcss-consent__button { min-height: 43px; padding: 10px 19px; border-radius: 11px; border: 1px solid #45317d; font: inherit; font-size: .88rem; font-weight: 750; line-height: 1.2; cursor: pointer; transition: background .16s, color .16s, transform .16s; }
.hbcss-consent__button:hover { transform: translateY(-1px); }
.hbcss-consent__button:focus-visible, .hbcss-consent__links :focus-visible, .hbcss-consent input:focus-visible { outline: 3px solid #58c0ac; outline-offset: 3px; }
.hbcss-consent__button--primary { color: #fff; background: #39246c; }
.hbcss-consent__button--primary:hover { background: #563999; color: #fff; }
.hbcss-consent__button--secondary { color: #302258; background: #fff; }
.hbcss-consent__button--secondary:hover { color: #211743; background: #ede9f8; }
.hbcss-consent__links { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 19px; margin-top: 12px; }
.hbcss-consent__links button, .hbcss-consent__links a { padding: 3px 0; border: 0; background: none; color: #4e397f; font: inherit; font-size: .83rem; font-weight: 650; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.hbcss-consent__links button:hover, .hbcss-consent__links a:hover { color: #251649; }
.hbcss-consent__settings { display: grid; gap: 7px; margin-top: 16px; }
.hbcss-consent__setting { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 61px; padding: 9px 13px; border: 1px solid #dddbea; border-radius: 12px; background: rgba(255,255,255,.86); }
.hbcss-consent__setting span:first-child { display: grid; gap: 2px; }
.hbcss-consent__setting strong { font-size: .85rem; color: #302258; }
.hbcss-consent__setting small { font-size: .77rem; line-height: 1.3; color: #59566d; }
.hbcss-consent__setting input { flex: 0 0 auto; width: 21px; height: 21px; accent-color: #563999; cursor: pointer; }
.hbcss-consent__always { flex: 0 0 auto; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #dcf4ec; color: #146a55; font-weight: 800; }
@media (max-width: 700px) { .hbcss-consent { grid-template-columns: 1fr; max-height: calc(100dvh - 20px); overflow-y: auto; border-radius: 18px; left: 10px; right: 10px; bottom: 10px; } .hbcss-consent__art { position: absolute; top: -20px; right: 10px; width: 140px; height: 120px; padding: 0; opacity: .42; pointer-events: none; } .hbcss-consent__art img { width: 100%; } .hbcss-consent__content { position: relative; padding: 21px 19px 18px; } .hbcss-consent h2 { max-width: calc(100% - 95px); font-size: 1.3rem; } .hbcss-consent p { font-size: .86rem; } .hbcss-consent__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .hbcss-consent__button { min-width: 0; padding-inline: 9px; font-size: .8rem; } .hbcss-consent__button[data-hbcss-consent="save"] { grid-column: 1 / -1; } }
@media (max-width: 360px) { .hbcss-consent__art { opacity: .22; } .hbcss-consent__actions { grid-template-columns: 1fr; } .hbcss-consent h2 { max-width: 100%; } }
@media (prefers-reduced-motion: reduce) { .hbcss-consent__button { transition: none; } }
