/* Firstclass Booking Framework frontend */
.fcbf-container{width:min(var(--fcbf-container,1200px),calc(100% - 40px));margin:0 auto}.fcbf-header,.fcbf-footer,.fcbf-loader{font-family:var(--fcbf-font,Inter,Arial,sans-serif)}.fcbf-header *,.fcbf-footer *,.fcbf-loader *{box-sizing:border-box}.fcbf-header a,.fcbf-footer a{text-decoration:none}.fcbf-header{position:sticky;top:0;z-index:500;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--fcbf-border,#e5eaf2)}.fcbf-header-inner{min-height:76px;display:flex;align-items:center;gap:28px}.fcbf-brand{display:inline-flex;align-items:center;gap:10px;color:var(--fcbf-ink,#0b1020);font-size:21px;font-weight:850;letter-spacing:-.03em;min-width:215px;line-height:1}.fcbf-brand img{max-height:42px;width:auto;display:block}.fcbf-brand-mark{width:34px;height:34px;border-radius:10px;background:var(--fcbf-primary,#006dff);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:20px;text-transform:lowercase}.fcbf-nav{display:flex;align-items:center;gap:22px;flex:1}.fcbf-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:8px}.fcbf-menu>li{position:relative;margin:0;padding:0}.fcbf-menu a,.fcbf-menu button{min-height:44px;padding:0 12px;display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--fcbf-ink,#0b1020);font-size:14px;font-weight:760;cursor:pointer;font-family:inherit}.fcbf-menu a:hover,.fcbf-menu button:hover{color:var(--fcbf-primary,#006dff)}.fcbf-panel{position:absolute;top:calc(100% + 10px);left:0;width:340px;padding:12px;background:var(--fcbf-card,#fff);border:1px solid var(--fcbf-border,#e5eaf2);border-radius:18px;box-shadow:0 24px 70px rgba(11,16,32,.14);opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:.18s ease}.fcbf-has-panel:hover .fcbf-panel,.fcbf-has-panel:focus-within .fcbf-panel{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.fcbf-panel a{display:grid;gap:3px;min-height:auto;padding:14px;border-radius:12px;color:var(--fcbf-ink,#0b1020)}.fcbf-panel a:hover{background:var(--fcbf-bg,#f7f9fc)}.fcbf-panel strong{font-size:14px}.fcbf-panel small{color:var(--fcbf-muted,#5f6b7d);font-size:12px}.fcbf-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.fcbf-login{color:var(--fcbf-ink,#0b1020);font-size:14px;font-weight:760}.fcbf-cta{min-height:44px;padding:0 18px;border-radius:10px;background:var(--fcbf-primary,#006dff);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:820;font-size:14px;box-shadow:0 14px 28px rgba(0,109,255,.22)}.fcbf-menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border-radius:12px;border:1px solid var(--fcbf-border,#e5eaf2);background:#fff;color:var(--fcbf-ink,#0b1020);padding:0;cursor:pointer}.fcbf-menu-toggle svg{width:23px;height:23px;margin:auto;display:block}.fcbf-menu-toggle path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;transform-origin:12px 12px;transition:.22s ease}.fcbf-menu-toggle[aria-expanded=true] .top{transform:translateY(4.25px) rotate(45deg)}.fcbf-menu-toggle[aria-expanded=true] .middle{opacity:0}.fcbf-menu-toggle[aria-expanded=true] .bottom{transform:translateY(-4.25px) rotate(-45deg)}.fcbf-mobile-head{display:none}.fcbf-menu-close{cursor:pointer}.fcbf-menu-close svg{width:20px;height:20px}.fcbf-menu-close path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.fcbf-footer{background:var(--fcbf-ink,#07101f);color:#fff;padding:72px 0 28px}.fcbf-footer p,.fcbf-footer a{color:rgba(255,255,255,.66)}.fcbf-footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,.8fr);gap:34px}.fcbf-footer h3{margin:0 0 16px;color:#fff;font-size:15px}.fcbf-footer a{display:block;margin:9px 0;font-weight:680}.fcbf-footer .fcbf-brand{color:#fff;margin-bottom:16px}.fcbf-footer-bottom{margin-top:54px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;color:rgba(255,255,255,.56);font-size:13px}.fcbf-loader{position:fixed;inset:0;z-index:999999;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:opacity .32s ease,visibility .32s ease}.fcbf-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.fcbf-loader-card{min-width:260px;padding:26px;border-radius:22px;background:#fff;border:1px solid var(--fcbf-border,#e5eaf2);box-shadow:0 24px 70px rgba(11,16,32,.14);display:grid;justify-items:center;gap:14px;text-align:center}.fcbf-loader-logo{width:42px;height:42px;border-radius:12px;background:var(--fcbf-primary,#006dff);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:900}.fcbf-loader-spinner{width:32px;height:32px;border:3px solid var(--fcbf-border,#e5eaf2);border-top-color:var(--fcbf-primary,#006dff);border-radius:999px;animation:fcbfSpin .8s linear infinite}.fcbf-loader-card strong{color:var(--fcbf-ink,#0b1020);font-size:14px}@keyframes fcbfSpin{to{transform:rotate(360deg)}}@media(max-width:1120px){.fcbf-header-inner{gap:18px}.fcbf-menu{gap:2px}.fcbf-menu a,.fcbf-menu button{padding:0 8px}}@media(max-width:980px){.fcbf-menu-toggle{display:flex;align-items:center;justify-content:center}body.fcbf-menu-open::before{content:"";position:fixed;inset:0;z-index:460;background:rgba(7,16,31,.34);backdrop-filter:blur(8px)}.fcbf-nav{position:fixed;inset:0 0 0 auto;width:min(430px,100vw);z-index:520;background:#fff;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:20px;box-shadow:-24px 0 70px rgba(11,16,32,.18);transform:translateX(104%);transition:transform .25s ease;overflow-y:auto}.fcbf-nav.is-open{transform:translateX(0)}.fcbf-mobile-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--fcbf-border,#e5eaf2)}.fcbf-brand.mobile{min-width:0}.fcbf-menu-close{width:44px;height:44px;border:1px solid var(--fcbf-border,#e5eaf2);border-radius:12px;background:#fff;color:var(--fcbf-ink,#0b1020);display:flex;align-items:center;justify-content:center}.fcbf-menu{display:grid;gap:0;padding:16px 0;border-bottom:1px solid var(--fcbf-border,#e5eaf2)}.fcbf-menu>li{border-bottom:1px solid var(--fcbf-border,#e5eaf2)}.fcbf-menu>li:last-child{border-bottom:0}.fcbf-menu a,.fcbf-menu button{width:100%;min-height:56px;padding:0;justify-content:space-between;font-size:17px}.fcbf-panel{position:static;width:100%;padding:0 0 10px;border:0;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none;pointer-events:auto;display:grid;gap:6px;background:transparent}.fcbf-panel a{padding:14px;background:var(--fcbf-bg,#f7f9fc);border-radius:14px}.fcbf-actions{margin:18px 0 0;display:grid;gap:10px}.fcbf-login,.fcbf-cta{width:100%;min-height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center}.fcbf-login{background:var(--fcbf-bg,#f7f9fc);color:var(--fcbf-ink,#0b1020)}.fcbf-footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.fcbf-container{width:min(var(--fcbf-container,1200px),calc(100% - 24px))}.fcbf-header-inner{min-height:70px}.fcbf-brand{min-width:0}.fcbf-brand span:last-child{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fcbf-footer-grid{grid-template-columns:1fr}.fcbf-footer-bottom{display:grid;gap:10px}}

/* v1.0.1 compatibility met Firstclass Booking PRO Theme shell */
body.fcb-theme-shell.fcbf-header-enabled {
    padding-top: 0;
}
body.fcb-theme-shell .fcb-framework-main {
    width: 100%;
}
body.fcb-theme-shell .fcbf-header {
    display: block !important;
}
body.fcb-theme-shell .fcbf-footer {
    display: block !important;
}

/* v1.0.2 mobile navigatie zichtbaarheidsfix */
@media (max-width: 980px) {
    .fcbf-header {
        overflow: visible !important;
        z-index: 999990 !important;
    }

    .fcbf-menu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        z-index: 999996 !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    body.fcbf-menu-open::before {
        z-index: 999991 !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    .fcbf-nav {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: auto !important;
        width: min(430px, 100vw) !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: none !important;
        z-index: 999995 !important;
        background: #ffffff !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 20px !important;
        box-shadow: -24px 0 70px rgba(11,16,32,.22) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        transform: translateX(110%) !important;
        transition: transform .25s ease !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    .fcbf-nav.is-open,
    body.fcbf-menu-open .fcbf-nav {
        transform: translateX(0) !important;
    }

    .fcbf-mobile-head {
        display: flex !important;
    }

    .fcbf-menu,
    .fcbf-actions {
        opacity: 1 !important;
        visibility: visible !important;
    }
}

/* v1.0.4 juiste logo in mobiel menu en modernere mobile drawer */
@media (max-width: 980px) {
    .fcbf-nav {
        width: min(440px, calc(100vw - 18px)) !important;
        margin: 9px 9px 9px 0 !important;
        height: calc(100dvh - 18px) !important;
        border-radius: 24px 0 0 24px !important;
        padding: 0 !important;
        background:
            radial-gradient(circle at 20% 0%, color-mix(in srgb, var(--fcbf-primary, #006dff) 12%, transparent), transparent 32%),
            #ffffff !important;
        border: 1px solid rgba(229,234,242,.95) !important;
        overflow: hidden !important;
    }

    .fcbf-nav.is-open,
    body.fcbf-menu-open .fcbf-nav {
        transform: translateX(0) !important;
    }

    .fcbf-mobile-head {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
        padding: 18px !important;
        border-bottom: 1px solid var(--fcbf-border, #e5eaf2) !important;
        background: rgba(255,255,255,.82) !important;
        backdrop-filter: blur(16px) !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 2 !important;
    }

    .fcbf-mobile-head .fcbf-brand {
        min-width: 0 !important;
        max-width: calc(100% - 58px) !important;
    }

    .fcbf-mobile-head .fcbf-brand img {
        display: block !important;
        max-width: 152px !important;
        max-height: 42px !important;
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
    }

    .fcbf-mobile-head .fcbf-brand img + span {
        display: none !important;
    }

    .fcbf-menu-close {
        flex: 0 0 44px !important;
        width: 44px !important;
        height: 44px !important;
        border-radius: 999px !important;
        background: var(--fcbf-bg, #f7f9fc) !important;
        border: 1px solid var(--fcbf-border, #e5eaf2) !important;
        box-shadow: 0 10px 24px rgba(11,16,32,.06) !important;
    }

    .fcbf-menu {
        padding: 14px 16px 10px !important;
        border-bottom: 0 !important;
        gap: 10px !important;
        overflow: visible !important;
    }

    .fcbf-menu > li {
        border: 0 !important;
        background: #ffffff !important;
        border-radius: 18px !important;
        box-shadow: 0 12px 32px rgba(11,16,32,.06) !important;
        overflow: hidden !important;
    }

    .fcbf-menu > li > a,
    .fcbf-menu > li > button {
        min-height: 58px !important;
        padding: 0 16px !important;
        font-size: 16px !important;
        font-weight: 850 !important;
        color: var(--fcbf-ink, #0b1020) !important;
        background: #ffffff !important;
    }

    .fcbf-menu > li > button span {
        width: 28px !important;
        height: 28px !important;
        border-radius: 999px !important;
        background: var(--fcbf-bg, #f7f9fc) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        transform: rotate(0deg) !important;
        transition: transform .2s ease, background .2s ease !important;
    }

    .fcbf-has-panel.is-active > button span {
        transform: rotate(180deg) !important;
        background: color-mix(in srgb, var(--fcbf-primary, #006dff) 12%, #ffffff) !important;
        color: var(--fcbf-primary, #006dff) !important;
    }

    .fcbf-panel {
        display: none !important;
        padding: 0 12px 14px !important;
        gap: 8px !important;
        background: transparent !important;
    }

    .fcbf-has-panel.is-active .fcbf-panel {
        display: grid !important;
    }

    .fcbf-panel a {
        min-height: auto !important;
        padding: 14px !important;
        border-radius: 14px !important;
        background: var(--fcbf-bg, #f7f9fc) !important;
        border: 1px solid color-mix(in srgb, var(--fcbf-border, #e5eaf2) 75%, transparent) !important;
    }

    .fcbf-panel a strong {
        color: var(--fcbf-ink, #0b1020) !important;
        font-size: 14px !important;
    }

    .fcbf-panel a small {
        color: var(--fcbf-muted, #5f6b7d) !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
    }

    .fcbf-actions {
        margin: auto 16px 16px !important;
        padding: 14px !important;
        border-radius: 20px !important;
        background: var(--fcbf-bg, #f7f9fc) !important;
        border: 1px solid var(--fcbf-border, #e5eaf2) !important;
    }

    .fcbf-login,
    .fcbf-cta {
        min-height: 52px !important;
        border-radius: 14px !important;
        font-weight: 850 !important;
    }

    .fcbf-login {
        background: #ffffff !important;
        border: 1px solid var(--fcbf-border, #e5eaf2) !important;
    }

    .fcbf-cta {
        box-shadow: 0 16px 32px color-mix(in srgb, var(--fcbf-primary, #006dff) 24%, transparent) !important;
    }
}

@media (max-width: 460px) {
    .fcbf-nav {
        width: calc(100vw - 12px) !important;
        margin: 6px 6px 6px 0 !important;
        height: calc(100dvh - 12px) !important;
        border-radius: 22px 0 0 22px !important;
    }

    .fcbf-mobile-head .fcbf-brand img {
        max-width: 134px !important;
    }
}

/* v1.0.5 moderne mobile header */
@media (max-width: 980px) {
    body.fcbf-header-enabled {
        --fcbf-mobile-header-height: 74px;
    }

    .fcbf-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 999990 !important;
        background: transparent !important;
        border-bottom: 0 !important;
        padding: calc(env(safe-area-inset-top, 0px) + 10px) 0 10px !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
    }

    .fcbf-header::before {
        content: "" !important;
        position: absolute !important;
        inset: 0 0 auto 0 !important;
        height: calc(env(safe-area-inset-top, 0px) + 96px) !important;
        background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.72), rgba(255,255,255,0)) !important;
        pointer-events: none !important;
        z-index: -1 !important;
    }

    .fcbf-header-inner {
        min-height: var(--fcbf-mobile-header-height) !important;
        width: calc(100% - 24px) !important;
        margin: 0 auto !important;
        padding: 10px 10px 10px 14px !important;
        border-radius: 24px !important;
        background: rgba(255,255,255,.88) !important;
        border: 1px solid rgba(229,234,242,.92) !important;
        box-shadow: 0 18px 48px rgba(7,10,16,.10) !important;
        backdrop-filter: blur(18px) saturate(1.15) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    .fcbf-header .fcbf-brand:not(.mobile):not(.footer) {
        min-width: 0 !important;
        max-width: calc(100% - 70px) !important;
        gap: 9px !important;
    }

    .fcbf-header .fcbf-brand:not(.mobile):not(.footer) img {
        display: block !important;
        width: auto !important;
        max-width: 158px !important;
        max-height: 42px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    .fcbf-header .fcbf-brand:not(.mobile):not(.footer) img + span {
        display: none !important;
    }

    .fcbf-header .fcbf-brand:not(.mobile):not(.footer) .fcbf-brand-mark + span {
        max-width: 178px !important;
        font-size: 18px !important;
        font-weight: 900 !important;
        letter-spacing: -.04em !important;
    }

    .fcbf-menu-toggle {
        flex: 0 0 52px !important;
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        min-height: 52px !important;
        border-radius: 18px !important;
        border: 1px solid rgba(229,234,242,.96) !important;
        background:
            radial-gradient(circle at 30% 15%, rgba(201,154,30,.16), transparent 34%),
            #ffffff !important;
        color: #070a10 !important;
        box-shadow: 0 12px 28px rgba(7,10,16,.08) !important;
    }

    .fcbf-menu-toggle svg {
        width: 25px !important;
        height: 25px !important;
    }

    .fcbf-menu-toggle path {
        stroke-width: 2.35 !important;
    }

    .fcbf-menu-toggle::after {
        content: "" !important;
        position: absolute !important;
        inset: -3px !important;
        border-radius: 21px !important;
        border: 1px solid rgba(201,154,30,.0) !important;
        transition: border-color .2s ease, box-shadow .2s ease !important;
        pointer-events: none !important;
    }

    .fcbf-menu-toggle[aria-expanded="true"] {
        background: #070a10 !important;
        color: #ffffff !important;
        border-color: #070a10 !important;
        box-shadow: 0 16px 34px rgba(7,10,16,.18) !important;
    }

    .fcbf-menu-toggle[aria-expanded="true"]::after {
        border-color: rgba(201,154,30,.35) !important;
        box-shadow: 0 0 0 4px rgba(201,154,30,.10) !important;
    }
}

@media (max-width: 460px) {
    .fcbf-header {
        padding: calc(env(safe-area-inset-top, 0px) + 8px) 0 8px !important;
    }

    .fcbf-header-inner {
        width: calc(100% - 20px) !important;
        min-height: 68px !important;
        padding: 9px 9px 9px 12px !important;
        border-radius: 22px !important;
    }

    .fcbf-header .fcbf-brand:not(.mobile):not(.footer) img {
        max-width: 146px !important;
        max-height: 38px !important;
    }

    .fcbf-menu-toggle {
        flex-basis: 50px !important;
        width: 50px !important;
        height: 50px !important;
        min-width: 50px !important;
        min-height: 50px !important;
        border-radius: 17px !important;
    }
}

/* v1.0.6 RocketPlanner geïnspireerde footer */
.fcbf-rp-footer {
    padding: 88px 0 28px !important;
    background:
        radial-gradient(circle at 12% 8%, color-mix(in srgb, var(--fcbf-primary, #006dff) 16%, transparent), transparent 26%),
        linear-gradient(180deg, #07101f 0%, #050913 100%) !important;
    color: #fff !important;
    position: relative !important;
    overflow: hidden !important;
}
.fcbf-rp-footer::before {
    content: "" !important;
    position: absolute !important;
    right: -140px !important;
    top: -160px !important;
    width: 420px !important;
    height: 420px !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--fcbf-primary, #006dff) 20%, transparent) !important;
    filter: blur(20px) !important;
    opacity: .55 !important;
    pointer-events: none !important;
}
.fcbf-rp-footer > .fcbf-container {
    position: relative !important;
    z-index: 1 !important;
}
.fcbf-rp-footer-cta {
    min-height: 260px !important;
    padding: clamp(30px, 5vw, 54px) !important;
    border-radius: 34px !important;
    background:
        radial-gradient(circle at 88% 18%, rgba(255,255,255,.18), transparent 28%),
        linear-gradient(135deg, color-mix(in srgb, var(--fcbf-primary, #006dff) 95%, #ffffff 5%), var(--fcbf-primary-dark, #0053c7)) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 32px !important;
    box-shadow: 0 28px 70px rgba(0,0,0,.22) !important;
}
.fcbf-rp-footer-cta span {
    display: inline-flex !important;
    margin-bottom: 16px !important;
    color: rgba(255,255,255,.82) !important;
    font-size: 13px !important;
    font-weight: 850 !important;
}
.fcbf-rp-footer-cta h2 {
    max-width: 820px !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(36px, 5.6vw, 68px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.055em !important;
    font-weight: 950 !important;
}
.fcbf-rp-footer-cta p {
    max-width: 680px !important;
    margin: 18px 0 0 !important;
    color: rgba(255,255,255,.76) !important;
    font-size: 18px !important;
}
.fcbf-rp-footer-cta-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    justify-content: flex-end !important;
}
.fcbf-rp-footer-primary,
.fcbf-rp-footer-secondary {
    min-height: 52px !important;
    padding: 0 22px !important;
    border-radius: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}
.fcbf-rp-footer-primary {
    background: #fff !important;
    color: var(--fcbf-ink, #0b1020) !important;
}
.fcbf-rp-footer-secondary {
    background: rgba(255,255,255,.14) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.22) !important;
}
.fcbf-rp-footer-main {
    display: grid !important;
    grid-template-columns: minmax(260px, 1fr) minmax(0, 2fr) !important;
    gap: 64px !important;
    padding: 68px 0 42px !important;
}
.fcbf-rp-footer-brand p {
    max-width: 370px !important;
    margin: 18px 0 0 !important;
    color: rgba(255,255,255,.68) !important;
    font-size: 15px !important;
}
.fcbf-rp-footer .fcbf-brand.footer {
    color: #fff !important;
    display: inline-flex !important;
}
.fcbf-rp-footer .fcbf-brand.footer img {
    max-width: 190px !important;
    max-height: 54px !important;
    object-fit: contain !important;
}
.fcbf-rp-footer .fcbf-brand.footer img + span {
    display: none !important;
}
.fcbf-rp-footer-contact {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-top: 24px !important;
}
.fcbf-rp-footer-contact a {
    min-height: 38px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    color: rgba(255,255,255,.78) !important;
    display: inline-flex !important;
    align-items: center !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 760 !important;
}
.fcbf-rp-footer-columns {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 26px !important;
}
.fcbf-rp-footer-col h3 {
    margin: 0 0 16px !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}
.fcbf-rp-footer-col a {
    display: block !important;
    margin: 11px 0 !important;
    color: rgba(255,255,255,.66) !important;
    font-size: 14px !important;
    font-weight: 680 !important;
    text-decoration: none !important;
    transition: color .18s ease, transform .18s ease !important;
}
.fcbf-rp-footer-col a:hover {
    color: #fff !important;
    transform: translateX(2px) !important;
}
.fcbf-rp-footer-bottom {
    padding-top: 24px !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    color: rgba(255,255,255,.52) !important;
    font-size: 13px !important;
}
.fcbf-rp-footer-bottom div {
    display: flex !important;
    gap: 18px !important;
    flex-wrap: wrap !important;
}
.fcbf-rp-footer-bottom a {
    color: rgba(255,255,255,.58) !important;
    text-decoration: none !important;
}
.fcbf-rp-footer-bottom a:hover {
    color: #fff !important;
}
@media (max-width: 980px) {
    .fcbf-rp-footer {
        padding: 62px 0 24px !important;
    }
    .fcbf-rp-footer-cta {
        min-height: 0 !important;
        grid-template-columns: 1fr !important;
        align-items: start !important;
        border-radius: 28px !important;
    }
    .fcbf-rp-footer-cta-actions {
        justify-content: flex-start !important;
    }
    .fcbf-rp-footer-main {
        grid-template-columns: 1fr !important;
        gap: 38px !important;
        padding: 48px 0 34px !important;
    }
    .fcbf-rp-footer-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px) {
    .fcbf-rp-footer-cta {
        padding: 28px !important;
        border-radius: 24px !important;
    }
    .fcbf-rp-footer-cta h2 {
        font-size: 38px !important;
    }
    .fcbf-rp-footer-cta-actions {
        display: grid !important;
    }
    .fcbf-rp-footer-primary,
    .fcbf-rp-footer-secondary {
        width: 100% !important;
    }
    .fcbf-rp-footer-columns {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }
    .fcbf-rp-footer-bottom {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
}

/* v1.0.7 footer volledig RocketPlanner achtige indeling */
.fcbf-rp2-footer {
    padding: 34px 0 28px !important;
    background: #f8f5ee !important;
    color: #0b1020 !important;
    position: relative !important;
    overflow: hidden !important;
}
.fcbf-rp2-footer::before {
    content: "" !important;
    position: absolute !important;
    inset: auto -180px -240px auto !important;
    width: 520px !important;
    height: 520px !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--fcbf-primary, #c99a1e) 14%, transparent) !important;
    filter: blur(16px) !important;
    pointer-events: none !important;
}
.fcbf-rp2-footer > .fcbf-container {
    position: relative !important;
    z-index: 1 !important;
}
.fcbf-rp2-demo-card {
    min-height: 320px !important;
    padding: clamp(30px, 5vw, 58px) !important;
    border-radius: 34px !important;
    background:
        radial-gradient(circle at 86% 16%, rgba(255,255,255,.12), transparent 28%),
        linear-gradient(135deg, #10141f 0%, #070a10 100%) !important;
    color: #fff !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 34px !important;
    box-shadow: 0 28px 90px rgba(7,10,16,.20) !important;
}
.fcbf-rp2-demo-copy span {
    display: inline-flex !important;
    margin-bottom: 18px !important;
    color: color-mix(in srgb, var(--fcbf-primary, #c99a1e) 82%, #ffffff 18%) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}
.fcbf-rp2-demo-copy h2 {
    max-width: 860px !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(40px, 6vw, 76px) !important;
    line-height: .98 !important;
    letter-spacing: -.062em !important;
    font-weight: 950 !important;
}
.fcbf-rp2-demo-copy p {
    max-width: 680px !important;
    margin: 20px 0 0 !important;
    color: rgba(255,255,255,.70) !important;
    font-size: 18px !important;
}
.fcbf-rp2-demo-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 12px !important;
}
.fcbf-rp2-btn {
    min-height: 54px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}
.fcbf-rp2-btn.primary {
    background: linear-gradient(135deg, var(--fcbf-primary, #c99a1e), color-mix(in srgb, var(--fcbf-primary, #c99a1e) 76%, #6d5108 24%)) !important;
    color: #fff !important;
    box-shadow: 0 18px 34px color-mix(in srgb, var(--fcbf-primary, #c99a1e) 28%, transparent) !important;
}
.fcbf-rp2-btn.ghost {
    background: rgba(255,255,255,.10) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    color: #fff !important;
}
.fcbf-rp2-main {
    display: grid !important;
    grid-template-columns: minmax(280px, .92fr) minmax(0, 1.7fr) !important;
    gap: clamp(34px, 6vw, 86px) !important;
    padding: 70px 0 44px !important;
}
.fcbf-rp2-brand .fcbf-brand.footer {
    color: #070a10 !important;
    margin: 0 0 20px !important;
}
.fcbf-rp2-brand .fcbf-brand.footer img {
    max-width: 210px !important;
    max-height: 58px !important;
    object-fit: contain !important;
}
.fcbf-rp2-brand .fcbf-brand.footer img + span {
    display: none !important;
}
.fcbf-rp2-brand p {
    max-width: 390px !important;
    margin: 0 !important;
    color: #5f6470 !important;
    font-size: 15px !important;
}
.fcbf-rp2-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-top: 24px !important;
}
.fcbf-rp2-badges span {
    min-height: 36px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    border: 1px solid #e7dfcf !important;
    color: #070a10 !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    box-shadow: 0 10px 24px rgba(7,10,16,.04) !important;
}
.fcbf-rp2-links {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(18px, 3vw, 36px) !important;
}
.fcbf-rp2-col h3 {
    margin: 0 0 18px !important;
    color: #070a10 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    letter-spacing: -.02em !important;
}
.fcbf-rp2-col a {
    display: flex !important;
    align-items: center !important;
    min-height: 34px !important;
    margin: 8px 0 !important;
    color: #5f6470 !important;
    font-size: 14px !important;
    font-weight: 760 !important;
    text-decoration: none !important;
    transition: color .18s ease, transform .18s ease !important;
}
.fcbf-rp2-col a:hover {
    color: #070a10 !important;
    transform: translateX(3px) !important;
}
.fcbf-rp2-line {
    height: 1px !important;
    background: linear-gradient(90deg, transparent, #d8cfbd, transparent) !important;
}
.fcbf-rp2-bottom {
    min-height: 74px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
    color: #6c717c !important;
    font-size: 13px !important;
}
.fcbf-rp2-bottom div {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}
.fcbf-rp2-bottom strong {
    color: #070a10 !important;
    font-weight: 900 !important;
}
.fcbf-rp2-bottom nav {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
}
.fcbf-rp2-bottom a {
    color: #6c717c !important;
    text-decoration: none !important;
    font-weight: 760 !important;
}
.fcbf-rp2-bottom a:hover {
    color: #070a10 !important;
}
@media (max-width: 980px) {
    .fcbf-rp2-footer {
        padding-top: 22px !important;
    }
    .fcbf-rp2-demo-card {
        min-height: 0 !important;
        grid-template-columns: 1fr !important;
        align-items: start !important;
        border-radius: 28px !important;
    }
    .fcbf-rp2-demo-actions {
        justify-content: flex-start !important;
    }
    .fcbf-rp2-main {
        grid-template-columns: 1fr !important;
        padding: 50px 0 34px !important;
    }
    .fcbf-rp2-links {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px) {
    .fcbf-rp2-demo-card {
        padding: 28px !important;
        border-radius: 24px !important;
    }
    .fcbf-rp2-demo-copy h2 {
        font-size: 40px !important;
    }
    .fcbf-rp2-demo-copy p {
        font-size: 16px !important;
    }
    .fcbf-rp2-demo-actions {
        display: grid !important;
    }
    .fcbf-rp2-btn {
        width: 100% !important;
    }
    .fcbf-rp2-links {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .fcbf-rp2-bottom {
        align-items: flex-start !important;
        flex-direction: column !important;
        padding: 22px 0 0 !important;
    }
}

/* v1.0.8 strakkere footer en loader fix */
.fcbf-loader-modern {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    background: rgba(255,255,255,.86) !important;
    backdrop-filter: blur(16px) saturate(1.08) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: opacity .22s ease, visibility .22s ease !important;
}
.fcbf-loader-modern.is-hidden {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
.fcbf-loader-modern .fcbf-loader-card {
    min-width: 238px !important;
    padding: 24px 24px 22px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.92) !important;
    border: 1px solid rgba(229,234,242,.95) !important;
    box-shadow: 0 26px 80px rgba(7,10,16,.14) !important;
    display: grid !important;
    justify-items: center !important;
    gap: 13px !important;
}
.fcbf-loader-brand img {
    max-width: 150px !important;
    max-height: 48px !important;
    object-fit: contain !important;
    display: block !important;
}
.fcbf-loader-modern .fcbf-loader-logo {
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, var(--fcbf-primary, #c99a1e), color-mix(in srgb, var(--fcbf-primary, #c99a1e) 72%, #6d5108 28%)) !important;
    color: #fff !important;
}
.fcbf-loader-modern .fcbf-loader-spinner {
    width: 30px !important;
    height: 30px !important;
    border: 3px solid rgba(7,10,16,.10) !important;
    border-top-color: var(--fcbf-primary, #c99a1e) !important;
    border-radius: 999px !important;
    animation: fcbfSpin .72s linear infinite !important;
}
.fcbf-loader-modern .fcbf-loader-card strong {
    color: #070a10 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: -.01em !important;
}

/* Footer reset voor oude footer varianten */
.fcbf-rp3-footer {
    padding: 42px 0 34px !important;
    background:
        radial-gradient(circle at 12% 8%, color-mix(in srgb, var(--fcbf-primary, #c99a1e) 10%, transparent), transparent 26%),
        linear-gradient(180deg, #fbfaf7 0%, #f3eee3 100%) !important;
    color: #070a10 !important;
    position: relative !important;
    overflow: hidden !important;
}
.fcbf-rp3-footer > .fcbf-container {
    position: relative !important;
    z-index: 1 !important;
}
.fcbf-rp3-cta {
    padding: clamp(28px, 4.5vw, 52px) !important;
    border-radius: 34px !important;
    background:
        radial-gradient(circle at 86% 12%, rgba(201,154,30,.22), transparent 26%),
        linear-gradient(135deg, #111622 0%, #070a10 100%) !important;
    color: #fff !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 28px !important;
    box-shadow: 0 28px 90px rgba(7,10,16,.20) !important;
    border: 1px solid rgba(255,255,255,.09) !important;
}
.fcbf-rp3-pill {
    display: inline-flex !important;
    min-height: 34px !important;
    padding: 0 13px !important;
    margin: 0 0 18px !important;
    border-radius: 999px !important;
    align-items: center !important;
    background: rgba(201,154,30,.13) !important;
    border: 1px solid rgba(201,154,30,.26) !important;
    color: #e1b847 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}
.fcbf-rp3-cta h2 {
    max-width: 820px !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(38px, 5.4vw, 70px) !important;
    line-height: .98 !important;
    letter-spacing: -.062em !important;
    font-weight: 950 !important;
}
.fcbf-rp3-cta p {
    max-width: 650px !important;
    margin: 18px 0 0 !important;
    color: rgba(255,255,255,.70) !important;
    font-size: 17px !important;
}
.fcbf-rp3-cta-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 10px !important;
}
.fcbf-rp3-btn {
    min-height: 52px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    font-weight: 900 !important;
}
.fcbf-rp3-btn.primary {
    background: linear-gradient(135deg, var(--fcbf-primary, #c99a1e), color-mix(in srgb, var(--fcbf-primary, #c99a1e) 72%, #6d5108 28%)) !important;
    color: #fff !important;
    box-shadow: 0 18px 34px color-mix(in srgb, var(--fcbf-primary, #c99a1e) 28%, transparent) !important;
}
.fcbf-rp3-btn.secondary {
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.18) !important;
}
.fcbf-rp3-panel {
    margin-top: 22px !important;
    padding: clamp(26px, 4vw, 42px) !important;
    border-radius: 34px !important;
    background: rgba(255,255,255,.86) !important;
    border: 1px solid #e8dfcf !important;
    box-shadow: 0 20px 70px rgba(7,10,16,.07) !important;
    backdrop-filter: blur(14px) !important;
    display: grid !important;
    grid-template-columns: minmax(260px, .85fr) minmax(0, 1.65fr) !important;
    gap: clamp(34px, 6vw, 76px) !important;
}
.fcbf-rp3-brand .fcbf-brand.footer {
    color: #070a10 !important;
    margin: 0 0 18px !important;
}
.fcbf-rp3-brand .fcbf-brand.footer img {
    max-width: 210px !important;
    max-height: 58px !important;
    object-fit: contain !important;
}
.fcbf-rp3-brand .fcbf-brand.footer img + span {
    display: none !important;
}
.fcbf-rp3-brand p {
    max-width: 385px !important;
    margin: 0 !important;
    color: #626772 !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
}
.fcbf-rp3-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 22px !important;
}
.fcbf-rp3-meta span {
    min-height: 34px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: #f8f5ee !important;
    border: 1px solid #e8dfcf !important;
    color: #070a10 !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}
.fcbf-rp3-columns {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(16px, 2.5vw, 32px) !important;
}
.fcbf-rp3-col h3 {
    margin: 0 0 16px !important;
    color: #070a10 !important;
    font-size: 14px !important;
    font-weight: 950 !important;
    letter-spacing: -.02em !important;
}
.fcbf-rp3-col a {
    display: flex !important;
    align-items: center !important;
    min-height: 34px !important;
    color: #626772 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 760 !important;
    transition: color .18s ease, transform .18s ease !important;
}
.fcbf-rp3-col a:hover {
    color: #070a10 !important;
    transform: translateX(3px) !important;
}
.fcbf-rp3-bottom {
    grid-column: 1 / -1 !important;
    margin-top: 14px !important;
    padding-top: 24px !important;
    border-top: 1px solid #e8dfcf !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    color: #777b84 !important;
    font-size: 13px !important;
}
.fcbf-rp3-bottom nav {
    display: flex !important;
    gap: 18px !important;
    flex-wrap: wrap !important;
}
.fcbf-rp3-bottom a {
    color: #777b84 !important;
    text-decoration: none !important;
    font-weight: 760 !important;
}
.fcbf-rp3-bottom a:hover {
    color: #070a10 !important;
}
@media (max-width: 980px) {
    .fcbf-rp3-footer {
        padding: 26px 0 24px !important;
    }
    .fcbf-rp3-cta {
        grid-template-columns: 1fr !important;
        border-radius: 28px !important;
    }
    .fcbf-rp3-cta-actions {
        justify-content: flex-start !important;
    }
    .fcbf-rp3-panel {
        grid-template-columns: 1fr !important;
        border-radius: 28px !important;
    }
    .fcbf-rp3-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px) {
    .fcbf-rp3-cta {
        padding: 28px !important;
        border-radius: 24px !important;
    }
    .fcbf-rp3-cta h2 {
        font-size: 38px !important;
    }
    .fcbf-rp3-cta-actions {
        display: grid !important;
    }
    .fcbf-rp3-btn {
        width: 100% !important;
    }
    .fcbf-rp3-panel {
        padding: 24px !important;
        border-radius: 24px !important;
    }
    .fcbf-rp3-columns {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }
    .fcbf-rp3-bottom {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
}

/* v1.0.9 strakkere zwart/goud navigatie zonder blauw */
.fcbf-header {
    background: rgba(255,255,255,.88) !important;
    border-bottom: 1px solid rgba(232,225,210,.86) !important;
    box-shadow: 0 10px 30px rgba(7,10,16,.035) !important;
}
.fcbf-brand {
    color: #070a10 !important;
    font-weight: 950 !important;
}
.fcbf-brand-mark {
    background: linear-gradient(135deg, #c99a1e, #8f6b0f) !important;
    color: #fff !important;
}
.fcbf-menu a,
.fcbf-menu button,
.fcbf-login {
    color: #070a10 !important;
    font-weight: 850 !important;
    letter-spacing: -.015em !important;
}
.fcbf-menu a:hover,
.fcbf-menu button:hover,
.fcbf-login:hover {
    color: #c99a1e !important;
}
.fcbf-panel {
    border-color: #e8e1d2 !important;
    box-shadow: 0 24px 70px rgba(7,10,16,.12) !important;
}
.fcbf-panel a:hover {
    background: #fbfaf7 !important;
}
.fcbf-panel strong {
    color: #070a10 !important;
    font-weight: 950 !important;
}
.fcbf-panel small {
    color: #6f7178 !important;
}
.fcbf-cta {
    background: linear-gradient(135deg, #070a10, #171b25) !important;
    color: #fff !important;
    box-shadow: 0 14px 30px rgba(201,154,30,.18), inset 0 0 0 1px rgba(201,154,30,.34) !important;
    border: 1px solid rgba(201,154,30,.30) !important;
}
.fcbf-menu-toggle {
    background: #fff !important;
    color: #070a10 !important;
    border-color: #e8e1d2 !important;
}
@media (max-width: 980px) {
    .fcbf-header-inner {
        background: rgba(255,255,255,.90) !important;
        border-color: rgba(232,225,210,.92) !important;
        box-shadow: 0 18px 48px rgba(7,10,16,.09) !important;
    }
    .fcbf-menu-toggle {
        background:
            radial-gradient(circle at 30% 15%, rgba(201,154,30,.16), transparent 34%),
            #ffffff !important;
        border-color: #e8e1d2 !important;
    }
    .fcbf-menu-toggle[aria-expanded="true"] {
        background: #070a10 !important;
        color: #fff !important;
        border-color: #070a10 !important;
    }
    .fcbf-nav {
        border-color: #e8e1d2 !important;
        background:
            radial-gradient(circle at 20% 0%, rgba(201,154,30,.12), transparent 32%),
            #ffffff !important;
    }
    .fcbf-menu > li {
        box-shadow: 0 12px 32px rgba(7,10,16,.055) !important;
    }
    .fcbf-menu > li > a,
    .fcbf-menu > li > button {
        color: #070a10 !important;
    }
    .fcbf-has-panel.is-active > button span {
        background: #f4efe1 !important;
        color: #c99a1e !important;
    }
    .fcbf-panel a,
    .fcbf-login {
        background: #fbfaf7 !important;
        border-color: #e8e1d2 !important;
    }
    .fcbf-cta {
        background: linear-gradient(135deg, #070a10, #171b25) !important;
        box-shadow: 0 16px 32px rgba(201,154,30,.18), inset 0 0 0 1px rgba(201,154,30,.34) !important;
    }
}
