/* ========================================================== 
   CB SPORT - COOKIE CONSENT 
   ========================================================== */


/* ========================================================== 
   BANNER 
   ========================================================== */

.cb-cookie-banner {

    position: fixed;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 999999;

    background: #ffffff;

    border-top: 4px solid #6c1a41;

    box-shadow: 0 -4px 20px rgba(0,0,0,0.18);

    font-family: Arial, Helvetica, sans-serif;

}


.cb-cookie-banner[hidden] {
    display: none;
}


.cb-cookie-banner-inner {

    max-width: 1180px;

    margin: 0 auto;

    padding: 22px 25px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 50px;

}


.cb-cookie-content {

    flex: 1;

    padding-left: 0;

    text-align: center;

}


.cb-cookie-content h2 {

    margin: 0 0 8px 0;

    color: #6c1a41;

    font-size: 21px;

    line-height: 1.25;

}


.cb-cookie-content p {

    margin: 0 0 8px 0;

    color: #444;

    font-size: 14px;

    line-height: 1.55;

}


.cb-cookie-info-link {

    color: #6c1a41;

    font-size: 13px;

    text-decoration: underline;

}


.cb-cookie-actions {

    flex-shrink: 0;

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 8px;

    min-width: 190px;

}


/* ========================================================== 
   BUTTONS 
   ========================================================== */

.cb-cookie-button {

    appearance: none;

    border-radius: 4px;

    padding: 10px 18px;

    min-height: 42px;

    font-family: Arial, Helvetica, sans-serif;

    font-size: 14px;

    line-height: 1.2;

    cursor: pointer;

    transition:
        background-color 0.15s ease,
        border-color 0.15s ease;

}


/* =========================================================
   COOKIE BANNER - COMPACTE KNOPPEN
   ========================================================= */

.cb-cookie-banner .cb-cookie-button-primary,
.cb-cookie-banner .cb-cookie-button-secondary {

    padding: 7px 13px;

    min-height: 34px;

    font-size: 13px;

}


.cb-cookie-button-primary {

    color: #ffffff;

    background: #6c1a41;

    border: 1px solid #6c1a41;

}


.cb-cookie-button-primary:hover {

    background: #531330;

    border-color: #531330;

}


.cb-cookie-button-secondary {

    color: #6c1a41;

    background: #ffffff;

    border: 1px solid #6c1a41;

}


.cb-cookie-button-secondary:hover {

    background: #f3f3f3;

}


.cb-cookie-button-link {

    color: #6c1a41;

    background: transparent;

    border: 0;

    text-decoration: underline;

}


.cb-cookie-button-link:hover {

    background: #f3f3f3;

}


/* ========================================================== 
   MODAL 
   ========================================================== */

.cb-cookie-modal {

    position: fixed;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    z-index: 1000000;

}


.cb-cookie-modal[hidden] {

    display: none;

}


.cb-cookie-modal-overlay {

    position: absolute;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    background: rgba(0,0,0,0.55);

}


.cb-cookie-modal-box {

    position: relative;

    z-index: 2;

    width: calc(100% - 40px);

    max-width: 650px;

    max-height: calc(100vh - 60px);

    overflow-y: auto;

    margin: 30px auto;

    padding: 30px;

    background: #ffffff;

    border-top: 5px solid #6c1a41;

    box-shadow: 0 8px 35px rgba(0,0,0,0.3);

    font-family: Arial, Helvetica, sans-serif;

}


.cb-cookie-modal-box h2 {

    margin: 0 40px 25px 0;

    color: #6c1a41;

    font-size: 24px;

}


.cb-cookie-modal-close {

    position: absolute;

    top: 15px;
    right: 18px;

    width: 36px;
    height: 36px;

    padding: 0;

    border: 0;

    background: transparent;

    color: #6c1a41;

    font-size: 30px;

    line-height: 36px;

    cursor: pointer;

}


/* ========================================================== 
   OPTIONS 
   ========================================================== */

.cb-cookie-option {

    margin-bottom: 15px;

    padding: 18px;

    background: #f3f3f3;

    border-left: 4px solid #6c1a41;

}


.cb-cookie-option-header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

}


.cb-cookie-option h3 {

    margin: 0;

    color: #222;

    font-size: 17px;

}


.cb-cookie-option p {

    margin: 8px 0 0 0;

    color: #555;

    font-size: 13px;

    line-height: 1.5;

}


.cb-cookie-always-active {

    display: block;

    margin-top: 4px;

    color: #6c1a41;

    font-size: 11px;

    font-weight: bold;

    text-transform: uppercase;

}


/* ========================================================== 
   SWITCH 
   ========================================================== */

.cb-cookie-switch {

    position: relative;

    display: inline-block;

    width: 48px;

    height: 26px;

    flex-shrink: 0;

}


.cb-cookie-switch input {

    width: 1px;
    height: 1px;

    opacity: 0;

}


.cb-cookie-slider {

    position: absolute;

    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    cursor: pointer;

    background: #aaa;

    border-radius: 26px;

    transition: 0.2s;

}


.cb-cookie-slider:before {

    position: absolute;

    content: "";

    width: 20px;
    height: 20px;

    left: 3px;
    top: 3px;

    background: #ffffff;

    border-radius: 50%;

    transition: 0.2s;

}


.cb-cookie-switch input:checked + .cb-cookie-slider {

    background: #BED54A;

}


.cb-cookie-switch input:checked + .cb-cookie-slider:before {

    transform: translateX(22px);

}


/* ========================================================== 
   MODAL BUTTON 
   ========================================================== */

.cb-cookie-modal-actions {

    margin-top: 25px;

    text-align: right;

}


/* ========================================================== 
   MOBIEL 
   ========================================================== */

@media (max-width: 700px) {

    .cb-cookie-banner-inner {

        display: block;

        padding: 18px;

    }


    .cb-cookie-content {

        text-align: center;

    }


    .cb-cookie-content h2 {

        font-size: 19px;

    }


    .cb-cookie-content p {

        font-size: 13px;

    }


    .cb-cookie-actions {

        margin-top: 15px;

        min-width: 0;

        align-items: center;

    }


    .cb-cookie-button {

        width: auto;

    }


    /* =====================================================
       COOKIE MODAL - MOBIEL
       ===================================================== */

    .cb-cookie-modal-box {

        width: calc(100% - 24px);

        max-width: none;

        height: calc(100vh - 24px);

        max-height: calc(100vh - 24px);

        margin: 12px auto;

        padding: 22px 18px;

        box-sizing: border-box;

        overflow-y: scroll;

        overflow-x: hidden;

        -webkit-overflow-scrolling: touch;

    }


    /* Moderne mobiele browsers */
    @supports (height: 100dvh) {

        .cb-cookie-modal-box {

            height: calc(100dvh - 24px);

            max-height: calc(100dvh - 24px);

        }

    }


    .cb-cookie-modal-box h2 {

        margin: 0 40px 20px 0;

        font-size: 21px;

        line-height: 1.3;

    }


    .cb-cookie-modal-close {

        top: 10px;

        right: 10px;

        width: 36px;

        height: 36px;

        font-size: 27px;

        line-height: 36px;

    }


    .cb-cookie-modal-intro {

        margin-bottom: 20px;

        font-size: 14px;

        line-height: 1.55;

    }


    .cb-cookie-option {

        margin-bottom: 12px;

        padding: 14px;

    }


    .cb-cookie-option-header {

        gap: 12px;

    }


    .cb-cookie-option h3 {

        font-size: 16px;

    }


    .cb-cookie-option-text p {

        font-size: 13px;

        line-height: 1.5;

    }


    .cb-cookie-modal-actions {

        margin-top: 18px;

        padding-top: 12px;

        padding-bottom: 12px;

        text-align: center;

        border-top: 1px solid #ddd;

        background: #ffffff;

    }


    .cb-cookie-modal-actions .cb-cookie-button {

        width: 100%;

        min-height: 42px;

    }

}


/* =========================================================
   GOOGLE MAPS - EXTERNE INHOUD GEBLOKKEERD
   ========================================================= */

.cb-map-blocked {

    min-height: 320px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    text-align: center;

    padding: 30px;

    box-sizing: border-box;

    background: #f3f3f3;

    color: #555;

}


.cb-map-blocked p {

    margin: 0 0 20px 0;

    max-width: 500px;

}


.cb-map-settings {

    display: inline-block;

    padding: 10px 18px;

    border: 0;

    background: #6c1a41;

    color: #fff;

    cursor: pointer;

    font-family: inherit;

    font-size: inherit;

}


.cb-map-settings:hover {

    background: #BED54A;

    color: #222;

}


.cb-map-box iframe {

    display: block;

    width: 100%;

    min-height: 320px;

    border: 0;

}


/* =========================================================
   COOKIE MODAL - TEKST
   ========================================================= */

.cb-cookie-modal-intro {

    font-size: 15px;

    line-height: 1.6;

    color: #555;

    margin: 0 0 25px 0;

}


.cb-cookie-option-text p {

    font-size: 14px;

    line-height: 1.6;

    color: #555;

    margin: 6px 0 0 0;

}


/* =========================================================
   COOKIE SWITCH - UITGESCHAKELD
   ========================================================= */

.cb-cookie-switch-disabled {

    cursor: default;

    opacity: 1;

}


.cb-cookie-switch-disabled input {

    cursor: default;

}


.cb-cookie-switch-disabled .cb-cookie-slider {

    cursor: default;

}