/*

    Theme Name:		 Brikk Child
    Theme URI:		 https://themeforest.net/item/brikk-directory-listing-wordpress-theme/29105129
    Description:	 Brikk Child is a child theme of Brikk
    Author:			 Utillz
    Author URI:		 https://themeforest.net/user/utillz
    Template:		 brikk
    Version:		 1.7.0.2
    Text Domain:	 brikk-child

*/

/*
 * add your custom styles here
 *
 */

/*
 * Spanish language switcher flag:
 * show a double-width ES/VE composite marker (same height, 2x width).
 */
.lang-item-es > a img {
	display: none !important;
}

.lang-item-es > a::before {
	content: "";
	display: inline-block;
	width: 32px;
	height: 11px;
	background: url("assets/img/flag-es-ve.svg") center center / contain no-repeat;
	vertical-align: middle;
}

/*
 * Footer legal links: keep Privacy/Cookie centered and visually detached
 * from the copy row across all active languages.
 */
.brk-footer .brk--bottom .brk--bottom-inner .brk-site-nav {
	flex: 0 0 100%;
	max-width: 100%;
	margin-top: 10px;
	text-align: center;
}

.brk-footer .brk--bottom .brk--bottom-inner .brk-nav-bottom .menu {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin: 0;
	padding: 0;
}

.brk-footer .brk--bottom .brk--bottom-inner .brk-nav-bottom .menu > li {
	margin: 0;
}

/*
 * Keep the dark translucent header bar always visible, even at scroll top.
 * Match sticky look without waiting for `brk-is-sticky`.
 */
body.brk-overlap-header.brk-dark-header .brk-header {
	background-color: rgba(0, 0, 0, 0.8) !important;
}

body.brk-overlap-header.brk-dark-header .brk-mobile-header {
	background-color: rgba(0, 0, 0, 0.8) !important;
}

/*
 * Listing sidebar CTA: keep the booking button inside card bounds.
 */
.routiz .rz-listing-action .rz-action-footer {
	overflow: hidden;
}

.routiz .rz-listing-action .rz-action-footer .rz-button.rz-large {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box;
}

/*
 * Single rating badge: tighten typography so text stays centered and legible.
 */
.routiz .rz-single-heading .rz-single-heading-rating .rz--rating {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 78px;
	height: 78px;
	padding: 7px 6px;
	gap: 2px;
}

.routiz .rz-single-heading .rz-single-heading-rating .rz--rating .rz-reviews-stat-num {
	margin: 0;
	font-size: 17px;
	line-height: 1;
}

.routiz .rz-single-heading .rz-single-heading-rating .rz--rating .rz-reviews-stat-num i {
	display: block;
	margin: 0 0 2px;
	font-size: 11px;
}

.routiz .rz-single-heading .rz-single-heading-rating .rz--rating .score-description {
	display: block;
	max-width: 66px;
	margin-top: 2px;
	font-size: 11px;
	line-height: 1.1;
	text-align: center;
	word-break: normal;
	overflow-wrap: anywhere;
}

/*
 * Explore search validation warnings (form + results page).
 */
.nearfor-search-warning,
.nearfor-explore-warning {
	margin: 0 0 14px;
	padding: 10px 12px;
	border-radius: 10px;
	background: rgba(230, 30, 77, 0.12);
	color: #7a0f2d;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
}

/*
 * Explore cards: keep city on the left and price on the right on the bottom row.
 */
.routiz .rz-listing-bottom ul.nearfor-listing-bottom-main {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin: 0;
	padding: 0;
}

.routiz .rz-listing-bottom ul.nearfor-listing-bottom-main li {
	margin: 0;
}

.routiz .rz-listing-bottom ul.nearfor-listing-bottom-main li.nearfor-city-left {
	color: #9a9a9a;
	font-weight: 500;
}

.routiz .rz-listing-bottom ul.nearfor-listing-bottom-main li.nearfor-price-right {
	margin-left: auto;
	text-align: right;
	color: var(--main);
	font-weight: 700;
}

.routiz .rz-listing-bottom ul.nearfor-listing-bottom-main li.nearfor-price-right span {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
}

.routiz .rz-listing-bottom ul.nearfor-listing-bottom-extra {
	margin: 4px -3px 0;
	padding: 0;
}

/*
 * Explore card image must always open the listing.
 * Keep slider arrows above the click area.
 */
.routiz .rz-listing-image .nearfor-listing-image-hit {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: block;
	text-indent: -9999px;
	overflow: hidden;
}

.routiz .rz-listing-image .rz-slider-nav,
.routiz .rz-listing-image .rz-listing-favorite {
	z-index: 4;
}

/*
 * OSM embed styling for listing location modules (content + sidebar).
 */
.routiz .nearfor-osm-embed-map {
	position: relative;
	overflow: hidden;
	background: #f2f2f2;
	border-radius: inherit;
}

.routiz .nearfor-osm-embed-map .nearfor-osm-embed-iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	background: #f2f2f2;
}

/*
 * Lightbox enlarged photo: keep nav controls fully inside viewport.
 */
.rz-modal-lightbox.brk-is-stack .rz-lightbox-nav {
	position: fixed !important;
	top: 50% !important;
	bottom: auto !important;
	transform: translateY(-50%);
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 15;
	padding: 0 !important;
	margin: 0 !important;
	text-align: center !important;
	text-decoration: none;
}

.rz-modal-lightbox.brk-is-stack .rz-lightbox-nav span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.rz-modal-lightbox.brk-is-stack .rz-lightbox-nav i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
}

.rz-modal-lightbox.brk-is-stack .rz-lightbox-nav[data-action='prev'] {
	left: 24px !important;
	left: max(24px, calc(env(safe-area-inset-left) + 12px)) !important;
	right: auto !important;
}

.rz-modal-lightbox.brk-is-stack .rz-lightbox-nav[data-action='next'] {
	right: 24px !important;
	right: max(24px, calc(env(safe-area-inset-right) + 12px)) !important;
	left: auto !important;
}

@media (max-width: 767.98px) {
	html,
	body {
		max-width: 100%;
		overflow-x: hidden;
	}

	.rz-modal-lightbox.brk-is-stack .rz-lightbox-nav[data-action='prev'] {
		left: 12px !important;
		left: max(12px, calc(env(safe-area-inset-left) + 8px)) !important;
	}

	.rz-modal-lightbox.brk-is-stack .rz-lightbox-nav[data-action='next'] {
		right: 12px !important;
		right: max(12px, calc(env(safe-area-inset-right) + 8px)) !important;
	}
}

.rz-modal-lightbox .rz-close {
	position: fixed !important;
	top: 14px !important;
	right: 14px !important;
	padding: 0 !important;
	margin: 0 !important;
	z-index: 20;
}

.rz-modal-lightbox .rz-close i {
	margin: 0 !important;
}

@media (max-width: 767.98px) {
	.rz-modal-lightbox .rz-close {
		top: 10px !important;
		top: max(10px, calc(env(safe-area-inset-top) + 6px)) !important;
		right: 10px !important;
		right: max(10px, calc(env(safe-area-inset-right) + 6px)) !important;
	}
}
