/*
Theme Name:   Hello Elementor Child
Theme URI:    https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Description:  Hello Elementor Child is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Author:       Elementor Team
Author URI:   https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Template:     hello-elementor
Version:      3.0.1
License:      GNU General Public License v3 or later
License URI:  http://www.gnu.org/licenses/gpl-3.0.html
Tags:         accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready
Text Domain:  hello-elementorchild
*/

body{
	overflow-x:hidden !important;
}
.elementor-field-group {
    align-self: flex-start;
}
.td-none a {
    text-decoration: none !important;
}
.footer_title {
    position: relative;
}
.footer_title:before {
    content: "";
    position: absolute;
    top: 138%;
    left: 0;
    height: 1px;
    width: 50px;
    background: var(--e-global-color-primary);
}

.elementor-counter-number-wrapper {
    position: relative;
}
.elementor-counter-number-wrapper::before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translatex(-50%);
	height: 1px;
	width: 84px;
	background: var(--e-global-color-primary);
}

@media screen and (max-width:767px){
	.elementor-counter-number-wrapper::before {
		content: none;
	}
}
@media screen and (max-width:1024px){
	svg.elementskit-submenu-indicator.ekit-svg-icon.icon-down-arrow1 {
    padding: 3px 6px 3px 6px !important;
    border: 0 !important;
	}
}


.amenities_card:hover .elementor-heading-title {
    color: #fff !important;
}
.amenities_card:hover svg path {
    stroke: #fff !important;
}
.amenities_card .elementor-icon-wrapper {
    display: flex;
}
.dining_feature_list .elementor-inline-items {
    row-gap: 15px;
}
/* .event_title {
    background: rgb(255 255 255 / 80%);
    border-radius: 0;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(14.7px);
    -webkit-backdrop-filter: blur(14.7px);
} */
.event_card_image {
    position: relative;
}

.event_card_image:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0, #111 10%, transparent 40%);
    z-index: 1;
}

.elementor-element-d53a137:before, .img-border-inside img:before {
    content: "";
    position: absolute;
    width: 90%;
    height: 90%;
    background: #00ffff00;
    z-index: 1;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    border: 1px solid #fff;
}


.border-overlay-img img:before {
    content: "";
    position: absolute;
    width: 90%;
    height: 90%;
    background: #00ffff00;
    z-index: 1;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    border: 2px solid #fff;
}

.event_card_image *{
    transition:all 840ms ease !important;
}
.event_card_image:hover img {
    scale: 1.3;
}


.megamenu_container{
	    background: rgba(255, 255, 255, 0.90);
    backdrop-filter: blur(36px) saturate(180%);
    -webkit-backdrop-filter: blur(12px) saturate(180%);
    pointer-events: none;
	    border-bottom: 1px solid #dadada;
}
/* .elementor-icon-wrapper {
    display: flex;
} */


.elementskit-nav-identity-panel {
    border-bottom: 1px solid #e7e7e7;
} 

.elementor-icon-list-items {
    padding: 0;
    list-style: none !important;
}

.banner-content-box > .e-con-inner {
    margin-right: 0;
}
.cta-section:after {
    content: "";
    position: absolute;
   	width: calc(100% - 20px);
    height: calc(100% - 20px);
    background: #00ffff00;
    z-index: 1;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    border: 2px solid #ffffff3d;
    border-radius: 13px;
}

.box-shadow{
	box-shadow: rgba(0, 0, 0, 0.2) 0px 20px 30px;
}
.gallery-icon {
    overflow: hidden;
    border-radius: 13px;
}
.gallery-item{
	border-radius:13px;
	overflow: hidden; 
}
.gallery-item img { 
    aspect-ratio: 1/0.7;
    object-fit: cover;
	transition:all 168ms ease;
}

.gallery-item:hover img { 
	scale:1.3;
}

.gallery-spacing-custom .elementor-image-gallery .gallery-icon { 
    overflow: hidden;
}
footer.elementor-slideshow__footer { 
    display: none !important;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}
/* **************************** Banner Style ********************************** */
.cta-section .elementor-button-info {
    z-index: 2;
}
.banner-image-wrapper img{
min-height: 400px !important;
}
.banner-svg-shape{
    width: 120px;
} 

@media (max-width:1366px){
    .banner-svg-shape{
    width: 88px;
}
}
@media (max-width:767px){
    .banner-svg-shape{
    min-width: 100%;
}
}

.banner-leaf {
    position: sticky;
    top: 0;
    z-index: 2;
    aspect-ratio: 311 / 276;
    pointer-events: none;
}

/* Shared image layers */
/* .banner-leaf::before,
.banner-leaf::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("/wp-content/uploads/2026/07/leaves-pattern-2-1.svg");
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 100% 100%;
    will-change: transform;
} */

/* Keep only the top-left attachment area fixed */
.banner-leaf img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
 
}

/* Upper-right branch and leaves */
.banner-leaf::before {
    z-index: 2;

    clip-path: polygon(
        24% 0,
        100% 0,
        100% 55%,
        53% 53%,
        31% 35%,
        24% 20%
    );

    transform-origin: 25% 13%;
    animation: upper-leaf-wind 7.5s ease-in-out infinite;
}

/* Lower hanging leaves */
.banner-leaf::after {
    z-index: 3;

    clip-path: polygon(
        10% 25%,
        61% 25%,
        70% 100%,
        0 100%,
        0 40%
    );

    transform-origin: 25% 32%;
    animation: lower-leaf-wind 8.5s ease-in-out infinite;
}


/* Card image/content wrapper */
.event_card > .e-con-inner,
.event_card > .e-con-inner > .e-con,
.event_card .elementor-element-acc39d9 {
    height: 100%;
}

.event_card .elementor-element-acc39d9 {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

/* Image */
.event_card .event_card_image,
.event_card .event_card_image .elementor-widget-image,
.event_card .event_card_image .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.event_card .event_card_image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

/* Bottom content panel */
.event_card .am-title {
    --card-collapsed-height: 76px;
    --card-expanded-height: 190px;

    position: absolute !important;
    right: 0;
    bottom: 0;
    left: 0;

    box-sizing: border-box;
    height: var(--card-collapsed-height) !important;
    min-height: 0 !important;
    padding: 20px 22px !important;
    overflow: hidden;
    z-index: 2;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 10px;

    color: #fff;
    background:
        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.94) 0%,
            rgba(0, 0, 0, 0.78) 55%,
            rgba(0, 0, 0, 0.15) 100%
        );

    transition:
        height 0.42s cubic-bezier(0.22, 1, 0.36, 1),
        background 0.42s ease;
}

/* Remove Elementor's default spacing */
.event_card .am-title .elementor-widget {
    margin: 0;
}

.event_card .am-title h2,
.event_card .am-title p {
    margin: 0;
}

.event_card .am-title h2 {
    color: #fff;
    font-size: 20px;
    line-height: 1.25;
    text-align: center;
}

/* Description is hidden initially */
.event_card .am-title .elementor-widget-text-editor {
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition:
        opacity 0.25s ease,
        visibility 0.25s ease,
        transform 0.35s ease;
}

.event_card .am-title p {
    color: rgb(255 255 255 / 59%);
    font-size: 15px;
    line-height: 1.55;
    text-align: center;
}

/* Desktop hover, keyboard focus and mobile open state */
.event_card:hover .am-title,
.event_card:focus-within .am-title,
.event_card.is-open .am-title {
    height: var(--card-expanded-height) !important;
    background:
        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.96) 0%,
            rgba(0, 0, 0, 0.88) 70%,
            rgba(0, 0, 0, 0.35) 100%
        );
}

.event_card:hover .am-title .elementor-widget-text-editor,
.event_card:focus-within .am-title .elementor-widget-text-editor,
.event_card.is-open .am-title .elementor-widget-text-editor {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0.08s;
}

.event_card:hover .event_card_image img,
.event_card:focus-within .event_card_image img,
.event_card.is-open .event_card_image img {
    transform: scale(1.04);
}

/* Prevent keyboard focus outline from being clipped */
.event_card:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.nature-experience-amenities .event_card_image:before {
	background:none !important;
}

.amenities-slider img{
    aspect-ratio: 1/1.1;
    object-fit: cover;
    object-position: bottom center;
}
.swiper-button-disabled {
    display: none !important;
}

.styled-ul ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.styled-ul ul li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 10px;
}

.styled-ul ul li::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 0;
  width: 14px;
  height: 14px;
  background: url("/wp-content/uploads/2026/06/list-icon.svg")
    center / contain no-repeat;
}

.img-border-inside:before{ 
    content: "";
    position: absolute;
    width: 90%;
    height: 90%;
    background: #00ffff00;
    z-index: 1;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    border:1px solid #ffffff; 
}
.styled-ul li svg {
    visibility: hidden !important;
}


.custom-icon-ul .elementor-icon-list-icon {
  width: 14px;
  height: 14px;
  min-width: 14px;
  flex: 0 0 14px;
  margin-top: 0.35em;
  margin-right: 11px;
  background: url("/wp-content/uploads/2026/06/list-icon.svg")
    center / contain no-repeat;
}

 .custom-icon-ul .elementor-icon-list-icon svg {
  display: none !important;
}

 .custom-icon-ul .elementor-icon-list-item {
  align-items: flex-start !important;
}


/* Reduced-motion accessibility */
/* @media (prefers-reduced-motion: reduce) {
    .event_card .am-title,
    .event_card .event_card_image img,
    .event_card .am-title .elementor-widget-text-editor {
        transition: none;
    }
} */



/* Very subtle upper movement */
@keyframes upper-leaf-wind {
    0%,
    100% {
        transform: rotate(0deg) translate3d(0, 0, 0);
    }

    28% {
        transform: rotate(0.35deg) translate3d(0.5px, -0.3px, 0);
    }

    57% {
        transform: rotate(-0.2deg) translate3d(-0.25px, 0.25px, 0);
    }

    79% {
        transform: rotate(0.45deg) translate3d(0.6px, 0.15px, 0);
    }
}

/* Lower leaves move slightly more */
@keyframes lower-leaf-wind {
    0%,
    100% {
        transform: rotate(0deg) translate3d(0, 0, 0);
    }

    24% {
        transform: rotate(-0.35deg) translate3d(-0.3px, 0.4px, 0);
    }

    51% {
        transform: rotate(0.55deg) translate3d(0.5px, 0.7px, 0);
    }

    73% {
        transform: rotate(-0.15deg) translate3d(-0.15px, 0.2px, 0);
    }

    88% {
        transform: rotate(0.3deg) translate3d(0.3px, 0.45px, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .banner-leaf::before,
    .banner-leaf::after {
        animation: none;
    }
}

@media (max-width: 1024px){
    .mega-menu-container {
        background-color: #eaeaea !important;
        box-shadow:none !important;
    }
}

@media (max-width: 767px){
.event_card .am-title {
    flex-direction: row;
}
}