/* Repairs shared by newly generated and previously saved storefronts. */
.geo-storefront main > section:is(#menu,#featured_offerings,#programs,#business_intro) :is(.geo-service-photo-slot,.geo-story-photo-slot,.geo-photo-unavailable) {
  display:none!important;
}
.geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-salon-service-grid:not(:has(img)),
.geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-menu-featured-list:not(:has(img)) {
  display:grid!important; grid-template-columns:minmax(0,1fr)!important; gap:0!important;
}
.geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-salon-service-card:not(:has(img)) {
  display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; align-items:start!important;
  gap:12px 20px!important; min-height:0!important; padding:20px 0!important;
  background:transparent!important; border:0!important; border-bottom:1px solid var(--geo-line,#dce4ed)!important;
  border-radius:0!important; box-shadow:none!important; align-self:start;
}
.geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-salon-service-card:not(:has(img)) > .geo-salon-service-content {
  min-width:0!important; padding:0!important;
}
.geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-salon-service-card:not(:has(img)) > .geo-salon-service-price {
  margin:0!important; padding:0!important; max-width:100%; text-align:right; white-space:normal!important;
}
.geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-salon-service-card:not(:has(img)) h3 {
  margin:4px 0 0!important; font-size:clamp(17px,2vw,21px)!important; line-height:1.5; word-break:keep-all; overflow-wrap:break-word;
}
.geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-menu-featured-list > li:not(:has(img)) {
  display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; min-height:0!important; gap:12px 20px!important;
}
.geo-storefront main > section#business_intro .geo-story-composition:not(:has(img)) {
  display:block!important; min-height:0!important;
}
.geo-storefront main > section#business_intro .geo-reading {
  min-height:0!important;
}
.geo-storefront .geo-hero :is(h1,.geo-hero-tagline,.geo-hero-description) {
  word-break:keep-all!important; overflow-wrap:break-word!important; text-wrap:pretty;
}
.geo-storefront:has(> .geo-preview-bar) > .geo-site-header {
  position:sticky!important; top:var(--geo-preview-height,46px)!important; z-index:100!important;
  margin-top:0!important; background:var(--geo-background,#fff)!important;
}
.geo-storefront:has(> .geo-preview-bar) > .geo-site-header :is(.geo-site-name,.geo-desktop-nav a,.geo-mobile-nav summary) {
  color:var(--geo-text,#172033)!important;
}
.geo-storefront > .geo-preview-bar {
  z-index:101!important;
}
.geo-storefront main > section[id],
.geo-storefront #geo-free-report,
.geo-storefront #geo-owner-report-guide {
  scroll-margin-top:calc(var(--geo-preview-height,0px) + var(--geo-header-height,72px) + 24px);
}
@media(max-width:719px) {
  .geo-storefront:has(> .geo-preview-bar) > .geo-site-header {
    top:var(--geo-preview-height,42px)!important;
  }
  .geo-storefront main > section:is(#menu,#featured_offerings,#programs) .geo-salon-service-card:not(:has(img)) {
    gap:10px 14px!important; padding:18px 0!important;
  }
}
