:root { --lm-brand: #db1f1f; --lm-ink: #172433; --lm-line: #b8c5d1; --lm-surface: #fff; }
.lm-cookie-banner { position: fixed; z-index: 1100; left: 1.25rem; bottom: 1.25rem; width: min(42rem, calc(100vw - 2.5rem)); padding: 1.25rem; color: var(--lm-ink); background: var(--lm-surface); border: 1px solid #6e8194; border-radius: 1rem; box-shadow: 0 12px 40px rgba(17, 38, 60, .24); animation: lm-cookie-up .28s ease-out; }
.lm-cookie-banner__eyebrow { margin: 0 0 .25rem; color: var(--lm-brand); font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.lm-cookie-banner h2, .lm-cookie-dialog h2 { margin: 0; color: var(--lm-ink); font-size: 1.25rem; }
.lm-cookie-banner p:not(.lm-cookie-banner__eyebrow) { margin: .5rem 0; line-height: 1.5; }
.lm-cookie-banner a { color: var(--lm-brand); font-weight: 700; text-decoration: underline; }
.lm-cookie-actions, .lm-cookie-dialog__actions { display: flex; flex-wrap: wrap; gap: .625rem; margin-top: 1rem; }
.lm-cookie-button { min-height: 2.75rem; padding: .6rem 1rem; border: 2px solid var(--lm-brand); border-radius: .5rem; cursor: pointer; font: inherit; font-weight: 700; line-height: 1.2; }
.lm-cookie-button:focus-visible, .lm-cookie-close:focus-visible, .lm-cookie-switch input:focus-visible + span { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px #172433; }
.lm-cookie-button--primary { color: #fff; background: var(--lm-brand); }
.lm-cookie-button--secondary { color: var(--lm-brand); background: #fff; }
.lm-cookie-button--tertiary { color: var(--lm-brand); background: #fff; }
.lm-cookie-modal[hidden], .lm-cookie-banner[hidden] { display: none; }
.lm-cookie-modal { position: fixed; z-index: 1200; inset: 0; display: grid; place-items: center; padding: 1rem; }
.lm-cookie-policy-modal[hidden] { display: none; }
.lm-cookie-policy-modal { position: fixed; z-index: 1300; inset: 0; display: grid; place-items: center; padding: 1rem; }
.lm-cookie-policy-modal__backdrop { position: absolute; inset: 0; background: rgba(10, 24, 39, .7); }
.lm-cookie-policy-dialog { position: relative; display: flex; width: min(58rem, 100%); max-height: min(48rem, calc(100vh - 2rem)); flex-direction: column; overflow: hidden; padding: 1.5rem; color: var(--lm-ink); background: #fff; border-radius: 1rem; box-shadow: 0 20px 60px rgba(0, 0, 0, .35); }
.lm-cookie-policy-scroll { overflow: auto; min-height: 0; padding-right: .5rem; }
.lm-cookie-policy-status { margin: .5rem 0; color: var(--lm-ink); font-size: .9rem; }
.lm-cookie-policy-scroll .cookie-policy__content--popup h1 { display: none; }
.lm-cookie-policy-scroll .cookie-policy__content--popup h2 { font-size: 1.05rem; }
.lm-cookie-policy-full-link { display: inline-block; min-height: 2.75rem; margin-top: 1rem; padding: .7rem 1rem; color: #fff; background: var(--lm-brand); border-radius: .5rem; font-weight: 700; text-align: center; }
.lm-cookie-policy-details { margin-top: 1rem; }
.lm-cookie-policy-details summary { display: inline-flex; align-items: center; min-height: 2.75rem; padding: .7rem 1rem; color: var(--lm-brand); border: 2px solid var(--lm-brand); border-radius: .5rem; cursor: pointer; font-weight: 700; }
.lm-cookie-policy-details summary:focus-visible { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px #172433; }
.lm-cookie-policy-details[open] summary { margin-bottom: .5rem; color: #fff; background: var(--lm-brand); }
.lm-cookie-policy-full-link:focus-visible { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px #172433; }
.lm-cookie-modal__backdrop { position: absolute; inset: 0; background: rgba(10, 24, 39, .58); }
.lm-cookie-dialog { position: relative; display: flex; max-height: min(46rem, calc(100vh - 2rem)); width: min(38rem, 100%); flex-direction: column; overflow: auto; padding: 1.5rem; color: var(--lm-ink); background: #fff; border-radius: 1rem; box-shadow: 0 20px 60px rgba(0, 0, 0, .3); }
.lm-cookie-dialog__header { display: flex; justify-content: space-between; gap: 1rem; }
.lm-cookie-close { display: inline-flex; width: 2.75rem; height: 2.75rem; align-items: center; justify-content: center; box-sizing: border-box; padding: 0; color: var(--lm-ink); background: #fff; border: 2px solid #687785; border-radius: 50%; cursor: pointer; font-size: 1.75rem; line-height: 1; }
.lm-cookie-dialog > p { margin: .75rem 0 0; line-height: 1.5; }
.lm-cookie-groups { margin-top: 1rem; }
.lm-cookie-group { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-top: 1px solid #d8e0e7; }
.lm-cookie-group h3 { margin: 0; font-size: 1rem; }.lm-cookie-group p { margin: .25rem 0 0; line-height: 1.4; }
.lm-cookie-switch { display: flex; flex: 0 0 auto; align-items: center; gap: .4rem; min-height: 2.75rem; cursor: pointer; }.lm-cookie-switch input { position: absolute; opacity: 0; }.lm-cookie-switch span { width: 2.75rem; height: 1.5rem; background: #687785; border-radius: 2rem; }.lm-cookie-switch span::after { display: block; width: 1.1rem; height: 1.1rem; margin: .2rem; background: #fff; border-radius: 50%; content: ''; transition: transform .15s; }.lm-cookie-switch input:checked + span { background: var(--lm-brand); }.lm-cookie-switch input:checked + span::after { transform: translateX(1.25rem); }.lm-cookie-switch b { font-size: .8rem; }
.lm-cookie-dialog__actions { justify-content: flex-end; margin-top: auto; padding-top: 1rem; }
.footer-links li .footer-consent-link { display: inline-flex; align-items: center; min-height: 44px; background: none; border: 0; padding: 0; cursor: pointer; font: inherit; font-family: "SVN-Gilroy", sans-serif; font-weight: 500; font-size: 18px; line-height: 1.3; color: inherit; text-align: left; text-decoration: inherit; transition: color 0.3s ease; }
.footer-links li .footer-consent-link:hover { color: #db1f1f; }
.footer-links li .footer-consent-link:focus-visible { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px #172433; }
@media (max-width: 1199.98px) { .footer-links li .footer-consent-link { font-size: 16px; } }
@media (max-width: 991.98px) { .footer-links li .footer-consent-link { font-size: 14px; } }
@media (max-width: 767.98px) { .footer-links li .footer-consent-link { font-size: 13px; } }
.cookie-policy { color: var(--lm-ink); }
.cookie-policy h1, .cookie-policy h2 { color: var(--lm-brand); }
.cookie-policy h1 { margin-bottom: 1rem; }
.cookie-policy h2 { margin-top: 2rem; padding-bottom: .45rem; border-bottom: 2px solid var(--lm-brand); }
.cookie-policy .table-responsive { border: 1px solid var(--lm-line); border-radius: .75rem; }
.cookie-policy .table { min-width: 760px; margin-bottom: 0; }
.cookie-policy .table th { color: var(--lm-brand); background: #eaf1f7; }
.cookie-policy .table td, .cookie-policy .table th { border-color: var(--lm-line); }
.cookie-policy .btn-primary { color: #fff; background: var(--lm-brand); border-color: var(--lm-brand); }
.cookie-policy .btn-primary:hover, .cookie-policy .btn-primary:active, .cookie-policy .btn-primary:focus-visible { background: #b71c1c; border-color: #b71c1c; }
.cookie-policy .btn-outline-primary { color: var(--lm-brand); border-color: var(--lm-brand); }
.cookie-policy .btn-outline-primary:hover, .cookie-policy .btn-outline-primary:active, .cookie-policy .btn-outline-primary:focus-visible { color: #fff; background: var(--lm-brand); border-color: var(--lm-brand); }
.cookie-policy .btn:focus-visible { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px #172433; }
@keyframes lm-cookie-up { from { opacity: 0; transform: translateY(1rem); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .lm-cookie-banner, .lm-cookie-switch span::after { animation: none; transition: none; } }
body:has(#lm-cookie-modal:not([hidden])) .pkcp-parent-container { visibility: hidden; }
@media (max-width: 640px) { .lm-cookie-banner { right: 0; bottom: 0; left: 0; width: 100%; border-radius: 1rem 1rem 0 0; }.lm-cookie-actions { display: grid; grid-template-columns: repeat(3, 1fr); transform: translateY(-6.5rem); }.lm-cookie-button { width: 100%; padding-inline: .4rem; }.lm-cookie-dialog { padding: 1.1rem; }.lm-cookie-dialog__actions { display: grid; grid-template-columns: 1fr 1fr; }.lm-cookie-dialog__actions .lm-cookie-button--primary:last-child { grid-column: 1 / -1; }.lm-cookie-group { align-items: flex-start; }.lm-cookie-policy-modal { padding: 0; }.lm-cookie-policy-dialog { width: 100%; max-height: 100vh; height: 100%; border-radius: 0; padding: 1rem; }.lm-cookie-policy-scroll { padding-right: .25rem; } body:has(.pkcp-parent-container) .lm-cookie-banner { bottom: 8rem; } }
