/* 
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 */


@font-face {
    font-family: 'Gordita Regular';
    src: url('gordita-regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'TT Commons Pro ExtraLight Italic';
    src: url('TT-Commons-Pro-ExtraLight-Italic.otf') format('opentype');
    font-weight: 200;
    font-style: italic;
	font-display: swap;
}

@font-face {
    font-family: 'TT Commons Pro Regular';
    src: url('TT-Commons-Pro-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}

body, p {
    font-family: 'TT Commons Pro Regular', sans-serif !important;
}

h1, h2, h3, h4, h5, h6, li, a, span {
    font-family: 'Gordita Regular', sans-serif !important;
}

em, i {
    font-family: 'TT Commons Pro ExtraLight Italic', sans-serif !important;
}

/* Sticky */

img[data-lazyloaded]{
    opacity: 0;
}

img.litespeed-loaded{
    -webkit-transition: opacity .5s linear 0.2s;
    -moz-transition: opacity .5s linear 0.2s;
    transition: opacity .5s linear 0.2s;
    opacity: 1;
}

.sticky-header,
.sticky-header_mobile {
    --header-height: 120px;
    --shrink-header-to: 1.3;
    --transition: .45s cubic-bezier(.4, 0, .2, 2);
    background: #ffffff; 
    transition: background-color var(--transition),
                backdrop-filter var(--transition),
                box-shadow var(--transition);
}

/* Sticky header styles for transparency */
.sticky-header.scrolled
 {
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(240, 240, 240, 0.3) 100%) !important;
    box-shadow: 0px 4px 33px 1px rgba(0, 0, 0, .07);
    -webkit-backdrop-filter: saturate(180%) blur(5px);
    backdrop-filter: saturate(180%) blur(5px);
    height: calc(var(--header-height) * var(--shrink-header-to));
}
.sticky-header_mobile.scrolled {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(240, 240, 240, 0.3) 100%) !important;
	box-shadow: 0px 4px 33px 1px rgba(0, 0, 0, .07);
    -webkit-backdrop-filter: saturate(180%) blur(5px);
    backdrop-filter: saturate(180%) blur(5px);
    height: calc(var(--header-height) * var(--shrink-header-to));
}


.sticky-header > .elementor-container,
.sticky-header_mobile > .elementor-container {
    min-height: var(--header-height);
    transition: min-height var(--transition);
}

.sticky-header.elementor-sticky--effects > .elementor-container,
.sticky-header_mobile.elementor-sticky--effects > .elementor-container {
    min-height: calc(var(--header-height) * var(--shrink-header-to));
}

/* .sticky-header.elementor-sticky--effects .elementor-item,
.sticky-header_mobile.elementor-sticky--effects .elementor-item {
    color: black !important; 
} */

.wp-gr.wpac a.wp-google-name {
	color: #2B3935 !important;
}


/* Gradients */

.gradient_background {
	background: linear-gradient(180deg, rgba(43, 57, 53, 0) 0%, rgba(43, 57, 53, 0.75) 40%, rgba(43, 57, 53, 0.76) 48%, #001D2B 100%);
}

.light_gradient {
	background: linear-gradient(181.13deg, rgba(43, 57, 53, 0.4) 8.05%, rgba(43, 57, 53, 0.3) 25.65%, rgba(43, 57, 53, 0.2) 41.78%, rgba(43, 57, 53, 0.1) 60.84%, rgba(43, 57, 53, 0.02) 75.99%);
}

.image_gradient {
	background: #F0F0F0A6;
}

.lightblue-gradient {
	background: linear-gradient(181.13deg, rgba(43, 57, 53, 0) 8.05%, rgba(43, 57, 53, 0.02) 25.65%, rgba(43, 57, 53, 0.1) 41.78%, rgba(43, 57, 53, 0.2) 60.84%, rgba(43, 57, 53, 0.3) 75.99%, rgba(43, 57, 53, 0.4) 101.41%);


}

/* Mobile Menu Styles */

#menu-2-53b6bb6 .menu-item-338 a {
	padding: 13px 30px;
	background-color: #fff;
	font-weight: bold;
}


#menu-2-53b6bb6 .menu-item-339 a {
	border-radius: 0;
	padding: 13px 30px;
	background-color: #00A6E0;
	font-weight: bold;
}

.frm_description p, .frm_form_title {
	text-align: center !important;
	margin-bottom: 20px !important;
}
.frm_form_field {
	margin-bottom: 15px !important;
}

.payment_list .elementor-icon-list-items {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr); 
    row-gap: 50px;
		column-gap: 20px;
    list-style: none; 
    padding: 0; 
    margin: 0; 
}

.payment_list .elementor-icon-list-item {
    display: flex;
    align-items: center;
}
@media (max-width: 767px) {
.payment_list .elementor-icon-list-items {

    row-gap: 20px;
}
}
@media (max-width: 480px) {
   .payment_list .elementor-icon-list-items {
        grid-template-columns: 1fr;
    }
}

.elementor-nav-menu .menu-item-338 a {
		display: inline-flex;
    background-color: #fff;
    color: #000 !important;
    padding: 8px 16px;
		border: 2px solid #30BBE6;
    text-align: center;
    margin-top: 10px; 
}

.elementor-nav-menu .menu-item-338{ 	
		padding-left: 18px;
		padding-bottom: 15px;
}


.elementor-nav-menu .menu-item-339 a {
    display: inline-flex;
    align-items: center;
    background-color: #00A6E0;
    color: #ffffff;
    padding: 8px 16px;
    border-radius: 5px;
    font-weight: bold;
    text-align: center;
    margin-top: 10px; 
		
}

.elementor-nav-menu .menu-item-339 {
	padding-left: 18px;
	padding-bottom: 18px;
}

.elementor-nav-menu .menu-phone-button a,
.elementor-nav-menu .menu-book-button a {
    font-size: 15px; 
}

.elementor-menu-toggle .elementor-menu-toggle__icon--close {
    display: none;
}

.elementor-menu-toggle .elementor-menu-toggle__icon--open {
    display: block;
}

.elementor-element.sticky-header_mobile.menu-active-bg {
    background-color: rgba(4, 4, 4, 0.7) !important;
    transition: background-color 0.3s ease;
}


.sticky-header_mobile.menu-active-bg .elementor-menu-toggle__icon--open {
    display: none !important;
}

.sticky-header_mobile.menu-active-bg .elementor-menu-toggle {
    z-index: 2000 !important;
    position: relative !important;
}

.sticky-header_mobile.menu-active-bg .elementor-menu-toggle__icon--close {
    display: block !important;
    color: #ffffff !important;
    filter: brightness(5) !important; 
}

.elementor-nav-menu--dropdown {
	width: 100%;
}

@media (max-width: 767px) {
    .elementor-menu-toggle {
        position: relative;
        z-index: 2000;
    }
	
	.sticky-header_mobile {
		--header-height: 50px;
    --shrink-header-to: 1.3;
    --transition: .45s cubic-bezier(.4, 0, .2, 2);
transition: background-color var(--transition),
                backdrop-filter var(--transition),
                box-shadow var(--transition);
}
}

/* Gallery Styles */

.elementor-image-gallery .gallery-item {
	display: inline-block;
    text-align: center;
    vertical-align: top;
    width:100% !important;
}

.elementor-image-gallery .gallery-columns-2 .gallery-item {
	max-width:100% !important;
}

.custom-gallery .gallery {
    opacity: 1 !important;
    gap: 10px; 
		display: grid;
    grid-template-rows: repeat(3, auto) !important;
    grid-template-columns: 1fr 1fr !important;
    width: 100% !important;
}


.custom-gallery .gallery-item:nth-child(1) {
    --aspect-ratio: 145% !important;
    grid-row: 1 / span 2 !important;
    grid-column: 1 !important;
}

.custom-gallery .gallery-item:nth-child(2) {
    --aspect-ratio: 66.66% !important;
    grid-row: 2 !important;
    grid-column: 2 !important;
    margin-top: auto !important;
}

.custom-gallery .gallery-item:nth-child(3) {
    --aspect-ratio: 66.66% !important;
    grid-row: 3 !important;
    grid-column: 1 / span 2 !important;
    width: 65% !important;
    margin: 0 auto !important;
    transform: translateX(17.5%) !important;
}


.custom-gallery .gallery-item img {
    opacity: 1 !important; 
    transition: none !important; 
}

.custom-gallery .gallery-item .gallery-icon {
    background-color: rgba(0, 0, 0, 0.2) !important;
    opacity: 1 !important; 
    transition: none !important;
}

@media (max-width: 767px) {
    .custom-gallery .gallery {
        grid-template-rows: auto !important;
    }
    
    .custom-gallery .gallery-item {
        --aspect-ratio: 75% !important;
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100% !important;
        transform: none !important;
    }
}
