/*
Theme Name: IVY
Theme URI: https://theloyaltyco.app/
Author: TLC
Author URI: https://theloyaltyco.app/
Description: IVY Theme Template
Version: 1.0
License: IVY
License URI: https://theloyaltyco.app/
Text Domain: IVY


:root {
  var(--main-brand-colour)
  var(--alt-brand-colour)
  var(--main-background-colour)
  var(--alt-background-colour)
}

*/


    header .custom-logo-link img {
        height: auto;
    }


h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-family-kudryashev);
  font-optical-sizing: auto;
  font-style: normal !important;
}

body, span, a, button, input, strong, ul, li, code, b {
  font-family: 'Neutra Text', sans-serif !important;
  font-optical-sizing: auto;
  font-style: normal !important;
	font-size: 1em !important;
}
header .menu {
  padding: 0 10px;
}
header nav.navbar-light .navbar-nav .nav-item .nav-link {
  padding-left: 15px !important;
  padding-right: 15px !important;
}
header .alt-menu {
  width: 10%;
	min-width: 50px;
}
header .booknow {
  width: 10%;
}
header .logo {
  width: 20%;
}
header .main-menus {
  width: 30%;
}
header .d-flex {
  justify-content: center;
  align-items: center;
}
#menuToggle {
  display: flex;
  position: relative;
  z-index: 1;
  -webkit-user-select: none;
  user-select: none;
  flex-direction: column;
}
#menuToggle a {
  text-decoration: none;
  color: var(--black);
  transition: color 0.3s ease;
}
#menuToggle a:hover {
  color: tomato;
}
#menuToggle input {
  display: block;
  width: 40px;
  height: 32px;
  position: absolute;
  top: -7px;
  left: -5px;
  cursor: pointer;
  opacity: 0; /* hide this */
  z-index: 2; /* and place it over the hamburger */
  -webkit-touch-callout: none;
}

#menuToggle span {
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: var(--asia-gold);
  border-radius: 3px;
  z-index: 1;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), opacity 0.55s ease;
}
#menuToggle span:first-child {
  transform-origin: 0% 0%;
}
#menuToggle span:nth-last-child(2) {
  transform-origin: 0% 100%;
}

#menuToggle input:checked ~ span {
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background:var(--main-brand-colour);
}

#menuToggle input:checked ~ span:nth-last-child(3) {
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

#menuToggle input:checked ~ span:nth-last-child(2) {
  transform: rotate(-45deg) translate(0, -1px);
}
#menu {
    position: absolute;
    width: 40vw;
    margin: -20vh 0 0 -20vw;
    padding: 0;
    background: var(--main-background-colour);
    list-style-type: none;
    -webkit-font-smoothing: antialiased;
    transform-origin: 0% 0%;
    transform: translate(-120vw, 0);
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
    height: 120vh;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
}
#menu li {
  padding: 10px 0;
  font-size: 22px;
}

#menuToggle input:checked ~ ul {
  transform: none;
}

.alt-menu .menu li {
    padding: 0 !important;
    font-size: 18px !important;
    width: 200px;
    text-align: right;
    margin: 0 20% 0 0;
}


	.ivy-app-banner-top {
    background: var(--asia-gold);
	margin-top: 17px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    color: var(--white);
}
		.ivy-app-banner-top a {
    color: var(--white);
}
		
		header.fixed-top-1, header{
    padding-bottom: 0 !important;
}
		
	 @media (max-width: 767px) {
		 
		 	.ivy-app-banner-top {
    height: auto;
}
		 
			.ivy-app-banner-top p {
    width: 90%;
    padding: 10px 0;
    line-height: 16px;
    margin: 0 auto;
    font-size: 13px;
}
		 .ivy-app-banner-top a {
    width: 100%;
    display: inline-block;
}
		}
		
		
		section.top-fixed.banr-inr-cnt .banner-grid:after {
    background: none !important;
}


 @media (min-width: 0) {

	header .btn-booktable {
    background: var(--main-brand-colour);
    padding: 0px;
    color: var(--white);
    border-radius: 5px;
    max-width: 150px;
    height: 40px;
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 80px;
}

	 
  header nav.navbar-light.navbar-expand-lg {
    padding-right: 0 !important;
	  padding-left: 0 !important;
}
	 
}






 @media (max-width: 1700px) {
header .logo {
    width: 13%;

}
header .custom-logo-link img {
    width: 100% !important;
}
	 
	 #menu-primary, #menu-primary-right {
	align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
	 }
	 
}
 @media (max-width: 1600px) {
header nav.navbar-light.navbar-expand-lg {
    padding-left: 15px !important;
    padding-right: 15px !important;
}
	 
	 header .d-flex.alt-menu {
    justify-content: flex-start !important;
}
	 
	 
header .alt-menu, header .booknow {
    width: 7%;
}
	 
	 header .main-menus {
    width: 40%;
}
	 


}
 @media (max-width: 1500px) {


}
 @media (max-width: 1300px) {

	 #menu-primary li:nth-child(4), #menu-primary-right li:nth-child(4) {
		 display: none;
		 
	 }
	 
	 header .alt-menu{
     width: 5%;
     min-width: 50px;
     }
     header .logo {
     width: 10%;
     }
     header .main-menus {
     width: 30%;
     }
	 header .booknow {
     width: 10%;
     min-width: 100px;
	 }
	 
	 

}
 @media (max-width: 1100px) {



}
 @media (max-width: 990px) {
	 
#menu-primary li:nth-child(3), #menu-primary-right li:nth-child(3) {
		 display: none;
		 
	 }
	 

    header .logo {
    width: 16%;
}
	 header nav.navbar-light .navbar-nav .nav-item .nav-link {
    border-top: none !important;  
}
	 
	 #menu-primary, #menu-primary-right{
     flex-direction: row;
}
	 
	header .container {
    max-width: 100% !important;
}
	 
	 
	 #menu {
    position: absolute;
    width: 80vw;
    margin: -20vh 0 0 -20vw;
}
	 



}
 @media (max-width: 770px) {
	 
	 
	 #menu-primary, #menu-primary-right {
		 display: none;
		 
	 }
     header .main-menus {
    width: 0;
    }
	 header .d-flex.booknow {
    justify-content: flex-end;
    }
	 
	 header .alt-menu, header .logo, header .booknow {
    width: 33%;;
}
	 
	 


}
 @media (max-width: 550px) {



}



