.ee420-directory{--ee420-ink:#1d2c22;--ee420-sub:#647466;--ee420-line:#e5eae3;--ee420-tint:#f5f8f4;--ee420-primary:#236d3d;color:var(--ee420-ink);font-family:inherit;max-width:1280px;margin:1.5rem auto}
.ee420-directory *{box-sizing:border-box}
.ee420-directory [hidden]{display:none!important}
.ee420-header{border-radius:20px;background:linear-gradient(125deg,#193e2b,#276541);color:white;padding:clamp(24px,4vw,48px);margin-bottom:18px}
.ee420-header .ee420-eyebrow{margin:0 0 8px;letter-spacing:.13em;font-size:11px;font-weight:750;opacity:.78}
.ee420-header h2{font-size:clamp(26px,3vw,37px);color:white;line-height:1.2;margin:0 0 10px}
.ee420-header p:last-child{margin:0;color:#dceadf;max-width:700px;font-size:15px;line-height:1.6}
.ee420-tools{background:#fff;border:1px solid var(--ee420-line);padding:18px 18px 14px;border-radius:16px;box-shadow:0 3px 12px rgba(0,0,0,.03)}
.ee420-label{font-size:13px;font-weight:700;display:block;margin-bottom:7px}
.ee420-search{width:100%;padding:13px 14px!important;border:1px solid #cfd9cf!important;border-radius:10px!important;font-size:16px!important;background:#fff!important;color:var(--ee420-ink)!important;box-shadow:none!important}
.ee420-search:focus,.ee420-filters select:focus{outline:2px solid #7ab991;outline-offset:1px}
.ee420-filters{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-top:12px}
.ee420-filters label{font-weight:650;font-size:12px;min-width:150px;flex:1 1 180px}
.ee420-filters select{display:block;margin-top:5px;width:100%;min-width:0;padding:10px!important;border:1px solid #cfd9cf!important;border-radius:9px!important;background:#fff!important;color:var(--ee420-ink)!important;font-size:14px!important}
.ee420-filters button{min-height:42px;margin:0;padding:10px 14px!important;border:1px solid var(--ee420-line)!important;border-radius:9px!important;background:#fff!important;color:var(--ee420-ink)!important;font:600 13px/1.3 inherit!important;cursor:pointer}
.ee420-filters .ee420-toggle{background:var(--ee420-primary)!important;border-color:var(--ee420-primary)!important;color:white!important}
.ee420-filters button:hover{filter:brightness(.96)}
.ee420-count{margin:16px 3px!important;color:var(--ee420-sub);font-weight:650;font-size:13px}
.ee420-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.ee420-show-map .ee420-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)}
.ee420-results{display:grid;gap:12px;min-width:0}
.ee420-card{display:flex;gap:15px;align-items:flex-start;padding:16px;border:1px solid var(--ee420-line);border-radius:14px;background:#fff;min-width:0;box-shadow:0 2px 8px rgba(19,55,31,.035)}
.ee420-card-image{width:86px;min-width:86px;height:86px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--ee420-line);border-radius:12px;background:#f5f8f5}
.ee420-card-image img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain;padding:6px}
.ee420-card-body{flex:1;min-width:0}
.ee420-card-top{display:flex;gap:10px;align-items:start;justify-content:space-between}
.ee420-card h3{font-size:17px;line-height:1.4;margin:0 0 6px;font-weight:750}
.ee420-card h3 a{color:var(--ee420-ink);text-decoration:none}
.ee420-card h3 a:hover{text-decoration:underline}
.ee420-city-label{font-size:11px;line-height:1.35;color:#54735d;background:#eff5f0;border:1px solid #dfe9df;padding:4px 8px;border-radius:100px;white-space:nowrap}
.ee420-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}
.ee420-chips span{font-size:11px;font-weight:600;color:#236d3d;background:#e8f4ea;border-radius:99px;padding:2px 8px}
.ee420-address,.ee420-description,.ee420-hours{font-size:13px;line-height:1.5;margin:5px 0!important;white-space:pre-line}
.ee420-description{color:var(--ee420-sub)}
.ee420-actions{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid var(--ee420-line);padding-top:10px;margin-top:12px}
.ee420-actions a{font-size:13px;font-weight:700;color:var(--ee420-primary);text-decoration:none}
.ee420-actions a:hover{text-decoration:underline}
.ee420-map-panel{position:sticky;top:20px;background:#fff;border:1px solid var(--ee420-line);border-radius:14px;padding:10px;min-width:0}
.ee420-map-notice{font-size:11px;color:var(--ee420-sub);line-height:1.4;margin:2px 5px 8px!important}
.ee420-map{width:100%;height:590px;min-height:320px;background:#e8eee8;border-radius:10px;overflow:hidden}
.ee420-map-status{font-size:12px!important;color:var(--ee420-sub)!important;margin:10px 5px 4px!important}
.ee420-empty{background:var(--ee420-tint);padding:24px;border-radius:12px;color:var(--ee420-sub)}
.ee420-infowindow{font:14px/1.5 Arial,sans-serif;max-width:220px}.ee420-infowindow strong{font-size:16px}.ee420-infowindow p{margin:5px 0 10px}.ee420-infowindow a{color:#236d3d;font-weight:700}
.ee420-shop-details{border:1px solid #e5eae3;border-radius:14px;padding:20px;margin:24px 0;background:#fafcf9}
.ee420-shop-details dl{display:grid;grid-template-columns:minmax(120px,170px) 1fr;gap:9px 16px;margin:15px 0}
.ee420-shop-details dt{font-weight:700}.ee420-shop-details dd{margin:0;white-space:pre-line;overflow-wrap:anywhere}
.ee420-shop-details a{color:#236d3d}.ee420-shop-details .ee420-verified{font-size:12px;color:#647466}
@media(max-width:920px){.ee420-show-map .ee420-layout{grid-template-columns:1fr}.ee420-map-panel{position:static;grid-row:1}.ee420-map{height:440px}}
@media(max-width:600px){.ee420-header{padding:24px 20px}.ee420-tools{padding:14px}.ee420-card{padding:13px;gap:10px}.ee420-card-image{width:66px;min-width:66px;height:66px}.ee420-card h3{font-size:15px}.ee420-city-label{font-size:10px}.ee420-map{height:385px}.ee420-filters label{flex:1 1 120px}.ee420-filters button{flex:1 1 46%}.ee420-shop-details dl{grid-template-columns:1fr;gap:4px}}
/* v0.2: clearer action bar and official Places UI Kit in marker popup */
.ee420-directory .ee420-actions{align-items:center;gap:10px 16px}
.ee420-directory .ee420-actions button.ee420-focus-shop{font-size:13px;font-weight:700;font-family:inherit;line-height:1.3;background:transparent;color:var(--ee420-primary);border:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.ee420-directory .ee420-actions button.ee420-focus-shop:focus-visible{outline:2px solid var(--ee420-primary);outline-offset:4px}
.ee420-infowindow{min-width:185px;max-width:260px}
.ee420-infowindow a{display:block;margin-top:7px;overflow-wrap:anywhere}
.ee420-infowindow gmp-place-details-compact{max-width:100%}

/* v0.3: wider browsable directory, compact cards, larger interactive map */
.ee420-directory{
  width:min(1460px,calc(100vw - 48px));max-width:none;
  position:relative;left:50%;transform:translateX(-50%);margin:22px 0 42px;
}
.ee420-directory .ee420-header{padding:24px 32px;border-radius:17px;margin-bottom:14px}
.ee420-directory .ee420-header h2{font-size:clamp(25px,2.6vw,33px);margin-bottom:6px}
.ee420-directory .ee420-header p:last-child{font-size:14px}
.ee420-directory .ee420-tools{padding:15px 18px;border-radius:13px}
.ee420-directory .ee420-filters{gap:8px;margin-top:10px}
.ee420-directory .ee420-filters button,.ee420-directory .ee420-filters select{min-height:42px}
.ee420-directory .ee420-count{margin:10px 2px!important}
.ee420-directory .ee420-layout{gap:14px}
.ee420-directory.ee420-show-map .ee420-layout{grid-template-columns:minmax(320px,.83fr) minmax(0,1.35fr)}
.ee420-directory .ee420-results{gap:8px}
.ee420-directory.ee420-show-map .ee420-results{max-height:650px;overflow-y:auto;overscroll-behavior:contain;padding:1px 5px 5px 0}
.ee420-directory .ee420-card{padding:13px;gap:12px;border-radius:12px;box-shadow:none}
.ee420-directory .ee420-card-image{width:74px;min-width:74px;height:74px;border-radius:10px}
.ee420-directory .ee420-card h3{font-size:15.5px;line-height:1.25;margin:0 0 4px}
.ee420-directory .ee420-card .ee420-chips{margin-bottom:4px}
.ee420-directory .ee420-card .ee420-address{margin:4px 0!important;font-size:12px;color:#42564a}
.ee420-directory .ee420-card .ee420-description{margin:4px 0!important;font-size:12px;line-height:1.35;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;white-space:normal}
.ee420-directory .ee420-card .ee420-hours{margin:5px 0!important;font-size:12px;white-space:normal;color:#415848}
.ee420-directory .ee420-card .ee420-hours summary{display:list-item;cursor:pointer;font-weight:650}
.ee420-directory .ee420-card .ee420-hours p{margin:6px 0 0!important;font-size:12px;line-height:1.45}
.ee420-directory .ee420-card .ee420-actions{gap:8px 13px;margin-top:8px;padding-top:8px}
.ee420-directory .ee420-card .ee420-actions a,.ee420-directory .ee420-card .ee420-actions button.ee420-focus-shop{font-size:12px}
.ee420-directory .ee420-city-label{padding:2px 6px;font-size:10px}
.ee420-directory .ee420-chips span{padding:2px 7px;font-size:10px}
.ee420-directory .ee420-map-panel{padding:8px;top:14px;border-radius:12px}
.ee420-directory .ee420-map-notice{margin:3px 6px 6px!important;font-size:10px}
.ee420-directory .ee420-map{height:610px;border-radius:8px;min-height:300px}
.ee420-directory .ee420-map-status{margin:7px 5px 3px!important;font-size:11px!important}
.ee420-directory .ee420-mobile-switch{display:none}
.ee420-infowindow{width:280px;max-width:280px;min-width:0;padding:1px 0 0;font:13px/1.35 Arial,sans-serif}
.ee420-infowindow strong{display:block;font-size:14px;margin:0 0 6px}
.ee420-infowindow p{font-size:12px;line-height:1.4;margin:4px 0}
.ee420-infowindow .ee420-info-actions{border-top:1px solid #e3e9e3;padding-top:7px;margin-top:8px;display:flex;gap:8px 14px;flex-wrap:wrap}
.ee420-infowindow .ee420-info-actions a{display:inline-block;font-size:12px;margin:0;font-weight:700}
@media(max-width:920px){
  .ee420-directory{width:calc(100vw - 26px);margin:14px 0 32px}
  .ee420-directory .ee420-header{padding:22px}
  .ee420-directory.ee420-show-map .ee420-layout{grid-template-columns:1fr}
  .ee420-directory .ee420-map-panel{position:static;grid-row:1}
  .ee420-directory.ee420-show-map .ee420-results{max-height:none;overflow:visible;padding:0}
  .ee420-directory .ee420-mobile-switch{display:flex;gap:4px;background:#eff4ee;padding:5px;margin:10px 0;border-radius:10px}
  .ee420-directory .ee420-mobile-switch button{flex:1 1 50%;cursor:pointer;background:none;color:#264934;border:0;border-radius:7px;padding:11px;font-family:inherit;font-size:14px;line-height:1.25;font-weight:700}
  .ee420-directory .ee420-mobile-switch button.is-active{background:#fff;box-shadow:0 1px 4px #0001;color:#205f39}
  .ee420-directory .ee420-filters .ee420-toggle{display:none}
  .ee420-directory.ee420-mobile-map-view .ee420-results{display:none}
  .ee420-directory .ee420-map{height:min(67vh,570px);min-height:330px}
}
@media(max-width:600px){
  .ee420-directory{width:calc(100vw - 20px)}
  .ee420-directory .ee420-header{padding:19px 18px}
  .ee420-directory .ee420-tools{padding:12px}
  .ee420-directory .ee420-card{padding:12px;gap:10px}
  .ee420-directory .ee420-card-image{width:62px;min-width:62px;height:62px}
  .ee420-directory .ee420-card .ee420-description{-webkit-line-clamp:2}
  .ee420-directory .ee420-filters label{min-width:110px;flex:1 1 calc(50% - 8px)}
  .ee420-directory .ee420-filters .ee420-reset{flex:1 1 100%}
  .ee420-directory .ee420-map{height:min(63vh,530px);min-height:315px}
}

.ee420-directory .ee420-filters button{font-family:inherit!important;font-size:13px!important;line-height:1.3!important;font-weight:650!important}
.ee420-directory .ee420-card-image-empty{font-size:32px;color:#789881;background:#f1f7f1}


/* v0.3.1: respect the WordPress theme's content column.
   v0.3's viewport-width centering intentionally escaped the page column;
   it caused the header, filters and map/list to extend past the article.
   This narrow CSS override changes only presentation, not data or JS. */
.ee420-directory{
  width:100%;
  max-width:100%;
  min-width:0;
  position:static;
  left:auto;
  right:auto;
  transform:none;
  margin:20px auto 36px;
}
.ee420-directory .ee420-header,
.ee420-directory .ee420-tools,
.ee420-directory .ee420-layout,
.ee420-directory .ee420-map-panel{
  max-width:100%;
  min-width:0;
}
.ee420-directory .ee420-header{overflow-wrap:break-word}
/* The site's global paragraph and heading styles were overriding the
   low-contrast eyebrow and description on the dark-green hero. */
.ee420-directory .ee420-header .ee420-eyebrow{
  color:#e5f5e8!important;
  opacity:1!important;
  font-size:12px;
  font-weight:750;
  letter-spacing:.09em;
}
.ee420-directory .ee420-header h2{color:#fff!important}
.ee420-directory .ee420-header p:last-child{color:#f0f8f1!important;opacity:1!important}
/* Theme-safe desktop column widths, even when contained in a narrow article. */
.ee420-directory.ee420-show-map .ee420-layout > *{min-width:0}
.ee420-directory .ee420-map{max-width:100%}
@media(max-width:920px){
  .ee420-directory{width:100%;max-width:100%;margin:14px auto 28px}
}
@media(max-width:600px){
  .ee420-directory{width:100%;max-width:100%}
}

/* v0.4 design system – within theme width, responsive, legible, restrained */
.ee420-directory{--ee420-ink:#182d20;--ee420-sub:#516456;--ee420-primary:#21673a;--ee420-line:#dce6dd;--ee420-tint:#f4f8f4;font-size:15px}
.ee420-directory a,.ee420-shop-profile a{text-underline-offset:3px}
.ee420-directory :focus-visible,.ee420-shop-profile :focus-visible{outline:3px solid #86b99a!important;outline-offset:3px!important}
.ee420-directory .ee420-header{background:linear-gradient(115deg,#193c2a 0%,#286843 100%);padding:clamp(22px,3.8vw,38px);border-radius:16px;box-shadow:0 9px 24px rgba(19,63,36,.08)}
.ee420-directory .ee420-header .ee420-eyebrow{font-size:11px;letter-spacing:.115em;color:#e4f5e7!important}
.ee420-directory .ee420-header h2{font-size:clamp(26px,3vw,34px);font-weight:800;letter-spacing:-.025em;line-height:1.15;margin-bottom:8px}
.ee420-directory .ee420-header p:last-child{font-size:14px;max-width:64ch;line-height:1.55}
.ee420-directory .ee420-tools{border-radius:14px;box-shadow:0 7px 22px rgba(26,53,33,.04)}
.ee420-directory .ee420-search{min-height:48px!important}
.ee420-directory .ee420-count{font-size:13px!important;margin:14px 3px!important}
.ee420-directory .ee420-card{border:1px solid var(--ee420-line);background:#fff;transition:border-color .16s ease,box-shadow .16s ease}
.ee420-directory .ee420-card:hover{border-color:#a9c9b0;box-shadow:0 6px 20px rgba(22,61,38,.065)}
.ee420-directory .ee420-card h3{font-size:clamp(15px,1.3vw,17px);overflow-wrap:anywhere;letter-spacing:-.01em}
.ee420-directory .ee420-card-image{background:#f1f6f1;border:1px solid #e2eae2;overflow:hidden}
.ee420-directory .ee420-card-image img{width:100%;height:100%;object-fit:contain}
.ee420-directory .ee420-actions{align-items:center}
.ee420-directory .ee420-actions a,.ee420-directory .ee420-actions button.ee420-focus-shop{font-size:12.5px;line-height:1.6}
.ee420-directory .ee420-card .ee420-hours summary{padding:5px 0;min-height:27px}
.ee420-directory .ee420-map-panel{border-color:var(--ee420-line);box-shadow:0 4px 20px #163b2310}
.ee420-directory .ee420-map-notice{color:#52665a}
.ee420-directory .ee420-empty{border:1px dashed #b9d1c0}
.ee420-directory .ee420-mobile-switch button.is-active{box-shadow:0 2px 7px #112d1b15}
/* Prevent the narrow mobile card's city badge from squeezing long names. */
.ee420-directory .ee420-card-top{gap:8px}
.ee420-directory .ee420-card-top h3{min-width:0}
.ee420-directory .ee420-city-label{flex:none}
@media(min-width:921px){
 .ee420-directory.ee420-show-map .ee420-layout{grid-template-columns:minmax(0,.92fr) minmax(0,1.18fr)}
 .ee420-directory.ee420-show-map .ee420-results{max-height:650px;scrollbar-color:#b3cbbb #f3f7f3;scrollbar-width:thin}
 .ee420-directory .ee420-map{height:610px}
}
@media(max-width:920px){
 .ee420-directory .ee420-header{padding:22px 20px}
 .ee420-directory .ee420-map{height:min(58vh,490px);min-height:320px}
 .ee420-directory .ee420-mobile-switch{margin:13px 0}
}
@media(max-width:600px){
 .ee420-directory .ee420-header{padding:22px 19px}
 .ee420-directory .ee420-header h2{font-size:clamp(25px,7vw,31px)}
 .ee420-directory .ee420-tools{padding:13px}
 .ee420-directory .ee420-card{padding:13px}
 .ee420-directory .ee420-card-image{width:60px;min-width:60px;height:60px}
 .ee420-directory .ee420-map{height:min(54vh,460px);min-height:315px}
 .ee420-directory .ee420-card .ee420-actions{gap:8px 15px}
 .ee420-directory .ee420-card h3{font-size:15.5px}
}
/* Single-store profile; avoids theme-specific wide wrappers. */
.ee420-shop-profile{--ee420-primary:#21673a;--ee420-ink:#1a3224;--ee420-sub:#586b5e;--ee420-line:#dce6dd;color:var(--ee420-ink);border:1px solid var(--ee420-line);border-radius:18px;overflow:hidden;margin:26px 0 36px;background:#fff;box-shadow:0 7px 30px #173b2210}
.ee420-shop-profile *{box-sizing:border-box}
.ee420-shop-profile__hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:clamp(20px,3vw,32px);background:linear-gradient(120deg,#f2f8f2,#fbfdfb)}
.ee420-shop-profile__intro{flex:1;min-width:0}
.ee420-shop-profile__eyebrow{font-weight:800;letter-spacing:.12em;font-size:10px;color:#376b45}
.ee420-shop-profile__city{display:inline-flex;background:#e3f0e5;border-radius:99px;padding:4px 11px;font-size:12px;margin:0 0 0 10px;color:#245e37}
.ee420-shop-profile__hero h2{font-size:clamp(24px,3.5vw,34px)!important;line-height:1.18!important;letter-spacing:-.03em;color:var(--ee420-ink)!important;margin:13px 0!important}
.ee420-shop-profile__chips{display:flex;gap:6px;flex-wrap:wrap}
.ee420-shop-profile__chips span{font-size:12px;font-weight:700;background:#e4f2e7;border-radius:99px;padding:5px 10px;color:#27613c}
.ee420-shop-profile__address{font-size:15px;color:var(--ee420-sub);margin:13px 0 0!important}
.ee420-shop-profile__image{width:118px;height:118px;flex:none;border:1px solid #dfe8df;background:white;border-radius:14px;padding:10px;display:grid;place-items:center}
.ee420-shop-profile__image img{width:100%;height:100%;object-fit:contain}
.ee420-shop-profile__body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:0;border-top:1px solid var(--ee420-line)}
.ee420-shop-profile__info,.ee420-shop-profile__links{padding:clamp(20px,3vw,30px)}
.ee420-shop-profile__links{border-left:1px solid var(--ee420-line);background:#fcfefc;display:flex;flex-direction:column;gap:10px;align-items:stretch}
.ee420-shop-profile h3{margin:0 0 16px!important;font-size:18px!important;color:var(--ee420-ink)!important}
.ee420-shop-profile dl{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px 14px;margin:0}
.ee420-shop-profile dt{font-weight:750;color:#405b48}
.ee420-shop-profile dd{margin:0;overflow-wrap:anywhere;line-height:1.6}
.ee420-shop-profile a{color:var(--ee420-primary);font-weight:700}
.ee420-shop-profile__links a{display:block;border:1px solid var(--ee420-line);padding:12px 14px;border-radius:10px;text-decoration:none;line-height:1.4}
.ee420-shop-profile__links a:hover{background:#f0f7f0}
.ee420-shop-profile__links a.ee420-shop-profile__primary{color:#fff;background:var(--ee420-primary);border-color:var(--ee420-primary)}
.ee420-shop-profile__verified{font-size:12px;color:var(--ee420-sub);margin:18px 0 0!important}
@media(max-width:680px){.ee420-shop-profile__hero{padding:20px;gap:12px}.ee420-shop-profile__image{height:82px;width:82px;padding:7px}.ee420-shop-profile__body{grid-template-columns:1fr}.ee420-shop-profile__links{border-left:none;border-top:1px solid var(--ee420-line)}.ee420-shop-profile dl{grid-template-columns:1fr;gap:4px}.ee420-shop-profile dd{margin-bottom:12px}.ee420-shop-profile__hero h2{font-size:24px!important}}

/* v0.4.1 standalone store template and popup refinement */
.ee420-single-shell{box-sizing:border-box;width:min(1120px,calc(100% - 36px));max-width:1120px;margin:30px auto 64px;font-size:16px;color:#193623}
.ee420-single-shell *{box-sizing:border-box}
.ee420-single-breadcrumb a{font-weight:700;color:#27663d;text-decoration:none}
.ee420-single-shell .ee420-shop-profile{margin:18px 0 0}
.ee420-single-shell .ee420-shop-profile__description{padding:25px 32px;color:#405648;font-size:16px;line-height:1.75}
.ee420-single-shell .ee420-shop-profile__description p{margin:0 0 13px}
.ee420-single-shell .ee420-shop-profile__description p:last-child{margin-bottom:0}
.ee420-single-map-wrap{padding:25px 30px 30px;border-top:1px solid #dce6dd}
.ee420-single-map-wrap h3{font-size:20px!important;margin:0 0 17px!important}
.ee420-single-map{width:100%;height:320px;border-radius:12px;overflow:hidden;background:#edf5ef}
.ee420-single-shell .ee420-shop-profile__image{width:100px;height:100px}
.ee420-infowindow{font:14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif!important;color:#243b2b;padding:3px 1px 1px}
.ee420-info-head{display:flex;gap:11px;align-items:center;min-width:0}
.ee420-info-logo{width:49px;height:49px;object-fit:contain;border-radius:9px;border:1px solid #e3e9e3;background:#f6f9f6;flex:none}
.ee420-info-title{min-width:0;display:flex;flex-direction:column;gap:2px}
.ee420-info-title strong{font-size:15px;line-height:1.25;overflow-wrap:anywhere}
.ee420-info-title span{font-size:12px;color:#647468}
.ee420-info-address{font-size:12.5px;color:#586b5e;margin:9px 0 4px!important}
.ee420-info-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid #e1ebe1}
.ee420-info-actions a{color:#22643a;font-size:13px;font-weight:750;text-decoration:none}
.ee420-info-actions a:first-child{padding:9px 12px;background:#23673e;border-radius:9px;color:#fff!important}
.ee420-infowindow gmp-place-details-compact{border-top:1px solid #e3ece3;padding-top:6px!important}
@media(max-width:650px){.ee420-single-shell{width:calc(100% - 24px);margin:18px auto 42px}.ee420-single-shell .ee420-shop-profile__description{padding:22px 19px}.ee420-single-map-wrap{padding:20px 16px}.ee420-single-map{height:270px}.ee420-info-logo{width:42px;height:42px}}

/* v0.4.2: isolated single shop header/footer, consistent with directory visual language. */
body.ee420-store-standalone{margin:0!important;background:#f7f8f7!important;color:#15291e;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif!important;min-height:100vh}
body.ee420-store-standalone #wpadminbar{z-index:99999}
.ee420-site-header,.ee420-site-header *,.ee420-site-footer,.ee420-site-footer *{box-sizing:border-box}
.ee420-site-header{background:#fff;border-bottom:1px solid #e5ece6;width:100%;position:relative;z-index:5}
.ee420-site-header__inner{max-width:1120px;width:calc(100% - 36px);min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 auto}
.ee420-site-brand{color:#070e08!important;font-weight:900!important;font-size:27px;text-decoration:none!important;letter-spacing:-1px;display:inline-flex;align-items:center;gap:10px;white-space:nowrap;line-height:1}
.ee420-site-brand__logo{width:auto;max-width:210px;height:49px;object-fit:contain}
.ee420-site-brand__mark{display:grid;place-items:center;border:2px solid #111;border-radius:50%;height:38px;width:38px;color:#258c48;font-size:27px;line-height:1}
.ee420-site-navigation{display:flex;align-items:center;gap:30px}
.ee420-site-navigation a{color:#18241c!important;font-weight:600!important;text-decoration:none!important;font-size:14px}
.ee420-site-navigation a:hover{text-decoration:underline!important}
.ee420-site-maplink{padding:12px 18px!important;background:#ffcc34;color:#14140a!important;border-radius:9px;text-decoration:none!important;font-weight:800!important;font-size:14px;white-space:nowrap}
.ee420-site-footer{max-width:1120px;margin:0 auto;padding:24px 18px 38px;color:#758176;font-size:13px;text-align:center}
.ee420-site-footer a{color:#27673e;text-decoration:none;font-weight:750}
.ee420-single-shell{background:transparent}
@media(max-width:800px){.ee420-site-header__inner{gap:12px;flex-wrap:wrap;padding:14px 0}.ee420-site-navigation{order:3;flex-basis:100%;gap:22px;flex-wrap:wrap;justify-content:center}.ee420-site-brand{font-size:22px}.ee420-site-maplink{font-size:12px;padding:11px 12px!important}}
@media(max-width:450px){.ee420-site-header__inner{width:calc(100% - 24px)}.ee420-site-brand__logo{max-width:140px;height:40px}.ee420-site-navigation{gap:14px}.ee420-site-navigation a{font-size:12px}.ee420-site-maplink{max-width:160px;white-space:normal;text-align:center}}

/* v0.4.3 — Mobile map selection: no Google InfoWindow clipping. */
.ee420-mobile-shop-sheet[hidden]{display:none!important}
.ee420-mobile-shop-sheet{display:none}
@media(max-width:650px){
  .ee420-directory .ee420-map-panel{position:relative;min-width:0;overflow:visible}
  .ee420-directory .ee420-mobile-shop-sheet:not([hidden]){
    display:block;position:relative;z-index:3;margin:10px 0 4px;padding:16px;
    border:1px solid #dce8de;border-radius:14px;background:#fff;
    box-shadow:0 6px 22px rgba(20,52,32,.10);box-sizing:border-box;
    width:100%;min-width:0;max-width:100%;overflow:hidden;
  }
  .ee420-mobile-shop-content{font:14px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;color:#213d2d;min-width:0;max-width:100%}
  .ee420-mobile-shop-content .ee420-info-head{display:flex;gap:12px;align-items:center;min-width:0;padding-right:26px}
  .ee420-mobile-shop-content .ee420-info-logo{width:52px;height:52px;flex:0 0 52px;object-fit:contain;border:1px solid #e2e9e2;border-radius:10px}
  .ee420-mobile-shop-content .ee420-info-title{flex:1;min-width:0;overflow-wrap:anywhere}
  .ee420-mobile-shop-content .ee420-info-title strong{display:block;font-size:17px;line-height:1.25;margin-bottom:3px}
  .ee420-mobile-shop-content .ee420-info-title span{display:block;font-size:12px;color:#66766b}
  .ee420-mobile-shop-content .ee420-info-address{font-size:13px;line-height:1.45;margin:10px 0;color:#516456;overflow-wrap:anywhere}
  .ee420-mobile-shop-content gmp-place-details-compact{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box;overflow:hidden}
  .ee420-mobile-shop-content .ee420-info-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}
  .ee420-mobile-shop-content .ee420-info-actions a{display:block;text-align:center;text-decoration:none!important;border-radius:9px;padding:11px 8px;font-weight:700;font-size:13px;white-space:normal;overflow-wrap:anywhere}
  .ee420-mobile-shop-content .ee420-info-primary{background:#206b3b;color:#fff!important}
  .ee420-mobile-shop-content .ee420-info-secondary{border:1px solid #dce8de;background:#f8fbf8;color:#206b3b!important}
  .ee420-directory .ee420-sheet-close{position:absolute;top:9px;right:9px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#f0f5ef;color:#405d48;font-size:25px;line-height:1;cursor:pointer;padding:0}
}
