/* A bolder, compact identity for the store finder. */
:root{--ink:#122b23;--paper:#fafbf7;--line:#e1e6dc;--forest:#007d51}
body{background:var(--paper)}
.site-header{height:84px;background:#fffefb;border-bottom:1px solid #dce3d9;padding:0 30px;gap:24px}
.site-header:before{height:3px;background:linear-gradient(90deg,#008455 0 80%,#f58220 80% 92%,#e63232 92%)}
.brand-logo{width:202px}.brand-partner{border-color:#ced6ca}
.header-nav{align-self:center;align-items:center;gap:24px;font-size:13px}
.header-nav .nav-active{background:#142d24;color:white;border-radius:30px;padding:12px 20px}
.nav-active:after{display:none}.text-button{color:#344b3f}
.preview-badge{border:1px solid #182f26;background:#dff48d;color:#182f26;transform:rotate(4deg);border-radius:5px;padding:7px 10px;font-weight:750}
.workspace{grid-template-columns:370px minmax(0,1fr);background:#fafbf7;min-height:590px}
.sidebar{background:#fffefb;border:0}
.finder-header{padding:28px 25px 22px}
.eyebrow{font-size:10px;letter-spacing:1.3px;color:#43594b;gap:8px}
.finder-header h1{font-size:43px;line-height:1.18;letter-spacing:-2.3px;font-weight:900;margin:20px 0 12px}
.finder-header h1 .title-smoothie{display:table;color:#007d51;position:relative;isolation:isolate}
.finder-header h1 .title-smoothie:after{content:"";position:absolute;z-index:-1;left:-3px;right:-8px;bottom:1px;height:12px;background:#dff48d;transform:rotate(-2deg)}
.finder-header h1 .title-finder{display:block;color:#142d24}
.intro{font-size:13px;color:#617065;margin-bottom:22px}
.search-form{height:51px;border:1.5px solid #254a3b;border-radius:13px;background:white;box-shadow:3px 3px 0 #cbe9b2;padding:0 14px}
.search-form:focus-within{border-color:#007d51;box-shadow:3px 3px 0 #9eddad}
.search-form input::placeholder{color:#69796d}
.regions{margin-top:18px;gap:7px;max-height:76px}
.regions button{font-size:12px;border:1px solid #d8dfd4;background:#fffefb;color:#4e6053;border-radius:24px;padding:8px 12px}
.regions button[aria-pressed=true]{border-color:#142d24;background:#142d24;color:#fff}
.regions button:hover{background:#eaf6d5;border-color:#9aac93}
.results-panel{border-top:1px solid #dce3d9}
.results-header{padding:19px 25px 15px}.results-header h2{font-size:14px}
.result-number{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:4px 8px;background:#007d51;color:white;border-radius:18px;font-size:12px;line-height:1.1}
.results-header>span{color:#647267;font-size:11px}
.store-list{padding:0 16px 16px;scrollbar-color:#b9cbb5 transparent}
.store-item{padding:16px;margin-bottom:9px;border:1px solid #e0e5db;border-radius:14px;background:#fff}
.store-item:not(.selected):after{display:none}
.store-item h3{font-size:14px;font-weight:800;letter-spacing:-.45px;line-height:1.5}
.store-item p{font-size:12px;color:#68746b;margin-bottom:10px}
.store-item:hover{background:#f6faef;border-color:#9caf96}
.store-item.selected{border-color:#007d51;background:#f0f9e8;box-shadow:inset 3px 0 #007d51}
.store-tag{background:#e8f5dd;color:#356344;border-radius:5px;padding:4px 6px;font-size:10px!important}
.store-tag-neutral{background:#f1f3ee;color:#637261}
.item-arrow{opacity:1;margin-top:3px;color:#708e75}
.map-panel{margin:18px 18px 18px 0;border:1px solid #d3ded1;border-radius:24px;overflow:hidden;isolation:isolate}
.map-panel,#map{background:#e8efdf}
.map-location-label{top:20px;left:20px;border:1px solid #d4dfcf;border-radius:30px;padding:10px 14px;background:#fffffff2;color:#213f2e;font-size:14px}
.map-location-secondary{font-size:11px;color:#637760}
.fit-map{top:20px;right:20px;border:1px solid #2b503b;border-radius:25px;background:#fffefb;color:#254b35;box-shadow:2px 2px 0 #c3d7b2;padding:10px 13px}
.spot-cluster{background:#007d51;border:4px solid #fffefb;box-shadow:0 2px 0 #31513a35;color:white;font-weight:800}
.map-legend{background:#fffefbe8;border:1px solid #d3dfca;border-radius:20px;color:#52664c;padding:8px 11px}
.leaflet-control-zoom{border:1px solid #9aaf90!important;box-shadow:2px 2px 0 #cbdbbb!important;border-radius:12px!important;overflow:hidden}
.leaflet-control-zoom a{background:#fffefb!important}
.leaflet-popup-content-wrapper{border:1px solid #b1c6aa;border-radius:18px;box-shadow:0 8px 24px #16341d20}
.popup-title{font-weight:800}.popup-directions{border-radius:9px!important}
.promo-carousel{border:1px solid #176742;border-radius:15px;box-shadow:3px 3px 0 #b4c99a;right:65px;bottom:48px}
.promo-carousel .matcha-caption strong{display:table;padding:2px 6px;margin:0 0 5px;background:#dff48d;color:#143723;border-radius:3px;transform:rotate(-3deg);font-size:10px}
.promo-carousel .matcha-copy h2{font-weight:850}
#promo-show{border:1px solid #244b35;background:#dff48d;color:#24412c;box-shadow:2px 2px 0 #bbcda4;border-radius:8px}
.guide-dialog{border:1px solid #c8d7bc;border-radius:20px;background:#fffefb}
.mobile-view-switch{border-color:#dae3d1}
@media(min-width:1700px){.workspace{grid-template-columns:400px minmax(0,1fr)}.finder-header{padding:34px 30px 24px}.finder-header h1{font-size:48px}.store-item h3{font-size:16px}}
@media(max-width:1120px) and (min-width:761px){.workspace{grid-template-columns:330px minmax(0,1fr)}.finder-header{padding:24px 22px 20px}.finder-header h1{font-size:39px}.site-header{padding:0 24px}.brand-logo{width:180px}.map-location-secondary,.label-divider{display:none}.map-location-label{left:14px}.fit-map{right:14px}}
@media(max-width:760px){
 .site-header{height:70px;padding:0 18px;gap:12px}.brand{gap:6px}.brand-logo{width:143px}.brand-partner{padding-left:7px;margin-left:3px}.brand-partner img{width:49px;height:49px}.header-nav{gap:0}.header-nav .text-button{font-size:12px}.preview-badge{display:none}
 .workspace{display:flex;min-height:calc(100dvh - 70px);height:auto}.sidebar{display:contents}.finder-header{padding:24px 22px 20px;background:#fffefb}
 .finder-header h1{font-size:33px;line-height:1.3;letter-spacing:-1.8px;margin:13px 0 7px}.finder-header h1 .title-smoothie,.finder-header h1 .title-finder{display:inline}.finder-header h1 .title-finder{margin-left:7px}.finder-header h1 .title-smoothie:after{height:9px;right:-2px}
 .eyebrow{font-size:9px;letter-spacing:1px}.intro{font-size:12px;margin-bottom:17px}.search-form{height:48px}.regions{max-height:none;margin-top:16px;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding:0 0 5px}.regions button{flex-shrink:0;font-size:12px;padding:8px 12px}
 .mobile-view-switch{background:#fffefb;gap:28px}.mobile-view-switch button{font-size:12px;padding:13px 0}.mobile-view-switch button[aria-pressed=true]{color:#007d51;border-color:#007d51}
 .map-panel{margin:12px;border-radius:18px;flex:none;height:max(460px,calc(100dvh - 360px))}.map-location-label{left:13px;top:14px;font-size:13px;padding:9px 11px}.fit-map{right:13px;top:14px;font-size:11px;padding:9px 10px}
 .results-panel{background:#fffefb}.results-header{padding:18px 22px}.store-list{padding:0 16px 15px}.store-item h3{font-size:14px}.store-item p{font-size:12px}
 .promo-carousel{right:55px;bottom:46px}#promo-show{right:55px;bottom:24px}
}
@media(max-width:360px){.finder-header{padding-left:18px;padding-right:18px}.finder-header h1{font-size:29px}.site-header{padding:0 14px}.brand-logo{width:130px}.brand-partner img{width:44px;height:44px}}
