.search_layer {
	position: fixed;
	opacity:0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    border-style:solid;
    border-color:#ffffff;
    border-width:30px;
	box-sizing: border-box;
	background: rgba(0,0,0,0);
	visibility:hidden;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
	overflow-y: visible;
	z-index:900; }
.search_called {
	opacity:1;
	border-color:#f2f2f2;
	visibility:visible;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease; }
.search_layer:before {
	background:#323232;
	width:100%;
	height:100%;
	content:' ';
	display:block;
	position:absolute;
	opacity:0.98;
	left:0;
	top:0; }		
.roy_search_call {
	display:inline-block;
	width:auto; }
	.roy_search_call .rs_call_icon {	
		cursor:pointer;
		background:none;
		border:none;
		width: auto;
		height: 24px;
		padding:0;
		display: inline-block;
		text-align: center; }
		.roy_search_call .rs_call_icon:before {
			font-family: "Ionicons";
			font-size:25px;
			line-height: 25px;
			content: "\f4a4";
			font-weight:bold;
            color:#323232;
			display:inline-block;
            -webkit-transition: all 150ms linear;
            -moz-transition: all 150ms linear;
            -o-transition: all 150ms linear;
            transition: all 150ms linear; }
		.roy_search_call .rs_call_icon .word {
            -webkit-transition: all 150ms linear;
            -moz-transition: all 150ms linear;
            -o-transition: all 150ms linear;
            transition: all 150ms linear; }
            @media (max-width: 767px) {
                .roy_search_call {
                    padding-left:4px;
                    padding-right:4px; }
                .roy_search_call .rs_call_icon {
                    padding-left:4px;
                    padding-right:4px; }
            }
	.search_layer.search_called .search_close {
		z-index:901;
		position: absolute;
		top: 0;
		left: 0;
		width:100%;
		height:100%;
		background:none;
		opacity: 1; }	
	.search_layer .search_close {
		opacity: 0;
        -webkit-transition: opacity 0.2s ease;
        -moz-transition: opacity 0.2s ease;
        -o-transition: opacity 0.2s ease;
        transition: opacity 0.2s ease;
	}	
	.search_layer .search_close_icon {
		position:absolute;
		top:60px;
		right:60px;
		cursor:pointer;
		display:inline-block; }
        @media (max-width: 767px) {
            .search_layer .search_close_icon {
                top:30px;
                right:30px;
            }
        }
        @media (max-width: 479px) {
            .search_layer .search_close_icon {
                top:10px;
                right:10px;
            }
        }
	.search_layer .search_close_icon:before {
		content: "\f2d7";
		font-family: "Ionicons";
		font-size:36px;
		font-weight:normal;
		color:#ececec;
		display:inline-block;
		-webkit-transition: all 150ms linear;
		-moz-transition: all 150ms linear;
		-ms-transition: all 150ms linear;
		-o-transition: all 150ms linear;
		transition: all 150ms linear; }
        @media (min-width: 768px) {
            .search_layer .search_close_icon:hover:before {
                -ms-transform: rotate(90deg);
                -webkit-transform: rotate(90deg);
                transform: rotate(90deg); }
        }
        @media (max-width: 479px) {
            .search_layer .search_close_icon:before {
                font-size:22px; }
        }		
	.search_layer .ajax_note {
		font-size:22px;
		font-weight:400;
		color:#ccc;
		position:absolute;
		white-space: nowrap;
		top:10%;
		left: 50%;
		-webkit-transform: translate(-50%,-100%);
		transform: translate(-50%,-100%);
		z-index:901;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -ms-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        opacity:0;	}		
	.search_layer.search_called .ajax_note {
		top:14%;
        opacity:1;	}	
	@media (max-width:767px) {
		.search_layer .ajax_note {
			font-size:18px;	} }
	@media (max-width:479px) {
		.search_layer .ajax_note {
			font-size:14px;	} }
	.search_layer #searchbox {
		z-index:902;
		position: absolute;
		top: 42%;
		left: 50%;
		-webkit-transform: translate(-50%,-100%);
		transform: translate(-50%,-100%);
		width: 60%;
		background:none;
        opacity:0;
        -webkit-transition: top 0.24s ease, opacity 0.18s ease;
        -moz-transition: top 0.24s ease, opacity 0.18s ease;
        -ms-transition: top 0.24s ease, opacity 0.18s ease;
        -o-transition: top 0.24s ease, opacity 0.18s ease;
        transition: top 0.24s ease, opacity 0.18s ease;
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex; }
    .search_layer.search_called #searchbox {
        opacity: 1;
        top: 50%; }
    .search_layer.search_called #searchbox.ajax_top {
        opacity: 1;
        top: 30%; }
        @media (max-width:767px) {
            .search_layer #searchbox {
                width: 73%;
            }
        }
        @media (max-width:479px) {
            .search_layer #searchbox {
                width: 80%;
            }
        }
	.search_layer #searchbox input {
		color: #eeeeee;
		background:none;
		border-style:solid;
		border-color:#777;
		border-width:0 0 3px 0!important;
		border-radius: 0!important;
		float:left;
		height:auto;
		font-size: 28px;
		font-weight: normal;
		padding: 18px 68px 18px 0;
		min-width: 100px; }
	.search_layer #searchbox input:focus {
		color:#ffffff;
		border-color:#e5e5e5; }
	.search_layer .button-search {
		background:none;
		border:none;
		position: absolute;		
		top: 0;
		right: 0;
		width: 40px;
		height: 75px;
		padding:0;
		display: inline-block;
		-webkit-transition: all 150ms linear;
		-moz-transition: all 150ms linear;
		-ms-transition: all 150ms linear;
		-o-transition: all 150ms linear;
		transition: all 150ms linear;
		text-align: right; }
	.search_layer .button-search span:before {
	    font-family: "FontAwesome";
	    font-size: 24px;
	    line-height: 69px;
	    content: "\f002";
	    padding-right: 8px;
	    font-weight: normal;
	    color: #ececec;
	    display: inline-block;
		-webkit-transition: all 150ms linear;
		-moz-transition: all 150ms linear;
		-ms-transition: all 150ms linear;
		-o-transition: all 150ms linear;
		transition: all 150ms linear; }
    .search_layer .button-search.hovercolor span:before {
        color:#ff607c; }
    .search_layer #searchbox .button-search:hover span:before {
        color:#ffffff; }
    @media (max-width:479px) {
        .search_layer #searchbox input {
            font-size: 20px;
            line-height: 25px;
            padding: 10px 50px 10px 0; }
        .search_layer .button-search {
            width: 50px;
            height: 50px;}
        .search_layer .button-search span:before {
			font-family: "FontAwesome";
			content: "\f002";
            font-size:20px;
            line-height: 50px; }
    }
.search_layer input[placeholder],
.search_layer [placeholder],
.search_layer *[placeholder] {
	text-transform: capitalize;
	font-weight: normal;
    color: #aaaaaa; }
.search_layer ::-webkit-input-placeholder {
	text-transform: capitalize;
	font-weight: normal;
    color: #aaaaaa; }
.search_layer :-moz-placeholder { /* Firefox 18- */
	text-transform: capitalize;
	font-weight: normal;
    color: #aaaaaa; }
.search_layer ::-moz-placeholder {  /* Firefox 19+ */
	text-transform: capitalize;
	font-weight: normal;
    color: #aaaaaa; }
.search_layer :-ms-input-placeholder {
	text-transform: capitalize;
	font-weight: normal;
    color: #aaaaaa; }

.ac_results {
	background: none;
	border:none;
	width: 60%!important;
	top:32%!important;
	left:20%!important;
	height:100%!important;
	position:fixed!important;    
	width: calc(60% - 30px)!important;
    margin-left: 15px;
	padding-top:40px; }
@media (min-width: 480px) and (max-width:767px) {
	.search_layer {
		border-width: 16px;
	}
    .ac_results {
		width: calc(70% - 16px)!important;
	    margin-left: 8px;
        top:25%!important;
        left:15%!important; }
}

@media (max-width:479px) {
	.search_layer {
		border-width: 0;
	}
    .ac_results {
		width: calc(80% )!important;
	    margin-left: 0;
        top:26%!important;
        left:10%!important; }
}

.ac_results ul {
	width:100%;
	margin:0 auto;
	height:100%;
	max-height: 40em;
	overflow:hidden; }
@media (max-width:479px) {
    .ac_results ul {
        max-height: 28em; }
}
.ac_odd {
	background:none; }
	.ac_results li {
		position:relative;
		padding: 8px 0;
		border:0px solid #eee;
		font-weight: normal;
		color: #bbbbbb;
		border:2px solid transparent;
		background:none;
		font-size: 14px!important;
		line-height: 44px!important;
		-webkit-transition: padding 150ms linear, color 150ms linear;
		-moz-transition: padding 150ms linear, color 150ms linear;
		-ms-transition: padding 150ms linear, color 150ms linear;
		-o-transition: padding 150ms linear, color 150ms linear;
		transition: padding 150ms linear, color 150ms linear;
		cursor:pointer; }

	.ac_results li:before{
		content:' ';
		display:inline-block;
		background:#ffffff;
		opacity:0.2;
		height:1px;
		width:100%;
		position:absolute;
		left:0;
		bottom:0;
		display:none; }
	.ac_results li strong {
		font-weight:600;
		color: #ffffff; }
    .ac_results li img {
		height:auto;
		max-width:44px;
		max-height:44px;
		margin-right:14px;
		float:left; }
    .ac_results li a {
        color:#dddddd;
        float: right;
        font-style: italic;
        line-height: 44px;
        font-family:"Open Sans", sans-serif; }
    .ac_results li a:hover {
        text-decoration: underline;
        color:#ffffff; }
    @media (max-width: 620px) {
        .ac_results li a {
            display:none;
        }
    }
    .ac_results li:hover, .ac_results li.ac_over {
        padding: 8px 22px 8px 8px;
		border-color:#777;
		background:none;
        color:#ffffff; }
    .ac_results li:hover span, .ac_results li.ac_over span {
        color:#dddddd; }
    .ac_results.ac_hide { opacity:0; visibility: hidden; }

form#searchbox {
  position: relative; }
  form#searchbox label {
    color: #333333; }
  form#searchbox input#search_query_block {
    margin-right: 10px;
    max-width: 222px;
    margin-bottom: 10px;
    display: inline-block;
    float: left; }
  form#searchbox .button.button-small {
    float: left; }
    form#searchbox .button.button-small i {
      margin-right: 0; }
