/*
Theme Name: Studio 21
Theme URI: https://studio21.co/
Template: hello-elementor
Author: Studio 21
Author URI: https://studio21.co/
Description: EliteRV Website Theme
Version: 1.1602662139
Updated: 2020-10-14 07:55:39

*/

.aiosrs-rating-wrap {display:none}

.grecaptcha-badge {visibility: hidden;}


/* Elementor Image Box Fix  */
@media (max-width:768px){

	/* Image box wrapper */
	.elementor-widget-image-box .elementor-image-box-wrapper{
		display:flex;
		text-align:left;
	}
	
	/* Image box content */
	.elementor-widget-image-box .elementor-image-box-content{
		margin-left:16px;
		
	}
	
}


/* Improved Animations Stylesheet */

@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translate3d(0,-30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInDown {
    animation-name: fadeDown
}

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translate3d(-30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInLeft {
    animation-name: fadeLeft
}

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translate3d(30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInRight {
    animation-name: fadeRight
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translate3d(0,30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInUp {
    animation-name: fadeUp
}


/* Change Colour of Selection */

::-moz-selection { /* Code for Firefox */
  color: #fff;
  background: #C62B43;
}

::selection {
  color: #fff;
  background: #C62B43;
}

/* Slick Styling */

html, body {overflow-x:hidden !important}



#header {padding:0px 40px; transition:padding ease 300ms}
#header.elementor-sticky--effects {padding:0px 40px 0px 40px; transition:padding ease 300ms, background-color ease 300ms}

@media(max-width:768px){
#header {padding:0px 0px 0px 15px;}
#header.elementor-sticky--effects {padding:0px 0px 0px 15px; transition:padding ease 300ms, background-color ease 300ms}

}


#mobilemenu {opacity:0 !important; transition: all ease 1s; visibility:hidden !important; position:fixed; left:0px; top:0px; z-index:1; width:100vw; height:100vh; display:flex; align-items: center; justify-content: center;}

#mobilemenu.open {opacity:1 !important; transition: all ease 1.5s; visibility:visible !important; position:fixed; left:0px; top:0px; z-index:1}

#mobilemenu .elementor-widget-container {width:100%; display:flex; align-items: center; justify-content: center; z-index:1}
#mobilemenu .elementor-widget-container .menu-menu-container {width:100%; padding:5%}

#mobilemenu::before {display:block; content:""; position:fixed; left:0; top:0; height:100vh; width:100vw; background:#fff; transition: all ease 1s;}
#mobilemenu.open::before {height:100vh; transition: all ease 1s;}


#mobilemenu .menu,
#mobilemenu .sub-menu {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.menu-primary-menu-container {width:80%}

#mobilemenu .menu-item {
	border-bottom:1px solid #eee;
	padding:10px 0px;
}

#mobilemenu .sub-menu .menu-item {
padding:5px 0px !important;	
}


#mobilemenu .menu-item a { 
	text-decoration: none;
	font-size: 5vw;
    color: #111;
	display:block;
	line-height:1.5em;
	font-family: "Blinker", Sans-serif;
	font-weight: 400;
	text-transform:uppercase;
	
}

#mobilemenu .sub-menu .menu-item a {
font-size: 3.5vw;
font-family: "Hanken Grotesk", sans-serif !important;
text-transform:normal !important;	
}


/* Submenu Indicator */

#mobilemenu  .menu-item-has-children > a {
	 position: relative;

}
#mobilemenu .menu-item-has-children > a:before {
	 position: absolute;
	 right:0px;
	 content: '+';
	 width: 10px;
	 height: 100%;
	 color: #111;
	 line-height:1.3em;
}



#mobilemenu .menu-item-has-children > a.is-open:before {
	content: '-';
}
 

/* highlight current menu item  */


#mobilemenu .menu .current-menu-item a {color:#c23266 !important; transition: color 0.3s ease !important}
#mobilemenu .menu a:hover {color:#c23266 !important; transition: color 0.3s ease !important}

@media (max-width:768px) {

#mobilemenu .menu .current-menu-item::after {
  width: 70px;
}
}	


/* Large menu item  */
.bignavitem h3::after {
  content: '';
  display: block;
  width: 0%;
  height: 10px;
  background: linear-gradient(to right, #F9D9EE, #F9F9F9); /* Adjust the colors as needed */
  mix-blend-mode: multiply;
  position: absolute;
  bottom: 20%;
	transition:width 0.3s ease-in-out;
}

.bignavitem:hover h3::after {
	width: 60%;
	transition:width 0.5s ease-in-out;
}

.bignavitem:hover a{color:#C23266 !important; transition: color 0.3s ease}

/* Sub-menu */

#mobilemenu .sub-menu {
  display: none;
}

#mobilemenu .sub-menu {
  margin-top: 10px;
  margin-bottom: 15px;
  margin-left: 0px;
}

#mobilemenu .sub-menu .menu-item {
  line-height: 1.6;
  text-transform: none;
  font-size: 1.2rem;
  border: 0;
}




/* Hamburger Toggle Icon Animation 1 */


.toggle-menu {
	 background-color: #fff;
	 border: none;
	 cursor: pointer;
	 display: inline-block;
	 float: right;
	 height: 46px;
	 outline: none;
	 pointer-events: initial;
	 position: relative;
	 vertical-align: middle;
	 width: 40px;
	 z-index: 1110;
}

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


.toggle-menu.active span, .toggle-menu.active span:before, .toggle-menu.active span:after {background-color: #fff; mix-blend-mode: normal;
}

.darkheader .toggle-menu span {
	background-color: #111;
}

.darkheader .toggle-menu span:before, .darkheader .toggle-menu span:after { 
	 background-color: #111;
}

.darkheader .toggle-menu.active span:before,  .darkheader .toggle-menu.active span:after {
		 background-color: #111;	
}




 .toggle-menu span {
	 background-color: #111;
	 content: "";
	 display: block;
	 height: 1px;
	 left: calc(50% - 13px);
	 position: absolute;
	 top: calc(50% - 1px);
	 transform-origin: 50% 50%;
	 transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, transform 0.2s linear;
	 width: 23px;

}
 .toggle-menu span:before, .toggle-menu span:after {
	 background-color: #111;
	 content: "";
	 display: block;
	 height: 1px;
	 position: absolute;
	 transform-origin: 50% 50%;
	 transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out, transform 0.2s linear;
	 width: 23px;
}

 .toggle-menu span:before {
	 top: 4px;
}
 .toggle-menu span:after {
	 top: -4px;
}
 .toggle-menu.active span {
	 background-color: transparent;
	 transition: background 0.2s ease-out;
}
 .toggle-menu.active span:before, .toggle-menu.active span:after {
	 transition: top 0.2s ease-out, transform 0.2s 0.2s ease-out;
}
 .toggle-menu.active span:before {
	 top: 0;
	 transform: rotate3d(0, 0, 1, -45deg);
	 background-color: #111;

}
 .toggle-menu.active span:after {
	 top: 0;
	 transform: rotate3d(0, 0, 1, 45deg);
	 background-color: #111;

}


/* Menu Item Animations  */
#mobilemenu .menu-item {
  opacity: 0;
  transform: translateY(-10px);
  transition: all ease-in-out 300ms;
}

#mobilemenu.open .menu-item:nth-child(n) {
  animation-delay: calc(var(--item-index) * 0.2s);
}

#mobilemenu.open .menu-item {
  animation: menuAnimation 0.5s ease-in-out forwards;
}

#mobilemenu:not(.open) .menu-item {
  animation: reverseMenuAnimation 0.5s ease-in-out forwards;
}

@keyframes menuAnimation {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes reverseMenuAnimation {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-10px);
  }
}


/* Main Menu Sizing Adjustment */

@media (min-width:1200px) and (max-width:1360px) {
	.elementor-nav-menu .elementor-item {
  font-size: 1em !important;
}
}

@media (min-width:1110px) and (max-width:1199px) {
	.elementor-nav-menu .elementor-item {
  font-size: 0.9em !important;
}
}

/* Main Menu Sizing Adjustment */

body.page-template-new-home h2, body.page-template-new-home h4, body.page-template-new-home h3 {color:#fff !important}