/* =========================================================
 Storemapper / Search Results — Cleaned Styles
 Grouped: Layout • Card • Ratings/Hours • Contact • Reviews • Map Popup
 ========================================================= */

/* ---------- Layout / Height ---------- */

/* Adjust if you have a fixed header;
 set to 0 if not */
:root {
 --header-h: 72px;
 
}


/* Make the Storemapper section fill ~90% viewport minus header */
#storemapper {
 
 min-height: calc(90dvh - var(--header-h));
 

}


/* Map column should stretch to container height */
#storemapper .strmpr-map,
#storemapper .strmpr-map > div, /* inner wrapper */
#storemapper .gm-style {
 /* Google map root */
 height: 100% !important;
 
 min-height: 100% !important;
 

}


/* Left results column scrolls within available height */
#storemapper-results,
#storemapper .strmpr-search-results-wrapper {
 
 max-height: calc(90dvh - var(--header-h));
 
 overflow-y: auto;
 
 -webkit-overflow-scrolling: touch;
 
 box-sizing: border-box;
 

}


/* Fallback for browsers without dvh */
@supports not (height: 100dvh) {
 
 #storemapper {
 min-height: calc(90vh - var(--header-h));
 
}

 #storemapper-results,
 #storemapper .strmpr-search-results-wrapper {
 
 max-height: calc(90vh - var(--header-h));
 
 
}


}



/* ---------- Card Base ---------- */

.strmpr-search-result .strmpr-field-bucket-general {
 
 display: block;
 
 align-content: start;
 
 /* grid-auto-rows has no effect on non-grid containers;
 removed */

}


/* Remove any pseudo-aspect shims */
.strmpr-field-logo::before {
 
 content: none !important;
 
 display: none !important;
 

}


/* Responsive logo area — 3:2 ratio, full width */
.strmpr-search-result .strmpr-field-logo {
 
 width: 100%;
 
 aspect-ratio: 3 / 2;
 
 overflow: hidden;
 
 display: block;
 
 line-height: 0;
 
 margin: 0 0 12px 0;
 
 padding: 0;
 
 border-radius: 10px;
 

}


/* Make image fill container proportionally */
.strmpr-search-result .strmpr-field-logo img {
 
 width: 100% !important;
 
 height: 100% !important;
 
 max-width: none !important;
 
 max-height: none !important;
 
 object-fit: cover;
 
 display: block;
 
 border-radius: inherit;
 

}


/* Bigger store name */
.strmpr-search-result.tier .strmpr-field-bucket-general .strmpr-field-name {
 
 font-size: 24px;
 
 font-weight: 700;
 
 line-height: 1.25;
 
 margin: 8px 0 10px;
 

}



/* ---------- Ratings / Hours Row ---------- */

.strmpr-search-result.tier .strmpr-google-details-header {
 
 display: flex;
 
 align-items: center;
 
 gap: 10px;
 
 margin-bottom: 6px;
 

}


.strmpr-search-result.tier .strmpr-business-hours-open {
 
 font-size: 12px;
 
 padding: 3px 8px;
 

}


/* Compact rating typography */
.strmpr-search-result.tier .strmpr-store-rating {
 
 display: inline-flex;
 
 align-items: center;
 
 gap: 4px;
 
 font-size: 13px;
 
 line-height: 1.2;
 

}


.strmpr-search-result.tier .strmpr-store-rating p {
 
 margin: 0;
 
 font-size: inherit;
 
 line-height: inherit;
 

}


.strmpr-search-result.tier .strmpr-store-rating-star,
.strmpr-search-result.tier .strmpr-store-rating-blank-star {
 
 font-size: 14px;
 
 line-height: 1;
 
 color: #f5b301;
 

}


.strmpr-search-result.tier .strmpr-store-rating > p:last-child {
 
 color: #888;
 
 font-weight: 400;
 
 font-size: 12px;
 

}


/* Operating Hours summary label + value */
.strmpr-search-result.tier .strmpr-business-hours-field > p:first-child {
 
 font-size: 12px;
 
 font-weight: 600;
 
 text-transform: uppercase;
 
 letter-spacing: 0.02em;
 
 color: #333;
 
 margin: 0;
 

}


.strmpr-search-result.tier .strmpr-business-hours-field .strmpr-business-hours-description {
 
 font-size: 13px;
 
 color: #1e66cc;
 
 margin: 0;
 

}


/* Full hours list */
.strmpr-search-result.tier .strmpr-business-hours-list {
 
 font-size: 13px;
 
 line-height: 1.4;
 
 gap: 4px 12px;
 

}


.strmpr-search-result.tier .strmpr-business-hours-days p,
.strmpr-search-result.tier .strmpr-business-hours-item {
 
 font-size: 13px;
 
 line-height: 1.4;
 
 margin: 0;
 

}


.strmpr-search-result.tier .strmpr-business-hours-days p {
 font-weight: 600;
 
}

.strmpr-search-result.tier .strmpr-business-hours-item {
 font-weight: 400;
 
}


.strmpr-search-result.tier .strmpr-business-hours-text {
 
 font-size: 13px;
 
 font-weight: 600;
 
 text-transform: uppercase;
 
 margin: 10px 0 6px;
 

}



/* ---------- Contact / Links ---------- */

.strmpr-search-result.tier .strmpr-field-address,
.strmpr-search-result.tier .strmpr-field-directions,
.strmpr-search-result.tier .strmpr-field-phone,
.strmpr-search-result.tier .strmpr-field-email,
.strmpr-search-result.tier .strmpr-field-url {
 
 font-size: 15px;
 /* from 14 → 15 */
 line-height: 1.5;
 
 color: #222;
 

}


.strmpr-search-result.tier .strmpr-field-directions a,
.strmpr-search-result.tier .strmpr-field-url a {
 
 font-weight: 600;
 

}


/* Buttons / CTAs */
.strmpr-search-result.tier .btn,
.strmpr-search-result.tier .storemapper-storelink,
.strmpr-search-result.tier .strmpr-reviews-view-more-btn {
 
 font-size: 13px;
 
 padding: 8px 14px;
 
 border-radius: 6px;
 
 line-height: 1.2;
 

}


.strmpr-search-result.tier .strmpr-reviews-view-more-btn {
 
 font-weight: 600;
 
 letter-spacing: 0.02em;
 

}


/* Tighten the “View on Map” button */
.strmpr-search-result.tier .storemapper-storelink,
.strmpr-search-result.tier .strmpr-field-show-on-map {
 
 margin-top: 16px;
 
 display: block;
 

}


.strmpr-search-result.tier .storemapper-storelink {
 
 margin-top: 12px;
 
 padding: 6px 14px;
 

}



/* ---------- Reviews ---------- */

.strmpr-search-result.tier .strmpr-reviews-list {
 
 font-size: 14px;
 
 line-height: 1.5;
 
 color: #0f1c2e;
 

}


.strmpr-search-result.tier .strmpr-review-header {
 
 display: flex;
 
 align-items: center;
 
 gap: 10px;
 
 margin: 12px 0 6px;
 

}


.strmpr-search-result.tier .strmpr-review-header-photo img,
.strmpr-search-result.tier .strmpr-review-photo {
 
 width: 32px;
 
 height: 32px;
 
 border-radius: 50%;
 
 object-fit: cover;
 
 display: block;
 

}


.strmpr-search-result.tier .strmpr-review-header-text {
 line-height: 1.2;
 
}


.strmpr-search-result.tier .strmpr-review-reader-title {
 
 margin: 0;
 
 font-size: 16px;
 
 font-weight: 700;
 
 overflow-wrap: anywhere;
 

}


.strmpr-search-result.tier .strmpr-review-header-text p {
 
 margin: 2px 0 0;
 
 font-size: 13px;
 

}


/* “5 ★★★★★ a week ago” */
.strmpr-search-result.tier .strmpr-review-rating {
 
 display: inline-flex;
 
 align-items: center;
 
 gap: 8px;
 
 margin: 0 0 8px;
 
 font-size: 13px;
 
 line-height: 1.2;
 

}

.strmpr-search-result.tier .strmpr-review-rating p {
 margin: 0;
 
}


.strmpr-search-result.tier .strmpr-store-rating-star {
 
 font-size: 14px;
 
 line-height: 1;
 

}


/* NOTE: original had color: #ffff (invalid-ish). Using #bbb for readable, neutral text */
.strmpr-search-result.tier .strmpr-review-relative-time {
 
 color: #bbb;
 
 font-weight: 400;
 
 font-size: 12px;
 

}


/* Review text */
.strmpr-search-result.tier .strmpr-review-text {
 
 margin: 0 0 10px;
 
 font-size: 14px;
 
 line-height: 1.5;
 
 color: #fff;
 /* assuming dark card bg for selected state */

}


/* Divider & spacing */
.strmpr-search-result.tier .strmpr-reviews-list hr {
 
 margin: 12px 0;
 
 border: 0;
 
 border-top: 1px solid rgba(0,0,0,.08);
 

}


/* Only make the address white on the selected card */
.strmpr-search-result.tier.strmpr-selected .strmpr-field-address {
 color: #fff;
 
}


/* Force reviewer name white if you’re on dark bg cards */
.strmpr-review-reader-title {
 color: #fff;
 
}



/* ---------- Google Map Popup (InfoWindow) ---------- */

.gm-style-iw.gm-style-iw-c,
.gm-style-iw-d.strmpr-iw-inner {
 
 width: 300px !important;
 
 max-width: 300px !important;
 /* keep narrow footprint */

}


.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup {
 
 max-width: 100% !important;
 
 padding: 12px 14px !important;
 
 box-sizing: border-box;
 
 color: #0f1c2e;
 
 line-height: 1.45;
 

}


/* Hide popup image entirely (removes earlier visibility tweak) */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-field-logo {
 
 display: none !important;
 

}


/* Name */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-field-name {
 
 font-size: 20px;
 
 font-weight: 700;
 
 margin: 6px 0 8px;
 

}


/* Address & contact */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-field-address,
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-field-phone a,
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-field-email a,
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-field-url a {
 
 font-size: 14px;
 
 line-height: 1.4;
 
 color: #0f1c2e;
 
 text-decoration: none;
 

}

.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-field-url a {
 font-weight: 700;
 
}


/* Rating row */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-store-rating {
 
 display: inline-flex;
 
 align-items: center;
 
 gap: 6px;
 
 margin: 6px 0 8px;
 
 font-size: 13px;
 

}

.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-store-rating p {
 margin: 0;
 
}


.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-store-rating-star,
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-store-rating-blank-star {
 
 font-size: 14px;
 
 line-height: 1;
 
 color: #f5b301;
 

}

.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-store-rating p:last-child {
 
 color: #777;
 
 font-size: 12px;
 

}


/* Open + hours */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-popup-business-hours-field {
 
 display: flex;
 
 align-items: center;
 
 gap: 10px;
 
 margin: 4px 0 10px;
 
 font-size: 13px;
 
 line-height: 1.4;
 

}

.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup .strmpr-popup-business-hours-open {
 
 background: #eaf7ee;
 
 color: #157f3b;
 
 border: 1px solid #cdebd6;
 
 border-radius: 999px;
 
 padding: 2px 8px;
 
 font-size: 11px;
 
 font-weight: 600;
 
 line-height: 1;
 
 margin: 0;
 

}


/* “Get Directions” button */
.strmpr-map-popup .strmpr-field-directions {
 
 border: 0 !important;
 
 background: none !important;
 
 padding: 0 !important;
 
 text-align: center;
 

}

.strmpr-map-popup .strmpr-field-directions a {
 
 display: inline-block;
 
 font-size: 13px;
 
 color: #2a65c7;
 
 border: 1px solid #2a65c7;
 
 border-radius: 8px;
 
 padding: 6px 14px;
 
 text-decoration: none;
 
 background: #fff;
 
 line-height: 1.2;
 

}

.strmpr-map-popup .strmpr-field-directions a:hover {
 
 background: #2a65c7;
 
 color: #fff;
 

}


/* Focus ring */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup a:focus {
 
 outline: 2px solid rgba(42, 101, 199, .35);
 
 outline-offset: 2px;
 
 border-radius: 4px;
 

}


/* Prevent long text overflow */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup * {
 
 word-wrap: break-word;
 
 white-space: normal;
 

}


/* ----- Fill screen top-to-bottom ----- */
:root {
 --header-h: 72px;
 
}
 /* adjust if your header height changes */

#storemapper {
 
 min-height: calc(100dvh - var(--header-h)) !important;
 /* was 90dvh */

}


/* If the two-column wrapper isn't already stretching, help it */
#storemapper .strmpr-map,
#storemapper .strmpr-map > div,
#storemapper .gm-style {
 
 height: 100% !important;
 
 min-height: 100% !important;
 

}


/* Left column = full-height flex column */
#storemapper-results {
 
 height: calc(100dvh - var(--header-h)) !important;
 /* was 90dvh */
 max-height: calc(100dvh - var(--header-h)) !important;
 
 display: flex !important;
 
 flex-direction: column !important;
 
 box-sizing: border-box;
 

}


/* Keep the search + filter visible;
 results take remaining space */
#storemapper-results .strmpr-search-bar,
#storemapper-results .strmpr-filters {
 
 position: sticky;
 
 top: 0;
 /* stick under the site header */
 z-index: 3;
 

}


/* The scrollable list grows to fill leftover height */
#storemapper .strmpr-search-results-wrapper {
 
 flex: 1 1 auto !important;
 
 min-height: 0 !important;
 /* critical to allow flex child to shrink */
 overflow-y: auto !important;
 
 -webkit-overflow-scrolling: touch;
 

}


/* Fallback for older browsers w/o dvh */
@supports not (height: 100dvh) {
 
 #storemapper {
 min-height: calc(100vh - var(--header-h)) !important;
 
}

 #storemapper-results {
 
 height: calc(100vh - var(--header-h)) !important;
 
 max-height: calc(100vh - var(--header-h)) !important;
 
 
}


}


.strmpr-dropdown-btn,
.storemapper-dropdown-btn {
 
 font-size: 13px;
 /* reduce from default 16px or 14px */
 font-weight: 500;
 /* make less bold if it was 600 or 700 */
 letter-spacing: 0;
 /* tighten text if it feels wide */
 padding: 4px 10px;
 /* optional: smaller padding for a lighter look */
 line-height: 1.2;
 /* ensures better vertical rhythm */

}


.strmpr-dropdown-btn span {
 
 font-size: inherit;
 
 font-weight: inherit;
 

}



/* Reduce font size on dropdown filter labels */
.strmpr-dropdown-options .strmpr-dropdown-option-label,
.storemapper-dropdown-menu .storemapper-category-link {
 
 font-size: 13px;
 /* try 12–13px for better balance */
 font-weight: 400;
 /* ensure normal weight, not bold */
 line-height: 1.3;
 /* keeps it readable at smaller sizes */

}


/* Optional: also adjust checkbox alignment slightly */
.strmpr-dropdown-option input[type="checkbox"] {
 
 transform: scale(0.9);
 /* slightly smaller checkbox to match text scale */
 vertical-align: middle;
 
 margin-right: 6px;
 

}




/* 1) Kill the big gap created by the Shop Now row */
.strmpr-field-url {
 
 margin-bottom: 0 !important;
 
 padding-bottom: 0 !important;
 

}

.strmpr-field-url a {
 
 display: inline;
 /* many themes make it block with padding */
 margin: 0 !important;
 
 padding: 0 !important;
 
 line-height: 1.2;
 

}


/* 2) Collapse the container’s bottom gap */
.strmpr-field-bucket-general {
 
 margin-bottom: 6px !important;
 /* or 0 if you want it tighter */
 padding-bottom: 0 !important;
 

}


/* 3) Ensure the hours section sits close but not cramped */
.strmpr-field-bucket-general + .strmpr-store-list-tabs {
 
 margin-top: 6px !important;
 /* space above “Opening Hours” */
 padding-top: 0 !important;
 

}


/* 4) Keep the hours list compact and add space before the button */
.strmpr-store-list-tabs .strmpr-business-hours-text {
 margin: 0 0 4px !important;
 
}

.strmpr-store-list-tabs .strmpr-business-hours-list {
 margin: 0 0 10px !important;
 line-height: 1.35;
 
}

.storemapper_view.storemapper-storelink {
 margin-top: 10px !important;
 
}




/* Turn "Shop Now" into a button and place it below View On Map */
.strmpr-field-url {
 
 order: 99;
 /* push it after other elements if using flexbox */
 text-align: center;
 
 margin-top: 12px !important;
 

}


.strmpr-field-url a {
 
 display: inline-block;
 
 background-color: var(--accent-fg, #fff);
 
 color: var(--accent-bg, #1d2644);
 
 border: 1px solid #fff;
 
 padding: 8px 16px;
 
 border-radius: 4px;
 
 text-decoration: none;
 
 font-weight: 500;
 
 transition: all 0.2s ease-in-out;
 

}


.strmpr-field-url a:hover {
 
 background-color: #fff;
 
 color: #1d2644;
 

}


/* Stack it visually below "View on Map" */
.storemapper_view.storemapper-storelink + .strmpr-field-url {
 
 display: block;
 

}











/* Remove the small link icon */
.strmpr-field-url::before {
 
 display: none !important;
 

}


/* Style the link exactly like View On Map */
.strmpr-field-url a {
 
 display: block;
 
 text-align: center;
 
 width: 100%;
 
 box-sizing: border-box;
 

 /* match View On Map colors */
 border: 1px solid #1d2644;
 
 background: transparent;
 
 color: #1d2644 !important;
 

 border-radius: 4px;
 
 font-family: inherit !important;
 /* match View On Map font exactly */ 
 padding: 8px 16px !important;
 
 font-weight: 400 !important;
 
 font-size: 15px !important;
 
 text-decoration: none;
 
 transition: all 0.2s ease-in-out;
 

 /* spacing between email, hours, and map button */
 margin: 10px 0px;
 

}


/* identical hover state */
.strmpr-field-url a:hover {
 
 background: #1d2644;
 
 color: #fff !important;
 

}


/* optional: flatten any inherited margins/padding */
.strmpr-field-url {
 
 margin: 0 !important;
 
 padding: 0 !important;
 

}


/* Increase the store name font size */
.strmpr-field-name {
 
 font-size: 20px !important;
 /* adjust up or down as needed */
 font-weight: 600 !important;
 /* a little bolder looks nice */
 line-height: 1 !important;
 /* keeps spacing balanced */
 margin-bottom: 0px !important;
 /* optional: tighten spacing below */

}


/* Reduce space below the Get Directions link */
.strmpr-field-directions {
 
 margin-bottom: 4px !important;
 /* smaller gap – tweak to 2px if needed */
 padding-bottom: 0 !important;
 

}


/* Optional: remove any extra margin on the link itself */
.strmpr-field-directions a {
 
 margin-bottom: 0 !important;
 
 display: inline-block;
 /* keeps it consistent with other rows */

}



/* Add space below the email row */
.strmpr-field-email {
 
 margin-bottom: 10px !important;
 /* adjust value as needed */

}


/* Optional: ensure link itself doesn’t collapse spacing */
.strmpr-field-email a {
 
 display: inline-block;
 
 margin-bottom: 0 !important;
 

}


/* White border on Shop Now button when the tile is active */
.strmpr-search-result.tier.strmpr-selected .strmpr-field-url a {
 
 border-color: #fff !important;
 
 color: #fff !important;
 /* optional: keep text visible */

}


/* Base style (so the border exists to recolor) */
.strmpr-search-result.tier .strmpr-field-url a {
 
 display: inline-block;
 
 border: 1px solid #2a65c7;
 /* your default color */
 border-radius: 6px;
 
 padding: 8px 14px;
 
 color: #2a65c7;
 
 text-decoration: none;
 
 transition: border-color 0.25s, color 0.25s;
 

}


/* Hide all Storemapper location descriptions */
.strmpr-field-description[aria-label="Location Description"] {
 
 display: none !important;
 

}


/* Hide image/logo in Storemapper popup */
.strmpr-map-popup .strmpr-field-logo {
 
 display: none !important;
 

}


.mapboxgl-popup-content {
 
 padding: 25px;
 
 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
 

}


/* MOBILE: let results be auto-height;
 give the map half the screen */
@media (max-width: 768px) {
 
 /* Drop the desktop full-height behavior */
 #storemapper {
 min-height: auto !important;
 
}


 #storemapper-results,
 #storemapper .strmpr-search-results-wrapper {
 
 height: auto !important;
 
 max-height: none !important;
 
 flex: initial !important;
 /* stop trying to fill the viewport */
 
}


 /* Map gets 50% of the viewport height */
 #storemapper .strmpr-map,
 #storemapper .strmpr-map-wrapper,
 #storemapper #storemapper-map,
 #storemapper .gm-style {
 
 height: 50vh !important;
 
 min-height: 50vh !important;
 
 
}


 /* If you’re on Mapbox GL, ensure the canvas stretches */
 .mapboxgl-canvas {
 height: 100% !important;
 width: 100% !important;
 
}


}


/* TABLET & MOBILE: stack layout begins around 1024px */
@media (max-width: 1024px) {
 
 /* 1) Release the full-height desktop layout */
 #storemapper {
 min-height: unset !important;
 
}


 #storemapper-results,
 #storemapper .strmpr-search-results-wrapper {
 
 display: block !important;
 
 height: auto !important;
 
 max-height: none !important;
 
 flex: initial !important;
 
 
}


 /* 2) Give the map half the screen height */
 #storemapper .strmpr-map,
 #storemapper .strmpr-map-wrapper,
 #storemapper #storemapper-map {
 
 height: 50svh !important;
 /* 50% of the small viewport height */
 min-height: 50svh !important;
 
 max-height: none !important;
 
 
}


 /* 3) Make inner map elements fill that height */
 #storemapper .strmpr-map > div,
 #storemapper .gm-style,
 .mapboxgl-map,
 .mapboxgl-canvas {
 
 height: 100% !important;
 
 min-height: 100% !important;
 
 width: 100% !important;
 
 
}


 /* 4) Safety reset for any residual 100% height locks */
 #storemapper .strmpr-map,
 #storemapper .strmpr-map > div,
 #storemapper .gm-style {
 
 max-height: none !important;
 
 
}


}


@media (max-width: 767px) {
 
 /* Let the outer container breathe a little */
 #storemapper,
 #storemapper-results,
 .strmpr-search-results-wrapper {
 
 padding-left: 10px !important;
 
 padding-right: 10px !important;
 
 
}


 /* Make each card span nearly full width */
 .strmpr-search-result,
 .storemapper-result {
 
 width: 100% !important;
 
 max-width: 100% !important;
 
 margin: 0 0 20px 0 !important;
 /* space between cards */
 border-radius: 10px;
 
 
}


 /* Remove any grid or flex limit from the result list */
 .strmpr-search-results-wrapper {
 
 display: block !important;
 
 grid-template-columns: none !important;
 
 justify-content: center !important;
 
 
}


 /* Optional: edge-to-edge look */
 .strmpr-search-result .strmpr-field-bucket-general {
 
 padding-left: 0 !important;
 
 padding-right: 0 !important;
 
 
}


}


/**************
 * 1) “Store Information” should be a plain link (NOT a button)
 **************/
.strmpr-search-result .strmpr-field-url:not(.storemapper-store-info) a {
 
 /* keep your button look for Shop Now ONLY */
 display: block;
 
 width: 100%;
 
 text-align: center;
 
 border: 1px solid #1d2644;
 
 background: transparent;
 
 color: #1d2644 !important;
 
 border-radius: 6px;
 
 padding: 8px 16px;
 
 font-weight: 500;
 
 text-decoration: none;
 

}


/* Reset button styles on Store Information */
.strmpr-search-result .storemapper-store-info a {
 
 display: inline;
 
 border: 0 !important;
 
 background: none !important;
 
 padding: 0 !important;
 
 margin: 0 !important;
 
 color: #1d2644 !important;
 
 font-weight: 600;
 
 text-decoration: underline;
 
 cursor: pointer;
 

}


/**************
 * 2) Show description on tiles, but NEVER in the map popup
 **************/
/* Ensure it shows on the card */
.strmpr-search-result .strmpr-field-description {
 
 display: block !important;
 
 margin-top: 8px;
 
 color: #0f1c2e;
 
 line-height: 1.45;
 

}


/* Hide only in popup */
.strmpr-map-popup .strmpr-field-description {
 
 display: none !important;
 

}


/**************
 * 3) Fix Opening Hours alignment
 * - Summary row (single-line “Opening Hours … Today, …”)
 * - Full weekly list (two perfectly aligned columns)
 **************/
/* Summary line: align label and value on baseline */
.strmpr-search-result .strmpr-business-hours-field {
 
 display: flex;
 
 align-items: baseline;
 
 gap: 8px;
 

}

.strmpr-search-result .strmpr-business-hours-field > p {
 
 margin: 0;
 

}


/* Weekly list: turn into a clean 2-column grid */
.strmpr-search-result .strmpr-business-hours-list {
 
 display: grid !important;
 
 grid-template-columns: 1fr auto;
 
 column-gap: 12px;
 

}


/* Left column (days) */
.strmpr-search-result .strmpr-business-hours-days {
 
 display: grid;
 
 grid-auto-rows: minmax(18px, auto);
 
 row-gap: 6px;
 

}

.strmpr-search-result .strmpr-business-hours-days p {
 
 margin: 0;
 

}


/* Right column (hours values) — ids vary per tile */
.strmpr-search-result [id^="business-hours-list-values-"] {
 
 display: grid;
 
 grid-auto-rows: minmax(18px, auto);
 
 row-gap: 6px;
 
 list-style: none;
 
 margin: 0;
 
 padding: 0;
 

}

.strmpr-search-result .strmpr-business-hours-item {
 
 margin: 0;
 

}


/***************************************************
 * INFO BLOCK ORDER (name, address, directions, phone, STORE INFO, email)
 * — Only reorders within the tile;
 does not touch popup.
 ***************************************************/
.strmpr-search-result .strmpr-field-bucket-general {
 
 display: flex;
 /* make children order-able */
 flex-direction: column;
 

}


/* Explicit ordering — lower number = higher up */
.strmpr-search-result .strmpr-field-name {
 order: 0;
 
}

.strmpr-search-result .strmpr-field-logo {
 order: -1;
 
}
 /* keep logo above name */
.strmpr-search-result .strmpr-field-address {
 order: 10;
 
}

.strmpr-search-result .strmpr-field-directions {
 order: 20;
 
}

.strmpr-search-result .strmpr-field-phone {
 order: 30;
 
}


/* >>> Move STORE INFORMATION into the info block, right after phone <<< */
.strmpr-search-result .storemapper-store-info {
 order: 40 !important;
 
}


/* Keep EMAIL exactly where it was (after phone). */
.strmpr-search-result .strmpr-field-email {
 order: 50 !important;
 
}


/* Description follows the info block */
.strmpr-search-result .strmpr-field-description {
 order: 60;
 
}


/* Hours summary & weekly list stay below description */
.strmpr-search-result .strmpr-business-hours-field {
 order: 70;
 
}

.strmpr-search-result .strmpr-store-list-tabs {
 order: 80;
 
}


/* Shop Now button stays below hours;
 View on Map can follow */
.strmpr-search-result .strmpr-field-url:not(.storemapper-store-info) {
 order: 90;
 
}

.strmpr-search-result .storemapper-storelink {
 order: 100;
 
}


/***************************************************
 * STYLE: Store Information is a simple inline link (not a button)
 ***************************************************/
.strmpr-search-result .storemapper-store-info a {
 
 display: inline !important;
 
 border: 0 !important;
 
 background: none !important;
 
 padding: 0 !important;
 
 margin: 0 !important;
 
 color: #1d2644 !important;
 
 font-weight: 600;
 
 text-decoration: underline;
 
 cursor: pointer;
 

}


/* Optional: tighten spacing between phone, Store Info, and email */
.strmpr-search-result .strmpr-field-phone,
.strmpr-search-result .storemapper-store-info,
.strmpr-search-result .strmpr-field-email {
 
 margin-bottom: 6px !important;
 

}


/***************************************************
 * HOURS ALIGNMENT (keeps your earlier fix)
 ***************************************************/
.strmpr-search-result .strmpr-business-hours-field {
 
 display: flex;
 
 align-items: baseline;
 
 gap: 8px;
 

}

.strmpr-search-result .strmpr-business-hours-field > p {
 margin: 0;
 
}


.strmpr-search-result .strmpr-business-hours-list {
 
 display: grid !important;
 
 grid-template-columns: 1fr auto;
 
 column-gap: 12px;
 

}

.strmpr-search-result .strmpr-business-hours-days {
 
 display: grid;
 
 grid-auto-rows: minmax(18px, auto);
 
 row-gap: 6px;
 

}

.strmpr-search-result .strmpr-business-hours-days p {
 margin: 0;
 
}


.strmpr-search-result [id^="business-hours-list-values-"] {
 
 display: grid;
 
 grid-auto-rows: minmax(18px, auto);
 
 row-gap: 6px;
 
 list-style: none;
 
 margin: 0;
 
 padding: 0;
 

}

.strmpr-search-result .strmpr-business-hours-item {
 margin: 0;
 
}


/***************************************************
 * Align “Store Information” left, directly under email
 * Match email style (same font, color, and weight)
 ***************************************************/
.strmpr-search-result .strmpr-field-bucket-general {
 
 display: flex;
 
 flex-direction: column;
 

}


/* Ensure correct order */
.strmpr-search-result .strmpr-field-name {
 order: 0;
 
}

.strmpr-search-result .strmpr-field-address {
 order: 10;
 
}

.strmpr-search-result .strmpr-field-directions {
 order: 20;
 
}

.strmpr-search-result .strmpr-field-phone {
 order: 30;
 
}

.strmpr-search-result .strmpr-field-email {
 order: 40;
 
}

.strmpr-search-result .storemapper-store-info {
 order: 41;
 
}
 /* right after email */

/* Make Store Information match email styling */
.strmpr-search-result .storemapper-store-info,
.strmpr-search-result .storemapper-store-info a {
 
 display: block;
 
 text-align: left;
 
 color: #1d2644 !important;
 
 font-size: 15px;
 
 font-weight: 400;
 
 line-height: 1.5;
 
 text-decoration: none !important;
 
 margin-top: 0 !important;
 
 margin-bottom: 8px !important;
 
 padding: 0 !important;
 

}


/* Optional hover effect to match other text links */
.strmpr-search-result .storemapper-store-info a:hover {
 
 text-decoration: underline;
 

}


/* Ensure the container is orderable */
.strmpr-search-result .strmpr-field-bucket-general {
 
 display: flex;
 
 flex-direction: column;
 

}


/* Keep email first, then Store Information (use !important to beat earlier rules) */
.strmpr-search-result .strmpr-field-email {
 order: 50 !important;
 
}

.strmpr-search-result .storemapper-store-info {
 order: 51 !important;
 
}


/* Make “Store Information” look exactly like the email line */
.strmpr-search-result .storemapper-store-info,
.strmpr-search-result .storemapper-store-info a {
 
 display: block;
 
 text-align: left;
 
 font-family: inherit !important;
 
 font-size: 15px !important;
 /* same as contact rows */
 font-weight: 400 !important;
 /* match email weight */
 line-height: 1.5 !important;
 
 color: #1d2644 !important;
 /* match email color */
 text-decoration: none !important;
 /* no underline, like your email */
 margin: 4px 0 8px 0 !important;
 /* tuck under email */
 padding: 0 !important;
 

}


/* Keep email’s spacing tight so the two lines feel grouped */
.strmpr-search-result .strmpr-field-email {
 margin-bottom: 0 !important;
 
}


/***************************************************
 * 1) Hide description again (tile + popup both)
 ***************************************************/
.strmpr-search-result .strmpr-field-description {
 
 display: none !important;
 

}


/***************************************************
 * 2) Align Opening Hours label + value cleanly
 ***************************************************/
/* Parent row: align text on baseline and match type rhythm */
.strmpr-search-result .strmpr-business-hours-field {
 
 display: flex;
 
 align-items: baseline;
 /* keeps the text aligned visually */
 gap: 6px;
 /* small but natural breathing space */
 margin-top: 6px;
 
 margin-bottom: 4px;
 

}


/* Label */
.strmpr-search-result .strmpr-business-hours-field > p:first-child {
 
 margin: 0;
 
 font-size: 13px;
 
 font-weight: 700;
 
 text-transform: uppercase;
 
 letter-spacing: 0.02em;
 
 line-height: 1.4;
 
 color: #000;
 

}


/* Value */
.strmpr-search-result .strmpr-business-hours-description {
 
 margin: 0;
 
 font-size: 13px;
 
 font-weight: 500;
 
 color: #1e66cc;
 /* your accent blue */
 line-height: 1.4;
 
 position: relative;
 
 top: 0.5px;
 /* subtle vertical nudge for optical balance */

}


/***************************************************
 * 3) Optional small tightening around hours block
 ***************************************************/
.strmpr-search-result .strmpr-business-hours-text {
 
 margin-top: 10px !important;
 
 margin-bottom: 4px !important;
 

}


/***********************
 * A) OPTICAL CENTER ALIGN (usually looks best)
 ***********************/
.strmpr-search-result .strmpr-business-hours-field{
 
 display:flex;
 
 align-items:center;
 /* <— switch from baseline */
 gap:8px;
 
 margin:6px 0 4px;
 

}

.strmpr-search-result .strmpr-business-hours-field > p,
.strmpr-search-result .strmpr-business-hours-description{
 
 margin:0;
 
 line-height:1.25;
 /* unify line-height so centers line up */

}


/* keep your styles, just ensure same rhythm */
.strmpr-search-result .strmpr-business-hours-field > p:first-child{
 
 font-size:13px;
 font-weight:700;
 text-transform:uppercase;
 
 letter-spacing:.02em;
 color:#000;
 

}

.strmpr-search-result .strmpr-business-hours-description{
 
 font-size:13px;
 font-weight:500;
 color:#1e66cc;
 

}


/* Hide stray custom-field text (like "Outlet Store") inside map popups */
.gm-style-iw-d.strmpr-iw-inner .strmpr-map-popup 
 .strmpr-field-custom:not(.storemapper-store-info) {
 
 display: none !important;
 

}



