/* Override theme: show all profile lines (Age, Job, Knanaya Jacobite) - theme uses max-height:46px + overflow:hidden on h4 */
			.products-list .product-grid .product-item-container .right-block h4.profile-details-block {
				max-height: none !important;
				overflow: visible !important;
				min-height: auto;
			}

			.profile-details-block .profile-detail-line {
				display: block !important;
				color: #333 !important;
				line-height: 1.4;
				margin-bottom: 2px;
				visibility: visible !important;
				opacity: 1 !important;
			}

			.profile-details-block .profile-denomination {
				font-weight: 600;
				color: #1a1a2c;
			}

			/* Product filter top: list-view (grid view) buttons on the right */
			.products-category .product-filter.product-filter-top.filters-panel {
				display: flex;
				justify-content: flex-end;
				align-items: center;
			}

			.products-category .product-filter.product-filter-top.filters-panel.search-filter-top--with-gender {
				justify-content: space-between;
				flex-wrap: wrap;
				gap: 12px;
			}

			.profession-gender-filters {
				display: flex;
				align-items: center;
				flex-wrap: wrap;
				gap: 8px;
			}

			.profession-gender-label {
				font-weight: 600;
				color: #333;
				margin-right: 4px;
			}

			.products-category .product-filter.product-filter-top .list-view {
				display: flex;
				align-items: center;
				gap: 8px;
			}

			.products-category .product-filter.product-filter-top .list-view .btn-view {
				margin-left: 2px;
				margin-right: 2px;
			}

			/* Footer full width: break out to viewport so no left/right white space */
			.product-category .footer-container {
				width: 100%;
				max-width: 100%;
				margin-left: 0;
				margin-right: 0;
				box-sizing: border-box;
			}

			html,
			body {
				overflow-x: hidden;
			}

			/* Search result card: fixed-size main photo so div doesn't change on hover */
			.products-list .product-item-container .left-block .product-image-container {
				width: 100%;
				height: 280px;
				overflow: hidden;
				flex-shrink: 0;
			}

			.products-list .product-item-container .left-block .product-image-container a {
				display: block;
				width: 100%;
				height: 100%;
			}

			.products-list .product-item-container .left-block .product-image-container .search-result-main-img,
			.products-list .product-item-container .left-block .product-image-container img.img-responsive {
				width: 100% !important;
				height: 100% !important;
				object-fit: cover;
				object-position: center top;
			}

			/* Search result card: fixed-size thumb images (all 3 same height and width) */
			.products-list .product-item-container .left-block .product-card__gallery .item-img {
				width: 60px;
				height: 60px;
				min-width: 60px;
				min-height: 60px;
				overflow: hidden;
				flex-shrink: 0;
			}

			.products-list .product-item-container .left-block .product-card__gallery .item-img img {
				width: 100% !important;
				height: 100% !important;
				object-fit: cover;
				object-position: center top;
			}

			/* Photo lightbox modal */
			.photo-lightbox-modal {
				display: none;
				position: fixed;
				inset: 0;
				z-index: 9999;
				align-items: center;
				justify-content: center;
				padding: 20px;
				box-sizing: border-box;
			}

			.photo-lightbox-modal.photo-lightbox-open {
				display: flex;
			}

			.photo-lightbox-overlay {
				position: absolute;
				inset: 0;
				background: rgba(0, 0, 0, 0.85);
				cursor: pointer;
			}

			.photo-lightbox-content {
				position: relative;
				z-index: 1;
				max-width: 90vw;
				max-height: 90vh;
				display: flex;
				align-items: center;
				justify-content: center;
				flex-wrap: wrap;
			}

			.photo-lightbox-img {
				max-width: 85vw;
				max-height: 80vh;
				width: auto;
				height: auto;
				object-fit: contain;
				display: block;
			}

			.photo-lightbox-close,
			.photo-lightbox-prev,
			.photo-lightbox-next {
				position: absolute;
				border: none;
				background: rgba(255, 255, 255, 0.9);
				color: #1a1a2c;
				width: 48px;
				height: 48px;
				border-radius: 50%;
				font-size: 28px;
				line-height: 1;
				cursor: pointer;
				display: flex;
				align-items: center;
				justify-content: center;
				transition: background 0.2s, color 0.2s;
				padding: 0;
			}

			.photo-lightbox-close:hover,
			.photo-lightbox-prev:hover,
			.photo-lightbox-next:hover {
				background: #f93355;
				color: #fff;
			}

			.photo-lightbox-close {
				top: -56px;
				right: 0;
				font-size: 36px;
			}

			.photo-lightbox-prev {
				left: 10px;
				top: 50%;
				transform: translateY(-50%);
			}

			.photo-lightbox-next {
				right: 10px;
				top: 50%;
				transform: translateY(-50%);
			}

			.photo-lightbox-caption {
				width: 100%;
				text-align: center;
				color: #fff;
				margin-top: 12px;
				font-size: 15px;
			}

			@media (max-width: 768px) {
				.photo-lightbox-prev {
					left: 10px;
				}

				.photo-lightbox-next {
					right: 10px;
				}

				.photo-lightbox-close {
					top: 10px;
					right: 10px;
				}
			}