/*
 * BestMovers look for the Klaro cookie banner and settings panel. Loaded AFTER klaro.min.css.
 * Light card, navy text, red primary button (same colours as css/site.css).
 */
.klaro {
    --font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    --title-font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    --font-size: 14px;
    --border-radius: 14px;
    --border-width: 1px;

    --dark1: #FFFFFF;   /* card surface */
    --dark2: #DCE3F1;   /* borders */
    --dark3: #64748B;   /* descriptions */
    --light1: #032075;  /* main text */
    --light2: #334155;
    --light3: #64748B;

    --green1: #1E5FBF;  /* switches ON */
    --green2: #1A4FA0;
    --green3: #87CBA1;
    --blue1: #1E5FBF;
    --blue2: #1A4FA0;
    --blue3: #DCE3F1;
    --red1: #E21E51;
    --red2: #C4153F;
    --red3: #F3F6FC;
    --white1: #FFFFFF;
    --white2: #CBD5E1;  /* switch OFF track */
    --white3: #FFFFFF;  /* switch knob */

    --button-text-color: #FFFFFF;
}

/* ---------- buttons ---------- */
.klaro .cookie-modal .cm-btn,
.klaro .cookie-notice .cm-btn {
    border: 1px solid transparent;
    border-radius: 999px;
    padding: 12px 18px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    transition: background-color .2s, color .2s, border-color .2s;
}
.klaro .cookie-modal .cm-btn:focus-visible,
.klaro .cookie-notice .cm-btn:focus-visible,
.klaro .cn-learn-more:focus-visible,
.klaro .cookie-modal .hide:focus-visible { outline: 2px solid #1E5FBF; outline-offset: 2px; }

.klaro .cookie-modal .cm-btn.cm-btn-success,
.klaro .cookie-notice .cm-btn.cm-btn-success,
.klaro .cookie-modal .cm-btn.cm-btn-accept:only-child { background-color: #E21E51; border-color: #E21E51; color: #FFFFFF; }
.klaro .cookie-modal .cm-btn.cm-btn-success:hover,
.klaro .cookie-notice .cm-btn.cm-btn-success:hover,
.klaro .cookie-modal .cm-btn.cm-btn-accept:only-child:hover { background-color: #C4153F; border-color: #C4153F; }

.klaro .cookie-modal .cm-btn.cm-btn-danger,
.klaro .cookie-modal .cm-btn.cm-btn-info,
.klaro .cookie-notice .cm-btn.cm-btn-danger { background-color: #FFFFFF; border-color: #DCE3F1; color: #032075; }
.klaro .cookie-modal .cm-btn.cm-btn-danger:hover,
.klaro .cookie-modal .cm-btn.cm-btn-info:hover,
.klaro .cookie-notice .cm-btn.cm-btn-danger:hover { border-color: #032075; }

/* ---------- banner ---------- */
.klaro .cookie-notice:not(.cookie-modal-notice) {
    background-color: #FFFFFF;
    border: 1px solid #DCE3F1;
    box-shadow: 0 2px 4px rgba(10,18,56,.06), 0 24px 60px -12px rgba(10,18,56,.35);
    z-index: 999;
}
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body { padding: 20px; }
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body p {
    color: #334155;
    font-size: 13px;
    line-height: 1.6;
    margin: 0 0 14px;
}
.klaro .cookie-notice a { color: #1E5FBF; font-weight: 600; }
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok {
    margin: 0;
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 12px;
}
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok a,
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok div { margin-top: 0; }
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons { display: flex; gap: 8px; margin: 0; width: 100%; }
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons button.cm-btn { flex: 1 1 0; margin: 0; width: auto; }
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons button.cn-decline { order: 1; }
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons button.cm-btn-success { order: 2; }
.klaro .cookie-notice .cn-learn-more {
    align-self: center;
    color: #64748B;
    font-size: 12px;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.klaro .cookie-notice .cn-learn-more:hover { color: #032075; }

@media (min-width: 768px) {
    .klaro .cookie-notice:not(.cookie-modal-notice) {
        --notice-max-width: 420px;
        --notice-right: 20px;
        --notice-bottom: 20px;
    }
}
@media (max-width: 767px) {
    /* sit above the mobile "Hívás / Ajánlatkérés" bar */
    .klaro .cookie-notice:not(.cookie-modal-notice) { bottom: 0; border-radius: 16px 16px 0 0; z-index: 1000; }
    .klaro .cookie-notice:not(.cookie-modal-notice) .cn-body { padding: 16px; }
}

/* ---------- settings panel ---------- */
.klaro .cookie-modal .cm-bg { background: rgba(10, 18, 56, .6); backdrop-filter: blur(4px); }
.klaro .cookie-modal .cm-modal.cm-klaro {
    background-color: #FFFFFF;
    border: 1px solid #DCE3F1;
    box-shadow: 0 30px 80px rgba(10, 18, 56, .35);
}
.klaro .cookie-modal .cm-modal .cm-header,
.klaro .cookie-modal .cm-modal .cm-footer { padding: 24px; border-color: #DCE3F1; }
.klaro .cookie-modal .cm-modal .cm-body { padding: 8px 24px 16px; }
.klaro .cookie-modal .cm-modal .cm-header h1.title { font-size: 1.5rem; font-weight: 800; letter-spacing: -.01em; color: #032075; }
.klaro .cookie-modal .cm-modal .cm-header p { color: #475569; font-size: 13px; line-height: 1.6; }
.klaro .cookie-modal a { color: #1E5FBF; }
.klaro .cookie-modal .cm-list-title { font-size: .9rem; color: #032075; }
.klaro .cookie-modal .cm-list-description,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes { color: #64748B; }
.klaro .cookie-modal .cm-switch-container { border-bottom-color: #DCE3F1; }
.klaro .cookie-modal .cm-list-label .slider { box-shadow: none; }
.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider { background-color: #1E5FBF; }
.klaro .cookie-modal .cm-list-input.required:checked + .cm-list-label .slider,
.klaro .cookie-modal .cm-list-input.only-required + .cm-list-label .slider { background-color: #1E5FBF; opacity: .5; }
.klaro .cookie-modal .cm-list-input:focus + .cm-list-label .slider { box-shadow: 0 0 0 3px rgba(30,95,191,.35); }
.klaro .cookie-modal .cm-modal .hide svg { stroke: #64748B; }
.klaro .cookie-modal .cm-modal .hide:hover svg { stroke: #032075; }
.klaro .cookie-modal .cm-modal .cm-footer-buttons { gap: 8px; flex-wrap: wrap; }
.klaro .cookie-modal .cm-modal .cm-footer-buttons .cm-btn { margin: 0; flex: 1 1 auto; }
.klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by { padding-top: 14px; }
.klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by a { color: #94A3B8; }
