/*
 *  Store List - v1
 */


/* Loading State */
#store-locations-page { 
	position:relative; /*overflow:hidden;*/ width:100%; background:#f6f7f8 url('/wcsstore/images/BallardDesigns/loaders/loader_spinner.gif') no-repeat center center;
	display:flex; align-items:center; justify-content:center;
 }
#store-locations-page.page-loaded { background-color:transparent; background-image:none; display:block; }
#store-location-page #store-image img { width:100%; height:auto; margin:auto; opacity:.5; }
#store-locations-page #store-locations-list::before { display:none; }
#store-locations-page.page-loaded #store-locations-list::before { display:block!important; }


/* Filters */
#store-list-filters { align-items:end; }
/* No wrap filter labels */
#store-list-filters label { white-space:nowrap; }

/* Store Type Filter Show/Hide Styles */

/* Fix issues with Flex hide/show display block/none - converted to float - for hide/show flitering */
#store-locations-list .state-row { display:block; }
#store-locations-list .state-row .store { flex:none; float:left; }
/* .clear-fix:after */
#store-locations-list .state-row:after { visibility:hidden;display: block; font-size:0; content:" "; clear:both; height:0; }



/* -- Hide/Show Styling -- */

/*
 * Order of inheretance/operation is important here to get hide/show to work - moving the following css to another order could break hide/show
 */

/* - Hide Other Non-Activly Filtered Store Types - */

/* Retail Stores */
#store-locations-list.storetype-retail-store .state-row.outlet,
#store-locations-list.storetype-retail-store .state-row.design-studio,
#store-locations-list.storetype-retail-store .state-row .store.outlet,
#store-locations-list.storetype-retail-store .state-row .store.design-studio,
/* Outlet */
#store-locations-list.storetype-outlet .state-row.retail-store,
#store-locations-list.storetype-outlet .state-row.design-studio,
#store-locations-list.storetype-outlet .state-row .store.retail-store,
#store-locations-list.storetype-outlet .state-row .store.design-studio,
/* Design Studio */
#store-locations-list.storetype-design-studio .state-row.retail-store,
#store-locations-list.storetype-design-studio .state-row.outlet,
#store-locations-list.storetype-design-studio .state-row .store.retail-store,
#store-locations-list.storetype-design-studio .state-row .store.outlet { display:none; }


/* - Show By Store Type - */

/* Retail Stores */
#store-locations-list.storetype-retail-store .state-row.retail-store,
#store-locations-list.storetype-retail-store .state-row .store.retail-store,
/* Outlet */
#store-locations-list.storetype-outlet .state-row.outlet,
#store-locations-list.storetype-outlet .state-row .store.outlet,
/* Design Studio */
#store-locations-list.storetype-design-studio .state-row.design-studio,
#store-locations-list.storetype-design-studio .state-row .store.design-studio { display:block; }


/* Basic Show/Hide - State Level (.hide added at html inline level via JS in "state" sort filter) */
#store-locations-list .state-row.hide,
#store-locations-list .state-row .store.hide  { display:none!important; }



/* -- Store Type Filters -- */

/* Reset Filters Button */
#store-locations-list #button-reset-store-filters { display:none; margin-bottom:3px; font-size:0.875em; }
#store-locations-list #button-reset-store-filters.visible { display:block; } 
#store-locations-list #button-reset-store-filters .icon { max-width:10px; margin:-2px 5px 0 0; }

/* -- SM Layout -- */
.screen-sm-down #store-locations-list #button-reset-store-filters { margin-bottom:1px; }
.screen-sm-down #store-locations-list #button-reset-store-filters .icon { max-width:12px; margin:-2px 0 0 0; }
.screen-sm-down #store-locations-list #button-reset-store-filters span { display:none; }
.screen-sm-down #store-list-filters label { font-size:.8rem; }
.screen-sm-down #store-list-filters select { font-size:.8rem; }

/* -- XS Layout -- */
.screen-xs #store-list-filters .col-5 { width:100%; margin:0.25rem 0; }
.screen-xs #button-reset-store-filters-container { width: 100%; margin: 0; padding: 0; }
.screen-xs #store-locations-list #button-reset-store-filters { width:100%; margin-top: 0.75rem; }
.screen-xs #store-locations-list #button-reset-store-filters span { display:inline-block; }

/* No Results Text */
.screen-xs #store-locations-list::before { top:auto; bottom:11vh; }


/* No Results Messaging */
#store-locations-list { min-height:500px; }
#store-locations-list .state-row { position:relative; z-index:2; background-color:#fff; min-height:190px; }
#store-locations-list { position:relative; }
#store-locations-list::before { content:'No Results'; position:absolute; top:260px; z-index:1; left:calc(50% - 40px); width:80px; }

/* Store List Styles */
@media(min-width:600px) and (max-width:1024px){
	.desktop #store-locations-list .state-row, #store-locations-list .state-row .store { min-height:200px; }
}

/* State Title */
#store-locations-list .state-row h2 { font:300 34px/1em 'Montserrat'; text-transform:uppercase; letter-spacing:0.1em; margin:30px 0 0; }
#store-locations-list .state-row hr { margin-bottom:20px; }
#store-locations-list .state-row .store h3 { font:16px/1em 'Montserrat'; text-transform:uppercase; letter-spacing:0em; margin-bottom:15px; }
#store-locations-list .state-row .store h3 .location-special-message-text { display:block; text-transform:uppercase; color:rgb(0, 164, 194); font-size:14px; }
#store-locations-list .state-row .store .store-type-text { font-family:'Cormorant'; letter-spacing:0; text-transform:none; font-size:1.5em; font-style:italic; }
#store-locations-list .state-row .store p { font-size:14px; }
#store-locations-list .state-row .store a { font-weight:800!important; color:#333!important; }
#store-locations-list .state-row .store .more-link { text-transform:uppercase; letter-spacing:0em; margin-top:10px; display:block; }



