:root{
  --hima11y-primary:#c51f2c;
  --hima11y-panel-width:430px;
  --hima11y-button-size:56px;
  --hima11y-offset-x:22px;
  --hima11y-offset-y:22px;
}

#hima11y-root,
#hima11y-root *{box-sizing:border-box}

#hima11y-root{
  position:relative;
  z-index:2147483000;
  font-family:Arial,Helvetica,sans-serif !important;
  line-height:1.35;
  text-align:left;
}

.hima11y-trigger{
  position:fixed;
  bottom:var(--hima11y-offset-y);
  width:var(--hima11y-button-size);
  height:var(--hima11y-button-size);
  border:0;
  border-radius:999px;
  background:var(--hima11y-primary);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 10px 30px rgba(0,0,0,.22);
  transition:transform .18s ease,box-shadow .18s ease;
  z-index:2147483001;
}
.hima11y-pos-right .hima11y-trigger{right:var(--hima11y-offset-x)}
.hima11y-pos-left .hima11y-trigger{left:var(--hima11y-offset-x)}
.hima11y-trigger:hover{transform:translateY(-2px);box-shadow:0 13px 34px rgba(0,0,0,.28)}
.hima11y-trigger:focus-visible{outline:4px solid rgba(197,31,44,.28);outline-offset:4px}
.hima11y-trigger svg{width:58%;height:58%;stroke:currentColor;fill:none;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}

.hima11y-backdrop{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.22);
  opacity:0;
  visibility:hidden;
  transition:.18s ease;
  z-index:2147482998;
}
.hima11y-open .hima11y-backdrop{opacity:1;visibility:visible}

.hima11y-panel{
  position:fixed;
  bottom:calc(var(--hima11y-offset-y) + var(--hima11y-button-size) + 14px);
  width:min(var(--hima11y-panel-width),calc(100vw - 24px));
  max-height:min(760px,calc(100vh - 110px));
  overflow:auto;
  border-radius:28px;
  background:#f5f6f8;
  color:#17191f;
  box-shadow:0 24px 65px rgba(0,0,0,.28);
  opacity:0;
  visibility:hidden;
  transform:translateY(12px) scale(.985);
  transform-origin:bottom right;
  transition:opacity .18s ease,transform .18s ease,visibility .18s;
  z-index:2147483000;
  overscroll-behavior:contain;
}
.hima11y-pos-right .hima11y-panel{right:var(--hima11y-offset-x)}
.hima11y-pos-left .hima11y-panel{left:var(--hima11y-offset-x);transform-origin:bottom left}
.hima11y-open .hima11y-panel{opacity:1;visibility:visible;transform:translateY(0) scale(1)}

.hima11y-header{
  position:sticky;
  top:0;
  z-index:2;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:82px;
  padding:18px 18px 18px 22px;
  background:var(--hima11y-primary);
  color:#fff;
  border-radius:28px 28px 20px 20px;
}
.hima11y-header-icon{width:38px;height:38px;display:grid;place-items:center;background:#fff;color:var(--hima11y-primary);border-radius:50%;flex:0 0 auto}
.hima11y-header-icon svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hima11y-title{font-size:25px !important;font-weight:800 !important;letter-spacing:-.02em;margin:0 !important;color:#fff !important;line-height:1.1 !important}
.hima11y-header-actions{margin-left:auto;display:flex;align-items:center;gap:6px}
.hima11y-icon-btn{width:42px;height:42px;border:0;border-radius:999px;background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer}
.hima11y-icon-btn:hover,.hima11y-icon-btn:focus-visible{background:rgba(255,255,255,.16);outline:none}
.hima11y-icon-btn svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.hima11y-content{padding:18px}
.hima11y-section{background:#fff;border:1px solid #e6e8ec;border-radius:22px;padding:18px;margin-bottom:14px;box-shadow:0 5px 18px rgba(20,25,35,.04)}
.hima11y-section:last-child{margin-bottom:0}
.hima11y-section-title{font-size:18px !important;font-weight:800 !important;margin:0 0 14px !important;color:#343944 !important;line-height:1.2 !important}
.hima11y-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

.hima11y-tool{
  min-height:92px;
  width:100%;
  border:2px solid transparent;
  border-radius:18px;
  background:#f2f3f5;
  color:#17191f;
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px;
  cursor:pointer;
  text-align:left;
  transition:border-color .16s ease,background .16s ease,transform .16s ease;
}
.hima11y-tool:hover{background:#eceef1}
.hima11y-tool:focus-visible{outline:3px solid color-mix(in srgb,var(--hima11y-primary) 30%,transparent);outline-offset:2px}
.hima11y-tool.is-active{border-color:var(--hima11y-primary);background:#fff}
.hima11y-tool-icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:50%;background:#fff;color:#111}
.hima11y-tool-icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.hima11y-tool-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:5px}
.hima11y-tool-label{font-size:16px !important;font-weight:700 !important;color:#17191f !important;line-height:1.25 !important}
.hima11y-level{display:flex;align-items:center;gap:4px;height:7px}
.hima11y-level span{width:18px;height:5px;border-radius:999px;background:#c7c9ce}
.hima11y-level span.is-on{background:var(--hima11y-primary)}
.hima11y-state{font-size:11px !important;font-weight:700 !important;color:#6d727c !important;line-height:1.1 !important}

.hima11y-footer{padding:0 18px 18px;color:#70757f;font-size:11px !important;line-height:1.4 !important;text-align:center}

/* Effetti applicati al sito, ma mai al nostro widget. */
html.hima11y-readable-font body *:not(#hima11y-root):not(#hima11y-root *){font-family:Arial,Verdana,Tahoma,sans-serif !important;letter-spacing:.01em}

html.hima11y-hide-images body img:not(#hima11y-root img),
html.hima11y-hide-images body picture:not(#hima11y-root picture),
html.hima11y-hide-images body video:not(#hima11y-root video){
  display:none !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:0 !important;
  max-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
}
html.hima11y-hide-images body *:not(#hima11y-root):not(#hima11y-root *){background-image:none !important}

/* Compatible menu blocks: remove image wrappers and their layout footprint completely. */
html.hima11y-hide-images body .hmm-menu .hmm-product-image{
  display:none !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
}
html.hima11y-hide-images body .hmm-menu .hmm-product-card--has-image{
  grid-template-columns:minmax(0,1fr) !important;
  gap:0 !important;
  min-height:0 !important;
}
html.hima11y-hide-images body .hmm-menu .hmm-category-toggle.has-image{
  min-height:98px !important;
  background-color:#242424 !important;
}
html.hima11y-hide-images body .hmm-menu .hmm-subcategory-toggle.has-image{
  min-height:70px !important;
  background-color:#2b2b2b !important;
}
html.hima11y-hide-images body .hmm-menu .hmm-category-toggle.has-image .hmm-category-kicker,
html.hima11y-hide-images body .hmm-menu .hmm-subcategory-toggle.has-image{
  color:#fff !important;
}

html.hima11y-pause-animations body *:not(#hima11y-root):not(#hima11y-root *),
html.hima11y-pause-animations body *:not(#hima11y-root):not(#hima11y-root *)::before,
html.hima11y-pause-animations body *:not(#hima11y-root):not(#hima11y-root *)::after{
  animation-play-state:paused !important;
  animation-duration:.001ms !important;
  animation-iteration-count:1 !important;
  transition-duration:.001ms !important;
  scroll-behavior:auto !important;
}

html.hima11y-grayscale body > *:not(#hima11y-root){filter:grayscale(1) !important}
html.hima11y-contrast body > *:not(#hima11y-root){filter:contrast(1.45) !important}
html.hima11y-grayscale.hima11y-contrast body > *:not(#hima11y-root){filter:grayscale(1) contrast(1.45) !important}

@media (max-width:640px){
  .hima11y-panel{bottom:10px;left:10px !important;right:10px !important;width:auto;max-height:calc(100vh - 20px);border-radius:24px;transform-origin:bottom center}
  .hima11y-header{min-height:72px;padding:15px 14px 15px 18px;border-radius:24px 24px 18px 18px}
  .hima11y-title{font-size:22px !important}
  .hima11y-content{padding:12px}
  .hima11y-section{padding:14px;border-radius:18px}
  .hima11y-grid{gap:8px}
  .hima11y-tool{min-height:84px;padding:11px;gap:9px;border-radius:15px}
  .hima11y-tool-icon{width:40px;height:40px;flex-basis:40px}
  .hima11y-tool-icon svg{width:24px;height:24px}
  .hima11y-tool-label{font-size:14px !important}
}

@media (max-width:390px){
  .hima11y-grid{grid-template-columns:1fr}
  .hima11y-tool{min-height:70px}
}

@media (prefers-reduced-motion:reduce){
  .hima11y-panel,.hima11y-trigger,.hima11y-backdrop,.hima11y-tool{transition:none !important}
}

/* =========================================================
 * AccessFlow - Theme/Elementor isolation - Theme/Elementor isolation
 * Keep this block LAST: it intentionally wins against global
 * theme rules for buttons, headings, sections and typography.
 * ========================================================= */
#hima11y-root{
  isolation:isolate !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:16px !important;
  font-style:normal !important;
  font-weight:400 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  direction:ltr !important;
}

#hima11y-root,
#hima11y-root div,
#hima11y-root section,
#hima11y-root header,
#hima11y-root footer,
#hima11y-root span,
#hima11y-root h2,
#hima11y-root h3,
#hima11y-root button{
  box-sizing:border-box !important;
}

/* Neutralise generic theme rules without touching our component geometry. */
#hima11y-root h2,
#hima11y-root h3{
  font-family:Arial,Helvetica,sans-serif !important;
  font-style:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  letter-spacing:normal !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  float:none !important;
  width:auto !important;
  max-width:none !important;
}

#hima11y-root button{
  -webkit-appearance:none !important;
  appearance:none !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-style:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  letter-spacing:normal !important;
  margin:0 !important;
  min-width:0 !important;
  max-width:none !important;
  box-shadow:none !important;
  float:none !important;
}

#hima11y-root button::before,
#hima11y-root button::after,
#hima11y-root h2::before,
#hima11y-root h2::after,
#hima11y-root h3::before,
#hima11y-root h3::after{
  content:none !important;
  display:none !important;
}

#hima11y-root .hima11y-panel{
  width:min(var(--hima11y-panel-width),calc(100vw - 24px)) !important;
  max-width:calc(100vw - 24px) !important;
  min-width:0 !important;
  height:auto !important;
  max-height:min(760px,calc(100vh - 110px)) !important;
  padding:0 !important;
  margin:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  border:0 !important;
  border-radius:28px !important;
  background:#f5f6f8 !important;
  color:#17191f !important;
  box-shadow:0 24px 65px rgba(0,0,0,.28) !important;
}

#hima11y-root .hima11y-header{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  min-height:82px !important;
  padding:18px 18px 18px 22px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:28px 28px 20px 20px !important;
  background:var(--hima11y-primary) !important;
  color:#fff !important;
  box-shadow:none !important;
}

#hima11y-root .hima11y-header-icon{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#fff !important;
  color:var(--hima11y-primary) !important;
  box-shadow:none !important;
}

#hima11y-root .hima11y-title{
  display:block !important;
  flex:0 1 auto !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:25px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  letter-spacing:-.02em !important;
  color:#fff !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

#hima11y-root .hima11y-header-actions{
  flex:0 0 auto !important;
  min-width:0 !important;
  margin:0 0 0 auto !important;
  padding:0 !important;
  gap:6px !important;
}

#hima11y-root .hima11y-icon-btn{
  display:grid !important;
  place-items:center !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:transparent !important;
  background-image:none !important;
  color:#fff !important;
  line-height:1 !important;
}
#hima11y-root .hima11y-icon-btn:hover,
#hima11y-root .hima11y-icon-btn:focus-visible{
  background:rgba(255,255,255,.16) !important;
  color:#fff !important;
}

#hima11y-root .hima11y-content{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:18px !important;
  margin:0 !important;
  background:transparent !important;
}

#hima11y-root .hima11y-section{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:18px !important;
  margin:0 0 14px !important;
  border:1px solid #e6e8ec !important;
  border-radius:22px !important;
  background:#fff !important;
  color:#17191f !important;
  box-shadow:0 5px 18px rgba(20,25,35,.04) !important;
  overflow:hidden !important;
}
#hima11y-root .hima11y-section:last-child{margin-bottom:0 !important}

#hima11y-root .hima11y-section-title{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 0 14px !important;
  padding:0 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:18px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  letter-spacing:normal !important;
  color:#343944 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

#hima11y-root .hima11y-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
}

#hima11y-root .hima11y-tool{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  min-height:92px !important;
  height:auto !important;
  padding:14px !important;
  margin:0 !important;
  border:2px solid transparent !important;
  border-radius:18px !important;
  background:#f2f3f5 !important;
  background-image:none !important;
  color:#17191f !important;
  box-shadow:none !important;
  line-height:1.25 !important;
  text-align:left !important;
  white-space:normal !important;
  overflow:hidden !important;
}
#hima11y-root .hima11y-tool:hover{background:#eceef1 !important;color:#17191f !important}
#hima11y-root .hima11y-tool.is-active{
  border-color:var(--hima11y-primary) !important;
  background:#fff !important;
  color:#17191f !important;
}

#hima11y-root .hima11y-tool-icon{
  display:grid !important;
  place-items:center !important;
  flex:0 0 46px !important;
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  min-height:46px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

#hima11y-root .hima11y-tool-copy{
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:5px !important;
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
}

#hima11y-root .hima11y-tool-label,
#hima11y-root .hima11y-state{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-style:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  letter-spacing:normal !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  overflow:hidden !important;
}
#hima11y-root .hima11y-tool-label{
  font-size:16px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  color:#17191f !important;
}
#hima11y-root .hima11y-state{
  font-size:11px !important;
  font-weight:700 !important;
  line-height:1.1 !important;
  color:#6d727c !important;
}

#hima11y-root .hima11y-level{
  display:flex !important;
  align-items:center !important;
  gap:4px !important;
  width:auto !important;
  height:7px !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
}
#hima11y-root .hima11y-level span{
  display:block !important;
  flex:0 0 18px !important;
  width:18px !important;
  height:5px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:#c7c9ce !important;
}
#hima11y-root .hima11y-level span.is-on{background:var(--hima11y-primary) !important}

#hima11y-root .hima11y-footer{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:0 18px 18px !important;
  margin:0 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.4 !important;
  letter-spacing:normal !important;
  color:#70757f !important;
  text-align:center !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

#hima11y-root .hima11y-trigger{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:var(--hima11y-button-size) !important;
  height:var(--hima11y-button-size) !important;
  min-width:var(--hima11y-button-size) !important;
  min-height:var(--hima11y-button-size) !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--hima11y-primary) !important;
  background-image:none !important;
  color:#fff !important;
  box-shadow:0 10px 30px rgba(0,0,0,.22) !important;
  line-height:1 !important;
}

#hima11y-root svg{
  display:block !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:none !important;
}

@media (max-width:640px){
  #hima11y-root .hima11y-panel{
    left:10px !important;
    right:10px !important;
    bottom:10px !important;
    width:auto !important;
    max-width:none !important;
    max-height:calc(100vh - 20px) !important;
    border-radius:24px !important;
  }
  #hima11y-root .hima11y-header{
    min-height:72px !important;
    padding:15px 14px 15px 18px !important;
    border-radius:24px 24px 18px 18px !important;
  }
  #hima11y-root .hima11y-title{font-size:22px !important}
  #hima11y-root .hima11y-content{padding:12px !important}
  #hima11y-root .hima11y-section{padding:14px !important;border-radius:18px !important}
  #hima11y-root .hima11y-grid{gap:8px !important}
  #hima11y-root .hima11y-tool{min-height:84px !important;padding:11px !important;gap:9px !important;border-radius:15px !important}
  #hima11y-root .hima11y-tool-icon{width:40px !important;height:40px !important;min-width:40px !important;min-height:40px !important;flex-basis:40px !important}
  #hima11y-root .hima11y-tool-label{font-size:14px !important}
}

@media (max-width:390px){
  #hima11y-root .hima11y-grid{grid-template-columns:1fr !important}
  #hima11y-root .hima11y-tool{min-height:70px !important}
}


/* =========================================================
 * AccessFlow - compact responsive UI
 * Mobile-first visual refinement + explicit integration with
 * Compatible restaurant menu components, whose typography can be
 * protected with !important declarations.
 * ========================================================= */

/* Compact, cleaner widget. */
#hima11y-root .hima11y-panel{
  width:min(392px,calc(100vw - 16px)) !important;
  max-width:calc(100vw - 16px) !important;
  max-height:min(680px,calc(100dvh - 16px)) !important;
  background:#f7f7f8 !important;
  border:1px solid rgba(18,24,35,.08) !important;
  border-radius:22px !important;
  box-shadow:0 20px 55px rgba(0,0,0,.24) !important;
  scrollbar-width:thin;
  scrollbar-color:#a6a8ad transparent;
}
#hima11y-root .hima11y-panel::-webkit-scrollbar{width:6px !important}
#hima11y-root .hima11y-panel::-webkit-scrollbar-track{background:transparent !important}
#hima11y-root .hima11y-panel::-webkit-scrollbar-thumb{background:#a6a8ad !important;border-radius:99px !important}

#hima11y-root .hima11y-header{
  min-height:66px !important;
  padding:11px 12px 11px 15px !important;
  gap:10px !important;
  border-radius:21px 21px 16px 16px !important;
}
#hima11y-root .hima11y-header-icon{
  width:38px !important;
  height:38px !important;
}
#hima11y-root .hima11y-header-icon svg{width:25px !important;height:25px !important}
#hima11y-root .hima11y-title{
  font-size:21px !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
#hima11y-root .hima11y-header-actions{gap:2px !important}
#hima11y-root .hima11y-icon-btn{
  width:38px !important;
  height:38px !important;
  padding:7px !important;
}
#hima11y-root .hima11y-icon-btn svg{width:23px !important;height:23px !important}

#hima11y-root .hima11y-content{padding:11px !important}
#hima11y-root .hima11y-section{
  padding:13px !important;
  margin:0 0 10px !important;
  border:1px solid #e7e8eb !important;
  border-radius:17px !important;
  background:#fff !important;
  box-shadow:0 4px 14px rgba(20,25,35,.035) !important;
}
#hima11y-root .hima11y-section:last-child{margin-bottom:0 !important}
#hima11y-root .hima11y-section-title{
  margin:0 0 10px !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1.15 !important;
}
#hima11y-root .hima11y-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important}

#hima11y-root button.hima11y-tool{
  min-height:78px !important;
  height:auto !important;
  padding:10px !important;
  gap:9px !important;
  overflow:hidden !important;
  border:1px solid #e5e6e9 !important;
  border-radius:14px !important;
  background:#f6f6f7 !important;
  color:#17191f !important;
  box-shadow:none !important;
}
#hima11y-root button.hima11y-tool:hover{background:#f1f2f4 !important}
#hima11y-root button.hima11y-tool.is-active{
  border:2px solid var(--hima11y-primary) !important;
  background:#fff !important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--hima11y-primary) 9%,transparent) !important;
}
#hima11y-root .hima11y-tool-icon{
  width:39px !important;
  height:39px !important;
  flex:0 0 39px !important;
  border:1px solid #ececef !important;
  background:#fff !important;
}
#hima11y-root .hima11y-tool-icon svg{width:23px !important;height:23px !important}
#hima11y-root .hima11y-tool-copy{
  gap:3px !important;
  min-width:0 !important;
  overflow:hidden !important;
}
#hima11y-root .hima11y-tool-label{
  display:block !important;
  font-size:13.5px !important;
  font-weight:750 !important;
  line-height:1.16 !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
}
#hima11y-root .hima11y-state{
  font-size:10.5px !important;
  line-height:1.1 !important;
  color:#777c86 !important;
}
#hima11y-root .hima11y-level{height:6px !important;gap:3px !important;margin-top:1px !important}
#hima11y-root .hima11y-level span{width:16px !important;height:4px !important}
#hima11y-root .hima11y-footer{display:none !important}

@media(max-width:640px){
  #hima11y-root .hima11y-panel{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    width:auto !important;
    max-width:none !important;
    max-height:calc(100dvh - 16px) !important;
    border-radius:20px !important;
  }
  #hima11y-root .hima11y-header{border-radius:19px 19px 15px 15px !important}
}
@media(max-width:340px){
  #hima11y-root .hima11y-grid{grid-template-columns:1fr !important}
  #hima11y-root button.hima11y-tool{min-height:66px !important}
}

/* ---------------------------------------------------------
 * Compatible restaurant menu components: accessibility levels.
 * These selectors deliberately beat the menu's own protected
 * !important typography without altering its layout or images.
 * --------------------------------------------------------- */

/* Text size - desktop defaults */
html.hima11y-text-size-1 body .hmm-menu h4.hmm-product-title{font-size:18px !important}
html.hima11y-text-size-2 body .hmm-menu h4.hmm-product-title{font-size:20px !important}
html.hima11y-text-size-3 body .hmm-menu h4.hmm-product-title{font-size:22px !important}
html.hima11y-text-size-4 body .hmm-menu h4.hmm-product-title{font-size:24px !important}
html.hima11y-text-size-1 body .hmm-menu .hmm-product-price{font-size:17px !important}
html.hima11y-text-size-2 body .hmm-menu .hmm-product-price{font-size:19px !important}
html.hima11y-text-size-3 body .hmm-menu .hmm-product-price{font-size:21px !important}
html.hima11y-text-size-4 body .hmm-menu .hmm-product-price{font-size:23px !important}
html.hima11y-text-size-1 body .hmm-menu p.hmm-product-description{font-size:14.5px !important}
html.hima11y-text-size-2 body .hmm-menu p.hmm-product-description{font-size:16.25px !important}
html.hima11y-text-size-3 body .hmm-menu p.hmm-product-description{font-size:18px !important}
html.hima11y-text-size-4 body .hmm-menu p.hmm-product-description{font-size:20px !important}
html.hima11y-text-size-1 body .hmm-menu .hmm-category-title{font-size:43px !important}
html.hima11y-text-size-2 body .hmm-menu .hmm-category-title{font-size:48px !important}
html.hima11y-text-size-3 body .hmm-menu .hmm-category-title{font-size:53px !important}
html.hima11y-text-size-4 body .hmm-menu .hmm-category-title{font-size:58px !important}
html.hima11y-text-size-1 body .hmm-menu .hmm-subcategory-title{font-size:25px !important}
html.hima11y-text-size-2 body .hmm-menu .hmm-subcategory-title{font-size:28px !important}
html.hima11y-text-size-3 body .hmm-menu .hmm-subcategory-title{font-size:31px !important}
html.hima11y-text-size-4 body .hmm-menu .hmm-subcategory-title{font-size:34px !important}
html.hima11y-text-size-1 body .hmm-menu .hmm-category-description{font-size:14.5px !important}
html.hima11y-text-size-2 body .hmm-menu .hmm-category-description{font-size:16px !important}
html.hima11y-text-size-3 body .hmm-menu .hmm-category-description{font-size:18px !important}
html.hima11y-text-size-4 body .hmm-menu .hmm-category-description{font-size:20px !important}
html.hima11y-text-size-1 body .hmm-menu .hmm-subcategory-description{font-size:13.5px !important}
html.hima11y-text-size-2 body .hmm-menu .hmm-subcategory-description{font-size:15px !important}
html.hima11y-text-size-3 body .hmm-menu .hmm-subcategory-description{font-size:16.5px !important}
html.hima11y-text-size-4 body .hmm-menu .hmm-subcategory-description{font-size:18px !important}
html.hima11y-text-size-1 body .hmm-menu button.hmm-lang-btn{font-size:13.5px !important}
html.hima11y-text-size-2 body .hmm-menu button.hmm-lang-btn{font-size:15px !important}
html.hima11y-text-size-3 body .hmm-menu button.hmm-lang-btn{font-size:16.5px !important}
html.hima11y-text-size-4 body .hmm-menu button.hmm-lang-btn{font-size:18px !important}
html.hima11y-text-size-1 body .hmm-menu .hmm-menu-heading{font-size:28px !important}
html.hima11y-text-size-2 body .hmm-menu .hmm-menu-heading{font-size:31px !important}
html.hima11y-text-size-3 body .hmm-menu .hmm-menu-heading{font-size:34px !important}
html.hima11y-text-size-4 body .hmm-menu .hmm-menu-heading{font-size:37px !important}
html.hima11y-text-size-1 body .hmm-menu .hmm-menu-legend,
html.hima11y-text-size-1 body .hmm-menu .hmm-menu-legend *{font-size:13.5px !important}
html.hima11y-text-size-2 body .hmm-menu .hmm-menu-legend,
html.hima11y-text-size-2 body .hmm-menu .hmm-menu-legend *{font-size:15px !important}
html.hima11y-text-size-3 body .hmm-menu .hmm-menu-legend,
html.hima11y-text-size-3 body .hmm-menu .hmm-menu-legend *{font-size:16.5px !important}
html.hima11y-text-size-4 body .hmm-menu .hmm-menu-legend,
html.hima11y-text-size-4 body .hmm-menu .hmm-menu-legend *{font-size:18px !important}

/* Pieces and preservation inherit the enlarged product title. */
html.hima11y-text-size-1 body .hmm-menu .hmm-pieces,
html.hima11y-text-size-2 body .hmm-menu .hmm-pieces,
html.hima11y-text-size-3 body .hmm-menu .hmm-pieces,
html.hima11y-text-size-4 body .hmm-menu .hmm-pieces,
html.hima11y-text-size-1 body .hmm-menu .hmm-preservation,
html.hima11y-text-size-2 body .hmm-menu .hmm-preservation,
html.hima11y-text-size-3 body .hmm-menu .hmm-preservation,
html.hima11y-text-size-4 body .hmm-menu .hmm-preservation{line-height:inherit !important}

/* Text size - tablet */
@media(max-width:700px){
  html.hima11y-text-size-1 body .hmm-menu h4.hmm-product-title{font-size:17px !important}
  html.hima11y-text-size-2 body .hmm-menu h4.hmm-product-title{font-size:18.75px !important}
  html.hima11y-text-size-3 body .hmm-menu h4.hmm-product-title{font-size:20.75px !important}
  html.hima11y-text-size-4 body .hmm-menu h4.hmm-product-title{font-size:22.5px !important}
  html.hima11y-text-size-1 body .hmm-menu .hmm-product-price{font-size:15.75px !important}
  html.hima11y-text-size-2 body .hmm-menu .hmm-product-price{font-size:17.5px !important}
  html.hima11y-text-size-3 body .hmm-menu .hmm-product-price{font-size:19.25px !important}
  html.hima11y-text-size-4 body .hmm-menu .hmm-product-price{font-size:21px !important}
  html.hima11y-text-size-1 body .hmm-menu p.hmm-product-description{font-size:14px !important}
  html.hima11y-text-size-2 body .hmm-menu p.hmm-product-description{font-size:15.6px !important}
  html.hima11y-text-size-3 body .hmm-menu p.hmm-product-description{font-size:17.25px !important}
  html.hima11y-text-size-4 body .hmm-menu p.hmm-product-description{font-size:19px !important}
  html.hima11y-text-size-1 body .hmm-menu .hmm-category-title{font-size:31px !important}
  html.hima11y-text-size-2 body .hmm-menu .hmm-category-title{font-size:35px !important}
  html.hima11y-text-size-3 body .hmm-menu .hmm-category-title{font-size:39px !important}
  html.hima11y-text-size-4 body .hmm-menu .hmm-category-title{font-size:43px !important}
}

/* Text size - smartphone */
@media(max-width:480px){
  html.hima11y-text-size-1 body .hmm-menu h4.hmm-product-title{font-size:16.25px !important}
  html.hima11y-text-size-2 body .hmm-menu h4.hmm-product-title{font-size:18px !important}
  html.hima11y-text-size-3 body .hmm-menu h4.hmm-product-title{font-size:20px !important}
  html.hima11y-text-size-4 body .hmm-menu h4.hmm-product-title{font-size:22px !important}
  html.hima11y-text-size-1 body .hmm-menu .hmm-product-price{font-size:14.5px !important}
  html.hima11y-text-size-2 body .hmm-menu .hmm-product-price{font-size:16.25px !important}
  html.hima11y-text-size-3 body .hmm-menu .hmm-product-price{font-size:18px !important}
  html.hima11y-text-size-4 body .hmm-menu .hmm-product-price{font-size:20px !important}
  html.hima11y-text-size-1 body .hmm-menu p.hmm-product-description{font-size:14px !important}
  html.hima11y-text-size-2 body .hmm-menu p.hmm-product-description{font-size:15.6px !important}
  html.hima11y-text-size-3 body .hmm-menu p.hmm-product-description{font-size:17.25px !important}
  html.hima11y-text-size-4 body .hmm-menu p.hmm-product-description{font-size:19px !important}
  html.hima11y-text-size-1 body .hmm-menu .hmm-category-title{font-size:27px !important}
  html.hima11y-text-size-2 body .hmm-menu .hmm-category-title{font-size:30px !important}
  html.hima11y-text-size-3 body .hmm-menu .hmm-category-title{font-size:33px !important}
  html.hima11y-text-size-4 body .hmm-menu .hmm-category-title{font-size:36px !important}
  html.hima11y-text-size-1 body .hmm-menu .hmm-menu-heading{font-size:17px !important}
  html.hima11y-text-size-2 body .hmm-menu .hmm-menu-heading{font-size:19px !important}
  html.hima11y-text-size-3 body .hmm-menu .hmm-menu-heading{font-size:21px !important}
  html.hima11y-text-size-4 body .hmm-menu .hmm-menu-heading{font-size:23px !important}
  html.hima11y-text-size-1 body .hmm-menu button.hmm-lang-btn{font-size:12px !important}
  html.hima11y-text-size-2 body .hmm-menu button.hmm-lang-btn{font-size:13px !important}
  html.hima11y-text-size-3 body .hmm-menu button.hmm-lang-btn{font-size:14px !important}
  html.hima11y-text-size-4 body .hmm-menu button.hmm-lang-btn{font-size:15px !important}
}

/* Menu line height. */
html.hima11y-line-height-1 body .hmm-menu h4.hmm-product-title,
html.hima11y-line-height-1 body .hmm-menu p.hmm-product-description,
html.hima11y-line-height-1 body .hmm-menu .hmm-category-title,
html.hima11y-line-height-1 body .hmm-menu .hmm-category-description,
html.hima11y-line-height-1 body .hmm-menu .hmm-subcategory-title,
html.hima11y-line-height-1 body .hmm-menu .hmm-subcategory-description,
html.hima11y-line-height-1 body .hmm-menu .hmm-menu-heading,
html.hima11y-line-height-1 body .hmm-menu .hmm-menu-legend *{line-height:1.5 !important}
html.hima11y-line-height-2 body .hmm-menu h4.hmm-product-title,
html.hima11y-line-height-2 body .hmm-menu p.hmm-product-description,
html.hima11y-line-height-2 body .hmm-menu .hmm-category-title,
html.hima11y-line-height-2 body .hmm-menu .hmm-category-description,
html.hima11y-line-height-2 body .hmm-menu .hmm-subcategory-title,
html.hima11y-line-height-2 body .hmm-menu .hmm-subcategory-description,
html.hima11y-line-height-2 body .hmm-menu .hmm-menu-heading,
html.hima11y-line-height-2 body .hmm-menu .hmm-menu-legend *{line-height:1.8 !important}
html.hima11y-line-height-3 body .hmm-menu h4.hmm-product-title,
html.hima11y-line-height-3 body .hmm-menu p.hmm-product-description,
html.hima11y-line-height-3 body .hmm-menu .hmm-category-title,
html.hima11y-line-height-3 body .hmm-menu .hmm-category-description,
html.hima11y-line-height-3 body .hmm-menu .hmm-subcategory-title,
html.hima11y-line-height-3 body .hmm-menu .hmm-subcategory-description,
html.hima11y-line-height-3 body .hmm-menu .hmm-menu-heading,
html.hima11y-line-height-3 body .hmm-menu .hmm-menu-legend *{line-height:2 !important}

/* Menu alignment: exactly two states, Left and Center. */
html.hima11y-text-align-2 body .hmm-menu h4.hmm-product-title,
html.hima11y-text-align-2 body .hmm-menu p.hmm-product-description,
html.hima11y-text-align-2 body .hmm-menu .hmm-category-toggle-copy,
html.hima11y-text-align-2 body .hmm-menu .hmm-subcategory-copy,
html.hima11y-text-align-2 body .hmm-menu .hmm-menu-legend{text-align:center !important;align-items:center !important}


/* v1.0.5: left alignment is the normal/off state; centered alignment is the active state. */
#hima11y-root .hima11y-level--align span{
  flex-basis:28px !important;
  width:28px !important;
}
