/* 
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 */
body,html{
	overflow-x: hidden!important;
}

.playfair{
	font-family: 'Playfair Display'!important;
	font-style: italic!important;
}
.gallery-carousel .elementor-widget-image a {
	width: 100% !important;
}
/* .testimonials .elementor-swiper-button-prev{
    left: 40%!important;
    top: 120%!important
}
.testimonials .elementor-swiper-button-next{
    left: 60%!important;
    top: 120%!important
} */
.testimonials-new-new.elementor-widget-reviews.elementor-review--has-separator .elementor-testimonial__header {
    border-block-end: 0;
}
.testimonials-new .swiper-slide {
    border-radius: 16px!important;
}

.testimonials-new .elementor-main-swiper{
/*     width: 100%!important; */
}
.testimonials-new .elementor-main-swiper.swiper.swiper-initialized.swiper-horizontal.swiper-pointer-events {
    padding: 0 10px 10px;
}
/* Reviews widget stars fallback */
.testimonials-new.elementor-widget-reviews .elementor-star-rating i {
  font-style: normal;
  font-family: inherit !important;
  color: transparent;           /* hide the bad glyph */
  position: relative;
}
.testimonials-new.elementor-widget-reviews .elementor-star-rating i::before {
  content: "★";
  color: #f7b500;               /* star color */
}
.testimonials-new.elementor-widget-reviews .elementor-star-rating .elementor-star-empty::before {
  content: "☆";
}
/* .testimonials .swiper-wrapper {
    place-items: self-start!important;
} */

/* testimonials text height elipsis */
/* Scope: Reviews widget */
.testimonials-new {
  --lines: 5;   /* 5 lines */
  --lh: 1.5;    /* line-height */
}

/* Multi-line ellipsis (5 lines) + fixed height */
.testimonials-new .elementor-testimonial__text{
  margin: 0;
  line-height: var(--lh);
  height: calc(var(--lines) * var(--lh) * 1em);  /* correct height */
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--lines);
  white-space: normal;
  text-overflow: ellipsis;
  word-break: break-word;
}
/* testimonials text height elipsis end*/

.glass-bg{
/* From https://css.glass */
background: rgba(255, 255, 255, 0.51);
border-radius: 16px;
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
backdrop-filter: blur(14.2px);
-webkit-backdrop-filter: blur(14.2px);
}
.glass-bg-1{
background: rgba(255, 255, 255, 0.14);
border-radius: 16px;
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
backdrop-filter: blur(11px);
-webkit-backdrop-filter: blur(11px);
}
.glass-header{
background: rgba(255, 255, 255, 0.72);
backdrop-filter: blur(10.7px);
-webkit-backdrop-filter: blur(10.7px);
}
.client-image .elementor-image-box-wrapper {
    display: flex!important;

}
.faq .e-n-accordion-item-title-text {
    display: flex !important;
    align-items: center !important;
}
.faq img{
    margin-right: 10px;
}
.faq .e-n-accordion .e-n-accordion-item:last-child .e-n-accordion-item-title {
    border: none !important;
}
.copyright .elementor-icon-list-text a {
    display: inline !important;
    vertical-align: middle;
}
/* radio btn css */
.custom-radio .elementor-field-subgroup {
    display: flex !important;
    gap: 10px!important;
    flex-basis: auto !important;
    max-width: none !important;
    width: auto !important;
    flex-direction: row !important;
    align-items: center;
}

.custom-radio .elementor-field-option {
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.custom-radio .elementor-field-option label {
    display: inline-block !important;
    width: auto !important;
    min-width: 180px;
    text-align: center;
    padding: 12px 24px;
    border: 2px solid #e0e0e0;
    border-radius: 25px;
    background: #fff;
    color: #888;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 16px;
}

.custom-radio .elementor-field-option input[type="radio"] {
    display: none;
}

.custom-radio .elementor-field-option input[type="radio"]:checked + label {
    border-color: #4181AF;
    background: #e3f2fd;
    color: #4181AF;
}
.custom-radio .elementor-field-type-radio {
    display: block!important;
}
/* radio btn css end */

/* Gallery page */
.gallery-tabs .elementor-gallery-title {
    background-color: #F8F8F8;
	border-radius: 100px;
    padding: 5px 20px;
}
.gallery-tabs a.elementor-item.elementor-gallery-title.elementor-item-active {
    background-color: #4181AF!important;
}
.gallery-tabs .elementor-gallery-title:hover {
    background-color: #4181AF!important;
}
footer.elementor-slideshow__footer.elementor-lightbox-prevent-close {
    display: none;
}
/* Gallery page end */
/* Accordion icon background always white, perfect circle, center, NO absolute */
.custom-faq .e-n-accordion-item-title-icon {
    background: #fff !important;
    border-radius: 50%;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    box-shadow: 0 0 0 1px #eee;
    margin-left: auto !important; /* Push icon to right */
    margin-right: 16px !important; /* Space from right border */
    transition: background 0.2s;
    padding: 0 !important;
}

/* Icon SVG size and color */
.custom-faq .e-n-accordion-item-title-icon svg {
    width: 18px !important;
    height: 18px !important;
    color: #4181AF;
    display: block;
    margin: 0 auto;
}

/* Remove extra padding from summary for better alignment */
.custom-faq .e-n-accordion-item-title {
    padding-right: 0 !important;
    display: flex !important;
    align-items: center !important;
}

/* Open accordion title background grey, border-radius only top, no border-bottom */
.custom-faq .e-n-accordion-item[open] > summary.e-n-accordion-item-title {
    background: #FAFAFA !important;
    border-radius: 24px 24px 0 0 !important;
    border-bottom: none !important;
    transition: background 0.2s;
}

/* Closed accordion title normal border-radius, white bg */
.custom-faq .e-n-accordion-item:not([open]) > summary.e-n-accordion-item-title {
    background: #fff !important;
    border-radius: 24px !important;
    transition: background 0.2s;
}

/* Accordion content border-radius bottom only when open */
.custom-faq .e-n-accordion-item[open] > [role="region"] {
    border-radius: 0 0 24px 24px !important;
    background: #fff;
    border-top: none !important;
}

/* Remove default margin from accordion items */
.custom-faq .e-n-accordion-item {
    margin-bottom: 16px !important;
}


/* new css */
.custom-faq .elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened {
    display: contents;
}
.custom-faq span.e-n-accordion-item-title-icon {
    width: 34px !important;
}
/* FAQ page end*/

/* Houseboats page css */
.houeboats-types img{
    width: 100%!important;
    height: 280px!important;
    object-fit: coveer!important;
    border-radius: 20px;
}

/* Houseboats page css end*/

/* all tabs css */
.e-n-tab-title[aria-selected=true]{
    background-color: #4181af!important;
}
.e-n-tab-title[aria-selected=false]:hover{
    background-color: #4181af!important;
}
/* all tabs css end*/

/* blog page css */
.blog-nav span.elementor-post-navigation__link__prev {
    padding-right: 20px;
}
.blog-nav span.elementor-post-navigation__link__next {
    padding-left: 20px;
}
.blog-list h4 {
    font-weight: 500!important;
}
/* blog page css end*/

/* check availablity widget css */
.check-avail .CloudBedsWidget .horizontal-widget {
    display: flex;
    gap: 20px;
    align-items: flex-end;
    background: #fff;
    padding: 24px 20px;
    border-radius: 20px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.06);
    max-width: 600px;
    margin: 0 auto;
    flex-flow: wrap;
}

.check-avail .CloudBedsWidget .acessa_widget_block {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.check-avail .CloudBedsWidget .acessa_widget_block p {
    font-weight: 600;
    margin-bottom: 8px;
    color: #222;
    font-size: 16px;
    letter-spacing: 0.01em;
}

.check-avail .CloudBedsWidget .widgetHotelsInputText.date {
    width: 100%;
    padding: 14px 20px;
    border: 1.5px solid #e0e0e0;
    border-radius: 25px;
    font-size: 17px;
    color: #222;
    background: #fafbfc;
    outline: none;
    transition: border 0.2s;
    margin-bottom: 0;
    box-sizing: border-box;
    font-family: inherit;
    font-weight: 400;
    height: 48px;
    min-width: 160px;
}

.check-avail .CloudBedsWidget .widgetHotelsInputText.date:focus {
    border-color: #4181af;
}

.check-avail .CloudBedsWidget .submit_link {
    padding: 14px 38px;
    background: #4181af !important;
    color: #fff !important;
    border: none !important;
    border-radius: 25px !important;
    font-size: 17px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    cursor: pointer;
    transition: background 0.2s;
    text-align: center;
    display: inline-block;
    box-shadow: 0 2px 8px rgba(65,129,175,0.08);
    text-decoration: none;
    min-width: 120px;
    height: 48px;
    line-height: 20px;
}

.check-avail .CloudBedsWidget .submit_link:hover {
    background: #111 !important;
    color: #fff !important;
}
.check-avail .widgetHotelsForm .horizontal-widget a.submit_link {
    position: relative;
    top: 0;
    border-radius: 100px !important;
    align-content: center;
}
.check-avail .horizontal-widget, .check-avail .horizontal-widget * {
    font-family: 'Outfit', sans-serif !important;
}
button.pika-next {
    font-size: 0px !important;
}
/* check availablity widget css end */
select#form-field-field_261395b:focus {
    box-shadow: none !important;
}
.rate-form .elementor-field-group-field_7b398e3 label {
    padding: 0px !important;
    border: none !important;
}

@media only screen and (max-width: 600px) {
.elementor-11 .elementor-element.elementor-element-24ba652::before{
 		background-color: #ffffffa8!important;
	}
	/* check availablity widget css */
	.check-avail .CloudBedsWidget .horizontal-widget {
        flex-direction: column;
        gap: 10px;
        padding: 20px;
		align-items: start!important;
    }
    .check-avail .CloudBedsWidget .submit_link {
        margin-left: 0;
        width: 100%;
        margin-top: 10px;
    }
	.check-avail. .horizontal-widget {
    align-content: start!important;
	}
	.check-avail input.widgetHotelsInputText.date {
    width: 85% !important;
	}
	/* check availablity widget css end */
/* 	testimonials text height */
  .testimonials-new.elementor-element-129d43e { 
	  --lines: 5;
	}
/* 	testimonials text height end*/
	}

}
@media only screen and (max-width: 425px) {
	.custom-list .elementor-icon-list-item:not(:last-child):after{
		display: none!important;
	}
}