
.umh{--umh-gray:#7a7a7a;--umh-gold:#b98a35;--umh-red:#c93535;--umh-cream:#fbf8f2;position:relative;width:100%;background:var(--umh-cream);font-family:Arial,Helvetica,sans-serif;color:var(--umh-gray);z-index:999}
.umh *{box-sizing:border-box}.umh button,.umh input{font:inherit}
.umh-top{position:relative;height:232px;overflow:hidden;background:var(--umh-cream);border-bottom:1px solid rgba(185,138,53,.28)}
.umh-inner{position:relative;z-index:3;width:min(calc(100% - 44px),var(--umh-max));height:100%;margin:auto;display:grid;grid-template-columns:minmax(330px,1fr) 500px minmax(430px,1fr);align-items:stretch}
.umh-center-visual{position:absolute;inset:0;z-index:1;display:flex;justify-content:center;pointer-events:none}
.umh-kitchen{width:min(860px,48vw);height:100%;background-size:cover;background-position:var(--umh-bg-pos);position:relative}
.umh-kitchen:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--umh-cream) 0%,rgba(251,248,242,.94) 8%,rgba(251,248,242,.38) 20%,rgba(251,248,242,.05) 36%,rgba(251,248,242,.05) 64%,rgba(251,248,242,.38) 80%,rgba(251,248,242,.94) 92%,var(--umh-cream) 100%)}
.umh-left,.umh-right{position:relative;z-index:4;padding:27px 12px 20px}.umh-left{display:flex;flex-direction:column;align-items:flex-start;justify-self:start}.umh-right{display:flex;flex-direction:column;width:min(100%,545px);justify-self:end}
.umh-brand{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;pointer-events:none}.umh-lottie{width:var(--umh-logo);height:185px;display:flex;align-items:center;justify-content:center}.umh-lottie lottie-player{display:block;width:100%;height:100%;background:transparent}.umh-logo-fallback{display:none;max-width:100%;max-height:100%;object-fit:contain}
.umh-eyebrow,.umh-hours-head{font-family:Georgia,'Times New Roman',serif;color:var(--umh-gold);font-size:17px;font-weight:700;letter-spacing:.015em}.umh-eyebrow{margin-bottom:14px}
.umh-info{display:flex;align-items:flex-start;gap:10px;margin:3px 0;color:var(--umh-gray);text-decoration:none;font-size:14px;line-height:1.5}.umh-icon,.umh-clock{width:19px;color:#68747a;text-align:center}.umh-phone:hover{color:var(--umh-gold)}
.umh-contractor{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;min-width:230px;padding:11px 16px;border:1px solid var(--umh-gold);background:rgba(255,255,255,.7);color:#686868;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.035em}.umh-contractor:hover{background:#fff;color:var(--umh-gold)}
.umh-hours-head{display:flex;justify-content:center;align-items:center;gap:8px;margin-bottom:9px}.umh-hours{display:grid;grid-template-columns:1.5fr .72fr .72fr;padding:8px 0;border-top:1px solid rgba(122,122,122,.16);border-bottom:1px solid rgba(122,122,122,.16)}
.umh-hours>div{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 10px;border-left:1px solid rgba(122,122,122,.15);font-size:12px}.umh-hours>div:first-child{border-left:0}.umh-hours strong{font-size:13px;font-weight:600;color:#666}
.umh-alert{display:flex;align-items:center;gap:7px;align-self:center;margin:9px 0 10px;color:var(--umh-red);font-size:11px;font-weight:700;letter-spacing:.075em}.umh-alert i{width:7px;height:7px;border-radius:50%;background:var(--umh-red)}
.umh-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}.umh-action{height:43px;padding:0 13px;border:1px solid var(--umh-gold);background:rgba(255,255,255,.82);color:#686868;cursor:pointer;font-size:12px;font-weight:500;letter-spacing:.025em;display:flex;align-items:center;justify-content:center;gap:8px}.umh-action:hover{background:#fff;color:var(--umh-gold)}.umh-action-gold{background:var(--umh-gold);color:#fff}.umh-action-gold:hover{background:#aa7c2e;color:#fff}
.umh-nav-wrap{position:relative;z-index:20;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.035)}.umh-nav-inner{position:relative;width:min(calc(100% - 44px),var(--umh-max));height:64px;margin:auto;display:flex;align-items:stretch;justify-content:center;padding-right:62px}
.umh-nav{height:100%;max-width:100%}.umh-menu{height:100%;display:flex!important;align-items:stretch;justify-content:center;list-style:none!important;margin:0!important;padding:0!important}.umh-menu>li{position:relative;display:flex;align-items:stretch;margin:0!important}.umh-menu a{display:flex;align-items:center;padding:0 clamp(11px,1.05vw,21px);color:#666;text-decoration:none!important;font-size:15px!important;line-height:1;font-weight:var(--umh-menu-weight)!important;white-space:nowrap;letter-spacing:0;transition:.15s ease}.umh-menu>li:hover>a,.umh-menu>.current-menu-item>a,.umh-menu>.current-menu-ancestor>a{color:var(--umh-gold)}
.umh-menu .menu-item-has-children>a:after{content:"⌄";margin-left:7px;font-size:12px;color:#999}.umh-menu .sub-menu{position:absolute;top:100%;left:50%;z-index:100;min-width:245px;margin:0!important;padding:8px 0!important;list-style:none!important;background:#fff;border-top:2px solid var(--umh-gold);box-shadow:0 18px 45px rgba(35,30,24,.14);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,8px);transition:.15s ease}.umh-menu li:hover>.sub-menu,.umh-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.umh-menu .sub-menu li{position:relative;margin:0!important}.umh-menu .sub-menu a{min-height:42px;padding:9px 18px!important;font-size:14px!important;color:#737373}.umh-menu .sub-menu a:hover{background:#fbf8f2;color:var(--umh-gold)}.umh-menu .sub-menu .sub-menu{top:-8px;left:100%;transform:translate(8px,0)}.umh-menu .sub-menu li:hover>.sub-menu{transform:translate(0,0)}
.umh-search-toggle{position:absolute;right:0;top:0;width:58px;height:64px;border:0;border-left:1px solid #e5e2dd;background:transparent;color:#666;font-size:27px;cursor:pointer}.umh-search-toggle:hover{color:var(--umh-gold)}
.umh-search-panel{background:#fff;border-top:1px solid #eee;box-shadow:0 16px 30px rgba(0,0,0,.07)}.umh-search-form{position:relative;width:min(calc(100% - 44px),900px);margin:auto;padding:17px 0;display:grid;grid-template-columns:1fr auto}.umh-search-form input{height:49px;border:1px solid #ddd;padding:0 16px;color:#555;outline:0;font-size:15px}.umh-search-form input:focus{border-color:var(--umh-gold)}.umh-search-form>button{border:0;background:var(--umh-gold);color:#fff;padding:0 27px;font-size:12px;font-weight:700;letter-spacing:.07em}.umh-suggestions{position:absolute;top:66px;left:0;right:96px;z-index:150;background:#fff;border:1px solid #e4e0d9;box-shadow:0 15px 35px rgba(0,0,0,.1)}
@media(max-width:1250px) and (min-width:768px){.umh-inner{grid-template-columns:minmax(275px,1fr) 330px minmax(350px,1fr)}.umh-kitchen{width:600px}.umh-lottie{width:min(var(--umh-logo),225px)}.umh-menu a{font-size:13px!important;padding:0 9px}.umh-left,.umh-right{padding-left:5px;padding-right:5px}}
@media(max-width:767px){.umh-top{height:112px}.umh-inner{width:100%;height:112px;display:flex;justify-content:center}.umh-left,.umh-right,.umh-center-visual,.umh-nav-wrap{display:none!important}.umh-brand{width:100%;height:112px}.umh-lottie{width:var(--umh-logo-mobile);height:96px}}
/* Elementor editor must keep desktop composition even inside the narrow work canvas. */
.umh.umh-editor .umh-top{height:232px!important}.umh.umh-editor .umh-inner{width:calc(100% - 18px)!important;height:232px!important;display:grid!important;grid-template-columns:minmax(235px,1fr) 320px minmax(335px,1fr)!important}.umh.umh-editor .umh-left,.umh.umh-editor .umh-right{display:flex!important}.umh.umh-editor .umh-center-visual{display:flex!important}.umh.umh-editor .umh-nav-wrap{display:block!important}.umh.umh-editor .umh-kitchen{width:560px}.umh.umh-editor .umh-lottie{width:225px;height:175px}.umh.umh-editor .umh-menu a{font-size:13px!important;padding:0 9px}
@media(prefers-reduced-motion:reduce){.umh *{transition:none!important}.umh-lottie lottie-player{display:none}.umh-logo-fallback{display:block}}

/* v0.2.1 polish */
.umh svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.umh-icon{width:19px;height:19px;flex:0 0 19px;color:#68747a}.umh-clock{width:21px;height:21px;flex:0 0 21px;color:#68747a}
.umh-contractor,.umh-contractor:visited,.umh-contractor:hover,.umh-contractor:focus,.umh-contractor:active{color:#686868!important;text-decoration:none!important;background:rgba(255,255,255,.76)!important;box-shadow:none!important}
.umh-contractor:hover{border-color:var(--umh-gold)!important;background:#fff!important;color:var(--umh-gold)!important}
.umh-btn-label{display:flex;align-items:center;gap:9px}.umh-btn-label svg{width:19px;height:19px}.umh-btn-arrow{width:18px;height:18px}
.umh-action-icon{width:20px;height:20px;flex:0 0 20px}.umh-action-gold .umh-action-icon{color:#fff}
.umh-search-toggle svg{width:25px;height:25px;margin:auto;stroke-width:1.9}.umh-search-toggle{display:flex;align-items:center;justify-content:center}
.umh-menu a{font-size:16px!important}
.umh-menu .menu-item-has-children>a:after{content:"";width:7px;height:7px;margin-left:9px;border-right:1.5px solid #999;border-bottom:1.5px solid #999;transform:rotate(45deg) translateY(-2px);transition:transform .15s ease,border-color .15s ease}
.umh-menu .menu-item-has-children:hover>a:after{border-color:var(--umh-gold);transform:rotate(225deg) translate(-1px,-1px)}
.umh-menu>li+li:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:1px;background:linear-gradient(to bottom,transparent,rgba(185,138,53,.22) 35%,rgba(185,138,53,.22) 65%,transparent)}
.umh-menu .sub-menu li+li:before{content:"";position:absolute;left:17px;right:17px;top:0;height:1px;background:linear-gradient(to right,transparent,rgba(185,138,53,.18) 20%,rgba(185,138,53,.18) 80%,transparent)}
.umh-search-shell{width:min(calc(100% - 44px),900px);margin:auto;padding:17px 0}.umh-ecwid-search-host:empty{display:none}.umh-ecwid-search-host:not(:empty)+.umh-search-fallback{display:none}
.umh-ecwid-search-host .ecwid-search-widget{margin:0!important;max-width:none!important;display:flex!important;width:100%!important}
.umh-ecwid-search-host input.ecwid-search-widget__input[type="text"]{width:100%!important;height:50px!important;border:1px solid #ddd!important;background:#fff!important;color:#555!important;font-size:15px!important;padding:0 16px!important;box-shadow:none!important;border-radius:0!important}
.umh-ecwid-search-host button.ecwid-search-widget__btn{height:50px!important;min-width:58px!important;border:0!important;border-radius:0!important;background:var(--umh-gold)!important;background-image:none!important}
.umh-search-form{width:100%;padding:0}.umh-search-form>button{height:49px;display:flex;align-items:center;gap:8px}.umh-search-form>button svg{width:20px;height:20px}
@media(max-width:1250px) and (min-width:768px){.umh-menu a{font-size:14px!important}}
.umh.umh-editor .umh-menu a{font-size:14px!important}

/* v0.2.3 — compact premium search trigger */
.umh-search-toggle,
.umh-search-toggle:visited{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  margin:0 0 0 10px!important;
  border:1px solid rgba(185,138,53,.22)!important;
  border-radius:50%!important;
  background:#fbf8f2!important;
  color:#9b762f!important;
  box-shadow:none!important;
  line-height:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.umh-search-toggle:hover,
.umh-search-toggle:focus,
.umh-search-toggle:active{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  border-color:rgba(185,138,53,.52)!important;
  background:#f5ecdc!important;
  color:#b98a35!important;
  box-shadow:0 5px 14px rgba(91,68,30,.08)!important;
  outline:none!important;
  transform:none!important;
}
.umh-search-toggle svg{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  margin:0!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
}

/* v0.2.4 — clean nav search icon; no bubble/button tile */
.umh-search-toggle,
.umh-search-toggle:visited,
.umh-search-toggle:hover,
.umh-search-toggle:focus,
.umh-search-toggle:active{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  padding:0!important;
  margin:0 0 0 8px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  color:#8f6b2c!important;
  box-shadow:none!important;
  outline:none!important;
  transform:none!important;
  filter:none!important;
}
.umh-search-toggle:hover,
.umh-search-toggle:focus-visible{color:var(--umh-gold)!important}
.umh-search-toggle svg{
  display:block!important;
  width:23px!important;
  height:23px!important;
  min-width:23px!important;
  min-height:23px!important;
  max-width:23px!important;
  max-height:23px!important;
  margin:0!important;
  padding:0!important;
  stroke:currentColor!important;
  stroke-width:1.75!important;
  fill:none!important;
}

/* v0.2.5 — search aligned to nav + dedicated faded separator */
.umh-nav-inner{
  align-items:center!important;
}
.umh-menu{
  align-items:stretch!important;
  align-self:stretch!important;
}
.umh-menu>li{
  display:flex!important;
  align-items:center!important;
}
.umh-menu>li>a{
  display:flex!important;
  align-items:center!important;
  height:100%!important;
}
.umh-search-toggle{
  position:relative!important;
  align-self:center!important;
  flex:0 0 40px!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  margin:0 0 0 18px!important;
  padding:0 0 0 4px!important;
}
.umh-search-toggle:before{
  content:""!important;
  position:absolute!important;
  left:-10px!important;
  top:50%!important;
  width:1px!important;
  height:28px!important;
  transform:translateY(-50%)!important;
  background:linear-gradient(
    to bottom,
    transparent 0%,
    rgba(185,138,53,.10) 12%,
    rgba(185,138,53,.34) 50%,
    rgba(185,138,53,.10) 88%,
    transparent 100%
  )!important;
  pointer-events:none!important;
}
.umh-search-toggle svg{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:23px!important;
  height:23px!important;
  transform:translate(-50%,-50%)!important;
}
@media(max-width:1250px) and (min-width:768px){
  .umh-search-toggle{
    height:64px!important;
    min-height:64px!important;
    max-height:64px!important;
    margin-left:12px!important;
  }
  .umh-search-toggle:before{left:-7px!important}
}

/* v0.2.6 — Ecwid search submit icon */
.umh-search-panel .ecwid-search-widget__btn,
.umh-search-panel button.ecwid-search-widget__btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  color:#fff!important;
}
.umh-search-panel .ecwid-search-widget__btn svg,
.umh-search-panel button.ecwid-search-widget__btn svg{
  width:21px!important;
  height:21px!important;
  max-width:21px!important;
  max-height:21px!important;
  margin:auto!important;
  fill:none!important;
  stroke:#fff!important;
  color:#fff!important;
  stroke-width:1.7!important;
}
.umh-search-panel .ecwid-search-widget__btn:before,
.umh-search-panel .ecwid-search-widget__btn:after{
  color:#fff!important;
}
.umh-search-panel .umh-search-form>button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  color:#fff!important;
}
.umh-search-panel .umh-search-form>button svg{
  width:20px!important;
  height:20px!important;
  margin:0!important;
  stroke:#fff!important;
  color:#fff!important;
}

/* v0.2.7 — crisp search SVG + showroom pin optical alignment */
.umh-search-panel button.ecwid-search-widget__btn{
  background-color:var(--umh-gold)!important;
  background-image:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.umh-search-panel button.ecwid-search-widget__btn .umh-native-search-svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  min-height:19px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  fill:none!important;
  stroke:#fff!important;
  color:#fff!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  shape-rendering:geometricPrecision!important;
  transform:none!important;
}
/* Address wraps to two lines; lower the pin slightly so it aligns visually with line 1. */
.umh-address .umh-icon{
  position:relative!important;
  top:4px!important;
}

/* v0.2.8 — mobile logo-only header cleanup */
@media (max-width:767px){
  .umh{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .umh-top{
    height:82px!important;
    min-height:82px!important;
    background:#fbf8f2!important;
    border:0!important;
    border-bottom:1px solid rgba(185,138,53,.22)!important;
    overflow:hidden!important;
  }
  .umh-top-inner{
    width:100%!important;
    max-width:none!important;
    height:82px!important;
    min-height:82px!important;
    padding:0 18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .umh-center{
    position:relative!important;
    inset:auto!important;
    width:auto!important;
    height:82px!important;
    min-height:82px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
  }
  .umh-kitchen{
    display:none!important;
  }
  .umh-brand{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    width:92px!important;
    height:70px!important;
    max-width:92px!important;
    max-height:70px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .umh-brand lottie-player,
  .umh-brand .umh-lottie{
    width:92px!important;
    height:70px!important;
    max-width:92px!important;
    max-height:70px!important;
    margin:0!important;
    padding:0!important;
  }
  .umh-left,.umh-right,.umh-nav{
    display:none!important;
  }
}

/* v0.2.9 — mobile header proportions matched to reference */
@media (max-width:767px){
  .umh-top{
    height:255px!important;
    min-height:255px!important;
    background:#fbf8f2!important;
    border-bottom:1px solid rgba(185,138,53,.22)!important;
    overflow:hidden!important;
  }
  .umh-top-inner{
    height:255px!important;
    min-height:255px!important;
    padding:0 18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .umh-center{
    width:100%!important;
    height:255px!important;
    min-height:255px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .umh-brand{
    width:170px!important;
    height:190px!important;
    max-width:170px!important;
    max-height:190px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .umh-brand lottie-player,
  .umh-brand .umh-lottie{
    width:170px!important;
    height:190px!important;
    max-width:170px!important;
    max-height:190px!important;
  }
}

/* v0.2.10 — eliminate search-icon state/layout shift */
.umh-search-toggle,
.umh-search-toggle:visited,
.umh-search-toggle:hover,
.umh-search-toggle:focus,
.umh-search-toggle:focus-visible,
.umh-search-toggle:active,
.umh-search-toggle[aria-expanded="true"]{
  position:relative!important;
  align-self:center!important;
  flex:0 0 40px!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  margin:0 0 0 18px!important;
  padding:0 0 0 4px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  outline:none!important;
  transform:none!important;
  top:auto!important;
  bottom:auto!important;
  line-height:1!important;
  vertical-align:middle!important;
}
.umh-search-toggle:before,
.umh-search-toggle:hover:before,
.umh-search-toggle:focus:before,
.umh-search-toggle:active:before,
.umh-search-toggle[aria-expanded="true"]:before{
  content:""!important;
  position:absolute!important;
  left:-10px!important;
  top:50%!important;
  bottom:auto!important;
  width:1px!important;
  height:28px!important;
  transform:translateY(-50%)!important;
  background:linear-gradient(to bottom,transparent 0%,rgba(185,138,53,.10) 12%,rgba(185,138,53,.34) 50%,rgba(185,138,53,.10) 88%,transparent 100%)!important;
}
.umh-search-toggle svg,
.umh-search-toggle:hover svg,
.umh-search-toggle:focus svg,
.umh-search-toggle:focus-visible svg,
.umh-search-toggle:active svg,
.umh-search-toggle[aria-expanded="true"] svg{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  right:auto!important;
  bottom:auto!important;
  display:block!important;
  width:23px!important;
  height:23px!important;
  min-width:23px!important;
  min-height:23px!important;
  max-width:23px!important;
  max-height:23px!important;
  margin:0!important;
  padding:0!important;
  transform:translate(-50%,-50%)!important;
  transform-origin:center center!important;
  stroke:currentColor!important;
  fill:none!important;
}

/* v0.2.11 — Ecwid redraw-proof submit icon */
.umh-search-panel .ecwid-search-widget__btn.umh-search-icon-fixed,
.umh-search-panel .ecwid-search-widget__btn.umh-search-icon-fixed:hover,
.umh-search-panel .ecwid-search-widget__btn.umh-search-icon-fixed:focus,
.umh-search-panel .ecwid-search-widget__btn.umh-search-icon-fixed:active{
  background-color:var(--umh-gold)!important;
  background-image:none!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:0 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  text-indent:0!important;
  font-size:0!important;
}
.umh-search-panel .ecwid-search-widget__btn.umh-search-icon-fixed .umh-native-search-svg{
  position:static!important;
  display:block!important;
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  min-height:19px!important;
  max-width:19px!important;
  max-height:19px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  fill:none!important;
  stroke:#fff!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  shape-rendering:geometricPrecision!important;
}

/* v0.2.12 — address pin baseline alignment */
.umh-address{
  align-items:flex-start!important;
}
.umh-address .umh-icon{
  position:relative!important;
  top:7px!important;
  align-self:flex-start!important;
}

/* v0.2.13 — subtle appointment status pulse */
.umh-alert-dot{
  position:relative!important;
  isolation:isolate!important;
}
.umh-alert-dot:after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:100%!important;
  height:100%!important;
  border-radius:50%!important;
  background:currentColor!important;
  transform:translate(-50%,-50%) scale(1)!important;
  opacity:.34!important;
  z-index:-1!important;
  pointer-events:none!important;
  animation:umh-appointment-pulse 1.8s cubic-bezier(.2,.65,.35,1) infinite!important;
}
@keyframes umh-appointment-pulse{
  0%{transform:translate(-50%,-50%) scale(1);opacity:.38}
  65%,100%{transform:translate(-50%,-50%) scale(2.35);opacity:0}
}
@media (prefers-reduced-motion:reduce){
  .umh-alert-dot:after{
    animation:none!important;
    opacity:.18!important;
    transform:translate(-50%,-50%) scale(1.65)!important;
  }
}

/* v0.2.14 — selectors now match actual markup */
.umh-address{
  display:flex!important;
  align-items:flex-start!important;
}
.umh-address>.umh-icon{
  position:relative!important;
  top:7px!important;
  align-self:flex-start!important;
}

.umh-alert .umh-alert-dot{
  position:relative!important;
  display:block!important;
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  border-radius:50%!important;
  background:var(--umh-red)!important;
  overflow:visible!important;
  isolation:isolate!important;
}
.umh-alert .umh-alert-dot:after{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  left:50%!important;
  top:50%!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--umh-red)!important;
  transform:translate(-50%,-50%) scale(1)!important;
  opacity:.42!important;
  pointer-events:none!important;
  animation:umhAppointmentPulseReal 1.8s cubic-bezier(.2,.65,.35,1) infinite!important;
}
@keyframes umhAppointmentPulseReal{
  0%{transform:translate(-50%,-50%) scale(1);opacity:.42}
  70%,100%{transform:translate(-50%,-50%) scale(2.6);opacity:0}
}
@media (prefers-reduced-motion:reduce){
  .umh-alert .umh-alert-dot:after{
    animation:none!important;
    transform:translate(-50%,-50%) scale(1.7)!important;
    opacity:.18!important;
  }
}

/* v0.2.15 — mobile header height + optical logo centering */
@media (max-width:767px){
  .umh-top,
  .umh-top-inner,
  .umh-center{
    height:220px!important;
    min-height:220px!important;
  }
  .umh-brand{
    width:160px!important;
    height:175px!important;
    max-width:160px!important;
    max-height:175px!important;
    position:relative!important;
    top:5px!important;
  }
  .umh-brand lottie-player,
  .umh-brand .umh-lottie{
    width:160px!important;
    height:175px!important;
    max-width:160px!important;
    max-height:175px!important;
  }
}

/* v0.2.16 — visible appointment pulse */
.umh-alert{
  overflow:visible!important;
}
.umh-alert .umh-alert-dot{
  position:relative!important;
  z-index:1!important;
  overflow:visible!important;
  isolation:auto!important;
}
.umh-alert .umh-alert-dot:after{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  left:50%!important;
  top:50%!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:rgba(211,55,55,.42)!important;
  transform:translate(-50%,-50%) scale(1)!important;
  transform-origin:center!important;
  pointer-events:none!important;
  animation:umhAppointmentPulseVisible 1.8s cubic-bezier(.2,.65,.35,1) infinite!important;
}
@keyframes umhAppointmentPulseVisible{
  0%{transform:translate(-50%,-50%) scale(1);opacity:.55}
  70%,100%{transform:translate(-50%,-50%) scale(3);opacity:0}
}
@media (prefers-reduced-motion:reduce){
  .umh-alert .umh-alert-dot:after{
    animation:none!important;
    transform:translate(-50%,-50%) scale(1.8)!important;
    opacity:.20!important;
  }
}

/* v0.2.17 — true optical centering of mobile Lottie */
@media (max-width:767px){
  .umh-top,
  .umh-top-inner,
  .umh-center{
    height:220px!important;
    min-height:220px!important;
  }

  .umh-top-inner,
  .umh-center{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .umh-brand{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:160px!important;
    height:175px!important;
    max-width:160px!important;
    max-height:175px!important;
    margin:0!important;
    padding:0!important;
    transform:translate(-50%,-43%)!important;
  }

  .umh-brand lottie-player,
  .umh-brand .umh-lottie{
    position:absolute!important;
    inset:0!important;
    width:160px!important;
    height:175px!important;
    margin:0!important;
    padding:0!important;
  }
}

/* v0.2.18 — mobile logo visual centering correction */
@media (max-width:767px){
  .umh-brand{
    left:50%!important;
    top:50%!important;
    width:150px!important;
    height:165px!important;
    max-width:150px!important;
    max-height:165px!important;
    transform:translate(-50%,-36%)!important;
  }
  .umh-brand lottie-player,
  .umh-brand .umh-lottie{
    width:150px!important;
    height:165px!important;
    max-width:150px!important;
    max-height:165px!important;
  }
}

/* v0.2.19 — equal visual space above/below mobile UM logo */
@media (max-width:767px){
  .umh-brand{
    left:50%!important;
    top:50%!important;
    width:150px!important;
    height:165px!important;
    max-width:150px!important;
    max-height:165px!important;
    transform:translate(-50%,-29%)!important;
  }
}

/* v0.2.20 — measured mobile visible-logo centering
   Screenshot measurement: visible logo approx y=40..180 in a ~272px cream area.
   Equal visual margins require moving the artwork ~26px downward. */
@media (max-width:767px){
  .umh-brand{
    left:50%!important;
    top:50%!important;
    width:150px!important;
    height:165px!important;
    transform:translate(-50%,-50%)!important;
  }

  .umh-brand lottie-player,
  .umh-brand .umh-lottie{
    width:150px!important;
    height:165px!important;
    transform:translateY(26px)!important;
    transform-origin:center center!important;
  }
}

/* v0.2.21 — published frontend parity */
@media (min-width:768px){
  /* Keep action labels on one line on the real frontend. */
  .umh-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .umh-action{
    white-space:nowrap!important;
    line-height:1!important;
    font-size:12px!important;
    padding:0 11px!important;
  }
  .umh-action-icon{
    width:19px!important;
    height:19px!important;
    flex:0 0 19px!important;
  }
}

/* Fallback search must visually match the Ecwid search control.
   Published pages can briefly/use fallback when Ecwid has not initialized. */
.umh-search-fallback{
  grid-template-columns:minmax(0,1fr) 58px!important;
}
.umh-search-fallback>button,
.umh-search-fallback>button:hover,
.umh-search-fallback>button:focus,
.umh-search-fallback>button:active{
  width:58px!important;
  min-width:58px!important;
  height:49px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:var(--umh-gold)!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  box-shadow:none!important;
  transform:none!important;
}
.umh-search-fallback>button span{display:none!important}
.umh-search-fallback>button svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  min-height:19px!important;
  margin:0!important;
  stroke:#fff!important;
  stroke-width:1.8!important;
  fill:none!important;
  transform:none!important;
}

/* v0.2.22 — mobile header/container background */
@media (max-width:767px){
  .umh,
  .umh-top,
  .umh-top-inner,
  .umh-center{
    background:#fff!important;
    background-color:#fff!important;
  }
}

/* v0.2.23 — isolate header background; never paint/size the outer shortcode wrapper */
.umh{
  background:transparent!important;
}

@media (max-width:767px){
  .umh-top,
  .umh-top-inner,
  .umh-center{
    background:#fff!important;
    background-color:#fff!important;
  }
}

/* Header plugin must not clip neighboring Elementor/slider content. */
.umh{
  overflow:visible!important;
  max-width:none!important;
}

/* v0.2.24 — mobile logo scale + remove divider above search */
@media (max-width:767px){
  /* Increase only the mobile UM logo while preserving the established visual center. */
  .umh-brand{
    width:180px!important;
    height:195px!important;
    max-width:180px!important;
    max-height:195px!important;
  }
  .umh-brand lottie-player,
  .umh-brand .umh-lottie{
    width:180px!important;
    height:195px!important;
    max-width:180px!important;
    max-height:195px!important;
  }

  /* Remove the thin gold divider between the logo/header area and mobile search. */
  .umh-top,
  .umh-top-inner,
  .umh-center{
    border-bottom:0!important;
  }
}
