/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
/* Hero includes the space behind the navigation. */
.niwas-page-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	/* min-height: 412px; */
	padding: 150px 24px 22px;
	overflow: hidden;
	isolation: isolate;

	background-image: url("/wp-content/uploads/2025/03/NPS-Hotel-Niwas-Home-Slider-Banner-1496x824-1.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.niwas-page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(0, 0, 0, 0.5);
}

.niwas-page-hero__inner {
	width: 100%;
	max-width: 1140px;
	margin-inline: auto;
}

body.archive .niwas-page-hero .niwas-page-hero__title,
body.wp-singular .niwas-page-hero .niwas-page-hero__title {
	margin: 0;
	color: #fff;
	font-size: 44px;
	font-weight: 400;
	line-height: 1.15;
}

body.archive .niwas-page-hero .niwas-page-hero__subtitle,
body.wp-singular .niwas-page-hero .niwas-page-hero__subtitle {
	margin: 10px 0 0;
	color: #fff;
	font-size: 18px;
	line-height: 1;
}

body .room-container:has(.hotel-booking-rooms-search) {
	margin-top: 40px;
	margin-bottom: 40px;
}

/*
 * Place the global Elementor header over the hero on hotel-room pages.
 */
body.single-hb_room .elementor-location-header,
body.single-hb_room .elementor-location-header,
body.page-template-page-hotel-cart .elementor-location-header,
body.page-template .elementor-location-header,
body.post-type-archive-hb_room .elementor-location-header,
body.tax-hb_room_type .elementor-location-header,
body.tax-hb_room_capacity .elementor-location-header,
body.wp-hotel-booking-cart .elementor-location-header {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
}

body.admin-bar.single-hb_room .elementor-location-header,
body.admin-bar.post-type-archive-hb_room .elementor-location-header,
body.admin-bar.page-template-page-hotel-cart .elementor-location-header,
body.admin-bar.page-template .elementor-location-header,
body.admin-bar.tax-hb_room_type .elementor-location-header,
body.admin-bar.tax-hb_room_capacity .elementor-location-header,
body.admin-bar.wp-hotel-booking-cart .elementor-location-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar.single-hb_room .elementor-location-header,
	body.admin-bar.post-type-archive-hb_room .elementor-location-header,
	body.page-template-page-hotel-cart .elementor-location-header,
	body.page-template .elementor-location-header,
	body.admin-bar.tax-hb_room_type .elementor-location-header,
	body.admin-bar.tax-hb_room_capacity .elementor-location-header,
	body.admin-bar.wp-hotel-booking-cart .elementor-location-header {
		top: 46px;
	}
}

@media (max-width: 1200px) {
    body.wp-hotel-booking-page {
        padding-left: 0;
    	padding-right: 0;
    }
}

.hb_room-template-default {
	--hb-primary: var(--e-global-color-primary);
	--e-global-color-secondary: #252525CC;
    --e-global-color-text: #252525E5;
    --e-global-color-accent: #5CD941;
}

.room-container {
	--hb-primary: var(--e-global-color-primary);
	--e-global-color-secondary: #252525CC;
    --e-global-color-text: #252525E5;
    --e-global-color-accent: #5CD941;
}

body div {
	--hb-primary: var(--e-global-color-primary);
	--e-global-color-secondary: #252525CC;
    --e-global-color-text: #252525E5;
    --e-global-color-accent: #5CD941;
}

.flatpickr-calendar .flatpickr-months .flatpickr-month {
	height: 40px;
}

.flatpickr-calendar .flatpickr-months .flatpickr-month .numInputWrapper {
	margin-left: 0.5rem;
}

.flatpickr-calendar .flatpickr-months .flatpickr-month .numInputWrapper .numInput {
    padding: 5px 10px 5px 10px;
}

body.wp-hotel-booking-page .hb_single_room, body.wp-hotel-booking-page .room-container {
	margin-top: 40px;
	margin-bottom: 40px;
	padding: 10px;
}

body.single-hb_room.wp-hotel-booking-page .hb-search-results-form-container .hb-booking-room-form-group a {
	color: var(--e-global-color-primary);
}

body.wp-hotel-booking-page h1 {
    font-size: 2.25rem;
}

/*
 * Cart page content beneath the shared hero.
 */
.niwas-cart-page .niwas-booking-content {
	padding: 20px 24px;
	background: #fff;
}

.niwas-cart-page .niwas-booking-content__inner {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	margin-top: 40px;
	margin-bottom: 40px;
}

.niwas-booking-content .niwas-booking-content__inner .alignwide {
	margin-inline: auto;
}

/*
 * Prevent paragraphs automatically generated around a shortcode
 * from adding unwanted spacing.
 */
.niwas-cart-page .niwas-booking-content__inner > p:empty {
	display: none;
}

.niwas-cart-page #hotel-booking-cart {
	width: 100%;
	margin: 0;
}

/*
 * Cart columns.
 */
.niwas-cart-page .hb-cart-wrapper {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
	gap: 40px;
	align-items: start;
}

.niwas-cart-page .hb-cart-items-column,
.niwas-cart-page .hb-cart-total-box {
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 12px;
}

.niwas-cart-page .hb-cart-items-column {
	overflow-x: auto;
}

.niwas-cart-page .hb-cart-total-box {
	padding: 28px;
}

/*
 * Keep the order summary visible while scrolling a long cart.
 */
@media (min-width: 901px) {
	.niwas-cart-page .hb-cart-total-column {
		position: sticky;
		top: 30px;
	}
}

@media (max-width: 900px) {
	.niwas-cart-page .niwas-booking-content {
		padding: 15px 18px;
	}

	.niwas-cart-page .hb-cart-wrapper {
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name, table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
	color: #000000;
}

.woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-link {
	color: #c36;
}

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
	background-color: var(--e-global-color-primary);
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
}

body main {
    flex-grow: 1;
}

.niwas-booking-content .woocommerce-info a {
	color: var(--e-global-color-primary);
}

.niwas-booking-content .woocommerce-error a {
	color: var(--wc-red);
}

:where(.woocommerce .woocommerce-input-wrapper) .select2-container .selection .select2-selection--single .select2-selection__rendered {
	padding-top: 0;
	padding-bottom: 0;
}

body:not([class*="elementor-page-"]) .site-main {
	width: 100%;
	max-width: none;
	margin-right: 0;
	margin-left: 0;
}