/*
 Theme Name:   Soho Hotel Child
 Description:  Soho Hotel Child Theme
 Author:       quitenicestuff
 Author URI:   http://quitenicestuff.com
 Template:     soho-hotel
 Version:      4.0.7
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         one-column, two-columns, left-sidebar, right-sidebar, custom-colors
 Text Domain:  soho-hotel-child
*/

/* =============================================================================
   NHATRANG PALACE - CUSTOM STYLES
   ============================================================================= */

/* -----------------------------------------------------------------------------
   Hide "More News" Section
   ----------------------------------------------------------------------------- */
/* Hide the More News section on all pages */
.sohohotel-more-news-wrapper {
    display: none !important;
}
/* Override fullscreen slider height from 100vh to 56vh */
.sohohotel-slider-fullscreen,
.sohohotel-slider-fullscreen .slides,
.sohohotel-slider-fullscreen .slides li,
.sohohotel-slider-fullscreen .flex-active-slide {
    height: 64vh !important;
    max-height: 64vh !important;
}

/* Ensure slider images scale properly */
.sohohotel-slider-fullscreen .sohohotel-slide-image {
    height: 64vh !important;
}

/* Adjust overlay positioning */
.sohohotel-slider-overlay {
    height: 64vh !important;
}

/* -----------------------------------------------------------------------------
   Palace Club Suite Table Styling
   ----------------------------------------------------------------------------- */
.room-features-table td i, .shb-accommodation-listing-description li i {
    font-size: 16px !important;
    width: 20px;
}

.shb-accommodation-listing-description li {
	margin-bottom: 10px !important;
}

/* -----------------------------------------------------------------------------
   Custom Overrides
   ----------------------------------------------------------------------------- */
/* Add your custom CSS here - Avoid !important when possible */

/* -----------------------------------------------------------------------------
   TranslatePress Language Switcher - Match soho-hotel theme styling
   ----------------------------------------------------------------------------- */

/* Override TranslatePress default styling to match soho-hotel navigation */
.sohohotel-header .sohohotel-top-right-navigation.translatepress-switcher {
	float: left;
	border-left: #dedede 1px solid;
}

/* Style TranslatePress language switcher to look like original dropdown */
.sohohotel-header .translatepress-switcher .trp-language-switcher {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sohohotel-header .translatepress-switcher .trp-language-switcher li {
	position: relative;
	font-size: 14px;
	display: inline-block;
}

.sohohotel-header .translatepress-switcher .trp-language-switcher li a {
	padding: 15px 20px 15px 20px;
	display: block;
	color: inherit;
	text-decoration: none;
}

.sohohotel-header .translatepress-switcher .trp-language-switcher li a:hover {
	color: #8a8989;
}

/* Add chevron down icon to current language */
.sohohotel-header .translatepress-switcher .trp-language-switcher li:first-child a:after {
	content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 12.5px;
	margin-left: 5px;
}

/* Dropdown styling */
.sohohotel-header .translatepress-switcher .trp-language-switcher ul {
	display: none;
}

.sohohotel-header .translatepress-switcher .trp-language-switcher li:hover ul {
	display: block;
	position: absolute; 
	top: 100%;
	z-index: 9999;
	background: #fff;
	-moz-box-shadow: 0 5px 10px 1px rgba(0, 0, 0, 0.09);
	-webkit-box-shadow: 0 5px 10px 1px rgba(0, 0, 0, 0.09);
	box-shadow: 0 5px 10px 1px rgba(0, 0, 0, 0.1);
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	width: 100%;
	border-top: #dedede 1px solid;
	min-width: 150px;
}

.sohohotel-header .translatepress-switcher .trp-language-switcher li li a:hover {
	background: #b99470;
	color: #fff;
}

/* Alternative approach - if TranslatePress uses different markup */
.sohohotel-header .translatepress-switcher .trp-ls-shortcode-language {
	position: relative;
	font-size: 14px;
	display: inline-block;
	list-style: none;
}

.sohohotel-header .translatepress-switcher .trp-ls-shortcode-current-language {
	padding: 15px 20px 15px 20px;
	display: block;
	color: inherit;
	text-decoration: none;
}

.sohohotel-header .translatepress-switcher .trp-ls-shortcode-current-language:after {
	content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 12.5px;
	margin-left: 5px;
}

/* TOP BAR STYLING */
/* .sohohotel-topbar .translatepress-switcher styling can be added here if needed */

.vc_images_carousel .vc_carousel-inner .vc_carousel-slideline .vc_carousel-slideline-inner>.vc_item a>img, .vc_images_carousel .vc_carousel-inner .vc_carousel-slideline .vc_carousel-slideline-inner>.vc_item img {
	width: 100%;
}

.sohohotel-blog-single-wrapper .sohohotel-blog-block h3.shb-blog-single-title {
	margin: 80px auto 50px auto;
	text-transform: uppercase;
}

/* -----------------------------------------------------------------------------
   Google Maps InfoWindow - Hide Close Button (X)
   ----------------------------------------------------------------------------- */
/* Hide the close button (X) on Google Maps InfoWindow */
.gm-ui-hover-effect,
button[title="Close"],
button[aria-label="Close"],
.gm-style-iw-d button {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
}

/* Alternative selectors for Google Maps InfoWindow close button */
.gm-style .gm-style-iw-c button,
.gm-style .gm-style-iw-d button,
div[role="button"][aria-label*="Close"],
div[role="button"][title*="Close"] {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
}

/* -----------------------------------------------------------------------------
   Icon Text Section - Fix layout for multilingual content
   ----------------------------------------------------------------------------- */
/* Fix layout issues when content is longer (Vietnamese/Russian) */
.sohohotel-icon-text-wrapper-1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	clear: both;
	align-items: stretch;
	gap: 0;
}

.sohohotel-icon-text-wrapper-1::after {
	content: "";
	width: calc(50% - 22.5px);
}

.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block {
	width: calc(50% - 22.5px);
	margin-bottom: 60px;
	display: flex;
	align-items: flex-start;
	box-sizing: border-box;
}

/* Remove float from all items */
.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:nth-child(1n),
.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:nth-child(2n),
.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:nth-child(3n),
.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:nth-child(4n) {
	float: none;
}

/* Ensure items in same row have same height */
.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:nth-child(odd) {
	margin-right: 45px;
}

.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block .sohohotel-icon {
	position: relative;
	float: none;
	flex-shrink: 0;
	width: 70px;
	margin-right: 20px;
	align-self: flex-start;
}

.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block .sohohotel-icon i {
	display: block;
	line-height: 1;
}

.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block .sohohotel-text {
	float: none;
	width: calc(100% - 90px);
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block .sohohotel-text h4 {
	margin-top: 0;
}

.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block .sohohotel-text p {
	margin: 0;
	word-wrap: break-word;
	overflow-wrap: break-word;
	hyphens: auto;
	flex: 1;
}

/* Ensure consistent spacing between items */
.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:last-child,
.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:nth-last-child(2) {
	margin-bottom: 0;
}

/* Responsive adjustments */
@media only screen and (max-width: 800px) {
	.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block {
		width: 100%;
		margin-right: 0 !important;
		margin-bottom: 40px;
	}
	
	.sohohotel-icon-text-wrapper-1 .sohohotel-icon-text-block:last-child {
		margin-bottom: 0;
	}
	
	.sohohotel-icon-text-wrapper-1::after {
		display: none;
	}
}

/* -----------------------------------------------------------------------------
   Booking Policies Accordion
   ----------------------------------------------------------------------------- */
.nhatrang-booking-policies-wrapper {
	margin: 60px 0 0 0;
	padding: 0;
	clear: both;
}

.nhatrang-booking-policies-accordion {
	max-width: 100%;
	margin: 0 auto;
}

.nhatrang-policy-item {
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	margin-bottom: 15px;
	background: #fff;
	overflow: hidden;
	transition: all 0.3s ease;
}

.nhatrang-policy-item:hover {
	border-color: #b99470;
}

.nhatrang-policy-item.open {
	border-color: #b99470;
}

.nhatrang-policy-header {
	width: 100%;
	padding: 20px 25px;
	background: #f8f8f8;
	border: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-align: left;
	transition: background 0.3s ease;
	font-size: 18px;
	font-weight: 600;
	color: #333;
}

.nhatrang-policy-header:hover {
	background: #f0f0f0;
}

.nhatrang-policy-item.open .nhatrang-policy-header {
	background: #b99470;
	color: #fff;
}

.nhatrang-policy-title {
	flex: 1;
}

.nhatrang-policy-icon {
	margin-left: 15px;
	transition: transform 0.3s ease;
}

.nhatrang-policy-item.open .nhatrang-policy-icon {
	transform: rotate(180deg);
}

.nhatrang-policy-icon i {
	font-size: 14px;
	color: #b99470;
	transition: color 0.3s ease;
}

.nhatrang-policy-item.open .nhatrang-policy-icon i {
	color: #fff;
}

.nhatrang-policy-content {
	padding: 0;
	background: #fff;
	overflow: hidden;
	transition: all 0.3s ease;
}

.nhatrang-policy-content-inner {
	padding: 25px;
	color: #656a70;
	line-height: 1.8;
	font-size: 15px;
}

.nhatrang-policy-content-inner p {
	margin: 0 0 15px 0;
}

.nhatrang-policy-content-inner p:last-child {
	margin-bottom: 0;
}

.nhatrang-policy-content-inner ul,
.nhatrang-policy-content-inner ol {
	margin: 15px 0;
	padding-left: 25px;
}

.nhatrang-policy-content-inner li {
	margin-bottom: 10px;
}

/* Responsive */
@media only screen and (max-width: 768px) {
	.nhatrang-policy-header {
		padding: 15px 20px;
		font-size: 16px;
	}
	
	.nhatrang-policy-content-inner {
		padding: 20px;
		font-size: 14px;
	}
}