/**
* Theme Name: Kona Airport
* Template: hello-elementor
* Theme URI:
* Author: Anthology Marketing Group
* Author URI: http://anthologygroup.com/
* Description:
* Version: 0.0.14
* License: ISC
* License URI: https://opensource.org/licenses/ISC
*/


html{
	overflow-x: hidden;
}

body{
	max-width: 100vw;
	overflow-x: hidden;
	position: relative;
}

/*
 * Nav
 */
.custom-nav{
	list-style: none;
	font-size: 1.2rem;
	text-transform: uppercase;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 1.75em;
}

.custom-nav li{
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: .333em;
}

.custom-nav li.menu-item-has-children:after{
	content: '\f054';
	font-family: "Font Awesome 6 Pro";
	font-size: .8em;
	transform-origin: center;
	transform: rotate(0deg);
	transition: transform .3s;
}

.custom-nav li.menu-item-has-children.open:after{
	transform: rotate(90deg);
}

#menu-main-nav.custom-nav a {
	font-weight: bold;
	text-decoration: none;
	padding-block: 9px;
	min-width:44px;
}

#menu-main-menu.custom-nav a,
#menu-footer-menu.custom-nav a,
#mobile-menu .custom-nav a{
	position: relative;
	color: inherit;
	text-decoration: none;
}

#menu-main-menu.custom-nav{
	gap: 2.5em;
}

#menu-main-menu.custom-nav > li > a:after{
	content: '';
	position: absolute;
	left: 0;
    bottom: 0;
	width: 100%;
	height: 2px;
	background-color: transparent;
	transition: background-color .3s;
}

#menu-main-menu.custom-nav a[target="_blank"]:after{
	content: '\f08e';
	position: relative;
	inset: auto;
	font-family: "Font Awesome 6 Pro";
	font-size: .9em;
	margin-left: .5em;
	background: none;
}

#menu-main-menu.custom-nav > li > a:hover:after{
	background-color: var(--pale-blue);
}

.custom-nav ul{
	position: absolute;
    list-style: none;
    display: none;
    background: white;
	padding: 0;
    top: 3.8em;
	box-shadow: 0px 19px 30px 0px rgba(0, 0, 0, 0.06);
}

.custom-nav li.open ul{
	display: block;
}

.custom-nav ul li{
	display: block;
	border-bottom: 1px solid var(--light-gray);
}

.custom-nav ul li a{
	display: block;
	padding: .5em 1em ;
    white-space: nowrap;
	text-indent: 0;
	transition: text-indent .1s, padding .1s;
}

.custom-nav ul li a:after{
	content: '';
	width: 0;
	position: absolute;
	inset: 0 auto 0 0;
	background-color: var(--bright-blue);
	transition: width .1s;
}

.custom-nav ul li a:hover{
	text-indent: 3px;
	padding-right: calc(1em - 3px);
}

.custom-nav ul li a:hover:after{
	width: 3px;
}


#mobile-menu{
    position: fixed;
    background: white;
    right: -100vw;
	left: auto;
	transition: right .3s;
	z-index: 100;
}

#mobile-menu.open{
	right: 0;
}

#mobile-menu .custom-nav{
	flex-direction: column;
	gap: 0;
	border-top: 1px solid var(--light-gray);
    margin-top: 1em;
}

#mobile-menu .custom-nav li{
	border-bottom: 1px solid var(--light-gray);
	display: block;
}

#mobile-menu .custom-nav li.menu-item-has-children:after{
	position: absolute;
	right: 1em;
	top: 25px;
}

#mobile-menu .custom-nav a{
	padding: 1em;
	display: block;
}

#mobile-menu .custom-nav ul{
	display: block;
	padding: 0;
	position: static;
	max-height: 0;
	overflow: hidden;
	box-shadow: none;
	transition: max-height .3s;
}

#mobile-menu .custom-nav li.open ul{
	max-height: 600px;
}

#mobile-menu .custom-nav ul li:first-child{
	border-top: 1px solid var(--light-gray);
}

#mobile-menu .custom-nav ul li:last-child{
	border: none;
}

.elementor-location-footer .custom-nav{
	font-size: 1rem;
	gap: 1.55em;
}
.footer-links a, .site-map-links a{
	padding-block: 15px;
	display: inline-block;
}
