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

/* This sets the height on the Header */
header.elementor div.elementor-element.header_section {
    --shrink-header-to: 0.85;
    --transition: .45s cubic-bezier(.4, 0, .2, 1);
    transition: background-color var(--transition),
                box-shadow var(--transition-timing);
}
@media only screen and (max-width: 767px) {
    header.elementor div.elementor-element.header_section {
        --shrink-header-to: 0.83;
    }
}

/* This sets the height on the Sticky Header when activated */
header.elementor div.elementor-element.header_section {
    min-height: var(--min-height);
    transition: min-height var(--transition);
}
header.elementor div.elementor-element.header_section.elementor-sticky--effects {
    min-height: calc( var(--min-height) * var(--shrink-header-to) );
}
header.elementor div.elementor-element.header_section.elementor-sticky--effects {
    box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.5);
}

/* This changes the Logo height when the Sticky Header is activated */
@media only screen and (min-width: 768px) {
	header.elementor div.elementor-element.header_section.elementor-sticky--effects div.elementor-element.header_logo img {
		transform: scale(0.9);
	}
}
@media only screen and (max-width: 767px) {
	header.elementor div.elementor-element.header_section.elementor-sticky--effects div.elementor-element.header_logo img {
		transform: scale(0.87);
	}
}

/* This styles the Burger Menu toogle icon for the Header Menu on Tablet and Mobile resolutions */
@media only screen and (max-width: 1024px) {
    .header_nav {
        --gap: 8px;
        --width: 40px;
    }
}
.header_nav .elementor-menu-toggle {
    position: relative;
    background-color: transparent;
}
.header_nav .elementor-menu-toggle:before {
        --weight: 1px;
}
.header_nav .elementor-menu-toggle:after {
        --weight: 3px;
}
.header_nav .elementor-menu-toggle i:after {
        --weight: 2px;
}
.header_nav .elementor-menu-toggle:before,
.header_nav .elementor-menu-toggle:after,
.header_nav .elementor-menu-toggle i:after {
    content: "";
    height: var(--weight);
    width: var(--width);
    position: absolute;
    background: currentColor;
    top: 50%;
    left: 50%;
    transform: translate(-50%,calc(-50% + var(--gap)));
    transition: all 0.3s ease-in-out;
}
.header_nav .elementor-menu-toggle.elementor-active:before {
    transform: translate(-50%,-50%) rotate(-45deg);
    --weight: 2px;
}
.header_nav .elementor-menu-toggle:after {
    transform: translate(-50%,calc(-50% - var(--gap)));
}
.header_nav .elementor-menu-toggle.elementor-active:after {
    transform: translate(-50%,-50%) rotate(45deg);
    --weight: 2px;
}
.header_nav .elementor-menu-toggle i:after {
    transform: translate(-50%,-50%);
}
.header_nav .elementor-menu-toggle i:before,
.header_nav .elementor-menu-toggle.elementor-active i:after {
    opacity: 0;
}

/* This changes the font-weight on the Main Navigation Menu active tab */
.header_nav nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item a.elementor-item.elementor-item-active {
	font-weight: 600;
}
.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu a.elementor-item.elementor-item-active {
	font-weight: 600;
}

/* This styles the Drop-Down Header Menu for Desktop and Laptop resolutions */
@media only screen and (min-width: 1025px) {
	.header_nav nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown {
		left: 5px !important;
		min-width: fit-content !important;
		padding: 10px 0px 10px;
		box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.2);
		background-color: var( --e-global-color-text );
	}
}
@media only screen and (min-width: 1025px) {
	.header_nav nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown .elementor-sub-item {
		font-size: 16px;
		font-weight: 300;
		line-height: 22px;
		border-left: 0px solid transparent;
	}
}
 
/* This makes the Drop-Down Header Menu take up the full screen and hides the scrollbar on Tablet and Mobile resolutions */
.header_nav.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
    position: fixed;
    height: 100%;
    max-height: 100%;
    top: auto !important;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.header_nav.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container::-webkit-scrollbar {
  display: none;
}
 
/* This changes the animation speed for the Drop-Down Header Menu on Tablet and Mobile resolutions */
.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    transition: max-height .6s,transform .0s;
}
 
/* This changes the hover speed, width and positions the Drop-Down Header Menu tabs on Tablet and Mobile resolutions */
.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu a.elementor-item {
    transition: .3s ease-in-out;
    width: fit-content;
    margin: 0px;
    text-transform: none;
}
@media only screen and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu a.elementor-item:focus {
		background-color: var( --e-global-color-86b4fcd );
	}
}

/* This changes the hover speed, width styles the Sub-Menu Drop-Down Header Menu tabs on Tablet and Mobile resolutions */
@media only screen and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu .menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown {
		background-color: transparent;
	}
}
@media (min-width: 768px) and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu .menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item {
		transition: .3s ease-in-out;
		width: fit-content;
		max-width: 690px;
		margin: 0px;
		border-left: 0px solid transparent;
		padding: 10px 50px 15px;
		font-size: 22px;
		font-weight: 300;
		line-height: 32px;
	}
}
@media only screen and (max-width: 767px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu .menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item {
		transition: .3s ease-in-out;
		width: fit-content;
		max-width: 400px;
		margin: 0px;
		border-left: 0px solid transparent;
		padding: 5px 40px 10px;
		font-size: 18px;
		font-weight: 300;
		line-height: 28px;
	}
}
@media only screen and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu .menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item:focus {
		background-color: var( --e-global-color-86b4fcd );
	}
}
 
/* This adds padding to the Drop-Down Header Menu on Tablet and Mobile resolutions */
@media (min-width: 768px) and (max-width: 1024px) {
    .header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
        padding: 70px 0px 100px 60px;
    }
}
@media only screen and (max-width: 767px) {
    .header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
        padding: 60px 0px 100px 25px;
    }
}
 
/* This adds a background to the Drop-Down Header Menu on Tablet and Mobile resolutions */
@media (min-width: 768px) and (max-width: 1024px) {
    .header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
        background-image: url("/wp-content/uploads/2024/03/xicken_favicon.png");
        background-position: 96% 100%;
        background-repeat: no-repeat;
        background-size: 200px;
    }
}
@media only screen and (max-width: 767px) {
    .header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
        background-image: url("/wp-content/uploads/2024/03/xicken_favicon.png");
        background-position: 96% 100%;
        background-repeat: no-repeat;
        background-size: 125px;
    }
}

/* This hides the chevron for the Header Menu Drop-Down Navigation */
.header_nav nav.elementor-nav-menu--main span.sub-arrow {
	display: none;
}
@media only screen and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container span.sub-arrow {
		display: none;
	}
}

/* This styles the TranslatePress Language Switcher */
.header_nav nav.elementor-nav-menu--main ul.elementor-nav-menu li.trp-language-switcher-container a.elementor-item {
	font-weight: 600;
}
.header_nav nav.elementor-nav-menu--main ul.elementor-nav-menu li.trp-language-switcher-container a.elementor-item span.sub-arrow {
	display: flex;
	padding: 12px 0 10px 7px;
}
.header_nav nav.elementor-nav-menu--main ul.elementor-nav-menu li.trp-language-switcher-container a.elementor-item span.sub-arrow .fas.fa-chevron-down {
	font-size: 0.5em;
}
@media only screen and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.trp-language-switcher-container a.elementor-item span.sub-arrow {
		display: flex;
		padding: 10px 0 10px 7px;
	}
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.trp-language-switcher-container a.elementor-item span.sub-arrow .fas.fa-chevron-down {
		font-size: 0.5em;
	}
}
@media (min-width: 768px) and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.trp-language-switcher-container a.elementor-item {
		font-size: 22px;
		font-weight: 600;
		margin-top: 0px;	
		margin-bottom: -5px;
	}
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu li.trp-language-switcher-container.menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item {
		padding: 0px 25px 15px;
	}
}
@media only screen and (max-width: 767px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.trp-language-switcher-container a.elementor-item {
		font-size: 18px;
		font-weight: 600;
		margin-top: -5px;	
		margin-bottom: -10px;
	}
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu li.trp-language-switcher-container.menu-item-has-children ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item {
		padding: 0px 25px 10px;
	}
}

/* This changes the font-weight for the top header icon list elements */
div.elementor-element.top_header_icon_list ul.elementor-icon-list-items li.elementor-icon-list-item > a > span.elementor-icon-list-text {
	font-weight: 300;
}

/* This changes the size on the footer instagram icon */
div.elementor-element.footer_icons div.elementor-social-icons-wrapper span.elementor-grid-item a.elementor-icon i.fab.fa-instagram {
	font-size: 24px;
}
@media only screen and (max-width: 1024px) {
	div.elementor-element.footer_icons div.elementor-social-icons-wrapper span.elementor-grid-item a.elementor-icon i.fab.fa-instagram {
		font-size: 25px;
	}
}

/* This changes the font-size on the schedule title in the contacts page for Desktop and Laptop resolutions */
@media (min-width: 1025px) and (max-width: 1200px) {
	div.elementor-element.schedule_title div.elementor-widget-container h2.elementor-heading-title {
		font-size: 36px;
		line-height: 46px;
	}
}

/* This styles the menu accordion element */
div.elementor-element.menu_accordion {
	--n-accordion-border-width: 0px;
	--n-accordion-border-color: transparent;
	--n-accordion-border-style: none;
	--n-accordion-padding: 0px;
}
div.elementor-element.menu_accordion div.elementor-widget-container div.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
	min-height: 150px;
	padding: 35px 55px;
}
@media (min-width: 768px) and (max-width: 1024px) {
	div.elementor-element.menu_accordion div.elementor-widget-container div.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
		min-height: 130px;
	}
}
@media only screen and (max-width: 767px) {
	div.elementor-element.menu_accordion div.elementor-widget-container div.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
		min-height: 110px;
		padding: 35px 25px;
	}
}
div.elementor-element.menu_accordion div.elementor-widget-container div.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title span.e-n-accordion-item-title-icon {
	padding-top: 7px;
}

/* This styles the menu list element */
div.elementor-element.menu_list div.elementor-price-list-header {
	margin-bottom: -2px;
}
div.elementor-element.menu_list ul.elementor-price-list li.elementor-price-list-item div.elementor-price-list-text p.elementor-price-list-description {
	margin-bottom: -22px;
	font-weight: 400;
}
@media only screen and (max-width: 767px) {
	div.elementor-element.menu_list div.elementor-widget-container ul.elementor-price-list li.elementor-price-list-item div.elementor-price-list-text div.elementor-price-list-header span.elementor-price-list-title {
		max-width: 55%;
	}
	div.elementor-element.menu_list div.elementor-widget-container ul.elementor-price-list li.elementor-price-list-item div.elementor-price-list-text div.elementor-price-list-header span.elementor-price-list-separator {
		margin-left: 17px;
		margin-right: 17px;
	}
}

/* This applies a box-shadow and a z-index on the Cookie Notice popup element so that it doesn't overlap when the Header Mobile Menu is expanded */
div.elementor-popup-modal.cookie_notice_popup div.dialog-widget-content {
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
}
div.elementor-popup-modal.cookie_notice_popup {
    z-index: 10;
}
