
        /* Before/After Slider Styles */
        .before-after-slider {
            position: relative;
            width: 100%;
            overflow: hidden;
            border-radius: 8px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        }

        .slider-container {
            position: relative;
            width: 100%;
            padding-bottom: 75%;
            overflow: hidden;
            cursor: ew-resize;
            user-select: none;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
            touch-action: none;
        }

        .before-image,
        .after-image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

        .before-image img,
        .after-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .after-image {
            clip-path: inset(0 0 0 50%);
            will-change: clip-path;
        }

        .slider-handle {
            position: absolute;
            top: 0;
            left: 50%;
            width: 4px;
            height: 100%;
            transform: translateX(-50%);
            z-index: 10;
            pointer-events: none;
            will-change: left;
        }

        .slider-line {
            position: absolute;
            top: 0;
            left: 50%;
            width: 2px;
            height: 100%;
            background: white;
            transform: translateX(-50%);
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
        }

        .slider-button {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 48px;
            height: 48px;
            background: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
            color: #333;
        }

        .slider-button svg {
            width: 24px;
            height: 24px;
        }

        .slider-label {
            position: absolute;
            top: 20px;
            padding: 8px 16px;
            background: rgba(0, 0, 0, 0.7);
            color: white;
            font-weight: bold;
            font-size: 14px;
            letter-spacing: 1px;
            border-radius: 4px;
            z-index: 5;
        }

        .before-label { left: 20px; }
        .after-label { right: 20px; }
        .hidden { display: none !important; }

        @media (max-width: 768px) {
            .slider-button { width: 40px; height: 40px; }
            .slider-button svg { width: 20px; height: 20px; }
            .slider-label { font-size: 12px; padding: 6px 12px; top: 10px; }
            .before-label { left: 10px; }
            .after-label { right: 10px; }
        }
  /* Image Gallery Styles */
        .image-gallery {
            margin-top: 20px;
        }
        .gallery-thumbnails {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
        }
        .gallery-thumb {
            width: 80px;
            height: 80px;
            object-fit: cover;
            cursor: pointer;
            border: 3px solid transparent;
            border-radius: 4px;
            transition: all 0.3s ease;
        }
        .gallery-thumb:hover {
            border-color: #0d6efd;
            transform: scale(1.05);
        }
        .gallery-thumb.active {
            border-color: #0d6efd;
        }
        @media (max-width: 768px) {
            .gallery-thumb { width: 60px; height: 60px; }
        }
  /* Portfolio Grid - Fixed Size Images */
        .project_grid .card-img-top {
            width: 100%;
            height: 400px;
            object-fit: cover;
            object-position: center;
        }
        
        .project_grid .card {
            height: 100%;
            display: flex;
            flex-direction: column;
        }
        
        .project_grid .card-body {
            margin-top: auto;
        }
        
        /* Ensure 3 columns on desktop */
        @media (min-width: 768px) {
            .project_grid .col-md-4 {
                flex: 0 0 33.333333%;
                max-width: 33.333333%;
            }
        }
        
        /* 2 columns on tablet */
        @media (min-width: 576px) and (max-width: 767px) {
            .project_grid .col-md-4 {
                flex: 0 0 50%;
                max-width: 50%;
            }
            
            .project_grid .card-img-top {
                height: 350px;
            }
        }
        
        /* 1 column on mobile */
        @media (max-width: 575px) {
            .project_grid .col-md-4 {
                flex: 0 0 100%;
                max-width: 100%;
            }
            
            .project_grid .card-img-top {
                height: 300px;
            }
        }
     /* Force portfolio images to be correct size */
        .project_grid .card-img-top.ratio_0,
        .project_grid .card-img-top {
            height: 400px !important;
            width: 100% !important;
            object-fit: cover !important;
            padding-bottom: 0 !important;
        }
    /* Image Caption */
        .image-caption {
            margin-top: 15px;
        }
        .image-caption p {
            margin: 0;
            font-size: 18px;
            
            color: #000;
        }
  /* Portfolio Grid - Fixed Size Images */
.project_grid .card-img-top {
    width: 100%;
    height: 400px;
    object-fit: cover;
    object-position: center;
}

.project_grid .card {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.project_grid .card-body {
    margin-top: auto;
}

/* Ensure 3 columns on desktop */
@media (min-width: 768px) {
    .project_grid .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
}

/* 2 columns on tablet */
@media (min-width: 576px) and (max-width: 767px) {
    .project_grid .col-md-4 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    
    .project_grid .card-img-top {
        height: 350px;
    }
}

/* 2x2 grid on mobile with SQUARE images */
@media (max-width: 575px) {
    .project_grid .col-md-4 {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
    
    .project_grid .card-img-top,
    .project_grid .card-img-top.ratio_0 {
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        width: 100% !important;
        object-fit: cover !important;
        padding-bottom: 0 !important;
    }
}

/* Force portfolio images to be correct size (desktop/tablet) */
@media (min-width: 576px) {
    .project_grid .card-img-top.ratio_0,
    .project_grid .card-img-top {
        height: 400px !important;
        width: 100% !important;
        object-fit: cover !important;
        padding-bottom: 0 !important;
    }
}
    