/*
AJAX SEARCH PRO FOR WORDPRESS PLUGIN BASIC CSS
*/

/*
CONTENTS:
    0. ANIMATIONS AND TRANSITIONS
	1. GENERICS AND CSS RESET - Some basic CSS classes and reset
	2. INPUT BOX - input box and form layout
	3. ICONS - loading, closing, magnifier, settings icons
	4. RESULT STYLES
	    4.1 GENERAL RESULT STYLES
	    4.2 VERTICAL RESULT STYLES
	    4.3 HORIZONTAL RESULT STYLES
	    4.4 ISOTOPIC RESULT STYLES
	    4.5 POLAROID RESULT STYLES
	5. SETTINGS STYLES
	6. CUSTOM FIELD FIELDSETS
	7. ARROW BOX
	8. COLUMN STYLES
	9. NO-UI DRAGGER STYLES
	10. SUGGESTED KEYWORDS
    11. JQUERY UI STYLES
    12. AUTOCOMPLETE STYLES
    13. RTL SPECIFIC STYLES AND CHANGES
    14. SELECT2 SCRIPT STYLES
    15. MISC


SHORTHAND CLASSES
    .asp_w -> Main class, each element is a descendant
    .asp_m .asp_m_1 .asp_m_1_1 -> Main search box class, with instance ID, with instance and count ID
    .asp_s .asp_s_1 .asp_s_1_1 -> Settings box class, with instance ID, with instance and count ID
    .asp_r .asp_r_1 .asp_r_1_1 -> Results box class, with instance ID, with instance and count ID
    .asp_sb -> Block settings layout
    .asp_rb -> Block results layout
*/



/*  *******************************************************************************************************************\
    0. ANIMATIONS AND TRANSITIONS & FONTS
\**********************************************************************************************************************/
@keyframes aspAnFadeIn {
    0%   {opacity: 0;}
    50%  {opacity: 0.6;}
    100% {opacity: 1;}
}

@-webkit-keyframes aspAnFadeIn {
    0%   {opacity: 0;}
    50%  {opacity: 0.6;}
    100% {opacity: 1;}
}

@keyframes aspAnFadeOut {
    0%   {opacity: 1;}
    50%  {opacity: 0.6;}
    100% {opacity: 0;}
}

@-webkit-keyframes aspAnFadeOut {
    0%   {opacity: 1;}
    50%  {opacity: 0.6;}
    100% {opacity: 0;}
}

@keyframes aspAnFadeInDrop {
    0%   {opacity: 0; transform: translate(0, -50px);}
    100% {opacity: 1; transform: translate(0, 0);}
}

@-webkit-keyframes aspAnFadeInDrop {
    0%   {opacity: 0; transform: translate(0, -50px); -webkit-transform: translate(0, -50px);}
    100% {opacity: 1; transform: translate(0, 0); -webkit-transform: translate(0, 0);}
}

@keyframes aspAnFadeOutDrop {
    0% {opacity: 1; transform: translate(0, 0); -webkit-transform: translate(0, 0);}
    100%   {opacity: 0; transform: translate(0, -50px); -webkit-transform: translate(0, -50px);}
}

@-webkit-keyframes aspAnFadeOutDrop {
    0% {opacity: 1; transform: translate(0, 0); -webkit-transform: translate(0, 0);}
    100%   {opacity: 0; transform: translate(0, -50px); -webkit-transform: translate(0, -50px);}
}

div.ajaxsearchpro.asp_an_fadeIn,
div.ajaxsearchpro.asp_an_fadeOut,
div.ajaxsearchpro.asp_an_fadeInDrop,
div.ajaxsearchpro.asp_an_fadeOutDrop {
    -webkit-animation-duration: 100ms;
    animation-duration: 100ms;
    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
}

.asp_an_fadeIn,
div.ajaxsearchpro.asp_an_fadeIn {
    animation-name: aspAnFadeIn;
    -webkit-animation-name: aspAnFadeIn;
}

.asp_an_fadeOut,
div.ajaxsearchpro.asp_an_fadeOut {
    animation-name: aspAnFadeOut;
    -webkit-animation-name: aspAnFadeOut;
}

div.ajaxsearchpro.asp_an_fadeInDrop {
    animation-name: aspAnFadeInDrop;
    -webkit-animation-name: aspAnFadeInDrop;
}

div.ajaxsearchpro.asp_an_fadeOutDrop {
    animation-name: aspAnFadeOutDrop;
    -webkit-animation-name: aspAnFadeOutDrop;
}

div.ajaxsearchpro.asp_main_container {
    transition: width 130ms linear;
    -webkit-transition: width 130ms linear;
}


/*  *******************************************************************************************************************\
    1. GENERIC CSS RESET
\**********************************************************************************************************************/

asp_w_container,
div.asp_w.ajaxsearchpro,
div.asp_w.asp_r,
div.asp_w.asp_s,
div.asp_w.asp_sb,
div.asp_w.asp_sb * {
    -webkit-box-sizing: content-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: content-box; /* Firefox, other Gecko */
    -ms-box-sizing: content-box;
    -o-box-sizing: content-box;
    box-sizing: content-box;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    text-transform: none;
    text-shadow: none;
    box-shadow: none;
    text-decoration: none;
    text-align: left;
    text-indent: initial;
    letter-spacing: normal;
	font-display: swap;
}

div.asp_w_container div[id*=__original__] {
	display: none !important;
}

div.asp_w.ajaxsearchpro {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

div.asp_w.asp_r,
div.asp_w.asp_r * {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

div.asp_w.ajaxsearchpro input[type=text]::-ms-clear {  display: none; width : 0; height: 0; }
div.asp_w.ajaxsearchpro input[type=text]::-ms-reveal {  display: none; width : 0; height: 0; }

div.asp_w.ajaxsearchpro input[type="search"]::-webkit-search-decoration,
div.asp_w.ajaxsearchpro input[type="search"]::-webkit-search-cancel-button,
div.asp_w.ajaxsearchpro input[type="search"]::-webkit-search-results-button,
div.asp_w.ajaxsearchpro input[type="search"]::-webkit-search-results-decoration { display: none; }

div.asp_w.ajaxsearchpro input[type="search"] {
	appearance: auto !important;
	-webkit-appearance: none !important;
}

.clear {
    clear: both;
}

/* This clear class is bulletproof */
.asp_clear {
    display: block !important;
    clear: both !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: 0 !important;
}

.hiddend {
    display: none !important;
}

div.asp_w.ajaxsearchpro {
    width: 100%;
    height: auto;
    border-radius: 0;
    background: rgba(255, 255, 255, 0);
    overflow: hidden;
}

div.asp_w.ajaxsearchpro.asp_non_compact {
    min-width: 200px;
}

#asp_absolute_overlay {
    width: 0;
    height: 0;
    position: fixed;
    background: rgba(255, 255, 255, 0.5);
    top: 0;
    left: 0;
    display: block;
    z-index: 0;
    opacity: 0;
    transition: opacity 200ms linear;
    -webkit-transition: opacity 200ms linear;
}


/*  *******************************************************************************************************************\
    2. INPUT FORM and BOX
\**********************************************************************************************************************/

div.asp_m.ajaxsearchpro .proinput input:before,
div.asp_m.ajaxsearchpro .proinput input:after,
div.asp_m.ajaxsearchpro .proinput form:before,
div.asp_m.ajaxsearchpro .proinput form:after {
    display: none;
}

div.asp_w.ajaxsearchpro textarea:focus,
div.asp_w.ajaxsearchpro input:focus {
	outline: none;
}

/* Remove IE X from the input */
div.asp_m.ajaxsearchpro .probox .proinput input::-ms-clear {
    display: none;
}

div.asp_m.ajaxsearchpro .probox {
    width: auto;
    border-radius: 5px;
    background: #FFF;
    overflow: hidden;
    border: 1px solid #FFF;
    box-shadow: 1px 0 3px #CCCCCC inset;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    direction: ltr;
    align-items: stretch;
	isolation: isolate; /* Safari bleeding background corner with border radius fix */
}

div.asp_m.ajaxsearchpro .probox .proinput {
    width: 1px;
    height: 100%;
    float: left;
    box-shadow: none;
    position: relative;
    flex: 1 1 auto;    /* Let it grow, shrink, auto basis*/
    -webkit-flex: 1 1 auto; /* Let it grow, shrink, auto basis*/
    z-index: 0;
}

div.asp_m.ajaxsearchpro .probox .proinput form {
    height: 100%;
    /* some themes like to add un-removable margin and padding.. */
    margin: 0 !important;
    padding: 0 !important;
	display: block !important;
	max-width: unset !important;
}

div.asp_m.ajaxsearchpro .probox .proinput input {
    height: 100%;
    width: 100%;
    border: 0px;
    background: transparent;
    box-shadow: none;
    padding: 0;
    left: 0;
    padding-top: 2px;
    min-width: 120px;
	min-height: unset;
	max-height: unset;
}

div.asp_m.ajaxsearchpro .probox .proinput input.autocomplete {
    border: 0px;
    background: transparent;
    width: 100%;
    box-shadow: none;
    margin: 0;
    padding: 0;
    left: 0;
}

div.asp_m.ajaxsearchpro .probox .proinput.iepaddingfix {
    padding-top: 0;
}


/*  *******************************************************************************************************************\
    3. ICONS - loading, closing, magnifier, settings icons
\**********************************************************************************************************************/

div.asp_m.ajaxsearchpro .probox .proloading,
div.asp_m.ajaxsearchpro .probox .proclose,
div.asp_m.ajaxsearchpro .probox .promagnifier,
div.asp_m.ajaxsearchpro .probox .prosettings {
    width: 20px;
    height: 20px;
	min-width: unset;
	min-height: unset;
    background: none;
    background-size: 20px 20px;
    float: right;
    box-shadow: none;
    margin: 0;
    padding: 0;
    z-index: 1;
}

div.asp_m.ajaxsearchpro button.promagnifier:focus-visible {
	box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.4);
}

div.asp_m.ajaxsearchpro .probox .proloading,
div.asp_m.ajaxsearchpro .probox .proclose {
    background-position: center center;
    display: none;
    background-size: auto;
    background-repeat: no-repeat;
    background-color: transparent;
}

div.asp_m.ajaxsearchpro .probox .proloading {
    padding: 2px;
    box-sizing: border-box;
}

div.asp_m.ajaxsearchpro .probox .proclose {
    position: relative;
    cursor: pointer;
    z-index: 2;
}

div.asp_m.ajaxsearchpro .probox .promagnifier .innericon,
div.asp_m.ajaxsearchpro .probox .prosettings .innericon,
div.asp_m.ajaxsearchpro .probox .proclose .innericon {
    background-size: 20px 20px;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: transparent;
    width: 100%;
    height: 100%;
    line-height: initial;
    text-align: center;
    overflow: hidden;
}

div.asp_m.ajaxsearchpro .probox .promagnifier .innericon svg,
div.asp_m.ajaxsearchpro .probox .prosettings .innericon svg,
div.asp_m.ajaxsearchpro .probox .proloading svg {
    height: 100%;
    width: 22px;
    vertical-align: baseline;
    display: inline-block;
}

div.asp_m.ajaxsearchpro .probox .proclose svg  {
    background: #333333;
    position: absolute;
    top: 50%;
    width: 20px;
    height: 20px;
    left: 50%;
    fill: #fefefe;
    box-sizing: border-box;
    box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.9);
}


/*  *******************************************************************************************************************\
    4. RESULT STYLES
\**********************************************************************************************************************/


/*      4.1 GENERAL RESULT STYLES
\**********************************************************************************************************************/

.opacityOne {
    opacity: 1;
}

.opacityZero {
    opacity: 0;
}

div.asp_w.asp_s [disabled].noUi-connect,
div.asp_w.asp_s [disabled] .noUi-connect {
    background: #B8B8B8;
}
div.asp_w.asp_s [disabled] .noUi-handle {
    cursor: not-allowed;
}

div.asp_w.asp_r p.showmore {
    display: none;
    margin: 0;
}
div.asp_w.asp_r.asp_more_res_loading p.showmore a,
div.asp_w.asp_r.asp_more_res_loading p.showmore a span{
    color: transparent !important;
}

@-webkit-keyframes shm-rot-simple {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        opacity: 1;
    }
    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
        opacity: 0.85;
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
        opacity: 1;
    }
}

@keyframes shm-rot-simple {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        opacity: 1;
    }
    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
        opacity: 0.85;
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
        opacity: 1;
    }
}
div.asp_w.asp_r div.asp_showmore_container {
    position: relative;
}
div.asp_w.asp_r. div.asp_moreres_loader {
    display: none;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.2);
}
div.asp_w.asp_r.asp_more_res_loading div.asp_moreres_loader {
    display: block !important;
}
div.asp_w.asp_r div.asp_moreres_loader-inner {
    height: 24px;
    width: 24px;
    animation: shm-rot-simple 0.8s infinite linear;
    -webkit-animation: shm-rot-simple 0.8s infinite linear;
    border: 4px solid #353535;
    border-right-color: transparent;
    border-radius: 50%;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    margin: -12px auto auto -12px;
    left: 50%;
}

div.asp_hidden_data,
div.asp_hidden_data * {
    display: none;
}

div.asp_w.asp_r {
    display: none;
}

div.asp_w.asp_r * {
    text-decoration: none;
    text-shadow: none;
}

div.asp_w.asp_r .results {
    overflow: hidden;
    width: auto;
    height: 0;
    margin: 0;
    padding: 0;
}

div.asp_w.asp_r .asp_nores {
	display: flex;
	flex-wrap: wrap;
    gap: 8px;
    overflow: hidden;
    width: auto;
    height: auto;
	position: relative;
	z-index: 2;
}

div.asp_w.asp_r .results .item {
    overflow: hidden;
    width: auto;
    margin: 0;
    padding: 3px;
    position: relative;
    background: #f4f4f4;
    border-left: 1px solid rgba(255, 255, 255, 0.6);
    border-right: 1px solid rgba(255, 255, 255, 0.4);
}

div.asp_w.asp_r .results .item,
div.asp_w.asp_r .results .asp_group_header {
    animation-delay: 0s;
    animation-duration: 0.5s;
    animation-fill-mode: both;
    animation-timing-function: ease;
    backface-visibility: hidden;
    -webkit-animation-delay: 0s;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-fill-mode: both;
    -webkit-animation-timing-function: ease;
    -webkit-backface-visibility: hidden;
}

div.asp_w.asp_r .results .item .asp_image {
    overflow: hidden;
    background: transparent;
    padding: 0;
    float: left;
    background-position: center;
    background-size: cover;
    position: relative;
}

div.asp_w.asp_r .results .asp_image canvas {
    display: none;
}

div.asp_w.asp_r .results .asp_image .asp_item_canvas {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: block;
    opacity: 1;
    background-position: inherit;
    background-size: inherit;
    transition: opacity 0.5s;
}

div.asp_w.asp_r .results .item:hover .asp_image .asp_item_canvas,
div.asp_w.asp_r .results figure:hover .asp_image .asp_item_canvas{
    opacity: 0;
}

div.asp_w.asp_r a.asp_res_image_url,
div.asp_w.asp_r a.asp_res_image_url:hover,
div.asp_w.asp_r a.asp_res_image_url:focus,
div.asp_w.asp_r a.asp_res_image_url:active {
    box-shadow: none !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline !important;
}

div.asp_w.asp_r .results .item .asp_image_auto {
    width: auto !important;
    height: auto !important;
}

div.asp_w.asp_r .results .item .asp_image img {
    width: 100%;
    height: 100%;
}

div.asp_w.asp_r .results a span.overlap {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
}

div.asp_w.asp_r .resdrg {
    height: auto;
}

div.asp_w.ajaxsearchpro .asp_results_group {
    margin: 10px 0 0 0;
}

div.asp_w.ajaxsearchpro .asp_results_group:first-of-type {
    margin: 0 !important;
}


/*      4.2 VERTICAL RESULT STYLES
\**********************************************************************************************************************/
/*[vertical]*/
div.asp_w.asp_r.vertical .results .item:first-child {
    border-radius: 0;
}

div.asp_w.asp_r.vertical .results .item:last-child {
    border-radius: 0;
    margin-bottom: 0;
}

div.asp_w.asp_r.vertical .results .item:last-child:after {
    height: 0;
    margin: 0;
    width: 0;
}
/*[vertical]*/

/*      4.3 HORIZONTAL RESULT STYLES
\**********************************************************************************************************************/


/*      4.4 ISOTOPIC RESULT STYLES, ISOTOPIC NAVIGATION
\**********************************************************************************************************************/


/*      4.4 POLAROID RESULT STYLES
\**********************************************************************************************************************/


/*  *******************************************************************************************************************\
    5. SETTINGS STYLES
\**********************************************************************************************************************/
/*[settings]*/
div.asp_w.asp_s.searchsettings {
    width: auto;
    height: auto;
    position: absolute;
    display: none;
    z-index: 11001;
    border-radius: 0 0 3px 3px;
    visibility: hidden;
    opacity: 0;
    overflow: visible;
}

div.asp_w.asp_sb.searchsettings {
    display: none;
    visibility: hidden;
    direction: ltr;
    overflow: visible;
    position: relative;
    z-index: 1;
}

div.asp_w.asp_sb.searchsettings .asp_sett_scroll::-webkit-scrollbar-thumb {
	background: transparent;
	border-radius: 5px;
	border: none;
}

div.asp_w.asp_s.searchsettings form,
div.asp_w.asp_sb.searchsettings form {
    display: flex;
    flex-wrap: wrap;
    /* some themes like to add un-removable margin and padding.. */
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}

div.asp_w.asp_s.searchsettings .asp_option_inner,
div.asp_w.asp_sb.searchsettings .asp_option_inner,
div.asp_w.asp_sb.searchsettings input[type='text']{
    margin: 2px 10px 0 10px;
    *padding-bottom: 10px;
}

div.asp_w.asp_s.searchsettings input[type='text']:not(.asp_select2-search__field),
div.asp_w.asp_sb.searchsettings input[type='text']:not(.asp_select2-search__field) {
    width: 86% !important;
    padding: 8px 6px !important;
    margin: 0 0 0 10px !important;
    background-color: #FAFAFA !important;
    font-size: 13px;
    border: none !important;
    line-height: 17px;
    height: 20px;
}

div.asp_w.asp_s.searchsettings.ie78 .asp_option_inner,
div.asp_w.asp_sb.searchsettings.ie78 .asp_option_inner {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

div.asp_w.asp_s.searchsettings div.asp_option_label,
div.asp_w.asp_sb.searchsettings div.asp_option_label {
    font-size: 14px;
    line-height: 20px !important;
    margin: 0;
    width: 150px;
    text-shadow: none;
    padding: 0;
    min-height: 20px;
    border: none;
    background: transparent;
    float: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

div.asp_w.asp_s.searchsettings .asp_label,
div.asp_w.asp_sb.searchsettings .asp_label {
    line-height: 24px !important;
    vertical-align: middle;
    display: inline-block;
    cursor: pointer;
}

div.asp_w.asp_s.searchsettings input[type=radio],
div.asp_w.asp_sb.searchsettings input[type=radio] {
    vertical-align: middle;
    margin: 0 6px 0 17px;
    display: inline-block;
    appearance: normal;
    -moz-appearance: normal; /* Firefox */
    -webkit-appearance: radio; /* Safari and Chrome */
}


/* SQUARED THREE */
div.asp_w.asp_s.searchsettings .asp_option_inner input[type=checkbox],
div.asp_w.asp_sb.searchsettings .asp_option_inner input[type=checkbox] {
    display: none !important;
}

div.asp_w.asp_s.searchsettings.ie78 .asp_option_inner input[type=checkbox],
div.asp_w.asp_sb.searchsettings.ie78 .asp_option_inner input[type=checkbox]{
    display: block;
}

div.asp_w.asp_s.searchsettings.ie78 div.asp_option_label,
div.asp_w.asp_sb.searchsettings.ie78 div.asp_option_label{
    float: right !important;
}

div.asp_w.asp_s.searchsettings .asp_option_inner,
div.asp_w.asp_sb.searchsettings .asp_option_inner {
    width: 17px;
    height: 17px;
    position: relative;
    flex-grow: 0;
    -webkit-flex-grow: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
}

div.asp_w.asp_sb.searchsettings .asp_option_inner {
    border-radius: 3px;
    background: rgb(66, 66, 66);
    box-shadow: none;
}

div.asp_w.asp_s.searchsettings .asp_option_inner .asp_option_checkbox,
div.asp_w.asp_sb.searchsettings .asp_option_inner .asp_option_checkbox {
    cursor: pointer;
    position: absolute;
    width: 17px;
    height: 17px;
    top: 0;
    padding: 0;
    border-radius: 2px;
    box-shadow: none;
    font-size: 0px !important;
    color: rgba(0, 0, 0, 0);
}

div.asp_w.asp_s.searchsettings.ie78 .asp_option_inner .asp_option_checkbox,
div.asp_w.asp_sb.searchsettings.ie78 .asp_option_inner .asp_option_checkbox {
    display: none;
}

div.asp_w.asp_s.searchsettings .asp_option_inner .asp_option_checkbox:before,
div.asp_w.asp_sb.searchsettings .asp_option_inner .asp_option_checkbox:before{
    display: none !important;
}

div.asp_w.asp_s.searchsettings .asp_option_inner .asp_option_checkbox:after,
div.asp_w.asp_sb.searchsettings .asp_option_inner .asp_option_checkbox:after{
    opacity: 0;
    font-family: 'asppsicons2';
    content: "\e800";
    background: transparent;
    border-top: none;
    border-right: none;
    box-sizing: content-box;
    height: 100%;
    width: 100%;
    padding: 0 !important;
    position: absolute;
    top: 0;
    left: 0;
}

div.asp_w.asp_s.searchsettings.ie78 .asp_option_inner .asp_option_checkbox:after,
div.asp_w.asp_sb.searchsettings.ie78 .asp_option_inner .asp_option_checkbox:after{
    display: none;
}

div.asp_w.asp_s.searchsettings .asp_option_inner .asp_option_checkbox:hover::after,
div.asp_w.asp_sb.searchsettings .asp_option_inner .asp_option_checkbox:hover::after{
    opacity: 0.3;
}

div.asp_w.asp_s.searchsettings .asp_option_inner input[type=checkbox]:checked ~ div:after,
div.asp_w.asp_sb.searchsettings .asp_option_inner input[type=checkbox]:checked ~ div:after {
    opacity: 1;
}

/* foundation.min.js compatibility */
div.asp_w.asp_sb.searchsettings span.checked ~ div:after,
div.asp_w.asp_s.searchsettings span.checked ~ div:after {
    opacity: 1 !important;
}

div.asp_w.asp_s.searchsettings fieldset,
div.asp_w.asp_sb.searchsettings fieldset {
    position: relative;
    float: left;
}

div.asp_w.asp_s.searchsettings fieldset,
div.asp_w.asp_sb.searchsettings fieldset {
    background: transparent;
    font-size: 0.9em;
    /* some themes like to add un-removable margin and padding.. */
    margin: 12px 0 0 !important;
    padding: 0 !important;
    width: 200px;
    min-width: 200px;
}
div.asp_w.asp_sb.searchsettings fieldset:last-child {
    margin: 5px 0 0 !important;
}

div.asp_w.asp_sb.searchsettings fieldset {
    margin: 10px 0 0;
}

div.asp_w.asp_sb.searchsettings fieldset legend {
    padding: 0 0 0 10px;
    margin: 0;
    font-weight: normal;
    font-size: 13px;
}

div.asp_w.asp_sb.searchsettings .asp_option,
div.asp_w.asp_s.searchsettings .asp_option {
    display: flex;
    flex-direction: row;
    -webkit-flex-direction: row;
    align-items: flex-start;
    margin: 0 0 10px 0;
    cursor: pointer;
}

div.asp_w.asp_sb.searchsettings .asp_option:focus,
div.asp_w.asp_s.searchsettings .asp_option:focus {
	outline: none;
}

div.asp_w.asp_sb.searchsettings .asp_option:focus-visible,
div.asp_w.asp_s.searchsettings .asp_option:focus-visible {
	outline-style: auto;
}

div.asp_w.asp_s.searchsettings .asp_option.asp-o-last,
div.asp_w.asp_s.searchsettings .asp_option:last-child {
    margin-bottom: 0;
}

div.asp_w.asp_s.searchsettings fieldset .asp_option,
div.asp_w.asp_s.searchsettings fieldset .asp_option_cat,
div.asp_w.asp_sb.searchsettings fieldset .asp_option,
div.asp_w.asp_sb.searchsettings fieldset .asp_option_cat {
    width: auto;
    max-width: none;
}

div.asp_w.asp_s.searchsettings fieldset .asp_option_cat_level-1,
div.asp_w.asp_sb.searchsettings fieldset .asp_option_cat_level-1 {
    margin-left: 12px;
}

div.asp_w.asp_s.searchsettings fieldset .asp_option_cat_level-2,
div.asp_w.asp_sb.searchsettings fieldset .asp_option_cat_level-2 {
    margin-left: 24px;
}

div.asp_w.asp_s.searchsettings fieldset .asp_option_cat_level-3,
div.asp_w.asp_sb.searchsettings fieldset .asp_option_cat_level-3 {
    margin-left: 36px;
}

div.asp_w.asp_s.searchsettings fieldset div.asp_option_label,
div.asp_w.asp_sb.searchsettings fieldset div.asp_option_label {
    width: 70%;
    display: block;
}

div.asp_w.asp_s.searchsettings fieldset div.asp_option_label {
    width: auto;
    display: block;
    box-sizing: border-box;
}

div.asp_w.asp_s.searchsettings fieldset .asp_option_cat_level-2 div.asp_option_label {
    padding-right: 12px;
}

div.asp_w.asp_s.searchsettings fieldset .asp_option_cat_level-3 div.asp_option_label {
    padding-right: 24px;
}

div.asp_w.asp_s select,
div.asp_w.asp_sb select {
    width: 100%;
    max-width: 100%;
    border-radius: 0;
    padding: 5px !important;
    background: #f9f9f9;
    background-clip: padding-box;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin: 0;
    border: none;
    color: #111;
    margin-bottom: 0px !important;
    box-sizing: border-box;
    line-height: initial;
    outline: none !important;
    font-family: Roboto, Helvetica;
    font-size: 14px;
    height: 34px;
    min-height: unset !important;
}

div.asp_w.asp_s select[multiple],
div.asp_w.asp_sb select[multiple] {
    background: #ffffff;
}

div.asp_w.asp_s select:not([multiple]),
div.asp_w.asp_sb select:not([multiple]) {
    overflow: hidden !important;
}

div.asp_w.asp_s .asp-nr-container,
div.asp_w.asp_sb .asp-nr-container {
	display: flex;
	gap: 8px;
	justify-content: space-between;
}

/*  *******************************************************************************************************************\
    6. CUSTOM FIELD FIELDSETS
\**********************************************************************************************************************/

div.ajaxsearchpro.searchsettings  fieldset.asp_custom_f {
	margin-top: 9px;
}

/* Give the legend elements some margin... */
div.ajaxsearchpro.searchsettings  fieldset legend {
	margin-bottom: 8px !important;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* .. but exclude some cases where checkboxes are presented */
div.ajaxsearchpro.searchsettings  fieldset legend + div.asp_option_inner {
	margin-top: 0px !important;
}
div.ajaxsearchpro.searchsettings .asp_sett_scroll > .asp_option_cat:first-child > .asp_option_inner {
	margin-top: 0px !important;
}

div.ajaxsearchpro.searchsettings  fieldset .asp_select_single,
div.ajaxsearchpro.searchsettings  fieldset .asp_select_multiple {
	padding: 0 10px;
}

/*  *******************************************************************************************************************\
    7. ARROW BOX
\**********************************************************************************************************************/
.asp_arrow_box {
	position: absolute;
	background: #444;
	padding: 12px;
	color: white;
	border-radius: 4px;
	font-size: 14px;
	max-width: 240px;
	display: none;
	z-index: 99999999999999999;
}
.asp_arrow_box:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: transparent;
	border-top-color: #444;
	border-width: 6px;
	margin-left: -6px;
}

.asp_arrow_box.asp_arrow_box_bottom:after {
	bottom: 100%;
	top: unset;
	border-bottom-color: #444;
	border-top-color: transparent;
}
/*[settings]*/

/*  *******************************************************************************************************************\
    8. COLUMN STYLES
\**********************************************************************************************************************/

.asp_two_column {
    margin: 8px 0 12px 0;
}

.asp_two_column .asp_two_column_first,
.asp_two_column .asp_two_column_last {
    width: 48%;
    padding: 1% 2% 1% 0;
    float: left;
    box-sizing: content-box;
}

.asp_two_column .asp_two_column_last {
    padding: 1% 0% 1% 2%;
}

.asp_shortcodes_container {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -10px 0 12px -10px;
    box-sizing: border-box;
}

.asp_shortcodes_container .asp_shortcode_column {
    -webkit-flex-grow: 0;
    flex-grow: 0;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    min-width: 120px;
    padding: 10px 0 0 10px;
    flex-basis: 33%;
    -webkit-flex-basis: 33%;
    box-sizing: border-box;
}

/*  *******************************************************************************************************************\
    9. NO-UI DRAGGER STYLES
\**********************************************************************************************************************/


/*  *******************************************************************************************************************\
    10. SUGGESTED KEYWORDS
\**********************************************************************************************************************/

p.asp-try {
    color: #555;
    font-size: 14px;
    margin-top: 5px;
    line-height: 28px;
    font-weight: 300;
    visibility: hidden;
}

p.asp-try a {
    color: #FFB556;
    margin-left: 10px;
    cursor: pointer;
    display: inline-block;
}

/*  *******************************************************************************************************************\
    11. DATEPICKER STYLES
\**********************************************************************************************************************/


/*  *******************************************************************************************************************\
    12. AUTOCOMPLETE STYLES
\**********************************************************************************************************************/
/*[autocomplete]*/
.asp_ac_autocomplete,
.asp_ac_autocomplete div,
.asp_ac_autocomplete span{
    /*	-moz-box-sizing: border-box !important;
        box-sizing: border-box !important;*/
}

.asp_ac_autocomplete {
    display:inline;
    position:relative;
    word-spacing: normal;
    text-transform: none;
    text-indent: 0px;
    text-shadow: none;
    text-align: start;
}

.asp_ac_autocomplete .asp_ac_autocomplete_dropdown {
    position:absolute;
    border: 1px solid #ccc;
    border-top-color: #d9d9d9;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    cursor: default;
    display:none;
    z-index: 1001;
    margin-top:-1px;
    background-color:#fff;
    min-width:100%;
    overflow:auto;
}
.asp_ac_autocomplete .asp_ac_autocomplete_hint {
    position:absolute;
    z-index:1;
    color:#ccc !important;
    -webkit-text-fill-color:#ccc !important;
    text-fill-color:#ccc  !important;
    overflow:hidden !important;
    white-space: pre  !important;
}

.asp_ac_autocomplete .asp_ac_autocomplete_hint span {
    color:transparent;
    opacity: 0.0;
}

.asp_ac_autocomplete .asp_ac_autocomplete_dropdown > div{
    background:#fff;
    white-space: nowrap;
    cursor: pointer;
    line-height: 1.5em;
    padding: 2px 0px 2px 0px;
}
.asp_ac_autocomplete .asp_ac_autocomplete_dropdown > div.active{
    background: #0097CF;
    color: #FFFFFF;
}
/*[autocomplete]*/

/*  *******************************************************************************************************************\
    13. RTL SPECIFIC STYLES AND CHANGES
\**********************************************************************************************************************/
.rtl .asp_content,
.rtl .asp_nores,
.rtl .asp_content *,
.rtl .asp_nores *,
.rtl .searchsettings form {
    text-align: right !important;
    direction: rtl !important;
}

.rtl .asp_nores >* {
    display: inline-block;
}

.rtl .searchsettings .asp_option  {
    flex-direction: row-reverse !important;
    -webkit-flex-direction: row-reverse !important;
}

.rtl .asp_option {
    direction: ltr; /* Needs to stay like this */
}

.rtl .asp_label,
.rtl .asp_option div.asp_option_label {
    text-align: right !important;
}

.rtl .asp_label {
    max-width: 1000px !important;
    width: 100%;
    direction: rtl !important;
}

.rtl .asp_label input[type=radio] {
    margin: 0 0 0 6px !important;
}

.rtl .asp_option_cat_level-0 div.asp_option_label {
    font-weight: bold !important;
}

.rtl fieldset .asp_option_cat_level-1 {
    margin-right: 12px !important;
    margin-left: 0;
}

.rtl fieldset .asp_option_cat_level-2 {
    margin-right: 24px !important;
    margin-left: 0;
}

.rtl fieldset .asp_option_cat_level-3 {
    margin-right: 36px !important;
    margin-left: 0;
}

.rtl .searchsettings legend {
    text-align: right !important;
    display: block;
    width: 100%;
}


.rtl .searchsettings input[type=text],
.rtl .searchsettings select {
    direction: rtl !important;
    text-align: right !important;
}

.rtl div.asp_w.asp_s.searchsettings form,
.rtl div.asp_w.asp_sb.searchsettings form {
    flex-direction: row-reverse !important;
}

.rtl div.horizontal.asp_r div.item {
    float: right !important;
}

.rtl p.asp-try {
    direction: rtl;
    text-align: right;
    margin-right: 10px;
    width: auto !important;
}

/*  *******************************************************************************************************************\
    14. SELECT2 SCRIPT STYLES
\**********************************************************************************************************************/


/*  *******************************************************************************************************************\
    15. Misc
\**********************************************************************************************************************/
.asp_elementor_nores {
    text-align: center;
}

.elementor-sticky__spacer .asp_w,
.elementor-sticky__spacer .asp-try {
    visibility: hidden !important;
    opacity: 0 !important;
    z-index: -1 !important;
}

