/*!/wp-content/themes/nouhotel-child/style.css*//**
* Theme Name: Nouhotel Child
* Description: This is a child theme of Nouhotel, generated by Merlin WP.
* Author: <a href="https://wpopal.com/">Opalthemes</a>
* Template: nouhotel
* Version: 1.0.4
*/
:root {
    --primary: #3F51B5;
    --primary_hover: #39489b;
    --secondary: #de1d3b;
    --text: #555555;
    --text_light: #999999;
    --accent: #000000;
    --light: #F6F6F6;
    --border: #E9E4DD;
    --highlight: #8FCB9B;
    --background: #FFFFFF;
    --background_light: #F9F6F0;
    --white: #ffffff;
    --e-global-typography-accent-font-family: "Trirong", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    --e-global-typography-heading_title-font-family: "Trirong", sans-serif;
    --container: 1200px;
    --gutter-width: 30px;
  }
  .widget .wp-block-group__inner-container > h2, .widget .widget-title, .widget .widgettitle,
  .single-room-side .form-book-title {
    color: var(--e-global-color-dc3dd60);
  }
  .single-room-side #booking_form_block {
    background-color: #fff;
    background-image: url("/wp-content/themes/nouhotel-child/assets/images/soft-wallpaper.png");
	padding: 40px 50px 45px;
  }

  div.elementor-widget-banner.style-theme-yes .elementor-icon:before {
   background-color: #e7e7e7;
 }


html {
    scroll-behavior: smooth;
}

/*slider fix */
#dl_slider_wrapper{
}

/* Changes font */
@font-face {
  src: url("/wp-content/themes/nouhotel-child/assets/fonts/new/Trirong-ExtraBold.ttf") format("truetype");
  font-family: "Trirong";
  font-weight: 800;
  font-style: normal;
 font-display:swap;}

/* Changes font */
@font-face {
  src: url("/wp-content/themes/nouhotel-child/assets/fonts/new/Montserrat-Regular.ttf") format("truetype");
  font-family: "Montserrat";
  font-weight: 400;
  font-style: normal;
 font-display:swap;}

/* Changes font */
@font-face {
  src: url("/wp-content/themes/nouhotel-child/assets/fonts/new/Montserrat-SemiBold.ttf") format("truetype");
  font-family: "Montserrat";
  font-weight: 600;
  font-style: normal;
 font-display:swap;}


/*-------------------------------------------------------------
1.1 Typography
--------------------------------------------------------------*/
.elementor-kit-24{--e-global-typography-heading_title-font-family:Trirong}
h1,h2,h3,h4,h5,h6{font-family:var(--e-global-typography-accent-font-family)!important}
h1,.alpha{font-size:clamp(28px,3vw,56px)}
h2,.beta{font-size:clamp(26px,3vw,46px)}
h3,.gamma{font-size:clamp(24px,3vw,38px)}
h4,.delta{font-size:clamp(22px,3vw,30px)}
h5,.omega{font-size:clamp(20px,3vw,24px)}
h6,.sigma{font-size:clamp(18px,3vw,20px)}


.nouhotel-mobile-nav .site-branding{margin:50px 40px 30px;max-width:60%}
.blog-list .post-content .entry-title{font-size:clamp(18px,3vw,20px)}
/* main menu */
.main-navigation ul.menu li.menu-item .sub-menu .menu-item.current-menu-item > a{ color: white;}

/* Frontpage hero title */
h1#slider-1-slide-1-layer-14 {
    font-size: clamp(28px, 6vw, 58px) !important;
}
/*decor*/
.dl_deco_title svg{ position: relative; left: 3px; top: 3px;}
#coupon_input_field{ background-color: white;  border: 1px solid #dbdbdb;}
.checkout-info h2, .checkout-wrapper .checkout-title{ font-size: 20px; color: #12130F; }


/* Frontpage highlight points title */
.elementor-link-showcase-title {
	font-size: clamp(18px, 3vw, 20px);
}

/* Card items title */
.babe_items .item_title {
  font-size: clamp(18px, 3vw, 20px);
}


/* DL - style price */
.widget-area .babe_items{ border: none; border-bottom: 1px solid #E9E4DD; }
.widget-area .babe_items:hover{  border: none; border-bottom: 1px solid #888; }
.widget-area .babe_items .item_title{
    font-size: 16px;
}
.widget-area .babe_items .item_info_price{
    color: #888888; text-shadow: none;font-size: 15px;
}
.widget-area .babe_items .item_info_price label{
    color: #999;
}
.babe_items .item_info_price {
    padding: 0;
    align-self: center;
    border: none;
    font-size: 21px;
    line-height: 1.2857142857;
    /* font-weight: 700; */
    color: white; 
    font-family: var(--e-global-typography-accent-font-family);
    text-shadow: 1px 2px 2px rgba(0, 0, 0, .3);
}
.babe_items .item_info_price label, .babe_items .item_info_price .item_info_price_old { color: white;}
.babe_items .item_discount_meta {
    margin-bottom: 6px;
    font-size: 13px;
    line-height: 1.4;
}
.babe_items .item_info_price_discount,
.single-room .single-room-header-top .item_info_price_discount {
    display: inline-block;
    margin-bottom: 4px;
    padding: 7px 15px;
    background-color: #DE1D3B;
    color: #fff;
    font-weight: 700;
    line-height: 1.2;
}
.babe_items .item_discount_meta .item_info_discount_expired,
.single-room .single-room-header-top .item_discount_meta .item_info_discount_expired {
    font-size: 12px;
    opacity: 0.9;
}
.single-room .single-room-header-top .item_discount_meta {
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.4;
}
.babe_all_items_item_inner .item_bottom{ padding: 10px; position: absolute; top: 5px; right: 0; }
.babe_items{ 
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border: 1px solid var(--border);
}
.babe_items:hover{ border: 1px solid #888888; }
.babe_items_1 .item_text,
.babe_items_1:hover .item_text{ border: none; }


/* DL - single object preview */
.single-room .single-room-section .single-secticon-title{ font-size: 1.5rem; }
div.single-room-main.clear div.single-room-section.single-room-description  h2{ font-size: 1.6rem; }

.single-room.single-room-2 .nouhotel-single-slideshow .booking_single_thumbnails .swiper-slide{
	overflow: hidden;
}
.nouhotel-single-slideshow .swiper-slide img{
	object-fit: cover; width: 100%; max-width: initial; height: 100%;
}
/* breadcrumbs */
.breadcrumb-wrap{ background-color: #f4f4f4; }




/* Frontpage highlights */
.elementor-link-showcase-title span:before {
	top: 18px;
}

/* Added arrows on datepicker */
.ui-datepicker-next span,  .ui-datepicker-prev  span {
        color: #fff;
        border: solid black;
        border-width: 0 2px 2px 0;
        border-radius: 0;
        display: inline-block !important;
        padding: 3px;
        width: 5px;
        height: 5px;
        margin-top: 0 !important;
        margin-left: 0 !important;    
}

.ui-datepicker-next span {
        transform: translate(-50%, -50%) rotate(-45deg);
        -webkit-transform: translate(-50%, -50%) rotate(-45deg);    
}

.ui-datepicker-prev span {
        transform: translate(-50%, -50%) rotate(135deg);
        -webkit-transform: translate(-50%, -50%) rotate(135deg);
}
/* Calendar style fix */
.cal-month-block .cal-cell.cal-cell-disabled{ background-color: #ffd4d4;}
.cal-month-block .cal-cell.cal-cell-active.cal-cell-selected {
    background-color: #81C953;
}
div.cal-cell-start-day:hover,
div.cal-cell.cal-cell-disabled-first:hover
{ background-color: #d5d5d5;}
.cal-month-block .cal-cell.cal-cell-disabled{ cursor:disabled; pointer-events: none;}

.cal-month-block .cal-cell.cal-cell-disabled-first:not(.cal-cell-selected):not(:hover) {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 100'%3E%3Cpath d='M0 100h100V0' stroke='%23ffd4d4' fill='%23ffd4d4' stroke-width='1'/%3E%3C/svg%3E") no-repeat center center / 100% 100% !important;
}

.cal-month-block .cal-cell.cal-cell-disabled-last:not(.cal-cell-selected):not(:hover) {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 100'%3E%3Cpath d='M0 0h100L0 100z' stroke='%23ffd4d4' fill='%23ffd4d4'/%3E%3C/svg%3E") no-repeat center center / 100% 100% !important;
}

/* Single room styles */
.single-room.single-room-2 .booking_single_thumbnails__wrapper {
    margin: 0;
    width: 160px;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    display: block;
}

/* Arrows on single room slider */
.single-room.single-room-2 .swiper-button-next {
    transform: translateX(-50%) rotate(-270deg);
    left: 50%;
    top: auto;
    bottom: 0;
    width: 10%;
    color: inherit;
}

.single-room.single-room-2 .swiper-button-next::after, .single-room.single-room-2 .swiper-button-prev::after {
    font-size: 20px;
    font-weight: bold;
	color: white;
}

/* Arrows on single room slider */
.single-room.single-room-2 .swiper-button-prev {
	transform: translateX(-50%) rotate(-270deg);
    left: 50%;
    top: 20px;
    width: 10%;
    color: inherit;
}

/* Linear gradient on single room slider */
.single-room .booking_single_thumbnails::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: linear-gradient(0deg, rgba(253, 187, 45, 0) 0%, rgba(0, 0, 0, .7) 100%);
    z-index: 98;
}

/* Linear gradient on single room slider */
.single-room .booking_single_thumbnails::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: linear-gradient(0deg, rgba(0,0,0,.7) 0%, rgba(253,187,45,0) 100%);
    z-index: 98;
}

/* Booking form contact style */
.single-room .booking_form_book {
    text-align: center;
    margin: 25px auto 0;
    color: var(--accent);
}

.single-room .booking_form_contact {
    text-align: center;
    color: var(--primary);
    font-weight: bold;
    letter-spacing: 0.25px;
    font-size: 16px;
    display: block;
    margin: 0 auto;
    opacity: 1;
    transition: all 150ms ease-in-out;
}

.single-room .booking_form_contact:hover{
    opacity: 0.8;
}

/* Booking form guests input style */
.booking-form-block input {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.5714285714;
    width: 100%;
    padding: 14px 15px;
    color: var(--text_light);
    background-color: #fff;
}

/* Booking form guests label style */
.booking-form-block.booking-guests-block .label {
    display: block;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.8333333333;
    letter-spacing: 2px;
    margin-bottom: 9px;
    text-transform: uppercase;
    color: var(--accent);
}

.single-room .booking_single_thumbnails .swiper-slide:before {
    background-color: rgba(0, 0, 0, 0.2);
}

.date_format input{
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2857142857;
    padding: 12px 20px;
    -webkit-appearance: none;
    box-sizing: border-box;
    outline: 0;
    color: var(--text);
    transition: all ease-in-out .3s;
    background-color: #f7f7f7;
    resize: none;
    width: 100%;
    color: var(--text);
    border: none;
    border-radius: 0;
    background-color: var(--light);
    margin: 13px 0 20px;
}
.ct-form .search_date_wrapper input.search_date{
    position: absolute;
    left: 0;
    bottom: 0;
    opacity: 1;
}
.ct-form #search_form .field-group-inner .with-icons{
    padding-bottom: 3rem;
}

/* Single room features style */
.single-room .single-item-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 12px 0 4px;
}

/* Single room features style */
.single-room .single-item-meta .item-features {
	margin-bottom: 8px;
}

/* Single room slider */
.single-room .swiper-slide {
	max-height: 700px;
}

/* Single room map */
.single-room-map {
	padding-bottom: 20px;
}

/* Single room features*/
.single-room-features {
    display: flex;
    align-content: center;
    gap: 60px;
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid var(--border);
}

.single-room-features_group {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.single-room-features_group_icon {
    max-width: 24px;
    max-height: 24px;
    margin-bottom: 5px;
}

.single-room-features_group_icon--size {
    max-width: 22px;
    max-height: 22px;
	margin-bottom: 7px;
}

.single-room-features_group_icon svg {
    width: 100%;
    height: 100%;
    display: block;
}

.single-room-features_group_icon svg g {
    fill: var(--primary);
}

.single-room-features_group_text {
    font-size: 14px;
    text-transform: uppercase;
    font-family: var(--e-global-typography-accent-font-family);
	margin-bottom: 5px;
}

.single-room-features_group_num {
    font-size: 18px;
    font-weight: bold;
	color: black;
    font-family: var(--e-global-typography-accent-font-family);
}

/* Old price on single room */
.single-room .single-room-header-top .item_info_price .item_info_price_old {
        text-decoration: line-through;
    color: var(--text_light);
}
/* General price on single room calendar */
.single-room-calendar .view-rate-details .rate_price_general{display: none;}

/* Header list */
header .wpml-ls.wpml-ls-legacy-list-horizontal li {margin-bottom: 0;}
/* Header logo */
header .hfe-site-logo-img{margin-top: -7%;}

/* thank you page */
.babe_message_order.babe_message_order_status_av_confirmation{
	margin-bottom: 40px;
    background-color: #dfdfdf;
    color: #393939;
    border: none;
}
.order-total-subtotal{ padding: 25px; }
.order-details-table .order-total-subtotal .order_items_total .label{ width: 75%; }
.order-details-table .order-total-subtotal .order_items_total .amount{ width: 25%; }

/* Booking form on single page */
#booking_form_block .input_groups{ width: 100%; }
#booking_form_block .input_groups .submit_group{ width: 100%; }
#booking_form_block .booking-date{ background-color: white; width: 100%; }
.submit_group + p {
    display: none;
}
#booking_form_block input[type="submit"]{
	display: block;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 17px 20px;
	color: #ffffff;
	background-color: var(--primary);
	border: 1px solid var(--primary);
}
.submit_group input[type="submit"]:before, .submit_group input[type="submit"]:after {
	background-color: var(--primary);
}
.submit_group input[type="submit"]:before {
	content: "";
	position: absolute;
	bottom: -4px;
	left: -1px;
	display: block;
	width: calc(100% + 2px);
	height: 1px;
	background-color: var(--accent);
	transform: scaleX(0);
	transform-origin: 0 0;
	-webkit-transition: 0.3s cubic-bezier(0.48, 0.05, 0.5, 0.94);
	-o-transition: 0.3s cubic-bezier(0.47, 0.05, 0.5, 0.94);
	transition: 0.3s cubic-bezier(0.47, 0.05, 0.5, 0.94);
}
.submit_group input[type="submit"]:after {
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
	-webkit-transform-origin: 100% 0;
	-ms-transform-origin: 100% 0;
	transform-origin: 100% 0;
	-webkit-transition: 0.3s cubic-bezier(0.48, 0.05, 0.5, 0.94) 0.2s;
	-o-transition: 0.3s cubic-bezier(0.47, 0.05, 0.5, 0.94) 0.2s;
	transition: 0.3s cubic-bezier(0.47, 0.05, 0.5, 0.94) 0.2s;
}

/* book/order page - step */
.checkout-wrapper .order_items_row_total,
.checkout-wrapper .order_items_row_total_amount,
.checkout-wrapper .order_items_row_total_label,
#checkout_form .amount_group,
#checkout_form .payment_group,
#checkout_form .checkout-title,
#checkout_form h2{ display: none; }

.terms_group .checkout_form_terms_details h1,
.terms_group .checkout_form_terms_details h5{ font-size: 16px; }



@media (max-width: 1025px) {
	/* Header logo */
	header .hfe-site-logo-img{max-width: 320px; margin: -14px auto 0;}
    header .elementor-widget-site-logo{margin: auto;}
}

@media (max-width: 600px) {
	/* home slider */
    .elementor-widget-slider_revolution{min-height:358px}

    /* Single room mobile styles */
	.single #page .site-content{margin-top:40px}
    .single-room .single-room-header-top .entry-title{font-size:26px}
    .single-room .single-room-header-top .item_info_price{font-size:20px}
    .single-room .single-room-section .single-secticon-title{font-size:22px}
    .single-room .single-room-header-top{flex-direction:column;align-items:flex-start}
    .single-room.single-room-2 .nouhotel-single-slideshow .booking_single_gallery{width:100%}
    .single-room.single-room-2 .nouhotel-single-slideshow .booking_single_thumbnails{display:none}
    .single-room.single-room-2 .swiper-button-prev,.single-room.single-room-2 .swiper-button-next{display:none}
	.single-room-features{gap:15px}
    .single-room-features_group_num {font-size: 16px;}
	
	/* Frontpage slider dots */
	.home .tp-bullets{display:none!important}
	
	/* Frontpage highlights */
	.elementor-link-showcase-title span:before{top:50%}

	/* Header logo */
	header .hfe-site-logo-img{max-width: 260px;}
	header .hfe-site-logo-img{transform: translateX(-15px);}
	
	/* Footer logo */
	footer .hfe-site-logo-img {max-width: 270px !important;}
}

@media (max-width: 480px) {
	/* Header logo */
	header .hfe-site-logo-img{max-width: 200px; margin-top: -8px;}
}