.search-directory{padding-top:20px}.search-directory .area-toolbar{padding:12px 15px;margin-bottom:24px}.search-directory .area-current small{display:none}.search-directory .area-current strong{font-size:15px}.search-directory .breadcrumb{margin-top:0;margin-bottom:14px}.results-heading h1{font-size:29px;line-height:1.15;font-weight:600;margin:0 0 8px;text-wrap:pretty}.search-directory .result-summary{margin:0 0 17px;font-size:14px;color:#6c5561}.search-directory .results-heading{align-items:flex-start}.search-directory .sort{padding-top:3px;white-space:nowrap}.search-actions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}.search-actions .chip{min-height:39px;background:#fff;border-color:#cdbec6;font-size:12px}.search-actions .selected{background:#752c45;color:white}.category-filters{padding-bottom:15px;border-bottom:1px solid #e6dce1;margin-bottom:0}.category-filters .chip{border:0;background:#f6f1f4}.category-filters .chip.selected{background:#752c45;color:white}.active-filters{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 0}.active-filters button{display:inline-flex;align-items:center;gap:5px;border:0;background:#f2e8ee;color:#69364c;border-radius:5px;padding:5px 8px;font-size:11px;min-height:29px}.active-filters .text-button{background:none;text-decoration:underline}.retailer-note,.search-match-note{font-size:12px;color:#755b69;margin:10px 0 0;line-height:1.5}.search-directory .result-card{grid-template-columns:180px minmax(0,1fr);gap:19px;padding:24px 0;scroll-margin-top:185px}.result-card.map-selected{background:#fcf5ed;outline:2px solid #d2ad86;outline-offset:5px}.result-number{color:#725965;font-size:15px;font-weight:400}.result-card .card-title h3{font-size:22px;font-weight:600}.result-copy{min-width:0}.result-image-link{display:block;align-self:start}.result-card .store-photo{height:170px;width:100%;border-radius:8px;overflow:hidden;position:relative}.result-card .store-photo.has-photo img{transition:transform 180ms var(--ease-out)}.card-category{font-size:12px;line-height:1.55}.card-address{font-size:13px;line-height:1.55;margin:8px 0}.quick-contact{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.quick-contact a{display:inline-flex;align-items:center;gap:5px;min-height:32px;font-size:12px;border:1px solid #e3d8de;border-radius:5px;padding:5px 8px;background:#fff}.quick-contact a:hover{background:#f7eff3;border-color:#b88ba1}.card-footer{margin-top:14px;justify-content:space-between}.card-footer .source-link{font-size:11px}.broaden-search{padding:21px 16px;background:#faf5ee;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:13px}.broaden-search .outline{font-size:12px;white-space:normal;text-align:left}.empty-state .outline,.empty-state .primary{margin:10px 5px;white-space:normal}.image-disclosure{max-width:1400px;margin:0 auto 24px;padding:0 24px;font-size:12px;color:#694e5d;line-height:1.65}.image-disclosure strong{font-size:13px}.image-disclosure p{max-width:1100px;margin-top:6px}
/* Covers combine a labelled generated backdrop with project-owned lettering. */
.store-photo.concept-cover{display:block;position:relative;background:#e9e5df;padding:0;color:#27342b;isolation:isolate;aspect-ratio:1/1;overflow:hidden}
.concept-scene{position:absolute;inset:0;background-image:url('/images/storefront-concepts.png');background-size:300% 200%;background-repeat:no-repeat;z-index:-1}
.scene-0{background-position:0 0}.scene-1{background-position:50% 0}.scene-2{background-position:100% 0}.scene-3{background-position:0 100%}.scene-4{background-position:50% 100%}.scene-5{background-position:100% 100%}
.concept-sign{position:absolute;top:18.5%;left:11%;width:79%;height:15%;display:flex;align-items:center;justify-content:center;text-align:center;container-type:inline-size;overflow:hidden;padding:1px 3px}
.concept-sign span{font-size:clamp(11px,9.5cqw,32px);line-height:1.06;max-height:100%;font-weight:800;color:#293b30;text-shadow:0 1px #ffffff60;overflow-wrap:anywhere;text-wrap:balance}
.concept-sign .long-sign{font-size:clamp(9px,7.3cqw,25px)}
.concept-sign img{width:85%;height:90%;object-fit:contain}.concept-cover:has(.scene-1) .concept-sign{top:20%;left:10%;width:80%;height:13%}.concept-cover:has(.scene-2) .concept-sign{top:21%;left:12%;width:77%;height:12%}.concept-cover:has(.scene-4) .concept-sign{top:19%;left:14%;width:74%;height:11%}.concept-cover:has(.scene-5) .concept-sign{top:19%;left:20%;width:66%;height:11%}
.cover-font-1 .concept-sign span{font-family:Georgia,serif;font-weight:700}.cover-font-2 .concept-sign span{font-family:'Arial Narrow',Arial,sans-serif;font-stretch:condensed;letter-spacing:.04em;text-transform:uppercase}.cover-font-3 .concept-sign span{font-family:Georgia,serif;font-style:italic}.cover-font-4 .concept-sign span{font-family:'Trebuchet MS',Arial,sans-serif;letter-spacing:-.04em}.cover-tone-1 .concept-sign span{color:#5c273a}.cover-tone-2 .concept-sign span{color:#1d354a}.cover-tone-3 .concept-sign span{color:#553d28}.cover-tone-4 .concept-sign span{color:#314735}.cover-tone-5 .concept-sign span{color:#463b4d}.cover-tone-6 .concept-sign span{color:#4f2423}.cover-tone-7 .concept-sign span{color:#30302c}
.concept-place,.concept-label{position:absolute;font-family:'Outfit',Arial,sans-serif;font-size:10px;line-height:1.3;padding:4px 6px;border-radius:3px;background:#fffdf7f5;color:#4c3b42;bottom:7px}.concept-place{left:7px;max-width:66%;overflow-wrap:anywhere}.concept-label{right:7px;font-size:10px;font-weight:500}.concept-place+.concept-label{bottom:29px}.detail-cover{margin-bottom:28px}.detail-cover>.concept-cover{width:min(100%,520px);height:auto;aspect-ratio:1/1;border-radius:10px;margin:0 auto}.detail-cover>.text-button{display:block;margin:9px auto;font-size:12px}.detail-cover .concept-place,.detail-cover .concept-label{font-size:12px}.detail-cover .concept-label{bottom:7px}.detail-cover .concept-sign span{font-size:clamp(16px,9cqw,38px)}.detail-cover .concept-sign .long-sign{font-size:clamp(14px,7cqw,30px)}.gallery-empty .icon{display:none}
/* Suggestions stay attached to their field; keyboard selection is immediate. */
.search-form{overflow:visible;position:relative;z-index:20}.search-field{position:relative;min-width:0}.search-suggestions{position:absolute;top:calc(100% + 10px);left:0;width:max(100%,280px);max-width:min(420px,calc(100vw - 30px));max-height:360px;overflow:auto;background:white;border:1px solid #d8c7d0;border-radius:8px;padding:6px;box-shadow:0 10px 30px #3325301c;z-index:100;text-align:left}.search-suggestions[hidden]{display:none}.search-suggestions button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;border:0;background:white;padding:11px 10px;text-align:left;border-radius:5px;white-space:normal;color:#382a32}.search-suggestions strong{font-weight:500;font-size:14px}.search-suggestions small{color:#795f6d;font-size:12px}.search-suggestions [aria-selected=true],.search-suggestions button:hover{background:#f4e9f0}.search-field:has(#search-location) .search-suggestions{left:auto;right:0}.header-inner,.site-header{overflow:visible}
.map-panel{margin:16px 0;border:1px solid #e0d4dc;border-radius:9px;overflow:hidden}.map-panel #results-map{height:320px;width:100%;z-index:0;background:#e8e6df}.map-panel #map-status{font-size:12px;padding:10px 12px;margin:0;background:white}.store-map-pin{display:grid!important;place-items:center;background:#752c45;color:white;border:2px solid white;border-radius:50% 50% 50% 0;box-shadow:0 2px 5px #33253050;font:600 13px 'Outfit',Arial,sans-serif}.leaflet-popup-content a{font-weight:600;color:#752c45}.leaflet-popup-content p{margin:8px 0}.leaflet-container{font-family:'Outfit',Arial,sans-serif}.leaflet-control-attribution{font-size:11px!important}
@media(hover:hover) and (pointer:fine){.result-image-link:hover .has-photo img{transform:scale(1.025)}}
@media(max-width:1150px){.search-directory .result-card{grid-template-columns:145px minmax(0,1fr);gap:15px}.result-card .store-photo{height:155px}.results-heading h1{font-size:27px}}
@media(max-width:700px){.search-directory{padding-top:13px}.search-directory .area-toolbar{padding:9px 11px;margin-bottom:15px}.search-directory .area-tools{gap:9px}.search-directory .area-current strong{font-size:13px}.search-directory .area-tools button{font-size:11px;min-height:32px}.search-directory .favorite-chips{padding-top:8px}.search-directory .mobile-panels{margin-bottom:13px}.search-directory .breadcrumb{margin-bottom:10px;font-size:11px}.results-heading h1{font-size:26px;line-height:1.13}.search-directory .results-heading{display:block}.search-directory .sort{display:flex;margin:9px 0 12px;justify-content:flex-end}.search-directory .result-summary{margin-bottom:6px;font-size:13px}.search-actions{gap:6px}.search-actions .chip{font-size:11px;padding:8px 10px;min-height:38px}.category-filters{gap:6px;padding-bottom:12px}.category-filters .chip{font-size:11px}.search-directory .result-card{grid-template-columns:1fr;gap:13px;padding:21px 0}.search-directory .result-card .store-photo{height:auto;aspect-ratio:1.5/1;max-height:none}.search-directory .result-card .concept-scene{background-size:300% 200%}.result-card .card-title h3{font-size:23px}.result-number{font-size:16px}.card-address{font-size:14px}.quick-contact a{font-size:13px;min-height:36px;padding:6px 10px}.card-footer{margin-top:13px}.result-card .concept-sign{height:15%;top:18.5%}.result-card .concept-sign span{font-size:clamp(15px,7.5cqw,25px)}.result-card .concept-sign .long-sign{font-size:clamp(11px,5.9cqw,21px)}.result-card .concept-place,.result-card .concept-label{font-size:11px}.concept-place+.concept-label{bottom:7px}.concept-place{max-width:58%}.search-suggestions{width:calc(100vw - 34px);max-width:calc(100vw - 34px)}.search-field:has(#search-location) .search-suggestions{right:-43px}.search-field:has(#search-term) .search-suggestions{left:0}.search-suggestions button{min-height:52px}.search-field input{font-size:14px}.search-form{height:48px}.map-panel #results-map{height:280px}.broaden-search{display:block}.broaden-search span{display:block;margin-bottom:10px}.image-disclosure{padding:0 18px}.detail-cover .concept-sign .long-sign{font-size:clamp(12px,6.4cqw,27px)}.detail-cover .concept-label{bottom:30px}.detail-gallery .gallery-button{font-size:12px}}
@media(prefers-reduced-motion:reduce){.result-card .store-photo.has-photo img{transition:none}.result-image-link:hover .has-photo img{transform:none}}

.concept-sign span{max-height:none;max-width:100%;display:block}
.secondary-discovery{display:none}
@media(max-width:700px){
 .search-directory .area-toolbar{display:flex;flex-wrap:nowrap;gap:7px;padding:6px 8px;margin-bottom:12px}
 .search-directory .area-current{width:auto;flex:1;gap:5px}.search-directory .area-current>.icon{display:none}.search-directory .area-current strong{font-size:12px}.search-directory .area-current .text-button{display:none}
 .search-directory .area-tools{width:auto;gap:8px;flex-shrink:0}.search-directory .area-tools>.outline{flex:none;padding:5px 7px;font-size:10px}.search-directory .area-tools .small-icon{display:none}.search-directory .favorite-chips{display:none}
 .search-directory .mobile-panels,.search-directory .breadcrumb{display:none}
 .search-directory .results-heading{display:grid;grid-template-columns:1fr auto;align-items:end;gap:5px;margin-bottom:8px}.search-directory .results-heading>div{display:contents}.results-heading h1{grid-column:1/-1;font-size:23px;line-height:1.15;margin-bottom:5px}.search-directory .sort{margin:0;font-size:11px;padding:0}.search-directory .result-summary{margin:0;font-size:12px}
 .search-actions{display:grid;grid-template-columns:auto auto auto auto;gap:5px;margin-bottom:7px}.search-actions .chip{font-size:10px;padding:7px 6px;min-height:36px;justify-content:center}.search-actions .chip .icon{display:none}
 .category-filters{gap:3px;padding-bottom:8px;margin-bottom:0}.category-filters .chip{padding:7px 6px;font-size:10px;min-height:33px}.search-directory .result-card{padding-top:16px}
 .secondary-discovery{display:flex;gap:16px;margin:18px 0}.secondary-discovery button{font-size:12px}
 .search-directory .favorite-chips:has(.selected){display:none}
}

/* One modern, consistent cover per chain. Original logos remain separate image assets. */
.standard-chain-cover .standard-chain-scene{background-size:cover;background-position:center;background-repeat:no-repeat}
.chain-sally .standard-chain-scene{background-image:url('/images/brands/sally-modern.png')}
.chain-ulta .standard-chain-scene{background-image:url('/images/brands/ulta-modern.png')}
.standard-chain-cover .concept-sign,.result-card .standard-chain-cover .concept-sign{top:18%;left:20%;width:60%;height:17%;padding:0}
.standard-chain-cover .concept-sign img{width:100%;height:100%;object-fit:contain}
.chain-ulta .concept-sign img{width:86%}
.detail-cover>.standard-chain-cover{width:min(100%,760px);aspect-ratio:1.5/1}
.standard-chain-cover .concept-place{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.02em;font-size:12px;line-height:1.25;max-width:65%}
.detail-cover .standard-chain-cover .concept-place{font-size:clamp(16px,2.5vw,26px);left:14px;bottom:14px;padding:7px 12px;max-width:72%}
.detail-cover .standard-chain-cover .concept-label{bottom:14px;right:14px}
@media(max-width:700px){.detail-cover .standard-chain-cover .concept-place{font-size:18px;left:8px;bottom:8px;max-width:60%;padding:5px 7px}.detail-cover .standard-chain-cover .concept-label{bottom:8px;right:8px;font-size:10px}}
