/* src/assets/styles/normalize.css */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
main {
  display: block;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none !important;
}

/* src/styles.scss */
:root {
  --white: #fff;
  --primary: #d44316;
  --primary-inverse: var(--white);
  --primary-dark: #c2390f;
  --primary-container: #ffe6de;
  --text: var(--primary-text-color, #353535);
  --text-unselected: #737373;
  --grey: #6a6a6a;
  --grey-background: #ebebeb;
  --page-background: #f0f0f0;
  --line-color: #dadada;
  --disabled-tile: #fafafa;
  --general-red: #C72929;
  --general-red-white: #fff;
  --general-red-container: #FFE1E1;
  --general-green: #0B5643;
  --general-green-white: #fff;
  --general-green-container: #D3F3EC;
  --general-green-muted: #295747;
  --general-amber: #8a5a00;
  --general-amber-container: #fdf0d0;
  --favorite-order-grey: #aaa;
  --shadow-color: #2c2b2b33;
  --nav-shadow-color: #5353531a;
  --table-border: #e8e8e8;
  --header-bg-color: var(--white);
  --nav-bg-color: var(--white);
  --mobile-nav-menu-width: 260px;
  --mobile-nav-menu-slide-out-left: calc(-1 * var(--mobile-nav-menu-width));
  --menu-cart-width: 430px;
  --menu-cart-slide-out-right: calc(-1 * var(--menu-cart-width));
  --mobile-footer-overlay-bg:
    linear-gradient(
      180deg,
      rgba(217, 217, 217, 0) 34.03%,
      var(--header-bg-color) 103.87%);
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-med: 1rem;
  --font-size-lg: 1.25rem;
  --font-size-xl: 1.5rem;
  --font-size-2xl: 1.75rem;
  --font-size-3xl: 4rem;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semi-bold: 600;
  --font-weight-bold: 700;
  --font-weight-extra-bold: 800;
  --top-banner-height: 0px;
  --desktop-header-height: 90px;
  --mobile-main-header-height: 65px;
  --main-header-height: 90px;
  --menu-nav-height: 62px;
  --mobile-menu-nav-height: 90px;
  --desktop-menu-nav-height: 62px;
  --footer-height: 101px;
  --header-height: calc(var(--top-banner-height) + var(--main-header-height) + var(--menu-nav-height));
  --header-sticky-top: 0px;
  --top-banner-sticky-top: var(--header-sticky-top);
  --main-header-sticky-top: calc(var(--top-banner-sticky-top) + var(--top-banner-height));
  --menu-nav-sticky-top: calc(var(--main-header-sticky-top) + var(--main-header-height));
  --main-pages-offset: var(--menu-nav-sticky-top);
  --font-family:
    "Poppins",
    "Poppins Fallback",
    sans-serif;
  --primary-bg-color: var(--page-background);
  --primary-text-color: #353535;
  --action-text-color: var(--primary);
  --secondary-bg-color: var(--grey-background);
  --secondary-text-color: var(--grey);
  --action-bg-color: var(--primary);
  --action-inverse-bg-color: var(--primary-inverse);
  --selection-bg-color: var(--primary-container);
  --selection-inverse-color: var(--primary-dark);
  --text-muted: var(--text-unselected);
  --header-shadow: 0px 0px 4px 0px var(--shadow-color);
  --menu-nav-shadow: 0px 3px 4px 0px var(--nav-shadow-color);
  --border-color: var(--grey-background);
  --th-border: var(--table-border);
  --primary-light: color-mix(in srgb, var(--primary) 50%, white);
  --header-z-index: 300;
  --top-banner-z-index: 200;
  --main-header-z-index: 400;
  --menu-nav-z-index: 300;
  --mobile-nav-menu-z-index: 500;
  --menu-cart-z-index: var(--mobile-nav-menu-z-index);
  --overlay-z-index: 500;
  --notification-overlay-z-index: 400;
  --modal-content-z-index: 600;
  --notification-modal-content-z-index: 500;
  --generic-modal-z-index: 7000;
  --generic-modal-overlay-z-index: 6900;
}
@font-face {
  font-family: "Poppins Fallback";
  src: local("Arial");
  ascent-override: 92.33%;
  descent-override: 30.78%;
  line-gap-override: 8.79%;
  size-adjust: 113.73%;
}
*,
*:after,
*:before {
  box-sizing: inherit;
}
html {
  box-sizing: border-box;
}
body {
  color: var(--primary-text-color);
  font-family:
    "Roboto",
    "Helvetica Neue",
    "Helvetica",
    "Arial",
    sans-serif;
  font-weight: var(--font-weight-light);
  letter-spacing: 0.01em;
}
blockquote {
  border-left: 0.3rem solid var(--border-color);
  margin-left: 0;
  margin-right: 0;
  padding: 1rem 1.5rem;
}
blockquote *:last-child {
  margin-bottom: 0;
}
.button,
button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: none;
  cursor: pointer;
  touch-action: manipulation;
}
.button.button-accent,
button.button-accent,
input[type=button].button-accent,
input[type=reset].button-accent,
input[type=submit].button-accent {
  background-color: var(--action-bg-color);
  color: var(--action-inverse-bg-color);
  font-size: var(--font-size-med);
  font-weight: var(--font-weight-semi-bold);
  line-height: 1rem;
  height: 3.25rem;
  padding: 0 1.875rem;
  border-radius: 1.0625rem;
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  text-transform: capitalize;
  white-space: nowrap;
  border-radius: 1.5rem;
  flex-wrap: nowrap;
}
.button.button-accent:active,
button.button-accent:active,
input[type=button].button-accent:active,
input[type=reset].button-accent:active,
input[type=submit].button-accent:active {
  box-shadow: 0.125rem 0.3125rem 0.25rem 0 rgba(0, 0, 0, 0.25) inset;
}
.button.button-accent-secondary,
button.button-accent-secondary,
input[type=button].button-accent-secondary,
input[type=reset].button-accent-secondary,
input[type=submit].button-accent-secondary {
  background-color: var(--primary-container);
  color: var(--primary-dark);
  font-size: var(--font-size-med);
  font-weight: var(--font-weight-bold);
  line-height: 1rem;
  height: 3.25rem;
  padding: 0 1.875rem;
  border-radius: 1.0625rem;
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  text-transform: capitalize;
  white-space: nowrap;
  border-radius: 1.5rem;
  flex-wrap: nowrap;
}
.button.button-accent-secondary:active,
button.button-accent-secondary:active,
input[type=button].button-accent-secondary:active,
input[type=reset].button-accent-secondary:active,
input[type=submit].button-accent-secondary:active {
  box-shadow: 0.125rem 0.3125rem 0.25rem 0 rgba(0, 0, 0, 0.25) inset;
}
.button.loading,
button.loading,
input[type=button].loading,
input[type=reset].loading,
input[type=submit].loading {
  animation: pulse 500ms infinite;
}
.button.button-soft,
button.button-soft,
input[type=button].button-soft,
input[type=reset].button-soft,
input[type=submit].button-soft {
  background-color: var(--selection-bg-color);
  color: var(--selection-inverse-color);
}
.button.button-soft:active,
button.button-soft:active,
input[type=button].button-soft:active,
input[type=reset].button-soft:active,
input[type=submit].button-soft:active {
  box-shadow: 0.125rem 0.3125rem 0.25rem 0 #F6CCBE inset;
}
.button.button-clear,
button.button-clear,
input[type=button].button-clear,
input[type=reset].button-clear,
input[type=submit].button-clear {
  background-color: transparent;
  color: var(--secondary-text-color);
}
.button.button-clear:active,
button.button-clear:active,
input[type=button].button-clear:active,
input[type=reset].button-clear:active,
input[type=submit].button-clear:active {
  box-shadow: none;
}
.button.button-reverted,
button.button-reverted,
input[type=button].button-reverted,
input[type=reset].button-reverted,
input[type=submit].button-reverted {
  color: var(--action-bg-color);
  background-color: var(--action-inverse-bg-color);
}
.button.button-reverted:active,
button.button-reverted:active,
input[type=button].button-reverted:active,
input[type=reset].button-reverted:active,
input[type=submit].button-reverted:active {
  box-shadow: 0.125rem 0.3125rem 0.25rem 0 #F5F5F5 inset;
}
.button.button-white,
button.button-white,
input[type=button].button-white,
input[type=reset].button-white,
input[type=submit].button-white {
  color: var(--primary);
  background-color: var(--white);
}
.button.button-white:active,
button.button-white:active,
input[type=button].button-white:active,
input[type=reset].button-white:active,
input[type=submit].button-white:active {
  box-shadow: 0.125rem 0.3125rem 0.25rem 0 rgba(0, 0, 0, 0.25) inset;
}
.button.button-white-outlined,
button.button-white-outlined,
input[type=button].button-white-outlined,
input[type=reset].button-white-outlined,
input[type=submit].button-white-outlined {
  color: var(--white);
  background-color: transparent;
  border: 0.125rem solid var(--white);
}
.button.button-white-outlined:active,
button.button-white-outlined:active,
input[type=button].button-white-outlined:active,
input[type=reset].button-white-outlined:active,
input[type=submit].button-white-outlined:active {
  box-shadow: 0.125rem 0.125rem 0.25rem 0 #F5F5F5 inset;
}
.button.button-undecorated,
button.button-undecorated,
input[type=button].button-undecorated,
input[type=reset].button-undecorated,
input[type=submit].button-undecorated {
  background: none;
  color: inherit;
  padding: 0;
  font: inherit;
  border-radius: 1.0625rem;
}
.button.button-undecorated:active,
button.button-undecorated:active,
input[type=button].button-undecorated:active,
input[type=reset].button-undecorated:active,
input[type=submit].button-undecorated:active {
  box-shadow: none;
}
.button.full-width,
button.full-width,
input[type=button].full-width,
input[type=reset].full-width,
input[type=submit].full-width {
  width: 100%;
}
.button:focus-visible,
button:focus-visible,
input[type=button]:focus-visible,
input[type=reset]:focus-visible,
input[type=submit]:focus-visible {
  outline-style: solid;
  outline-color: var(--primary-light);
  outline-offset: 0.125em;
  outline-width: 0.125em;
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
code {
  background: var(--line-color);
  border-radius: 0.4rem;
  font-size: 86%;
  margin: 0 0.2rem;
  padding: 0.2rem 0.5rem;
  white-space: nowrap;
}
pre {
  background: var(--line-color);
  border-left: 0.3rem solid var(--action-bg-color);
  overflow-y: hidden;
}
pre > code {
  border-radius: 0;
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre;
}
hr {
  border: 0;
  border-top: 0.1rem solid var(--line-color);
  margin: 2rem 0;
}
input[type=color],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=url],
input[type=week],
input:not([type]),
textarea,
select {
  -webkit-appearance: none;
  background-color: var(--grey-background);
  border: 1px solid var(--text);
  border: none;
  border-radius: 0.5rem;
  box-shadow: none;
  box-sizing: inherit;
  height: 3.25rem;
  padding: 1.375rem 1.5rem;
  width: 100%;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-regular);
}
input[type=color]:focus,
input[type=date]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=email]:focus,
input[type=month]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=url]:focus,
input[type=week]:focus,
input:not([type]):focus,
textarea:focus,
select:focus {
  border: 1px solid var(--text);
  background-color: var(--white);
}
input[type=color]:focus-visible,
input[type=date]:focus-visible,
input[type=datetime]:focus-visible,
input[type=datetime-local]:focus-visible,
input[type=email]:focus-visible,
input[type=month]:focus-visible,
input[type=number]:focus-visible,
input[type=password]:focus-visible,
input[type=search]:focus-visible,
input[type=tel]:focus-visible,
input[type=text]:focus-visible,
input[type=url]:focus-visible,
input[type=week]:focus-visible,
input:not([type]):focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline-style: solid;
  outline-color: var(--primary-light);
  outline-offset: 0.125em;
  outline-width: 0.125em;
}
input[type=color]:before,
input[type=color]:after,
input[type=date]:before,
input[type=date]:after,
input[type=datetime]:before,
input[type=datetime]:after,
input[type=datetime-local]:before,
input[type=datetime-local]:after,
input[type=email]:before,
input[type=email]:after,
input[type=month]:before,
input[type=month]:after,
input[type=number]:before,
input[type=number]:after,
input[type=password]:before,
input[type=password]:after,
input[type=search]:before,
input[type=search]:after,
input[type=tel]:before,
input[type=tel]:after,
input[type=text]:before,
input[type=text]:after,
input[type=url]:before,
input[type=url]:after,
input[type=week]:before,
input[type=week]:after,
input:not([type]):before,
input:not([type]):after,
textarea:before,
textarea:after,
select:before,
select:after {
  box-sizing: border-box;
}
input[type=color].placeholder-shown,
input[type=date].placeholder-shown,
input[type=datetime].placeholder-shown,
input[type=datetime-local].placeholder-shown,
input[type=email].placeholder-shown,
input[type=month].placeholder-shown,
input[type=number].placeholder-shown,
input[type=password].placeholder-shown,
input[type=search].placeholder-shown,
input[type=tel].placeholder-shown,
input[type=text].placeholder-shown,
input[type=url].placeholder-shown,
input[type=week].placeholder-shown,
input:not([type]).placeholder-shown,
textarea.placeholder-shown,
select.placeholder-shown {
  border-color: transparent;
}
input[type=color].isDirty,
input[type=date].isDirty,
input[type=datetime].isDirty,
input[type=datetime-local].isDirty,
input[type=email].isDirty,
input[type=month].isDirty,
input[type=number].isDirty,
input[type=password].isDirty,
input[type=search].isDirty,
input[type=tel].isDirty,
input[type=text].isDirty,
input[type=url].isDirty,
input[type=week].isDirty,
input:not([type]).isDirty,
textarea.isDirty,
select.isDirty {
  border: 1px solid var(--text);
  background-color: var(--white);
}
input[type=color].hasError,
input[type=date].hasError,
input[type=datetime].hasError,
input[type=datetime-local].hasError,
input[type=email].hasError,
input[type=month].hasError,
input[type=number].hasError,
input[type=password].hasError,
input[type=search].hasError,
input[type=tel].hasError,
input[type=text].hasError,
input[type=url].hasError,
input[type=week].hasError,
input:not([type]).hasError,
textarea.hasError,
select.hasError {
  border: 1px solid var(--general-red);
}
input[type=color]:disabled,
input[type=date]:disabled,
input[type=datetime]:disabled,
input[type=datetime-local]:disabled,
input[type=email]:disabled,
input[type=month]:disabled,
input[type=number]:disabled,
input[type=password]:disabled,
input[type=search]:disabled,
input[type=tel]:disabled,
input[type=text]:disabled,
input[type=url]:disabled,
input[type=week]:disabled,
input:not([type]):disabled,
textarea:disabled,
select:disabled {
  border-color: var(--page-background);
  color: var(--text);
}
input::placeholder {
  color: transparent;
}
input.themed-input {
  -webkit-appearance: none;
  background-color: var(--grey-background);
  color: var(--text);
  border: none;
  border-radius: 0.5rem;
  padding-left: 1.5rem;
  padding-top: 1.406rem;
  padding-bottom: 1.344rem;
  font-size: var(--font-size-lg);
}
input.themed-input.rounded {
  border-radius: 3.75rem;
}
.themed-input::placeholder {
  color: var(--grey);
}
select {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 8" width="30"><path fill="%23ar(--border-color)" d="M0,0l6,8l6-8"/></svg>') center right no-repeat;
  padding-right: 1.875rem;
}
select:focus {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 8" width="30"><path fill="%23ar(--action-bg-color)" d="M0,0l6,8l6-8"/></svg>');
}
select[multiple] {
  background: none;
  height: auto;
}
textarea {
  min-height: 4rem;
}
label,
legend {
  display: block;
  font-size: var(--font-size-med);
  font-weight: var(--font-weight-bold);
  margin-bottom: 0.3125rem;
}
fieldset {
  border-width: 0;
  padding: 0;
}
input[type=checkbox],
input[type=radio] {
  display: inline;
}
.label-inline {
  display: inline-block;
  font-weight: normal;
  margin-left: 0.3125rem;
}
[type=checkbox]:before,
[type=checkbox]:after,
[type=radio]:before,
[type=radio]:after {
  box-sizing: border-box;
}
input[type=radio].themed-radio {
  -webkit-appearance: none;
  appearance: none;
  display: grid;
  place-content: center;
  inline-size: 1.5rem;
  block-size: 1.5rem;
  min-width: 1.5rem;
  border-width: 0.0625rem;
  border-style: solid;
  border-radius: 50%;
  border-color: var(--secondary-text-color);
}
input[type=radio].themed-radio::after {
  content: "";
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 50%;
  display: block;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 0.875rem 0.875rem var(--primary);
}
input[type=radio].themed-radio:checked::after {
  transform: scale(1);
}
input[type=radio].themed-radio:checked {
  color: var(--primary);
  border-color: var(--primary);
}
input[type=checkbox].themed-checkbox {
  -webkit-appearance: none;
  appearance: none;
  display: grid;
  place-content: center;
  min-width: 1.5rem;
  height: 1.5rem;
  color: var(--secondary-text-color);
  border-width: 0.0625em;
  border-style: solid;
  border-radius: 0.125em;
  background-color: transparent;
  transition: 120ms background-color ease-in-out;
}
input[type=checkbox].themed-checkbox::after {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  transform-origin: bottom left;
  -webkit-mask-image: url("./media/check-C54M4EAI.svg");
  mask-image: url("./media/check-C54M4EAI.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  transition: 120ms all ease-in-out;
  transform: scale(0);
}
input[type=checkbox].themed-checkbox:checked::after {
  transform: scale(1);
  background: var(--white);
}
input[type=checkbox].themed-checkbox:checked {
  color: var(--primary);
  background-color: var(--primary);
}
label:has(.themed-radio, .themed-checkbox) {
  display: flex;
  align-items: center;
  gap: 1em;
  color: var(--secondary-text-color);
}
.themed-radio:focus-visible,
.themed-checkbox:focus-visible {
  outline-style: solid;
  outline-color: var(--primary-light);
  outline-offset: 0.125em;
  outline-width: 0.125em;
}
.input-error {
  font-size: var(--font-size-sm);
  line-height: 0.875rem;
  color: var(--general-red);
  display: flex;
  align-items: start;
  gap: 0.5rem;
  height: 100%;
  padding-top: 0.25rem;
  font-weight: var(--font-weight-medium);
  word-break: break-word;
}
.input-error .icon {
  width: 0.875rem;
  height: 0.875rem;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px var(--white) inset;
  box-shadow: 0 0 0px 1000px var(--white) inset;
}
input[type=password]::-ms-reveal {
  display: none;
}
a {
  color: var(--action-bg-color);
  text-decoration: none;
}
a:focus,
a:hover {
  color: var(--primary-text-color);
}
dl,
ol,
ul {
  list-style: none;
  margin-top: 0;
  padding-left: 0;
}
dl dl,
dl ol,
dl ul,
ol dl,
ol ol,
ol ul,
ul dl,
ul ol,
ul ul {
  font-size: 90%;
  margin: 0.9375rem 0 0.9375rem 1.875rem;
}
ol {
  list-style: decimal inside;
}
ul {
  list-style: circle inside;
}
fieldset,
select,
textarea {
  margin-bottom: 0.9375rem;
}
blockquote,
dl,
figure,
form,
ol,
p,
pre,
table,
ul {
  margin-bottom: 1.5625rem;
}
b,
strong {
  font-weight: bold;
}
p {
  margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: var(--font-weight-light);
  margin-bottom: 2rem;
  margin-top: 0;
}
h1 {
  font-size: 2.875rem;
}
h2 {
  font-size: 2.25rem;
}
h3 {
  font-size: 1.75rem;
}
h4 {
  font-size: 1.375rem;
}
h5 {
  font-size: 1.125rem;
}
h6 {
  font-size: var(--font-size-med);
}
.text-uppercase {
  text-transform: uppercase;
}
img {
  max-width: 100%;
}
.clearfix:after {
  clear: both;
  content: " ";
  display: table;
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.base-spinner {
  width: 48px;
  height: 48px;
  border: 5px solid var(--primary);
  border-bottom-color: transparent;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.rotate {
  animation: rotating 2s linear infinite;
}
.circular-loader {
  margin: auto;
  width: 50px;
  aspect-ratio: 1;
  display: grid;
  border: 4px solid rgba(0, 0, 0, 0);
  border-radius: 50%;
  border-right-color: var(--primary);
  animation: l15 1s infinite linear;
}
.circular-loader::before,
.circular-loader::after {
  content: "";
  grid-area: 1/1;
  margin: 2px;
  border: inherit;
  border-radius: 50%;
  animation: l15 2s infinite;
}
.circular-loader::after {
  margin: 8px;
  animation-duration: 3s;
}
@keyframes l15 {
  100% {
    transform: rotate(1turn);
  }
}
.loader {
  margin: auto;
  width: 50px;
  aspect-ratio: 1;
  display: grid;
  border: 4px solid rgba(0, 0, 0, 0);
  border-radius: 50%;
  border-right-color: var(--primary);
  animation: l15 1s infinite linear;
}
.loader::before,
.loader::after {
  content: "";
  grid-area: 1/1;
  margin: 2px;
  border: inherit;
  border-radius: 50%;
  animation: l15 2s infinite;
}
.loader::after {
  margin: 8px;
  animation-duration: 3s;
}
@keyframes l15 {
  100% {
    transform: rotate(1turn);
  }
}
.font-large {
  font-size: large;
}
.font-small {
  font-size: small;
}
.d-flex {
  display: flex;
}
.d-block {
  display: block;
}
.fit-content {
  width: fit-content;
}
.no-text-wrap {
  white-space: nowrap;
}
.mt-4 {
  margin-top: 1.5rem;
}
.mb-3 {
  margin-bottom: 1rem;
}
.p-4 {
  padding: 1.5rem;
}
.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}
.collapse:not(.show) {
  display: none;
}
.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing.collapse-horizontal {
    transition: none;
  }
}
.tooltip {
  --bs-tooltip-zindex: 1080;
  --bs-tooltip-max-width: 200px;
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-margin: ;
  --bs-tooltip-font-size: 0.875rem;
  --bs-tooltip-color: var(--bs-body-bg);
  --bs-tooltip-bg: var(--bs-emphasis-color);
  --bs-tooltip-border-radius: var(--bs-border-radius);
  --bs-tooltip-opacity: 0.9;
  --bs-tooltip-arrow-width: 0.8rem;
  --bs-tooltip-arrow-height: 0.4rem;
  z-index: var(--bs-tooltip-zindex);
  display: block;
  margin: var(--bs-tooltip-margin);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: var(--bs-tooltip-opacity);
}
.tooltip .tooltip-arrow {
  display: block;
  width: var(--bs-tooltip-arrow-width);
  height: var(--bs-tooltip-arrow-height);
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.bs-tooltip-top .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-top .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-top-color: var(--bs-tooltip-bg);
}
.bs-tooltip-end .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-end .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  right: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-right-color: var(--bs-tooltip-bg);
}
.bs-tooltip-bottom .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-bottom .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-bottom-color: var(--bs-tooltip-bg);
}
.bs-tooltip-start .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-start .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  left: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-left-color: var(--bs-tooltip-bg);
}
.tooltip-inner {
  max-width: var(--bs-tooltip-max-width);
  padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
  color: var(--bs-tooltip-color);
  text-align: center;
  background-color: var(--bs-tooltip-bg);
  border-radius: var(--bs-tooltip-border-radius);
}
:root {
  --bs-body-bg: #fff;
  --bs-emphasis-color: #000;
  --bs-border-radius: 0.375rem;
  --bs-font-sans-serif:
    system-ui,
    -apple-system,
    "Segoe UI",
    Roboto,
    "Helvetica Neue",
    "Noto Sans",
    "Liberation Sans",
    Arial,
    sans-serif,
    "Apple Color Emoji",
    "Segoe UI Emoji",
    "Segoe UI Symbol",
    "Noto Color Emoji";
}
.cwo-tooltip.tooltip {
  --bs-tooltip-bg: rgb(40, 40, 157);
  --bs-tooltip-color: #fff;
  --bs-tooltip-border-radius: 0.5rem;
  --bs-tooltip-padding-x: 1rem;
  --bs-tooltip-padding-y: 0.5rem;
  --bs-tooltip-opacity: 1;
  --bs-tooltip-font-size: 0.9rem;
}
.cwo-tooltip .tooltip-arrow::before {
  border-top-color: rgb(40, 40, 157) !important;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-height);
}
body {
  background-color: var(--page-background);
  font-family: var(--font-family);
  overflow-y: scroll;
}
@media (max-width: 1023px) {
  body {
    background-color: var(--white);
  }
  body:has(cwo-subscription-payment, cwo-premium, cwo-loyalty) {
    background-color: var(--page-background);
  }
  body:has(cwo-subscription-payment, cwo-premium, cwo-loyalty) footer {
    background-color: var(--page-background);
  }
}
.favorite-order-info {
  --bs-tooltip-opacity: 1;
  --bs-tooltip-zindex: 399;
}
.favorite-order-info .tooltip-inner {
  background-color: var(--primary);
  color: var(--white);
  font-weight: var(--font-weight-semi-bold);
  padding: 0.875rem 0.875rem 1.125rem 1.125rem;
  border-radius: 0.375rem;
  box-shadow: 2.5px 4px 4px 0 rgba(0, 0, 0, 0.15);
}
.favorite-order-info.desktop {
  --bs-tooltip-arrow-width: 0.9rem;
  --bs-tooltip-arrow-height: 0.7rem;
}
.favorite-order-info.desktop .tooltip-inner {
  width: 241px;
  max-width: 241px;
}
.favorite-order-info.desktop .tooltip-arrow::before {
  border-left-color: var(--primary);
  border-right-color: var(--primary);
}
.favorite-order-info.mobile {
  --bs-tooltip-arrow-width: 0.7rem;
  --bs-tooltip-arrow-height: 0.5rem;
}
.favorite-order-info.mobile .tooltip-inner {
  width: 300px;
  max-width: 300px;
}
.favorite-order-info.mobile .tooltip-arrow::before {
  border-bottom-color: var(--primary);
}
.favorite-order-actions {
  --bs-tooltip-opacity: 1;
  --bs-tooltip-zindex: 399;
}
.favorite-order-actions .tooltip-inner {
  background-color: var(--general-red-container);
  color: #353535;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  padding: 1.25rem;
  box-shadow: 2.5px 4px 4px 0 rgba(0, 0, 0, 0.15);
}
.favorite-order-actions .tooltip-arrow::before {
  border-bottom-color: var(--general-red-container);
  border-top-color: var(--general-red-container);
}
.favorite-order-actions.desktop {
  --bs-tooltip-arrow-width: 1.35rem;
  --bs-tooltip-arrow-height: 1rem;
}
.favorite-order-actions.desktop .tooltip-inner {
  width: 670px;
  max-width: 670px;
}
.favorite-order-actions.mobile {
  --bs-tooltip-arrow-width: 0.9rem;
  --bs-tooltip-arrow-height: 0.7rem;
}
.favorite-order-actions.mobile .tooltip-inner {
  width: 300px;
  max-width: 300px;
}
.delivery-badge-tooltip {
  --bs-tooltip-zindex: 600;
  --bs-tooltip-arrow-width: 1.1rem;
  --bs-tooltip-arrow-height: 0.9rem;
  --bs-tooltip-bg: var(--text);
  --bs-tooltip-opacity: 1;
}
.delivery-badge-tooltip .tooltip-inner {
  background-color: var(--text);
  color: #fff;
  padding: 0.875rem 1.125rem 1rem 1rem;
  border-radius: 0.375rem;
  font-size: 1rem;
  width: 315px;
  max-width: 315px;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
select:focus {
  outline: 2px solid rgb(from var(--primary) r g b/0.5) !important;
}
.password-criteria {
  margin-top: 0.5rem;
  font-size: var(--font-size-sm);
  margin-bottom: 1.5rem;
  text-align: left;
}
.password-criteria .criteria-item {
  margin-bottom: 0.25rem;
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.5rem;
}
.password-criteria .criteria-icon {
  width: 10px;
  display: inline-block;
}
.password-criteria .text-success {
  color: var(--general-green);
}
.password-criteria .text-error {
  color: var(--general-red);
}

/* angular:styles/global:styles */
/*# sourceMappingURL=styles-X5V3HOGI.css.map */
