:root {
	--brand_color: #630d0d;
	--brand_color_inverted: #FFF;
	--background_color: #FFF;
	--text_color: #3d3d3d;
	--link_color: var(--brand_color);
}

body {
	background-color: var(--background_color);
	color: var(--text_color);
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, legend {
	font-family: Lalezar;
}

body, p, label, .paragraph {
	font-family: Hind;
	font-size: 16px;
}

a {
	color: var(--link_color);
}

a:hover {
	text-decoration: underline;
}

.brand {
	background-color: #630d0d;
	color: #FFF;
	border-color: #630d0d;
}

.text-brand {
	color: #630d0d;
}

.text-action {
	color: #007a82;
}

.brand-inverted {
	background-color: #FFF;
	color: #630d0d;
	border-color: #FFF;
}

.action {
	background-color: #007a82;
	color: #FFF;
	border-color: #007a82;
}

.action-inverted {
	background-color: #FFF;
	color: #007a82;
	border-color: #FFF;
}

/* SiteHeader */

.announcement_bar {
	background-color: #630d0d;
	color: #ffffff;
}

.announcement_bar a {
	color: #0c9482;
}

.siteHeader {
	background-color: #000000;
	color: #ffffff;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: #000000;
}

.siteHeader__container {
	max-width: 1366px;
}

/* MainNavigation */

.mainNavigation, .mobileNav {
	background-color: #000000;
}

.mainNavigation__list {
	text-align: center !important;
}

.siteHeader__container--style4 {
	text-align: center;
}

.mainNavigation__list > li > a {
	font-size: 16px;
}

/*Mobile Nav*/
.mobileNav > li > a {
	color: #ffffff;
	background-color: #2C5170;
}

.mobileNav > li > a:hover {
	background-color: #042948;
}

.mobileNav > li > a:focus {
	background-color: #042948;
}

/* Underline Link Effect */
	.mainNavigation__list > li > a {
		color: #ffffff;
		background-color: transparent;
		border-bottom: solid 2px transparent;
	}
	.mainNavigation__list > li > a:hover {
		color: #770908;
		background-color: transparent;
		border-bottom: solid 2px #770908;
	}

	.mobileNav > li > a {
		color: #ffffff;
		background-color: transparent;
		border-bottom: solid 2px transparent;
	}

	.mobileNav > li > a:hover {
		color: #770908;
		background-color: transparent;
		border-bottom: solid 2px #770908;
	}

	.mobileNav > li > a:focus {
		color: #770908;
		background-color: transparent;
		border-bottom: solid 2px #770908;
	}


.mainNavigation__list > li > a {
	transition: all 0.2s ease-in-out;
}

/* Auxiliary Navigation (Use this for the account menu, sign up cta, cart, etc,) */

.auxiliaryMenu--block, .auxiliaryMenu__container {
	background-color: transparent;
		border-bottom: none;
	}

.auxiliaryMenu {
	max-width: 1366px;
}

	.auxiliaryMenu > li > a {
		color: #b2afaf;
	}
	.auxiliaryMenu > li > a:hover, .auxiliaryMenu > li > a:focus {
		text-decoration: underline;
	}

.order__delivery_threshold_difference, .order__delivery_threshold_difference-met {
    background-color: #f5f5f5;
    color: #a2a2a2;
}

/* OrderStatus */
.orderStatusBar {
	background-color: #f5f5f5;
}

.orderStatus__container {
	color: #a2a2a2;
}

.orderStatus__container a {
	border-bottom-color: #ffffff;
	color: #a2a2a2;
}

.orderStatus__container a:hover {
	border-bottom-color: #a2a2a2;
}

.orderStatus__mobileToggle {
	color: #a2a2a2;
}

.orderStatus__mobileToggle a {
	border-bottom-color: #ffffff;
	color: #a2a2a2;
}

.orderStatus__mobileToggle a:hover {
	border-bottom-color: #a2a2a2;
}

/* Logo */

.logo {
	color: #ffffff;
	font-size: 16px;
	padding: 20px;
}

.logo__img {
	max-height: 100px;
}

@media (max-width: 414px) {.logo {padding: 15px;}.logo__img {max-height: 75px;}}

.siteFooter {
	background-color: #202020;
	color: #FFF;
}

.siteFooter .tw-prose {
	--tw-prose-headings: #FFF;
	--tw-prose-body: #FFF;
	--tw-prose-p: #FFF;
	--tw-prose-a: #FFF;
	--tw-prose-bullets: #FFF;
}

.siteFooter h1, .siteFooter h2, .siteFooter h3, .siteFooter h4, .siteFooter h5, .siteFooter h6 {
	color: #FFF;
}

.siteFooter a {
	--tw-prose-a: #FFF;
	color: #FFF;
}

.siteFooter a:hover, .siteFooter a:focus {
	color: #ebebeb;
}

.siteFooter img {
	margin-left: auto;
	margin-right: auto;
}

.backToTopLink__container {
	background-color: #343434;
}

.backToTopLink__container a {
	color: #FFF;
}

/* Buttons */
.btn-brand, .btn-default, .btn-primary {
	background-color: #630d0d !important;
	border-color: #4f0000 !important;
	color: #FFF !important;
}

.btn-brand-inverted {
	background-color: #FFF;
	color: #630d0d;
	border: solid 1px #630d0d;
}

.btn-brand-inverted:hover {
	background-color: #630d0d;
	color: #FFF;
	border: solid 1px #630d0d;
}



.btn-brand:hover, .btn-default:hover, .btn-primary:hover {
		background-color: #8b3535 !important;
	border-color: #8b3535 !important;
		color: #FFF !important;
}

.btn-danger, .btn-action, .cta {
	background-color: #007a82 !important;
	border-color: #00666e !important;
	color: #FFF !important;
}
.btn-danger:hover, .btn-action:hover, .cta:hover {
		background-color: #28a2aa !important;
	border-color: #28a2aa !important;
	
	color: #FFF !important;
}

.btn-action-inverted {
	background-color: #FFF;
	color: #007a82;
	border: solid 1px #007a82;
}

.btn-action-inverted:hover {
	background-color: #007a82;
	color: #FFF;
	border: solid 1px #007a82;
}

.bullet, .confirmation__step-number {
	background-color: #630d0d;
	color: #FFF;
}

/* Store Menu */
.storeIndex__sideBarList--style2 {
	background-color: #f8f8f8 !important;
	border-color: #f8f8f8 !important;
	color: #777;
}

.storeSearch__input--style2 {
	border-color: #f8f8f8 !important;
}

.storeIndex__sideBarList--style2 > li > a {
	color: #777;
	border-color: #eeeeee !important;
}

.storeIndex__sideBarList--style2 > li > a:hover {
	color: #777;
	background-color: #eeeeee !important;
}

.storeSearch__button--style2 {
	color: #777;
}

.banner__protocols li:before {
    color: #630d0d
}

/*Custom Styles*/
@media (max-width: 768px) {

  /* ---------- Modal: bottom sheet ---------- */
  .mm-modal {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 92vh !important;
    max-height: 92dvh !important;
    margin: 0 !important;
    border-radius: 16px 16px 0 0 !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  /* Only use flex while the modal is open */
  .mm-modal:not([style*="display: none"]) {
    display: flex !important;
  }

  /* Stay hidden when closed */
  .mm-modal[style*="display: none"] {
    display: none !important;
  }

  /* ---------- Header / close button ---------- */
  .mm-header {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 10 !important;
    padding: 0 !important;
  }

  .mm-close-btn {
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    border-radius: 50% !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important;
  }

  /* ---------- Body: stacks vertically and scrolls ---------- */
  .mm-body {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  /* ---------- Image on top ---------- */
  .mm-left {
    width: 100% !important;
    max-width: 100% !important;
    height: 220px !important;
    flex: 0 0 auto !important;
  }

  .mm-left img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }

  /* ---------- Content ---------- */
  .mm-right {
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px !important;
    display: block !important;
    height: auto !important;
  }

  .mm-right-content {
    padding: 0 !important;
    height: auto !important;
  }

  .mm-title {
    font-size: 20px !important;
    line-height: 1.25 !important;
    margin: 0 0 4px !important;
  }

  .mm-price {
    font-size: 18px !important;
    margin-bottom: 8px !important;
  }

  .mm-description {
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin-bottom: 12px !important;
  }

  /* ---------- Modifiers: let the whole body scroll ---------- */
  .mm-modifiers,
  .mm-modifiers-scroll {
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  .mm-modifier-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 10px 0 !important;
  }

  .mm-modifier-title {
    font-size: 15px !important;
  }

  .mm-modifier-price {
    font-size: 13px !important;
  }

  /* Larger tap target for checkboxes */
  .mm-checkbox {
    flex: 0 0 auto !important;
    min-width: 28px !important;
    min-height: 28px !important;
  }

  .mm-checkbox-icon {
    width: 26px !important;
    height: 26px !important;
  }

  /* ---------- Note + quantity ---------- */
  .mm-right-footer {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 12px 0 0 !important;
    margin-top: 12px !important;
  }

  .mm-note-wrap,
  .mm-note {
    width: 100% !important;
  }

  .mm-note {
    min-height: 60px !important;
    font-size: 16px !important; /* prevents iOS zoom on focus */
    box-sizing: border-box !important;
  }

  .mm-quantity {
    display: flex !important;
    justify-content: center !important;
  }

  .mm-quantity-btn {
    width: 44px !important;
    height: 44px !important;
  }

  .mm-quantity-value {
    min-width: 44px !important;
    font-size: 16px !important;
    text-align: center !important;
  }

  /* ---------- Sticky Add to Cart footer ---------- */
  .mm-footer {
    flex: 0 0 auto !important;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom)) !important;
    background: #fff !important;
    border-top: 1px solid #e5e7eb !important;
  }

  .mm-add {
    width: 100% !important;
    padding: 14px !important;
    font-size: 16px !important;
    border-radius: 8px !important;
  }
}

/* ---------- Extra small phones ---------- */
@media (max-width: 380px) {
  .mm-left { height: 180px !important; }
  .mm-title { font-size: 18px !important; }
}
