.hp-section__title::before{
	background-color: #fff !important;
}
.hp-page__title::before, .hp-section__title::before{
	background-color: #fff !important;
}
.hp-listings.hp-grid,
.hp-listings.hp-grid > .hp-row,
.hp-listings.hp-grid > .hp-row > .hp-grid__item {
	box-sizing: border-box !important;
}

/* Replace HivePress / Bootstrap grid with controlled Flex layout */
.hp-listings.hp-grid > .hp-row {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
	align-content: flex-start !important;
	justify-content: flex-start !important;

	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;

	box-sizing: border-box !important;
}

/* Remove Bootstrap clearfix elements from listing grids */
.hp-listings.hp-grid > .hp-row::before,
.hp-listings.hp-grid > .hp-row::after {
	display: none !important;
	content: none !important;
}

/* Reset all default HivePress listing columns */
.hp-listings.hp-grid > .hp-row > .hp-grid__item,
.hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
	display: block !important;
	float: none !important;

	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	box-sizing: border-box !important;
}


/* =========================================================
   2. DESKTOP GRID — HOMEPAGE
   5 cards in a complete row.
   Last row cards automatically stretch equally to full width.
   ========================================================= */

@media (min-width: 1200px) {

	/* Homepage listing rows */
	body.home .hp-listings.hp-grid > .hp-row,
	body.front-page .hp-listings.hp-grid > .hp-row,
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row {
		gap: 18px !important;
	}

	/* Homepage cards */
	body.home .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body.home .hp-listings.hp-grid > .hp-row > [class*="hp-col"],
	body.front-page .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body.front-page .hp-listings.hp-grid > .hp-row > [class*="hp-col"],
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		/*
		   5 cards fit in one full row.
		   If only 3 cards remain in second row,
		   all 3 expand equally across full available width.
		*/
		flex: 1 1 calc((100% - 72px) / 5) !important;
		min-width: 0 !important;
		max-width: none !important;
	}
}


/* =========================================================
   3. DESKTOP GRID — CATEGORY / BROWSE / SEARCH PAGES
   3 cards in a complete row.
   Last row fills full results area.
   ========================================================= */

@media (min-width: 1200px) {

	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row {
		gap: 18px !important;
	}

	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		/*
		   Category page:
		   3 cards = full row
		   2 cards = both expand equally
		   1 card = full result area
		*/
		flex: 1 1 calc((100% - 36px) / 3) !important;
		min-width: 0 !important;
		max-width: none !important;
	}
}


/* =========================================================
   4. LAPTOP GRID
   Homepage = 4 cards
   Other listing pages = 3 cards
   ========================================================= */

@media (min-width: 980px) and (max-width: 1199px) {

	.hp-listings.hp-grid > .hp-row {
		gap: 16px !important;
	}

	/* Homepage: 4 cards */
	body.home .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body.home .hp-listings.hp-grid > .hp-row > [class*="hp-col"],
	body.front-page .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body.front-page .hp-listings.hp-grid > .hp-row > [class*="hp-col"],
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		flex: 1 1 calc((100% - 48px) / 4) !important;
		min-width: 0 !important;
	}

	/* Category / browse / search: 3 cards */
	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		flex: 1 1 calc((100% - 32px) / 3) !important;
		min-width: 0 !important;
	}
}


/* =========================================================
   5. TABLET GRID — 3 CARDS
   ========================================================= */

@media (min-width: 787px) and (max-width: 979px) {

	.hp-listings.hp-grid > .hp-row {
		gap: 14px !important;
	}

	.hp-listings.hp-grid > .hp-row > .hp-grid__item,
	.hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		flex: 1 1 calc((100% - 28px) / 3) !important;
		min-width: 0 !important;
	}
}


/* =========================================================
   6. LISTING CARD BOX
   ========================================================= */

.hp-listings.hp-grid .hp-listing--view-block {
	position: relative !important;

	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden !important;
	background: #f7f7f8 !important;
	border: 1px solid #ececf0 !important;
	border-radius: 14px !important;
	box-shadow: 0 1px 3px rgba(21, 29, 27, 0.05) !important;

	box-sizing: border-box !important;
}


/* =========================================================
   7. PRODUCT IMAGE
   ========================================================= */

.hp-listings.hp-grid .hp-listing--view-block .hp-listing__image {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 !important;

	overflow: hidden !important;
	background: #f1f0ef !important;
	border-radius: 13px 13px 0 0 !important;

	aspect-ratio: 235 / 352 !important;
	box-sizing: border-box !important;
}

.hp-listings.hp-grid .hp-listing--view-block .hp-listing__image img {
	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;

	object-fit: cover !important;
}


/* =========================================================
   8. CARD CONTENT
   Price → Title → Location
   ========================================================= */

.hp-listing--view-block .hp-listing__content {
	display: flex !important;
	flex-direction: column !important;

	min-height: 106px !important;
	margin: 0 !important;
	padding: 12px 14px 14px !important;

	background: #ffffff !important;
	text-align: left !important;
	box-sizing: border-box !important;
}

/* Make nested HivePress blocks behave like direct card fields */
.hp-listing--view-block .hp-listing__header,
.hp-listing--view-block .hp-listing__attributes,
.hp-listing--view-block .hp-listing__attributes--primary,
.hp-listing--view-block .hp-listing__attributes--secondary,
.hp-listing--view-block .hp-listing__attributes .hp-row,
.hp-listing--view-block .hp-listing__attributes .hp-col,
.hp-listing--view-block .hp-listing__attributes .hp-col-lg-6,
.hp-listing--view-block .hp-listing__attributes .hp-col-md-6,
.hp-listing--view-block .hp-listing__attributes .hp-col-sm-6 {
	display: contents !important;
}


/* =========================================================
   9. HIDE UNNECESSARY CARD CONTENT
   ========================================================= */

.hp-listing--view-block .hp-listing__attribute {
	display: none !important;
}

.hp-listing--view-block .hp-listing__categories,
.hp-listing--view-block .hp-listing__date,
.hp-listing--view-block .hp-listing__rating,
.hp-listing--view-block .hp-listing__ratings,
.hp-listing--view-block .hp-rating,
.hp-listing--view-block .hp-listing__attribute--rating {
	display: none !important;
}


/* =========================================================
   10. PRICE
   ========================================================= */

.hp-listing--view-block .hp-listing__attribute--item-price {
	display: block !important;
	order: 1 !important;

	margin: 0 0 4px !important;
	padding: 0 !important;

	color: #151d1b !important;
	font-size: 19px !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.3px !important;
}

/* Hide duplicate price from original HivePress footer */
.hp-listing--view-block .hp-listing__attribute--price {
	display: none !important;
}


/* =========================================================
   11. PRODUCT TITLE
   ========================================================= */

.hp-listing--view-block .hp-listing__title {
	display: block !important;
	order: 2 !important;

	margin: 0 0 6px !important;
	padding: 0 !important;

	color: #242a35 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
}

.hp-listing--view-block .hp-listing__title a {
	display: -webkit-box !important;
	overflow: hidden !important;

	color: inherit !important;
	text-decoration: none !important;

	-webkit-line-clamp: 1 !important;
	-webkit-box-orient: vertical !important;
}

.hp-listing--view-block .hp-listing__title a:hover {
	color: #6d3cc8 !important;
}


/* =========================================================
   12. LOCATION
   ========================================================= */

.hp-listing--view-block .hp-listing__attribute--location,
.hp-listing--view-block .hp-listing__attribute--city,
.hp-listing--view-block .hp-listing__attribute--municipality,
.hp-listing--view-block .hp-listing__attribute--listing-location,
.hp-listing--view-block .hp-listing__attribute[class*="location"],
.hp-listing--view-block .hp-listing__attribute[class*="municipality"],
.hp-listing--view-block .hp-listing__attribute[class*="city"] {
	display: flex !important;
	align-items: center !important;
	order: 3 !important;

	gap: 6px !important;
	margin: 0 !important;
	padding: 0 !important;

	color: #737b88 !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
}

/* Hide default location icon */
.hp-listing--view-block .hp-listing__attribute--location .hp-icon,
.hp-listing--view-block .hp-listing__attribute--city .hp-icon,
.hp-listing--view-block .hp-listing__attribute--municipality .hp-icon,
.hp-listing--view-block .hp-listing__attribute--listing-location .hp-icon,
.hp-listing--view-block .hp-listing__attribute[class*="location"] .hp-icon,
.hp-listing--view-block .hp-listing__attribute[class*="municipality"] .hp-icon,
.hp-listing--view-block .hp-listing__attribute[class*="city"] .hp-icon {
	display: none !important;
}

/* Add clean location pin */
.hp-listing--view-block .hp-listing__attribute--location::before,
.hp-listing--view-block .hp-listing__attribute--city::before,
.hp-listing--view-block .hp-listing__attribute--municipality::before,
.hp-listing--view-block .hp-listing__attribute--listing-location::before,
.hp-listing--view-block .hp-listing__attribute[class*="location"]::before,
.hp-listing--view-block .hp-listing__attribute[class*="municipality"]::before,
.hp-listing--view-block .hp-listing__attribute[class*="city"]::before {
	content: "" !important;

	display: inline-block !important;
	width: 14px !important;
	height: 14px !important;
	flex: 0 0 14px !important;

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23737b88' d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: contain !important;
}


/* =========================================================
   13. FAVORITE BUTTON
   ========================================================= */

/* Keep card footer functional only for favorite action */
.hp-listing--view-block .hp-listing__footer {
	display: block !important;
	position: static !important;

	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;

	overflow: visible !important;
	background: transparent !important;
	border: 0 !important;
}

/* Hide old footer price / text */
.hp-listing--view-block .hp-listing__footer .hp-listing__attributes,
.hp-listing--view-block .hp-listing__footer .hp-listing__attributes--primary,
.hp-listing--view-block .hp-listing__footer .hp-listing__attributes--secondary {
	display: none !important;
}

/* Keep favorite action accessible */
.hp-listing--view-block .hp-listing__footer .hp-row,
.hp-listing--view-block .hp-listing__footer .hp-col,
.hp-listing--view-block .hp-listing__footer .hp-listing__actions,
.hp-listing--view-block .hp-listing__footer .hp-listing__actions--primary {
	display: contents !important;
}

/* Hide every action other than favorite */
.hp-listing--view-block .hp-listing__action:not(.hp-listing__action--favorite) {
	display: none !important;
}

/* Hide duplicate favorite output if present */
.hp-listing--view-block .hp-listing__action--favorite ~ .hp-listing__action--favorite {
	display: none !important;
}

/* Favorite button design */
.hp-listing--view-block .hp-listing__action--favorite,
.hp-listing--view-block .tic-native-favorite,
.hp-listing--view-block .tic-card-favorite {
	position: absolute !important;
	top: 11px !important;
	right: 11px !important;
	z-index: 99 !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden !important;
	background: rgba(255, 255, 255, 0.97) !important;
	border: 1px solid #e7e8ec !important;
	border-radius: 50% !important;
	box-shadow: 0 2px 9px rgba(20, 25, 35, 0.14) !important;

	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	text-decoration: none !important;
	cursor: pointer !important;
}

/* Hide native icons/text */
.hp-listing--view-block .hp-listing__action--favorite > *,
.hp-listing--view-block .tic-native-favorite > *,
.hp-listing--view-block .tic-card-favorite > * {
	display: none !important;
}

/* Default dark outline heart */
.hp-listing--view-block .hp-listing__action--favorite::before,
.hp-listing--view-block .tic-native-favorite::before,
.hp-listing--view-block .tic-card-favorite::before {
	content: "" !important;

	display: block !important;
	width: 19px !important;
	height: 19px !important;
	flex: 0 0 19px !important;

	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z' fill='none' stroke='%2317243a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: contain !important;

	-webkit-mask: none !important;
	mask: none !important;
}

/* Saved favorite = purple filled heart */
.hp-listing--view-block .hp-listing__action--favorite[title="Remove from Favorites"]::before,
.hp-listing--view-block .tic-native-favorite[title="Remove from Favorites"]::before,
.hp-listing--view-block .tic-card-favorite[title="Remove from Favorites"]::before,
.hp-listing--view-block .hp-listing__action--favorite.hp-listing__action--favorite--active::before,
.hp-listing--view-block .hp-listing__action--favorite.is-active::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%236d3cc8' d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z'/%3E%3C/svg%3E") !important;
}

/* Favorite hover */
.hp-listing--view-block .hp-listing__action--favorite:hover,
.hp-listing--view-block .tic-native-favorite:hover,
.hp-listing--view-block .tic-card-favorite:hover {
	background: #ffffff !important;
	border-color: #cbb4ee !important;
}

/* Unsaved favorite hover */
.hp-listing--view-block .hp-listing__action--favorite:hover::before,
.hp-listing--view-block .tic-native-favorite:hover::before,
.hp-listing--view-block .tic-card-favorite:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z' fill='none' stroke='%236d3cc8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* Saved favorite remains purple while hovering */
.hp-listing--view-block .hp-listing__action--favorite[title="Remove from Favorites"]:hover::before,
.hp-listing--view-block .tic-native-favorite[title="Remove from Favorites"]:hover::before,
.hp-listing--view-block .tic-card-favorite[title="Remove from Favorites"]:hover::before,
.hp-listing--view-block .hp-listing__action--favorite.hp-listing__action--favorite--active:hover::before,
.hp-listing--view-block .hp-listing__action--favorite.is-active:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%236d3cc8' d='M12 21.35 10.55 20.03C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35Z'/%3E%3C/svg%3E") !important;
}


/* =========================================================
   14. MOBILE — 2 CLEAN COLUMNS
   Mobile final single card remains half-width,
   so mobile layout stays balanced.
   ========================================================= */

@media (max-width: 786px) {

	.hp-listings.hp-grid > .hp-row {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 10px !important;

		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.hp-listings.hp-grid > .hp-row > .hp-grid__item,
	.hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		flex: 0 0 calc((100% - 10px) / 2) !important;

		width: calc((100% - 10px) / 2) !important;
		min-width: 0 !important;
		max-width: calc((100% - 10px) / 2) !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	.hp-listings.hp-grid .hp-listing--view-block {
		width: 100% !important;
		max-width: 100% !important;
		border-radius: 11px !important;
	}

	.hp-listings.hp-grid .hp-listing--view-block .hp-listing__image {
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 2 / 3 !important;
		border-radius: 10px 10px 0 0 !important;
	}

	.hp-listings.hp-grid .hp-listing--view-block .hp-listing__image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}

	.hp-listing--view-block .hp-listing__content {
		min-height: 94px !important;
		padding: 10px 11px 12px !important;
	}

	.hp-listing--view-block .hp-listing__attribute--item-price {
		font-size: 16px !important;
	}

	.hp-listing--view-block .hp-listing__title {
		font-size: 13px !important;
	}

	.hp-listing--view-block .hp-listing__attribute--location,
	.hp-listing--view-block .hp-listing__attribute--city,
	.hp-listing--view-block .hp-listing__attribute--municipality,
	.hp-listing--view-block .hp-listing__attribute--listing-location,
	.hp-listing--view-block .hp-listing__attribute[class*="location"],
	.hp-listing--view-block .hp-listing__attribute[class*="municipality"],
	.hp-listing--view-block .hp-listing__attribute[class*="city"] {
		gap: 5px !important;
		font-size: 12px !important;
	}

	.hp-listing--view-block .hp-listing__action--favorite,
	.hp-listing--view-block .tic-native-favorite,
	.hp-listing--view-block .tic-card-favorite {
		top: 8px !important;
		right: 8px !important;
		width: 33px !important;
		height: 33px !important;
	}

	.hp-listing--view-block .hp-listing__action--favorite::before,
	.hp-listing--view-block .tic-native-favorite::before,
	.hp-listing--view-block .tic-card-favorite::before {
		width: 16px !important;
		height: 16px !important;
		flex-basis: 16px !important;
	}
}






/* =========================================================
   FINAL GRID FIX — LAST ROW SHOULD NOT STRETCH
   Homepage: 5 fixed columns
   Category/Search pages: 3 fixed columns
   ========================================================= */


/* ---------------------------------------------------------
   HOMEPAGE — 5 equal fixed columns
   If last row has 1, 2, 3, or 4 cards:
   cards stay normal size and remaining space stays empty
   --------------------------------------------------------- */
@media (min-width: 1200px) {

	body.home .hp-listings.hp-grid > .hp-row,
	body.front-page .hp-listings.hp-grid > .hp-row,
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row {
		display: grid !important;
		grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
		grid-auto-flow: row !important;

		column-gap: 18px !important;
		row-gap: 24px !important;

		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;

		align-items: start !important;
		justify-content: start !important;
		justify-items: stretch !important;
	}

	body.home .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body.home .hp-listings.hp-grid > .hp-row > [class*="hp-col"],
	body.front-page .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body.front-page .hp-listings.hp-grid > .hp-row > [class*="hp-col"],
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	.elementor-element-855e99d .hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		display: block !important;
		float: none !important;

		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
		flex: none !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	/* Cards fill their assigned column only */
	body.home .hp-listings.hp-grid .hp-listing--view-block,
	body.front-page .hp-listings.hp-grid .hp-listing--view-block,
	.elementor-element-855e99d .hp-listing--view-block {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
	}
}


/* ---------------------------------------------------------
   BROWSE / CATEGORY / SEARCH PAGES — 3 fixed columns
   1 or 2 remaining listings stay left; blank space remains right
   --------------------------------------------------------- */
@media (min-width: 1200px) {

	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		grid-auto-flow: row !important;

		column-gap: 18px !important;
		row-gap: 24px !important;

		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;

		align-items: start !important;
		justify-content: start !important;
		justify-items: stretch !important;
	}

	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row > .hp-grid__item,
	body:not(.home):not(.front-page) .hp-listings.hp-grid > .hp-row > [class*="hp-col"] {
		display: block !important;
		float: none !important;

		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
		flex: none !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	body:not(.home):not(.front-page) .hp-listings.hp-grid .hp-listing--view-block {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
	}
}


/* Keep image ratio correct after grid reset */
@media (min-width: 787px) {

	.hp-listings.hp-grid .hp-listing--view-block .hp-listing__image {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		aspect-ratio: 235 / 352 !important;
	}

	.hp-listings.hp-grid .hp-listing--view-block .hp-listing__image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}
}





















/* =========================================================
   TRENDINCYCLE — BROWSE LISTINGS FINAL RESPONSIVE GRID
   Exact HTML classes based styling
   Desktop: 5 products
   Laptop: 4 products
   Tablet: 3 products
   Mobile: 2 products
   ========================================================= */


/* ---------------------------------------------------------
   BROWSE LISTING MAIN AREA
   Homepage jaisi centered width
   --------------------------------------------------------- */

body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid {
	width: calc(100% - 40px) !important;
	max-width: 1450px !important;

	margin: 32px auto 55px !important;
	padding: 0 !important;

	box-sizing: border-box !important;
}


/* Remove HivePress row default spacing */
body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid > .hp-row {
	width: 100% !important;
	max-width: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	box-sizing: border-box !important;
}


/* Remove Bootstrap clearfix */
body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid > .hp-row::before,

body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid > .hp-row::after {
	display: none !important;
	content: none !important;
}


/* Reset exact product column classes */
body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid > .hp-row >
.hp-grid__item.hp-col-sm-12.hp-col-xs-12 {
	display: block !important;
	float: none !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	flex: none !important;
	box-sizing: border-box !important;
}


/* Product card fills its grid column */
body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid
.hp-listing.hp-listing--view-block {
	display: flex !important;
	flex-direction: column !important;

	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;

	margin: 0 !important;
}


/* Keep homepage-style portrait product images */
body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid
.hp-listing__image {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;

	aspect-ratio: 2 / 3 !important;

	margin: 0 !important;
	overflow: hidden !important;
}


body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid
.hp-listing__image > a {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}


body:not(.home):not(.front-page)
.page__text > .hp-listings.hp-block.hp-grid
.hp-listing__image img {
	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;

	object-fit: cover !important;
	object-position: center !important;
}


/* =========================================================
   LARGE DESKTOP — 5 PRODUCTS PER ROW
   ========================================================= */

@media (min-width: 1200px) {

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid > .hp-row {
		display: grid !important;

		grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
		grid-auto-flow: row !important;

		column-gap: 18px !important;
		row-gap: 24px !important;

		align-items: stretch !important;
		justify-content: start !important;
	}

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid > .hp-row >
	.hp-grid__item.hp-col-sm-12.hp-col-xs-12 {
		grid-column: auto !important;
		width: 100% !important;
	}
}


/* =========================================================
   LAPTOP — 4 PRODUCTS PER ROW
   ========================================================= */

@media (min-width: 980px) and (max-width: 1199px) {

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid {
		width: calc(100% - 32px) !important;
	}

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid > .hp-row {
		display: grid !important;

		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;

		column-gap: 16px !important;
		row-gap: 22px !important;

		align-items: stretch !important;
	}
}


/* =========================================================
   TABLET — 3 PRODUCTS PER ROW
   ========================================================= */

@media (min-width: 787px) and (max-width: 979px) {

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid {
		width: calc(100% - 28px) !important;
		margin-top: 24px !important;
	}

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid > .hp-row {
		display: grid !important;

		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

		column-gap: 14px !important;
		row-gap: 20px !important;

		align-items: stretch !important;
	}
}


/* =========================================================
   MOBILE — 2 PRODUCTS PER ROW
   ========================================================= */

@media (max-width: 786px) {

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid {
		width: calc(100% - 20px) !important;
		max-width: none !important;

		margin: 18px auto 35px !important;
	}

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid > .hp-row {
		display: grid !important;

		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

		column-gap: 10px !important;
		row-gap: 16px !important;

		align-items: stretch !important;
	}

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid > .hp-row >
	.hp-grid__item.hp-col-sm-12.hp-col-xs-12 {
		display: block !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
	}

	body:not(.home):not(.front-page)
	.page__text > .hp-listings.hp-block.hp-grid
	.hp-listing__image {
		aspect-ratio: 2 / 3 !important;
	}
}





/* =========================================
   ALBANIAN ACTIVE FAVOURITE — EXACT FIX
   ========================================= */

/* Active state mein custom outline SVG hide karo */
html[lang^="sq"] .hp-listing__action--favorite[data-state="active"]::before,
html[lang^="sq"] .hp-listing__action--favorite.tic-favorite-active::before {
    content: none !important;
    display: none !important;
    background-image: none !important;
}

/* Actual Font Awesome filled heart show karo */
html[lang^="sq"] .hp-listing__action--favorite[data-state="active"] > i,
html[lang^="sq"] .hp-listing__action--favorite.tic-favorite-active > i {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;

    align-items: center !important;
    justify-content: center !important;

    font-family: "Font Awesome 5 Free" !important;
    font-style: normal !important;
    font-weight: 900 !important;
    font-size: 19px !important;
    line-height: 1 !important;

    color: #6D3CC8 !important;
}

/* Filled heart glyph */
html[lang^="sq"] .hp-listing__action--favorite[data-state="active"] > i::before,
html[lang^="sq"] .hp-listing__action--favorite.tic-favorite-active > i::before {
    content: "\f004" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    color: #6D3CC8 !important;
}






