		/* Before/After Image Comparison Slider */
		.ba-slider {
		    position: relative;
		    overflow: hidden;
		    width: 100%;
		    cursor: col-resize;
		    -webkit-user-select: none;
		    -moz-user-select: none;
		    -ms-user-select: none;
		    user-select: none;
		    /* Vertikales Scrollen der Seite erlauben; Slider nur bei horizontaler Geste */
		    touch-action: pan-y;
		}

		.ba-slider img {
		    display: block;
		    width: 100%;
		    height: auto;
		    pointer-events: none;
		}

		.ba-slider .ba-after {
		    position: absolute;
		    top: 0;
		    left: 0;
		    width: 100%;
		    height: 100%;
		    overflow: hidden;
		}

		.ba-slider .ba-after img {
		    position: absolute;
		    top: 0;
		    left: 0;
		    width: 100%;
		    height: 100%;
		    object-fit: cover;
		}

		.ba-slider .ba-handle {
		    position: absolute;
		    top: 0;
		    left: 50%;
		    width: 4px;
		    height: 100%;
		    background: #fff;
		    z-index: 3;
		    transform: translateX(-50%);
		    box-shadow: 0 0 8px rgba(0, 0, 0, 0.4);
		}

		.ba-slider .ba-handle::before,
		.ba-slider .ba-handle::after {
		    content: '';
		    position: absolute;
		    left: 50%;
		    transform: translateX(-50%);
		    width: 0;
		    height: 0;
		}

		.ba-slider .ba-handle::before {
		    top: 50%;
		    margin-top: -25px;
		    border: 12px solid transparent;
		    border-right: 12px solid #fff;
		    margin-left: -14px;
		}

		.ba-slider .ba-handle::after {
		    top: 50%;
		    margin-top: -25px;
		    border: 12px solid transparent;
		    border-left: 12px solid #fff;
		    margin-left: 10px;
		}

		.ba-slider .ba-handle .ba-circle {
		    position: absolute;
		    top: 50%;
		    left: 50%;
		    transform: translate(-50%, -50%);
		    width: 44px;
		    height: 44px;
		    border-radius: 50%;
		    background: #fff;
		    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
		    display: flex;
		    align-items: center;
		    justify-content: center;
		    z-index: 4;
		}

		.ba-slider .ba-circle svg {
		    width: 22px;
		    height: 22px;
		    fill: #333;
		}

		.ba-slider .ba-label {
		    position: absolute;
		    top: 12px;
		    padding: 4px 14px;
		    background: rgba(0, 0, 0, 0.55);
		    color: #fff;
		    font-size: 13px;
		    font-weight: 600;
		    text-transform: uppercase;
		    letter-spacing: 1px;
		    border-radius: 3px;
		    z-index: 2;
		    pointer-events: none;
		}

		.ba-slider .ba-label-before {
		    left: 12px;
		}

		.ba-slider .ba-label-after {
		    right: 12px;
		}

		.ba-slider .ba-after {
		    width: 50%;
		}

		#hb-gallery {
		    padding-top: 80px;
		    clear: both;
		}

		.hb-gallery-area {
		    display: flex;
		    flex-wrap: wrap;
		    justify-content: center;
		    gap: 20px;
		    padding: 0 30px 80px;
		    max-width: 1400px;
		    margin: 0 auto;
		    float: none;
		    clear: both;
		}

		.hb-gallery-area .ba-slider {
		    flex: 0 0 calc(33.333% - 14px);
		    max-width: calc(33.333% - 14px);
		    border-radius: 6px;
		}

		@media (max-width: 991px) {
		    .hb-gallery-area .ba-slider {
		        flex: 0 0 calc(50% - 10px);
		        max-width: calc(50% - 10px);
		    }
		}

		@media (max-width: 575px) {
		    .hb-gallery-area .ba-slider {
		        flex: 0 0 100%;
		        max-width: 100%;
		    }

		    .hb-gallery-area {
		        padding: 0 15px 48px;
		    }
		}