/* Zoek & Boek van UwBoeking.com met de BergNomads-huisstijl erover.
   Gegenereerd door 1Werkmap/uwboeking/importeer.py: pas 1Werkmap/uwboeking/bergnomads.css aan. */
.zeb-app{
            --bg-color: #dcecd9 !important; 
            --sidebar-bg: #ffffff !important;
            --primary-green: #63a97b !important; 
            --text-dark: #2c3e50 !important;
            --text-grey: #666 !important;
            --border-color: #ddd !important;
        }.zeb-app, .zeb-app *{ box-sizing: border-box !important; margin: 0 !important; padding: 0 !important; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important; }.zeb-app{ background-color: var(--bg-color) !important; color: var(--text-dark) !important; padding: 20px !important; min-height: 100vh !important; }.zeb-app .container{ display: flex !important; gap: 30px !important; max-width: 1400px !important; margin: 0 auto !important; align-items: flex-start !important; }.zeb-app aside{ width: 320px !important; background: var(--sidebar-bg) !important; padding: 25px !important; border-radius: 16px !important; box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important; flex-shrink: 0 !important; }.zeb-app aside h2{ font-size: 24px !important; margin-bottom: 20px !important; color: var(--text-dark) !important; }.zeb-app .input-group{ display: flex !important; gap: 10px !important; margin-bottom: 15px !important; }.zeb-app input[type="date"], .zeb-app select, .zeb-app input[type="number"]{ width: 100% !important; padding: 12px !important; border: 1px solid var(--border-color) !important; border-radius: 6px !important; font-size: 14px !important; background: #fff !important; }.zeb-app .btn-search{ 
            width: 100% !important; 
            padding: 12px !important; 
            background-color: var(--primary-green) !important; 
            color: white !important; 
            border: none !important; 
            border-radius: 8px !important; 
            font-size: 16px !important; 
            font-weight: bold !important; 
            cursor: pointer !important; 
            margin-bottom: 25px !important; 
            transition: background 0.2s !important;
        }.zeb-app .btn-search:hover{ background-color: #54936a !important; }.zeb-app .filter-section{ margin-bottom: 20px !important; }.zeb-app .filter-header{ font-weight: bold !important; margin-bottom: 10px !important; border-bottom: 1px solid var(--border-color) !important; padding-bottom: 5px !important; cursor: pointer !important; display: flex !important; justify-content: space-between !important; align-items: center !important;}.zeb-app label{ display: flex !important; align-items: center !important; gap: 8px !important; font-size: 14px !important; margin-bottom: 8px !important; color: var(--text-dark) !important; cursor: pointer !important; transition: color 0.2s !important; }.zeb-app label:hover{ color: var(--primary-green) !important; }.zeb-app .filter-count{ margin-left: auto !important; color: var(--text-grey) !important; font-size: 13px !important; }.zeb-app input[type="checkbox"]{ accent-color: var(--primary-green) !important; width: 16px !important; height: 16px !important; cursor: pointer !important; }.zeb-app .date-range-field{
            position: relative !important;
            width: 100% !important;
            padding: 12px !important;
            border: 1px solid var(--border-color) !important;
            border-radius: 6px !important;
            font-size: 14px !important;
            background: #fff !important;
            cursor: pointer !important;
            display: flex !important;
            align-items: center !important;
            gap: 10px !important;
            margin-bottom: 15px !important;
            color: var(--text-dark) !important;
            user-select: none !important;
            transition: border-color 0.15s, box-shadow 0.15s !important;
        }.zeb-app .date-range-field:hover{ border-color: var(--primary-green) !important; }.zeb-app .date-range-field.active{ border-color: var(--primary-green) !important; box-shadow: 0 0 0 3px rgba(99, 169, 123, 0.15) !important; }.zeb-app .date-icon{ color: var(--text-grey) !important; flex-shrink: 0 !important; }.zeb-app .date-text{ flex: 1 !important; text-align: center !important; font-size: 13px !important; }.zeb-app .date-text.placeholder{ color: var(--text-grey) !important; }.zeb-app .date-sep{ color: var(--text-grey) !important; }.zeb-app .calendar-wrapper{ position: relative !important; margin-bottom: 15px !important; }.zeb-app .calendar-wrapper .date-range-field{ margin-bottom: 0 !important; }.zeb-app .calendar-popup{
            position: absolute !important;
            top: calc(100% + 6px) !important;
            left: 0 !important;
            z-index: 100 !important;
            background: #fff !important;
            border-radius: 12px !important;
            box-shadow: 0 10px 40px rgba(0,0,0,0.15) !important;
            padding: 20px 12px !important;
            display: flex !important;
            align-items: flex-start !important;
            gap: 4px !important;
            width: max-content !important;
            max-width: calc(100vw - 40px) !important;
        }.zeb-app .calendar-popup[hidden]{ display: none !important; }.zeb-app .cal-nav{
            background: transparent !important;
            border: none !important;
            color: #5caab1 !important;
            cursor: pointer !important;
            padding: 14px 12px !important;
            line-height: 1 !important;
            align-self: center !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            border-radius: 6px !important;
            transition: background 0.15s !important;
        }.zeb-app .cal-nav:hover:not(:disabled){ background: #f0f4f2 !important; }.zeb-app .cal-nav:disabled{ opacity: 0.25 !important; cursor: not-allowed !important; }.zeb-app .cal-months{ display: flex !important; gap: 24px !important; }.zeb-app .cal-month{ min-width: 230px !important; }.zeb-app .cal-month-title{
            text-align: center !important;
            font-weight: 600 !important;
            margin-bottom: 14px !important;
            color: var(--text-dark) !important;
            font-size: 15px !important;
        }.zeb-app .cal-weekdays, .zeb-app .cal-days{
            display: grid !important;
            grid-template-columns: repeat(7, 1fr) !important;
        }.zeb-app .cal-weekdays{
            font-size: 12px !important;
            color: var(--text-grey) !important;
            margin-bottom: 6px !important;
        }.zeb-app .cal-weekdays div{ text-align: center !important; padding: 4px 0 !important; font-weight: 400 !important; }.zeb-app .cal-day{
            position: relative !important;
            height: 40px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            font-size: 14px !important;
        }.zeb-app .cal-day-inner{
            position: relative !important;
            width: 36px !important;
            height: 36px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            border-radius: 50% !important;
            cursor: pointer !important;
            color: var(--text-dark) !important;
            z-index: 1 !important;
            transition: background 0.15s !important;
        }.zeb-app .cal-day.empty .cal-day-inner, .zeb-app .cal-day.empty{ cursor: default !important; }.zeb-app .cal-day.past .cal-day-inner{
            color: #c9bca0 !important;
            text-decoration: line-through !important;
            cursor: not-allowed !important;
        }.zeb-app .cal-day.disabled .cal-day-inner{
            color: #d5d5d5 !important;
            cursor: not-allowed !important;
        }.zeb-app .cal-day.today .cal-day-inner{ font-weight: 700 !important; }.zeb-app .cal-day.today .cal-day-inner::after{
            content: '' !important;
            position: absolute !important;
            bottom: 3px !important;
            left: 50% !important;
            transform: translateX(-50%) !important;
            width: 4px !important; height: 4px !important;
            background: var(--text-dark) !important;
            border-radius: 50% !important;
        }.zeb-app .cal-day.in-range{ background: #fdf4d8 !important; }.zeb-app .cal-day.range-start{ background: linear-gradient(to right, transparent 50%, #fdf4d8 50%) !important; }.zeb-app .cal-day.range-end{ background: linear-gradient(to right, #fdf4d8 50%, transparent 50%) !important; }.zeb-app .cal-day.range-start.range-end{ background: transparent !important; }.zeb-app .cal-day.range-start .cal-day-inner, .zeb-app .cal-day.range-end .cal-day-inner{
            background: var(--primary-green) !important;
            color: #fff !important;
            font-weight: 600 !important;
        }.zeb-app .cal-day.range-start.today .cal-day-inner::after, .zeb-app .cal-day.range-end.today .cal-day-inner::after{ background: #fff !important; }.zeb-app .cal-day:not(.past):not(.empty):not(.range-start):not(.range-end) .cal-day-inner:hover{
            background: #e6f1ed !important;
        }@media (max-width: 720px){
            .cal-months { flex-direction: column !important; gap: 12px !important; }
        }.zeb-app .zb-main{ flex-grow: 1 !important; }.zeb-app .results-header{ 
            margin-bottom: 20px !important; 
            display: flex !important; 
            justify-content: space-between !important; 
            align-items: center !important; 
            width: 100% !important;
        }.zeb-app .sort-container select{
            padding: 8px 12px !important;
            border-radius: 6px !important;
            border: 1px solid var(--border-color) !important;
            font-size: 14px !important;
            color: var(--text-dark) !important;
            cursor: pointer !important;
            background-color: white !important;
        }.zeb-app .cards-grid{ display: grid !important; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important; gap: 25px !important; }.zeb-app .availability-group-heading{
            grid-column: 1 / -1 !important;
            margin: 4px 0 -4px !important;
            padding-top: 18px !important;
            border-top: 1px solid var(--border-color) !important;
            color: var(--text-dark) !important;
            font-size: 18px !important;
            font-weight: 700 !important;
        }.zeb-app .card{ background-color: var(--sidebar-bg) !important; border-radius: 16px !important; overflow: hidden !important; box-shadow: 0 4px 10px rgba(0,0,0,0.05) !important; display: flex !important; flex-direction: column !important; transition: transform 0.2s, opacity 0.3s !important; }.zeb-app .card:hover{ transform: translateY(-3px) !important; box-shadow: 0 8px 20px rgba(0,0,0,0.1) !important; }.zeb-app .card.hidden{ display: none !important; }.zeb-app .card-title{ background-color: var(--sidebar-bg) !important; padding: 15px !important; font-weight: bold !important; font-size: 16px !important; border-bottom: 1px solid #f0f0f0 !important; }.zeb-app .card-image{ width: 100% !important; height: 200px !important; object-fit: cover !important; background-color: #eee !important; }.zeb-app .card-body{ 
            padding: 15px !important; 
            flex-grow: 1 !important; 
            display: flex !important; 
            flex-direction: column !important; 
            position: relative !important; 
        }.zeb-app .price-row{ 
            display: flex !important; 
            justify-content: space-between !important; 
            align-items: center !important; 
            min-height: 40px !important; 
        }.zeb-app .guests{ display: flex !important; align-items: center !important; gap: 5px !important; font-size: 14px !important; color: var(--text-grey) !important; flex-shrink: 0 !important; }.zeb-app .price-info{ 
            text-align: right !important; 
            width: 130px !important; 
            visibility: hidden !important; 
            opacity: 0 !important;
            transition: opacity 0.2s ease, visibility 0.2s !important;
            flex-shrink: 0 !important; 
        }.zeb-app .price-info.price-visible{ 
            visibility: visible !important; 
            opacity: 1 !important; 
        }.zeb-app .price-label{ font-size: 10px !important; color: var(--text-grey) !important; display: block !important; }.zeb-app .price-label:empty{ display: none !important; }.zeb-app .price-value{ font-weight: bold !important; font-size: 20px !important; color: var(--text-dark) !important; }.zeb-app .tags-container{ 
            display: flex !important; 
            flex-wrap: wrap !important; 
            gap: 8px !important; 
            margin-bottom: 24px !important; 
        }.zeb-app .tag{ background-color: #f0f4f2 !important; color: var(--text-dark) !important; padding: 6px 10px !important; border-radius: 20px !important; font-size: 12px !important; font-weight: 500 !important; }.zeb-app .card-footer{ 
            margin-top: auto !important; 
            display: flex !important; 
            flex-direction: column !important; 
            gap: 12px !important; 
        }.zeb-app .dates{ 
            font-size: 13px !important; color: var(--text-grey) !important; display: flex !important; align-items: center !important; justify-content: center !important; text-align: center !important; min-height: 18px !important;
        }.zeb-app .dates.is-alternative{
            color: var(--primary-green) !important;
            font-weight: 600 !important;
        }.zeb-app .btn-card{ 
            width: 100% !important; 
            padding: 10px !important; 
            background-color: var(--primary-green) !important; 
            color: white !important; 
            border: none !important; 
            border-radius: 8px !important; 
            font-weight: bold !important; 
            cursor: pointer !important; 
            transition: background 0.2s !important;
        }.zeb-app .btn-card:hover{ background-color: #54936a !important; }.zeb-app .card-loading{
            position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
            background: rgba(255,255,255,0.8) !important; display: flex !important; align-items: center !important; justify-content: center !important;
            font-size: 14px !important; color: var(--primary-green) !important; font-weight: bold !important; z-index: 10 !important; border-radius: 16px !important;
        }.zeb-app .mobile-toggles{ display: none !important; }.zeb-app .mobile-sort-field{ position: relative !important; }.zeb-app .mobile-sort-field select{
            position: absolute !important;
            inset: 0 !important;
            width: 100% !important;
            height: 100% !important;
            opacity: 0 !important;
            cursor: pointer !important;
            border: none !important;
            padding: 0 !important;
            margin: 0 !important;
            font: inherit !important;
            appearance: none !important;
            -webkit-appearance: none !important;
        }.zeb-app .no-results{
            background-color: var(--sidebar-bg) !important;
            border-radius: 16px !important;
            padding: 40px 25px !important;
            text-align: center !important;
            color: var(--text-dark) !important;
            font-size: 16px !important;
            box-shadow: 0 4px 10px rgba(0,0,0,0.05) !important;
        }.zeb-app .no-results[hidden]{ display: none !important; }@media (max-width: 900px){
            .container { flex-direction: column !important; }.zeb-app aside{ width: 100% !important; }.zeb-app .results-header{ flex-direction: column !important; align-items: flex-start !important; gap: 15px !important; }.zeb-app .sort-container select{ width: 100% !important; }
        }@media (max-width: 720px){
            aside { padding: 18px !important; }.zeb-app aside h2{ display: none !important; }.zeb-app .zb-main{ width: 100% !important; }.zeb-app .cards-grid{ grid-template-columns: 1fr !important; }.zeb-app .mobile-toggles{
                display: flex !important;
                align-items: center !important;
                gap: 28px !important;
                margin-top: 12px !important;
            }.zeb-app .mobile-toggle{
                background: none !important;
                border: none !important;
                color: var(--primary-green) !important;
                font-size: 14px !important;
                font-weight: 500 !important;
                cursor: pointer !important;
                display: inline-flex !important;
                align-items: center !important;
                gap: 6px !important;
                padding: 0 !important;
                margin: 0 !important;
                height: 32px !important;
                line-height: 1 !important;
                font-family: inherit !important;
            }.zeb-app .mobile-toggle.active{ font-weight: 700 !important; }.zeb-app .mobile-sort-panel[hidden]{ display: none !important; }.zeb-app .mobile-sort-panel:not([hidden]){ display: block !important; margin-top: 12px !important; }.zeb-app .sidebar-expandable{ display: none !important; margin-top: 15px !important; }.zeb-app .sidebar-expandable.open{ display: block !important; }.zeb-app .results-header .sort-container{ display: none !important; }.zeb-app .calendar-popup{
                position: fixed !important;
                top: auto !important;
                bottom: auto !important;
                left: 50% !important;
                right: auto !important;
                transform: translateX(-50%) !important;
                width: auto !important;
                max-width: calc(100vw - 20px) !important;
                max-height: calc(100vh - 20px) !important;
                overflow-y: auto !important;
            }.zeb-app .cal-months{ flex-direction: column !important; gap: 14px !important; width: 100% !important; }.zeb-app .cal-month{ min-width: 0 !important; width: 100% !important; }
        }
    
.zeb-app{
        --bg-color: #dcecd9 !important;
        --sidebar-bg: #ffffff !important;
        --primary-green: #63a97b !important;
        --text-dark: #2c3e50 !important;
        --acc-lightbox-bg: #ffffff !important;
        --zb-radius: 8px !important;
        --zb-radius-lg: 14px !important;
    }.zeb-app .btn-search:hover, .zeb-app .btn-card:hover{
        background-color: color-mix(in srgb, #63a97b, #000 15%) !important;
    }.zeb-app aside, .zeb-app .acc-panel, .zeb-app .card, .zeb-app .calendar-popup, .zeb-app .zw-popup{
        border-radius: var(--zb-radius-lg) !important;
    }.zeb-app .btn-search, .zeb-app .btn-card, .zeb-app .date-range-field, .zeb-app input[type="date"], .zeb-app input[type="number"], .zeb-app input[type="text"], .zeb-app input[type="url"], .zeb-app select, .zeb-app .sort-container select, .zeb-app .filter-section label, .zeb-app .tag, .zeb-app #acc-photos-grid > div, .zeb-app #acc-facilities li, .zeb-app .mobile-toggle, .zeb-app .card-loading, .zeb-app .no-results{
        border-radius: var(--zb-radius) !important;
    }

.zeb-app #acc-lightbox{ position: fixed !important; inset: 0 !important; z-index: 400 !important; display: none !important; }.zeb-app #acc-lightbox:not([hidden]){ display: flex !important; }.zeb-app .acc-backdrop{ position: absolute !important; inset: 0 !important; background: rgba(0,0,0,0.7) !important; }.zeb-app .acc-panel{
            position: relative !important; margin: auto !important; background: var(--acc-lightbox-bg, var(--sidebar-bg, #fff)) !important;
            width: min(960px, calc(100vw - 24px)) !important;
            height: 90vh !important;
            max-height: calc(100vh - 24px) !important;
            border-radius: 16px !important; box-shadow: 0 12px 40px rgba(0,0,0,0.25) !important;
            display: flex !important; flex-direction: column !important; overflow: hidden !important;
        }.zeb-app .acc-close{
            position: absolute !important; top: 12px !important; right: 12px !important; z-index: 2 !important;
            width: 36px !important; height: 36px !important; border-radius: 50% !important; border: none !important;
            background: rgba(255,255,255,0.9) !important; color: #333 !important;
            font-size: 20px !important; line-height: 1 !important; cursor: pointer !important;
            display: flex !important; align-items: center !important; justify-content: center !important;
        }.zeb-app .acc-close:hover{ background: #fff !important; }.zeb-app .acc-gallery, .zeb-app .acc-tabs{ flex-shrink: 0 !important; }.zeb-app .acc-panel-content{
            flex: 1 !important; min-height: 0 !important; overflow-y: auto !important;
            padding: 20px 24px 28px !important;
        }.zeb-app .acc-gallery{
            display: grid !important; grid-template-columns: 2fr 1fr !important; gap: 4px !important;
            aspect-ratio: 3 / 1 !important; background: #eee !important;
        }.zeb-app .acc-gallery-main{
            background-color: #ddd !important;
            background-position: center !important;
            background-size: cover !important;
            background-repeat: no-repeat !important;
        }.zeb-app .acc-gallery-thumbs{
            display: grid !important; grid-template-columns: 1fr !important; grid-template-rows: 1fr 1fr !important; gap: 4px !important;
        }.zeb-app .acc-gallery-thumbs div{
            background-color: #ddd !important;
            background-position: center !important;
            background-size: cover !important;
            background-repeat: no-repeat !important;
        }.zeb-app .acc-tabs{
            display: flex !important; gap: 20px !important; padding: 16px 24px 0 !important;
            border-bottom: 1px solid #eee !important;
            overflow-x: auto !important;
        }.zeb-app .acc-tabs button{
            background: none !important; border: none !important; padding: 10px 0 !important;
            font-size: 15px !important; color: var(--text-dark, #2c3e50) !important;
            cursor: pointer !important; font-family: inherit !important;
            border-bottom: 2px solid transparent !important;
            white-space: nowrap !important;
        }.zeb-app .acc-tabs button.active{
            color: var(--primary-green, #63a97b) !important;
            border-bottom-color: var(--primary-green, #63a97b) !important;
            font-weight: 600 !important;
        }.zeb-app .acc-panel-content > div[hidden]{ display: none !important; }.zeb-app .acc-panel-content h2{ font-size: 22px !important; margin-bottom: 14px !important; color: var(--text-dark, #2c3e50) !important; }.zeb-app .acc-panel-content p{ margin-bottom: 10px !important; line-height: 1.5 !important; color: var(--text-dark, #2c3e50) !important; }.zeb-app #acc-photos-grid{
            display: grid !important; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important;
            gap: 10px !important;
        }.zeb-app #acc-photos-grid div{
            aspect-ratio: 1 !important;
            background-color: #ddd !important;
            background-position: center !important;
            background-size: cover !important;
            background-repeat: no-repeat !important;
            border-radius: 8px !important; cursor: pointer !important;
            transition: transform 0.15s !important;
        }.zeb-app #acc-photos-grid div:hover{ transform: scale(1.02) !important; }.zeb-app #acc-facilities .acc-cat-group{ margin-bottom: 14px !important; }.zeb-app #acc-facilities .acc-cat-header{ font-weight: 600 !important; margin-bottom: 6px !important; color: var(--text-dark, #2c3e50) !important; }.zeb-app #acc-facilities ul{ list-style: none !important; padding: 0 !important; margin: 0 !important;
            display: grid !important; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important; gap: 6px !important;
        }.zeb-app #acc-facilities li{
            padding: 6px 12px !important; background: #f0f4f2 !important; border-radius: 20px !important;
            font-size: 13px !important; color: var(--text-dark, #2c3e50) !important;
        }.zeb-app #acc-contact iframe, .zeb-app #acc-reserve iframe{
            width: 100% !important; border: none !important; display: block !important;
            background: #fff !important;
        }.zeb-app #acc-contact iframe{ height: 800px !important; }.zeb-app #acc-contact .acc-contact-empty, .zeb-app #acc-reserve .acc-reserve-empty{ color: #999 !important; padding: 20px !important; text-align: center !important; }.zeb-app #acc-photo-viewer{ position: fixed !important; inset: 0 !important; z-index: 500 !important; display: none !important; }.zeb-app #acc-photo-viewer:not([hidden]){ display: block !important; }.zeb-app .apv-backdrop{ position: absolute !important; inset: 0 !important; background: rgba(0,0,0,0.95) !important; }.zeb-app .apv-image{
            position: absolute !important; top: 60px !important; right: 80px !important; bottom: 60px !important; left: 80px !important;
            background-position: center !important;
            background-size: contain !important;
            background-repeat: no-repeat !important;
        }.zeb-app .apv-close, .zeb-app .apv-prev, .zeb-app .apv-next{
            position: absolute !important; background: rgba(255,255,255,0.12) !important; color: white !important;
            border: none !important; border-radius: 50% !important; cursor: pointer !important;
            display: flex !important; align-items: center !important; justify-content: center !important;
            font-size: 22px !important; line-height: 1 !important;
        }.zeb-app .apv-close:hover, .zeb-app .apv-prev:hover, .zeb-app .apv-next:hover{ background: rgba(255,255,255,0.25) !important; }.zeb-app .apv-close{ top: 16px !important; right: 16px !important; width: 40px !important; height: 40px !important; }.zeb-app .apv-prev, .zeb-app .apv-next{ top: 50% !important; transform: translateY(-50%) !important; width: 48px !important; height: 48px !important; font-size: 28px !important; }.zeb-app .apv-prev{ left: 16px !important; }.zeb-app .apv-next{ right: 16px !important; }.zeb-app .apv-counter{
            position: absolute !important; bottom: 16px !important; left: 50% !important; transform: translateX(-50%) !important;
            color: white !important; font-size: 14px !important; background: rgba(0,0,0,0.5) !important;
            padding: 6px 14px !important; border-radius: 16px !important;
        }.zeb-app #acc-photos-grid div{
            cursor: zoom-in !important;
        }@media (max-width: 720px){
            .apv-image { top: 60px !important; right: 8px !important; bottom: 60px !important; left: 8px !important; }.zeb-app .apv-prev{ left: 6px !important; }.zeb-app .apv-next{ right: 6px !important; }
        }@media (max-width: 720px){
            .acc-gallery { grid-template-columns: 1fr !important; aspect-ratio: auto !important; }.zeb-app .acc-gallery-main{ aspect-ratio: 2 / 1 !important; }.zeb-app .acc-gallery-thumbs{ grid-template-columns: repeat(2, 1fr) !important; grid-template-rows: 1fr !important; }.zeb-app .acc-gallery-thumbs div{ aspect-ratio: 2 / 1 !important; }.zeb-app .acc-panel{
                width: 100vw !important; height: 100vh !important; max-height: 100vh !important;
                border-radius: 0 !important; margin: 0 !important;
            }.zeb-app #acc-lightbox:not([hidden]){ padding: 0 !important; }
        }
    
/* ---------- BergNomads-huisstijl over de Zoek & Boek van UwBoeking ---------- */
.zeb-app.bn-zb {
  --bg-color: transparent !important;
  --sidebar-bg: #ffffff !important;
  --primary-green: #146af5 !important;
  --text-dark: #0c1324 !important;
  --text-grey: #4b5571 !important;
  --border-color: #dde2ec !important;
  --acc-lightbox-bg: #ffffff !important;
  --zb-radius: 14px !important;
  --zb-radius-lg: 24px !important;
  background: transparent !important;
  padding: 0 !important;
  min-height: 0 !important;
}
.zeb-app.bn-zb, .zeb-app.bn-zb * { font-family: "DM Sans", system-ui, sans-serif !important; }
.zeb-app.bn-zb .card-title, .zeb-app.bn-zb .results-header h3, .zeb-app.bn-zb .acc-panel-content h2,
.zeb-app.bn-zb .price-value, .zeb-app.bn-zb .btn-search, .zeb-app.bn-zb .btn-card, .zeb-app.bn-zb .cal-month-title,
.zeb-app.bn-zb .availability-group-heading, .zeb-app.bn-zb .acc-tabs button {
  font-family: "Outfit", system-ui, sans-serif !important;
}
.zeb-app.bn-zb .container { max-width: none !important; gap: clamp(1.25rem, 2.5vw, 2rem) !important; }

/* zijbalk */
.zeb-app.bn-zb aside { border: 1px solid var(--border-color) !important; box-shadow: none !important; padding: 1.5rem !important; position: sticky !important; top: 110px !important; }
.zeb-app.bn-zb aside h2 { display: none !important; }
.zeb-app.bn-zb .date-range-field, .zeb-app.bn-zb select { background: #f2f4f8 !important; border: 1.5px solid #dde2ec !important; min-height: 52px !important; padding: 12px 14px !important; font-size: 15px !important; color: #0c1324 !important; }
.zeb-app.bn-zb .date-range-field:hover, .zeb-app.bn-zb .date-range-field.active { border-color: #146af5 !important; background: #fff !important; box-shadow: 0 0 0 4px rgba(20,106,245,.14) !important; }
.zeb-app.bn-zb .date-icon { color: #146af5 !important; }
.zeb-app.bn-zb .date-text { font-size: 14.5px !important; font-weight: 500 !important; }

/* knoppen: boeken = lime */
.zeb-app.bn-zb .btn-search, .zeb-app.bn-zb .btn-card {
  background: #d5f24a !important; color: #172003 !important; border-radius: 999px !important;
  min-height: 52px !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: -0.005em !important;
}
.zeb-app.bn-zb .btn-search:hover, .zeb-app.bn-zb .btn-card:hover { background: #c1e02a !important; }
.zeb-app.bn-zb .btn-search:disabled { opacity: .7 !important; }
.zeb-app.bn-zb #reset-btn { background: transparent !important; color: #0c1324 !important; border: 1.5px solid #c6cddc !important; min-height: 44px !important; font-size: 15px !important; }
.zeb-app.bn-zb #reset-btn:hover { border-color: #0c1324 !important; }

/* resultaten */
.zeb-app.bn-zb .results-header h3 { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem) !important; font-weight: 700 !important; letter-spacing: -0.02em !important; }
.zeb-app.bn-zb .sort-container select { min-height: 44px !important; border-radius: 999px !important; padding: 0 16px !important; }
.zeb-app.bn-zb .cards-grid { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important; gap: clamp(1rem, 2vw, 1.5rem) !important; }
.zeb-app.bn-zb .card { border: 1px solid var(--border-color) !important; box-shadow: none !important; transition: border-color .25s !important; }
.zeb-app.bn-zb .card:hover { transform: none !important; box-shadow: none !important; border-color: #146af5 !important; }
.zeb-app.bn-zb .card-title { order: 2 !important; font-size: 20px !important; font-weight: 700 !important; letter-spacing: -0.01em !important; padding: 18px 18px 4px !important; border: 0 !important; }
.zeb-app.bn-zb .card-image { order: 1 !important; height: auto !important; aspect-ratio: 4 / 3 !important; }
.zeb-app.bn-zb .card-body { order: 3 !important; padding: 8px 18px 18px !important; }
.zeb-app.bn-zb .guests { color: #4b5571 !important; }
.zeb-app.bn-zb .guests svg { color: #146af5 !important; }
.zeb-app.bn-zb .price-value { font-size: 24px !important; }
.zeb-app.bn-zb .card-loading { color: #146af5 !important; border-radius: 24px !important; }
.zeb-app.bn-zb .dates { color: #4b5571 !important; font-weight: 500 !important; }
.zeb-app.bn-zb .no-results { border: 1px solid var(--border-color) !important; box-shadow: none !important; }

/* kalender */
.zeb-app.bn-zb .cal-nav { color: #146af5 !important; }
.zeb-app.bn-zb .cal-nav:hover:not(:disabled) { background: #e6efff !important; }
.zeb-app.bn-zb .cal-day-inner { font-weight: 600 !important; }
.zeb-app.bn-zb .cal-day.past .cal-day-inner, .zeb-app.bn-zb .cal-day.disabled .cal-day-inner { color: #c3c9d6 !important; font-weight: 400 !important; }
.zeb-app.bn-zb .cal-day.in-range { background: #e6efff !important; }
.zeb-app.bn-zb .cal-day.range-start { background: linear-gradient(to right, transparent 50%, #e6efff 50%) !important; }
.zeb-app.bn-zb .cal-day.range-end { background: linear-gradient(to right, #e6efff 50%, transparent 50%) !important; }
.zeb-app.bn-zb .cal-day.range-start .cal-day-inner, .zeb-app.bn-zb .cal-day.range-end .cal-day-inner { background: #146af5 !important; color: #fff !important; }
.zeb-app.bn-zb .cal-day:not(.past):not(.empty):not(.range-start):not(.range-end):not(.disabled) .cal-day-inner:hover { background: #d5f24a !important; color: #172003 !important; }

/* detailvenster */
.zeb-app.bn-zb .acc-panel { border-radius: 24px !important; }
.zeb-app.bn-zb .acc-backdrop { background: rgba(5,9,20,.8) !important; }
.zeb-app.bn-zb .acc-panel-content a { color: #0d58d6 !important; font-weight: 600 !important; }
.zeb-app.bn-zb #acc-photos-grid div:hover { transform: none !important; }

@media (max-width: 900px) { .zeb-app.bn-zb aside { position: static !important; } }
@media (max-width: 720px) { .zeb-app.bn-zb aside { padding: 1.1rem !important; } .zeb-app.bn-zb .mobile-toggle { color: #146af5 !important; } }

/* kaarten: leesbare tekst */
.zeb-app.bn-zb .tags-container { padding: 0 !important; margin: 4px 0 0 !important; }
.zeb-app.bn-zb .short-text { font-size: 15px !important; line-height: 1.55 !important; color: #4b5571 !important; }
.zeb-app.bn-zb .guests { font-size: 15px !important; gap: 6px !important; }
.zeb-app.bn-zb .guests span { font-weight: 600 !important; }
.zeb-app.bn-zb .price-label { font-size: 12px !important; letter-spacing: .02em !important; }
.zeb-app.bn-zb .card-footer { margin-top: 14px !important; gap: 10px !important; }
.zeb-app.bn-zb .dates { font-size: 14px !important; }
.zeb-app.bn-zb .sidebar-footer { font-size: 12.5px !important; }
.zeb-app.bn-zb .sidebar-footer a { color: #0d58d6 !important; }

/* detailvenster: tabs en faciliteiten */
.zeb-app.bn-zb .acc-tabs button { font-size: 16px !important; }
.zeb-app.bn-zb .acc-tabs button.active, .zeb-app.bn-zb .acc-tabs button[aria-selected="true"] { color: #146af5 !important; border-color: #146af5 !important; }
.zeb-app.bn-zb #acc-description p { font-size: 16.5px !important; line-height: 1.65 !important; color: #2a3249 !important; margin: 0 0 .8em !important; }
.zeb-app.bn-zb #acc-facilities h3, .zeb-app.bn-zb #acc-facilities h4 { font-family: "Outfit", system-ui, sans-serif !important; font-size: 17px !important; color: #0c1324 !important; }
.zeb-app.bn-zb #acc-facilities li { font-size: 15.5px !important; color: #2a3249 !important; }
.zeb-app.bn-zb #acc-facilities .acc-cat-header { font-family: "Outfit", system-ui, sans-serif !important; font-size: 17px !important; font-weight: 700 !important; margin: 0 0 10px !important; }
.zeb-app.bn-zb #acc-facilities .acc-cat-group { margin-bottom: 22px !important; }
.zeb-app.bn-zb #acc-facilities ul { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important; gap: 8px !important; }
.zeb-app.bn-zb #acc-facilities li { background: #f2f4f8 !important; border-radius: 12px !important; padding: 10px 14px !important; line-height: 1.4 !important; }
@media (max-width: 560px) {
  .zeb-app.bn-zb .acc-tabs { gap: 0 !important; justify-content: space-between !important; overflow: visible !important; padding-left: 16px !important; padding-right: 16px !important; }
  .zeb-app.bn-zb .acc-tabs button { font-size: 15px !important; }
  .zeb-app.bn-zb .acc-panel-content { padding: 18px 16px 24px !important; }
}

/* reserveren: groot venster, module vol in beeld */
.zeb-app.bn-zb .acc-panel { width: min(1180px, calc(100vw - 32px)) !important; height: calc(100dvh - 32px) !important; max-height: none !important; }
.zeb-app.bn-zb .acc-panel.is-reserve .acc-gallery { display: none !important; }
.zeb-app.bn-zb .acc-panel.is-reserve .acc-tabs { padding-right: 72px !important; }
.zeb-app.bn-zb .acc-panel.is-reserve .acc-close { top: 8px !important; }
.zeb-app.bn-zb .acc-panel.is-reserve .acc-panel-content { padding: 0 !important; }
.zeb-app.bn-zb #acc-reserve iframe { min-height: 900px; }
@media (max-width: 640px) {
  .zeb-app.bn-zb .acc-panel { width: 100vw !important; height: 100dvh !important; border-radius: 0 !important; }
}

/* selects: zelfde blauwe chevron als het contactformulier */
.zeb-app.bn-zb select {
  -webkit-appearance: none !important; appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23146af5' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important; background-position: right 1rem center !important; background-size: 18px !important;
  padding-right: 2.75rem !important; cursor: pointer !important;
}
.zeb-app.bn-zb .sort-container select { padding: 0 2.75rem 0 18px !important; background-color: #fff !important; }

/* kalender: ronde maandknoppen zoals op home */
.zeb-app.bn-zb .cal-nav { width: 40px !important; height: 40px !important; padding: 0 !important; border-radius: 50% !important; background: #f2f4f8 !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border: 0 !important; }
.zeb-app.bn-zb .cal-nav svg { width: 18px !important; height: 18px !important; }
.zeb-app.bn-zb .cal-nav:disabled { opacity: .35 !important; }
