/* Layouts from the four approved storefront references. */
.geo-site-shell.geo-storefront[data-storefront-design] {
  --design-background:#faf8f4;
  --design-text:#1c1e1b;
  --design-muted:#6e6a63;
  --design-accent:#9e5834;
  --design-line:color-mix(in srgb,var(--design-text) 15%,transparent);
  --design-sans:Pretendard,"Noto Sans KR","Malgun Gothic",system-ui,sans-serif;
  --design-heading:"Noto Serif KR","Nanum Myeongjo",Batang,serif;
  --design-inset:clamp(22px,7.4vw,104px);
  --design-space:clamp(55px,6.1vw,88px);
  --design-gap:clamp(28px,7.2vw,110px);
  background:var(--design-background)!important;
  color:var(--design-text);
  font-family:var(--design-sans);
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] {
  --design-background:#fff;
  --design-text:#171717;
  --design-muted:#686868;
  --design-accent:#816c5f;
  --design-heading:var(--design-sans);
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] {
  --design-background:#f5f7f6;
  --design-text:#14221e;
  --design-muted:#566963;
  --design-accent:#2c6e58;
  --design-heading:var(--design-sans);
}
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] {
  --design-background:#f6f3ec;
  --design-text:#2b231d;
  --design-muted:#6e5f53;
  --design-accent:#8c5d38;
}
.geo-site-shell.geo-storefront[data-storefront-design] > .geo-site-header {
  background:var(--design-background)!important;
  border:0!important;
  box-shadow:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] > .geo-site-header:not(.geo-preview-bar + .geo-site-header) {
  position:relative!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] > .geo-site-header :is(.geo-site-name,.geo-desktop-nav a,.geo-mobile-nav summary) {
  color:var(--design-text)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] :is(.geo-header-inner,.geo-hero-inner,.geo-design-programs,.geo-site-footer > .geo-container),
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs,#business_intro,#amenities,#location,#hours,#gallery,#curriculum,#work_process) > .geo-container {
  width:calc(100% - var(--design-inset)*2)!important;
  max-width:1320px!important;
  margin-inline:auto!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] > .geo-site-header .geo-header-inner {
  min-height:72px!important;
  padding-block:9px!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-site-name {
  font-size:clamp(16px,1.6vw,23px)!important;
  font-weight:800!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] > .geo-site-header .geo-header-action a.geo-button {
  color:var(--design-text)!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid currentColor!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding-inline:0!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] :is(.geo-hero,main > section:is(#menu,#featured_offerings,#programs,#business_intro,#amenities,#location,#hours,#gallery,#curriculum,#work_process)) {
  box-sizing:border-box;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:var(--design-space) 0!important;
  overflow:visible!important;
  background:var(--design-background)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:var(--design-text)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero {
  padding-block:clamp(36px,6vw,86px)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero-inner {
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  align-items:center!important;
  gap:var(--design-gap)!important;
  min-height:0!important;
  padding:0!important;
  text-align:left!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero-inner:not(:has(.geo-hero-media img)) {
  grid-template-columns:minmax(0,840px)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero-copy {
  box-sizing:border-box;
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  justify-items:start!important;
  min-width:0;
  max-width:none!important;
  padding:0!important;
  text-align:left!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero :is(h1,.geo-hero-tagline,.geo-hero-description),
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs,#business_intro,#amenities,#location,#hours,#gallery,#curriculum,#work_process) h2 {
  color:var(--design-text)!important;
  text-shadow:none!important;
  word-break:keep-all!important;
  overflow-wrap:break-word!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-eyebrow {
  display:block!important;
  width:auto;
  margin:0 0 12px!important;
  padding:0!important;
  background:none!important;
  border:0!important;
  color:var(--design-accent)!important;
  font:750 12px/1.5 var(--design-sans)!important;
  letter-spacing:.13em!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-eyebrow::before,
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs,#business_intro,#amenities,#location) h2::before {
  content:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero h1,
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-design-has-tagline .geo-hero-tagline {
  max-width:none!important;
  margin:0!important;
  font-family:var(--design-heading)!important;
  font-size:clamp(36px,4.2vw,64px)!important;
  font-weight:750!important;
  line-height:1.16!important;
  letter-spacing:-.065em!important;
  text-wrap:pretty;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero-copy:not(.geo-design-has-tagline) .geo-hero-tagline {
  margin:16px 0 0!important;
  font:600 clamp(17px,2vw,24px)/1.65 var(--design-heading)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-design-has-tagline h1 {
  font:700 clamp(15px,1.35vw,20px)/1.45 var(--design-sans)!important;
  letter-spacing:-.025em!important;
  margin-bottom:10px!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-description {
  max-width:50ch!important;
  margin:18px 0 0!important;
  color:var(--design-muted)!important;
  font:400 clamp(15px,1.3vw,18px)/1.85 var(--design-sans)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-media,
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-image {
  position:relative!important;
  inset:auto!important;
  min-height:0!important;
  height:auto!important;
  width:100%!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-media {
  display:grid!important;
  gap:clamp(8px,1.65vw,24px);
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-media:not(:has(img)) {
  display:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-image img {
  position:static!important;
  display:block!important;
  width:100%!important;
  height:clamp(310px,40vw,560px)!important;
  object-fit:cover!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero :is(.geo-hero-image,.geo-hero-media)::after,
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero::before {
  content:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-hero-end {
  display:flex;
  align-items:end;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:14px 22px;
  width:100%;
  border-top:1px solid var(--design-line);
  padding-top:18px;
  margin-top:clamp(30px,6vw,76px);
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-facts-wrap {
  width:auto!important;
  margin:0!important;
  padding:0!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-facts {
  width:auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  gap:8px 20px!important;
  margin:0!important;
  padding:0!important;
  background:none!important;
  border:0!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-facts > div {
  padding:0!important;
  border:0!important;
  min-width:0;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-facts :is(dt,dd) {
  color:var(--design-text)!important;
  font-family:var(--design-sans)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-actions {
  justify-content:flex-start!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-design-hero-end .geo-hero-actions a.geo-button,
.geo-site-shell.geo-storefront[data-storefront-design] :is(.geo-visit-guide,.geo-location) .geo-button {
  min-height:44px!important;
  border-radius:999px!important;
  background:var(--design-text)!important;
  border:1px solid var(--design-text)!important;
  color:#fff!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] :is(.geo-hero,.geo-visit-guide,.geo-location) .geo-button {
  border-radius:5px!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-design-hero-end .geo-hero-actions a.geo-button-secondary:not(:first-child),
.geo-site-shell.geo-storefront[data-storefront-design] :is(.geo-visit-guide,.geo-location) .geo-button-secondary:not(:first-child) {
  background:transparent!important;
  color:var(--design-text)!important;
  border-color:var(--design-line)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-hero-inner,
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-hero-inner {
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr)!important;
}
.geo-site-shell.geo-storefront:is([data-storefront-design="beauty"],[data-storefront-design="cafe"]) .geo-hero-inner:not(:has(.geo-hero-media img)) {
  grid-template-columns:minmax(0,840px)!important;
}
.geo-site-shell.geo-storefront:is([data-storefront-design="beauty"],[data-storefront-design="cafe"]) .geo-hero .geo-hero-media { grid-row:1; grid-column:1; }
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-hero .geo-hero-image {
  border-radius:50% 50% 8px 8px / 43% 43% 8px 8px!important;
  overflow:hidden!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-hero .geo-hero-image img { height:clamp(340px,35vw,500px)!important; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-hero-media:has(> figure:nth-child(2)) {
  grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)!important;
  align-items:end;
}
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-hero-media > figure:nth-child(n+2) img { height:clamp(210px,25vw,340px)!important; }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-prices {
  box-sizing:border-box;
  width:100%;
  margin:clamp(24px,3.7vw,52px) 0 0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--design-text);
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-price-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:baseline;
  column-gap:14px;
  padding:15px 0;
  border-bottom:1px solid var(--design-line);
  color:var(--design-text);
  font:600 15px/1.55 var(--design-sans);
  word-break:keep-all;
  overflow-wrap:break-word;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-item-price {
  grid-column:2;
  grid-row:1;
  text-align:right;
  font-variant-numeric:tabular-nums;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-item-note {
  grid-column:1;
  color:var(--design-muted);
  font-size:13px;
  font-weight:400;
}
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-price-row { padding-block:8px; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-item-price { color:var(--design-accent); }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-featured-legacy { display:none!important; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bakes {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-top:34px;
}
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-card { min-width:0; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-card figure { margin:0; overflow:hidden; border-radius:10px; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-card figure img { display:block; width:100%; height:215px; object-fit:cover; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-card .geo-example-badge { left:8px; bottom:8px; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-copy { padding-top:14px; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-copy h3 { margin:0 0 7px; font-size:18px; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-copy p { margin:0 0 8px; color:var(--design-muted); font-size:13px; line-height:1.6; }
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-copy strong { color:var(--design-accent); }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero:has(.geo-design-programs) {
  display:block!important;
  height:auto!important;
  max-height:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero .geo-hero-inner:has(.geo-hero-media img) {
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important;
  height:auto!important;
  align-items:center!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero-media:empty {
  display:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero:has(.geo-design-programs) .geo-hero-inner:not(:has(.geo-hero-media img)) {
  grid-template-columns:minmax(0,1fr)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-block:clamp(32px,7vw,96px) 0;
  padding:0;
  list-style:none;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs:not(:has(> li:nth-child(3))) { grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr)); }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero .geo-hero-image img { height:clamp(300px,33vw,480px)!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs > li {
  display:flex;
  flex-direction:column;
  min-height:clamp(165px,21vw,310px);
  gap:8px;
  padding:clamp(20px,2.6vw,36px);
  background:white;
  border:1px solid var(--design-line);
  border-radius:16px;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-program-label {
  margin-bottom:12px;
  color:var(--design-accent);
  font-size:13px;
  font-weight:750;
  letter-spacing:.08em;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs .geo-design-item-name {
  font-size:clamp(18px,2.2vw,28px);
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs .geo-design-item-note {
  color:var(--design-muted);
  font-weight:400;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs .geo-design-item-price {
  align-self:stretch;
  border-top:1px solid var(--design-line);
  margin-top:auto;
  padding-top:16px;
  text-align:right;
}
@media (min-width: 900px) {
  .geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-price-row:has(.geo-design-item-note) {
    grid-template-columns:minmax(110px,max-content) minmax(0,1fr) auto;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-price-row:has(.geo-design-item-note) .geo-design-item-note {
    grid-column:2;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-price-row:has(.geo-design-item-note) .geo-design-item-price {
    grid-column:3;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero-inner:not(:has(.geo-hero-media img)) .geo-hero-copy {
    display:grid!important;
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    column-gap:var(--design-gap);
  }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero-inner:not(:has(.geo-hero-media img)) .geo-hero-copy > :not(.geo-hero-description,.geo-design-hero-end) {
    grid-column:1;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero-inner:not(:has(.geo-hero-media img)) .geo-hero-description {
    grid-column:2;
    grid-row:2 / span 2;
    align-self:center;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-hero-end {
    grid-column:1/-1;
  }
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs,#business_intro,#amenities,#location,#hours,#gallery,#curriculum,#work_process) h2 {
  margin:0 0 24px!important;
  font:750 clamp(27px,3.6vw,48px)/1.2 var(--design-heading)!important;
  letter-spacing:-.055em!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs,#business_intro,#amenities,#location) .geo-section-label {
  color:var(--design-accent)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs) :is(.geo-menu-featured-list,.geo-salon-service-grid):has(img) {
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))!important;
  gap:clamp(16px,2.8vw,38px)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs) :is(.geo-menu-featured-list,.geo-salon-service-grid) > li {
  box-sizing:border-box;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--design-text)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs) :is(.geo-offering-image,.geo-salon-service-photo) {
  position:relative!important;
  margin:0 0 15px!important;
  overflow:hidden;
  border-radius:10px!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs) :is(.geo-offering-image,.geo-salon-service-photo) img {
  width:100%!important;
  height:clamp(180px,20vw,250px)!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="cafe"] main > section:is(#menu,#featured_offerings) :is(.geo-offering-image,.geo-salon-service-photo) img {
  height:clamp(150px,16vw,215px)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs) :is(h3,.geo-price,.geo-price-unlisted,.geo-salon-group-title) {
  color:var(--design-text)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-menu-title {
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:6px 12px;
  width:100%;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-menu-title :is(h3,.geo-price,.geo-salon-service-price) {
  margin:0!important;
  padding:0!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs) :is(.geo-menu-board,.geo-salon-full-catalogue) {
  margin-top:clamp(28px,5vw,70px)!important;
  padding:20px 0 0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid var(--design-line)!important;
  box-shadow:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-menu-with-photos {
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  column-gap:clamp(32px,6vw,94px);
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-menu-with-photos > :not(.geo-design-menu-photos) { grid-column:1; }
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-menu-with-photos > .geo-design-menu-photos {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(125px,100%),1fr));
  align-content:start;
  gap:16px;
  grid-column:2;
  grid-row:1 / span 4;
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-menu-photos figure img {
  height:clamp(190px,25vw,330px)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-design-photo-caption {
  padding-top:7px;
  color:var(--design-text);
  font-size:13px;
  font-weight:700;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-example-photo {
  position:relative;
  margin:0;
  min-width:0;
  overflow:hidden;
  border-radius:10px;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-example-photo img {
  display:block;
  width:100%;
  height:clamp(190px,25vw,330px);
  object-fit:cover;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-example-badge {
  position:absolute;
  left:10px;
  bottom:10px;
  padding:5px 8px;
  border-radius:5px;
  background:rgba(28,30,27,.86);
  color:#fff;
  font-size:11px;
  font-weight:700;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-story-composition {
  display:block!important;
  min-height:0!important;
  padding:0!important;
  background:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-has-visual {
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
  align-items:center!important;
  gap:var(--design-gap)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-images {
  display:grid;
  gap:16px;
  align-items:end;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-images:has(> figure:nth-child(2)) {
  grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-images figure {
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border-radius:12px!important;
  overflow:hidden;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-images img {
  width:100%!important;
  height:clamp(235px,37vw,540px)!important;
  object-fit:cover!important;
  aspect-ratio:auto!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-images figure:nth-child(n+2) img {
  height:clamp(165px,24vw,350px)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="beauty"] main > #business_intro .geo-design-story-images figure:first-child {
  border-radius:48% 48% 8px 8px / 34% 34% 8px 8px!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-reading {
  width:auto!important;
  max-width:none!important;
  min-height:0!important;
  padding:0!important;
  text-align:left!important;
  color:var(--design-text)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-reading p {
  color:var(--design-muted)!important;
  font-family:var(--design-sans)!important;
  font-size:clamp(15px,1.4vw,18px)!important;
  font-weight:400!important;
  line-height:1.85!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-story-pillars {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:32px;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-story-pillar {
  padding-top:14px;
  border-top:1px solid var(--design-line);
  color:var(--design-text);
  font-size:14px;
  font-weight:750;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-visit-table {
  display:block;
  margin-top:28px;
  border-top:1px solid var(--design-text);
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-visit-table > div {
  display:grid;
  grid-template-columns:minmax(80px,.35fr) minmax(0,1fr);
  gap:16px;
  padding:16px 0;
  border-bottom:1px solid var(--design-line);
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-visit-table :is(dt,dd) { margin:0; color:var(--design-text); }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-visit-table dt { color:var(--design-muted); font-weight:700; }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-visit-table dd { font-weight:650; }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-curriculum-steps {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin:0;
  padding:0;
  list-style:none;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-curriculum-steps li {
  min-height:230px;
  padding:28px;
  border:1px solid var(--design-line);
  border-radius:16px;
  background:#fff;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-curriculum-steps span { color:var(--design-accent); font-size:12px; font-weight:800; letter-spacing:.08em; }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-curriculum-steps h3 { margin:22px 0 10px; font-size:clamp(19px,2vw,28px); }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-curriculum-steps p { color:var(--design-muted); line-height:1.7; }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-pass {
  display:grid;
  grid-template-columns:minmax(160px,.3fr) minmax(0,.7fr);
  gap:28px;
  align-items:start;
  margin-top:28px;
  padding:26px 28px;
  border:1px solid var(--design-line);
  border-radius:16px;
  background:#fff;
}
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-pass ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; margin:0; padding:0; list-style:none; }
.geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-pass li { display:flex; justify-content:space-between; gap:16px; padding:11px 0; border-bottom:1px solid var(--design-line); }
.geo-site-shell.geo-storefront[data-storefront-design] main > #amenities .geo-visit-guide:not(.geo-visit-guide-no-location) {
  display:grid!important;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;
  align-items:start;
  gap:var(--design-gap)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > :is(#amenities,#location,#hours) :is(.geo-visit-guide-location,.geo-location-card,.geo-location-info) {
  padding:0!important;
  color:var(--design-text)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #amenities dl.geo-visit-guide-list {
  display:block!important;
  border-top:1px solid var(--design-text)!important;
  margin:0!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #amenities dl.geo-visit-guide-list > div {
  display:grid!important;
  grid-template-columns:minmax(90px,.38fr) minmax(0,1fr)!important;
  align-items:start;
  gap:12px 18px!important;
  min-height:0!important;
  padding:18px 0!important;
  border:0!important;
  border-bottom:1px solid var(--design-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #amenities dl.geo-visit-guide-list :is(dt,dd) {
  margin:0!important;
  padding:0!important;
  color:var(--design-text)!important;
  background:none!important;
  border:0!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #amenities > .geo-container:has(.geo-visit-guide-no-location) {
  display:grid!important;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  column-gap:var(--design-gap);
}
.geo-site-shell.geo-storefront[data-storefront-design] main > #amenities > .geo-container:has(.geo-visit-guide-no-location) > .geo-visit-guide {
  grid-column:2;
  grid-row:1 / span 3;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #curriculum .geo-industry-curriculum-steps {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin:0;
  padding:0;
  border:0;
  list-style:none;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #curriculum .geo-industry-curriculum-steps > li {
  min-width:0;
  min-height:0;
  padding:clamp(20px,2.2vw,32px);
  background:white;
  border:1px solid var(--design-line);
  border-radius:14px;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-industry-curriculum-steps > li::before { content:none; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-industry-curriculum-steps > li > div > span {
  display:inline-block;
  padding:4px 10px;
  border-radius:100px;
  background:#e5f0ec;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-industry-curriculum-steps h3,
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-industry-pass b { color:var(--design-text); }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-industry-pass b { white-space:nowrap; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #business_intro .geo-design-story-has-visual { max-width:none!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #business_intro .geo-reading .geo-story-paragraph {
  display:block!important;
  -webkit-line-clamp:unset!important;
  overflow:visible!important;
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #business_intro .geo-design-story-images { align-items:center; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #business_intro .geo-design-story-images img { height:clamp(230px,33vw,460px)!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #business_intro .geo-design-story-images figure:nth-child(n+2) img { height:clamp(175px,26vw,360px)!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-layout {
  display:grid;
  gap:var(--design-gap);
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-layout:has(> dl) {
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
}
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-copy :is(address,.geo-visit-nearby) { color:var(--design-text); }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-copy address { font-style:normal; font-weight:700; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-copy .geo-visit-guide { display:block!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-copy .geo-studio-visit-repeated-fact,
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-copy :is(dl,.geo-visit-cards-grid):has(> .geo-studio-visit-repeated-fact):not(:has(> :not(.geo-studio-visit-repeated-fact))) { display:none!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-layout > .geo-industry-visit-table { margin:0; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] main > section.geo-studio-visit-repeated:is(#hours,#amenities) { padding:0!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-repeated > .geo-container { display:none; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-copy .geo-social-layout-only,
.geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-copy .geo-social-layout-note { color:var(--design-muted)!important; }
.geo-site-shell.geo-storefront[data-storefront-design="studio"] > footer.geo-site-footer.geo-footer-compact { background:var(--design-background)!important; }
.geo-site-shell.geo-storefront[data-storefront-design] > footer.geo-site-footer {
  background:var(--design-background)!important;
  border-top:1px solid var(--design-line)!important;
  color:var(--design-muted)!important;
}
.geo-site-shell.geo-storefront[data-storefront-design] > footer.geo-site-footer :is(a,b,strong) { color:var(--design-text)!important; }

@media (max-width:719px) {
  .geo-site-shell.geo-storefront[data-storefront-design] {
    --design-space:54px;
    --design-gap:25px;
  }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-hero-inner,
  .geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-has-visual,
  .geo-site-shell.geo-storefront[data-storefront-design] main > #amenities .geo-visit-guide:not(.geo-visit-guide-no-location) {
    grid-template-columns:minmax(0,1fr)!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design] main > #amenities > .geo-container:has(.geo-visit-guide-no-location) {
    display:block!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-hero :is(h1,.geo-hero-tagline) { font-size:clamp(30px,8.5vw,42px)!important; }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-design-has-tagline h1 { font-size:16px!important; }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-hero .geo-hero-image img {
    height:clamp(220px,75vw,360px)!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-hero .geo-hero-image {
    max-width:360px;
    margin-inline:auto!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-hero .geo-hero-image img {
    height:clamp(255px,85vw,385px)!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-hero-media:has(> figure:nth-child(2)) {
    grid-template-columns:minmax(0,1fr)!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bakes { grid-template-columns:1fr; gap:20px; }
  .geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-design-cafe-bake-card figure img { height:clamp(180px,58vw,280px); }
  .geo-site-shell.geo-storefront[data-storefront-design="cafe"] .geo-hero-media > figure:nth-child(n+2),
  .geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-images > figure:nth-child(n+2) {
    display:none!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design] main > #business_intro .geo-design-story-images:has(> figure:nth-child(2)) {
    grid-template-columns:minmax(0,1fr);
  }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-design-hero-end { margin-top:26px; }
  .geo-site-shell.geo-storefront[data-storefront-design] main > section:is(#menu,#featured_offerings,#programs) :is(.geo-menu-featured-list,.geo-salon-service-grid):has(img) {
    grid-template-columns:minmax(0,1fr)!important;
  }
  .geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-menu-with-photos { display:block!important; }
  .geo-site-shell.geo-storefront[data-storefront-design="beauty"] .geo-design-menu-with-photos > .geo-design-menu-photos { margin-top:28px; }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero .geo-hero-inner:has(.geo-hero-media img),
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs { grid-template-columns:minmax(0,1fr)!important; }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-hero .geo-hero-image img { height:clamp(200px,62vw,350px)!important; }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-design-programs { gap:12px; }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #curriculum .geo-industry-curriculum-steps { grid-template-columns:1fr; gap:12px; }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #business_intro .geo-design-story-images > figure:nth-child(2) { display:block!important; }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] main > #business_intro .geo-design-story-has-visual { gap:20px!important; }
  .geo-site-shell.geo-storefront[data-storefront-design="studio"] .geo-studio-visit-layout:has(> dl) { grid-template-columns:minmax(0,1fr); }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-story-pillars,
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-curriculum-steps { grid-template-columns:1fr; gap:12px; }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-story-pillars { margin-top:24px; }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-curriculum-steps li { min-height:0; padding:20px; }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-pass { grid-template-columns:1fr; gap:16px; padding:20px; }
  .geo-site-shell.geo-storefront[data-storefront-design] .geo-industry-pass ul { grid-template-columns:1fr; }
}
