:root {
  --cassiopeia-color-primary: #0059B8;
  --cassiopeia-color-link: #30638d;
  --link-color: #30638d;
  --link-color-rgb: 48, 99, 141;
  --cassiopeia-color-hover: #0059B8;
  --link-hover-color: #0059B8;
  --link-hover-color-rgb: 149, 75, 86;
}
.default_cart_module_text{
  color: #ffFFFF;
}

h1, .h1{
  color: #ff6600;
}

.nutrition-label {
  width: 300px;
  border: 1px solid #000;
  font-family: Arial, sans-serif;
  background-color: #fff;
  color: #000;
  padding: 10px;
  font-size: 13px;
}

.nutrition-label h1 {
  font-size: 24px;
  font-weight: bold;
  margin: 0;
  padding: 0;
  border-bottom: 8px solid #000;
}

.nutrition-label .subhead {
  font-weight: bold;
  margin-top: 4px;
  margin-bottom: 2px;
}

.nutrition-label table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 4px;
}

.nutrition-label .calories {
  font-size: 18px;
  font-weight: bold;
  padding-top: 4px;
  border-top: 4px solid #000;
}

.nutrition-label th {
  text-align: left;
}

.nutrition-label .divider {
  border-top: 4px solid #000;
  margin: 4px 0;
}

.nutrition-label .thin-divider {
  border-top: 1px solid #000;
  margin: 4px 0;
}

.nutrition-label .nutrient td {
  padding: 2px 0;
}

.nutrition-label .indent {
  padding-left: 10px;
}

.nutrition-label .double-indent {
  padding-left: 20px;
}

.nutrition-label .footnote {
  font-size: 10px;
  margin-top: 8px;
}


.custom-two-columns {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.custom-two-columns .left-column,
.custom-two-columns .right-column {
  flex: 1;
  min-width: 300px;
}


/* Click-to-Load Map widget - replaces ZHOSMMap component */
.click-to-load-map { max-width: 100%; margin: 0; padding: 0; }
.ctlm-address { margin-bottom: 10px; font-size: 15px; line-height: 1.5; }
.ctlm-placeholder {
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 20px;
  text-align: center;
  background: #f7f7f7;
}
.ctlm-note { font-size: 13px; color: #666; margin: 8px 0 14px; }
.ctlm-button {
  background: #0059B8;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 14px;
}
.ctlm-button:hover { background: #003d80; }
.ctlm-frame-container iframe {
  width: 100%;
  height: 300px;
  border: 0;
  border-radius: 6px;
}

/* JBCookies modal scroll fix - Bootstrap modal has no built-in
   scroll for tall content, so the Save button can end up hidden
   below the viewport. This forces the body to scroll internally
   while keeping the modal itself capped to the visible screen height. */
.modal-dialog {
  max-height: calc(98vh - 3.5rem);
}
.modal-content {
  max-height: calc(98vh - 3.5rem);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.modal-body {
  overflow-y: auto;
}