@import url(https://use.typekit.net/jey6kje.css);
.dynamicMapWrapper {
  height: 100%;
  width: 100%;
  margin: 0;
  position: relative;
}
.dynamicMapWrapper iframe {
  border: none;
  box-sizing: border-box;
}
.editableMapContainer iframe {
  pointer-events: none;
}
.text-color {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.text-color-gray {
  color: #666;
}
.filterContent .filterOptionsContainer > *,
.filterContent,
.navWrapper .navLinks .dropDownContent .button,
.navWrapper .navLinks .dropDownContent .link,
.navWrapper .userNav .dropDownContent .button,
.navWrapper .userNav .dropDownContent .link,
.mobileNavOverlay .navLinks .dropDownContent .button,
.mobileNavOverlay .navLinks .dropDownContent .link,
.mobileNavOverlay .userNav .dropDownContent .button,
.mobileNavOverlay .userNav .dropDownContent .link,
.dropDown .dropDownContent > *,
.dropDown .dropDownContent {
  color: var(--ds-text-default, #252525);
  background-color: var(--ds-surface-default, white);
}
.filterContent .filterOptionsContainer > * > a,
.filterContent > a,
.navWrapper .navLinks .dropDownContent .button > a,
.navWrapper .navLinks .dropDownContent .link > a,
.navWrapper .userNav .dropDownContent .button > a,
.navWrapper .userNav .dropDownContent .link > a,
.mobileNavOverlay .navLinks .dropDownContent .button > a,
.mobileNavOverlay .navLinks .dropDownContent .link > a,
.mobileNavOverlay .userNav .dropDownContent .button > a,
.mobileNavOverlay .userNav .dropDownContent .link > a,
.dropDown .dropDownContent > * > a,
.dropDown .dropDownContent > a,
.filterContent .filterOptionsContainer > * > p,
.filterContent > p,
.navWrapper .navLinks .dropDownContent .button > p,
.navWrapper .navLinks .dropDownContent .link > p,
.navWrapper .userNav .dropDownContent .button > p,
.navWrapper .userNav .dropDownContent .link > p,
.mobileNavOverlay .navLinks .dropDownContent .button > p,
.mobileNavOverlay .navLinks .dropDownContent .link > p,
.mobileNavOverlay .userNav .dropDownContent .button > p,
.mobileNavOverlay .userNav .dropDownContent .link > p,
.dropDown .dropDownContent > * > p,
.dropDown .dropDownContent > p {
  color: var(--ds-text-default, #252525);
  background-color: var(--ds-surface-default, white);
}
.menuSection .itemSection .item,
.popularItem:not(.backgroundImage) .itemName {
  color: var(--ds-text-default, #252525);
  background-color: var(--ds-surface-secondary, white);
}
.menuSection .itemSection .item > a,
.popularItem:not(.backgroundImage) .itemName > a,
.menuSection .itemSection .item > p,
.popularItem:not(.backgroundImage) .itemName > p {
  color: var(--ds-text-default, #252525);
  background-color: var(--ds-surface-secondary, white);
}
.reviewsSection .reviewCardWrapper .reviewCard,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent,
.card.hasShadow .cardWrapper,
.popover .popoverContent,
.modal .modalContent {
  color: #252525;
  background-color: #fff;
}
.reviewsSection .reviewCardWrapper .reviewCard > a,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  > a,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  > a,
.card.hasShadow .cardWrapper > a,
.popover .popoverContent > a,
.modal .modalContent > a,
.reviewsSection .reviewCardWrapper .reviewCard > p,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  > p,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  > p,
.card.hasShadow .cardWrapper > p,
.popover .popoverContent > p,
.modal .modalContent > p {
  color: #252525;
  background-color: #fff;
}
.customStickyFooter {
  background-color: var(
    --ds-override-action-banner-background,
    var(
      --ds-surface-secondary,
      var(--tsw-override-action-banner-background, var(--tsw-background-color))
    )
  );
}
.customStickyFooter a,
.customStickyFooter button {
  color: var(
    --ds-override-action-banner-button-text,
    var(
      --ds-text-on-bg-primary,
      var(
        --tsw-override-action-banner-button-text,
        var(--tsw-primary-contrasting-color)
      )
    )
  ) !important;
  background-color: var(
    --ds-override-action-banner-button-background,
    var(
      --ds-background-primary,
      var(
        --tsw-override-action-banner-button-background,
        var(--tsw-primary-color)
      )
    )
  ) !important;
}
.spin {
  animation: spin 1.5s linear infinite;
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
.hide {
  display: none !important;
}
@media screen and (max-width: 35.49em) {
  .hidden-xs {
    display: none !important;
  }
}
@media screen and (max-width: 47.99em) {
  .hidden-sm-down {
    display: none !important;
  }
}
@media screen and (max-width: 63.99em) {
  .hidden-md-down {
    display: none !important;
  }
}
@media screen and (max-width: 79.99em) {
  .hidden-lg-down {
    display: none !important;
  }
}
@media screen and (min-width: 80em) {
  .hidden-xl {
    display: none !important;
  }
}
@media screen and (min-width: 64em) {
  .hidden-lg-up {
    display: none !important;
  }
}
@media screen and (min-width: 48em) {
  .hidden-md-up {
    display: none !important;
  }
}
@media screen and (min-width: 35.5em) {
  .hidden-sm-up {
    display: none !important;
  }
}
.paddedContentWrapper {
  padding: 0 108px;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 63.99em) {
  .paddedContentWrapper {
    padding: 0 36px;
  }
}
@media screen and (max-width: 47.99em) {
  .paddedContentWrapper {
    padding: 0 16px;
  }
}
.paddedContentWrapper .paddedContent {
  max-width: 1224px;
  width: 100%;
  position: relative;
}
.paddedContentWrapper.withBorder {
  border-bottom: 0.75px solid var(--ds-border-default, #cecece);
}
div,
button,
input,
select,
textarea,
.pure-g [class*="pure-u"] {
  font-family: inherit;
}
.txt-10 {
  font-size: 1rem;
}
h5,
h4,
.txt-title-xs {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1.2rem;
}
@media screen and (max-width: 63.99em) {
  h5,
  h4,
  .txt-title-xs {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 47.99em) {
  h5,
  h4,
  .txt-title-xs {
    font-size: 1.3714285714rem;
  }
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .description-cell,
.scheduleMap .schedule .day,
.scheduleMap .schedule .times,
.quantitySelector .quantity,
.modalButton,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer
  .modSectionTitle,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer
  .modSectionTitle,
.checkoutButton,
.imageWithTags .tagSection,
.locationDescription .locationName,
.rjsf button[type="submit"],
.coreCtas .secondaryCta .cta,
.primaryCta,
button.button,
div.button,
.buttonLink,
.bottom-banner,
h3,
.txt-title-sm {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1rem;
  line-height: 1.25;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .price-cell,
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .name-cell,
.giftCardIllustration .headlines .locationName,
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  ul.footer-nav
  li.nav-title,
.quantitySelector .button,
.mobileNavOverlay .content .body .navLinks .mobileLink,
.mobileNavOverlay .content .body .navLinks .expandableSectionLabel,
.mobileNavOverlay .content .footer .navLinks .mobileLink,
.mobileNavOverlay .content .footer .navLinks .expandableSectionLabel,
.mobileNavOverlay .content .body .navLinks,
.mobileNavOverlay .content .footer .navLinks,
.menuSection .headerWrapper h3,
.menuSection.topImageV2 .headerWrapper h3,
.menuSection.leftImageV2 .headerWrapper h3,
.menuSection.classic .headerWrapper h3,
.button-sm.button-hollow-dark,
.button-sm.button-hollow,
.button-sm.button-gray,
.button-sm.button-white,
.button-sm.button-blue,
.button-sm.button-red,
.button-sm.button-green,
.txt-title-md {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1.5rem;
  line-height: 1.5;
}
.paginated-rxs .rx-listing-title,
h2,
.txt-title-lg {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 2rem;
  line-height: 1.5;
}
.txt-title-xl {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 2.5rem;
  line-height: 1.5;
}
h1,
.txt-title-xxl {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 2.5rem;
  line-height: 1.5;
}
.txt-title-xxxl {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 3.5rem;
  line-height: 1.5;
}
.txt-title-md-bold {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1.5rem;
  line-height: 1.5;
}
.restaurantProfile .food-types,
.txt-body-xs {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  line-height: 1.1;
  font-size: 0.5rem;
}
@media screen and (max-width: 63.99em) {
  .restaurantProfile .food-types,
  .txt-body-xs {
    font-size: 0.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .food-types,
  .txt-body-xs {
    font-size: 0.5714285714rem;
  }
}
.searchBarContainer .search-bar input:-ms-input-placeholder {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
}
.promoContainer .promoContent .dinerSupport,
.rx-card-container .link-to-rx-profile,
.searchBarContainer .search-bar input::placeholder,
.cuisine-filters .filters .cuisine-filter .cuisine-filter-content .filter-title,
.giftCardIllustration .card .illustration .heading .price,
.giftCardIllustration .card .illustration,
.restaurantProfile .order-buttons,
.restaurantProfile .rx-details .description,
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  ul.footer-nav
  li
  a,
.profileFooter .footer-container .footer-content .content-cell .footer-nav a,
.profileFooter .footer-container .footer-content .content-cell .footer-nav,
.popup .promoCode .codeSection .copyMessage,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .subtitle,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .subtitle,
.confirmationSection .formError,
.completeProfileForm .formError,
.offerModalWrapper
  .offerModal
  .content
  .body
  .offerDetail
  .copyButton
  .copyMessage,
.userModal .form .formError,
.txt-body-sm,
:root,
:host {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
}
.toastLocalFooter .container .footerContent .contentCell .footerNav a,
.giftCardIllustration .headlines .cta,
.restaurantProfile .see-full-menu,
.breadcrumbs ul .crumb,
.guestSelector .dropDown,
.resLocationSelector .dropDown,
.selector .dropDown,
.productDisplayBreadcrumbs .breadcrumbs ul .crumb,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title,
.navWrapper .navLinks .link,
.navWrapper .userNav .link,
.mobileNavOverlay .navLinks .link,
.mobileNavOverlay .userNav .link,
.locationSelector .dropDown,
.menuSection .headerWrapper .description,
.menuSection.topImageV2 .headerWrapper .description,
.menuSection.leftImageV2 .headerWrapper .description,
.menuSection.classic .headerWrapper .description,
.templateFooter,
.primaryCta.dropDown .dropDownContent,
textarea,
select,
input,
p,
li,
.txt-body-md {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
}
.giftCardPurchaseForm .successMessage,
.txt-body-lg {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.5;
}
.toastLocalSplash .posPromo .message,
.cuisine-farm h2,
.txt-body-xl {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.5;
}
.txt-body-xxl {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1.75rem;
  line-height: 1.5;
}
.txt-body-sm-bold {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.1;
}
.breadcrumbs ul .crumb:last-child,
.productDisplayBreadcrumbs .breadcrumbs ul .crumb:last-child,
.txt-body-md-bold {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25;
}
.templateFooter .name,
.txt-body-lg-bold {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.5;
}
.branded-underline {
  text-decoration: underline;
  -webkit-text-decoration-color: #ff4c00;
  text-decoration-color: #ff4c00;
  text-decoration-thickness: 0.3rem;
  text-underline-offset: 0.5rem;
}
h1 {
  font-family: var(--ds-header-1-font-family), sans-serif;
}
h2 {
  font-family: var(--ds-header-2-font-family), sans-serif;
}
h3 {
  font-family: var(--ds-header-3-font-family), sans-serif;
}
h4 {
  font-family: var(--ds-header-4-font-family), sans-serif;
}
h5 {
  font-family: var(--ds-header-4-font-family), sans-serif;
}
.bolder {
  font-weight: bolder;
}
.heroContainer
  .heroContent
  .heroCenterContent
  .heroButtonsContainer
  .heroSearchModeButton
  .heroSearchModeText,
.cuisine-farm .cuisine-cards .cuisine-card .cuisine-card-content h3,
.toastLocalNav .posPromoMini,
.toastLocalFooter .container .footerContent .contentCell ul.footerNav li a,
.toastLocalFooter .container .footerContent .contentCell .footerNav,
.cuisine-filters
  .filters
  .cuisine-filter
  .cuisine-filter-content
  .filter-title {
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.rx-search .rx-filters .rx-filter.clear-button {
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  th,
.rx-card-container .rx-card-wrapper .rx-card .rx-details .rx-header .rx-name,
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .rx-details
  .rx-header
  .food-types {
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-input
  .location-error {
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
}
.filterContent,
.dropDown .dropDownContent,
.section-rule {
  border-radius: 3px;
}
.mission .missionImg,
.cuisine-farm
  .cuisine-cards
  .cuisine-card
  .cuisine-card-content
  .cuisine-image-wrapper,
.rx-card-container .rx-card-wrapper .rx-card,
.cuisine-filters
  .filters
  .cuisine-filter.selected
  .cuisine-filter-content
  .filter-title,
.restaurantProfile .rx-photos .rx-photo img,
.button-hollow-dark,
.button-hollow,
.button-gray,
.button-white,
.button-blue,
.button-red,
.button-green {
  border-radius: 10px;
}
.toastLocalHero .heroContent .rightContent .foodPlate .cropper,
.toastLocalHero .heroContent .rightContent .foodPlate,
.paginated-rxs .viewButton,
.searchBarContainer .search-bar .submit-button,
.searchBarContainer .search-bar,
.locationSelectionPageContent .leftColumn .viewButton,
.restaurantProfile .order-buttons,
.checkoutMode .toastCheckout,
.checkoutMode .applePayCheckout,
.miniScroll ul.dots .dot,
.miniScroll ul.navButtons button {
  border-radius: 10000px;
}
.cuisine-farm
  .cuisine-cards
  .cuisine-card:hover
  .cuisine-card-content
  .cuisine-image-wrapper,
.paginated-rxs .viewButton,
.cuisine-filters .filters .arrow-wrapper,
.locationSelectionPageContent .leftColumn .viewButton,
.filterContent,
.dropDown .dropDownContent {
  box-shadow: 0px 0px 10px 0px var(--ds-surface-shadow, rgba(0, 0, 0, 0.25));
}
.cuisine-farm
  .cuisine-cards
  .cuisine-card
  .cuisine-card-content
  .cuisine-image-wrapper,
.rx-carousel .carousel-listing,
.miniScroll ul.navButtons button {
  box-shadow: 0px 0px 10px 0px var(--ds-surface-shadow, rgba(0, 0, 0, 0.1));
}
.toastLocalHero .heroContent .rightContent .foodPlate {
  box-shadow: 0px 0px 36px 0px var(--ds-surface-shadow, rgba(0, 0, 0, 0.25));
}
.searchBarContainer .search-bar {
  box-shadow: 0px 0px 75px 0px var(--ds-surface-shadow, rgba(0, 0, 0, 0.05));
}
:root,
:host {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  font-size: 16px;
  height: 100%;
}
@media screen and (max-width: 63.99em) {
  :root,
  :host {
    font-size: 16px;
  }
}
@media screen and (max-width: 47.99em) {
  :root,
  :host {
    font-size: 14px;
  }
}
:root,
a {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.primaryColor {
  color: var(--ds-background-primary, var(--tsw-primary-color));
}
.primaryColorBackground {
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
}
.primaryColorHover:hover {
  background-color: var(--tsw-primary-hover-color);
}
html {
  font-size: 16px;
  line-height: 1.5;
}
body {
  overflow-x: hidden;
  margin: 0px;
  height: 100%;
  background-color: var(--ds-surface-default, var(--tsw-background-color));
}
#content,
.tsw-app-wrapper {
  min-height: 100%;
  height: auto;
  background-color: var(--ds-surface-default, var(--tsw-background-color));
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0px;
}
hr {
  border-style: none;
  border-top: 1px solid #e5e5e5;
}
p {
  margin: 0px;
}
a {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
.link-text {
  text-decoration: none;
  color: var(--ds-text-action, #2b4fb9);
  cursor: pointer;
}
.link-text:hover {
  text-decoration: underline;
}
.underline-text {
  text-decoration: underline;
}
input {
  height: 42px;
  line-height: 42px;
  padding: 0px 8px;
  border: 1px solid rgba(0, 0, 0, 0);
}
input:-ms-input-placeholder {
  color: #666;
}
input::placeholder {
  color: #666;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type="number"] {
  -moz-appearance: textfield;
}
select {
  height: 42px;
  line-height: 42px;
  padding: 0px 8px;
  border: 1px solid rgba(0, 0, 0, 0);
}
textarea {
  height: 64px;
  line-height: normal;
  padding: 8px;
  border: none;
  resize: none;
}
textarea:-ms-input-placeholder {
  color: #666;
}
textarea::placeholder {
  color: #666;
}
.v-align-children > * {
  vertical-align: middle;
}
.no-wrap {
  white-space: nowrap;
}
.button-hollow-dark,
.button-hollow,
.button-gray,
.button-white,
.button-blue,
.button-red,
.button-green {
  display: inline-block;
  height: 40px;
  line-height: 40px;
  padding-left: 16px;
  padding-right: 16px;
  color: #fff;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.disabled.button-hollow-dark,
.disabled.button-hollow,
.disabled.button-gray,
.disabled.button-white,
.disabled.button-blue,
.disabled.button-red,
.disabled.button-green {
  pointer-events: none;
  opacity: 0.5;
}
.disabled-clickable.button-hollow-dark,
.disabled-clickable.button-hollow,
.disabled-clickable.button-gray,
.disabled-clickable.button-white,
.disabled-clickable.button-blue,
.disabled-clickable.button-red,
.disabled-clickable.button-green {
  opacity: 0.5;
}
.button-hollow-dark .icon-img,
.button-hollow .icon-img,
.button-gray .icon-img,
.button-white .icon-img,
.button-blue .icon-img,
.button-red .icon-img,
.button-green .icon-img {
  vertical-align: middle;
}
.button-sm.button-hollow-dark,
.button-sm.button-hollow,
.button-sm.button-gray,
.button-sm.button-white,
.button-sm.button-blue,
.button-sm.button-red,
.button-sm.button-green {
  height: 24px;
  line-height: 24px;
  padding-left: 4px;
  padding-right: 4px;
}
@media screen and (max-width: 47.99em) {
  .button-hollow-dark,
  .button-hollow,
  .button-gray,
  .button-white,
  .button-blue,
  .button-red,
  .button-green {
    padding-left: 4px;
    padding-right: 4px;
  }
}
.button-green {
  background: #2bca86;
  border-color: #2bca86;
  color: #fff;
}
a.button-green {
  text-decoration: none;
}
.button-red {
  background: #f35345;
  border-color: #f35345;
  color: #fff;
}
a.button-red {
  text-decoration: none;
}
.button-blue {
  background: #4977de;
  border-color: #4977de;
  color: #fff;
}
a.button-blue {
  text-decoration: none;
}
.button-white {
  background: #fff;
  border-color: #fff;
  color: #212121;
}
a.button-white {
  text-decoration: none;
}
.button-gray {
  background: #f0f0f0;
  border-color: #f0f0f0;
  color: #252525;
}
a.button-gray {
  text-decoration: none;
}
.button-hollow {
  background: none;
  border-color: #fff;
}
a.button-hollow {
  text-decoration: none;
}
.button-hollow-dark {
  background: none;
  border-color: #212121;
  color: #212121;
}
a.button-hollow-dark {
  text-decoration: none;
}
.section-rule {
  height: 6px;
  width: 100px;
  margin-bottom: 20px;
  background: #ffe388;
}
.section-rule.blue {
  background: #4977de;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="number"]:focus {
  outline: none;
}
button,
input[type="button"],
input[type="submit"] {
  cursor: pointer;
}
p.error {
  color: #f35345;
}
input.error {
  border-color: #f35345;
}
.generic-container {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding: 0px 20px;
}
.page-section {
  margin: 50px auto;
}
.pure-g.gutters {
  margin: -0.8rem;
}
.pure-g.gutters > [class*="pure-u"] {
  box-sizing: border-box;
  padding: 0.8rem;
}
.pure-g.center {
  justify-content: center;
}
.bottom-banner {
  position: fixed;
  bottom: 0px;
  width: 100%;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background: #f35345;
  color: #fff;
}
.searchBarContainer .search-bar .submit-button .search-icon,
.cuisine-filters .filters,
.bottom-banner {
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default;
}
img {
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.default-cursor {
  cursor: default;
}
.searchBarContainer .search-bar .submit-button .search-icon,
.cuisine-filters
  .filters
  .cuisine-filter
  .cuisine-filter-content
  .filter-icon-wrapper
  .filter-icon,
img {
  -webkit-user-drag: none;
  user-drag: none;
}
div {
  box-sizing: border-box;
}
.line-clamp-3,
.styledCard .cardContent .cardInfo .cardText,
.reorderItemCard .itemInfo .modifierText,
.menuSection .itemSection .itemContent .itemDescription,
.menuSection .itemSection .itemHeader,
.menuHeader .contentWrapper .content .headerContent .heading,
.line-clamp-2,
.spotlightBanner .description,
.reorderItemCard .itemInfo .headerText,
.navWrapper .nav .logoTitle h1,
.menuSection .itemSection .itemHeader.hasTag,
.menuItemWrapper .itemPrice,
.menuItemWrapper .itemDescription,
.menuItemWrapper .itemName,
.line-clamp-1 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.spotlightBanner .description,
.reorderItemCard .itemInfo .headerText,
.navWrapper .nav .logoTitle h1,
.menuSection .itemSection .itemHeader.hasTag,
.menuItemWrapper .itemPrice,
.menuItemWrapper .itemDescription,
.menuItemWrapper .itemName,
.line-clamp-1 {
  -webkit-line-clamp: 1;
}
.styledCard .cardContent .cardInfo .cardText,
.reorderItemCard .itemInfo .modifierText,
.menuSection .itemSection .itemContent .itemDescription,
.menuSection .itemSection .itemHeader,
.menuHeader .contentWrapper .content .headerContent .heading,
.line-clamp-2 {
  -webkit-line-clamp: 2;
}
.line-clamp-3 {
  -webkit-line-clamp: 3;
}
.menuSection .itemSection .item.topImageV2 .itemContent .itemDescription,
.menuSection .itemSection .item.leftImageV2 .itemContent .itemDescription,
.menuSection .itemSection .item.classic .itemContent .itemDescription,
.line-clamp-unset {
  display: unset;
  -webkit-box-orient: unset;
  overflow: unset;
  -webkit-line-clamp: unset;
}
.skip-link {
  margin-right: 1rem;
  position: absolute;
  transform: translateX(-200%);
  transition: transform 0.3s;
}
.skip-link:focus {
  position: static;
  transform: translateX(0);
}
.grecaptcha-badge {
  visibility: hidden;
}
.modal.alertModal .modalWrapper {
  z-index: 102;
}
.modal.alertModal .modalContent {
  min-height: 120px;
  min-width: 200px;
  padding: 14px;
}
.modal.alertModal .modalContent .closeButton {
  position: absolute;
  margin: 0px;
  top: 8px;
  right: 16px;
}
.modal.alertModal .modalContent .alertMessage {
  margin-top: 36px;
}
.userModal {
  padding: 24px;
  display: flex;
  flex-direction: column;
}
.userModal .form {
  display: flex;
  flex-direction: column;
}
.userModal .form .formError {
  color: red;
  margin-bottom: 4px;
}
.userModal .form button.logout {
  margin-top: 15px;
}
.button-wrapper {
  display: block;
}
.button-wrapper a,
.button-wrapper div {
  display: inline-block;
}
.button-wrapper.align-button--left {
  text-align: start;
}
.button-wrapper.align-button--right {
  text-align: end;
}
.button-wrapper.align-button--center {
  text-align: center;
}
.blockWrapper .button-wrapper {
  flex: 1;
}
.blockWrapper .button-wrapper .button {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 100%;
}
.blockWrapper .button-wrapper a {
  width: 100%;
  height: 100%;
}
a:hover {
  -webkit-text-decoration-line: none;
  text-decoration-line: none;
}
button.button,
div.button,
.buttonLink {
  cursor: pointer;
  font-size: 14pt;
  padding: 9px 26px;
  border-radius: 32px;
  border: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 63.99em) {
  button.button,
  div.button,
  .buttonLink {
    font-size: 14pt;
  }
}
button.button a,
div.button a,
.buttonLink a {
  color: var(--ds-text-action, inherit);
}
button.button.primary,
div.button.primary,
.buttonLink.primary {
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  text-decoration: none;
}
button.button.primary:not(:disabled):hover,
div.button.primary:not(:disabled):hover,
.buttonLink.primary:not(:disabled):hover {
  filter: saturate(90%) brightness(90%);
}
button.button.primary a,
div.button.primary a,
.buttonLink.primary a {
  text-decoration: none;
}
button.button.secondary,
div.button.secondary,
.buttonLink.secondary {
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  border-color: var(--ds-border-default, var(--tsw-primary-color));
  border: 2px solid var(--ds-border-default, var(--tsw-primary-color));
  text-decoration: none;
}
button.button.secondary:not(:disabled):hover,
div.button.secondary:not(:disabled):hover,
.buttonLink.secondary:not(:disabled):hover {
  filter: saturate(90%) brightness(90%);
}
button.button.secondary a,
div.button.secondary a,
.buttonLink.secondary a {
  text-decoration: none;
}
button.button.inverted,
div.button.inverted,
.buttonLink.inverted {
  color: var(--ds-background-primary, var(--tsw-primary-color));
  background-color: var(
    --ds-text-on-bg-primary,
    var(--tsw-primary-contrasting-color)
  );
  text-decoration: none;
}
button.button.inverted:not(:disabled):hover,
div.button.inverted:not(:disabled):hover,
.buttonLink.inverted:not(:disabled):hover {
  filter: saturate(90%) brightness(90%);
}
button.button.inverted a,
div.button.inverted a,
.buttonLink.inverted a {
  text-decoration: none;
}
button.button.blue,
div.button.blue,
.buttonLink.blue {
  background-color: #2b4fb9;
  color: #fff;
  text-decoration: none;
}
button.button.blue:not(:disabled):hover,
div.button.blue:not(:disabled):hover,
.buttonLink.blue:not(:disabled):hover {
  filter: saturate(90%) brightness(90%);
}
button.button.blue a,
div.button.blue a,
.buttonLink.blue a {
  text-decoration: none;
}
button.button.text,
div.button.text,
.buttonLink.text {
  background-color: transparent;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
}
button.button.link,
div.button.link,
.buttonLink.link {
  background-color: transparent;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
}
button.button:disabled,
button.button.disabled,
div.button:disabled,
div.button.disabled,
.buttonLink:disabled,
.buttonLink.disabled {
  filter: grayscale(1) contrast(0.7);
}
button.button .buttonChildrenWrapper,
div.button .buttonChildrenWrapper,
.buttonLink .buttonChildrenWrapper {
  display: grid;
  grid-auto-flow: column;
  justify-content: start;
  align-items: center;
  grid-gap: 18px;
}
.carouselArrows {
  display: inline-flex;
  float: right;
  justify-content: flex-end;
  padding-top: 40px;
}
@media screen and (max-width: 47.99em) {
  .carouselArrows {
    justify-content: center;
  }
}
.carouselArrows.whiteBorder .carouselArrow.inactive {
  border: 1px solid #fff;
}
.carouselArrows .itemRange {
  align-self: center;
  padding: 0 18px;
  font-size: 16px;
  font-weight: bold;
}
.carouselArrows .itemRange .itemTotal {
  font-weight: normal;
}
.carouselArrows.large .carouselArrow {
  height: 75px;
  width: 75px;
}
.carouselArrows.large .carouselArrow svg {
  height: 25px;
}
.carouselArrows.large .carouselArrow svg path {
  stroke-width: 1;
}
.carouselArrows.large .itemRange {
  padding: 0 50px;
}
@media screen and (max-width: 47.99em) {
  .carouselArrows.large .itemRange {
    padding: 0 20px;
  }
}
.carouselArrow {
  display: flex;
  align-items: center;
  cursor: pointer;
  height: 40px;
  width: 40px;
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  border: 1px solid var(--ds-border-default, var(--tsw-primary-color));
  border-radius: 50%;
}
.carouselArrow.right {
  transform: rotate(180deg);
}
.carouselArrow.inactive {
  cursor: auto;
  opacity: 0.4;
}
.carouselArrow svg {
  flex: 1;
}
li.no-list-style {
  list-style: none;
}
ul.no-list-style {
  -webkit-padding-start: 0;
  padding-inline-start: 0;
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-after: 0;
  margin-block-end: 0;
}
.carouselWrapper.showOneItem .carousel .itemsWrapper > div,
.carouselWrapper.showOneItem .carousel .itemsWrapper > li {
  min-width: 100%;
}
.carouselWrapper .carousel .itemsWrapper {
  display: flex;
  gap: 24px;
  overflow: hidden;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-after: 0;
  margin-block-end: 0;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.carouselWrapper .carousel .itemsWrapper::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.carouselWrapper .carousel .itemsWrapper > div,
.carouselWrapper .carousel .itemsWrapper > li {
  flex-basis: calc(33% - 12px);
  flex-grow: 1;
  flex-shrink: 0;
}
@media screen and (max-width: 47.99em) {
  .carouselWrapper .carousel .itemsWrapper {
    flex-direction: column;
    gap: 16px;
  }
  .carouselWrapper.showOneItem .carousel .itemsWrapper,
  .carouselWrapper.mobileScrollCards .carousel .itemsWrapper {
    flex-direction: row;
  }
  .carouselWrapper.mobileScrollCards .carousel > div {
    padding: 0 0 0 30px;
  }
  .carouselWrapper.mobileScrollCards .carousel .itemsWrapper {
    overflow: scroll;
    padding-right: 30px;
  }
  .carouselWrapper.mobileScrollCards .carousel .itemsWrapper .carouselItem {
    width: 250px;
  }
}
.dropDownArrow {
  display: inline-block;
}
.dropDownArrow::after {
  content: "â–¾";
  padding: 5px;
}
.dropDown {
  position: relative;
  padding: 8px 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.dropDown.withBorder {
  border: 1px solid rgba(0, 0, 0, 0.56);
  border-radius: 32px;
}
.dropDown.disabled {
  cursor: default;
}
.dropDown .dropDownLabel {
  display: inline-block;
  white-space: nowrap;
}
.dropDown .arrow {
  padding: 5px;
}
.dropDown .dropDownContent {
  cursor: default;
  position: absolute;
  top: 100%;
  z-index: 7;
  margin-top: 5px;
  max-height: 200px;
  overflow-y: scroll;
  align-items: inherit;
}
.dropDown .dropDownContent button {
  background: transparent;
  font-size: inherit;
  border: inherit;
}
.dropDown .dropDownContent::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.dropDown .dropDownContent.leftAligned {
  left: 0;
}
.dropDown .dropDownContent:not(.leftAligned) {
  right: 0;
}
.dropDown .dropDownContent > * {
  display: block;
  cursor: pointer;
  line-height: 24px;
}
.dropDown .dropDownContent > *:not(.expandableSectionContent) {
  padding: 10px 20px;
}
.dropDown .dropDownContent > *:not(.expandableSectionContent):hover {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
}
.dropDown .dropDownContent > *.expandableSectionContent a:hover {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
}
.option {
  text-align: left;
}
.option:focus {
  outline-offset: 2px;
  outline-style: auto;
  outline-width: 2px;
  -moz-outline-radius: 2px;
}
.imagePlaceholder {
  width: 100%;
  height: 100%;
  background-color: #fff;
  border-radius: 16px;
}
.editableMenuGroupContainer {
  width: inherit;
}
.editableMenuGroupContainer .groupContainer {
  background-color: var(--ds-surface-tertiary, var(--tsw-background-color));
  padding: 16px;
  border-radius: 24px;
  height: 100%;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.editableMenuGroupContainer .groupContainer .itemTags {
  margin-top: 6px;
  flex-wrap: wrap;
  grid-area: item_tags;
  display: flex;
  gap: 8px;
  align-items: center;
}
.editableMenuGroupContainer .groupContainer .groupWrapper {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  align-items: start;
  align-content: start;
  grid-gap: 30px;
  height: 100%;
}
.editableMenuGroupContainer .groupContainer .groupWrapper .groupDetails {
  display: grid;
  grid-template-areas: "group_name" "group_descr";
  padding: 0 12px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupDetails
  .groupName {
  grid-area: group_name;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  font-weight: 400;
  font-size: 22px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupDetails
  .groupDescription {
  grid-area: group_descr;
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.editableMenuGroupContainer .groupContainer .groupWrapper .groupItems {
  display: grid;
  grid-template-columns: 1fr;
  overflow-y: auto;
  height: 100%;
  align-content: start;
}
@media screen and (min-width: 47.99em) {
  .editableMenuGroupContainer
    .groupContainer
    .groupWrapper
    .groupItems.columns2 {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 48px;
  }
  .editableMenuGroupContainer
    .groupContainer
    .groupWrapper
    .groupItems.columns3 {
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 48px;
  }
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper {
  display: grid;
  padding: 16px 12px;
  align-items: center;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAligned {
  grid-template-areas: "item_name   item_image" "item_descr  item_image" "item_price  item_image" "item_price  item_image" "item_tags   item_tags";
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAligned
  .itemDescription {
  margin-top: 4px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAlignedNoDescr {
  grid-template-areas: "item_name   item_image" "item_price  item_image" "..........  item_image" "..........  item_image" "item_tags   item_tags";
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAligned,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAlignedNoDescr {
  grid-template-columns: 3fr 1fr;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAligned
  .itemName,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAlignedNoDescr
  .itemName {
  align-self: end;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAligned
  .itemPrice,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAlignedNoDescr
  .itemPrice {
  margin-top: 12px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAligned
  .itemImage,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.leftAlignedNoDescr
  .itemImage {
  margin-left: 16px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAligned {
  grid-template-areas: "item_image item_name" "item_image item_descr" "item_image item_price" "item_image item_price" "item_tags  item_tags";
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAligned
  .itemDescription {
  margin-top: 4px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAlignedNoDescr {
  grid-template-areas: "item_image item_name" "item_image item_price" "item_image .........." "item_image .........." "item_tags  item_tags";
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAligned,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAlignedNoDescr {
  grid-template-columns: 1fr 3fr;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAligned
  .itemName,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAlignedNoDescr
  .itemName {
  align-self: end;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAligned
  .itemImage,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAlignedNoDescr
  .itemImage {
  justify-self: start;
  margin-right: 16px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAligned
  .itemPrice,
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.rightAlignedNoDescr
  .itemPrice {
  margin-top: 12px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.textOnly {
  grid-template-columns: -webkit-max-content 1fr -webkit-max-content;
  grid-template-columns: max-content 1fr max-content;
  grid-template-rows: -webkit-min-content;
  grid-template-rows: min-content;
  grid-template-areas: "item_name  item_delim item_price" "item_descr item_descr item_descr" "item_tags  item_tags  item_tags";
  margin: 10px 0;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.textOnly
  .itemImage {
  display: none;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.textOnly
  .itemPrice {
  justify-self: end;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.textOnly.priceHidden
  > .itemDelimiter {
  display: none;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper.textOnly
  .itemDelimiter {
  display: block;
  align-self: center;
  border-bottom: 1px dotted var(--ds-border-default, #e0e0e0);
  width: 96%;
  margin-left: 2%;
  height: 3px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper:hover {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper
  .itemName {
  grid-area: item_name;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper
  .itemDescription {
  grid-area: item_descr;
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper
  .itemPrice {
  grid-area: item_price;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper
  .itemImage {
  grid-area: item_image;
  justify-self: end;
  background: linear-gradient(
      9.94deg,
      rgba(0, 0, 0, 0.64) 1.13%,
      rgba(0, 0, 0, 0) 50%
    ),
    linear-gradient(8.65deg, rgba(0, 0, 0, 0.64) -24.9%, rgba(0, 0, 0, 0) 76.2%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.08));
  border-radius: 5px;
  width: 116px;
  height: 116px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper
  .itemImage
  .itemImageWrapper {
  width: 100%;
  height: 100%;
  border-radius: 5px;
}
.editableMenuGroupContainer
  .groupContainer
  .groupWrapper
  .groupItems
  .itemWrapper
  .itemDelimiter {
  display: none;
}
.menuItemLink {
  height: 100%;
  width: 100%;
}
.menuItemWrapper {
  position: relative;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-radius: 16px;
  height: 100%;
  background: linear-gradient(
      9.94deg,
      rgba(0, 0, 0, 0.64) 10.13%,
      rgba(0, 0, 0, 0) 50%
    ),
    linear-gradient(8.65deg, rgba(0, 0, 0, 0.64) -24.9%, rgba(0, 0, 0, 0) 76.2%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.08));
}
.menuItemWrapper .itemImage {
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: -1;
  border-radius: 16px;
}
.menuItemWrapper .contentDiv {
  z-index: 1;
  padding: 24px;
  border-radius: 16px;
}
.menuItemWrapper .itemName {
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
  position: relative;
  text-overflow: ellipsis;
}
.menuItemWrapper .itemPrice,
.menuItemWrapper .itemDescription {
  font-weight: 400;
  font-size: 14px;
  line-height: 19px;
  text-overflow: ellipsis;
  position: relative;
}
img.editable {
  cursor: pointer;
}
.embeddedCode {
  border: none;
  min-height: 100%;
  min-width: 100%;
}
.embeddedCode.empty {
  text-align: center;
  align-content: center;
  color: #666;
  background-color: silver;
  height: 253px;
  width: 253px;
}
.errorNotice {
  padding-top: 8px;
  color: #d40023;
  font-size: 14px;
  line-height: 18px;
  display: flex;
  justify-content: space-between;
}
.react-aria-DatePicker {
  color: var(--tsw-white-contrasting-color);
}
.react-aria-DatePicker.onThemedBackground {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.react-aria-DatePicker.onThemedBackground .calendarToggle {
  color: var(--ds-icon-default, var(--tsw-primary-text-color));
}
.react-aria-DatePicker .react-aria-Group {
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
}
.react-aria-DatePicker .calendarToggle {
  border: none;
  font-size: inherit;
  background: inherit;
  color: var(--tsw-white-contrasting-color);
  height: inherit;
  width: inherit;
  box-sizing: content-box;
  padding: 8px 12px;
}
.react-aria-DatePicker .calendarToggle svg {
  height: 16px;
  width: 16px;
}
.react-aria-DatePicker .react-aria-DateInput {
  padding: 4px 2.5rem 4px 8px;
  display: flex;
}
.react-aria-Popover[data-trigger="DatePicker"] {
  max-width: unset;
}
.react-aria-Calendar {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  padding: 1rem;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  background: var(--ds-surface-tertiary, var(--tsw-primary-color));
  border: 1px solid var(--ds-border-default, var(--tsw-primary-color));
  border-radius: 1rem;
  box-shadow: 0 2.5px 6px 0 var(--ds-surface-shadow, var(--tsw-primary-color));
}
.react-aria-Calendar header {
  display: flex;
  align-items: center;
  margin: 0 4px 0.5rem 4px;
}
.react-aria-Calendar header .react-aria-Heading {
  flex: 1;
  margin: 0;
  text-align: center;
  font-size: 1.375rem;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.react-aria-Calendar .changeMonthArrow {
  width: 2rem;
  height: 2rem;
  padding: 0;
  border: none;
  background: none;
  color: inherit;
}
.react-aria-Calendar .react-aria-CalendarCell {
  width: 2rem;
  line-height: 2rem;
  text-align: center;
  border-radius: 6px;
  cursor: default;
  outline: none;
  margin: 1px;
  forced-color-adjust: none;
}
.react-aria-Calendar .react-aria-CalendarCell[data-unavailable] {
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
}
.react-aria-Calendar .react-aria-CalendarCell[data-outside-month] {
  display: none;
}
.react-aria-Calendar
  .react-aria-CalendarCell[data-hovered]:not([data-unavailable]) {
  background: var(--ds-background-primary-subtle-focus);
}
.react-aria-Calendar .react-aria-CalendarCell[data-focus-visible] {
  outline: 2px solid
    var(--ds-background-primary-focus, var(--tsw-primary-hover-color));
  outline-offset: 2px;
}
.react-aria-Calendar .react-aria-CalendarCell[data-selected] {
  background: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  font-weight: bold;
}
.formInputContainer .inputFieldInner {
  position: relative;
  border: 1px solid #cecece;
  border-radius: 8px;
  display: flex;
  height: 56px;
  margin-bottom: 8px;
}
.formInputContainer .inputFieldInner label {
  display: flex;
  justify-content: center;
  flex-direction: column-reverse;
  transform: none;
  flex-grow: 1;
}
.formInputContainer .inputFieldInner label span {
  transition: all 0.2s;
  transform-origin: top left;
  transform: translateY(100%);
  font-size: 16px;
  color: #646464;
  flex: 1;
  line-height: 18px;
}
@media screen and (max-width: 47.99em) {
  .formInputContainer .inputFieldInner label span.multiline {
    transform: translateY(25%);
  }
}
.formInputContainer .inputFieldInner label input,
.formInputContainer .inputFieldInner label textarea {
  height: 100%;
  padding: 0;
  border: none;
  box-shadow: 0 0 0 30px #fff inset;
  flex: 2;
}
.formInputContainer
  .inputFieldInner
  label
  input:not(:-ms-input-placeholder)
  ~ span,
.formInputContainer
  .inputFieldInner
  label
  textarea:not(:-ms-input-placeholder)
  ~ span {
  font-size: 12px;
  transform: translateY(40%);
  pointer-events: none;
}
.formInputContainer .inputFieldInner label input:focus ~ span,
.formInputContainer .inputFieldInner label input:not(:placeholder-shown) ~ span,
.formInputContainer .inputFieldInner label textarea:focus ~ span,
.formInputContainer
  .inputFieldInner
  label
  textarea:not(:placeholder-shown)
  ~ span {
  font-size: 12px;
  transform: translateY(40%);
  pointer-events: none;
}
@media screen and (max-width: 47.99em) {
  .formInputContainer
    .inputFieldInner
    label
    input:not(:-ms-input-placeholder)
    ~ span.multiline,
  .formInputContainer
    .inputFieldInner
    label
    textarea:not(:-ms-input-placeholder)
    ~ span.multiline {
    transform: translateY(15%);
  }
  .formInputContainer .inputFieldInner label input:focus ~ span.multiline,
  .formInputContainer
    .inputFieldInner
    label
    input:not(:placeholder-shown)
    ~ span.multiline,
  .formInputContainer .inputFieldInner label textarea:focus ~ span.multiline,
  .formInputContainer
    .inputFieldInner
    label
    textarea:not(:placeholder-shown)
    ~ span.multiline {
    transform: translateY(15%);
  }
}
.formInputContainer .inputFieldInner label input::-internal-autofill-selected,
.formInputContainer
  .inputFieldInner
  label
  textarea::-internal-autofill-selected {
  background-color: inherit;
}
.formInputContainer .inputMessage {
  margin-bottom: 8px;
  font-size: 12px;
}
.formInputContainer .inputMessage .errorMessage {
  color: #c42b44;
  background-color: #ffcdc7;
  padding: 6px 12px;
  border-radius: 6px;
}
.formInputContainer .inputMessage .errorMessage::first-letter {
  text-transform: capitalize;
}
.formInputContainer.inputDisabled {
  opacity: 40%;
}
.inputError.formInputContainer > div {
  border-color: #da342e;
}
.inputField:not(.inputFieldOtp) .inputFieldInner {
  margin-bottom: 12px;
  padding-left: 16px;
  padding-right: 16px;
}
.inputField:not(.inputFieldOtp) .inputFieldInner label {
  flex-grow: 1;
}
.inputField .autocomplete {
  height: 100%;
  align-items: center;
}
.inputField .autocomplete input {
  padding: 0;
}
.inputField .autocomplete .dropdown {
  width: calc(100% + 32px);
  max-height: 340px;
  left: -16px;
  right: auto;
}
.inputField .inputButton {
  all: unset;
  height: 100%;
  color: rgba(0, 0, 0, 0.12);
  font-weight: bold;
  transition: all 0.2s ease;
  margin-right: -8px;
  align-self: center;
}
.intlPhoneInput .inputFieldInner {
  margin-bottom: 12px;
}
.intlPhoneInput label {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  margin-right: 16px;
}
.intlPhoneInput button,
.intlPhoneInput ul {
  text-align: left;
  background: #fff;
  border: 0;
}
.intlPhoneInput button {
  display: flex;
  align-items: center;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  padding: 16px 8px 16px 16px;
}
.intlPhoneInput button:focus-visible {
  outline: 0;
  box-shadow: 0 0 5px 2px rgba(251, 146, 60, 0.7) inset;
}
.intlPhoneInput ul {
  position: absolute;
  left: 0;
  right: 0;
  top: 60px;
  max-height: 200px;
  overflow-y: auto;
  padding: 0;
  margin-top: 0;
  opacity: 0;
  transform: scale(1, 0);
  transform-origin: top left;
  transition: all 0.3s ease-in;
  pointer-events: none;
  z-index: 2;
  background: #fff;
  box-shadow: var(
    --react-international-phone-dropdown-shadow,
    2px 2px 16px rgba(0, 0, 0, 0.25)
  );
}
.intlPhoneInput ul.active {
  opacity: 1;
  transform: scale(1, 1);
  pointer-events: auto;
}
.intlPhoneInput ul li {
  padding: 8px 16px;
  cursor: pointer;
  transition: all 0.3s ease-in;
  position: relative;
  display: flex;
  align-items: center;
}
.intlPhoneInput ul li:hover,
.intlPhoneInput ul li.current {
  background: #e6e6e6;
}
.intlPhoneInput ul li.active {
  box-shadow: 0 0 0 2px rgba(251, 146, 60, 0.7);
}
.intlPhoneInput ul li.active::before {
  opacity: 1;
}
.intlPhoneInput ul li img {
  margin-right: 10px;
}
.intlPhoneInputDropdown {
  display: flex;
}
.phoneInput {
  display: flex;
  align-items: center;
}
.phoneInput .prefix {
  position: absolute;
  padding: 0 4px;
}
.phoneInput .textBox {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  flex: 1;
}
.phoneInput .textBox.phone {
  padding: 0 26px;
}
.phoneInput .textBox:focus {
  border-bottom-color: var(--tsw-primary-color);
}
.phoneInput .textBox:hover {
  border-bottom-color: var(--tsw-primary-hover-color);
}
.option {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
}
.option input {
  height: unset;
  cursor: pointer;
  opacity: 0;
  position: absolute;
  padding: 0;
  height: 0;
  width: 0;
  margin: 0;
}
.option .checkbox:checked ~ .label:not(.showInput),
.option .radio:checked ~ .label:not(.showInput) {
  border-radius: 8px;
  box-shadow: 0 0 0 1.5px var(--ds-surface-shadow, var(--tsw-primary-color))
    inset;
}
.option
  .checkbox:not(:checked):not(:disabled):focus-visible
  ~ .label:not(.showInput),
.option
  .radio:not(:checked):not(:disabled):focus-visible
  ~ .label:not(.showInput) {
  border-radius: 8px;
  outline: 1px -webkit-focus-ring-color solid;
  outline: 1px Highlight solid;
}
@media screen and (min-width: 48em) {
  .option .checkbox:not(:checked):not(:disabled) ~ .label:not(.showInput):hover,
  .option .radio:not(:checked):not(:disabled) ~ .label:not(.showInput):hover {
    border-radius: 8px;
    box-shadow: 0 0 0 1.5px
      var(--ds-surface-shadow, var(--tsw-primary-color-50)) inset;
  }
}
.option .checkbox:checked ~ .label.showInput::after {
  background-color: #252525;
  border-color: #252525;
  background-image: url("https://d28f3w0x9i80nq.cloudfront.net/icons/checkmark-small.svg");
  background-repeat: no-repeat;
  background-position: center;
}
.option .radio:checked ~ .label.showInput::after {
  background-color: #252525;
  box-shadow: 0 0 0 2px #fff inset, 0 0 0 10px #252525 inset;
  border-color: #252525;
}
.option .checkbox:disabled ~ .label,
.option .radio:disabled ~ .label {
  cursor: default;
  color: #c7c4c4;
}
.option .checkbox:disabled ~ .label::after,
.option .radio:disabled ~ .label::after {
  border-color: #c7c4c4;
}
.option .radio ~ .label::after {
  border-radius: 50%;
}
.option .checkbox ~ .label::after {
  border-radius: 4px;
}
.option .checkbox:not(:disabled) ~ label:hover.showInput::before,
.option .radio:not(:disabled) ~ label:hover.showInput::before {
  content: "";
  background-color: #f4f4f4;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  position: absolute;
  transform: translate(-6px);
  box-sizing: inherit;
}
.option .label {
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
  box-sizing: inherit;
  width: 100%;
  height: 100%;
}
.option .label .labelContents {
  width: 100%;
  order: 2;
}
.option .label.showInput {
  padding-left: 8px;
}
.option .label.showInput::after {
  border: 2px solid;
  color: #252525;
  content: "";
  height: 20px;
  width: 20px;
  max-height: 20px;
  max-width: 20px;
  flex: 0 0 20px;
  visibility: visible;
  order: 1;
  margin-right: 16px;
  z-index: 1;
  box-sizing: inherit;
}
.option .checkbox:focus ~ .label.showInput::after,
.option .radio:focus ~ .label.showInput::after {
  box-shadow: 0 0 0 1px #fff inset,
    0 0 0 2px var(--ds-surface-shadow, var(--tsw-primary-color));
}
.imageScroller {
  width: 100%;
  position: relative;
}
.imageScroller .images {
  width: 100%;
  height: 100%;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow: hidden;
}
.imageScroller .images .scrollerImageContainer {
  position: relative;
  min-width: 100%;
  min-height: -webkit-fit-content;
  min-height: -moz-fit-content;
  min-height: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
.imageScroller .arrows {
  position: absolute;
  right: 0;
  z-index: 2;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.imageScroller .arrows.bottom {
  bottom: 0;
}
.imageScroller .arrows.top {
  top: 0;
}
.imageScroller .arrows .counter {
  color: #fff;
  font-size: 1em;
}
.imageScroller .arrows button {
  padding: 0.75em;
  background: none;
  border: none;
}
.imageScroller .arrows button.disabled {
  opacity: 0.5;
}
.imageScroller .arrows button:not(.disabled):active,
.imageScroller .arrows button:not(.disabled):hover {
  border: none;
  background: none;
}
.imageScroller .arrows button:not(.disabled):active > img,
.imageScroller .arrows button:not(.disabled):hover > img {
  background: rgba(0, 0, 0, 0.6);
}
.imageScroller .arrows button > img {
  padding: 2.2rem;
  background: #000;
  -webkit-clip-path: circle(30px at 50% 50%);
  clip-path: circle(30px at 50% 50%);
}
.imageScroller .arrows button.btn--left {
  transform: rotateY(180deg);
}
@media screen and (max-width: 63.99em) {
  .imageScroller.md-compactButtons button {
    padding: 0.25em;
  }
  .imageScroller.md-compactButtons button > img {
    padding: 25px;
    transform: scale(0.6);
  }
}
.squareScroller {
  width: 400px;
  height: 400px;
}
.imageContain {
  -o-object-fit: contain;
  object-fit: contain;
}
.imageCover {
  -o-object-fit: cover;
  object-fit: cover;
}
.flippedHorizontally {
  transform: scaleX(-1);
}
.flippedHorizontally.flippedVertically {
  transform: scaleY(-1) scaleX(-1);
}
.flippedVertically {
  transform: scaleY(-1);
}
.styledImageWrapper {
  display: inherit;
  position: relative;
  width: 100%;
  height: 100%;
}
.styledImageWrapper .styledImageOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.styledImageWrapper.rounded_shape {
  border-radius: 24px;
}
.styledImageWrapper.leaf_shape {
  border-radius: 100px 100px 100px 0;
}
.styledImageWrapper.outline_shape {
  border: solid 2px var(--ds-background-primary, var(--tsw-primary-color));
  background-color: none;
}
.styledImageWrapper.square_shape {
  border-radius: 0;
}
.styledImageWrapper img,
.styledImageWrapper .styledImageOverlay {
  border-radius: inherit !important;
}
.bold {
  font-size: 1rem;
  font-weight: 600;
}
.linkChildrenWrapper {
  display: grid;
  grid-auto-flow: column;
  justify-content: start;
  align-items: center;
  grid-gap: 18px;
}
.adyenPaymentOverlay {
  position: absolute;
  z-index: 1002;
  inset: 0 0 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
}
.adyenPaymentOverlay.withBorderRadius {
  border-radius: 24px;
}
.adyenPaymentOverlay.fullScreen {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.loadingSpinnerOverlay {
  position: absolute;
  z-index: 12;
  inset: 0 0 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--ds-surface-overlay, rgba(0, 0, 0, 0.5));
}
.loadingSpinnerOverlay.top {
  align-items: flex-start;
}
.loadingSpinnerOverlay.withBorderRadius {
  border-radius: 24px;
}
.loadingSpinnerOverlay.withSubtleBorderRadius {
  border-radius: 8px;
}
.loadingSpinnerOverlay.fullScreen {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.locationMap {
  background-color: rgba(0, 0, 0, 0.2);
  border: none;
  box-sizing: border-box;
}
.autocomplete {
  width: 100%;
  position: relative;
  display: flex;
}
.autocomplete .input {
  width: 100%;
  padding: 2px 12px;
  position: relative;
}
.autocomplete .dropdown {
  background: #fff;
  border: solid 1px #e5e5e5;
  border-radius: 5px;
  overflow: hidden;
  z-index: 1;
  width: 100%;
  max-height: 340px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
}
.autocomplete .prediction {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 12px;
  width: 100%;
  background: #fff;
  border: none;
  font-size: 16px;
  text-align: left;
  cursor: pointer;
}
.autocomplete .prediction:focus,
.autocomplete .prediction:hover {
  background: #f0f0f0;
}
.autocomplete .attribution {
  display: flex;
  align-items: center;
  padding: 16px 12px;
  width: 100%;
  background: #fff;
  color: #7a7a7a;
  font-size: 16px;
  text-align: left;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.autocomplete .attribution img {
  height: 1rem;
  margin-left: 4px;
  margin-top: 2px;
}
.autocomplete .loader {
  height: 150px;
}
.autocomplete .arrow {
  height: 24px;
}
.autocomplete .currentLocation,
.autocomplete .loadingSpinner {
  position: absolute;
  right: 13px;
  align-self: center;
  display: flex;
  background: linear-gradient(270deg, white 60%, rgba(255, 255, 255, 0.3));
  padding-left: 16px;
}
.autocomplete .currentLocation:hover,
.autocomplete .loadingSpinner:hover {
  cursor: pointer;
}
.autocompleteContainer {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.placesAutocompleteError {
  color: #c42b44;
  font-size: 14px;
  margin: 8px;
  display: flex;
  flex-direction: column;
  padding-left: 4px;
}
.placesAutocompleteError span {
  padding: 4px 0;
}
.placesAutocompleteError p {
  color: #666;
  font-size: 14px;
}
.placesAutocompleteError p:not(:last-child) {
  padding-bottom: 8px;
}
.placesAutocompleteError p a {
  color: #2b4fb9;
  cursor: pointer;
}
.placesAutocompleteError p a:hover {
  text-decoration: underline;
}
button.closeButton {
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0);
  color: currentColor;
  padding: 1rem;
  border: none;
  border-radius: 50%;
}
button.closeButton:hover {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
}
.modal {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 9;
}
.modal .modalOverlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
}
.modal .modalWrapper {
  width: 100%;
  height: 100%;
  max-height: 100%;
  z-index: 9;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 400px) {
  .modal .modalWrapper {
    padding: 48px;
  }
}
.modal .modalHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.modal .modalHeader .header {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.25rem;
}
.modal .closeButton {
  padding: 12px;
  border-radius: 50%;
}
.modal .closeButton:not(.discountsModalBtn) {
  align-self: center;
}
.modal .closeButton:hover {
  background-color: #e5e5e5;
}
.modal .modalContent {
  position: relative;
  z-index: 10;
  border-radius: 24px;
  max-height: 100%;
  display: flex;
  flex-direction: column;
}
.modal .modalContent.scrollable {
  overflow-y: scroll;
}
@media screen and (max-width: 47.99em) {
  .modal .modalContent {
    width: 100%;
  }
}
@media screen and (max-width: 35.49em) {
  .modal .modalContent.fullScreenMobile {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border-radius: 0 !important;
  }
}
.globalNav {
  z-index: 8;
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  transition: top 0.5s ease-out;
}
@media (min-height: 450px) {
  .globalNav.fixedNav {
    position: fixed;
    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.1));
  }
}
.globalNav.stickyNav {
  position: -webkit-sticky;
  position: sticky;
}
.globalNav.absoluteNav {
  position: absolute;
}
.globalNav.absoluteNav.spotlightOffset {
  top: 48px;
}
.globalNav button:not(.authTooltipContent) {
  height: 48px;
}
@media screen and (max-width: 47.99em) {
  .globalNav button:not(.authTooltipContent) {
    height: 40px;
  }
}
.previewModeBanner {
  background-color: #2b4fb9;
  color: #e7eaf6;
  height: 80px;
  display: grid;
  grid-auto-flow: column;
  align-content: center;
  justify-content: center;
  grid-gap: 30px;
}
.previewModeBanner p {
  align-self: center;
}
.previewModeModalContent {
  width: 600px;
  height: 220px;
  padding: 25px 20px;
}
.popover .popoverContent {
  opacity: 0;
  pointer-events: none;
  z-index: 8;
  position: absolute;
  border-radius: 24px;
}
.popover .popoverContent.popoverVisible {
  opacity: 1;
  pointer-events: all;
  filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.25));
}
.popover .popoverContent.fullScreenPopover {
  width: 100%;
  height: 100vh;
}
.popover .popoverContent .arrow {
  width: 12px;
  height: 12px;
  top: -6px;
}
.popover .popoverContent .arrow > div {
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(45deg);
}
.popoverOverlay {
  position: fixed;
  inset: 0 0 0 0;
}
.baseShapeBlock {
  width: 100%;
  height: 100%;
}
.circleBlockWrapper {
  display: grid;
  width: 98%;
  height: 98%;
  top: 2px;
  left: 2px;
  position: relative;
}
.slider {
  position: relative;
  border-radius: 32px;
  background-color: gray;
  display: flex;
  overflow: hidden;
}
.slider.plain {
  color: #000;
  background-color: #2135540f;
}
.slider .option {
  color: var(--ds-text-secondary, var(--tsw-white-contrasting-color-75));
  z-index: 2;
  width: 50%;
  padding: 8px 12px;
  background-color: transparent;
  border: none;
  font-size: 16px;
  font-weight: 400;
  transition: color 0.4s;
  cursor: pointer;
  border-radius: 32px;
  min-height: 40px;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
.slider .option.selected {
  color: #000;
  cursor: default;
}
.slider .option.selected:focus-visible {
  outline: 1px solid #000;
  outline-offset: -4px;
}
.slider .option:focus-visible:not(.selected) {
  outline: 1px solid
    var(--ds-border-focus, var(--tsw-background-contrasting-color));
  outline-offset: -4px;
}
.slider .option.plain:not(.selected) {
  color: #000;
}
.slider .option:focus {
  outline: none;
}
.slider .option.disabled {
  opacity: 0.4;
}
.slider .option.disabled:hover {
  cursor: default;
}
.slider .option .optionText {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  white-space: nowrap;
}
.slider .option .optionText :first-child {
  font-weight: 600;
}
.slider .option svg {
  vertical-align: middle;
}
.slider .switch {
  position: absolute;
  border-radius: 32px;
  border: 1px solid #fff;
  background-color: #fff;
  top: 4px;
  bottom: 4px;
  transition: left 0.5s, right 0.5s;
}
.toggle {
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  position: relative;
  border-radius: 32px;
  box-shadow: 0 0 0 1.5px var(--ds-background-primary, var(--tsw-primary-color))
    inset;
  display: flex;
  overflow: hidden;
}
.toggle.plain {
  color: #000;
  background-color: #fff;
}
.toggle .option {
  color: var(--ds-text-secondary, var(--tsw-white-contrasting-color-75));
  z-index: 0;
  width: 50%;
  padding: 8px 12px;
  background-color: transparent;
  border: none;
  font-size: 16px;
  font-weight: 400;
  transition: color 0.4s;
  cursor: pointer;
  border-radius: 32px;
  min-height: 40px;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
.toggle .option.selected {
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  cursor: default;
}
.toggle .option.selected:focus-visible {
  outline: 1px solid
    var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  outline-offset: -4px;
}
.toggle .option:focus-visible:not(.selected) {
  outline: 1px solid
    var(--ds-border-focus, var(--tsw-background-contrasting-color));
  outline-offset: -4px;
}
.toggle .option.plain:not(.selected) {
  color: #000;
}
.toggle .option:focus {
  outline: none;
}
.toggle .option.disabled {
  opacity: 0.4;
}
.toggle .option.disabled:hover {
  cursor: default;
}
.toggle .option .optionText {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  white-space: nowrap;
}
.toggle .option .optionText :first-child {
  font-weight: 600;
}
.toggle .switch {
  position: absolute;
  width: 50%;
  border-radius: 32px;
  border: 1px solid var(--ds-background-primary, var(--tsw-primary-color));
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  top: 0;
  bottom: 0;
  right: 100%;
  left: 0;
  transition: left 0.5s, right 0.5s;
}
.toggle.hasDisabled {
  opacity: 0.4;
}
.toggle.right .switch {
  right: 0;
  left: 50%;
}
.toggle.left .switch {
  left: 0;
  right: 50%;
}
.warning {
  display: flex;
  align-items: center;
  color: #c42b44;
  border-radius: 5px;
  text-align: left;
}
.warning-icon {
  margin-right: 10px;
  width: 24px;
  height: 24px;
}
.warning-message {
  flex: 1;
}
.no-match h2 {
  margin: 20px 0px;
}
.primaryCta {
  white-space: nowrap;
  height: 48px;
  line-height: 48px;
  border-radius: 30px;
  border: none;
}
@media screen and (max-width: 47.99em) {
  .primaryCta {
    font-size: 1.25rem;
    height: 40px;
    line-height: 40px;
    min-width: 200px;
  }
}
.primaryCta:not(.dropDown) {
  padding: 0 16px;
}
.primaryCta.dropDown {
  margin-right: 0;
}
.primaryCta.dropDown .dropDownLabel {
  padding: 0;
  font-size: 16px;
  text-align: center;
  width: 140px;
}
.primaryCta.dropDown .dropDownContent a:hover {
  text-decoration: none;
}
.appPromo {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  border-radius: 16px;
  padding: 12px;
  border: 1px solid var(--ds-border-default, var(--tsw-primary-color));
}
.appPromo .promoContent {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.appPromo .promoContent .leftContent {
  display: flex;
  align-items: center;
  gap: 4px;
}
.appPromo .promoContent .appIcon {
  width: 40px;
  height: 40px;
}
.appPromo .promoContent .downloadButton {
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  border-radius: 32px;
  padding: 12px 16px;
}
.backgroundColor {
  background: linear-gradient(
    to bottom,
    var(--ds-background-primary, var(--tsw-primary-color)) 0%,
    var(--ds-background-primary, var(--tsw-primary-color)) 30%,
    rgba(255, 255, 255, 0) 30%,
    rgba(255, 255, 255, 0) 100%
  );
}
.postSubmit {
  color: #000;
}
.betterTogetherWrapper {
  z-index: 1;
  flex: 1;
  display: flex;
  justify-content: center;
  overflow: auto;
  padding: 90px 0 28px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherWrapper {
    padding: 50px 25px 50px 25px;
  }
}
@media screen and (min-width: 48em) {
  .betterTogetherWrapper {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.betterTogetherWrapper .betterTogether {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  min-width: min(100%, 400px);
  max-width: 950px;
  background-color: #fff;
  border-radius: 10px;
}
.betterTogetherWrapper .betterTogether .heading {
  text-align: center;
  color: #252525;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherWrapper .betterTogether .heading .postSubmit > h1 {
    font-size: 20px;
    line-height: 24px;
  }
  .betterTogetherWrapper .betterTogether .heading .postSubmit > h2 {
    font-size: 16px;
    line-height: 24px;
  }
}
.betterTogetherWrapper .betterTogether .heading > h2 {
  font-size: 20px;
  font-weight: 400;
  line-height: 24px;
  padding-top: 24px;
  padding-bottom: 40px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherWrapper .betterTogether .heading > h2 {
    font-size: 18px;
    line-height: 24px;
  }
}
.betterTogetherWrapper .betterTogether .heading > h2 a,
.betterTogetherWrapper .betterTogether .heading > h2 p {
  color: #252525;
}
.betterTogetherWrapper .betterTogether .formInput {
  padding-bottom: 12px;
  font-size: 14px;
}
.betterTogetherWrapper .betterTogether .formInput .inputMessage {
  position: absolute;
}
.betterTogetherWrapper .betterTogether .submit {
  margin-top: 12px;
  width: 100%;
  max-width: 400px;
}
.betterTogetherWrapper .betterTogether .fieldsWrapper {
  width: 100%;
  max-width: 400px;
}
.betterTogetherWrapper .betterTogether .submit,
.betterTogetherWrapper .betterTogether .fieldsWrapper {
  margin-left: auto;
  margin-right: auto;
}
.betterTogetherWrapper .betterTogether .disableClicks {
  pointer-events: none;
}
.disclaimer {
  padding: 20px;
  color: #666;
}
.disclaimer a {
  color: #666;
  text-decoration: underline;
}
.footerWrapper {
  z-index: 1;
}
.calendarEvents .initialAddEvent {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.calendarEvents .plusSign {
  width: 40px;
  height: 40px;
  border-radius: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.calendarEvents .eventsList {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
}
.calendarEvents .eventsList .event {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  border-bottom: 1px solid;
  border-color: var(--tsw-secondary-text-color);
  padding-bottom: 30px;
}
.calendarEvents .eventsList .event:first-child {
  margin-top: 0;
}
.calendarEvents .eventsList .event .eventDate {
  font-weight: 700;
  font-size: 16px;
  line-height: 19.2px;
  color: var(--tsw-primary-text-color);
  flex-basis: 20%;
}
.calendarEvents .eventsList .event .eventContent {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-basis: 60%;
  padding-left: 18px;
  padding-right: 18px;
}
.calendarEvents .eventsList .event .eventContent > * {
  text-align: center;
}
.calendarEvents .eventsList .event .eventContent .eventName {
  font-size: 32px;
  font-weight: 400;
  line-height: 38.4px;
  color: var(--tsw-primary-text-color);
}
.calendarEvents .eventsList .event .eventContent .eventDescription {
  line-height: 16px;
  font-size: 12px;
  color: var(--tsw-primary-text-color);
}
.calendarEvents .eventsList .event .eventLink {
  font-size: 16px;
  line-height: 24px;
  color: var(--tsw-primary-text-color);
  flex-grow: 0;
  text-align: right;
  flex-basis: 20%;
}
@media screen and (max-width: 47.99em) {
  .calendarEvents .eventsList .event {
    flex-direction: column;
  }
  .calendarEvents .eventsList .event .eventLink {
    flex-basis: 100%;
    text-align: center;
  }
}
.calendarEvents .no-events-disclaimer {
  line-height: normal;
}
li.card {
  list-style: none;
}
.card {
  position: relative;
  flex: 1;
}
.card:not(.textInset) .cardWrapper {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media screen and (max-width: 47.99em) {
  .card:not(.textInset) .cardWrapper {
    gap: 12px;
  }
}
.card.textInset .cardContentWrapper {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--ds-surface-overlay, rgba(0, 0, 0, 0.45));
}
.card.textInset .cardContentWrapper .cardContent {
  justify-content: center;
  text-align: center;
  padding: 1rem;
  color: var(--ds-text-on-overlay, white);
}
.card.textInset .cardContentWrapper .cardContent a {
  color: #fff;
}
.card.textInset .cardContentWrapper .cardContent button a {
  color: currentColor;
}
.card.outlined .cardWrapper {
  padding: 24px;
  border: 2px solid var(--ds-border-default, var(--tsw-primary-color));
}
.card.hasShadow .cardWrapper {
  box-shadow: 0px 0px 10px var(--ds-surface-shadow, rgba(0, 0, 0, 0.15));
}
.card.hasShadow {
  padding: 10px;
}
.card.hasShadow .cardWrapper {
  gap: 0;
}
.card.hasShadow .cardWrapper .cardContentWrapper {
  padding: 20px;
}
@media screen and (min-width: 48em) {
  .card.hasShadow .cardWrapper .cardContentWrapper {
    padding: 40px;
  }
}
.card .cardImageWrapper {
  line-height: 0;
}
.card .cardImageWrapper .cardImage {
  height: 250px;
  width: 100%;
}
@media screen and (min-width: 48em) {
  .card .cardImageWrapper .cardImage.tall {
    height: 450px;
  }
}
.card .cardContentWrapper {
  flex: 1;
}
.card .cardContentWrapper.justifyEnd {
  justify-content: flex-end;
}
.card .cardContentWrapper.right {
  text-align: right;
}
.card .cardContentWrapper.center {
  text-align: center;
}
.card .cardContentWrapper .cardContent {
  height: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.card .cardContentWrapper .cardContent .cardText {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.card .cardContentWrapper .cardContent .cardFooterWrapper.alignItems {
  display: flex;
  justify-content: space-between;
}
.card .cardContentWrapper .cardContent .cardFooterWrapper.right {
  flex-direction: row-reverse;
}
.card .cardContentWrapper .cardContent .cardFooterWrapper .cardFooter {
  font-weight: 700;
  align-self: center;
}
.cards.wrapCards .itemsWrapper {
  flex-wrap: wrap;
}
@media screen and (min-width: 48em) {
  .cards.wrapCards .itemsWrapper > div,
  .cards.wrapCards .itemsWrapper > li {
    flex-basis: calc(50% - 24px);
  }
}
.cards.emptySection {
  min-height: 100px;
}
.positionedCard {
  width: 100%;
}
.positionedCard .cardContentWrapper {
  pointer-events: none;
}
.positionedCard .cardContentWrapper .cardContent {
  pointer-events: all;
}
.positionedCard.textWithBackground:not(.center) .cardImageWrapper,
.positionedCard.textWithBackground:not(.center) .cardContentWrapper,
.positionedCard.textWithBackground:not(.center) .cardImageWrapper > a {
  display: block;
}
.positionedCard .cardImageWrapper,
.positionedCard .cardContentWrapper,
.positionedCard .cardImageWrapper > a {
  display: flex;
  flex: 1;
}
@media screen and (max-width: 47.99em) {
  .positionedCard .cardContentWrapper .cardContent .cardText {
    gap: 8px;
  }
}
.positionedCard.textWithBackground .cardContentWrapper .cardContent {
  background-color: var(--ds-surface-tertiary, var(--tsw-primary-color));
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.positionedCard.textWithBackground
  .cardContentWrapper
  .cardContent.secondaryTextColor {
  color: var(--ds-text-default, var(--tsw-secondary-text-color));
}
@media screen and (max-width: 47.99em) {
  .positionedCard .cardContentWrapper .cardContent.wide {
    padding: 0 30px;
  }
}
.positionedCard.large .cardContentWrapper .cardContent {
  padding: 30px;
}
.positionedCard.isFirstSection .card .cardWrapper,
.positionedCard.large .card .cardWrapper {
  gap: 0;
}
.positionedCard.top .card .cardContentWrapper {
  justify-content: center;
}
.positionedCard.top .card .cardContentWrapper .cardContent {
  text-align: center;
  justify-content: end;
  align-self: end;
}
.positionedCard.bottom .card .cardContentWrapper {
  justify-content: center;
}
.positionedCard.bottom .card .cardContentWrapper .cardContent {
  text-align: center;
  justify-content: start;
}
.positionedCard.outlined:not(.center) .card.textInset .cardContentWrapper {
  top: 25px;
  left: 25px;
  height: calc(100% - 50px);
  width: calc(100% - 50px);
}
.positionedCard.center:not(.textWithBackground)
  .card:not(.textInset)
  .cardContentWrapper
  .cardContent,
.positionedCard.outlined.textInset:not(.textWithBackground)
  .card:not(.textInset)
  .cardContentWrapper
  .cardContent {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.positionedCard.center.outlined .card .cardImageWrapper,
.positionedCard.outlined.textInset.outlined .card .cardImageWrapper {
  height: calc(100% - 52px);
  width: calc(100% - 52px);
}
.positionedCard.center.center .card .cardContentWrapper,
.positionedCard.outlined.textInset.center .card .cardContentWrapper {
  justify-content: center;
  align-items: center;
}
.positionedCard.center.center .card .cardContentWrapper .cardContent,
.positionedCard.outlined.textInset.center
  .card
  .cardContentWrapper
  .cardContent {
  text-align: center;
}
.positionedCard.center .card .cardImageWrapper,
.positionedCard.outlined.textInset .card .cardImageWrapper {
  position: absolute;
  height: 100%;
  width: 100%;
}
.positionedCard.center .card .cardImageWrapper .cardImage,
.positionedCard.outlined.textInset .card .cardImageWrapper .cardImage {
  height: 100%;
}
.positionedCard.center
  .card
  .cardWrapper:not(.halfLeaf)
  .cardImageWrapper
  .cardImage,
.positionedCard.outlined.textInset
  .card
  .cardWrapper:not(.halfLeaf)
  .cardImageWrapper
  .cardImage {
  border-radius: 0;
}
.positionedCard.center .card .cardContentWrapper,
.positionedCard.outlined.textInset .card .cardContentWrapper {
  position: relative;
  height: 500px;
  padding: 30px;
}
.positionedCard.center .card .cardContentWrapper .cardContent,
.positionedCard.outlined.textInset .card .cardContentWrapper .cardContent {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 30px;
}
.positionedCard.bottom .card .cardWrapper {
  flex-direction: column-reverse;
}
@media screen and (min-width: 48em) {
  .positionedCard .card .cardWrapper {
    flex-direction: row;
  }
  .positionedCard.center .card .cardContentWrapper .cardContent {
    padding: 50px;
    width: 60%;
  }
  .positionedCard.top .card .cardWrapper {
    flex-direction: column;
  }
  .positionedCard.bottomLeft .card .cardWrapper {
    flex-direction: row;
  }
  .positionedCard.topRight .card .cardWrapper,
  .positionedCard.right .card .cardWrapper,
  .positionedCard.bottomRight .card .cardWrapper {
    flex-direction: row-reverse;
  }
  .positionedCard .cardContentWrapper .cardContent {
    justify-content: center;
  }
  .positionedCard:not(.large).topLeft .cardContentWrapper .cardContent,
  .positionedCard:not(.large).topRight .cardContentWrapper .cardContent {
    justify-content: end;
    align-self: flex-end;
  }
  .positionedCard:not(.large).bottomLeft .cardContentWrapper .cardContent,
  .positionedCard:not(.large).bottomRight .cardContentWrapper .cardContent {
    justify-content: start;
  }
  .positionedCard:not(.large).left .cardContentWrapper .cardContent,
  .positionedCard:not(.large).right .cardContentWrapper .cardContent {
    align-self: center;
  }
  .positionedCard .card .cardImageWrapper .cardImage {
    height: 500px;
  }
  .positionedCard.isFirstSection .cardImageWrapper .cardImage {
    height: 500px;
  }
  .positionedCard.isFirstSection
    .cardContentWrapper:not(.outlined)
    .cardContent,
  .positionedCard.isFirstSection
    .cardContentWrapper:not(.outlined)
    .cardContent {
    padding: 75px 50px 50px;
  }
  .positionedCard.isFirstSection .cardContentWrapper.outlined .cardContent,
  .positionedCard.isFirstSection .cardContentWrapper.outlined .cardContent {
    padding: 50px 50px 50px;
  }
  .positionedCard.large.topLeft .cardImageWrapper,
  .positionedCard.large.topRight .cardImageWrapper {
    padding-bottom: 100px;
  }
  .positionedCard.large.left .cardImageWrapper:not(.isFirstSection),
  .positionedCard.large.right .cardImageWrapper:not(.isFirstSection) {
    padding: 100px 0;
  }
  .positionedCard.large.left .cardImageWrapper:not(.isFirstSection) .cardImage,
  .positionedCard.large.right
    .cardImageWrapper:not(.isFirstSection)
    .cardImage {
    height: 500px;
  }
  .positionedCard.large.bottomLeft .cardImageWrapper,
  .positionedCard.large.bottomRight .cardImageWrapper {
    padding-top: 100px;
  }
  .positionedCard.large.textWithBackground.topLeft .cardImageWrapper,
  .positionedCard.large.textWithBackground.left .cardImageWrapper,
  .positionedCard.large.textWithBackground.bottomLeft .cardImageWrapper {
    background: linear-gradient(
      90deg,
      rgba(255, 255, 255, 0) 75%,
      var(--ds-surface-tertiary, var(--tsw-primary-color)) 75%
    );
  }
  .positionedCard.large.textWithBackground.topRight .cardImageWrapper,
  .positionedCard.large.textWithBackground.right .cardImageWrapper,
  .positionedCard.large.textWithBackground.bottomRight .cardImageWrapper {
    background: linear-gradient(
      90deg,
      var(--ds-surface-tertiary, var(--tsw-primary-color)) 25%,
      rgba(255, 255, 255, 0) 25%
    );
  }
}
@media screen and (max-width: 47.99em) {
  .checkoutPage .paddedSection {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
.collapsibleText {
  transition: max-height 0.3s ease-out;
}
.collapsibleText.collapsed {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.collapseTextButton {
  background: none;
  border: none;
  color: var(--ds-text-action);
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  padding: 8px 0;
  text-decoration: underline;
}
.collapseTextButton:hover {
  opacity: 0.8;
}
.ctaItemModal .ctaItemModalContent {
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.ctaItemModal .header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 16px;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.ctaItemModal .header .closeButton {
  margin: 0;
  padding: 0;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  background-color: unset;
  border: none;
}
.ctaItemModal .body {
  display: flex;
  flex-direction: column;
  margin: 16px 0;
  height: auto;
  overflow-y: scroll;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.ctaItemModal .body > a {
  font-size: 18px;
  line-height: 18px;
  cursor: pointer;
  padding: 13px 36px;
}
.ctaItemModal .body > a:hover {
  background-color: rgba(0, 0, 0, 0.04);
  text-decoration: none;
}
.coreCtas {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}
@media screen and (max-width: 47.99em) {
  .coreCtas {
    gap: 0;
    justify-content: center;
  }
}
.coreCtas .secondaryCta .cta {
  display: inline-flex;
  text-decoration: none;
  cursor: pointer;
  color: var(--ds-text-action, var(--tsw-link-color));
}
.coreCtas .secondaryCta .cta:hover {
  text-decoration: none;
}
.coreCtas .secondaryCta .cta .dropDownArrow:after {
  color: var(--ds-text-action, var(--tsw-link-color));
}
.coreCtas .secondaryCta .cta .dropDownContent {
  font-weight: 400;
  white-space: nowrap;
}
.coreCtas .secondaryCta .cta .dropDownContent a:hover {
  text-decoration: none;
}
@media screen and (max-width: 47.99em) {
  .coreCtas a,
  .coreCtas .primaryCta,
  .coreCtas .secondaryCta {
    flex-basis: 100%;
    text-align: center;
    margin: 0;
    padding: 0;
  }
  .coreCtas .secondaryCta {
    margin-top: 20px;
  }
  .coreCtas .secondaryCta .cta {
    font-size: 1.25rem;
  }
}
.applePayBtn {
  -apple-pay-button-type: order;
  -webkit-appearance: -apple-pay-button;
  cursor: pointer;
}
.debugPanelButton {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 15;
  width: 36px;
  margin: 12px;
  cursor: pointer;
}
.debugPanelButton .logo {
  fill: #fff;
  background-color: #ff4c00;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0 0 0 6px #ff4c00;
}
.debugPanelButton .logo:hover {
  background-color: #db3b11;
  box-shadow: 0 0 0 6px #db3b11, 0 0 6px 12px #f0f0f0;
}
.debugPanelContainer {
  width: 400px;
  height: 100%;
  margin-left: auto;
  background-color: #fff;
}
.debugPanelContainer .wrapper {
  padding: 0;
}
.debugPanelContainer .wrapper .content {
  height: 100%;
  width: 100%;
  border-radius: 0;
}
.debugPanelContainer .wrapper .content .header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  font-size: 20px;
  font-weight: bold;
  align-items: center;
  padding: 12px 12px 12px 24px;
  box-shadow: 2px 0 4px 2px #f0f0f0;
}
.debugPanelContainer .wrapper .content .header .closeButton {
  margin: 0;
  padding: 4px;
}
.debugPanelContainer .wrapper .content .body {
  display: flex;
  flex-direction: column;
  gap: 48px;
  padding: 24px 24px 48px;
  overflow-y: auto;
}
.debugPanelContainer .wrapper .content .body ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.debugPanelContainer .wrapper .content .body ul li {
  font-size: 12px;
}
.debugPanelContainer .wrapper .content .body .formContainer .formHeader {
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
}
.debugPanelContainer
  .wrapper
  .content
  .body
  .formContainer
  .formHeader
  .formTitle {
  font-size: 18px;
  font-weight: bold;
}
.debugPanelContainer
  .wrapper
  .content
  .body
  .formContainer
  .formHeader
  .expandButton {
  background: #fff;
  border-radius: 50%;
  height: 30px;
  width: 30px;
}
.debugPanelContainer
  .wrapper
  .content
  .body
  .formContainer
  .formHeader
  .expandButton.rotatedUp {
  transform: rotate(270deg);
}
.debugPanelContainer
  .wrapper
  .content
  .body
  .formContainer
  .formHeader
  .expandButton.rotatedDown {
  transform: rotate(90deg);
}
.debugPanelContainer
  .wrapper
  .content
  .body
  .formContainer
  .formHeader
  .expandButton:hover {
  background: #f0f0f0;
  cursor: pointer;
}
.rjsf .form {
  font-size: 16px;
}
.rjsf .form fieldSet {
  display: flex;
  flex-direction: column;
  gap: 24px;
  border: 1px solid #7a7a7a;
  padding: 18px 12px;
}
.rjsf .form fieldSet .control-label {
  font-weight: 400;
}
.rjsf .form fieldSet legend#root__title {
  display: none;
}
.rjsf .form fieldSet input,
.rjsf .form fieldSet select {
  height: 24px;
  margin-top: unset;
  margin-bottom: unset;
  border: 1px solid silver;
  border-radius: 4px;
  padding: 0 8px;
  font-size: 16px;
}
.rjsf .form fieldSet input:not(input[type="checkbox"]),
.rjsf .form fieldSet select:not(input[type="checkbox"]) {
  box-shadow: 0 2px 4px 0 #e0e0e0, 0 0 6px 0 #00000005;
}
.rjsf .form fieldSet .field-string,
.rjsf .form fieldSet .field-boolean,
.rjsf .form fieldSet .field-number {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}
.rjsf .form fieldSet .field-string .checkbox label,
.rjsf .form fieldSet .field-boolean .checkbox label,
.rjsf .form fieldSet .field-number .checkbox label {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}
.rjsf .form fieldSet .field-string .checkbox label input,
.rjsf .form fieldSet .field-boolean .checkbox label input,
.rjsf .form fieldSet .field-number .checkbox label input {
  transform: scale(1.5);
}
.rjsf .form fieldSet .field-string.field-number input,
.rjsf .form fieldSet .field-boolean.field-number input,
.rjsf .form fieldSet .field-number.field-number input {
  max-width: 100px;
}
.rjsf .form fieldSet .field-string.field-string input[type="text"],
.rjsf .form fieldSet .field-boolean.field-string input[type="text"],
.rjsf .form fieldSet .field-number.field-string input[type="text"] {
  width: calc(100% - 16px);
}
.rjsf .form fieldSet .field-object fieldset .form-group {
  flex-direction: column;
  align-items: flex-start;
}
.rjsf button[type="submit"] {
  background-color: #2b4fb9;
  color: #fff;
  width: 100px;
  border: none;
  border-radius: 32px;
  height: 32px;
  margin-top: 24px;
  padding: 4px 20px;
  text-align: center;
  float: right;
}
.rjsf button[type="submit"]:hover {
  cursor: pointer;
  background-color: #002182;
}
.defaultTemplate {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.defaultTemplate .paddedSection {
  display: flex;
  justify-content: center;
  padding-left: 80px;
  padding-right: 80px;
}
@media screen and (max-width: 63.99em) {
  .defaultTemplate .paddedSection {
    padding-left: 50px;
  }
}
@media screen and (max-width: 47.99em) {
  .defaultTemplate .paddedSection {
    padding-left: 30px;
  }
}
@media screen and (max-width: 63.99em) {
  .defaultTemplate .paddedSection {
    padding-right: 50px;
  }
}
@media screen and (max-width: 47.99em) {
  .defaultTemplate .paddedSection {
    padding-right: 30px;
  }
}
.defaultTemplate .paddedSection > * {
  max-width: 1224px;
  width: 100%;
  align-self: center;
}
.defaultTemplate .paddedSection.whiteBackground {
  background-color: #fff;
}
.defaultTemplate .leftPaddedSection {
  padding-left: 80px;
}
.defaultTemplate .leftPaddedSection > * {
  max-width: 600px !important;
  width: 100%;
  align-self: center;
}
@media screen and (max-width: 63.99em) {
  .defaultTemplate .leftPaddedSection {
    padding-left: 50px;
  }
}
@media screen and (max-width: 47.99em) {
  .defaultTemplate .leftPaddedSection {
    padding-left: 30px;
  }
}
.defaultTemplate .rightPaddedSection {
  padding-right: 80px;
}
.defaultTemplate .rightPaddedSection > * {
  max-width: 600px !important;
  width: 100%;
  align-self: center;
}
@media screen and (max-width: 63.99em) {
  .defaultTemplate .rightPaddedSection {
    padding-right: 50px;
  }
}
@media screen and (max-width: 47.99em) {
  .defaultTemplate .rightPaddedSection {
    padding-right: 30px;
  }
}
.defaultTemplate .nav {
  padding-top: 12px;
  padding-bottom: 12px;
}
@media screen and (max-width: 63.99em) {
  .defaultTemplate .nav {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
.defaultTemplate .locationSelectorWrapper {
  padding: 20px 0;
}
.defaultTemplate .orderAgain {
  padding-top: 16px;
}
.defaultTemplate .gradient {
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(196, 196, 196, 0.2) 100%
  );
}
.defaultTemplate .sectionHeader {
  padding-bottom: 24px;
}
.defaultTemplate .sectionSeparatorWrapper {
  width: 100%;
  background-color: var(--ds-surface-default, var(--tsw-background-color));
}
.defaultTemplate .sectionSeparator {
  max-width: 940px;
  padding: 0 30px;
  border: 1px solid var(--ds-border-default, var(--tsw-primary-color));
}
.defaultTemplate .centeredLogo {
  display: flex;
  justify-content: center;
  max-height: 300px;
  margin-top: 6px;
}
.defaultTemplate .centeredLogo img {
  -o-object-fit: contain;
  object-fit: contain;
  max-width: 100%;
}
.defaultTemplate .themeElement.rounded {
  border-radius: 24px;
}
.defaultTemplate .themeElement.halfLeaf {
  border-radius: 100px 100px 100px 0;
}
@media screen and (min-width: 48em) {
  .defaultTemplate .themeRow.wide > div:first-child .themeRowPaddedElement {
    padding-left: 50px;
  }
}
@media screen and (min-width: 64em) {
  .defaultTemplate .themeRow.wide > div:first-child .themeRowPaddedElement {
    padding-left: 80px;
  }
}
@media screen and (min-width: 48em) {
  .defaultTemplate .themeRow.wide > div:last-child .themeRowPaddedElement {
    padding-right: 50px;
  }
}
@media screen and (min-width: 64em) {
  .defaultTemplate .themeRow.wide > div:last-child .themeRowPaddedElement {
    padding-right: 80px;
  }
}
.defaultTemplate .themeRow.wide > div .themeRowPaddedElement {
  padding-left: 1rem;
}
@media screen and (max-width: 47.99em) {
  .defaultTemplate .themeRow.wide > div .themeRowPaddedElement {
    padding-left: 30px;
    padding-right: 30px;
  }
}
.defaultTemplate .authTooltip {
  z-index: 10;
}
.headerWrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.headerWrapper .headerBadge {
  display: inline-block;
  margin-left: 8px;
}
.headerWrapper .separator {
  height: 4px;
  border: none;
  margin: 2px 0;
}
.padAroundLargeLogo {
  padding-left: 245px;
  padding-right: 245px;
  padding-top: 0;
}
@media screen and (max-width: 47.99em) {
  .padAroundLargeLogo {
    padding-left: 0;
  }
}
.navAndMenu {
  display: flex;
  flex-direction: column;
}
.navAndMenu .fulfillmentContainer {
  display: flex;
  flex-direction: row-reverse;
  padding-top: 35px;
}
.blockWrapper > div {
  width: 100%;
}
.centerAligned {
  display: grid;
  align-content: center;
  height: 100%;
}
.templateFooter {
  background-color: var(
    --ds-override-footer-background,
    var(--ds-surface-tertiary, #252525)
  );
  color: var(--ds-override-footer-text, var(--ds-text-default, #ffffff));
  padding: 36px 80px;
  margin-top: auto;
}
@media screen and (max-width: 63.99em) {
  .templateFooter {
    padding: 16px 24px 72px;
  }
}
.templateFooter .locations {
  display: flex;
  flex-wrap: wrap;
}
.templateFooter .locations .locationAddress a {
  text-decoration: underline;
  color: inherit;
}
.templateFooter .poweredBy {
  display: flex;
  align-items: center;
}
.templateFooter .poweredBy > a {
  margin-top: -1px;
  margin-left: 7px;
  display: flex;
}
.templateFooter .legal-container {
  display: flex;
  flex-direction: row;
  margin-top: 40px;
  gap: 10px;
}
.templateFooter .legal-container .legal {
  display: contents;
}
@media screen and (max-width: 35.49em) {
  .templateFooter .legal-container .legal {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
  }
}
.templateFooter .legal-container .legal a {
  text-decoration: underline;
  color: inherit;
}
.templateFooter .legal-container .legal li {
  list-style-type: none;
  color: inherit;
  display: contents;
}
.templateFooter .legal-container .legal li.ethyca-cookie-link {
  display: none;
}
.templateFooter .legal-container .legal button#ot-sdk-btn.ot-sdk-show-settings {
  background: none;
  border: none;
  color: inherit;
  font-size: 1em;
  padding: 0;
  text-decoration: underline;
  word-wrap: normal;
}
.templateFooter .socialIcons {
  display: flex;
  align-items: center;
  margin-top: 8px;
}
.templateFooter .socialIcons > a:not(:first-child) {
  padding-left: 5px;
}
.templateFooter .socialIcons > a:not(:last-child) {
  padding-right: 5px;
}
.templateFooter .socialIcons > a > img {
  height: 20px;
  width: 20px;
  -o-object-fit: contain;
  object-fit: contain;
}
.fides-overlay-modal-link-shown
  .templateFooter
  .legal-container
  .legal
  li.ethyca-cookie-link {
  display: contents;
}
.allHoursModal {
  font-size: 16px;
  color: #000;
  background: #fff;
  border-radius: 24px;
}
.allHoursModal .closeButton {
  width: auto !important;
}
.allHoursModal button {
  border: none;
  background: none;
  padding: none;
  margin: none;
}
.allHoursModal .rxName {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.6rem;
}
.allHoursModal .openStatus {
  margin: 24px 24px 0 24px;
}
.allHoursModal .schedule {
  padding: 24px;
}
.allHoursModal .schedule .hoursAndTooltip {
  display: flex;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.allHoursModal .schedule .hoursAndTooltip .tooltipContent {
  padding: 8px 16px;
  border-radius: 4px;
  background: #252525;
  color: #fff;
}
.allHoursModal .schedule .hoursAndTooltip .tooltipArrow > * {
  background: #252525;
}
.allHoursModal .schedule .hoursWrapper {
  float: left;
  vertical-align: middle;
}
.allHoursModal .schedule .overrideTooltip {
  vertical-align: middle;
  margin-left: 8px;
  cursor: pointer;
}
@media screen and (max-width: 47.99em) {
  .allHoursModal .schedule .overrideTooltip {
    width: 1.5rem;
    margin-left: 4px;
  }
}
.allHoursModal .schedule .infoIcon {
  margin-left: 10px;
}
.allHoursModal .schedule > div {
  display: grid;
  padding: 8px 0;
  grid-template-columns: 1fr 1fr;
  align-items: baseline;
}
.allHoursModal .schedule .heading > span {
  font-weight: 500;
}
.allHoursModal .schedule .bold {
  font-weight: 700;
}
.allHoursModal .scheduleDetail {
  color: #fff;
  font-size: 1rem;
}
.locationDescription {
  margin: 8px 8px 0 0;
  flex: 0 1 475px;
}
.locationDescription button {
  border: none;
  background: none;
  padding: none;
  margin: none;
}
.locationDescription .locationName a,
.locationDescription .locationMenu a {
  color: inherit;
  text-decoration: underline;
}
.locationDescription .locationName a.disabled,
.locationDescription .locationMenu a.disabled {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}
.locationDescription .locationName {
  font-weight: bold;
  margin-top: 24px;
}
.locationDescription .foodLinks {
  display: flex;
  gap: 16px;
}
.locationDescription .locationMenu {
  font-weight: bold;
  padding-top: 10px;
}
.locationDescription .locationAddress,
.locationDescription .locationMenu {
  line-height: 1.5rem;
}
.locationDescription .hoursToggle {
  color: inherit;
  cursor: pointer;
  font-size: 1rem;
  text-decoration: underline;
  padding: 0;
}
.locationDescription .locationSchedule {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.locationDescription .status {
  display: block;
  margin-right: 0;
}
@media screen and (max-width: 47.99em) {
  .locationDescription .status {
    display: inline-block;
    margin-right: 0.5rem;
  }
}
.locationDescription .backupServiceHours {
  margin-top: 8px;
}
.locationDescription .backupServiceHours .day {
  font-weight: bold;
  margin-right: 5px;
}
.locationDescription .backupServiceHours .times {
  padding-right: 16px;
}
.locationsToggle {
  color: inherit;
}
.locationsToggle::after {
  content: "â–¾";
  padding: 5px;
}
.locationsToggle.collapsed::after {
  transform: rotate(180deg);
}
.locationsToggle:hover {
  text-decoration: none;
}
.circle {
  height: 13px;
  width: 13px;
  border-radius: 50%;
  background-color: #d40023;
  display: inline-block;
  margin-right: 8px;
}
.circle.open {
  background-color: #71ab24;
}
.stickyFooter,
.customStickyFooter {
  bottom: 0;
  padding: 15px 30px;
  width: 100%;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.25));
  z-index: 1;
  display: none;
}
.stickyFooter button,
.customStickyFooter button {
  width: 100%;
}
@media screen and (max-width: 47.99em) {
  .stickyFooter,
  .customStickyFooter {
    display: block;
  }
}
.stickyFooter {
  position: fixed;
  background-color: var(--ds-surface-default, var(--tsw-background-color));
}
.customStickyFooter {
  position: -webkit-sticky;
  position: sticky;
  z-index: 100;
}
.defaultTemplate:has(> .globalNav.stickyNav) .fullScreenSection,
.defaultTemplate:has(> .globalNav.fixedNav) .fullScreenSection {
  min-height: 95vh;
  width: 100%;
}
.fullScreenSection {
  display: flex;
  flex-flow: row nowrap;
  height: auto;
  min-height: 100vh;
  width: 100%;
}
.fullScreenSection.wide .text-box-area {
  padding: 2rem 0;
}
.fullScreenSection .text-box-area {
  box-sizing: border-box;
  width: 100%;
  flex: none;
  margin-left: -100%;
  z-index: 1;
  padding: 2rem 2rem;
}
.fullScreenSection .text-box-area.top {
  align-content: flex-start;
}
.fullScreenSection .text-box-area.middle {
  align-content: center;
}
.fullScreenSection .text-box-area.bottom {
  align-content: flex-end;
}
.fullScreenSection .text-box-area .text-box-row {
  display: flex;
}
.fullScreenSection .text-box-area .text-box-row.left {
  justify-content: flex-start;
}
.fullScreenSection .text-box-area .text-box-row.center {
  justify-content: center;
}
.fullScreenSection .text-box-area .text-box-row.right {
  justify-content: flex-end;
}
.fullScreenSection .text-box-area .text-box-row .text-box {
  padding: 1.5rem;
  color: var(--ds-text-default, var(--tsw-primary-contrasting-color));
  flex-direction: column;
  gap: 0.5rem;
  max-width: 60%;
  overflow-y: auto;
}
@media screen and (max-width: 63.99em) {
  .fullScreenSection .text-box-area .text-box-row .text-box {
    max-width: 90%;
  }
}
.fullScreenSection .text-box-area .text-box-row .text-box.wide {
  width: 100%;
  max-width: 100%;
}
.fullScreenSection .text-box-area .text-box-row .text-box.outlined {
  border: solid 2px var(--ds-border-default, var(--tsw-primary-color));
  background-color: none;
}
.fullScreenSection .text-box-area .text-box-row .text-box.halfLeaf {
  padding: 2rem;
}
.coverImage {
  max-height: 100vh;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  min-width: 100%;
  width: 100%;
}
.image-fill {
  width: 100%;
  max-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: auto;
}
.gallery {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 47.99em) {
  .gallery.desktopGallery {
    display: none;
  }
  .gallery.paddedSection {
    padding-right: 0;
  }
}
.gallery .galleryWrapper .galleryImage {
  height: 200px;
}
@media screen and (min-width: 48em) {
  .gallery.mobileGallery {
    display: none;
  }
  .gallery .galleryWrapper {
    display: flex;
    gap: 24px;
  }
  .gallery .galleryWrapper .imageRows,
  .gallery .galleryWrapper .imageRows .imageRow {
    display: flex;
    gap: 24px;
  }
  .gallery .galleryWrapper .firstImage,
  .gallery .galleryWrapper .imageRows {
    flex: 1 0 50%;
  }
  .gallery .galleryWrapper .firstImage .galleryImage {
    height: 424px;
  }
  .gallery .galleryWrapper .galleryImage {
    width: 100%;
  }
  .gallery .galleryWrapper .imageRows {
    flex-direction: column;
  }
}
.hero.templateHero {
  display: flex;
  justify-content: center;
  width: 100%;
}
.hero.templateHero .heroWrapper {
  width: 100%;
}
.hero .image,
.hero .video {
  width: 100%;
  height: 328px;
  min-height: 48px;
}
@media screen and (max-width: 63.99em) {
  .hero .image,
  .hero .video {
    height: 268px;
  }
}
@media screen and (max-width: 47.99em) {
  .hero .image,
  .hero .video {
    height: 200px;
  }
}
.hero .image.large,
.hero .video.large {
  height: 500px;
}
@media screen and (max-width: 63.99em) {
  .hero .image.large,
  .hero .video.large {
    height: 368px;
  }
}
@media screen and (max-width: 47.99em) {
  .hero .image.large,
  .hero .video.large {
    height: 250px;
  }
}
.hero .video {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  max-height: 80vh;
}
.hero .heroWrapper {
  position: relative;
  line-height: 0;
}
.hero .heroWrapper.rounded,
.hero .heroWrapper.outlined {
  margin-top: 30px !important;
}
.hero .positionedCard:not(.top):not(.bottom).rounded {
  margin-top: 40px !important;
}
.hero.templateHero .heroWrapper .image,
.hero .heroBoxWrapper {
  height: 530px;
}
.hero.templateHero .heroWrapper .image.standalone {
  position: absolute;
}
@media screen and (min-width: 48em) {
  .hero .heroBoxWrapper:not(.wide) {
    display: flex;
    justify-content: center;
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media screen and (min-width: 48em) and (max-width: 63.99em) {
  .hero .heroBoxWrapper:not(.wide) {
    padding-left: 50px;
  }
}
@media screen and (min-width: 48em) and (max-width: 47.99em) {
  .hero .heroBoxWrapper:not(.wide) {
    padding-left: 30px;
  }
}
@media screen and (min-width: 48em) and (max-width: 63.99em) {
  .hero .heroBoxWrapper:not(.wide) {
    padding-right: 50px;
  }
}
@media screen and (min-width: 48em) and (max-width: 47.99em) {
  .hero .heroBoxWrapper:not(.wide) {
    padding-right: 30px;
  }
}
@media screen and (min-width: 48em) {
  .hero .heroBoxWrapper:not(.wide) > * {
    max-width: 1224px;
    width: 100%;
    align-self: center;
  }
}
.hero .imageScroller.halfLeaf .arrows {
  right: 1em;
}
@media screen and (max-width: 47.99em) {
  .hero .imageScroller {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
}
.hero .heroBoxWrapper.overImageScroller {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
@media screen and (max-width: 47.99em) {
  .hero .heroBoxWrapper.overImageScroller {
    position: inherit;
    top: inherit;
    bottom: inherit;
    left: inherit;
    right: inherit;
  }
}
.hero .heroBox {
  display: flex;
  align-items: flex-end;
  padding-top: 64px;
  padding-bottom: 32px;
  position: absolute;
  bottom: 80px;
}
.hero .heroBox.textWithBackground {
  background: var(--ds-surface-tertiary, rgba(0, 0, 0, 0.45));
  color: var(--ds-text-default, white);
}
@media screen and (max-width: 47.99em) {
  .hero .heroBox {
    display: flex;
    justify-content: center;
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media screen and (max-width: 47.99em) and (max-width: 63.99em) {
  .hero .heroBox {
    padding-left: 50px;
  }
}
@media screen and (max-width: 47.99em) and (max-width: 47.99em) {
  .hero .heroBox {
    padding-left: 30px;
  }
}
@media screen and (max-width: 47.99em) and (max-width: 63.99em) {
  .hero .heroBox {
    padding-right: 50px;
  }
}
@media screen and (max-width: 47.99em) and (max-width: 47.99em) {
  .hero .heroBox {
    padding-right: 30px;
  }
}
@media screen and (max-width: 47.99em) {
  .hero .heroBox > * {
    max-width: 1224px;
    width: 100%;
    align-self: center;
  }
}
.hero .heroBox.wide {
  background: var(--ds-surface-overlay, rgba(0, 0, 0, 0.45));
  color: var(--ds-text-on-overlay, white);
}
@media screen and (min-width: 48em) {
  .hero .heroBox:not(.wide) {
    padding: 32px;
    max-width: 600px;
  }
  .hero .heroBox.wide {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .hero .heroBox.wide .heroTextWrapper {
    align-self: center;
  }
}
.hero .heroBox .heroTextWrapper {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.hero .heroBox .heroTextWrapper .heroText {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hero .heroBox .heroTextWrapper .heroText .heroHeader {
  font-size: 24px;
  line-height: 28px;
}
@media screen and (max-width: 47.99em) {
  .hero .heroBox .heroTextWrapper .heroText .heroHeader {
    font-size: 22px;
    line-height: 25px;
  }
}
.hero .heroBox .heroTextWrapper .heroText .heroBody {
  font-size: 18px;
  line-height: 21px;
}
@media screen and (max-width: 47.99em) {
  .hero .heroBox .heroTextWrapper .heroText .heroBody {
    font-size: 16px;
    line-height: 18px;
  }
}
.hero .heroBox.outlined {
  background: var(--ds-surface-tertiary, rgba(255, 255, 255, 0.9));
  color: var(--ds-text-default, #474747);
  padding: 16px;
}
.hero .heroBox.outlined .heroTextWrapper {
  width: 100%;
  padding: 24px;
  border: 2px solid var(--ds-border-default, #474747);
}
@media screen and (max-width: 47.99em) {
  .hero:not(.rounded):not(.outlined) {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
.hero.emptySection {
  min-height: 100px;
}
.imageWithTags .tagSection {
  display: flex;
  justify-content: center;
  gap: 4px;
  width: 100%;
  text-align: center;
  padding: 18px 0;
  color: var(--ds-text-on-bg-primary, white);
  background-color: var(--ds-surface-inverse, #242424);
}
.imageWithTags .tagSection p,
.imageWithTags .tagSection h1,
.imageWithTags .tagSection h2,
.imageWithTags .tagSection h3,
.imageWithTags .tagSection h4 {
  display: inline;
}
.imageWithTags .image {
  width: 100%;
  height: 400px;
}
.imageWithTags .image.halfWidth {
  width: 50%;
}
@media screen and (max-width: 47.99em) {
  .imageWithTags .image {
    height: 200px;
  }
}
.toastLogo {
  text-align: center;
}
.toastLogo svg {
  fill: var(--tsw-primary-text-color);
}
.sectionWrapper.bottomPadding.PADDING-SETTING--NONE {
  padding-top: 0;
  padding-bottom: 0;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--NONE {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--NONE {
    padding-top: 0;
    padding-bottom: 0;
  }
}
.sectionWrapper.bottomPadding.PADDING-SETTING--SMALL {
  padding-top: 30px;
  padding-bottom: 30px;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--SMALL {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--SMALL {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.sectionWrapper.bottomPadding.PADDING-SETTING--MEDIUM {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--MEDIUM {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--MEDIUM {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.sectionWrapper.bottomPadding.PADDING-SETTING--LARGE {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--LARGE {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.bottomPadding.PADDING-SETTING--LARGE {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
.sectionWrapper.topPadding.PADDING-SETTING--NONE {
  padding-top: 0;
  padding-bottom: 0;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--NONE {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--NONE {
    padding-top: 0;
    padding-bottom: 0;
  }
}
.sectionWrapper.topPadding.PADDING-SETTING--SMALL {
  padding-top: 30px;
  padding-bottom: 30px;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--SMALL {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--SMALL {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.sectionWrapper.topPadding.PADDING-SETTING--MEDIUM {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--MEDIUM {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--MEDIUM {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.sectionWrapper.topPadding.PADDING-SETTING--LARGE {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 63.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--LARGE {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionWrapper.topPadding.PADDING-SETTING--LARGE {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
.sectionWrapper:first-of-type.topPadding {
  padding-top: 0;
}
.styledImageOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (prefers-reduced-motion: no-preference) {
  .sectionWrapper.transparent {
    opacity: 0;
  }
  .sectionWrapper.animated {
    animation-duration: 1000ms;
    animation-timing-function: ease-out;
    animation-iteration-count: 1;
    animation-name: section-enter-from-bottom;
  }
  .sectionWrapper.animated:first-child {
    animation-name: section-enter-from-bottom-slight;
  }
  .sectionWrapper.preview.animated,
  .sectionWrapper.preview.animated:first-child {
    animation-duration: 3000ms;
    animation-iteration-count: infinite !important;
    animation-timing-function: ease-in-out;
  }
}
@keyframes section-enter-from-bottom {
  0% {
    opacity: 0;
    transform: translateY(90px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}
@keyframes section-enter-from-bottom-preview {
  0% {
    transform: translateY(90px);
  }
  100% {
    transform: translateX(0px);
  }
}
@keyframes section-enter-from-bottom-slight {
  0% {
    opacity: 0.7;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}
.panelOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  animation: fadeIn 0.3s ease;
}
.panelOverlay .leftPanel {
  position: absolute;
  top: 0;
  left: 0;
  width: 400px;
  height: 100%;
  background: #fff;
  color: #000;
  box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
  animation: slideInLeft 0.3s ease;
  display: flex;
  flex-direction: column;
  transition: width 0.3s ease;
}
.panelOverlay .leftPanel.expanded {
  width: 800px;
}
.panelOverlay .leftPanel.fullExpanded {
  width: 1200px;
}
.panelOverlay .leftPanel.mobile {
  width: 100vw;
  max-width: 100%;
}
.panelOverlay .leftPanel.mobile .panelHeader {
  height: 60px;
}
.panelOverlay .leftPanel.mobile .panelHeader .closeButton {
  background: transparent;
  padding: 2px 0 0 10px;
  height: 36px;
  width: 36px;
}
.panelOverlay .leftPanel.mobile .panelHeader .closeButton:hover {
  background: rgba(0, 0, 0, 0.1);
}
.panelOverlay .leftPanel.mobile .panelHeader .headerLeft {
  display: flex;
  align-items: center;
  gap: 12px;
}
.panelOverlay .leftPanel.mobile .panelHeader .headerLeft .navBackButton {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  color: #666;
}
.panelOverlay .leftPanel.mobile .panelHeader .headerLeft .navBackButton:hover {
  background: rgba(0, 0, 0, 0.1);
}
.panelOverlay .leftPanel.mobile .panelHeader .headerLeft h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}
.panelOverlay .leftPanel.mobile .panelContent .scrollContent {
  flex: 1;
  overflow-y: auto;
}
.panelOverlay .leftPanel.mobile .panelContent .mobileNavItems {
  display: flex;
  flex-direction: column;
  padding: 10px 0;
}
.panelOverlay .leftPanel.mobile .panelContent .mobileNavItems .viewAllButton {
  width: 100%;
  background: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1rem;
  color: inherit;
  padding: 12px 20px;
  border-bottom: 1px solid #f1f3f4;
  margin-bottom: 8px;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .mobileNavItems
  .viewAllButton:hover {
  background: #f8f9fa;
}
.panelOverlay .leftPanel.mobile .panelContent .mobileNavItems .categoryHeader {
  height: 56px;
  padding: 16px 20px 8px 20px;
  font-size: 1rem;
  font-weight: 700;
  color: #333;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-bottom: 1px solid #f1f3f4;
}
.panelOverlay .leftPanel.mobile .panelContent .mobileNavItems .mobileNavItem {
  font-size: 16px;
  width: 100%;
  height: 56px;
  background: transparent;
  border: none;
  padding: 12px 20px;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .mobileNavItems
  .mobileNavItem:hover {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .mobileNavItems
  .mobileNavItem
  .itemName {
  font-size: 1rem;
  font-weight: 400;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .mobileNavItems
  .mobileNavItem
  .rightArrow {
  color: #999;
  margin-left: 8px;
}
.panelOverlay .leftPanel.mobile .panelContent .mobileNavItems .noItems {
  padding: 20px;
  text-align: center;
  color: #666;
  font-style: italic;
  margin: 0;
}
.panelOverlay .leftPanel.mobile .panelContent .animationContainer {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .animationContainer
  .contentSlide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .animationContainer
  .contentSlide.slideInRight {
  animation: slideInFromRight 0.3s ease-out forwards;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .animationContainer
  .contentSlide.slideOutLeft {
  animation: slideOutToLeft 0.3s ease-out forwards;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .animationContainer
  .contentSlide.slideInLeft {
  animation: slideInFromLeft 0.3s ease-out forwards;
}
.panelOverlay
  .leftPanel.mobile
  .panelContent
  .animationContainer
  .contentSlide.slideOutRight {
  animation: slideOutToRight 0.3s ease-out forwards;
}
.panelOverlay .leftPanel .panelHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 72px;
  padding: 16px 12px 16px 20px;
  border-bottom: 1px solid #e9ecef;
}
.panelOverlay .leftPanel .panelHeader h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}
.panelOverlay .leftPanel .panelHeader .closeButton {
  background: transparent;
  padding: 3px 0 0 0;
  height: 36px;
  width: 36px;
}
.panelOverlay .leftPanel .panelHeader .closeButton:hover {
  background: rgba(0, 0, 0, 0.1);
}
.panelOverlay .leftPanel .panelContent {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.panelOverlay .leftPanel .panelContent .menuLayout {
  display: flex;
  height: 100%;
  position: relative;
}
.panelOverlay .leftPanel .panelContent .menuLayout .groupsList {
  width: 400px;
  flex-shrink: 0;
  border-right: 1px solid #e9ecef;
  display: flex;
  flex-direction: column;
}
.panelOverlay .leftPanel .panelContent .menuLayout .groupsList .groupsItems {
  flex: 1;
  overflow-y: auto;
  padding: 10px 0;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .groupsList
  .groupsItems
  .groupItem {
  height: 56px;
  width: 100%;
  background: transparent;
  border: none;
  padding: 12px 20px;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .groupsList
  .groupsItems
  .groupItem:hover {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .groupsList
  .groupsItems
  .groupItem.selected {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .groupsList
  .groupsItems
  .groupItem
  .groupName {
  font-size: 1rem;
  font-weight: 400;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .groupsList
  .groupsItems
  .groupItem
  .groupCount {
  font-size: 1rem;
  color: #666;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .groupsList
  .groupsItems
  .groupItem
  .rightArrow {
  font-size: 14px;
  color: #999;
  margin-left: 8px;
}
.panelOverlay .leftPanel .panelContent .menuLayout .childrenList {
  width: 400px;
  flex-shrink: 0;
  border-right: 1px solid #e9ecef;
  display: flex;
  flex-direction: column;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenListHeader {
  height: 56px;
  padding: 20px 20px 10px 16px;
  border-bottom: 1px solid #f1f3f4;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenListHeader
  h4 {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenListHeader
  .viewAllButton {
  width: 100%;
  background: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1rem;
  color: inherit;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenListHeader:hover {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems {
  flex: 1;
  overflow-y: auto;
  padding: 10px 0;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .categoryHeader {
  margin-top: 24px;
  padding: 12px 20px 12px 20px;
  font-size: 1rem;
  font-weight: 700;
  color: #333;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .childItem {
  height: 56px;
  width: 100%;
  background: transparent;
  border: none;
  padding: 12px 20px;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .childItem:hover {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .childItem.selected {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .childItem
  .childName {
  font-size: 1rem;
  font-weight: 400;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .childItem
  .childCount {
  font-size: 1rem;
  color: #666;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .childItem
  .rightArrow {
  font-size: 14px;
  color: #999;
  margin-left: 8px;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .childrenList
  .childrenItems
  .noChildren {
  padding: 20px;
  text-align: center;
  color: #666;
  font-style: italic;
  margin: 0;
}
.panelOverlay .leftPanel .panelContent .menuLayout .grandchildrenList {
  position: absolute;
  top: 0;
  left: 800px;
  width: 400px;
  height: 100%;
  background: #fff;
  display: flex;
  flex-direction: column;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenListHeader {
  height: 56px;
  padding: 20px 20px 10px 16px;
  border-bottom: 1px solid #f1f3f4;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenListHeader
  h4 {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenListHeader
  .viewAllButton {
  width: 100%;
  background: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1rem;
  color: inherit;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenListHeader:hover {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenItems {
  flex: 1;
  overflow-y: auto;
  padding: 10px 0;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenItems
  .categoryHeader {
  height: 56px;
  padding: 16px 20px 8px 20px;
  font-size: 1rem;
  font-weight: 700;
  color: #333;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenItems
  .grandchildItem {
  height: 56px;
  width: 100%;
  background: transparent;
  border: none;
  padding: 12px 20px;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenItems
  .grandchildItem:hover {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenItems
  .grandchildItem.selected {
  background: #f8f9fa;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenItems
  .grandchildItem
  .grandchildName {
  font-size: 1rem;
  font-weight: 400;
}
.panelOverlay
  .leftPanel
  .panelContent
  .menuLayout
  .grandchildrenList
  .grandchildrenItems
  .noGrandchildren {
  padding: 20px;
  text-align: center;
  color: #666;
  font-style: italic;
  margin: 0;
}
.panelOverlay .leftPanel .panelContent .mobileLocationSelector {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 16px 20px 16px 20px;
  background: var(--ds-surface-default, var(--tsw-background-color));
  border: none;
  cursor: pointer;
  border-top: 1px solid var(--ds-border-default);
  margin-top: auto;
}
.panelOverlay .leftPanel .panelContent .mobileLocationSelector:hover {
  background-color: var(--tsw-primary-hover-color-25);
}
.panelOverlay .leftPanel .panelContent .mobileLocationSelector .locationInfo {
  display: flex;
  align-items: center;
  gap: 12px;
}
.panelOverlay
  .leftPanel
  .panelContent
  .mobileLocationSelector
  .locationInfo
  .restaurantIcon {
  width: 24px;
  height: 24px;
  color: var(--ds-text-default);
}
.panelOverlay
  .leftPanel
  .panelContent
  .mobileLocationSelector
  .locationInfo
  .locationDetails {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.panelOverlay
  .leftPanel
  .panelContent
  .mobileLocationSelector
  .locationInfo
  .locationDetails
  .locationLabel {
  font-size: 12px;
  color: var(--ds-text-subdued);
}
.panelOverlay
  .leftPanel
  .panelContent
  .mobileLocationSelector
  .locationInfo
  .locationDetails
  .locationName {
  font-size: 14px;
  font-weight: 600;
  color: var(--ds-text-default);
}
.panelOverlay .leftPanel .panelContent .mobileLocationSelector .chevronIcon {
  width: 16px;
  height: 16px;
  color: var(--ds-text-default);
}
@media screen and (max-width: 47.99em) {
  .panelOverlay .leftPanel {
    width: 95%;
    max-width: 350px;
  }
  .panelOverlay .leftPanel .panelContent .menuLayout {
    flex-direction: column;
  }
  .panelOverlay .leftPanel .panelContent .menuLayout .groupsList {
    width: 100%;
    height: 30%;
    border-right: none;
    border-bottom: 1px solid #e9ecef;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .groupsList
    .groupsItems
    .groupItem {
    padding: 10px 15px;
    font-size: 1rem;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .groupsList
    .groupsItems
    .groupItem.selected {
    background: #f8f9fa;
  }
  .panelOverlay .leftPanel .panelContent .menuLayout .childrenList {
    width: 100%;
    height: 35%;
    border-right: none;
    border-bottom: 1px solid #e9ecef;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .childrenList
    .childrenItems
    .categoryHeader {
    padding: 10px 15px 8px 15px;
    font-size: 1rem;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .childrenList
    .childrenItems
    .childItem {
    padding: 10px 15px;
    font-size: 1rem;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .childrenList
    .childrenItems
    .childItem.selected {
    background: #f8f9fa;
  }
  .panelOverlay .leftPanel .panelContent .menuLayout .grandchildrenList {
    position: relative;
    left: 0;
    width: 100%;
    height: 35%;
    border-left: none;
    border-top: 1px solid #e9ecef;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .grandchildrenList
    .grandchildrenItems
    .categoryHeader {
    padding: 10px 15px 8px 15px;
    font-size: 1rem;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .grandchildrenList
    .grandchildrenItems
    .grandchildItem {
    padding: 10px 15px;
    font-size: 1rem;
  }
  .panelOverlay
    .leftPanel
    .panelContent
    .menuLayout
    .grandchildrenList
    .grandchildrenItems
    .grandchildItem.selected {
    border-right: none;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes slideInLeft {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideInRight {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideInFromRight {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slideOutToLeft {
  from {
    transform: translateX(0);
    opacity: 1;
  }
  to {
    transform: translateX(-100%);
    opacity: 0;
  }
}
@keyframes slideInFromLeft {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slideOutToRight {
  from {
    transform: translateX(0);
    opacity: 1;
  }
  to {
    transform: translateX(100%);
    opacity: 0;
  }
}
.location-selector {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border: none;
  background: none;
  cursor: pointer;
  font-family: inherit;
}
.location-selector:hover {
  opacity: 0.8;
}
.location-selector .rxIcon {
  width: 20px;
  height: 20px;
}
.location-selector .location-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}
.location-selector .location-info .location-name {
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
}
.location-selector .location-info .location-address {
  font-size: 12px;
  color: var(--text-secondary);
}
.menuBanner {
  z-index: 7;
  border-bottom: 1px solid var(--ds-border-default);
}
.menuBanner .bannerContent {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  height: 64px;
}
.menuBanner .bannerContent .menuGroupButtons {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 8px;
  column-gap: 8px;
  height: 100%;
  transition: width 0.3s ease, opacity 0.3s ease, column-gap 0.3s ease;
  transition: width 0.3s ease, opacity 0.3s ease, column-gap 0.3s ease,
    -moz-column-gap 0.3s ease;
  overflow: hidden;
  margin-left: 64px;
}
.menuBanner .bannerContent .menuGroupButtons.hidden {
  width: 0;
  opacity: 0;
  -moz-column-gap: 0;
  column-gap: 0;
}
.menuBanner .bannerContent .menuGroupButtons .groupButton {
  height: 100%;
  border: none;
  padding: 8px 16px;
  font-size: 0.875rem;
  cursor: pointer;
  transition: all 0.2s ease;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  background: transparent;
  display: flex;
  align-items: center;
  gap: 4px;
}
.menuBanner .bannerContent .menuGroupButtons .groupButton:hover {
  color: var(--ds-text-default);
  background: var(--tsw-primary-hover-color-25);
  border-color: var(--ds-border-default);
  transform: translateY(-1px);
}
.menuBanner .bannerContent .menuGroupButtons .groupButton:active {
  transform: translateY(0);
}
.menuBanner .searchContainer {
  display: flex;
  gap: 12px;
  margin: 10px 40px 10px 32px;
  transition: all 0.3s ease;
  height: 100%;
  align-items: center;
  width: 468px;
}
.menuBanner .searchContainer.withoutPicker {
  margin: 10px 86px 10px 80px;
  width: 300px;
}
.menuBanner .searchContainer.expanded {
  margin-right: 52px;
  margin-left: -64px;
  width: calc(100% - 160px);
}
.menuBanner .searchContainer.expanded.withoutPicker {
  margin-right: 80px;
}
.menuBanner .locationSelector {
  display: flex;
  align-items: center;
  height: 64px;
  padding: 0 24px;
  border: none;
  background: none;
  cursor: pointer;
  gap: 8px;
  margin-right: 8px;
}
.menuBanner .locationSelector .rightChevron {
  margin-top: 5px;
}
.menuBanner .locationSelector .locationSelectorButton {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 8px 16px 16px;
  border: none;
  background: none;
  cursor: pointer;
  height: 100%;
}
.menuBanner .locationSelector .locationSelectorButton:hover {
  background-color: var(--tsw-primary-hover-color-25);
}
.menuBanner .locationSelector::before {
  content: "";
  width: 1px;
  height: 24px;
  background-color: var(--ds-border-default);
}
.menuBanner .locationSelector .rxIcon {
  width: 20px;
  height: 20px;
  color: var(--ds-text-default);
}
.menuBanner .locationSelector .chevron {
  width: 16px;
  height: 16px;
  color: var(--ds-text-default);
}
.menuBanner .locationSelector .location-name {
  color: var(--ds-text-default);
  max-width: 192px;
  font-size: 14px;
  font-weight: 600;
}
@media screen and (max-width: 47.99em) {
  .menuBanner .bannerContent {
    gap: 8px;
  }
  .menuBanner .bannerContent h3 {
    font-size: 1.125rem;
    margin-bottom: 12px;
  }
  .menuBanner .bannerContent .menuGroupButtons {
    margin-left: 30px;
  }
  .menuBanner .bannerContent .menuGroupButtons .groupButton {
    padding: 6px 12px 6px 0px;
    flex-shrink: 0;
  }
  .menuBanner .bannerContent .searchContainer {
    width: 85%;
    height: 100%;
    margin: 0px 8px 0px 0px;
  }
  .menuBanner .bannerContent .searchContainer.expanded {
    margin-right: 16px;
    width: 100%;
  }
  .menuBanner .bannerContent .searchContainer .searchInputWrapper {
    margin-right: 0;
    font-size: 0.9rem;
    padding: 8px 16px;
  }
  .menuBanner .bannerContent .searchContainer .clearButton {
    font-size: 0.9rem;
    padding: 8px 12px;
  }
}
@media screen and (max-width: 35.49em) {
  .menuBanner .bannerContent .menuGroupButtons {
    margin-left: 20px;
    gap: 8px;
    flex-shrink: 0;
  }
  .menuBanner .bannerContent .menuGroupButtons .groupButton {
    padding: 8px;
  }
  .menuBanner .bannerContent .searchContainer {
    margin-top: 0px;
    flex: 1;
  }
}
.search-backdrop-overlay {
  position: fixed;
  top: calc(var(--global-nav-height, 0px) + 64px);
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 7;
  margin-right: var(--scrollbar-width, 0px);
}
.search-results-container {
  position: absolute;
  left: 0;
  right: 0;
  background: var(--ds-surface-default, var(--tsw-background-color));
  border-radius: 0 0 16px 16px;
  z-index: 8;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
}
.search-results-container.expanded {
  max-height: 70vh;
}
.menuBanner.search-expanded {
  position: fixed;
  top: var(--global-nav-height, 0px);
  left: 0;
  right: 0;
}
.globalNav:has(+ .menuBanner) {
  border-bottom: 1px solid var(--ds-border-default);
}
.searchContainer .ooSearch,
.mobile-search-header .ooSearch {
  background: #f5f5f5;
  flex: 1;
  width: 300px;
}
@media screen and (max-width: 47.99em) {
  .searchContainer .ooSearch,
  .mobile-search-header .ooSearch {
    margin: 0px;
    width: unset;
  }
}
.searchContainer .ooSearch .searchBox,
.mobile-search-header .ooSearch .searchBox {
  background: transparent;
}
.searchContainer .search-cancel,
.mobile-search-header .search-cancel {
  border: none;
  background: transparent;
  font-size: 14px;
  font-weight: 500;
  line-height: 22px;
  letter-spacing: 0.07px;
  cursor: pointer;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
  transition: all 0.3s ease;
}
.searchContainer .search-cancel:hover,
.mobile-search-header .search-cancel:hover {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.mobile-search-modal {
  width: 100%;
}
.mobile-search-modal .modalWrapper {
  padding: 0;
}
.mobile-search-modal .modalContent {
  border-radius: 0px;
}
.mobile-search-content {
  height: 100%;
  width: 100%;
}
.mobile-search-header {
  display: flex;
  align-items: center;
  padding: 16px;
  border-bottom: 1px solid var(--ds-border-default, var(--tsw-primary-color));
  gap: 16px;
}
.search-results-section {
  padding-top: 16px;
  height: 50vh;
  overflow-y: auto;
  scrollbar-gutter: stable both-edges;
}
@media screen and (max-width: 47.99em) {
  .search-results-section {
    height: 100vh;
  }
}
.search-results-section .search-results-header {
  font-size: 20px;
}
.search-results-section .search-results-header .loadingSkeleton {
  --base-color: var(--ds-surface-secondary, white);
  --highlight-color: var(--ds-surface-secondary, white);
  box-shadow: 0 0 6px var(--ds-surface-shadow, rgba(0, 0, 0, 0.1));
  border-radius: 24px;
  height: 24px;
}
.search-results-section.placeholder {
  display: flex;
  padding-top: 0px;
}
.search-results-section .search-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1;
}
.search-results-section .search-placeholder p {
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
}
.search-results-section .search-icon {
  color: var(--ds-icon-secondary, var(--tsw-secondary-text-color));
}
.search-results-section .search-icon svg {
  width: 48px;
  height: 48px;
}
.menuHeader .heroBanner {
  width: 100%;
  display: flex;
  height: 250px;
}
@media screen and (max-width: 35.49em) {
  .menuHeader .heroBanner {
    height: 150px;
  }
}
.menuHeader .heroBanner .heroImage {
  height: 100%;
  width: 100%;
}
.menuHeader .heroBanner .heroImage.centerHero {
  padding-top: 24px;
}
@media screen and (max-width: 35.49em) {
  .menuHeader .heroBanner .heroImage.centerHero {
    padding-top: 12px;
  }
}
.menuHeader .heroBanner .heroImage.centerHero img.roundedCornerNone {
  border-radius: 4px;
}
.menuHeader .heroBanner .heroImage.centerHero img.roundedCornerSubtle {
  border-radius: 8px;
}
.menuHeader .heroBanner .heroImage.centerHero img.roundedCornerExaggerated {
  border-radius: 16px;
}
.menuHeader .heroBanner .heroImage img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.menuHeader .heroBanner.withoutImage {
  flex-direction: column;
  justify-content: flex-end;
  height: unset;
}
.menuHeader .contentWrapper {
  display: flex;
  padding-top: 40px;
}
@media screen and (max-width: 47.99em) {
  .menuHeader .contentWrapper {
    padding-top: 16px;
  }
}
.menuHeader .contentWrapper .content {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
@media screen and (max-width: 35.49em) {
  .menuHeader .contentWrapper .content {
    flex-direction: column;
    gap: 16px;
  }
}
.menuHeader .contentWrapper .content .headerContent {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
@media screen and (min-width: 35.5em) {
  .menuHeader .contentWrapper .content .headerContent {
    max-width: 60%;
  }
}
@media screen and (max-width: 35.49em) {
  .menuHeader .contentWrapper .content .headerContent {
    width: 100%;
  }
}
.menuHeader .contentWrapper .content .headerContent .heading {
  font-size: 32px;
  font-weight: 600;
  line-height: normal;
}
@media screen and (max-width: 35.49em) {
  .menuHeader .contentWrapper .content .headerContent .heading {
    font-size: 26px;
  }
}
.menuHeader .contentWrapper .content .headerContent .heading.smaller {
  font-size: 26px;
}
.menuHeader .contentWrapper .content .headerContent .diningOptionBehaviorInfo {
  display: flex;
  font-size: 16px;
  font-weight: 400;
  white-space: normal;
  gap: 8px;
  flex-wrap: wrap;
}
@media screen and (min-width: 35.5em) {
  .menuHeader
    .contentWrapper
    .content
    .headerContent
    .diningOptionBehaviorInfo {
    gap: 34px;
  }
}
@media screen and (max-width: 35.49em) {
  .menuHeader
    .contentWrapper
    .content
    .headerContent
    .diningOptionBehaviorInfo {
    justify-content: space-between;
  }
}
.menuHeader
  .contentWrapper
  .content
  .headerContent
  .diningOptionBehaviorInfo
  .changeLocationButton {
  padding: 0;
  font-weight: 400;
  text-decoration: underline;
  cursor: pointer;
}
.menuHeader
  .contentWrapper
  .content
  .headerContent
  .diningOptionBehaviorInfo
  .changeLocationButton.hasHeroImage {
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
}
.menuHeader .contentWrapper .content .headerContent .closingTimeAlert {
  display: flex;
  justify-content: space-between;
  padding: 8px 12px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 4px;
  margin-top: 24px;
  background: rgba(0, 0, 0, 0.06);
  border: none;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  font-size: 14px;
}
.menuHeader .contentWrapper .content .headerContent .closingTimeAlert.darkMode {
  background: rgba(255, 255, 255, 0.06);
}
.menuHeader .contentWrapper .content .headerContent .closingTimeAlert:hover {
  background: rgba(0, 0, 0, 0.12);
}
.menuHeader
  .contentWrapper
  .content
  .headerContent
  .closingTimeAlert:hover.darkMode {
  background: rgba(255, 255, 255, 0.12);
}
.menuHeader .contentWrapper .content .headerContent .closingTimeAlert .content {
  align-items: center;
  gap: 12px;
}
.menuHeader
  .contentWrapper
  .content
  .headerContent
  .closingTimeAlert
  .content
  i {
  display: flex;
  color: var(--ds-icon-secondary, var(--tsw-primary-text-color));
}
.menuHeader
  .contentWrapper
  .content
  .headerContent
  .closingTimeAlert
  .content
  i
  svg {
  height: 16px;
  width: 16px;
}
.menuHeader .contentWrapper .additionalHeaders {
  align-self: center;
  display: flex;
}
.menuHeader .contentWrapper .additionalHeaders .paddedContentWrapper {
  padding: 0;
}
.menuHeader .fulfillmentWarningBanner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  background: var(--ds-surface-focus, var(--tsw-primary-color-50));
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
  padding: 4px 16px;
  border: none;
  width: 100%;
}
.menuHeader .fulfillmentWarningBanner i {
  display: flex;
}
.menuNavContainer {
  position: -webkit-sticky;
  position: sticky;
  z-index: 7;
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  transition: top 0.5s ease-out;
  top: 0;
  border-bottom: 1px solid var(--ds-border-default, #cecece);
  margin-bottom: 16px;
}
@media screen and (max-width: 47.99em) {
  .menuNavContainer {
    margin-bottom: 8px;
  }
}
.menuNavContainer.withoutHero {
  box-shadow: none;
}
.menuNavContainer.withShadow {
  box-shadow: 0px 0px 6px var(--ds-surface-shadow, rgba(0, 0, 0, 0.15));
}
.menuNavContainer .paddedContent {
  padding-top: 24px;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  -moz-column-gap: 24px;
  column-gap: 24px;
  row-gap: 16px;
  background-color: var(--ds-surface-default, var(--tsw-background-color));
}
@media screen and (max-width: 47.99em) {
  .menuNavContainer .paddedContent {
    padding-top: 0;
  }
}
.menuNavContainer .paddedContent .locationSelector .dropDownWrapper {
  margin: 0;
}
@media screen and (max-width: 47.99em) {
  .menuNavContainer .paddedContent {
    flex-direction: column;
    align-items: normal;
  }
}
.menuNav {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 47.99em) {
  .menuNav {
    flex-direction: column;
    align-items: stretch;
  }
}
.menuNav .topMenuNavMenuSelection {
  min-width: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.menuNav .topMenuNavMenuSelection .navControl {
  margin-right: 12px;
}
.menuNav .topMenuNavMenuSelection .navControl .navControlIcon {
  color: var(--ds-icon-action, var(--tsw-primary-color));
}
.menuNav .topMenuNavMenuSelection .navControl .navControlIcon i {
  display: flex;
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper {
  position: relative;
  overflow: auto;
  width: 100%;
  margin-right: 8px;
  padding-right: 20px;
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper .sections {
  margin-right: 1px;
  margin-left: 1px;
  max-width: 100%;
  display: grid;
  grid-template-columns: auto;
  grid-auto-flow: column;
  gap: 20px;
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
@media screen and (max-width: 47.99em) {
  .menuNav .topMenuNavMenuSelection .topMenuNavWrapper .sections {
    gap: 8px;
  }
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper .sections .menuItem {
  scroll-margin-left: 6px;
  scroll-margin-right: 6px;
  padding: 24px 8px;
  white-space: nowrap;
}
@media screen and (max-width: 47.99em) {
  .menuNav .topMenuNavMenuSelection .topMenuNavWrapper .sections .menuItem {
    padding: 16px 4px;
  }
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections
  .menuItem.selected {
  border-bottom: 2px solid
    var(--ds-background-primary, var(--tsw-primary-color));
  font-weight: 700;
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections
  .menuItem
  .menuItemTarget {
  display: flex;
  gap: 8px;
  cursor: pointer;
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections
  .menuItem
  .menuItemTarget
  .menuLink {
  color: var(--ds-text-secondary, var(--tsw-primary-text-color));
  font-size: 16px;
  font-weight: 400;
}
@media screen and (max-width: 47.99em) {
  .menuNav
    .topMenuNavMenuSelection
    .topMenuNavWrapper
    .sections
    .menuItem
    .menuItemTarget
    .menuLink {
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections
  .menuItem
  .menuItemTarget
  .menuLink.selected {
  text-decoration: none;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
  font-weight: 700;
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections
  .menuItem
  .menuItemTarget
  .menuLink:hover {
  text-decoration: none;
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections
  .menuItem
  .menuItemTarget
  .dropdownTriangle {
  display: flex;
  align-items: center;
  transform: rotate(90deg);
}
.menuNav
  .topMenuNavMenuSelection
  .topMenuNavWrapper
  .sections
  .menuItem
  .menuItemTarget
  .dropdownTriangle.selected {
  color: var(--ds-icon-action, var(--tsw-primary-color));
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper .arrow {
  padding: 0 12px;
  position: absolute;
  height: 100%;
  display: flex;
  align-items: center;
  background: none;
  border: none;
  z-index: 2;
  cursor: pointer;
  opacity: 1;
  transition: opacity 0.2s ease-out;
  color: var(--ds-icon-action, var(--tsw-primary-color));
  top: 0;
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper .arrow.arrowHidden {
  display: none;
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper .arrow i {
  display: flex;
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper .leftArrow {
  left: 0;
  padding-left: 0;
  background: linear-gradient(
    90deg,
    var(--ds-surface-default, var(--tsw-background-color)) 75%,
    var(--ds-surface-default, var(--tsw-background-color-med))
  );
}
.menuNav .topMenuNavMenuSelection .topMenuNavWrapper .rightArrow {
  right: 0;
  padding-right: 0;
  background: linear-gradient(
    90deg,
    var(--ds-surface-default, var(--tsw-background-color)) 75%,
    var(--ds-surface-default, var(--tsw-background-color-med))
  );
}
.menuNav .topMenuNavSearch {
  max-width: 230px;
  margin-left: auto;
}
@media screen and (max-width: 47.99em) {
  .menuNav .topMenuNavSearch {
    max-width: none;
    margin-left: initial;
    padding: 8px 0;
  }
}
.dropdown {
  background: #fff;
  border: solid 1px rgba(0, 0, 0, 0.08);
  border-radius: 4px;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.04), 0 4px 5px rgba(0, 0, 0, 0.06),
    0 2px 4px -1px rgba(0, 0, 0, 0.09);
  z-index: 10;
  width: 300px;
  max-height: 496px;
  overflow-y: auto;
}
@media screen and (max-width: 47.99em) {
  .dropdown {
    width: 200px;
    max-height: 304px;
  }
}
.subMenuItem {
  padding: 16px 12px;
  width: 100%;
  background: #fff;
  border: none;
  font-size: 16px;
  text-align: left;
  cursor: pointer;
}
.subMenuItem:focus,
.subMenuItem:hover {
  background: var(--ds-surface-default, var(--tsw-background-color));
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.menuContent {
  display: flex;
  flex-direction: column;
  padding: 24px;
  width: 100%;
  box-shadow: 0 0 6px 1px var(--ds-surface-shadow, rgba(0, 0, 0, 0.15));
  border-radius: 16px 16px 0 0;
  background: var(--ds-surface-default, var(--tsw-background-color));
  position: fixed;
  bottom: 0;
  z-index: 10;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  max-height: 544px;
  overflow: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.menuContent::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.menuContent .header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  padding: 12px 0;
}
.menuContent .header .closeButton {
  padding: 0;
  margin: 0;
}
.menuContent .section {
  display: flex;
  flex-direction: column;
}
.menuContent .item {
  padding: 12px 0;
}
.menuContent .groupName {
  color: var(--ds-background-primary, var(--tsw-primary-color));
  font-weight: 700;
  margin-top: 12px;
}
.menuContent .separator {
  border-bottom: 3px solid
    var(--ds-background-primary, var(--tsw-primary-color));
  border-radius: 3px;
  width: 100%;
}
.menuGroup {
  padding-bottom: 48px;
}
.menu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.menu .headerWrapper h2 {
  font-size: 20px;
}
.pageContent {
  isolation: isolate;
  position: relative;
}
.pageContent .onlineOrderingUnavailable {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: normal;
  padding: 48px;
  font-size: 32px;
}
@media screen and (max-width: 35.49em) {
  .pageContent .onlineOrderingUnavailable {
    padding: 24px;
    font-size: 24px;
  }
}
.intersectionRoot {
  position: fixed;
  top: 50%;
  left: 0;
  right: 0;
  height: 20px;
}
.popularItem {
  border-radius: 24px;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  background-size: 381px;
  height: 175px;
  width: 380px;
}
@media screen and (max-width: 63.99em) {
  .popularItem {
    background-size: 311px;
    height: 176px;
    width: 311px;
  }
}
.popularItem .itemName {
  border-radius: 24px;
  font-size: 24px;
  font-weight: 600;
  line-height: 29px;
  padding: 30px;
  position: relative;
  height: 100%;
  width: 100%;
}
.popularItem.backgroundImage .itemName {
  background-color: rgba(0, 0, 0, 0.45);
  color: #fff;
}
.menuSection.condensed,
.menuSection.extraCondensed,
.menuSection.stacked {
  box-sizing: border-box;
  padding: 16px 0;
  width: 100%;
}
.menuSection.condensed .itemSection .item.condensed,
.menuSection.condensed .itemSection .item.extraCondensed,
.menuSection.extraCondensed .itemSection .item.condensed,
.menuSection.extraCondensed .itemSection .item.extraCondensed,
.menuSection.stacked .itemSection .item.condensed,
.menuSection.stacked .itemSection .item.extraCondensed {
  max-width: calc(100% - 32px);
}
.menuSection.condensed .itemSection .item.stacked,
.menuSection.extraCondensed .itemSection .item.stacked,
.menuSection.stacked .itemSection .item.stacked {
  max-width: 100%;
}
.menuSection.condensed .itemSection .item.condensed,
.menuSection.condensed .itemSection .item.extraCondensed,
.menuSection.condensed .itemSection .item.stacked,
.menuSection.extraCondensed .itemSection .item.condensed,
.menuSection.extraCondensed .itemSection .item.extraCondensed,
.menuSection.extraCondensed .itemSection .item.stacked,
.menuSection.stacked .itemSection .item.condensed,
.menuSection.stacked .itemSection .item.extraCondensed,
.menuSection.stacked .itemSection .item.stacked {
  border-radius: 0;
  box-shadow: none;
  display: flex;
  flex: none;
  flex-direction: column;
  max-height: -webkit-fit-content;
  max-height: -moz-fit-content;
  max-height: fit-content;
  min-height: auto;
  min-width: auto;
  overflow: auto;
  transition: none;
  width: 100%;
}
.menuSection.condensed
  .itemSection
  .item.condensed.clickable:not(.outOfStock):hover,
.menuSection.condensed
  .itemSection
  .item.extraCondensed.clickable:not(.outOfStock):hover,
.menuSection.condensed
  .itemSection
  .item.stacked.clickable:not(.outOfStock):hover,
.menuSection.extraCondensed
  .itemSection
  .item.condensed.clickable:not(.outOfStock):hover,
.menuSection.extraCondensed
  .itemSection
  .item.extraCondensed.clickable:not(.outOfStock):hover,
.menuSection.extraCondensed
  .itemSection
  .item.stacked.clickable:not(.outOfStock):hover,
.menuSection.stacked
  .itemSection
  .item.condensed.clickable:not(.outOfStock):hover,
.menuSection.stacked
  .itemSection
  .item.extraCondensed.clickable:not(.outOfStock):hover,
.menuSection.stacked
  .itemSection
  .item.stacked.clickable:not(.outOfStock):hover {
  box-shadow: none;
}
.menuSection.condensed .itemSection .item.condensed,
.menuSection.condensed .itemSection .item.extraCondensed,
.menuSection.extraCondensed .itemSection .item.condensed,
.menuSection.extraCondensed .itemSection .item.extraCondensed,
.menuSection.stacked .itemSection .item.condensed,
.menuSection.stacked .itemSection .item.extraCondensed {
  width: 100%;
  padding: 16px;
}
.menuSection.condensed .itemSection .item.condensed.clickable,
.menuSection.condensed .itemSection .item.extraCondensed.clickable,
.menuSection.extraCondensed .itemSection .item.condensed.clickable,
.menuSection.extraCondensed .itemSection .item.extraCondensed.clickable,
.menuSection.stacked .itemSection .item.condensed.clickable,
.menuSection.stacked .itemSection .item.extraCondensed.clickable {
  width: calc(100% - 32px);
}
@media screen and (max-width: 47.99em) {
  .menuSection.condensed .itemSection .item.condensed,
  .menuSection.condensed .itemSection .item.extraCondensed,
  .menuSection.extraCondensed .itemSection .item.condensed,
  .menuSection.extraCondensed .itemSection .item.extraCondensed,
  .menuSection.stacked .itemSection .item.condensed,
  .menuSection.stacked .itemSection .item.extraCondensed {
    width: 100%;
  }
  .menuSection.condensed .itemSection .item.condensed.clickable,
  .menuSection.condensed .itemSection .item.extraCondensed.clickable,
  .menuSection.extraCondensed .itemSection .item.condensed.clickable,
  .menuSection.extraCondensed .itemSection .item.extraCondensed.clickable,
  .menuSection.stacked .itemSection .item.condensed.clickable,
  .menuSection.stacked .itemSection .item.extraCondensed.clickable {
    width: calc(100% - 32px);
  }
}
.item.clickable:not(.outOfStock):hover.stacked .itemHeader {
  cursor: pointer;
  text-decoration: underline;
}
.item.clickable:not(.outOfStock):hover.condensed,
.item.clickable:not(.outOfStock):hover.extraCondensed {
  cursor: pointer;
  background-color: var(--tsw-primary-color-25);
}
.menuSection .itemSection {
  flex-direction: row;
}
.menuSection .itemSection .itemInfo.condensed,
.menuSection .itemSection .itemInfo.extraCondensed {
  padding: 0;
}
.menuSection .itemSection .itemInfo.condensed .itemHeadAvailDesc,
.menuSection .itemSection .itemInfo.extraCondensed .itemHeadAvailDesc {
  padding-right: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.menuSection .itemSection .itemInfo.condensed .itemHeader,
.menuSection .itemSection .itemInfo.extraCondensed .itemHeader {
  align-items: center;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.5;
  line-height: normal;
  -webkit-line-clamp: initial;
}
@media screen and (max-width: 47.99em) {
  .menuSection .itemSection .itemInfo.condensed .itemHeader,
  .menuSection .itemSection .itemInfo.extraCondensed .itemHeader {
    font-family: var(--tsw-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.5;
  }
}
.menuSection .itemSection .itemInfo.condensed .price,
.menuSection .itemSection .itemInfo.extraCondensed .price {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
  text-decoration: none;
  white-space: nowrap;
}
.menuSection .itemSection .itemInfo.condensed .itemContent .itemDescription,
.menuSection
  .itemSection
  .itemInfo.extraCondensed
  .itemContent
  .itemDescription {
  color: #666;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
  -webkit-line-clamp: inherit;
  white-space: pre-wrap;
}
.menuSection {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.menuSection ul {
  all: inherit;
  list-style-type: none;
  flex: inherit;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
}
.menuSection ul li {
  flex: 1;
  display: flex;
}
.menuSection ul li a:hover {
  -webkit-text-decoration-line: none;
  text-decoration-line: none;
}
.menuSection.topImageV2 .headerWrapper h3,
.menuSection.leftImageV2 .headerWrapper h3,
.menuSection.classic .headerWrapper h3 {
  font-size: 18px;
  line-height: normal;
}
.menuSection.topImageV2 .headerWrapper .description,
.menuSection.leftImageV2 .headerWrapper .description,
.menuSection.classic .headerWrapper .description {
  font-size: 16px;
}
.menuSection .headerWrapper {
  display: flex;
  flex-direction: column;
  padding-bottom: 32px;
}
@media screen and (max-width: 47.99em) {
  .menuSection .headerWrapper {
    padding-bottom: 16px;
  }
}
.menuSection .headerWrapper .description {
  padding-top: 8px;
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
}
.menuSection .headerWrapper .description.primaryTextColor {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.menuSection .headerWrapper .separator {
  height: 4px;
  border: none;
  margin: 2px 0;
}
.menuSection .itemSection {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr auto;
  gap: 24px;
  width: 100%;
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection {
    grid-template-columns: 1fr;
  }
}
.menuSection .itemSection.topImageV2 {
  grid-template-columns: 1fr 1fr 1fr;
}
@media screen and (max-width: 63.99em) {
  .menuSection .itemSection.topImageV2 {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection.topImageV2 {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection.mobileOptimizedContainer {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.menuSection .itemSection.compact.listView {
  gap: 16px;
}
.menuSection .itemSection.compact.listView .item {
  box-shadow: none;
}
.menuSection .itemSection.compact.listView .item.clickable:hover {
  box-shadow: none;
}
.menuSection .itemSection.compact.listView .item .itemInfo {
  padding: 8px 16px;
}
@media screen and (min-width: 64em) {
  .menuSection .itemSection.compact {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.menuSection .itemSection .item {
  width: 100%;
  min-width: 100%;
  height: 136px;
  flex: 1;
  overflow: hidden;
  border-radius: 24px;
  box-shadow: 0 0 6px var(--ds-surface-shadow, rgba(0, 0, 0, 0.1));
  transition: box-shadow 0.15s ease-out;
  display: flex;
  flex-direction: row;
  text-align: start;
  padding: 0;
  border: 0;
  align-items: normal;
}
.menuSection .itemSection .item a {
  display: flex;
  width: 100%;
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection .item {
    height: 122px;
  }
  .menuSection .itemSection .item.mobileOptimized {
    height: 115px;
  }
}
.menuSection .itemSection .item:hover {
  text-decoration: none;
  cursor: default;
}
.menuSection .itemSection .item .itemHeader {
  font-size: 18px;
  line-height: 1.25rem;
}
@media screen and (max-width: 47.99em) {
  .menuSection .itemSection .item .itemHeader {
    font-size: 16px;
  }
}
.menuSection .itemSection .item.right a {
  flex-direction: row-reverse;
}
@media screen and (max-width: 47.99em) {
  .menuSection .itemSection .item {
    justify-content: flex-start;
  }
}
.menuSection .itemSection .item .placeholderImg {
  overflow: hidden;
}
@media screen and (min-width: 35.5em) {
  .menuSection .itemSection .item.topImageV2 {
    height: 100%;
    width: 100%;
  }
  .menuSection .itemSection .item.topImageV2 a {
    flex-direction: column;
  }
  .menuSection .itemSection .item.topImageV2 .mobileDescription {
    display: none;
  }
  .menuSection
    .itemSection
    .item.topImageV2
    .desktopDescription
    .itemDescription {
    min-height: 34px;
  }
}
@media screen and (min-width: 35.5em) and (max-width: 47.99em) {
  .menuSection .itemSection .item.topImageV2 .mobileDescription {
    display: block;
  }
  .menuSection .itemSection .item.topImageV2 .desktopDescription {
    display: none;
  }
}
@media screen and (min-width: 35.5em) {
  .menuSection .itemSection .item.topImageV2 .itemImage {
    border-bottom: 0.75px solid;
    height: unset;
  }
  .menuSection .itemSection .item.topImageV2 .itemImage.hideImage {
    display: none;
  }
}
@media screen and (min-width: 35.5em) {
  .menuSection .itemSection .item.topImageV2 .itemInfo {
    min-height: 124px;
    max-height: 124px;
  }
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection .item.topImageV2:not(.mobileOptimized) {
    height: 100%;
    width: 100%;
  }
  .menuSection .itemSection .item.topImageV2:not(.mobileOptimized) a {
    flex-direction: column;
  }
  .menuSection
    .itemSection
    .item.topImageV2:not(.mobileOptimized)
    .mobileDescription {
    display: none;
  }
  .menuSection
    .itemSection
    .item.topImageV2:not(.mobileOptimized)
    .desktopDescription
    .itemDescription {
    min-height: 34px;
  }
}
@media screen and (max-width: 35.49em) and (max-width: 47.99em) {
  .menuSection
    .itemSection
    .item.topImageV2:not(.mobileOptimized)
    .mobileDescription {
    display: block;
  }
  .menuSection
    .itemSection
    .item.topImageV2:not(.mobileOptimized)
    .desktopDescription {
    display: none;
  }
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection .item.topImageV2:not(.mobileOptimized) .itemImage {
    border-bottom: 0.75px solid;
    height: unset;
  }
  .menuSection
    .itemSection
    .item.topImageV2:not(.mobileOptimized)
    .itemImage.hideImage {
    display: none;
  }
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection .item.topImageV2:not(.mobileOptimized) .itemInfo {
    min-height: 124px;
    max-height: 124px;
  }
}
.menuSection .itemSection .item.leftImageV2 .itemImage {
  border-right: 0.75px solid;
}
.menuSection .itemSection .item.topImageV2,
.menuSection .itemSection .item.leftImageV2,
.menuSection .itemSection .item.classic {
  position: relative;
}
.menuSection .itemSection .item.topImageV2 .offerBadge,
.menuSection .itemSection .item.leftImageV2 .offerBadge,
.menuSection .itemSection .item.classic .offerBadge {
  position: absolute;
  padding: 6px 8px;
  border-radius: unset;
}
.menuSection .itemSection .item.topImageV2 .offerBadge.rightAlign,
.menuSection .itemSection .item.leftImageV2 .offerBadge.rightAlign,
.menuSection .itemSection .item.classic .offerBadge.rightAlign {
  right: 0;
  border-bottom-left-radius: 4px;
}
.menuSection .itemSection .item.topImageV2 .offerBadge.leftAlign,
.menuSection .itemSection .item.leftImageV2 .offerBadge.leftAlign,
.menuSection .itemSection .item.classic .offerBadge.leftAlign {
  left: 0;
  border-bottom-right-radius: 4px;
}
.menuSection .itemSection .item.topImageV2 .tag,
.menuSection .itemSection .item.leftImageV2 .tag,
.menuSection .itemSection .item.classic .tag {
  font-size: 10px;
  font-weight: 600;
}
.menuSection .itemSection .item.topImageV2.borderStrokeExaggerated.bgShadeLight,
.menuSection
  .itemSection
  .item.leftImageV2.borderStrokeExaggerated.bgShadeLight,
.menuSection .itemSection .item.classic.borderStrokeExaggerated.bgShadeLight {
  border: 2px solid var(--ds-border-default, #e0e0e0);
}
.menuSection .itemSection .item.topImageV2.borderStrokeExaggerated.bgShadeDark,
.menuSection .itemSection .item.leftImageV2.borderStrokeExaggerated.bgShadeDark,
.menuSection .itemSection .item.classic.borderStrokeExaggerated.bgShadeDark {
  border: 2px solid var(--ds-border-default, #ffffff14);
}
.menuSection .itemSection .item.topImageV2.borderStrokeSubtle.bgShadeLight,
.menuSection .itemSection .item.leftImageV2.borderStrokeSubtle.bgShadeLight,
.menuSection .itemSection .item.classic.borderStrokeSubtle.bgShadeLight {
  border: 0.75px solid var(--ds-border-default, #e0e0e0);
}
.menuSection .itemSection .item.topImageV2.borderStrokeSubtle.bgShadeDark,
.menuSection .itemSection .item.leftImageV2.borderStrokeSubtle.bgShadeDark,
.menuSection .itemSection .item.classic.borderStrokeSubtle.bgShadeDark {
  border: 0.75px solid var(--ds-border-default, #ffffff14);
}
.menuSection .itemSection .item.topImageV2.bgShadeLight .itemImage,
.menuSection .itemSection .item.leftImageV2.bgShadeLight .itemImage,
.menuSection .itemSection .item.classic.bgShadeLight .itemImage {
  border-color: var(--ds-border-default, #e0e0e0);
}
.menuSection .itemSection .item.topImageV2.bgShadeDark .itemImage,
.menuSection .itemSection .item.leftImageV2.bgShadeDark .itemImage,
.menuSection .itemSection .item.classic.bgShadeDark .itemImage {
  border-color: var(--ds-border-default, #ffffff14);
}
.menuSection .itemSection .item.topImageV2.roundedCornerNone,
.menuSection .itemSection .item.leftImageV2.roundedCornerNone,
.menuSection .itemSection .item.classic.roundedCornerNone {
  border-radius: 1px;
}
.menuSection .itemSection .item.topImageV2.roundedCornerSubtle,
.menuSection .itemSection .item.leftImageV2.roundedCornerSubtle,
.menuSection .itemSection .item.classic.roundedCornerSubtle {
  border-radius: 8px;
}
.menuSection .itemSection .item.topImageV2.roundedCornerExaggerated,
.menuSection .itemSection .item.leftImageV2.roundedCornerExaggerated,
.menuSection .itemSection .item.classic.roundedCornerExaggerated {
  border-radius: 20px;
}
.menuSection .itemSection .item.topImageV2.dropShadowNone,
.menuSection .itemSection .item.leftImageV2.dropShadowNone,
.menuSection .itemSection .item.classic.dropShadowNone {
  box-shadow: none;
}
.menuSection .itemSection .item.topImageV2.dropShadowSubtle,
.menuSection .itemSection .item.leftImageV2.dropShadowSubtle,
.menuSection .itemSection .item.classic.dropShadowSubtle {
  box-shadow: 0px 2px 4px 0px var(--ds-surface-shadow, #e0e0e0),
    0px 0px 6px 0px #00000005;
}
.menuSection .itemSection .item.topImageV2.dropShadowExaggerated,
.menuSection .itemSection .item.leftImageV2.dropShadowExaggerated,
.menuSection .itemSection .item.classic.dropShadowExaggerated {
  box-shadow: 0px 4px 8px 0px var(--ds-surface-shadow, #0000000f),
    0px 0px 4px 0px #0000000a;
}
.menuSection .itemSection .item.topImageV2 .itemHeader,
.menuSection .itemSection .item.leftImageV2 .itemHeader,
.menuSection .itemSection .item.classic .itemHeader {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: 16px;
  text-overflow: ellipsis;
}
.menuSection .itemSection .item.topImageV2 .itemContent,
.menuSection .itemSection .item.leftImageV2 .itemContent,
.menuSection .itemSection .item.classic .itemContent {
  padding-top: 0;
  padding-bottom: 0px;
}
.menuSection .itemSection .item.topImageV2 .itemContent .itemDescription,
.menuSection .itemSection .item.leftImageV2 .itemContent .itemDescription,
.menuSection .itemSection .item.classic .itemContent .itemDescription {
  display: block;
}
@media screen and (max-width: 35.49em) {
  .menuSection .itemSection .item.topImageV2.mobileOptimized,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized,
  .menuSection .itemSection .item.classic.mobileOptimized {
    position: relative;
    left: -12px;
    box-shadow: none;
    border-radius: 0;
    margin: 0 12px;
    padding: 16px 0;
    width: 100%;
    border-left: 0;
    background-color: var(
      --ds-surface-default,
      var(--tsw-background-color)
    ) !important;
    color: var(--ds-text-default, var(--tsw-primary-text-color)) !important;
    overflow: visible;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized .priceAvailability,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized
    .priceAvailability,
  .menuSection .itemSection .item.classic.mobileOptimized .priceAvailability {
    display: flex;
    flex-direction: column-reverse;
    gap: 12px;
    align-items: flex-start;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized a,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized a,
  .menuSection .itemSection .item.classic.mobileOptimized a {
    background-color: var(--tsw-primary-bg-color) !important;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized .itemDescription,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized .itemDescription,
  .menuSection .itemSection .item.classic.mobileOptimized .itemDescription {
    color: var(--ds-text-default, var(--tsw-primary-text-color)) !important;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized .headerText,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized .headerText,
  .menuSection .itemSection .item.classic.mobileOptimized .headerText {
    color: var(--ds-text-default, var(--tsw-primary-text-color)) !important;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized .priceAvailability,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized
    .priceAvailability,
  .menuSection .itemSection .item.classic.mobileOptimized .priceAvailability {
    margin-top: 0;
  }
  .menuSection
    .itemSection
    .item.topImageV2.mobileOptimized
    .priceAvailability
    .price,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized
    .priceAvailability
    .price,
  .menuSection
    .itemSection
    .item.classic.mobileOptimized
    .priceAvailability
    .price {
    color: var(--ds-text-default, var(--tsw-primary-text-color)) !important;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized.bgShadeLight,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized.bgShadeLight,
  .menuSection .itemSection .item.classic.mobileOptimized.bgShadeLight {
    border: 0;
    border-bottom: 0.75px solid var(--ds-border-default, #e0e0e0);
  }
  .menuSection
    .itemSection
    .item.topImageV2.mobileOptimized.bgShadeLight:last-child,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized.bgShadeLight:last-child,
  .menuSection
    .itemSection
    .item.classic.mobileOptimized.bgShadeLight:last-child {
    border-bottom: none;
  }
  .menuSection
    .itemSection
    .item.topImageV2.mobileOptimized.bgShadeLight
    .itemImage,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized.bgShadeLight
    .itemImage,
  .menuSection
    .itemSection
    .item.classic.mobileOptimized.bgShadeLight
    .itemImage {
    border: 0.75px solid var(--ds-border-default, #e0e0e0);
    border-radius: 8px;
    aspect-ratio: 1/1;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized.bgShadeDark,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized.bgShadeDark,
  .menuSection .itemSection .item.classic.mobileOptimized.bgShadeDark {
    border: 0;
    border-bottom: 0.75px solid var(--ds-border-default, #ffffff14);
  }
  .menuSection
    .itemSection
    .item.topImageV2.mobileOptimized.bgShadeDark:last-child,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized.bgShadeDark:last-child,
  .menuSection
    .itemSection
    .item.classic.mobileOptimized.bgShadeDark:last-child {
    border: none;
  }
  .menuSection
    .itemSection
    .item.topImageV2.mobileOptimized.bgShadeDark
    .itemImage,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized.bgShadeDark
    .itemImage,
  .menuSection
    .itemSection
    .item.classic.mobileOptimized.bgShadeDark
    .itemImage {
    border: 0.75px solid var(--ds-border-default, #ffffff14);
    border-radius: 8px;
    aspect-ratio: 1/1;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized .itemImage,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized .itemImage,
  .menuSection .itemSection .item.classic.mobileOptimized .itemImage {
    margin-right: 16px;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized.classic .itemImage,
  .menuSection
    .itemSection
    .item.leftImageV2.mobileOptimized.classic
    .itemImage,
  .menuSection .itemSection .item.classic.mobileOptimized.classic .itemImage {
    margin-right: 12px;
    margin-left: 16px;
  }
  .menuSection .itemSection .item.topImageV2.mobileOptimized .itemInfo,
  .menuSection .itemSection .item.leftImageV2.mobileOptimized .itemInfo,
  .menuSection .itemSection .item.classic.mobileOptimized .itemInfo {
    padding: 0;
    justify-content: center;
    gap: 12px;
  }
}
.menuSection .itemSection .item.classic .itemImage {
  border-left: 0.75px solid;
}
@media (hover: hover) {
  .menuSection .itemSection .item.clickable:not(.outOfStock):hover,
  .menuSection .itemSection .item.clickable:not(.outOfStock):focus-within {
    cursor: pointer;
  }
  .menuSection
    .itemSection
    .item.clickable:not(.outOfStock):hover:not(.mobileOptimized),
  .menuSection
    .itemSection
    .item.clickable:not(.outOfStock):focus-within:not(.mobileOptimized) {
    box-shadow: 0px 0px 35px var(--ds-surface-shadow, rgba(0, 0, 0, 0.2));
  }
}
@media screen and (hover: hover) and (max-width: 35.49em) {
  .menuSection
    .itemSection
    .item.clickable:not(.outOfStock):hover.mobileOptimized,
  .menuSection
    .itemSection
    .item.clickable:not(.outOfStock):focus-within.mobileOptimized {
    margin: 0;
    padding: 16px 12px;
    background-color: var(
      --ds-surface-focus,
      var(--tsw-primary-color-50)
    ) !important;
  }
  .menuSection
    .itemSection
    .item.clickable:not(.outOfStock):hover.mobileOptimized
    a,
  .menuSection
    .itemSection
    .item.clickable:not(.outOfStock):focus-within.mobileOptimized
    a {
    background-color: transparent !important;
  }
}
@media screen and (hover: hover) and (min-width: 47.99em) {
  .menuSection .itemSection .item.clickable:not(.outOfStock):hover,
  .menuSection .itemSection .item.clickable:not(.outOfStock):focus-within {
    box-shadow: 0px 0px 35px var(--ds-surface-shadow, rgba(0, 0, 0, 0.2));
  }
}
.menuSection .itemSection .item.outOfStock,
.menuSection .itemSection .item.outOfStock:hover {
  color: #7a7a7a;
}
.menuSection .itemSection .item.outOfStock a,
.menuSection .itemSection .item.outOfStock:hover a {
  cursor: default;
}
.menuSection .itemSection .item.outOfStock .itemDescription,
.menuSection .itemSection .item.outOfStock:hover .itemDescription {
  color: #7a7a7a;
}
.menuSection .itemSection .item.outOfStock img,
.menuSection .itemSection .item.outOfStock:hover img {
  filter: grayscale(100%);
}
.menuSection .itemSection .itemInfo {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 16px;
  flex: 1;
}
.menuSection .itemSection .itemInfo .priceAvailability,
.menuSection .itemSection .itemInfo .availability {
  font-size: 14px;
  line-height: normal;
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: auto;
}
.menuSection .itemSection .itemInfo .price.outOfStock {
  text-decoration: line-through;
  font-style: italic;
}
.menuSection .itemSection .itemInfo.outOfStock {
  opacity: 66%;
}
.menuSection .itemSection .itemImage {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}
.menuSection .itemSection .itemImage.imageRatioLarger,
.menuSection .itemSection .itemImage.imageRatioTaller {
  aspect-ratio: 4/3;
}
.menuSection .itemSection .itemImage.squareImage,
.menuSection .itemSection .itemImage.imageRatioSmaller {
  aspect-ratio: 1/1;
}
.menuSection .itemSection .itemImage.imageRatioShorter {
  aspect-ratio: 16/9;
}
.menuSection .itemSection .itemImage.outOfStock {
  opacity: 33%;
}
.menuSection .itemSection .itemHeader {
  font-weight: 600;
}
.menuSection .itemSection .itemFooter {
  padding: 8px 16px;
  font-size: 18px;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  line-height: 24px;
  transition: box-shadow 0.15s ease-out, background-color 0.15s ease-out,
    color 0.15s ease-out;
}
.menuSection .itemSection .itemFooter .action {
  color: #fff;
  transition: opacity 0.15s ease-out;
  opacity: 0;
  white-space: nowrap;
}
.menuSection .itemSection .itemContent .itemDescription {
  font-size: 14px;
  color: #666;
  line-height: 16px;
}
.menuSection .itemSection.squaredCorners .item {
  border-radius: 0;
}
.menuSection.condensed h3,
.menuSection.extraCondensed h3,
.menuSection.stacked h3 {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 400;
  line-height: normal;
  text-align: start;
}
@media screen and (max-width: 47.99em) {
  .menuSection.condensed h3,
  .menuSection.extraCondensed h3,
  .menuSection.stacked h3 {
    font-size: 32px;
  }
}
.menuSection.condensed .menuSectionHeader,
.menuSection.extraCondensed .menuSectionHeader,
.menuSection.stacked .menuSectionHeader {
  align-items: center;
  background: none;
  border: none;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  display: flex;
  justify-content: space-between;
  padding: 0;
  width: 100%;
}
.menuSection.condensed .menuSectionHeader.button,
.menuSection.extraCondensed .menuSectionHeader.button,
.menuSection.stacked .menuSectionHeader.button {
  cursor: pointer;
}
.menuSection.condensed .menuSectionHeader > img,
.menuSection.extraCondensed .menuSectionHeader > img,
.menuSection.stacked .menuSectionHeader > img {
  transition: transform 0.2s ease-out;
}
.menuSection.condensed .menuSectionHeader > img.expanded,
.menuSection.extraCondensed .menuSectionHeader > img.expanded,
.menuSection.stacked .menuSectionHeader > img.expanded {
  transform: rotate(180deg);
}
.menuSection.condensed .itemSection,
.menuSection.extraCondensed .itemSection,
.menuSection.stacked .itemSection {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease-out;
  background-color: var(--ds-surface-secondary, white);
}
.menuSection.condensed .itemSection .item,
.menuSection.extraCondensed .itemSection .item,
.menuSection.stacked .itemSection .item {
  height: 100%;
}
.menuSection.condensed .itemSection .item .itemInfo.condensed,
.menuSection.extraCondensed .itemSection .item .itemInfo.condensed,
.menuSection.stacked .itemSection .item .itemInfo.condensed {
  padding: 0;
}
.menuSection.condensed .itemSection .sectionSeparator,
.menuSection.extraCondensed .itemSection .sectionSeparator,
.menuSection.stacked .itemSection .sectionSeparator {
  margin: 20px 0;
  max-height: 0px;
  width: 100%;
  max-width: 100%;
}
.menuSection.condensed .itemSection.expanded,
.menuSection.extraCondensed .itemSection.expanded,
.menuSection.stacked .itemSection.expanded {
  max-height: -webkit-max-content;
  max-height: max-content;
}
.menuSection.stacked .menuSectionHeader,
.menuSection.stacked .itemHeader,
.menuSection.stacked .availability,
.menuSection.stacked .itemContent {
  justify-content: center;
}
.menuSection.stacked .description,
.menuSection.stacked .header {
  text-align: center;
}
@media screen and (max-width: 47.99em) {
  .menuSection.stacked .itemSection {
    gap: 0px;
  }
}
.menuSection.stacked .itemSection .sectionSeparator {
  margin-bottom: 0;
}
.menuSection.stacked .itemSection .itemInfo .itemHeadAvailDesc {
  padding-right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.menuSection.stacked .itemSection .itemInfo .itemHeader {
  padding-bottom: 8px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.5;
}
@media screen and (max-width: 47.99em) {
  .menuSection.stacked .itemSection .itemInfo .itemHeader {
    font-family: var(--tsw-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.5;
    line-height: normal;
  }
}
.menuSection.stacked .itemSection .itemInfo .itemDescription {
  -webkit-line-clamp: inherit;
}
.menuSection.stacked .itemContent {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #666;
}
.menuSection.card {
  border-radius: 24px;
  box-shadow: 0px 0px 6px var(--ds-surface-shadow, rgba(0, 0, 0, 0.1));
}
.menuSectionWrapper.columns .menuSection {
  padding: 0;
}
.menuSectionWrapper.columns .menuSection .sectionSeparator {
  max-width: 100%;
  margin: 18px 0;
}
.menuSectionWrapper.columns .menuSection .itemSection.columns {
  display: block;
  -moz-column-count: 2;
  column-count: 2;
  -moz-column-gap: 58px;
  column-gap: 58px;
}
@media screen and (max-width: 47.99em) {
  .menuSectionWrapper.columns .menuSection .itemSection.columns {
    display: flex;
    -moz-column-count: 1;
    column-count: 1;
  }
}
.menuSectionWrapper.columns .menuSection .itemSection.columns .item {
  padding: 16px;
  width: auto;
}
@media screen and (max-width: 47.99em) {
  .menuSectionWrapper.columns .menuSection .itemSection.columns .item {
    width: 100%;
  }
  .menuSectionWrapper.columns
    .menuSection
    .itemSection.columns
    .item.clickable {
    width: calc(100% - 32px);
  }
}
.menuSectionWrapper.columns .menuSection .itemSection.columns .item .itemInfo {
  -moz-column-break-inside: avoid;
  break-inside: avoid;
}
.menuSectionWrapper.stacked .headerWrapper {
  align-items: center;
}
.miniScroll {
  white-space: nowrap;
}
.miniScroll ul {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.miniScroll ul.navButtons {
  white-space: nowrap;
}
.miniScroll ul.navButtons button {
  width: 32px;
  height: 32px;
  line-height: 32px;
  border: none;
  background-color: #fff;
  text-align: center;
  cursor: pointer;
}
.miniScroll ul.navButtons button:disabled {
  opacity: 0.5;
  cursor: default;
}
.miniScroll ul li {
  display: inline-block;
  padding: 0px 3px;
  list-style-type: none;
}
.miniScroll ul.dots {
  margin-right: 10px;
}
@media screen and (max-width: 47.99em) {
  .miniScroll ul.dots {
    display: none;
  }
}
.miniScroll ul.dots .dot {
  width: 8px;
  height: 8px;
  background-color: silver;
}
.miniScroll ul.dots .dot.active {
  background-color: #474747;
}
.modalContentV2 {
  border-radius: 10px !important;
  width: 450px;
  padding: 0;
  overflow-y: auto;
}
.modalContentV2.loyalty {
  height: auto;
  border: 0.75px solid var(--ds-border-default, #cecece);
}
.modalContentV2.secondaryCTA {
  height: 465px;
}
.modalContentV2.completeProfile {
  height: auto;
}
@media screen and (max-width: 35.49em) {
  .modalContentV2.fullScreenMobile {
    height: 100%;
  }
}
@media screen and (max-width: 35.49em) {
  .modalContentV2.bottomDrawerMobile {
    position: fixed;
    bottom: 0;
    z-index: 10;
    max-height: -webkit-fit-content;
    max-height: -moz-fit-content;
    max-height: fit-content;
    border-radius: 16px 16px 0 0 !important;
    animation: slide-up 0.2s linear forwards;
  }
}
.modalContentV2 .modalHeader {
  justify-content: flex-end;
  border-bottom: 0.75px solid rgba(0, 0, 0, 0.12);
  padding: 12px;
}
.modalContentV2 .modalHeader.withHeaderIconRight {
  justify-content: space-between;
}
.modalContentV2 .modalHeader > * {
  display: inline-flex;
  margin: 0;
  background-color: unset;
  border: none;
}
.modalContentV2 .modalHeader > *:is(button):hover {
  border-radius: 50%;
  background-color: #e5e5e5;
  cursor: pointer;
}
.modalContentV2 .modalHeader .iconRight:not(.closeButton) {
  padding: 4px;
}
.modalContentV2 .modalHeader .iconRight img {
  height: 24px;
  width: 24px;
}
.modalContentV2 *:not(.modalHeader) button {
  width: 100%;
  border-radius: 8px;
}
.modalContentV2 .body {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: auto;
  padding: 32px 72px;
  color: #646464;
  font-size: 14px;
}
@media screen and (max-width: 35.49em) {
  .modalContentV2 .body {
    padding: 32px;
  }
}
.modalContentV2 .body.loyalty {
  padding: 24px 72px;
  text-align: center;
}
.modalContentV2 .body.terms {
  padding: 12px 24px 32px;
}
.modalContentV2 .body.terms button {
  margin-top: auto;
}
.modalContentV2 .body ul {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  align-self: center;
  margin-bottom: 0;
}
.modalContentV2 .body ul li {
  font-size: 14px;
}
.modalContentV2 .body .loyaltyFeatures {
  text-align: left;
}
.modalContentV2 .body .headerContent {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 4px;
}
.modalContentV2 .body .headerContent.centered {
  align-items: center;
}
.modalContentV2 .body .headerContent .title {
  font-size: 18px;
  font-weight: 600;
  color: #202020;
}
.modalContentV2 .body .headerContent .subtitle {
  font-size: 14px;
  font-weight: 400;
  color: #646464;
}
.modalContentV2 .body .phoneForm {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 24px;
}
.modalContentV2 .body .phoneForm .inputField,
.modalContentV2 .body .phoneForm .intlPhoneInput {
  margin-bottom: 0;
}
.modalContentV2 .body .phoneForm .intlPhoneInput ul {
  width: 100%;
}
.modalContentV2 .body .phoneForm .cta {
  display: flex;
  justify-content: center;
  height: 48px;
  border: none;
  border-radius: 8px;
  width: 100%;
  padding: 12px 0;
}
.modalContentV2 .body .phoneForm .cta .text {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  font-weight: 600;
}
.modalContentV2 .body .phoneForm .cta.submitPhoneButton {
  background: #252525;
}
.modalContentV2 .body .phoneForm .cta.submitPhoneButton:disabled {
  background: rgba(0, 0, 0, 0.25);
  cursor: default;
}
.modalContentV2 .body .phoneForm .cta.submitPhoneButton .text {
  display: flex;
  justify-content: center;
  width: 100%;
  color: #fff;
}
.modalContentV2 .body .phoneForm .cta.secondary {
  background-color: #fff;
  color: #252525;
  text-decoration: underline;
}
.modalContentV2 .body .termsText {
  color: #646464;
  font-size: 14px;
  text-align: center;
  padding: 12px 24px 24px;
}
.modalContentV2 .body .termsText a {
  text-decoration: underline;
  font-weight: normal;
  color: inherit;
}
.modalContentV2 .body .legal {
  font-size: 10px;
  text-align: center;
  color: #646464;
  margin-top: 24px;
}
.modalContentV2 .body .legal a {
  color: inherit;
  text-decoration: underline;
}
@keyframes slide-up {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
.expandableSectionLabel {
  cursor: pointer;
  padding: 10px 20px;
}
.expandableSectionLabel .controlIcon {
  display: inline-block;
  margin-left: 10px;
}
.expandableSectionLabel .controlIcon.rotated {
  transform: rotate(90deg);
  transition: all 0.15s ease-in;
}
.expandableSectionLabel .controlIcon:after {
  font-family: Tahoma !important;
  content: "â€º";
}
.expandableSectionContent {
  width: 100%;
}
.expandableSectionContent:hover {
  background-color: unset;
}
.expandableSectionContent > * {
  display: flex;
  cursor: pointer;
}
.expandableSectionContent > * a:hover {
  text-decoration: none;
}
.expandableSectionContent .expandableSectionLabel:hover {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
}
.expandableSectionContent a.navIndent-1,
.expandableSectionContent a.navIndent-2,
.expandableSectionContent a.navIndent-3 {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 20px;
}
.expandableSectionContent .navIndent-1 {
  padding-left: 36px;
}
.expandableSectionContent .navIndent-2 {
  padding-left: 72px;
}
.expandableSectionContent .navIndent-3 {
  padding-left: 108px;
}
.locationSelector .dropDownWrapper {
  position: relative;
}
@media screen and (max-width: 47.99em) {
  .locationSelector .dropDownWrapper {
    margin: auto;
  }
}
.locationSelector .dropDown {
  cursor: pointer;
  margin-right: 0;
  height: 42px;
  background-color: #fff;
  padding: 2px 12px;
  font-size: 16px;
}
.locationSelector .dropDown .icon,
.locationSelector .dropDown .selectedLocation {
  vertical-align: middle;
}
.locationSelector .dropDown .icon {
  padding: 0 10px 0 12px;
}
.locationSelector .dropDown .selectedLocation {
  display: inline-block;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
@media screen and (max-width: 63.99em) {
  .locationSelector .dropDown .selectedLocation {
    max-width: 350px;
  }
}
@media screen and (max-width: 47.99em) {
  .locationSelector .dropDown .selectedLocation {
    max-width: 225px;
  }
}
.locationSelector .dropDown .dropDownArrow {
  vertical-align: top;
}
.locationSelector .dropDown .dropDownArrow:after {
  padding-left: 15px;
}
@media screen and (max-width: 63.99em) {
  .locationSelector .dropDown .dropDownArrow:after {
    padding-left: 22px;
  }
}
.locationSelector .dropDown .dropDownContent {
  width: 100%;
}
.locationSelector .dropDown .dropDownContent div {
  display: flex;
  justify-content: space-between;
  width: 100%;
  cursor: pointer;
  padding: 10px 20px;
  line-height: 24px;
}
.locationSelector .dropDown .dropDownContent div:hover {
  background-color: rgba(0, 0, 0, 0.04);
}
.responsiveNav {
  text-align: right;
  white-space: nowrap;
}
.responsiveNav .viewItem {
  display: inline-block;
  text-align: left;
}
.hiddenNavItems {
  display: flex;
  position: absolute;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.navWrapper button.button.link,
.mobileNavOverlay button.button.link {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.navWrapper .overlay,
.mobileNavOverlay .overlay {
  background-color: var(
    --ds-surface-overlay,
    var(--tsw-background-contrasting-color-50)
  );
}
.navWrapper .navLinks,
.mobileNavOverlay .navLinks {
  align-items: center;
  padding: 0 24px 0 0;
}
.navWrapper .userNav,
.mobileNavOverlay .userNav {
  display: flex;
  align-items: center;
  cursor: pointer;
  padding-left: 0;
  background-color: transparent;
  border-width: 0;
}
.navWrapper .userNav .dropDown,
.mobileNavOverlay .userNav .dropDown {
  padding-left: 0;
  padding-right: 0;
}
.navWrapper .navLinks .dropDownContent,
.navWrapper .userNav .dropDownContent,
.mobileNavOverlay .navLinks .dropDownContent,
.mobileNavOverlay .userNav .dropDownContent {
  max-height: 70vh;
  overflow-y: auto;
}
.navWrapper .navLinks .dropDownContent .button,
.navWrapper .navLinks .dropDownContent .link,
.navWrapper .navLinks .button,
.navWrapper .userNav .dropDownContent .button,
.navWrapper .userNav .dropDownContent .link,
.navWrapper .userNav .button,
.mobileNavOverlay .navLinks .dropDownContent .button,
.mobileNavOverlay .navLinks .dropDownContent .link,
.mobileNavOverlay .navLinks .button,
.mobileNavOverlay .userNav .dropDownContent .button,
.mobileNavOverlay .userNav .dropDownContent .link,
.mobileNavOverlay .userNav .button {
  border-radius: inherit;
  padding: 10px 20px;
  width: 100%;
}
.navWrapper .navLinks .link,
.navWrapper .userNav .link,
.mobileNavOverlay .navLinks .link,
.mobileNavOverlay .userNav .link {
  padding: 0 15px;
  display: flex;
  font-weight: 400;
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
}
.navWrapper .navLinks .link:hover,
.navWrapper .userNav .link:hover,
.mobileNavOverlay .navLinks .link:hover,
.mobileNavOverlay .userNav .link:hover {
  text-decoration: none;
}
.navWrapper .navLinks a:hover,
.navWrapper .userNav a:hover,
.mobileNavOverlay .navLinks a:hover,
.mobileNavOverlay .userNav a:hover {
  text-decoration: none;
}
.navWrapper {
  display: flex;
  justify-content: center;
  padding-left: 80px;
  padding-right: 80px;
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  color: var(--ds-text-action, var(--tsw-link-color));
  transition: background-color 1s;
}
@media screen and (max-width: 63.99em) {
  .navWrapper {
    padding-left: 50px;
  }
}
@media screen and (max-width: 47.99em) {
  .navWrapper {
    padding-left: 30px;
  }
}
@media screen and (max-width: 63.99em) {
  .navWrapper {
    padding-right: 50px;
  }
}
@media screen and (max-width: 47.99em) {
  .navWrapper {
    padding-right: 30px;
  }
}
.navWrapper > * {
  width: 100%;
  align-self: center;
}
.navWrapper.withShadow {
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.1));
  -webkit-transform: translateZ(0);
}
.navWrapper ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.navWrapper ul li {
  list-style-type: none;
}
.navWrapper .nav {
  max-height: 80px;
  display: flex;
  justify-content: space-between;
}
.navWrapper .nav > .left,
.navWrapper .nav > .right {
  flex-grow: 0;
  display: flex;
  gap: 16px;
}
@media screen and (max-width: 35.49em) {
  .navWrapper .nav > .left,
  .navWrapper .nav > .right {
    align-items: center;
  }
}
.navWrapper .nav > .right {
  align-items: center;
}
.navWrapper .nav > .middle,
.navWrapper .nav > .right {
  display: flex;
  justify-content: center;
}
.navWrapper .nav > .middle {
  flex-grow: 1;
}
.navWrapper .nav [nav-role="primary-cta"] {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.navWrapper .nav [nav-role="primary-cta"] > *:not(:first-child) {
  padding-left: 8px;
}
.navWrapper .nav [nav-role="links"] {
  display: flex;
  flex-grow: 1;
  justify-content: flex-end;
}
.navWrapper .nav [nav-role="links"] > .navLinks {
  display: flex;
  justify-content: flex-end;
  flex: 1;
}
.navWrapper .nav .logoTitle .logo,
.navWrapper .nav .logoTitle .name {
  vertical-align: middle;
}
.navWrapper .nav .logoTitle h1 {
  color: var(--ds-background-primary, var(--tsw-primary-color));
  padding-top: 7px;
  font-size: 20px;
}
@media screen and (max-width: 35.5em) {
  .navWrapper .nav .logoTitle h1.smaller {
    font-size: 18px;
    padding-right: 4px;
    padding-top: 8px;
  }
}
.navWrapper .nav .logoTitle .logoWrapper {
  position: relative;
  transition: background-color 1s, margin-top 1s, padding 1s, margin-left 1s;
  margin-left: 0px;
  overflow: hidden;
  line-height: 0;
}
@media screen and (min-width: 48em) {
  .navWrapper .nav .logoTitle .logoWrapper.overflow-circle {
    transition: background-color 1s, margin-top 1s, padding 1s, margin-left 1s;
    background: transparent;
    padding: 0 30px 30px 30px;
    margin-left: -30px;
    border-bottom-right-radius: calc(50% + 30px);
    border-bottom-left-radius: calc(50% + 30px);
  }
  .navWrapper .nav .logoTitle .logoWrapper.overflow-circle .logo {
    max-height: 100px;
    padding-right: 0;
    position: relative;
    z-index: 2;
  }
  .navWrapper .nav .logoTitle .logoWrapper.overflow-circle .backgroundCircle {
    z-index: 1;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 80px + 12px);
    transition: background-color 1s;
  }
}
@media screen and (min-width: 48em) and (max-width: 63.99em) {
  .navWrapper .nav .logoTitle .logoWrapper.overflow-circle .backgroundCircle {
    height: calc(100% - 80px + 8px);
  }
}
.navWrapper .nav .logoTitle .logoWrapper .logo {
  max-height: 50px;
  max-width: 220px;
  width: auto;
  transition: max-height 1s, padding-right 1s;
}
@media screen and (max-width: 35.49em) {
  .navWrapper .nav .logoTitle .logoWrapper .logo {
    max-width: 100%;
  }
}
.navWrapper .nav .logoTitle .logoWrapper .hiddenHeader {
  display: none;
}
.navWrapper .nav .name {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
}
@media screen and (max-width: 47.99em) {
  .navWrapper .nav .name {
    font-family: var(--tsw-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-weight: 700;
    font-family: var(--tsw-header-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
.navWrapper .nav a:hover {
  text-decoration: none;
}
.navWrapper .nav.header-layout-1 .middle {
  justify-content: flex-end;
  flex-grow: 1;
}
.navWrapper .nav.header-layout-2 .middle {
  justify-content: center;
  flex-grow: 1;
}
.navWrapper .nav.header-layout-2 .middle > [nav-role="links"] {
  justify-content: center;
}
.navWrapper .nav.header-layout-2 .middle > [nav-role="links"] > .navLinks {
  justify-content: center;
}
.navWrapper .nav.header-layout-2 .left,
.navWrapper .nav.header-layout-2 .right {
  flex-grow: 0;
}
.navWrapper .nav.header-layout-4 .left {
  flex-basis: 50%;
  flex-grow: 0;
  flex-shrink: 1;
}
.navWrapper .nav.header-layout-4 .left [nav-role="links"] .navLinks {
  justify-content: flex-start;
}
.navWrapper .nav.header-layout-4 .right {
  flex-basis: 50%;
  flex-grow: 0;
  flex-shrink: 1;
  justify-content: flex-end;
}
.navWrapper .nav.header-layout-4 .middle {
  flex-grow: 1;
  align-self: flex-start;
}
.navWrapper .nav.header-layout-4 .middle .logo {
  padding: 0;
}
.navWrapper .nav.header-layout-5 .left {
  flex-basis: 50%;
  flex-grow: 0;
}
.navWrapper .nav.header-layout-5 .middle {
  flex-grow: 1;
  align-self: flex-start;
}
.navWrapper .nav.header-layout-5 .middle .logo {
  padding: 0;
}
.navWrapper .nav.header-layout-5 .right {
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  flex-basis: 50%;
  flex-grow: 0;
}
.navWrapper .nav.header-layout-5 .right > * {
  display: flex;
}
.navWrapper .nav.header-layout-5 .right > [nav-role="primary-cta"] {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.navWrapper
  .nav.header-layout-5
  .right
  > [nav-role="primary-cta"]
  > *:not(:first-child) {
  padding-left: 8px;
}
.navWrapper .nav.header-layout-5 .right > [nav-role="links"] {
  flex-grow: 1;
}
.navWrapper .nav.header-layout-5 .right > [nav-role="links"] > .navLinks {
  flex: 1;
}
.navWrapper .nav.header-layout-6 .left {
  flex: 1;
}
.navWrapper .nav.header-layout-6 .middle {
  flex: 1;
}
.navWrapper .nav.header-layout-6 .middle .logo {
  padding: 0;
}
.navWrapper .nav.header-layout-6 .right {
  flex: 1;
  justify-content: flex-end;
}
.navWrapper .nav.header-layout-7 .left {
  flex: 1;
}
.navWrapper .nav.header-layout-7 .middle {
  flex: 1;
}
.navWrapper .nav.header-layout-7 .middle .logo {
  padding: 0;
}
.navWrapper .nav.header-layout-7 .right {
  flex: 1;
  justify-content: flex-end;
}
.navWrapper .nav.header-layout-8 {
  max-height: 120px;
}
.navWrapper .nav.header-layout-8 .left,
.navWrapper .nav.header-layout-8 .right {
  flex-basis: 10%;
  flex-grow: 0;
}
.navWrapper .nav.header-layout-8 .middle {
  flex-direction: column;
  align-items: center;
  flex-grow: 1;
  flex-basis: auto;
  align-self: flex-start;
}
.navWrapper .nav.header-layout-8 .middle [nav-role="links"] {
  width: 100%;
}
.navWrapper .nav.header-layout-8 .middle [nav-role="links"] .navLinks {
  justify-content: center;
}
@media screen and (min-width: 48em) {
  .navWrapper .nav.header-layout-8 .middle .logoWrapper .logo {
    max-height: 50px;
    max-width: 220px;
    width: auto;
    transition: max-height 1s, padding-right 1s;
  }
  .navWrapper .nav.header-layout-8 .middle .logoWrapper .backgroundCircle {
    display: none;
  }
  .navWrapper .nav.header-layout-8 .middle .logoWrapper.overflow-circle {
    padding: 0;
    margin: 0;
    border-radius: 0;
  }
}
.navWrapper .nav.header-layout-8 .middle .logoWrapper .logo {
  max-height: 50px;
  max-width: 220px;
  width: auto;
  transition: max-height 1s, padding-right 1s;
}
.navWrapper .nav.header-layout-8 .right [nav-role="primary-cta"] {
  justify-content: flex-end;
}
.navWrapper .nav.header-layout-checkout .left {
  flex: 1;
}
.navWrapper .nav.header-layout-checkout .middle {
  flex: 1;
}
.navWrapper .nav.header-layout-checkout .middle .logo {
  padding: 0;
}
.navWrapper .nav.header-layout-checkout .right {
  flex: 1;
  justify-content: flex-end;
}
.navWrapper .nav.header-layout-checkout .checkoutBackButton {
  display: flex;
  align-items: center;
  color: var(--ds-icon-default, var(--tsw-primary-text-color));
}
.navWrapper
  .nav.header-layout-checkout
  .checkoutBackButton
  .linkChildrenWrapper {
  gap: 8px;
}
.navWrapper .nav.header-layout-checkout .checkoutBackButton svg {
  vertical-align: middle;
}
.navWrapper .behaviorToggle {
  position: relative;
}
.navWrapper .behaviorToggle svg {
  height: 40px;
}
.navWrapper .hamburgerWrapper {
  align-items: center;
  display: flex;
}
.navWrapper .hamburger {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  fill: var(--ds-icon-default, var(--tsw-primary-text-color));
  align-self: center;
  height: 20px;
}
.mobileNavOverlay {
  display: flex;
  flex-direction: column;
  position: fixed;
  overflow: hidden;
  top: 10px;
  left: 10px;
  right: 10px;
  z-index: 10;
  border-radius: 6px;
}
.mobileNavOverlay .overlay {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  position: fixed;
}
.mobileNavOverlay .content {
  display: flex;
  flex-direction: column;
  z-index: 10;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  max-height: calc(100vh - 20px);
}
@media screen and (min-width: 48em) {
  .mobileNavOverlay .content {
    max-width: 400px;
  }
}
.mobileNavOverlay .content .header {
  display: flex;
  justify-content: flex-end;
  padding: 12px 12px 0 0;
}
@media screen and (min-width: 48em) {
  .mobileNavOverlay .content .header {
    justify-content: flex-end;
    border: none;
  }
}
.mobileNavOverlay .content .body {
  overflow-y: auto;
}
.mobileNavOverlay .content .body .navLinks,
.mobileNavOverlay .content .footer .navLinks {
  display: flex;
  flex-wrap: wrap;
  border: none;
  padding: 0;
  font-weight: 400;
}
.mobileNavOverlay .content .body .navLinks .mobileLink,
.mobileNavOverlay .content .body .navLinks .expandableSectionLabel,
.mobileNavOverlay .content .footer .navLinks .mobileLink,
.mobileNavOverlay .content .footer .navLinks .expandableSectionLabel {
  font-weight: 400;
  text-align: left;
  display: block;
  cursor: pointer;
  padding: 18px 24px;
  flex: 1 1 100%;
}
.mobileNavOverlay .content .body .navLinks .mobileLink:hover,
.mobileNavOverlay .content .body .navLinks .expandableSectionLabel:hover,
.mobileNavOverlay .content .footer .navLinks .mobileLink:hover,
.mobileNavOverlay .content .footer .navLinks .expandableSectionLabel:hover {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
}
.mobileNavOverlay .content .body .navLinks .mobileLink.navIndent-1,
.mobileNavOverlay .content .body .navLinks .expandableSectionLabel.navIndent-1,
.mobileNavOverlay .content .footer .navLinks .mobileLink.navIndent-1,
.mobileNavOverlay
  .content
  .footer
  .navLinks
  .expandableSectionLabel.navIndent-1 {
  padding-left: 36px;
}
.mobileNavOverlay .content .body .navLinks .mobileLink.navIndent-2,
.mobileNavOverlay .content .body .navLinks .expandableSectionLabel.navIndent-2,
.mobileNavOverlay .content .footer .navLinks .mobileLink.navIndent-2,
.mobileNavOverlay
  .content
  .footer
  .navLinks
  .expandableSectionLabel.navIndent-2 {
  padding-left: 72px;
}
.mobileNavOverlay .content .body .navLinks .mobileLink.navIndent-3,
.mobileNavOverlay .content .body .navLinks .expandableSectionLabel.navIndent-3,
.mobileNavOverlay .content .footer .navLinks .mobileLink.navIndent-3,
.mobileNavOverlay
  .content
  .footer
  .navLinks
  .expandableSectionLabel.navIndent-3 {
  padding-left: 108px;
}
.mobileNavOverlay .content .body .navLinks .mobileLink.navIndent-4,
.mobileNavOverlay .content .body .navLinks .expandableSectionLabel.navIndent-4,
.mobileNavOverlay .content .footer .navLinks .mobileLink.navIndent-4,
.mobileNavOverlay
  .content
  .footer
  .navLinks
  .expandableSectionLabel.navIndent-4 {
  padding-left: 144px;
}
.mobileNavOverlay .content .body .navLinks .expandableSectionContent,
.mobileNavOverlay .content .footer .navLinks .expandableSectionContent {
  -webkit-tap-highlight-color: transparent;
}
.mobileNavOverlay .content .body .navLinks .expandableSectionContent .icon,
.mobileNavOverlay .content .footer .navLinks .expandableSectionContent .icon {
  padding-right: 10px;
}
.mobileNavOverlay .content .footer {
  padding: 8px 0;
  align-items: center;
  text-align: center;
}
.mobileNavOverlay .content .footer .cta {
  margin: 0 24px;
}
.mobileNavOverlay .content .footer .cta button {
  width: 100%;
}
.mobileNavOverlay .content .footer hr {
  margin: 24px 24px 0 24px;
}
.navToastContainer {
  z-index: 9;
}
@media screen and (max-width: 47.99em) {
  .navToastContainer {
    padding: 0 20% 0 20%;
    margin-bottom: 40px;
  }
}
.navToastContainer .Toastify__toast {
  align-items: center;
  background-color: #252525;
  color: #fff;
  border-radius: 8px;
  font-family: var(--tsw-font-family);
  min-height: -webkit-fit-content;
  min-height: -moz-fit-content;
  min-height: fit-content;
  font-size: 14px;
}
.navToastContainer.giftCardPromoCodeErrors {
  z-index: 10;
}
.offers {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: 24px;
  line-height: normal;
}
.offers .offersHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.offers .offersHeader .header {
  font-size: 20px;
}
.offers .offersHeader .arrows {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
}
.offers .offersHeader .arrows .disabledArrow {
  opacity: 0.4;
}
.offers .offersHeader .arrows .arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  height: 32px;
  width: 32px;
  border: 1px solid var(--ds-border-default, #0000001f);
  border-radius: 50%;
  background-color: var(--ds-background-primary, #ffffff);
}
.offers .offersHeader .arrows .arrow.right {
  transform: rotate(180deg);
}
.offers .offersHeader .arrows .arrow.disabled {
  cursor: auto;
}
.offers .offersHeader .arrows .arrow svg {
  height: 12px;
  width: 8px;
}
.offers .offerAndLoyaltyCards {
  width: calc(100% + 48px);
  padding: 24px;
  margin: 0 -24px;
}
@media screen and (max-width: 47.99em) {
  .offers .offerAndLoyaltyCards {
    width: calc(100% + 32px);
    padding: 16px;
    margin: 0 -16px;
  }
}
.offers .offerAndLoyaltyCards .swiper-slide {
  height: 148px;
}
.offerModalWrapper {
  line-height: normal;
}
.offerModalWrapper .offerModal {
  width: 480px;
  color: #666;
}
.offerModalWrapper .offerModal .closeButton {
  align-self: flex-end;
  margin: 6px;
}
.offerModalWrapper .offerModal .content .header {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 32px 48px 64px 48px;
  gap: 12px;
  border-top: 0.5px solid silver;
}
.offerModalWrapper .offerModal .content .header .title {
  font-size: 22px;
  font-weight: 600;
  color: #252525;
}
.offerModalWrapper .offerModal .content .header .description {
  text-wrap: balance;
  text-align: center;
}
.offerModalWrapper .offerModal .content .body {
  padding: 24px 24px 0 24px;
}
.offerModalWrapper .offerModal .content .body .offerDetail {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 0.5px solid silver;
  padding: 28px 0;
}
.offerModalWrapper .offerModal .content .body .offerDetail .detail {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.offerModalWrapper
  .offerModal
  .content
  .body
  .offerDetail
  .detail
  .detailTitle {
  font-size: 14px;
}
.offerModalWrapper
  .offerModal
  .content
  .body
  .offerDetail
  .detail
  .detailDescription {
  font-size: 16px;
  color: #252525;
}
.offerModalWrapper .offerModal .content .body .offerDetail .copyButton {
  position: relative;
}
.offerModalWrapper .offerModal .content .body .offerDetail .copyButton:hover {
  cursor: pointer;
}
.offerModalWrapper .offerModal .content .body .offerDetail .copyButton button {
  all: unset;
}
.offerModalWrapper
  .offerModal
  .content
  .body
  .offerDetail
  .copyButton
  .copyMessage {
  position: absolute;
  left: -12px;
  top: 32px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s ease-out;
  color: #252525;
  background-color: #e7eaf6;
  padding: 4px;
  border-radius: 4px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}
.offerModalWrapper
  .offerModal
  .content
  .body
  .offerDetail
  .copyButton
  .copyMessage.show {
  opacity: 1;
}
.modalContentV2 .loyaltyFormContainer {
  width: 100%;
  border-top: 0.5px solid var(--ds-border-default, #cecece);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.modalContentV2 .loyaltyFormContainer .signupForm {
  width: 75%;
  padding-bottom: 24px;
  color: #646464;
  font-size: 12px;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.modalContentV2 .loyaltyFormContainer .signupForm .checkboxContainer {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}
.modalContentV2 .loyaltyFormContainer .signupForm .checkboxContainer input {
  accent-color: var(--ds-background-secondary);
}
.modalContentV2 .loyaltyFormContainer .signupForm .checkboxContainer a {
  text-decoration: underline;
  cursor: pointer;
  font-weight: normal;
  color: inherit;
}
.modalContentV2 .signupButton,
.modalContentV2 .termsButton {
  font-size: 16px;
}
.modalContentV2 .accrualBonusTag {
  border-bottom: 0.75px solid rgba(0, 0, 0, 0.12);
  display: flex;
  justify-content: center;
  text-align: center;
  font-size: 14px;
  padding: 8px;
}
.loadingSpinnerOverlay {
  border-radius: 10px;
}
.loyaltyAuthModal {
  height: 470px;
}
@media screen and (max-width: 35.49em) {
  .loyaltyAuthModal {
    width: 100%;
    height: 100%;
  }
}
.Toastify__toast-body {
  line-height: 1.25rem !important;
}
.account {
  background-color: #fff;
  padding: 24px;
  border-radius: 8px;
  display: block;
  margin: auto;
  max-width: 600px !important;
  margin: 24px 0;
}
.account .accountHeading {
  font-size: 24px;
  line-height: 29px;
  color: #000;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.account .accountHeadingDisabled {
  font-size: 24px;
  line-height: 29px;
  color: silver;
}
.account .accountSections {
  display: grid;
  grid-auto-flow: row;
  grid-template: "information" minmax(100px, auto) "address" minmax(100px, auto) "wallet" minmax(
      100px,
      auto
    ) "settings" minmax(100px, auto);
  grid-gap: 32px;
  margin: 20px 0;
}
.account .accountSections p {
  color: #000;
}
.account .accountSections .accountSubheading {
  font-size: 18px;
  line-height: 22px;
  color: #000;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.account .accountSections .accountSubheadingDisabled {
  font-size: 18px;
  line-height: 22px;
  color: silver;
}
.account .accountSections .informationSection {
  grid-area: information;
}
.account .accountSections .addressSection {
  grid-area: address;
}
.account .accountSections .walletSection {
  grid-area: wallet;
}
.account .accountSections .settingsSection {
  grid-area: settings;
}
.globalNav .authTooltip,
.toastLocalNav .authTooltip {
  border-radius: 8px;
  font-size: 14px;
  font-weight: 400;
}
.globalNav .authTooltip button,
.toastLocalNav .authTooltip button {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
}
.globalNav .authTooltip span,
.toastLocalNav .authTooltip span {
  color: #fff;
  text-decoration: underline;
}
.globalNav .authTooltip.light,
.toastLocalNav .authTooltip.light {
  background-color: #eee;
}
.globalNav .authTooltip.light span,
.toastLocalNav .authTooltip.light span {
  color: #000;
}
.globalNav .authTooltip .authTooltipArrow,
.toastLocalNav .authTooltip .authTooltipArrow {
  margin-right: -4px;
}
.completeProfileForm {
  font-family: "Effra";
  letter-spacing: 0.2px;
  margin: 12px 0;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.completeProfileForm .formBody .phoneNumberBox {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  padding: 9px 12px 11px;
  gap: 8px;
  margin-bottom: 20px;
  background: #f0f0f0;
  border: 1px solid silver;
  border-radius: 8px;
  font-size: 16px;
  line-height: 19px;
  color: #666;
}
.completeProfileForm .formBody .legal {
  font-size: 10px;
  text-align: center;
  color: #646464;
  margin-top: 16px;
}
.completeProfileForm .formBody .legal a {
  color: inherit;
  text-decoration: underline;
}
.completeProfileForm .footer {
  background: #fff;
}
.completeProfileForm .footer .submitBtn {
  color: #fff;
  background: #252525;
  width: 100%;
  border-radius: 8px;
}
.completeProfileForm .footer .submitBtn:disabled {
  background: rgba(0, 0, 0, 0.25);
  cursor: default;
}
.completeProfileForm .footer .submitBtn:not(:disabled):hover {
  color: #e6e6e6;
  background: #0c0c0c;
}
.completeProfileForm .formError {
  color: #c42b44;
  margin: 10px 0 5px;
}
.logoutModalContent {
  display: grid !important;
  max-width: 400px;
  grid-template: "header" 29px "body" minmax(100px, 1fr);
  grid-gap: 32px;
  padding: 24px;
}
.logoutModalContent .header {
  grid-area: header;
  display: grid;
  grid-auto-columns: minmax(245px, 5fr) minmax(40px, 1fr);
}
.logoutModalContent .header .headerText {
  grid-row: 1;
  align-self: center;
  font-family: "Effra Heavy", serif;
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  color: #000;
}
.logoutModalContent .header .headerClose {
  grid-row: 1;
  justify-self: end;
  align-self: center;
}
.logoutModalContent .header .headerClose .closeButton {
  margin: 0;
  padding: 2px;
}
.logoutModalContent .body {
  grid-area: body;
}
.editAddressWrapper .editAddressInputs {
  margin: 16px 0;
}
.editAddressWrapper .editAddressInputs .addressInput {
  display: flex;
}
.editAddressWrapper .editAddressInputs .addressInput input {
  flex-grow: 1;
  border: 1px solid #6e6e6e;
  border-radius: 32px;
  font-size: 16px;
  height: 32px;
}
.editAddressWrapper .editAddressInputs .addressInputError,
.editAddressWrapper .editAddressInputs .addressInput input {
  padding: 0 12px;
}
.editAddressWrapper .actionsWrapper {
  display: grid;
  grid-auto-flow: column;
  justify-content: end;
  grid-gap: 5px;
}
@media screen and (max-width: 47.99em) {
  .editAddressWrapper .actionsWrapper {
    grid-auto-flow: row;
    justify-content: unset;
  }
}
.editAddressWrapper .actionsWrapper .updateAddressBtn {
  width: 218px;
  float: right;
  color: #fff;
  background: #2b4fb9;
  font-size: 16px;
}
.editAddressWrapper .actionsWrapper .updateAddressBtn:hover {
  color: #e6e6e6;
  background: #213d90;
}
.editAddressWrapper .actionsWrapper .updateAddressBtn:disabled {
  cursor: default;
  background-color: #7a7a7a;
  color: #fff;
}
.editAddressWrapper .actionsWrapper .updateAddressBtn:disabled:hover {
  cursor: default;
  background-color: #7a7a7a;
  color: #fff;
}
@media screen and (max-width: 47.99em) {
  .editAddressWrapper .actionsWrapper .updateAddressBtn {
    width: 100%;
    grid-row: 1;
  }
}
.editAddressWrapper .actionsWrapper .cancelAddressEditBtn {
  color: #2b4fb9;
  background-color: transparent;
  font-size: 16px;
}
.editAddressWrapper .actionsWrapper .cancelAddressEditBtn:hover {
  color: #213d90;
  background-color: #f0f0f0;
}
@media screen and (max-width: 47.99em) {
  .editAddressWrapper .actionsWrapper .cancelAddressEditBtn {
    grid-row: 2;
  }
}
.profileAddresses .addressItemsWrapper {
  display: grid;
  grid-gap: 16px;
  margin-top: 16px;
}
.profileAddresses .addressItemsWrapper .addressItem {
  display: grid;
  grid-template-areas: "label   label   actions" "address address actions";
  grid-gap: 8px;
}
.profileAddresses .addressItemsWrapper .addressItem .addressLine {
  grid-area: address;
  display: grid;
  grid-auto-flow: column;
  justify-content: start;
  grid-gap: 0.5ch;
}
.profileAddresses
  .addressItemsWrapper
  .addressItem
  .addressLine
  .addressDelimiter {
  display: unset;
}
@media screen and (max-width: 47.99em) {
  .profileAddresses .addressItemsWrapper .addressItem .addressLine {
    grid-auto-flow: row;
    justify-content: unset;
    grid-gap: unset;
  }
  .profileAddresses
    .addressItemsWrapper
    .addressItem
    .addressLine
    .addressDelimiter {
    display: none;
  }
}
.profileAddresses .addressItemsWrapper .addressItem .addressLabel {
  grid-area: label;
}
.profileAddresses .addressItemsWrapper .addressItem .addressActions {
  grid-area: actions;
  justify-self: end;
  align-self: center;
}
.profileAddresses
  .addressItemsWrapper
  .addressItem
  .addressActions
  .addressActionIcon {
  cursor: pointer;
  padding: 0 10px 0 20px;
}
.profileAddresses
  .addressItemsWrapper
  .addressItem
  .addressActions
  .dropDown
  .dropDownArrow {
  display: none;
}
.profileAddresses
  .addressItemsWrapper
  .addressItem
  .addressActions
  .dropDown
  .dropDownContent {
  width: auto;
  right: 5px;
  white-space: nowrap;
}
.profileAddresses .addressItemsWrapper .addressItem .addressLabel,
.profileAddresses .addressItemsWrapper .addressItem .addressLine {
  color: #252525;
  font-size: 14px;
  line-height: 17px;
}
.profileAddresses .placeholderMsg {
  padding-top: 10px;
  color: #7a7a7a;
}
.profileInformation .infoWrapper {
  padding-top: 16px;
}
.profileInformation .infoWrapper .emailInputWrapper {
  border: 1px solid #cecece;
  border-radius: 8px;
  width: 100%;
  display: flex;
  align-items: center;
  height: 56px;
  margin-bottom: 8px;
  padding-top: 10px;
}
.profileInformation .infoWrapper .emailInputWrapper .emailInputToVerify {
  width: 100%;
}
.profileInformation
  .infoWrapper
  .emailInputWrapper
  .emailInputToVerify
  .inputFieldInner {
  border: none !important;
  box-sizing: border-box;
  flex-grow: 1;
}
.profileInformation .infoWrapper .emailInputWrapper .verifyCurrentEmail {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  color: #2b4fb9;
  flex-shrink: 0;
  font-weight: 600;
  border: none;
  background: none;
  font-size: 14px;
  margin-right: 10px;
}
.profileInformation .infoWrapper .emailInputWrapper .verifyCurrentEmail:hover {
  color: #002182;
  font-weight: 600;
}
.profileInformation .infoWrapper .submitPhoneButton {
  display: flex;
  justify-content: center;
  background: #252525;
  border: none;
  border-radius: 8px;
  padding: 12px 18px;
  margin: 32px 0px;
  float: right;
}
@media screen and (max-width: 47.99em) {
  .profileInformation .infoWrapper .submitPhoneButton {
    width: 100%;
  }
}
.profileInformation .infoWrapper .submitPhoneButton:disabled {
  background: rgba(0, 0, 0, 0.25);
  cursor: default;
}
.profileInformation .infoWrapper .submitPhoneButton .text {
  color: #fff;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  font-weight: 600;
}
.profileInformation input[type="text"]:read-only {
  color: silver;
}
.profileInformation .sectionSeparatorWrapper {
  background-color: #fff !important;
}
.profileInformation .sectionSeparatorWrapper .sectionSeparator {
  border: 1px solid silver !important;
  margin-bottom: 12px;
  width: 100%;
  padding: 0px !important;
}
.profileSettings .deleteButton {
  float: left;
  color: #b12910;
  background-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.deleteAccountModalContent {
  max-width: 400px;
}
.deleteAccountModalContent .closeButton {
  float: right;
  margin-left: 100%;
}
.deleteAccountModalContent .closeButton:hover {
  cursor: pointer;
}
.deleteAccountModalContent .content {
  padding-left: 24px;
  padding-right: 24px;
  padding-bottom: 20px;
  text-align: left;
}
.deleteAccountModalContent .content .deleteModalHeader {
  padding-top: 16px;
  padding-bottom: 16px;
}
.deleteAccountModalContent .content .modalButtonWrapper {
  text-align: center !important;
}
.deleteAccountModalContent .content .modalButtonWrapper .deleteAccountButton {
  margin-top: 16px;
  background-color: #d40023;
  color: #fff;
}
.deleteAccountModalContent .content .modalButtonWrapper .deleteAccountCancel {
  margin-top: 16px;
  color: #2b4fb9;
  background-color: transparent;
}
.profileWallet .profileWalletHeading {
  font-size: 24px;
  line-height: 29px;
  color: #000;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.profileWallet .profileWalletHeadingDisabled {
  font-size: 24px;
  line-height: 29px;
  color: silver;
}
.profileWallet .profileWalletSections {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-top: 20px;
}
.profileWallet .walletSubheading {
  font-size: 18px;
  line-height: 22px;
  color: #000;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.profileWallet .toastCashCardContainer {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.profileWallet .toastCashCardContainer .toastCashCard {
  background-color: #f8f5f2;
  border-radius: 12px;
  padding: 12px;
}
.profileWallet
  .toastCashCardContainer
  .toastCashCard
  .toastCashContentsContainer {
  display: flex;
  flex-direction: row;
  gap: 12px;
  justify-items: left;
  align-items: center;
}
.profileWallet
  .toastCashCardContainer
  .toastCashCard
  .toastCashContentsContainer
  img {
  height: 34px;
  width: 34px;
}
.profileWallet
  .toastCashCardContainer
  .toastCashCard
  .toastCashContentsContainer
  .toastCashAmountContainer {
  width: 100%;
}
.profileWallet
  .toastCashCardContainer
  .toastCashCard
  .toastCashContentsContainer
  .toastCashAmountContainer
  .toastCashAmount {
  font-size: 26px;
  line-height: 32px;
  font-weight: 600;
}
.profileWallet
  .toastCashCardContainer
  .toastCashCard
  .toastCashContentsContainer
  .toastCashAmountContainer
  .toastCashAvailableFunds {
  font-size: 14px;
  line-height: 20px;
}
.profileWallet .toastCashDisclaimer,
.profileWallet .savedCardsDisclaimer {
  color: #666;
  font-size: 12px;
  line-height: 16px;
}
.profileWallet .toastCashDisclaimer a,
.profileWallet .savedCardsDisclaimer a {
  color: inherit;
  text-decoration: underline;
}
.profileWallet .savedCards {
  margin: 20px 0;
}
.profileWallet .empty {
  font-size: 14px;
  line-height: 1.25rem;
  color: #666;
  margin: 20px 0;
}
.profileWallet .savedCreditCard,
.profileWallet .addCard {
  display: flex;
  align-items: center;
  width: 100%;
}
.profileWallet .savedCreditCard {
  margin-bottom: 12px;
}
.profileWallet .savedCreditCard .savedCardRadio {
  flex-grow: 1;
}
.profileWallet .savedCreditCard .savedCardRadio .savedCardLabel {
  display: flex;
  align-items: center;
  gap: 12px;
}
.profileWallet .savedCreditCard .savedCardRadio .savedCardLabel .cardLogo {
  width: 37px;
}
.profileWallet .savedCreditCard .savedCardRadio .savedCardLabel .expiration {
  margin-left: auto;
}
.profileWallet .savedCreditCard .editCard {
  cursor: pointer;
  padding: 0 10px 0 20px;
}
.profileWallet .savedCreditCard .dropDown .dropDownArrow {
  display: none;
}
.profileWallet .savedCreditCard .dropDown .dropDownContent {
  width: auto;
  right: 5px;
  white-space: nowrap;
}
.profileWallet .savedCardLabel .labelText {
  color: #000;
}
.modalContentV2 .modalHeader {
  padding: 12px 24px;
  justify-content: space-between;
}
.modalContentV2 .body {
  padding: 24px;
}
.modalContentV2 .body .codeForm {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 24px;
}
.modalContentV2 .body .codeForm .resendCodeButton {
  border: 1px solid #cdced7;
  border-radius: 8px;
  background: #fff;
  padding: 12px 24px;
  color: #1e1f24;
  font-size: 16px;
  font-weight: 500;
}
.modalContentV2 .body .codeForm .resendCodeButton:hover {
  background: rgba(0, 0, 0, 0.04);
}
.modalContentV2 .body .codeForm .resendCodeButton:active {
  background: rgba(0, 0, 0, 0.08);
}
.modalContentV2 .body .codeForm .formError {
  font-size: 16px;
}
.modalContentV2 .body .codeForm .loadingSpinnerOverlay {
  border-radius: 10px;
}
.inputButton {
  align-self: flex-end;
  height: 36px;
  padding-left: 10px;
  color: #7a7a7a;
  font-weight: bold;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
}
.inputButton.active {
  cursor: pointer;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
}
.verifiedStatus {
  font-size: 10px !important;
  line-height: 14px !important;
  border-radius: 22px;
  padding: 4px 10px 2px 10px;
  display: inline;
  color: #252525 !important;
  font-weight: 600;
  margin-left: 5px;
  letter-spacing: 1px;
}
.verifiedStatus.verified {
  background: #e8f7d4;
  border: 1px solid #cde6b0;
}
.verifiedStatus.unVerified {
  background: #ffe6e9;
  border: 1px solid #ffccd1;
}
.cartPopoverTarget {
  border-radius: 32px;
  padding: 0 24px;
  height: 48px;
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 16px;
  cursor: pointer;
}
.cartPopoverTarget .cartIcon {
  stroke: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
@media screen and (max-width: 47.99em) {
  .cartPopoverTarget {
    padding: 0 15px;
    height: 40px;
  }
}
.cartPopoverTarget.disabled {
  cursor: default;
  border-color: #7a7a7a;
  opacity: 0.5;
}
.cartPopoverTarget:hover {
  background-color: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
  cursor: pointer;
}
.targetAction {
  background-color: transparent;
  border: 0px;
  padding: 0px;
  margin: 0px;
}
.targetAction:focus-visible {
  outline-offset: 3px;
}
.cartModal {
  margin-left: auto;
  height: 100vh;
  height: 100dvh;
  width: 500px;
  z-index: 8;
}
@media screen and (max-width: 47.99em) {
  .cartModal {
    width: 100%;
  }
}
.cartModal .wrapper {
  padding: 0;
}
.cartModal .wrapper .content {
  height: 100%;
  width: 100%;
  border-radius: 0;
  display: flex;
  flex-direction: column;
}
.cartModal .wrapper .content .header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 12px 12px 12px 24px;
  border-bottom: 0.75px solid #e5e5e5;
  font-size: 20px;
  font-weight: 700;
}
.cartModal .wrapper .content .header .cartPictureAndLabel {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.cartModal .wrapper .content .header .cartPictureAndLabel .cartIcon {
  color: var(--ds-icon-action, var(--tsw-primary-color));
  display: flex;
  align-items: center;
  width: 20px;
  height: 20px;
  padding: 6px;
  border-radius: 50%;
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-25));
}
.cartModal .wrapper .content .header .cartPictureAndLabel .cartIcon svg path {
  stroke-width: 2;
}
.cartModal .wrapper .content .cart {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  background-color: #fff;
  flex: 1;
  min-height: 0;
}
.cartModal .wrapper .content .cart .body {
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
}
.cartModal .wrapper .content .cart .body .paddedContent {
  overflow-y: auto;
  padding: 24px;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.cartModal .wrapper .content .cart .body .paddedContent .upsellContainer {
  margin-top: auto;
  padding-top: 24px;
  margin-left: -24px;
  margin-right: -24px;
  padding-left: 24px;
  padding-right: 24px;
}
.cartModal
  .wrapper
  .content
  .cart
  .body
  .paddedContent
  .upsellContainer.hasItems {
  border-top: 0.75px solid #e5e5e5;
}
.cartModal .wrapper .content .cart .footer {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 24px;
  border-top: 0.75px solid #e5e5e5;
}
.cartData {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
}
@media screen and (max-height: 34.5em) {
  .cartData {
    min-height: 0px;
  }
}
.cartData .items {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: 1;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.cartData .items::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.cartData .items ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
}
.cartData .items .emptyCart {
  padding: 36px 0;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #818181;
}
.cartData .items .item {
  padding-bottom: 24px;
  display: table;
  width: 100%;
}
.cartData .items .item .quantity {
  display: table-cell;
  padding-right: 16px;
  line-height: 21px;
  white-space: nowrap;
  width: 0.1%;
}
.cartData .items .item .details {
  width: 100%;
}
.cartData .items .item .details .name {
  line-height: 21px;
  font-size: 16px;
  font-weight: 400;
  font-family: inherit;
}
.cartData .items .item .details .itemActions {
  display: flex;
  gap: 24px;
}
.cartData .items .item .details .itemActions .itemAction {
  margin: 8px 0;
  padding: 0px;
  border: none;
  background-color: transparent;
  color: #2b4fb9;
  font-weight: 500;
}
.cartData .items .item .details .itemActions .itemAction:hover {
  color: var(--tsw-primary-hover-color);
  cursor: pointer;
}
.cartData .items .item .details .itemActions .itemAction:focus-visible {
  outline-offset: 2px;
}
.cartData .items .item .fractional {
  padding: 4px 0;
  font-weight: 500;
}
.cartData .items .item .mods {
  color: #666;
  font-size: 12px;
}
.cartData .items .item .mods .mod {
  padding: 2px 0;
  line-height: 14px;
  display: flex;
  align-items: center;
}
.cartData .items .item .mods .mod .quantity {
  font-weight: 600;
  padding-right: 0;
  width: 21px;
}
.cartData .items .item .rightColumn {
  display: table-cell;
  text-align: end;
}
.cartData .items .item .price {
  font-size: 16px;
  line-height: 21px;
  min-width: 85px;
  text-align: right;
}
.cartData .actions {
  display: table-cell;
  -moz-column-span: 2;
  column-span: 2;
}
.row {
  display: table-row;
  justify-content: space-between;
}
.row .cell {
  display: table-cell;
}
.row .emptyCell {
  display: table-cell;
  -moz-column-span: 1;
  column-span: 1;
}
.row.loading {
  display: block;
}
.cart-flex-row {
  display: flex;
  justify-content: space-between;
  flex: 1;
}
.prices {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0;
  font-size: 14px;
}
.prices .row {
  line-height: 1.3rem;
}
.checkoutButton {
  border-radius: 32px;
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  width: 100%;
  height: 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: none;
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  padding: 8px 24px;
}
.checkoutButton:hover {
  background-color: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
  cursor: pointer;
}
.targetAction {
  background: transparent;
}
.checkoutButtonAction:focus-visible {
  outline-offset: 2px;
  outline-style: auto;
  outline-width: 2px;
  -moz-outline-radius: 2px;
}
.discountedPrice {
  text-decoration: line-through;
  color: gray;
}
.emptyCart {
  text-align: center;
}
.emptyCart .checkoutSection {
  padding: 24px;
}
.offerStatusWrapper {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  color: inherit;
  font-weight: 400;
  width: 100%;
}
.offerStatusWrapper .loadingSkeleton {
  display: flex;
}
.offerStatusWrapper:disabled,
.offerStatusWrapper.disabled {
  cursor: default;
}
.offerStatusWrapper :focus {
  outline: auto;
}
.offerStatusWrapper .offerStatus {
  width: 100%;
  height: 36px;
  display: flex;
  flex-direction: row;
  border: 1px 0px 0px 0px solid #e5e5e5;
  color: var(--ds-text-on-bg-primary-subtle, var(--tsw-primary-hover-color));
  font-size: small;
  line-height: 24px;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  background-color: var(
    --ds-background-primary-subtle,
    var(--tsw-primary-color-25)
  );
}
.offerStatusWrapper .offerStatus.applied {
  background-color: #e7f7e6;
  color: #408140;
}
.offerStatusWrapper .offerStatus .offerDesc {
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: center;
  font-weight: 500;
}
.offerStatusWrapper .offerStatus .tagIcon {
  height: 24px;
  width: 24px;
}
@media (max-width: 450px) {
  .modal .offerItemModalWrapper {
    padding: 0;
  }
}
.modal .offerItemModal {
  height: 75%;
  width: 40%;
  border-radius: 8px;
  overflow-y: auto;
}
@media (min-width: 450px) {
  .modal .offerItemModal.fullMenuModal {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
@media (max-width: 450px) {
  .modal .offerItemModal {
    border-radius: 0;
    height: 100%;
    width: 100%;
  }
}
.modal .offerItemModal .header {
  width: 100%;
  display: flex;
  justify-content: end;
}
.modal .offerItemModal .content {
  border-top: 1px solid #e5e5e5;
  padding: 16px 24px;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.modal .offerItemModal .content .menuGroupHeader {
  color: #646464;
  font-size: 10px;
  font-weight: 600;
  line-height: 10px;
  padding-top: 48px;
  text-transform: uppercase;
}
.modal .offerItemModal .content .menuGroupList {
  list-style-type: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 18px;
  font-weight: 600;
  padding-top: 8px;
  padding-left: 0;
  border: 0.75px solid rgba(0, 0, 0, 0.12);
  border-radius: 8px;
}
.modal .offerItemModal .content .menuGroupList li:not(:last-child) {
  border-bottom: 0.75px solid #cecece;
}
.modal .offerItemModal .content .menuGroupList li {
  font-size: 16px;
  text-align: center;
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 24px;
  padding: 24px 0px;
}
.modal .offerItemModal .content .menuGroupList li button {
  background: none;
  font: inherit;
  cursor: pointer;
  color: inherit;
  font-weight: 400;
  border: 1px solid #cdcece;
  padding: 4px 24px;
  border-radius: 8px;
}
.modal .offerItemModal .content .menuGroupList li button :focus {
  outline: auto;
}
.modal .offerItemModal .content .fullMenuOffer {
  padding-top: 24px;
  padding-bottom: 8px;
}
.offerItemsGrid {
  display: grid;
  gap: 12px;
  padding-top: 36px;
  grid-template-rows: 1fr auto;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 63.99em) {
  .offerItemsGrid {
    grid-template-columns: 1fr 1fr;
  }
}
.offerItem {
  background: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  color: inherit;
  display: flex;
  flex-direction: column;
  width: 100%;
  overflow: hidden;
  text-align: left;
  border: 0.75px solid #e0e0e0;
  border-radius: 8px;
  box-shadow: 0 2px 4px 0 #e0e0e0, 0 0 6px 0 #00000005;
}
.offerItem.outOfStock {
  cursor: not-allowed;
  opacity: 66%;
}
.offerItem.borderStrokeNone {
  border: none;
}
.offerItem.borderStrokeExaggerated {
  border: 2px solid #e0e0e0;
}
.offerItem .image {
  position: relative;
  display: flex;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  width: 100%;
}
.offerItem .image .imgWrapper {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 1/1;
}
.offerItem .image .imgGradient {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  background: linear-gradient(
    45deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.0130646008) 60%,
    black 100%
  );
  border-radius: inherit;
}
.offerItem .textContent {
  display: flex;
  flex-direction: column;
  padding: 16px 12px;
  height: 100%;
  justify-content: space-between;
}
.offerItem .textContent .titleContainer {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  text-overflow: ellipsis;
  overflow: hidden;
}
.offerItem .textContent .titleContainer .title {
  font-size: 14px;
  font-weight: 600;
  color: #000;
}
.offerItem .textContent .priceContainer {
  display: flex;
  flex-direction: row;
  gap: 6px;
}
.offerItem .textContent .priceContainer .price {
  font-size: 12px;
  font-weight: 400;
  color: #7a7a7a;
  text-decoration: line-through;
}
.offerItem .textContent .priceContainer .price.free {
  text-decoration: none;
}
.offerItem .textContent .itemTag {
  font-size: 8px;
}
.offerItem.roundedCornerNone {
  border-radius: 1px;
}
.offerItem.roundedCornerExaggerated {
  border-radius: 20px;
}
.offerItem.dropShadowNone {
  box-shadow: none;
}
.offerItem.dropShadowExaggerated {
  box-shadow: 0 4px 8px 0 #0000000f, 0 0 4px 0 #0000000a;
}
.offerItem:hover {
  box-shadow: 0 0 35px rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
.percentBar {
  height: 6px;
  background-color: var(
    --ds-background-primary-subtle-focus,
    var(--tsw-primary-color-50)
  );
}
.percentBar .percentFill {
  background-color: var(--ds-background-primary, var(--tsw-primary-color-75));
  height: 100%;
  border-top-right-radius: 24px;
  border-bottom-right-radius: 24px;
}
.appliedInput {
  position: relative;
}
.appliedInput .appliedInputValue {
  height: 36px;
  line-height: 36px;
}
.customInputWrapper {
  display: flex;
  flex-direction: row;
}
.customInputWrapper .inputButton {
  all: unset;
  align-self: flex-start;
  height: 62px;
  font-weight: 700;
  transition: all 0.2s ease;
  margin-left: 12px;
  color: rgba(0, 0, 0, 0.12);
}
.customInputWrapper .inputButton.active {
  cursor: pointer;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
}
.checkoutErrorModalContent {
  padding: 24px;
  max-width: 540px;
}
.checkoutErrorModalContent .header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.checkoutErrorModalContent .header h3 {
  font-size: 20px;
  line-height: 20px;
  font-weight: 400;
}
.checkoutErrorModalContent .header .closeButton {
  margin: 0;
  padding: 8px;
}
.checkoutErrorModalContent .body {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.checkoutErrorModalContent .body .buttonContainer {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.checkoutErrorModalContent .body .buttonContainer > * {
  min-width: 200px;
  display: flex;
  justify-content: center;
  font-size: 16px;
  padding: 0;
}
.checkoutErrorModalContent .body .buttonContainer > *.proceed {
  background: var(--ds-background-primary, var(--tsw-primary-color));
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  display: flex;
  align-items: center;
}
.checkoutErrorModalContent .body .buttonContainer > *.proceed:hover {
  background: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
}
.checkoutErrorModalContent .body .buttonContainer > *.cancel {
  border: none;
  background: none;
  color: var(--ds-text-on-error-secondary);
}
.checkoutForm {
  position: relative;
  margin: 24px auto 50px;
  max-width: 540px;
}
.checkoutForm .checkoutFormContents {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.checkoutForm .note {
  font-size: 10px;
  line-height: 12px;
  color: #6e6e6e;
  padding-bottom: 2px;
  text-align: left;
}
.checkoutForm .note a {
  color: #6e6e6e;
  text-decoration: underline;
}
.checkoutForm .checkoutNote {
  margin-top: 20px;
}
.checkoutForm .submitButton {
  border-radius: 32px;
  margin-bottom: 8px;
  width: 100%;
}
.checkoutForm .submitButton:disabled {
  cursor: default;
  color: #000;
  background-color: #d3d3d3;
}
.checkoutForm .submitError {
  margin-top: 10px;
  text-align: center;
  color: #c42b44;
}
.checkoutForm .submitError a {
  text-decoration: underline;
}
.checkoutForm .toastLogo {
  margin: 40px;
}
.checkoutForm .option .showInput {
  padding-left: 0;
}
.checkoutForm .loadingSpinnerOverlay {
  z-index: 5;
}
.whiteBackground {
  background-color: #fff;
}
.internationalPaymentContainer {
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.internationalPaymentHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 24px;
  padding: 18px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  font-weight: 600;
  font-size: 18px;
  cursor: pointer;
}
.internationalPaymentHeader .controlIcon {
  transition: all 0.15s ease-in;
}
.internationalPaymentHeader .controlIcon.rotated {
  transform: rotate(90deg);
}
.internationalPaymentHeader .controlIcon.rotatedUp {
  transform: rotate(270deg);
}
.internationalPaymentHeader .controlIcon.rotatedDown {
  transform: rotate(90deg);
}
.checkoutSection {
  background-color: #fff;
  color: #252525;
  font-size: 18px;
  line-height: 18px;
}
.checkoutSection.shadowBoxes {
  padding: 32px;
  border-radius: 8px;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
}
.checkoutSection.currentSection {
  box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.15);
}
.checkoutSection .rxNameDivider {
  margin-top: 24px;
  margin-bottom: 24px;
}
.checkoutSection
  .checkoutFulfillmentSection
  .headerContainer
  .diningOptionDetails {
  font-size: 18px;
  font-weight: 600;
}
.checkoutSection .checkoutFulfillmentSection .headerContainer button {
  font-size: 16px;
  font-weight: 700;
}
.checkoutSection .formInput input {
  font-size: 18px;
  line-height: 18px;
}
@media screen and (max-width: 47.99em) {
  .checkoutSection {
    font-size: 16px;
    line-height: 16px;
  }
  .checkoutSection.shadowBoxes {
    padding: 24px;
  }
}
.checkoutSection .checkoutSectionHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  font-size: 18px;
  margin: 12px 0;
  line-height: 24px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.checkoutSection .checkoutSectionHeader.collapsable {
  cursor: pointer;
  padding: 4px 0;
}
.checkoutSection .checkoutSectionHeader .controlIcon {
  transition: all 0.15s ease-in;
}
.checkoutSection .checkoutSectionHeader .controlIcon.rotated {
  transform: rotate(90deg);
}
.checkoutSection .checkoutSectionHeader .controlIcon.rotatedUp {
  transform: rotate(270deg);
}
.checkoutSection .checkoutSectionHeader .controlIcon.rotatedDown {
  transform: rotate(90deg);
}
.checkoutSection .checkoutSectionHeader .controlIcon:after {
  font-family: Tahoma !important;
  content: "â€º";
}
.checkoutSection .checkoutSectionHeader.disabled {
  cursor: default;
}
.checkoutSection .subHeader {
  font-size: 22px;
  line-height: 21px;
  font-weight: 700;
  margin: 5px 0;
  margin-bottom: 4px;
}
.checkoutSection .fixedSection {
  position: relative;
  padding-top: 10px;
}
.checkoutSection .sectionRow {
  display: flex;
  align-items: center;
  font-size: 18px;
  line-height: 18px;
  margin-bottom: 8px;
}
.checkoutSection .sectionRow .icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-around;
  height: 24px;
  width: 24px;
  margin-right: 8px;
}
.checkoutSection .sectionRow .icon .cardLogo {
  width: 24px;
}
.checkoutSection .sectionButton {
  text-align: right;
  margin-top: 10px;
}
@media screen and (max-width: 47.99em) {
  .checkoutSection .sectionButton {
    text-align: center;
  }
  .checkoutSection .sectionButton button {
    width: 100%;
  }
}
.checkoutSection .sectionButton button {
  padding: 0 20px;
  height: 40px;
  border-radius: 20px;
  border: none;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1rem;
  line-height: 1.25;
}
.checkoutSection .sectionButton button:disabled {
  cursor: default;
  background-color: #e7eaf6;
}
.checkoutSection .sectionButton button:not(:disabled) {
  cursor: pointer;
  color: var(--tsw-primary-contrasting-color);
}
.checkoutSection .acceptedPaymentMethods {
  margin-top: 24px;
  margin-bottom: 12px;
}
.checkoutSection .acceptedPaymentMethods .paymentMethodLogos {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}
.checkoutSection .acceptedPaymentMethods .paymentMethodLogos img {
  margin-right: 2px;
}
.checkoutSection .acceptedPaymentMethods .checkoutSurchargeDisclaimer {
  font-size: 12px;
  line-height: 16px;
  color: #666;
  margin-top: 8px;
}
.checkoutSection .separator {
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.checkoutSection .separator.top {
  margin-top: 16px;
}
.checkoutSection .separator.bottom {
  margin-bottom: 16px;
}
.checkoutSection .logInLink {
  cursor: pointer;
  color: #2b4fb9;
  font-weight: 500;
  align-self: center;
}
.checkoutFulfillmentSection {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.checkoutFulfillmentSection .primaryContainer {
  display: flex;
  flex-direction: row;
}
.checkoutFulfillmentSection .headerContainer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.checkoutFulfillmentSection .headerContainer .diningOptionDetails {
  font-size: 20px;
  font-weight: 400;
  color: #252525;
}
.checkoutFulfillmentSection .headerContainer .loadingSkeleton {
  width: 150px;
  height: 100%;
  border-radius: 0;
}
.checkoutFulfillmentSection .headerContainer button {
  background: none;
  border: none;
  color: var(--ds-text-action, #252525);
  padding: 0;
  font: inherit;
  cursor: pointer;
  font-weight: 600;
}
.checkoutFulfillmentSection ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.checkoutFulfillmentSection ul li:not(:last-child) {
  border-bottom: 1px solid #e5e5e5;
}
.checkoutFulfillmentSection ul li:last-child {
  padding-bottom: 0;
}
.checkoutFulfillmentSection ul li {
  padding: 16px 16px 16px 0;
}
@media screen and (max-width: 47.99em) {
  .checkoutFulfillmentSection ul li {
    padding-right: 0px;
  }
}
.checkoutFulfillmentSection ul li .deliveryCheckboxContainer {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.checkoutFulfillmentSection ul li .deliveryCheckboxContainer .inputFieldInner {
  width: 100%;
}
.checkoutFulfillmentSection ul li button,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer) {
  display: flex;
  flex-direction: row;
  background: none;
  border: none;
  font: inherit;
  gap: 12px;
  align-items: center;
  width: 100%;
  padding: 0;
}
.checkoutFulfillmentSection ul li button:disabled,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):disabled {
  pointer-events: none;
}
.checkoutFulfillmentSection ul li button .subtitleText,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  .subtitleText {
  font-size: 14px;
  font-weight: 400;
  color: #666;
}
.checkoutFulfillmentSection ul li button span:has(*),
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  span:has(*) {
  width: 100%;
}
.checkoutFulfillmentSection ul li button span:has(*) .loadingSkeleton,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  span:has(*)
  .loadingSkeleton {
  width: 100%;
  height: 100%;
  border-radius: 0;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString),
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString) {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 4px;
  font-size: 16px;
  font-weight: 600;
  color: #252525;
  min-width: 0;
  flex: 1;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .deliveryAddressSummary,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .deliveryAddressSummary {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  max-width: 100%;
  text-align: left;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails {
  width: 100%;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  .hidden-sm-up,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  .hidden-sm-up {
  display: none;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div {
  width: 100%;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div
  div,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div
  div {
  width: 100%;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div
  div
  label,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div
  div
  label {
  width: 100%;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div
  div
  label
  input,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString).takeoutDetails
  div
  div
  label
  input {
  width: 100%;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .subtitleText,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .subtitleText {
  font-size: 14px;
  font-weight: 400;
  color: #252525;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .bold,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .bold {
  font-weight: 600;
  font-size: 16px;
  color: #252525;
}
.checkoutFulfillmentSection
  ul
  li
  button
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .gray,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer):not(.fulfillmentTimeString)
  .gray {
  font-size: 14px;
  font-weight: 400;
  color: #666;
}
.checkoutFulfillmentSection ul li button .chevron,
.checkoutFulfillmentSection
  ul
  li
  div:not(.animated):not(.inputFieldInner):not(.inputMessage):not(.deliveryCheckboxContainer)
  .chevron {
  margin-left: auto;
}
.checkoutFulfillmentSection ul li .loadingSkeleton {
  width: 100%;
  height: 41.5px;
}
.checkoutMode {
  padding: 10px 0;
  cursor: default;
}
.checkoutMode.narrowSpacing {
  padding: 6px 0;
}
.checkoutMode button {
  cursor: pointer;
}
.checkoutMode button:disabled {
  cursor: default;
  border: 2px solid silver;
}
.checkoutMode .toastCheckout,
.checkoutMode .guestCheckout,
.checkoutMode .borderedGuestCheckout,
.checkoutMode .applePayCheckout {
  text-align: center;
  width: 100%;
  background-color: transparent;
}
.checkoutMode .toastCheckout,
.checkoutMode .applePayCheckout {
  border: 2px solid #252525;
  padding: 8px;
}
.checkoutMode .toastCheckout {
  background-color: #252525;
  color: #fff;
}
.checkoutMode .note {
  margin: 8px 0;
}
.checkoutMode .guestCheckout {
  padding: 12px 0 12px 0;
  border: 0;
}
.checkoutMode .guestCheckout .text {
  color: #2b4fb9;
}
.checkoutMode .borderedGuestCheckout {
  padding: 8px 0;
  border: 1.5px solid #252525;
  border-radius: 32px;
}
.checkoutMode .borderedGuestCheckout .text {
  color: #252525;
}
.checkoutMode .text {
  font-weight: 500;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.checkoutMode .text img {
  height: 20px;
  vertical-align: text-top;
  margin-right: 5px;
}
.checkoutSection .completeAccount {
  padding-bottom: 16px;
}
.checkoutSection .createAccountLabel img,
.checkoutSection .helpText img {
  padding: 0 3px;
  height: 16px;
  vertical-align: top;
}
.checkoutSection .createAccountCheckbox {
  margin-top: 12px;
  font-size: 16px;
}
.checkoutSection .createAccountCheckbox .checkboxContainer {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.checkoutSection .createAccountCheckbox .checkboxContainer .option {
  width: unset;
}
.checkoutSection .createAccountCheckbox .checkboxContainer .createAccountLabel {
  display: flex;
  flex-direction: row;
}
.checkoutSection
  .createAccountCheckbox
  .checkboxContainer
  .createAccountLabel
  .imageContainer {
  height: 16px;
  padding-left: 4px;
}
.checkoutSection .createAccountCheckbox .checkboxContainer .loadingWrapper {
  display: flex;
  justify-content: center;
  padding-right: 16px;
}
.checkoutSection .completedInfo {
  margin-top: 24px;
}
.checkoutSection .yourInfoHeader {
  display: flex;
  justify-content: space-between;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.checkoutSection .editLink {
  cursor: pointer;
  border: 0;
  border-radius: 0;
  background-color: #fff;
  color: #2b4fb9;
  font-size: 16px;
  font-weight: 500;
  align-self: center;
}
.checkoutSection .yourInfoContainer {
  position: relative;
}
.checkoutSection .yourInfoContainer .updateLinkContainer {
  position: absolute;
  right: 0;
  top: 12px;
}
.line {
  width: 100%;
  text-align: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  line-height: 0.1em;
  margin: 20px 0;
}
.line .lineText {
  color: #666;
  background: #fff;
  padding: 0 10px;
}
.subheading {
  font-size: 16px;
  letter-spacing: 0.2px;
  margin-top: 25px;
}
.checkoutModeButtonGroup {
  padding: 10px 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.checkoutModeButtonGroup > * {
  padding: 0;
}
.checkoutSection hr {
  margin: 16px 0;
}
.checkoutSection .fulfillmentDeliveryPreferences {
  margin-top: 20px;
}
.checkoutSection .fulfillmentDeliveryPreferences .saveAddrCheckbox,
.checkoutSection .fulfillmentDeliveryPreferences .contactlessCheckbox {
  padding-left: 2px;
}
.checkoutSection .contactlessCheckbox:has(+ .saveAddrCheckbox) {
  margin-bottom: 12px;
}
.checkoutSection .addressLabel {
  margin-top: 12px;
}
.checkoutSection .diningOptionsLink {
  cursor: pointer;
  float: right;
  padding: 0 0 16px 0;
  border: 0;
  border-radius: 0;
  background-color: #fff;
  color: #2b4fb9;
  font-size: 16px;
  font-weight: 500;
}
.checkoutSection .mapFrame {
  height: 145px;
  margin: 0 0 12px 0;
}
.checkoutSection .curbsidePickupVehicle {
  margin-top: 8px;
}
.checkoutSection .curbsideText {
  font-size: 16px;
  line-height: 16px;
  padding-bottom: 1px;
}
.checkoutSection .curbsideText .bold {
  font-weight: 600;
}
.checkoutSection .curbsideText .gray {
  color: #6e6e6e;
}
.loyaltyRedemption {
  line-height: 24px;
}
.loyaltyRedemption .redemptions {
  position: relative;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.loyaltyRedemption .redemptions button.redemption {
  all: unset;
  display: flex;
  align-items: center;
  padding: 6px 8px;
  border-radius: 24px;
  background-color: #f0f0f0;
  line-height: 20px;
  white-space: nowrap;
}
.loyaltyRedemption .redemptions button.redemption.added {
  color: #fff;
  background-color: #5069c3;
  font-weight: 500;
}
.loyaltyRedemption .redemptions button.redemption:not(.loading) {
  cursor: pointer;
}
.loyaltyRedemption .redemptions button.redemption img {
  vertical-align: bottom;
  padding-right: 4px;
}
.loyaltyRedemption button.consentButton {
  background: transparent;
  border: 2px solid var(--tsw-primary-color);
  color: var(--tsw-primary-color);
  margin-top: 24px;
}
.loyaltyRedemption .errorHeader {
  font-size: 16px;
  font-weight: 600;
  color: #c42b44;
}
.loyaltyRedemption .loyaltyConsentContent {
  font-size: 14px;
}
.loyaltyRedemption .loyaltyLoading .react-loading-skeleton {
  margin-bottom: 8px;
}
.loyaltyRedemption .popover {
  display: inline-block;
  height: 24px;
  width: 24px;
  position: absolute;
}
.loyaltyRedemption .popover .loyaltyConsentTooltipContent {
  white-space: nowrap;
  padding: 8px 24px;
}
.loyaltyRedemption .popover .loyaltyInfoButton {
  padding: 0;
  height: 24px;
  width: 24px;
  background: none;
  border: none;
}
.loyaltyRedemption .popover .loyaltyInfoButton img {
  height: 24px;
  width: 24px;
}
.loyaltyRedemption .header {
  font-size: 16px;
  font-weight: 600;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
}
button.lockedRedemptionButton {
  all: unset;
  display: block;
  width: 100%;
  border: 1px solid #eaecf1;
  background-color: transparent;
  margin-top: 16px;
}
button.lockedRedemptionButton .lockedLoyaltyRedemption {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 8px 12px 18px;
  border-radius: 4px;
  line-height: 18px;
  color: silver;
}
button.lockedRedemptionButton .lockedLoyaltyRedemption .textContainer {
  display: flex;
  flex-direction: column;
}
button.lockedRedemptionButton
  .lockedLoyaltyRedemption
  .textContainer
  .lockedHeader {
  font-size: 18px;
  font-weight: 400px;
}
button.lockedRedemptionButton .lockedLoyaltyRedemption .textContainer .message {
  font-size: 13px;
}
.marketingCheckbox {
  margin-top: 12px;
}
.marketingCheckbox .subtitle {
  color: #666;
  font-size: 16px;
  line-height: 16px;
}
.cartOrder {
  flex: 1;
  padding-bottom: 10px;
}
.cartOrder.expandableSection .cartData {
  min-height: unset;
}
.cartOrder.expandableSection .cartData .items {
  padding: 0;
}
.cartOrder .cartData {
  max-height: none;
}
.cartOrder .cartData .items {
  padding: 16px 0;
}
.cartOrder .cartData .items ul {
  list-style: none;
}
.cartOrder .cartData .items .item {
  padding: 5px 0;
  border-top: none;
}
.cartOrder .cartData .items .item .details h3,
.cartOrder .cartData .items .price {
  font-size: 16px;
  font-weight: 400;
}
.cartOrder .cartData .items .mod {
  display: inline-block;
  margin-right: 3px;
}
.cartOrder .cartData .items .mod::after {
  content: ", ";
}
.cartOrder .cartData .items .mod:last-child::after {
  content: "";
}
.cartOrder .prices {
  padding: 4px 0;
  line-height: 21px;
  box-shadow: none;
}
.addItemsIcon {
  vertical-align: middle;
}
.addItemsButton {
  text-align: center;
  padding: 8px;
  color: #252525;
}
.addItemsButton span {
  padding-left: 8px;
}
.packagingOptionsSelector .packagingOptionsGuestMessage {
  font-size: 16px;
  color: #252525;
}
.packagingOptionsSelector ul {
  list-style-type: none;
  padding: 0;
}
.packagingOptionsSelector ul li {
  margin-bottom: 16px;
}
.packagingOptionsSelector ul li p {
  font-size: 16px;
}
.packagingOptionsSelector .packagingItemDescription {
  font-size: 14px;
  line-height: 1.5;
  color: #6e6e6e;
}
.creditCardFormSpi {
  margin: -8px;
}
.creditCardFormSpi .disabledOverlay {
  pointer-events: none;
  opacity: 0;
  background-color: rgba(255, 255, 255, 0.75);
}
.creditCardFormSpi .disabledOverlay.enabled {
  opacity: 1;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  pointer-events: initial;
}
.creditCardFormSpi .disabledWrapper {
  display: grid;
}
.creditCardFormSpi .disabledWrapper > * {
  grid-area: 1/1;
}
.creditCardModalContent {
  padding: 16px;
  max-width: 540px;
}
.creditCardModalContent .header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.creditCardModalContent .header h3 {
  padding: 8px 0;
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
}
.creditCardModalContent .header .closeButton {
  margin: 0 8px;
}
.creditCardModalContent .note {
  font-size: 10px;
  line-height: 12px;
  color: #6e6e6e;
  margin-top: 5px;
}
.creditCardModalButton {
  cursor: pointer;
  padding: 0 20px;
  margin: 0 auto 20px;
  height: 40px;
  width: 200px;
  border-radius: 20px;
  border: none;
  color: #fff;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1rem;
  line-height: 1.25;
}
.creditCardModalButton:disabled {
  background-color: #e7eaf6;
  color: #6e6e6e;
  cursor: default;
}
.discountsSection {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.discountsSection .header {
  font-weight: normal;
  line-height: 20px;
  color: #646464;
  font-size: 14px;
  padding-bottom: 12px;
}
.discountsSection .offerPills {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding-bottom: 12px;
}
.discountPill {
  background: none;
  padding: 6px 12px 6px 8px;
  font: inherit;
  cursor: pointer;
  outline: inherit;
  border-width: 0.75px;
  border-color: rgba(0, 0, 0, 0.16);
  border-radius: 50px;
  color: #646464;
  height: 40px;
  line-height: normal;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.discountPill .discountText {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  text-align: left;
  font-size: 16px;
}
.discountPill .discountText.smallerText {
  font-size: 14px;
}
.discountPill:not(.active, .locked, .buttonPill) {
  border-style: dashed;
  border-width: 1px;
}
.discountPill.active {
  border-style: solid;
  background-color: #e7f7e6;
  padding-right: 6px;
}
.discountPill.locked {
  border-style: solid;
  opacity: 0.5;
  cursor: default;
}
.discountPill .tagIcon {
  border-radius: 50px;
  height: 28px;
  width: 28px;
  min-width: 28px;
  background-color: var(--tsw-primary-color-25);
  display: flex;
  justify-content: center;
  align-items: center;
}
.discountPill .activeActions {
  display: flex;
  align-items: center;
  padding-left: 4px;
}
.discountPill .activeActions .closeIcon {
  height: 28px;
  width: 28px;
  min-width: 28px;
  display: flex;
  align-items: center;
  margin-left: 8px;
}
.discountPill .checkContainer {
  border-radius: 50px;
  height: 28px;
  width: 28px;
  min-width: 28px;
  background-color: #408140;
  display: flex;
  justify-content: center;
  align-items: center;
}
.discountPill .checkContainer .checkIcon {
  height: 17px;
  width: 17px;
}
.discountPill.buttonPill {
  align-items: center;
  color: #2b4fb9;
  border-style: solid;
  padding: 0 16px;
  border-width: 0.75px;
}
.discountPill .divider {
  height: 20px;
  width: 1px;
  opacity: 0.65;
  background: linear-gradient(
    rgba(64, 129, 64, 0) 0%,
    rgba(64, 129, 64, 0.4) 25%,
    rgba(64, 129, 64, 0.6) 50%,
    rgba(64, 129, 64, 0.4) 74.5%,
    rgba(64, 129, 64, 0) 100%
  );
}
.buttonContainer {
  display: flex;
  flex-direction: row;
  gap: 10px;
}
.discountsModal {
  border-top: #0000001f 0.75px solid;
  display: flex;
  flex-direction: column;
  padding: 16px 32px 32px 32px;
  max-width: 450px;
}
@media screen and (min-width: 768px) {
  .discountsModal {
    min-width: 400px;
  }
}
.discountsModal .header {
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
  padding-bottom: 8px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.discountsModal p {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #646464;
}
.discountsModal .inputContainer {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  margin-top: 16px;
}
.discountsModal .inputContainer .discountsModalInput {
  width: 100%;
  border-radius: 8px;
  border: 1px solid #cecece;
  box-sizing: border-box;
  font-size: 16px;
}
.discountsModal .inputContainer .legal {
  text-align: center;
  font-size: 12px;
}
.discountsModal .inputContainer .legal a {
  text-decoration: underline;
  color: unset;
}
.discountsModal .buttonContainer {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-self: flex-end;
  justify-content: flex-end;
  padding-top: 10px;
}
.discountsModal .modalButton {
  width: 100%;
  justify-content: center;
}
.discountsModal .modalButton.disabled {
  opacity: 0.4;
  filter: none;
}
.discountsModal .modalButton.confirm {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.discountsModal .modalButton.cancel {
  background-color: #fff;
  color: #1e1f24;
  border: 1px solid #cdced7;
  width: 30%;
}
.closeModalButton {
  color: #646464;
  align-self: flex-end;
  margin-right: 4px;
}
.fundraisingSelector .fundraisingTitle {
  margin-bottom: 8px;
}
.fundraisingSelector .fundraisingInfo {
  display: flex;
  justify-content: space-between;
}
.fundraisingSelector .fundraisingInfo.padded {
  margin: 24px 0;
}
.fundraisingSelector .fundraisingInfo .campaignName {
  font-weight: bold;
  font-size: 16px;
  color: #252525;
}
.fundraisingSelector .fundraisingInfo .causeParentName {
  font-size: 14px;
}
.fundraisingSelector .fundraisingInfo .campaignDescription {
  font-size: 14px;
  margin-top: 12px;
  margin-bottom: 16px;
  color: #252525;
}
.fundraisingSelector .fundraisingInfo div:first-child {
  margin-right: 8px;
}
.fundraisingSelector .campaignDisclosure {
  font-size: 12px;
  line-height: 1.5;
  color: #6e6e6e;
  margin: 16px 0;
}
.fundraisingSelector .campaignDisclosure a {
  color: #2b4fb9;
}
.fundraisingSelector .flat-rate-amounts {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  gap: 8px;
}
.fundraisingSelector .flat-rate-amounts .flat-rate-amount {
  flex: 1;
  text-align: center;
  min-height: 45px;
  border-radius: 8px;
  background-color: #f0f0f0;
  border: none;
  font-size: 14px;
  cursor: pointer;
}
.fundraisingSelector .flat-rate-amounts .flat-rate-amount.selected {
  color: #fff;
  background-color: #2b4fb9;
}
.giftCardAndPinWrapper {
  display: flex;
  flex-direction: row;
  width: 100%;
}
.giftCardWrapper {
  flex-grow: 3;
  width: 75%;
  margin-right: 24px;
}
.giftCardPinWrapper {
  flex-grow: 0;
  width: 25%;
}
.payment .subSection,
.payment .appliedInput {
  margin: 12px 0;
}
.payment .note {
  margin-top: 5px;
}
.payment .changePaymentLink {
  text-align: center;
}
.payment .creditCardForm {
  touch-action: none;
}
.paymentTabs {
  display: flex;
  flex-direction: row;
}
.paymentTabs button {
  flex: 1;
  background-color: #fff;
  border: 0;
  padding: 12px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25;
  font-size: 16px;
}
.paymentTabs button.selected {
  border-bottom: 3px solid var(--tsw-white-contrasting-color);
}
.paymentTabs button:not(.selected) {
  border-bottom: 1px solid silver;
}
.paymentButtons {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
.paymentButtons .option {
  width: auto;
  line-height: 24px;
  padding: 8px 0;
  margin: 12px 0;
}
.paymentButtons .option .appleLogo {
  vertical-align: bottom;
}
.note {
  margin-top: 6px;
}
.payAtRestaurantNote {
  margin-top: 24px;
}
.orderPrices {
  display: flex;
  flex-direction: column;
  gap: 12px;
  font-size: 16px;
  line-height: 24px;
  color: #252525;
}
.orderPrices .taxesAndFees {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.orderPrices .taxesAndFees .infoIcon {
  cursor: pointer;
}
.orderPrices .total {
  font-weight: bold;
  display: flex;
}
.orderPrices .surcharge {
  border-top: 1px solid silver;
  margin-top: 14px;
  padding-top: 24px;
}
.orderPrices .surchargeDisclaimer {
  font-size: 12px;
  line-height: 16px;
  color: #666;
}
.savedCreditCards .savedCreditCard,
.savedCreditCards .addCard {
  display: flex;
  align-items: center;
  width: auto;
  line-height: 24px;
  padding: 8px 0;
  margin: 12px 0;
}
.savedCreditCards .savedCreditCard {
  margin-bottom: 12px;
}
.savedCreditCards .savedCreditCard .savedCardRadio {
  flex-grow: 1;
}
.savedCreditCards .savedCreditCard .savedCardRadio .savedCardLabel {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
}
.savedCreditCards .savedCreditCard .savedCardRadio .savedCardLabel .cardLogo {
  width: 37px;
}
.savedCreditCards .savedCreditCard .savedCardRadio .savedCardLabel .expiration {
  margin-left: auto;
}
.savedCreditCards .savedCreditCard .editCard {
  cursor: pointer;
  padding: 0 10px 0 20px;
}
.savedCreditCards .savedCreditCard .dropDownContent {
  width: auto;
  right: 5px;
  white-space: nowrap;
}
.savedCreditCards .addCard {
  cursor: pointer;
  margin-top: 16px;
}
.savedCreditCards .addCard .plusSign {
  display: inline-block;
  width: 20px;
  margin-right: 16px;
  text-align: center;
}
.tipSelector {
  background-color: #fff;
  border-radius: 8px;
}
.tipSelector .inputLabel {
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  color: #252525;
  margin-bottom: 16px;
}
.tipSelector .inputLabel .tipSubheading {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #646464;
  margin-top: 4px;
}
.tipSelector .tipButtons .buttonGroup {
  display: grid;
  gap: 8px;
  margin-bottom: 16px;
}
.tipSelector .tipButtons .buttonGroup .tipButton {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  padding: 12px;
  cursor: pointer;
  text-align: center;
  font-size: 16px;
  line-height: 22px;
  color: #252525;
}
.tipSelector .tipButtons .buttonGroup .tipButton:hover {
  border-color: var(--ds-border-with-primary-subtle, #fb8766);
}
.tipSelector .tipButtons .buttonGroup .tipButton.selected {
  background: var(--ds-background-primary-subtle, #ffeae2);
  border-color: var(--ds-border-with-primary-subtle, #fb8766);
  color: var(--ds-text-on-bg-primary-subtle, #d34300);
}
.tipSelector .tipButtons .buttonGroup .tipButton.selected .tipAmount {
  color: var(--ds-text-on-bg-primary-subtle, #d34300);
}
.tipSelector .tipButtons .buttonGroup .tipButton .tipPercent {
  font-weight: 500;
  margin-bottom: 4px;
}
.tipSelector .tipButtons .buttonGroup .tipButton .tipAmount {
  color: #646464;
  font-size: 14px;
}
.tipSelector .tipButtons .customTipInput {
  margin-top: 16px;
}
.tipSelector.ecomm {
  padding: 16px;
  margin-top: 16px;
}
.tipSelector.ecomm .inputLabel {
  font-weight: 500;
}
.tipSelector.ecomm .tipButtons .buttonGroup .tipButton:hover {
  border-color: #2b4fb9;
}
.tipSelector.ecomm .tipButtons .buttonGroup .tipButton.selected {
  background: #2b4fb9;
  border-color: #2b4fb9;
  color: #fff;
}
.tipSelector.ecomm .tipButtons .buttonGroup .tipButton.selected .tipAmount {
  color: #fff;
}
.toastCashPaymentToggleWrapper {
  padding: 16px 8px;
  border-bottom: 1px solid #d3d3d3;
}
.toastCashPaymentToggleWrapper .toastCashPaymentToggle .toastCashIcon {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.shippingSection .shippingSectionHeader {
  margin-top: 24px;
  margin-bottom: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.shippingSection .addressInput {
  position: relative;
  z-index: 2;
}
.shippingSection .addressInput .addressInputField {
  position: relative;
  border: 1px solid #cecece;
  border-radius: 8px;
  display: flex;
  height: 56px;
  margin-bottom: 12px;
}
.shippingRatesSection {
  margin-top: 24px;
  display: flex;
}
.shippingRatesSection .loader {
  width: 100%;
  display: flex;
  justify-content: center;
}
.shippingRatesSection .shippingRates {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}
.shippingRatesSection .shippingRates .shippingRateOption {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.shippingRatesSection .shippingRates .shippingRateOption .rate {
  display: flex;
  justify-content: space-between;
  font-weight: 600;
}
.shippingRatesSection .shippingRates .shippingRateOption .estimatedDays {
  font-style: italic;
}
.checkoutFormSideBySide {
  margin: 0px auto 50px;
}
.checkoutFormSideBySide .checkoutFormContainer {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 80px;
}
@media screen and (max-width: 47.99em) {
  .checkoutFormSideBySide .checkoutFormContainer {
    align-items: center;
    flex-direction: column;
    gap: 24px;
  }
}
.checkoutFormSideBySide .checkoutFormContents {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.checkoutFormSideBySide .checkoutFormContents .fulfillmentInformation,
.checkoutFormSideBySide .checkoutFormContents .checkoutOrderSummary {
  width: 50%;
}
@media screen and (max-width: 47.99em) {
  .checkoutFormSideBySide .checkoutFormContents .fulfillmentInformation,
  .checkoutFormSideBySide .checkoutFormContents .checkoutOrderSummary {
    width: 100%;
  }
}
.checkoutFormSideBySide .checkoutFormContents .fulfillmentInformation {
  margin-top: 32px;
  max-width: 600px;
  padding-right: 64px;
}
@media screen and (max-width: 63.99em) {
  .checkoutFormSideBySide .checkoutFormContents .fulfillmentInformation {
    padding-right: 24px;
  }
}
@media screen and (max-width: 47.99em) {
  .checkoutFormSideBySide .checkoutFormContents .fulfillmentInformation {
    width: 100%;
    margin-top: 0px;
    padding-right: 0px;
  }
  .checkoutFormSideBySide
    .checkoutFormContents
    .fulfillmentInformation
    .separator,
  .checkoutFormSideBySide
    .checkoutFormContents
    .fulfillmentInformation
    .animatedSection {
    margin-left: -32px;
    margin-right: -32px;
  }
  .checkoutFormSideBySide
    .checkoutFormContents
    .fulfillmentInformation
    .animatedSection {
    background-color: rgba(0, 0, 0, 0.02);
  }
  .checkoutFormSideBySide
    .checkoutFormContents
    .fulfillmentInformation
    .animatedSectionChildrenWrapper {
    padding: 16px 32px;
  }
}
.checkoutFormSideBySide .checkoutFormContents .checkoutOrderSummary {
  max-width: 442px;
  align-self: flex-start;
  padding: 40px 32px 32px;
  margin-left: 16px;
  margin-right: 16px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 0px 0px 24px 24px;
  gap: 32px;
  position: -webkit-sticky;
  position: sticky;
}
@media screen and (max-width: 47.99em) {
  .checkoutFormSideBySide .checkoutFormContents .checkoutOrderSummary {
    border: none;
    border-radius: unset;
    box-shadow: none;
    max-width: unset;
    align-self: center;
    padding: 0px;
    margin: 0px;
    width: 100%;
  }
}
.checkoutFormSideBySide .checkoutFormContents .checkoutOrderSummary .separator,
.checkoutFormSideBySide
  .checkoutFormContents
  .checkoutOrderSummary
  .animatedSection {
  margin-left: -32px;
  margin-right: -32px;
}
.checkoutFormSideBySide
  .checkoutFormContents
  .checkoutOrderSummary
  .animatedSection {
  background-color: rgba(0, 0, 0, 0.02);
}
.checkoutFormSideBySide
  .checkoutFormContents
  .checkoutOrderSummary
  .animatedSectionChildrenWrapper {
  padding: 16px 32px;
}
.checkoutFormSideBySide
  .checkoutFormContents
  .checkoutOrderSummary
  .locationSubHeader {
  color: #646464;
}
.checkoutFormSideBySide .separatorWithText {
  display: flex;
  align-items: center;
  text-align: center;
  color: #252525;
}
.checkoutFormSideBySide .separatorWithText::before,
.checkoutFormSideBySide .separatorWithText::after {
  content: "";
  flex: 1;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.checkoutFormSideBySide .separatorWithText:not(:empty)::before {
  margin-right: 16px;
}
.checkoutFormSideBySide .separatorWithText:not(:empty)::after {
  margin-left: 16px;
}
.checkoutFormSideBySide .note {
  font-size: 10px;
  line-height: 12px;
  color: #6e6e6e;
  padding-bottom: 2px;
  text-align: left;
}
.checkoutFormSideBySide .note a {
  color: #6e6e6e;
  text-decoration: underline;
}
.checkoutFormSideBySide .checkoutNote {
  margin-top: 20px;
}
.checkoutFormSideBySide .submitButton {
  border-radius: 32px;
  margin-bottom: 8px;
  width: 100%;
}
.checkoutFormSideBySide .submitButton:disabled {
  cursor: default;
  color: #000;
  background-color: #d3d3d3;
}
.checkoutFormSideBySide .submitError {
  margin-top: 10px;
  text-align: center;
  color: #c42b44;
}
.checkoutFormSideBySide .submitError a {
  text-decoration: underline;
}
.checkoutFormSideBySide .toastLogo {
  margin: 40px;
}
.checkoutFormSideBySide .option .showInput {
  padding-left: 0;
}
.checkoutFormSideBySide .loadingSpinnerOverlay {
  z-index: 5;
}
.whiteBackground {
  background-color: #fff;
}
.whiteAndGrayBackground {
  background: linear-gradient(
    to right,
    white 0%,
    white calc(50% - 0.75px),
    #cecece 50%,
    rgba(0, 0, 0, 0.04) calc(50% + 0.75px),
    rgba(0, 0, 0, 0.04) 100%
  );
  background-color: #fff;
}
.internationalPaymentContainer {
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.internationalPaymentHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 24px;
  padding: 18px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  font-weight: 600;
  font-size: 18px;
  cursor: pointer;
}
.internationalPaymentHeader .controlIcon {
  transition: all 0.15s ease-in;
}
.internationalPaymentHeader .controlIcon.rotatedUp {
  transform: rotate(270deg);
}
.internationalPaymentHeader .controlIcon.rotatedDown {
  transform: rotate(90deg);
}
@media screen and (max-width: 47.99em) {
  .sideBySidePaddedSection {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
.checkoutSectionSideBySide {
  background-color: #fff;
  color: #252525;
  font-size: 18px;
  line-height: 18px;
}
.checkoutSectionSideBySide.shadowBoxes {
  padding: 32px;
  border-radius: 8px;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
}
.checkoutSectionSideBySide.currentSection {
  box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.15);
}
.checkoutSectionSideBySide .formInput input {
  font-size: 18px;
  line-height: 18px;
}
@media screen and (max-width: 47.99em) {
  .checkoutSectionSideBySide {
    font-size: 16px;
    line-height: 16px;
  }
  .checkoutSectionSideBySide.shadowBoxes {
    padding: 24px;
  }
}
.checkoutSectionSideBySide .shippingSectionHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.checkoutSectionSideBySide .checkoutSectionHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  font-size: 18px;
  line-height: 24px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.checkoutSectionSideBySide .checkoutSectionHeader.collapsible {
  cursor: pointer;
  margin-top: 32px;
  margin-bottom: 32px;
}
.checkoutSectionSideBySide .checkoutSectionHeader .controlIcon {
  transition: all 0.15s ease-in;
}
.checkoutSectionSideBySide .checkoutSectionHeader .controlIcon.rotated {
  transform: rotate(90deg);
}
.checkoutSectionSideBySide .checkoutSectionHeader .controlIcon.rotatedUp {
  transform: rotate(-90deg);
}
.checkoutSectionSideBySide .checkoutSectionHeader .controlIcon.rotatedDown {
  transform: rotate(90deg);
}
.checkoutSectionSideBySide .checkoutSectionHeader .controlIcon:after {
  font-family: Tahoma !important;
  content: "â€º";
}
.checkoutSectionSideBySide .checkoutSectionHeader.disabled {
  cursor: default;
}
.checkoutSectionSideBySide .checkoutSectionHeader .flexHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.checkoutSectionSideBySide .checkoutSectionHeader .headerLeft {
  display: flex;
  gap: 16px;
  align-items: center;
}
.checkoutSectionSideBySide .checkoutSectionHeader .headerLeft svg {
  vertical-align: middle;
}
.checkoutSectionSideBySide .subHeader {
  font-size: 21px;
  line-height: 21px;
  font-weight: 500;
  margin: 5px 0;
}
.checkoutSectionSideBySide .fixedSection {
  position: relative;
  padding-top: 10px;
}
.checkoutSectionSideBySide .sectionRow {
  display: flex;
  align-items: center;
  font-size: 18px;
  line-height: 18px;
  margin-bottom: 8px;
}
.checkoutSectionSideBySide .sectionRow .icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-around;
  height: 24px;
  width: 24px;
  margin-right: 8px;
}
.checkoutSectionSideBySide .sectionRow .icon .cardLogo {
  width: 24px;
}
.checkoutSectionSideBySide .sectionButton {
  text-align: right;
  margin-top: 10px;
}
@media screen and (max-width: 47.99em) {
  .checkoutSectionSideBySide .sectionButton {
    text-align: center;
  }
  .checkoutSectionSideBySide .sectionButton button {
    width: 100%;
  }
}
.checkoutSectionSideBySide .sectionButton button {
  padding: 0 20px;
  height: 40px;
  border-radius: 20px;
  border: none;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1rem;
  line-height: 1.25;
}
.checkoutSectionSideBySide .sectionButton button:disabled {
  cursor: default;
  background-color: #e7eaf6;
}
.checkoutSectionSideBySide .sectionButton button:not(:disabled) {
  cursor: pointer;
  color: var(--tsw-primary-contrasting-color);
}
.checkoutSectionSideBySide .acceptedPaymentMethods {
  margin-top: 24px;
  margin-bottom: 12px;
}
.checkoutSectionSideBySide .acceptedPaymentMethods img {
  margin-right: 2px;
}
.checkoutSectionSideBySide .separator {
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.checkoutSectionSideBySide .logInLink {
  cursor: pointer;
  color: #2b4fb9;
  font-weight: 500;
  align-self: center;
}
.checkoutSectionSideBySide:has(> .separator.bottom)
  + .checkoutSectionSideBySide:has(> .separator.bottom)
  .separator.top {
  display: none;
}
.deliverySection {
  background-color: #fff;
  border-radius: 8px;
  padding: 16px;
}
.deliverySection .addressInput {
  margin-bottom: 16px;
  position: relative;
}
.deliverySection .addressInput .addressInputField {
  width: 100%;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  padding: 12px 16px;
  color: #000;
  background-color: #fff;
  font-size: 16px;
  line-height: 22px;
}
.deliverySection .addressInput .addressInputField:focus {
  outline: none;
  border-color: #2b4fb9;
}
.deliverySection .addressInput .addressInputField:-ms-input-placeholder {
  color: #646464;
}
.deliverySection .addressInput .addressInputField::placeholder {
  color: #646464;
}
.deliverySection .addressInput .validatingOverlay {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  color: #646464;
  font-size: 14px;
}
.deliverySection .addressInputError {
  margin-bottom: 16px;
}
.deliverySection .addressInputError .error .errorMessage {
  color: #c42b44;
  background-color: #ffcdc7;
  padding: 8px 16px;
  border-radius: 6px;
}
.deliverySection .inputLabel {
  font-size: 16px;
  font-weight: 600;
  line-height: 20px;
  color: #202020;
  margin-bottom: 8px;
}
.checkoutSection hr {
  margin: 16px 0;
}
.checkoutSection .fulfillmentDeliveryPreferences {
  margin-top: 20px;
}
.checkoutSection .fulfillmentDeliveryPreferences .saveAddrCheckbox,
.checkoutSection .fulfillmentDeliveryPreferences .contactlessCheckbox {
  padding-left: 2px;
}
.checkoutSection .contactlessCheckbox:has(+ .saveAddrCheckbox) {
  margin-bottom: 12px;
}
.checkoutSection .addressLabel {
  margin-top: 12px;
}
.checkoutSection .diningOptionsLink {
  cursor: pointer;
  float: right;
  padding: 0 0 16px 0;
  border: 0;
  border-radius: 0;
  background-color: #fff;
  color: #2b4fb9;
  font-size: 16px;
  font-weight: 500;
}
.checkoutSection .mapFrame {
  height: 145px;
  margin: 0 0 0 0;
  border-radius: 8px;
}
.checkoutSection .curbsidePickupVehicle {
  margin-top: 8px;
}
.checkoutSection .curbsideText {
  font-size: 16px;
  line-height: 16px;
  padding-bottom: 1px;
}
.checkoutSection .curbsideText .bold {
  font-weight: 600;
}
.checkoutSection .curbsideText .gray {
  color: #6e6e6e;
}
.fulfillment-time-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 32px 8px;
  cursor: pointer;
  position: relative;
  background: none;
  border: none;
  outline: none;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  text-align: left;
  width: 100%;
}
.fulfillment-time-row:focus {
  outline: none;
}
.fulfillment-time-row .content {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 6px 0;
}
.fulfillment-time-row .content .title {
  font-size: 16px;
  font-weight: 600;
  color: #202020;
  letter-spacing: 0.08px;
  line-height: 20px;
}
.fulfillment-time-row .content .subtitle {
  font-size: 14px;
  color: #646464;
  line-height: 20px;
}
.fulfillment-time-row .chevron {
  font-size: 20px;
  color: #646464;
  padding: 8px 12px;
}
.pickup-fulfillment-modal,
.delivery-fulfillment-modal {
  border-radius: 16px;
  border: 0.75px solid #cecece;
  position: relative;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.pickup-fulfillment-modal .modal-header,
.delivery-fulfillment-modal .modal-header {
  padding: 12px 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pickup-fulfillment-modal .modal-header h2,
.delivery-fulfillment-modal .modal-header h2 {
  font-size: 20px;
  font-weight: 400;
  color: #202020;
  margin: 0;
}
.pickup-fulfillment-modal .modal-content,
.delivery-fulfillment-modal .modal-content {
  padding: 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.pickup-fulfillment-modal .modal-content .content-header,
.delivery-fulfillment-modal .modal-content .content-header {
  margin-bottom: 16px;
}
.pickup-fulfillment-modal .modal-content .content-header h3,
.delivery-fulfillment-modal .modal-content .content-header h3 {
  font-size: 16px;
  font-weight: 600;
  color: #202020;
  margin: 0 0 8px;
  letter-spacing: 0.08px;
  line-height: 20px;
}
.pickup-fulfillment-modal .modal-content .content-header p,
.delivery-fulfillment-modal .modal-content .content-header p {
  font-size: 14px;
  color: #666;
  margin: 0;
  letter-spacing: 0.2px;
  line-height: 20px;
}
.pickup-fulfillment-modal .modal-content .dropdown-container,
.delivery-fulfillment-modal .modal-content .dropdown-container {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 432px;
  margin-bottom: 16px;
}
.pickup-fulfillment-modal .modal-content .dropDownContent,
.delivery-fulfillment-modal .modal-content .dropDownContent {
  width: 100%;
}
.pickup-fulfillment-modal .modal-content .option,
.delivery-fulfillment-modal .modal-content .option {
  display: flex;
  width: 100%;
}
.pickup-fulfillment-modal .modal-content .pickup-info,
.pickup-fulfillment-modal .modal-content .delivery-info,
.delivery-fulfillment-modal .modal-content .pickup-info,
.delivery-fulfillment-modal .modal-content .delivery-info {
  display: flex;
  align-items: center;
  gap: 6px;
}
.pickup-fulfillment-modal .modal-content .pickup-info .location-icon,
.pickup-fulfillment-modal .modal-content .delivery-info .location-icon,
.delivery-fulfillment-modal .modal-content .pickup-info .location-icon,
.delivery-fulfillment-modal .modal-content .delivery-info .location-icon {
  width: 20px;
  height: 20px;
  color: #666;
}
.pickup-fulfillment-modal .modal-content .pickup-info .location-text,
.pickup-fulfillment-modal .modal-content .delivery-info .location-text,
.delivery-fulfillment-modal .modal-content .pickup-info .location-text,
.delivery-fulfillment-modal .modal-content .delivery-info .location-text {
  font-size: 14px;
  color: #666;
  letter-spacing: 0.2px;
  line-height: 20px;
}
.pickup-fulfillment-modal .modal-footer,
.delivery-fulfillment-modal .modal-footer {
  padding: 20px 24px;
  display: flex;
  justify-content: flex-end;
  gap: 16px;
}
.pickup-fulfillment-modal .modal-footer button,
.delivery-fulfillment-modal .modal-footer button {
  min-height: 50px;
  padding: 0 24px;
  border-radius: 800px;
  font-weight: 600;
  font-size: 16px;
  line-height: 22px;
  border: none;
  cursor: pointer;
  flex: 1;
  max-width: 335px;
}
.pickup-fulfillment-modal .modal-footer button.cancel-btn,
.delivery-fulfillment-modal .modal-footer button.cancel-btn {
  background: #fff;
  border: 1px solid #d6d5d4;
  color: #252525;
}
.pickup-fulfillment-modal .modal-footer button.confirm-btn,
.delivery-fulfillment-modal .modal-footer button.confirm-btn {
  background: #252525;
  color: #fff;
}
.pickup-fulfillment-modal .modal-footer button.confirm-btn:disabled,
.delivery-fulfillment-modal .modal-footer button.confirm-btn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.pickup-fulfillment-modal .modal-footer button.confirm-btn .spinner-container,
.delivery-fulfillment-modal
  .modal-footer
  button.confirm-btn
  .spinner-container {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 60px;
}
.takeoutDetails .checkoutSectionHeader {
  margin-top: 24px;
}
.takeoutDetails .fulfillment-list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 32px 8px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  position: relative;
}
.takeoutDetails .fulfillment-list-item .restaurant-info {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 6px 0;
}
.takeoutDetails .fulfillment-list-item .restaurant-info .restaurant-name {
  font-size: 16px;
  font-weight: 600;
  color: #202020;
  letter-spacing: 0.08px;
  line-height: 20px;
}
.takeoutDetails .fulfillment-list-item .restaurant-info .restaurant-address {
  font-size: 14px;
  color: #646464;
  line-height: 20px;
}
.takeoutDetails .fulfillment-list-item .edit-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  height: 36px;
  cursor: pointer;
}
.takeoutDetails .fulfillment-list-item .edit-button span {
  font-size: 16px;
  color: #ff4c00;
  font-weight: 400;
  letter-spacing: -0.08px;
  line-height: 20px;
}
.orderConfirmation .checkoutSection {
  padding: 32px;
  border-radius: 8px;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 47.99em) {
  .orderConfirmation .checkoutSection {
    padding: 18px;
  }
}
.orderConfirmation .checkoutSection.flat {
  border-radius: 0;
  box-shadow: none;
}
@media screen and (max-width: 47.99em) {
  .orderConfirmation .checkoutSection.flat {
    padding: 0;
  }
}
.orderConfirmation .checkoutSection .subHeader {
  margin: 0;
}
.orderConfirmation .checkoutSection .subHeader:not(.rxName) {
  font-family: inherit;
}
.orderConfirmation .checkoutSection .checkoutSectionHeader {
  cursor: text;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px;
  line-height: 24px;
}
.orderConfirmation .checkoutSection .fixedSection {
  padding-top: 0;
}
.orderConfirmation .checkoutSection .fulfillmentUpdate {
  background-color: #ebf3fe;
  padding: 12px 24px;
  margin: 24px 0;
  text-align: center;
  border: 1px solid #bdd3f5;
}
.orderConfirmation .checkNumber {
  font-size: 18px;
}
.orderConfirmation .linkText {
  color: #2b4fb9;
}
.orderConfirmation .address,
.orderConfirmation .phone {
  font-size: 16px;
}
.orderConfirmation .sectionRows {
  padding-bottom: 8px;
}
.orderConfirmation .sectionRows .sectionRow {
  font-size: 16px;
}
.orderConfirmation .sectionRows .sectionRow.noMargin {
  margin-bottom: 0;
}
.orderConfirmation .sectionRows .sectionRow.instructions,
.orderConfirmation .sectionRows .sectionRow.directions a {
  font-size: 14px;
}
.orderConfirmation .sectionRows .sectionRow.directions a {
  font-weight: 500;
  color: #2b4fb9;
}
.orderConfirmation .cartOrder .cartData .items {
  border-bottom: 0;
}
.orderConfirmation .totalPrice {
  font-weight: 500;
}
.loyaltySection {
  margin: 32px 0;
}
.loyaltySection .loyaltyLoading {
  display: flex;
  justify-content: center;
}
.orderSummary {
  padding: 16px 24px 16px 24px;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  margin: 16px 0px;
}
.packagingSelections {
  margin-bottom: 16px;
}
.packagingSelections ul {
  margin: 0;
  padding: 0;
}
.packagingSelections .packagingItem {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding-left: 24px;
}
.checkoutSection.takeoutCta .ctaHeader {
  display: flex;
  cursor: text;
  flex-wrap: wrap;
  line-height: 19.2px;
  font-weight: 500;
  font-size: 16px;
}
.checkoutSection.takeoutCta .ctaBody {
  display: flex;
  padding-top: 20px;
  align-items: center;
  justify-content: space-between;
}
.checkoutSection.takeoutCta .ctaBody .logoContainer {
  width: 48px;
  height: 48px;
}
.checkoutSection.takeoutCta .ctaBody .logoContainer .logo {
  fill: #fff;
  background-color: #fff;
  border-radius: 10px;
  display: block;
  width: 100%;
  height: auto;
}
.checkoutSection.takeoutCta .ctaBody .middle .appName {
  line-height: 21px;
  font-size: 16px;
}
.checkoutSection.takeoutCta .ctaBody .middle .rating {
  display: flex;
  align-items: center;
}
.checkoutSection.takeoutCta .ctaBody .middle .rating .ratingNumber {
  color: #2e7c87;
  font-size: 12px;
  line-height: 16px;
}
.checkoutSection.takeoutCta .ctaBody .middle .rating .stars {
  display: flex;
  align-items: center;
  padding-left: 2px;
}
.checkoutSection.takeoutCta .ctaBody .middle .rating .stars img {
  width: 11px;
}
.checkoutSection.takeoutCta .ctaBody .ctaButton {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 11px 16px 13px;
  gap: 10px;
  width: 59px;
  height: 22px;
  background: #252525;
  border-radius: 32px;
  color: #fff;
  font-weight: 600;
  text-align: center;
  font-size: 16px;
  text-decoration: none;
}
.checkoutSection.takeoutCta .ctaBody .ctaButton:not(:disabled):hover {
  filter: saturate(90%) brightness(90%);
  text-decoration: none;
  cursor: pointer;
}
.checkoutSection.takeoutCtaV2 .ctaHeader {
  display: flex;
  cursor: text;
  flex-wrap: wrap;
  line-height: 19.2px;
  font-weight: 500;
  font-size: 16px;
}
.checkoutSection.takeoutCtaV2 .ctaBody {
  display: flex;
  padding-top: 20px;
  align-items: flex-start;
  gap: 12px;
}
.checkoutSection.takeoutCtaV2 .ctaBody .logoContainer {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
}
.checkoutSection.takeoutCtaV2 .ctaBody .logoContainer .logo {
  fill: #fff;
  background-color: #fff;
  border-radius: 10px;
  display: block;
  width: 100%;
  height: auto;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo {
  flex: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo .leftContent {
  display: flex;
  flex-direction: column;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo .leftContent .appName {
  line-height: 21px;
  font-size: 16px;
  margin-bottom: 2px;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo .leftContent .rating {
  display: flex;
  align-items: center;
}
.checkoutSection.takeoutCtaV2
  .ctaBody
  .appInfo
  .leftContent
  .rating
  .ratingNumber {
  color: #2e7c87;
  font-size: 12px;
  line-height: 16px;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo .leftContent .rating .stars {
  display: flex;
  align-items: center;
  padding-left: 2px;
}
.checkoutSection.takeoutCtaV2
  .ctaBody
  .appInfo
  .leftContent
  .rating
  .stars
  img {
  width: 11px;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo .appStoreButtons {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo .appStoreButtons a {
  display: block;
  line-height: 0;
}
.checkoutSection.takeoutCtaV2 .ctaBody .appInfo .appStoreButtons a:hover {
  opacity: 0.9;
}
.checkoutSection.takeoutCtaV2
  .ctaBody
  .appInfo
  .appStoreButtons
  .appStoreBadge {
  height: 28px;
  width: auto;
}
.convoOrderingModal {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 47.99em) {
  .convoOrderingModal {
    width: 100%;
  }
}
.convoOrderingModal .wrapper .content {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.convoOrderingModal .wrapper .content .header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 12px 12px 12px 24px;
  border-bottom: 0.75px solid #e5e5e5;
  font-size: 20px;
  margin-bottom: 16px;
  font-weight: 700;
}
.convoOrderingModal .wrapper .content .mainContent {
  display: flex;
  flex-direction: row;
  flex: 1;
  min-height: 0;
}
.convoOrderingModal .wrapper .content .mainContent .leftPanel {
  width: 400px;
}
.convoOrderingModal .wrapper .content .mainContent .rightPanel {
  width: 500px;
  flex: 1;
  padding: 16px;
}
.convoOrderingModal .wrapper .content .convoOrdering {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  background-color: #fff;
  flex: 1;
  min-height: 0;
}
.convoOrderingModal .wrapper .content .convoOrdering .chatBubble {
  width: 95%;
  border: 2px solid #e5e5e5;
  border-radius: 12px;
  padding: 6px;
  margin-bottom: 12px;
}
.convoOrderingModal .wrapper .content .convoOrdering .chatBubble.server {
  margin-right: auto;
  border-bottom-left-radius: 0;
  background-color: #e5e5e5;
}
.convoOrderingModal .wrapper .content .convoOrdering .chatBubble.client {
  margin-left: auto;
  border-bottom-right-radius: 0;
  border-color: var(--ds-background-primary, var(--tsw-primary-color));
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
.convoOrderingModal .wrapper .content .convoOrdering .body {
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
}
.convoOrderingModal .wrapper .content .convoOrdering .body .paddedContent {
  overflow-y: auto;
  padding: 0 12px;
}
.convoOrderingModal .wrapper .content .convoOrdering .footer {
  padding: 0 12px;
  border-top: 0.75px solid #e5e5e5;
}
.convoOrderingModal .wrapper .content .convoOrdering .footer {
  display: flex;
  flex-direction: column;
}
.convoOrderingModal .wrapper .content .convoOrdering .footer form {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}
.convoOrderingModal .wrapper .content .convoOrdering .footer form input {
  flex: 1;
}
.confirmationSection {
  display: flex;
  flex-direction: column;
  font-size: 16px;
  gap: 16px;
  padding: 16px;
}
.confirmationSection .helpText {
  font-size: 14px;
  text-align: center;
  color: #666;
}
.confirmationSection .helpText .resend {
  color: #2b4fb9;
  padding: 8px;
  border: none;
  background-color: transparent;
  cursor: pointer;
}
.confirmationSection .helpText .resend:hover {
  text-decoration: underline;
}
.confirmationSection .formError {
  font-size: 14px;
  color: #c42b44;
  margin-bottom: 4px;
}
.inputFieldOtp {
  justify-content: center;
  margin-bottom: 0;
}
.inputFieldOtp > div {
  padding: 0;
  border: 1px solid #cecece;
  border-radius: 8px;
  height: 56px;
  width: 52px;
  margin-bottom: 8px;
  justify-content: center;
}
.inputFieldOtp > div:not(:last-of-type) {
  margin-right: 8px;
}
.deliveryAddressModal .addressSearchScreen,
.deliveryAddressModal .addressConfirmScreen,
.deliveryAddressModal .checkoutRequirementScreen,
.deliveryAddressModal .addressInvalidScreen,
.deliveryAddressModal .addressHubScreen {
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media screen and (min-width: 48em) {
  .deliveryAddressModal .addressSearchScreen.addressHubScreen,
  .deliveryAddressModal .addressSearchScreen.addressSearchScreen,
  .deliveryAddressModal .addressConfirmScreen.addressHubScreen,
  .deliveryAddressModal .addressConfirmScreen.addressSearchScreen,
  .deliveryAddressModal .checkoutRequirementScreen.addressHubScreen,
  .deliveryAddressModal .checkoutRequirementScreen.addressSearchScreen,
  .deliveryAddressModal .addressInvalidScreen.addressHubScreen,
  .deliveryAddressModal .addressInvalidScreen.addressSearchScreen,
  .deliveryAddressModal .addressHubScreen.addressHubScreen,
  .deliveryAddressModal .addressHubScreen.addressSearchScreen {
    height: 552px;
  }
}
.deliveryAddressModal .modalHeader {
  padding: 16px;
  position: relative;
  justify-content: center;
}
.deliveryAddressModal .modalHeader .backArrow {
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  padding: 12px;
  width: unset;
}
.deliveryAddressModal .modalHeader .backArrow i {
  display: flex;
}
.deliveryAddressModal .modalHeader .backArrow:hover {
  background-color: #e5e5e5;
}
.deliveryAddressModal .confirmContainer {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 -16px;
}
.deliveryAddressModal .confirmContainer .selectedAddress {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.deliveryAddressModal .confirmContainer .selectedAddress .addressText {
  flex: 1;
  font-size: 16px;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.deliveryAddressModal
  .confirmContainer
  .selectedAddress
  .addressText
  .addrLine1 {
  font-weight: 600;
}
.deliveryAddressModal .confirmContainer .selectedAddress .editAddressButton {
  display: flex;
  width: unset;
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: #333;
}
.deliveryAddressModal
  .confirmContainer
  .selectedAddress
  .editAddressButton:hover {
  background-color: #e5e5e5;
}
.deliveryAddressModal .confirmContainer .addressInputField {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 16px;
}
.deliveryAddressModal .confirmContainer .addressInputField:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.deliveryAddressModal .confirmContainer .addressInputField p {
  font-size: 16px;
  font-weight: 600;
  color: #202020;
}
.deliveryAddressModal .modalContent {
  flex: 1;
  padding: 0 16px !important;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.deliveryAddressModal .modalContent .searchAddressContainer {
  margin: 16px 0;
}
.deliveryAddressModal
  .modalContent
  .searchAddressContainer
  .fakeSearchContainer {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.deliveryAddressModal
  .modalContent
  .searchAddressContainer
  .fakeSearchContainer
  .fakeSearchInput {
  display: flex;
  position: relative;
  width: 100%;
  font-size: 16px;
  border: 1px solid #f5f5f5;
  border-radius: 32px;
  color: #999;
  background: #f5f5f5;
  cursor: pointer;
  text-align: left;
  padding: 12px 48px;
  line-height: unset;
}
.deliveryAddressModal
  .modalContent
  .searchAddressContainer
  .fakeSearchContainer
  .fakeSearchInput
  .inputSearchIcon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  color: #666;
  z-index: 1;
}
.deliveryAddressModal .modalContent .hubActions {
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
  margin: 0 -16px;
}
.deliveryAddressModal .modalContent .hubActions button.addressOption {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  gap: 16px;
  font-weight: 500;
  background-color: transparent;
  text-align: left;
  border-radius: unset;
}
.deliveryAddressModal .modalContent .hubActions button.addressOption:hover {
  background: rgba(0, 0, 0, 0.05);
}
.deliveryAddressModal
  .modalContent
  .hubActions
  button.addressOption:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.deliveryAddressModal
  .modalContent
  .hubActions
  button.addressOption
  .addressContent {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}
.deliveryAddressModal
  .modalContent
  .hubActions
  button.addressOption
  .addressContent
  .address {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}
.deliveryAddressModal
  .modalContent
  .hubActions
  button.addressOption
  .addressContent
  .address
  .addressHeading {
  font-weight: 600;
  font-size: 16px;
  color: #252525;
}
.deliveryAddressModal
  .modalContent
  .hubActions
  button.addressOption
  .addressContent
  .address
  .addressSubHeading {
  font-size: 14px;
  font-weight: 400;
  color: #666;
}
.deliveryAddressModal .modalContent .hubActions .orderSummary {
  padding: 0px;
  margin: 0px;
  box-shadow: none;
}
.deliveryAddressModal .modalContent .hubActions .orderSummary .selectCallout {
  margin: 0 16px;
  border-radius: 12px;
  border: 1px solid #cecece;
  padding: 18px 48px;
  color: #646464;
  font-weight: 400;
  font-size: 14px;
  text-align: center;
}
.deliveryAddressModal .modalContent .hubActions .hubSubHeading {
  font-size: 18px;
  font-weight: 600;
  padding: 0 16px;
}
.deliveryAddressModal
  .modalContent
  .hubActions
  .savedAddressButtons
  button.addressOption:last-child {
  border-bottom: none;
}
.deliveryAddressModal .modalContent .addressInputContainer {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin: 0 -16px;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer {
  gap: 8px;
  margin-top: 16px;
  flex: 1;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .placesInput {
  display: flex;
  position: relative;
  width: 100%;
  padding: 0 16px;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .placesInput
  input {
  width: 100%;
  border: 1px solid #6e6e6e;
  border-radius: 32px;
  padding: 12px 48px;
  font-size: 16px;
  height: unset;
  line-height: unset;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .placesInput
  .inputSearchIcon {
  position: absolute;
  left: 28px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  color: #666;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .placesInput
  .inputClearButton {
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  background: unset;
  border: none;
  width: unset;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .placesInput
  .inputClearButton
  i {
  display: flex;
  color: #666;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .emptyState {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 32px;
  color: #646464;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex: 1;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .emptyState
  i
  svg {
  height: 40px;
  width: 40px;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .signInPromptTitle {
  font-size: 18px;
  color: #333;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .signInPromptBody {
  font-size: 16px;
  color: #666;
  margin: 0 0 24px 0;
  max-width: 320px;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .signInPromptCta {
  background-color: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 20px;
  font-size: 16px;
  font-weight: 500;
  color: #666;
  white-space: nowrap;
  padding: 8px 16px;
  width: auto;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions {
  padding-top: 8px;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .loadingPrediction {
  padding: 16px 32px;
  display: flex;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .loadingPrediction:nth-child(3n + 1) {
  width: 40%;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .loadingPrediction:nth-child(3n + 2) {
  width: 70%;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .loadingPrediction:nth-child(3n + 3) {
  width: 26%;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .prediction {
  background: unset;
  border: none;
  font-size: 16px;
  border-radius: unset;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 24px;
  gap: 8px;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .prediction:hover {
  background: rgba(0, 0, 0, 0.05);
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .prediction
  .predictionLabel {
  text-align: left;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .divider {
  padding: 0 16px;
}
.deliveryAddressModal
  .modalContent
  .addressInputContainer
  .autocompleteContainer
  .autocompleteResults
  .predictions
  .divider::after {
  display: block;
  content: "";
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
}
.deliveryAddressModal .modalContent .attribution {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 12px;
}
.deliveryAddressModal .modalContent .attribution img {
  height: 20px;
}
.deliveryAddressModal .modalContent .addNewAddressButton {
  padding: 16px 8px;
  background-color: unset;
  font-size: 16px;
  font-weight: 400;
}
.deliveryAddressModal
  .modalContent
  .addNewAddressButton
  .buttonChildrenWrapper {
  display: flex;
  justify-content: space-between;
}
.deliveryAddressModal .modalContent .addressInvalidContainer {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 32px;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex: 1;
}
.deliveryAddressModal .modalContent .addressInvalidContainer h2 {
  font-size: 18px;
  font-weight: 400;
}
.deliveryAddressModal .modalContent .addressInvalidContainer p {
  font-size: 16px;
  color: #666;
}
.deliveryAddressModal .modalContent .addressInvalidContainer i svg {
  color: var(--ds-background-primary, var(--tsw-primary-color));
  height: 64px;
  width: 64px;
  opacity: 50%;
}
.deliveryAddressModal .modalContent .locationAlternatives {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.deliveryAddressModal .modalContent .locationAlternatives .locationOption {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 8px;
  gap: 16px;
  font-weight: 500;
  border: none;
  background: unset;
}
.deliveryAddressModal
  .modalContent
  .locationAlternatives
  .locationOption
  .locationInfo {
  display: flex;
  flex-direction: column;
  gap: 12px;
  text-align: left;
}
.deliveryAddressModal
  .modalContent
  .locationAlternatives
  .locationOption
  .locationInfo
  .nameAndDistance {
  display: flex;
  gap: 8px;
  font-size: 16px;
}
.deliveryAddressModal
  .modalContent
  .locationAlternatives
  .locationOption
  .locationInfo
  .nameAndDistance
  .name {
  font-weight: 600;
}
.deliveryAddressModal
  .modalContent
  .locationAlternatives
  .locationOption
  .locationInfo
  .nameAndDistance
  .distance {
  font-weight: 400;
  font-style: italic;
}
.deliveryAddressModal
  .modalContent
  .locationAlternatives
  .locationOption
  .locationInfo
  .address {
  font-weight: 400;
  font-size: 12px;
}
.deliveryAddressModal
  .modalContent
  .locationAlternatives
  .locationOption:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.deliveryAddressModal .checkoutRequirementScreen .requirementScreenHeading {
  padding: 24px 24px 8px 24px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 4px;
  border-bottom: none;
}
.deliveryAddressModal .checkoutRequirementScreen .requirementScreenHeading h2 {
  font-size: 26px;
  font-weight: 400;
  line-height: 32px;
}
.deliveryAddressModal .checkoutRequirementScreen .requirementScreenHeading div {
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.2px;
  text-align: center;
  color: #474747;
}
.deliveryAddressModal .checkoutRequirementScreen .footer {
  border-top: unset;
}
.fulfillmentToggleRedesign {
  align-items: center;
}
.fulfillmentToggleRedesign .option {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.fulfillmentToggleRedesign svg.h-4 {
  height: 1rem;
}
.fulfillmentToggleRedesign svg.w-4 {
  width: 1rem;
}
.fulfillmentToggleRedesign svg.h-6 {
  height: 1.5rem;
}
.fulfillmentToggleRedesign svg.w-6 {
  width: 1.5rem;
}
.fulfillmentToggleRedesign svg.h-8 {
  height: 2rem;
}
.fulfillmentToggleRedesign svg.w-8 {
  width: 2rem;
}
.fulfillmentToggleRedesign svg.h-12 {
  height: 3rem;
}
.fulfillmentToggleRedesign svg.w-12 {
  width: 3rem;
}
.fulfillmentToggleRedesign svg.h-16 {
  height: 4rem;
}
.fulfillmentToggleRedesign svg.w-16 {
  width: 4rem;
}
.fulfillmentToggleRedesign svg.h-20 {
  height: 5rem;
}
.fulfillmentToggleRedesign svg.w-20 {
  width: 5rem;
}
.optionText :first-child {
  white-space: break-spaces;
  width: -webkit-min-content;
  width: min-content;
}
.fulfillmentModal {
  width: 400px;
}
@media screen and (max-width: 47.99em) {
  .fulfillmentModal {
    border-radius: 0 !important;
  }
}
.fulfillmentModal .modalHeader {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px;
  position: relative;
}
.fulfillmentModal .modalHeader h2 {
  font-size: 20px;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 35.49em) {
  .fulfillmentModal .modalHeader h2 {
    font-size: 18px;
  }
}
.fulfillmentModal .modalHeader h3 {
  color: #646464;
  font-weight: 400;
  font-size: 16px;
}
.fulfillmentModal .modalHeader .closeButton {
  position: absolute;
  width: unset;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}
.fulfillmentModal .warningBanner {
  color: #da342e;
  background: #ffcdc7;
  font-size: 14px;
  padding: 8px;
  display: flex;
  justify-content: center;
  gap: 4px;
}
.fulfillmentModal .warningBanner i {
  display: flex;
  align-items: center;
}
.fulfillmentModal .warningBanner i svg {
  height: 16px;
}
.fulfillmentModal .modalContent {
  flex: 1;
  overflow-y: auto;
  padding: 0 16px;
}
.fulfillmentModal .modalContent .radioButtons .radioButtonOption {
  display: flex;
  padding: 24px 8px;
  gap: 16px;
  font-weight: 500;
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.fulfillmentModal .modalContent .radioButtons .radioButtonOption.disabled i {
  color: #c7c4c4;
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption
  .option
  .radio
  ~ label.showInput::after {
  margin-right: 8px;
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption
  .option
  .radio
  ~ label:hover.showInput::before {
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  opacity: 8%;
  transform: translateX(-2px);
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption
  .option
  .radio:not(:checked)
  ~ label.showInput::after {
  border: 1.2px solid #666;
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption
  .option
  .radio:disabled
  ~ label.showInput::after {
  border: 1.2px solid #c7c4c4;
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption
  .option
  .radio:checked
  ~ label.showInput::after {
  border: 1.2px solid var(--ds-background-primary, var(--tsw-primary-color));
  box-shadow: 0 0 0 2.5px #fff inset,
    0 0 0 10px var(--ds-background-primary, var(--tsw-primary-color)) inset;
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption
  .option
  .label {
  display: flex;
  flex-direction: row-reverse;
  padding: unset;
  gap: 8px;
}
.fulfillmentModal
  .modalContent
  .radioButtons
  .radioButtonOption
  .option
  .label
  .showInput {
  padding-left: unset;
}
.fulfillmentModal .footer {
  display: flex;
  flex-direction: row;
  padding: 16px 20px;
  gap: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.fulfillmentModal .footer button {
  border-radius: 32px;
  font-size: 16px;
  font-weight: 500;
  padding: 12px 24px;
  border: 1px solid var(--ds-background-primary, var(--tsw-primary-color));
}
.fulfillmentModal .footer button.cancelButton {
  border: 1px solid #cecece;
  color: #646464;
  background-color: #fff;
}
.fulfillmentModal .footer button.cancelButton:hover {
  background-color: var(
    --ds-background-primary-overlay,
    var(--tsw-primary-color-25)
  );
}
.fulfillmentModal .footer.stacked {
  flex-direction: column-reverse;
  padding: 16px;
  gap: 8px;
}
@media screen and (max-width: 35.49em) {
  .fulfillmentModal .footer {
    flex-direction: column-reverse;
    padding: 16px;
    gap: 8px;
  }
}
.fulfillmentPanel {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media screen and (min-width: 35.5em) {
  .fulfillmentPanel {
    width: 368px;
  }
}
.fulfillmentPanel .fulfillmentToggle .toggle {
  background-color: rgba(0, 0, 0, 0.06);
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.06);
  width: 100%;
  margin: 4px;
}
.fulfillmentPanel .fulfillmentToggle .toggle.darkMode {
  background-color: rgba(255, 255, 255, 0.06);
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.06);
}
.fulfillmentPanel .fulfillmentToggle .toggle .option {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.fulfillmentPanel .fulfillmentToggle .toggle .option.selected {
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
  background-color: var(--ds-surface-default, var(--tsw-background-color));
}
.fulfillmentPanel .fulfillmentToggle .toggle .option.selected:focus-visible {
  outline: 1px solid
    var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
.fulfillmentPanel
  .fulfillmentToggle
  .toggle
  .option:focus-visible:not(.selected) {
  outline: 1px solid
    var(--ds-border-focus, var(--tsw-background-contrasting-color));
}
.fulfillmentPanel .fulfillmentToggle .toggle .option i svg {
  display: flex;
  height: 20px;
}
.fulfillmentPanel .fulfillmentToggle .toggle .switch {
  border: 1px solid var(--ds-surface-default, var(--tsw-background-color));
  background-color: var(--ds-surface-default, var(--tsw-background-color));
}
.fulfillmentPanel .fulfillmentToggle .singleFulfillmentPill {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 40px;
  border-radius: 32px;
  font-weight: 600;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.06);
}
.fulfillmentPanel .fulfillmentToggle .singleFulfillmentPill.darkMode {
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.06);
}
.fulfillmentPanel .fulfillmentToggle .singleFulfillmentPill i svg {
  display: flex;
  height: 20px;
}
.fulfillmentPanel .fulfillmentToggle .notAcceptingOrdersPill {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 48px;
  border-radius: 32px;
  color: var(--ds-text-secondary, var(--tsw-primary-text-color-75));
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  border: 1px solid var(--ds-border-default, var(--tsw-primary-text-color-50));
  position: relative;
}
.fulfillmentPanel .fulfillmentToggle .notAcceptingOrdersPill .content {
  flex-direction: row;
  align-items: center;
  justify-content: center;
  display: flex;
  gap: 6px;
}
.fulfillmentPanel .fulfillmentToggle .notAcceptingOrdersPill .content i svg {
  display: flex;
  height: 20px;
}
.fulfillmentPanel .fulfillmentToggle .notAcceptingOrdersPill .chevronIcon {
  position: absolute;
  right: 16px;
}
.fulfillmentPanel .fulfillmentToggle .notAcceptingOrdersPill .chevronIcon svg {
  display: flex;
}
.fulfillmentPanel .fulfillmentSummaries {
  display: flex;
  flex-direction: column;
}
.fulfillmentPanel .fulfillmentSummaries .loadingSkeleton {
  --base-color: var(--ds-surface-focus, var(--tsw-primary-color-25));
  --highlight-color: var(--ds-surface-default, var(--tsw-background-color));
  margin: 8px 0;
  padding: 4px 0;
}
.fulfillmentPanel .fulfillmentSummaries .fulfillmentTimeSummary,
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px;
  background: var(--ds-surface-default, var(--tsw-background-color));
  border: none;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  font-size: 16px;
  line-height: 24px;
}
.fulfillmentPanel .fulfillmentSummaries .fulfillmentTimeSummary:disabled,
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary:disabled,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert:disabled {
  pointer-events: none;
}
.fulfillmentPanel .fulfillmentSummaries .fulfillmentTimeSummary:hover,
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary:hover,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert:hover {
  background: var(--ds-surface-focus, var(--tsw-primary-color-25));
  border-radius: 4px;
}
@media screen and (max-width: 35.49em) {
  .fulfillmentPanel .fulfillmentSummaries .fulfillmentTimeSummary,
  .fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary,
  .fulfillmentPanel .fulfillmentSummaries .closingTimeAlert {
    padding: 8px 16px;
    margin: 0 -16px;
    font-size: 14px;
  }
}
.fulfillmentPanel .fulfillmentSummaries .fulfillmentTimeSummary i svg,
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary i svg,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert i svg {
  display: flex;
  height: 20px;
}
.fulfillmentPanel .fulfillmentSummaries .fulfillmentTimeSummary i,
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary i,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert i {
  color: var(--ds-icon-secondary, var(--tsw-primary-text-color));
  margin-right: -4px;
}
.fulfillmentPanel .fulfillmentSummaries .fulfillmentTimeSummary .content,
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary .content,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert .content {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  min-width: 0;
  overflow: hidden;
  flex-direction: row;
}
.fulfillmentPanel
  .fulfillmentSummaries
  .fulfillmentTimeSummary
  .content
  .textContent,
.fulfillmentPanel
  .fulfillmentSummaries
  .diningBehaviorSummary
  .content
  .textContent,
.fulfillmentPanel
  .fulfillmentSummaries
  .closingTimeAlert
  .content
  .textContent {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.fulfillmentPanel
  .fulfillmentSummaries
  .fulfillmentTimeSummary
  .content.actionText,
.fulfillmentPanel
  .fulfillmentSummaries
  .diningBehaviorSummary
  .content.actionText,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert .content.actionText {
  color: var(--ds-text-on-error-secondary, var(--tsw-primary-hover-color));
}
.fulfillmentPanel
  .fulfillmentSummaries
  .fulfillmentTimeSummary
  .content.actionText
  i,
.fulfillmentPanel
  .fulfillmentSummaries
  .diningBehaviorSummary
  .content.actionText
  i,
.fulfillmentPanel
  .fulfillmentSummaries
  .closingTimeAlert
  .content.actionText
  i {
  color: var(--ds-text-on-error-secondary, var(--tsw-primary-hover-color));
}
.fulfillmentPanel
  .fulfillmentSummaries
  .fulfillmentTimeSummary
  .content
  .fulfillmentTimeString,
.fulfillmentPanel
  .fulfillmentSummaries
  .diningBehaviorSummary
  .content
  .fulfillmentTimeString,
.fulfillmentPanel
  .fulfillmentSummaries
  .closingTimeAlert
  .content
  .fulfillmentTimeString {
  display: flex;
  gap: 8px;
}
.fulfillmentPanel
  .fulfillmentSummaries
  .fulfillmentTimeSummary
  .content
  .diningBehaviorText,
.fulfillmentPanel
  .fulfillmentSummaries
  .diningBehaviorSummary
  .content
  .diningBehaviorText,
.fulfillmentPanel
  .fulfillmentSummaries
  .closingTimeAlert
  .content
  .diningBehaviorText {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.fulfillmentPanel
  .fulfillmentSummaries
  .fulfillmentTimeSummary.invalid
  .diningBehaviorText,
.fulfillmentPanel
  .fulfillmentSummaries
  .diningBehaviorSummary.invalid
  .diningBehaviorText,
.fulfillmentPanel
  .fulfillmentSummaries
  .closingTimeAlert.invalid
  .diningBehaviorText {
  color: var(--ds-text-on-error-secondary, var(--tsw-primary-hover-color));
}
.fulfillmentPanel
  .fulfillmentSummaries
  .fulfillmentTimeSummary.invalid
  .content
  i,
.fulfillmentPanel
  .fulfillmentSummaries
  .diningBehaviorSummary.invalid
  .content
  i,
.fulfillmentPanel .fulfillmentSummaries .closingTimeAlert.invalid .content i {
  color: var(--ds-text-on-error-secondary, var(--tsw-primary-hover-color));
}
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary {
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary:hover {
  opacity: 0.8;
}
.fulfillmentPanel .fulfillmentSummaries .diningBehaviorSummary:active {
  opacity: 0.6;
}
@media screen and (min-width: 48em) {
  .fulfillmentPanel .fulfillmentSummaries .closingTimeAlert {
    display: none;
  }
}
.fulfillmentPanel.toastLocal {
  padding-top: 4px;
  width: 100%;
}
@media screen and (min-width: 35.5em) {
  .fulfillmentPanel.toastLocal {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
  .fulfillmentPanel.toastLocal .fulfillmentToggle {
    max-height: 40px;
  }
}
.fulfillmentTimeModal {
  overflow-y: visible;
}
.fulfillmentTimeModal .tbrItem {
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 12px;
  padding: 12px;
  margin: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  font-weight: 600;
}
.fulfillmentTimeModal .modalContent {
  height: 100%;
  font-size: 16px;
  overflow-y: visible !important;
}
.fulfillmentTimeModal
  .modalContent
  .fulfillmentTimeDropdownContainer
  .fulfillmentTimeDropdowns {
  padding: 0 8px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.fulfillmentTimeModal
  .modalContent
  .fulfillmentTimeDropdownContainer
  .fulfillmentTimeDropdowns
  .selector {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.fulfillmentTimeModal
  .modalContent
  .fulfillmentTimeDropdownContainer
  .fulfillmentTimeDropdowns
  .selector
  .dropdownLabel {
  font-weight: 500;
}
.fulfillmentTimeModal
  .modalContent
  .fulfillmentTimeDropdownContainer
  .fulfillmentTimeDropdowns
  .selector
  .dropDownLabel {
  font-size: 16px;
}
.fulfillmentTimeModal
  .modalContent
  .fulfillmentTimeDropdownContainer
  .fulfillmentTimeDropdowns
  .selector
  .dropDown {
  border: 1px solid rgba(0, 0, 0, 0.12);
}
.fulfillmentTimeModal
  .modalContent
  .fulfillmentTimeDropdownContainer
  .fulfillmentTimeDropdowns
  .selector
  .dropDown
  .option {
  font-size: 16px;
}
@media screen and (max-width: 47.99em) {
  .modal .itemModalWrapper {
    padding: 48px;
  }
}
@media screen and (max-width: 35.49em) {
  .modal .itemModalWrapper {
    padding: 24px;
  }
}
.modal .itemModalWrapper .itemModalContent {
  overflow: hidden;
  border-radius: 24px;
  width: 520px;
  max-width: 600px;
}
@media screen and (max-width: 47.99em) {
  .modal .itemModalWrapper .itemModalContent {
    width: 100%;
  }
}
.modal .itemModalWrapper .itemModalContent .itemModalContainer {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media screen and (min-width: 47.99em) {
  .modal .itemModalWrapper .itemModalContent .itemModalContainer {
    max-height: 80vh;
  }
}
.modal .itemModalWrapper .itemModalContent .itemModalContainer .ariaAlert {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.modal .itemModalWrapper .itemModalContent .itemModalContainer .itemModal {
  overflow: hidden;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .modalOverlay {
  z-index: 1;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #f0f0f2;
  z-index: 3;
  display: flex;
  flex-direction: column;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer
  .zoomImageWrapper {
  display: flex;
  height: 100%;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer
  .zoomImageWrapper
  .zoomedImage {
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .pinnedHeader,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .pinnedHeader,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer
  .pinnedHeader {
  display: flex;
  justify-content: center;
  font-size: 18px;
  font-weight: 600;
  padding: 16px;
  height: 60px;
  width: 100%;
  z-index: 2;
  background-color: #fff;
  opacity: 0;
  transition: opacity 0.2s ease-in;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .pinnedHeader.pinned,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .pinnedHeader.pinned,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer
  .pinnedHeader.pinned {
  opacity: 1;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .itemModalBackButton,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer
  .itemModalBackButton {
  position: absolute;
  top: 10px;
  left: 16px;
  z-index: 3;
  padding: 8px;
  cursor: pointer;
  background-color: #fff;
  border-radius: 50%;
  width: auto;
  border: none;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .itemModalBackButton:hover,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer
  .itemModalBackButton:hover {
  background-color: rgba(0, 0, 0, 0.04);
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .itemModalBackButton
  i,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .zoomImageContainer
  .itemModalBackButton
  i {
  display: flex;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent {
  display: flex;
  flex-direction: column;
  z-index: 1;
  height: 100%;
  scrollbar-width: none;
  -ms-overflow-style: none;
  width: 100%;
  overflow-y: scroll;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent.loading {
  overflow-y: hidden;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .pinnedHeader {
  position: absolute;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemModalCloseButton {
  position: absolute;
  top: 10px;
  right: 16px;
  z-index: 3;
  background-color: #fff;
  border-radius: 50%;
  height: 40px;
  width: 40px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemModalCloseButton:hover {
  background-color: #e5e5e5;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .imageWrapper {
  position: relative;
  max-width: 100%;
  width: 100%;
  height: 160px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .imageWrapper
  .loadingImage {
  height: 160px;
  width: 100%;
  background: #f0f0f2;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .imageWrapper
  .itemModalImage {
  max-width: 100%;
  width: 100%;
  height: 160px;
  -o-object-fit: cover;
  object-fit: cover;
  cursor: pointer;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .tbrContent {
  display: flex;
  flex-direction: column;
  background: rgba(0, 0, 0, 0.06);
  padding: 8px 16px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .tbrContent
  .tbrHeader {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 400;
  font-family: "Source-Sans-Pro", sans-serif;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .tbrContent
  .tbrHeader.hasFulfillmentMessage {
  justify-content: flex-start;
  font-weight: 600;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .tbrContent
  .fulfillmentMessage {
  padding: 0 18px;
  font-size: 14px;
}
@media screen and (max-width: 47.99em) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .itemModal
    .rootContent
    .tbrContent
    .fulfillmentMessage {
    font-size: 12px;
  }
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .loadingItemInfo {
  display: flex;
  flex-direction: column;
  background: #fff;
  width: 100%;
  padding: 16px;
  gap: 32px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .loadingItemInfo
  .loadingNameAndPrice {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .loadingItemInfo
  .loadingDescription {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .loadingModSections {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 32px 16px;
  background: #f0f0f2;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .loadingModSections
  .loadingModSection {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .loadingModSections
  .loadingModSection
  .loadingModSectionTitle {
  height: 20px;
  width: 160px;
  background: rgba(0, 0, 0, 0.08);
  border-radius: 4px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .loadingModSections
  .loadingModSection
  .loadingModSectionContent {
  background: rgba(255, 255, 255, 0.6);
  height: 160px;
  width: 100%;
  border-radius: 8px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo.extraTopPadding {
  padding-top: 76px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo
  .itemTags {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
  line-height: normal;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo
  .itemTags
  .itemTag {
  border-radius: 4px;
  padding: 2px 4px;
  font-size: 12px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo
  .nameAndPrice {
  display: flex;
  flex-direction: column;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo
  .nameAndPrice
  .modalTitle {
  font-size: 22px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo
  .nameAndPrice
  .basePrice {
  font-size: 20px;
  color: #666;
  font-weight: 400;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo
  .description {
  color: #666;
  font-size: 14px;
  white-space: pre-wrap;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .itemInfo
  .offersContainer {
  display: flex;
  flex-direction: row;
  gap: 8px;
  width: 100%;
  flex-wrap: wrap;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .allergens {
  display: flex;
  gap: 16px;
  align-items: center;
  padding: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  color: #666;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .allergens
  .allergensContent {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-weight: 400;
  flex-wrap: wrap;
  width: 100%;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .allergens
  .allergensContent
  .allergensTitle {
  font-size: 14px;
  font-weight: 600;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .allergens
  .allergensContent
  .allergensList {
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-wrap: wrap;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .rootContent
  .allergens
  .allergensContent
  .allergensList
  .allergenItem {
  background-color: #0000000a;
  font-size: 12px;
  border-radius: 4px;
  padding: 4px 8px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent {
  display: flex;
  flex-direction: column;
  height: 100%;
  scrollbar-width: none;
  -ms-overflow-style: none;
  width: 100%;
  position: absolute;
  bottom: 0;
  z-index: 2;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
@media screen and (max-width: 47.99em) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .itemModal
    .secondaryContent {
    height: calc(100% - 36px);
    border-radius: 16px 16px 0 0;
    position: fixed;
  }
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .pinnedHeader {
  border-radius: 16px 16px 0 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent.slideUp {
  animation: slide-up-desktop 0.3s linear forwards;
}
@media screen and (max-width: 47.99em) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .itemModal
    .secondaryContent.slideUp {
    animation: slide-up-mobile 0.3s linear forwards;
  }
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent.slideDown {
  animation: slide-down-desktop 0.3s linear forwards;
}
@media screen and (max-width: 47.99em) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .itemModal
    .secondaryContent.slideDown {
    animation: slide-down-mobile 0.3s linear forwards;
  }
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .contentBody {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
  z-index: 2;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .contentBody::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .contentBody.animateEnter {
  animation: slide-in-from-right 0.3s linear forwards;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .contentBody.animateExit {
  animation: slide-out-to-right 0.3s linear forwards;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .contentBody.prev {
  position: absolute;
  bottom: 80px;
  width: 100%;
  z-index: 1;
}
@media screen and (max-width: 47.99em) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .itemModal
    .secondaryContent
    .contentBody.prev {
    position: fixed;
    top: 60px;
  }
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .itemModalCancelButton {
  position: absolute;
  top: 18px;
  right: 16px;
  font-size: 16px;
  font-weight: 500;
  z-index: 3;
  color: #646464;
  background-color: #fff;
  height: auto;
  width: auto;
  border: none;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .itemModal
  .secondaryContent
  .itemModalCancelButton:hover {
  color: #474747;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections {
  background: #f0f0f2;
  display: flex;
  flex-direction: column;
  padding: 16px;
  gap: 16px;
  flex: 1;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSectionHeader,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSectionHeader {
  font-size: 18px;
  font-weight: 600;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection {
  background: #fff;
  border-radius: 16px;
  padding: 16px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title {
  padding-bottom: 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: 4px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer
  .modSectionTitle,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer
  .modSectionTitle {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  font-size: 18px;
  width: 100%;
  font-weight: 600;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer
  .modSectionSubtitle,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .modSectionTitleContainer
  .modSectionSubtitle {
  font-size: 14px;
  color: #666;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .required,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .required {
  font-size: 12px;
  font-weight: 600;
  line-height: 14px;
  border-radius: 36px;
  align-items: center;
  display: flex;
  justify-content: center;
  padding: 4px 8px;
  gap: 8px;
  background-color: #f0f0f2;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .required
  i,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .required
  i {
  width: 12px;
  height: 12px;
  display: flex;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .required
  i
  svg,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .required
  i
  svg {
  width: 12px;
  height: 12px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .required.valid,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .required.valid {
  background-color: #e8f7d4;
  color: #006400;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .title
  .required.invalid,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .title
  .required.invalid {
  background-color: #ffe6e9;
  color: #d40023;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .required,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .required {
  color: #666;
  font-size: 14px;
  line-height: 14px;
  padding: 4px 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .required.highlight,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .required.highlight {
  color: #d40023;
  font-size: 16px;
  font-weight: 500;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .selections
  .toggles,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .selections
  .toggles {
  display: flex;
  flex-direction: column;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .divider::after,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .divider::after {
  display: block;
  content: "";
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .divider:last-child,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .divider:last-child {
  display: none;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  overflow: visible;
  min-height: 64px;
  padding: 16px;
  margin: 0 -16px;
}
@media screen and (min-width: 47.99em) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .rootContent
    .modSections
    .modSection
    .row:hover,
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .secondaryContent
    .modSections
    .modSection
    .row:hover {
    background: rgba(0, 0, 0, 0.03);
  }
}
@media screen and (max-width: 47.99em) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .rootContent
    .modSections
    .modSection
    .row:active,
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .secondaryContent
    .modSections
    .modSection
    .row:active {
    background: rgba(0, 0, 0, 0.03);
  }
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row.skeleton,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row.skeleton {
  display: block;
  padding: 8px 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row.subGroups,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row.subGroups {
  cursor: pointer;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .option,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .option {
  display: flex;
  align-items: center;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .option
  .label,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .option
  .label {
  display: flex;
  flex-direction: row-reverse;
  padding: 16px 0;
  margin: -16px 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .option
  .label.showInput,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .option
  .label.showInput {
  padding-left: 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .option
  .label::after,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .option
  .label::after {
  transform: translate(5px);
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .option
  .label::before,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .option
  .label::before {
  transform: translate(-5px);
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .option
  .checkbox:checked
  ~ .label.hasQuantitySelector,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .option
  .radio:checked
  ~ .label.hasQuantitySelector,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .option
  .checkbox:checked
  ~ .label.hasQuantitySelector,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .option
  .radio:checked
  ~ .label.hasQuantitySelector {
  border-radius: 0px;
  box-shadow: none;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents.hasModifiers,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents.hasModifiers {
  justify-content: space-between;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents.selectedWithQuantity,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents.selectedWithQuantity {
  border-radius: 8px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents.selectedWithQuantity
  .modifierText,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents.selectedWithQuantity
  .modifierText {
  color: #252525;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents.selectedWithQuantity
  .actions,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents.selectedWithQuantity
  .actions {
  display: block;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent {
  flex: 1;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
  flex-direction: column;
  gap: 2px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent.leftAligned,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent.leftAligned {
  justify-content: flex-start;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent
  .price.disabled,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent
  .name.disabled,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent
  .price.disabled,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierTextContent
  .name.disabled {
  color: silver;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierText,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierText {
  overflow: hidden;
  display: inline-grid;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierText,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .toggleContents
  .price,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents
  .modifierText,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .toggleContents
  .price {
  line-height: 20px;
  color: #646464;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .nestedSelections,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .nestedSelections {
  width: 100%;
  list-style: none;
  display: flex;
  padding: 8px 0px;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.03);
  color: #202020;
  font-size: 14px;
  margin-bottom: 0;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .nestedSelections
  li,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .nestedSelections
  li {
  padding: 0px 16px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .actions,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .actions {
  display: flex;
  align-items: center;
  flex: 0;
  padding: 0 12px 0 12px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .actions.disabled,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .actions.disabled {
  pointer-events: none;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .row
  .name,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .row
  .name {
  padding-right: 8px;
  color: #252525;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.fractionalQuantity,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.fractionalQuantity {
  display: flex;
  background-color: #f5f5f5;
  align-items: center;
  justify-content: space-between;
  padding-right: 8px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.fractionalQuantity
  .quantity
  input,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.fractionalQuantity
  .quantity
  input {
  max-width: 100px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.fractionalQuantity
  .quantity
  input:focus,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.fractionalQuantity
  .quantity
  input:focus {
  border-color: var(--ds-border-focus, var(--tsw-background-contrasting-color));
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.fractionalQuantity
  .quantity
  label,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.fractionalQuantity
  .quantity
  label {
  margin-left: -24px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection
  .subtitle,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection
  .subtitle {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #666;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests {
  display: flex;
  flex-direction: column;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests
  label,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests
  label {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests
  textarea,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests
  textarea {
  width: 100%;
  border: 1px solid silver;
  border-radius: 6px;
  resize: vertical;
  overflow: auto;
  padding: 16px;
  height: unset;
  box-sizing: border-box;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests
  textarea:hover,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests
  textarea:hover {
  border-color: var(--ds-border-focus, var(--tsw-background-contrasting-color));
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests
  .row:hover,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests
  .row:hover {
  background: unset;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests
  .specialRequestsMessaging,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests
  .specialRequestsMessaging {
  display: flex;
  gap: 6px;
  color: #646464;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests
  .specialRequestsMessaging
  .messaging,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests
  .specialRequestsMessaging
  .messaging {
  font-size: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.specialRequests
  .specialRequestsMessaging
  .messaging
  .advisory,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.specialRequests
  .specialRequestsMessaging
  .messaging
  .advisory {
  font-size: 14px;
  font-weight: 600;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantityLabel,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantityLabel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 18px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantityLabel
  label,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantityLabel
  label {
  font-weight: 600;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantityLabel
  i,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantityLabel
  i {
  color: #646464;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantitySelector,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantitySelector {
  gap: 8px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantitySelector
  .quantity,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantitySelector
  .quantity {
  font-size: 18px;
  font-weight: 400;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantitySelector
  input,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantitySelectorContent
  .quantitySelector
  input {
  font-size: 18px;
  max-width: 48px;
  border: 1px solid #646464;
  border-radius: 4px;
  height: 32px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantityMessaging,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantityMessaging {
  display: flex;
  gap: 6px;
  color: #646464;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantityMessaging
  .messaging,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantityMessaging
  .messaging {
  font-size: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .rootContent
  .modSections
  .modSection.quantitySection
  .quantityMessaging
  .messaging
  .advisory,
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .secondaryContent
  .modSections
  .modSection.quantitySection
  .quantityMessaging
  .messaging
  .advisory {
  font-size: 14px;
  font-weight: 600;
}
@media (max-height: 320px) {
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .rootContent
    .modSections
    .modSection
    .header,
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .secondaryContent
    .modSections
    .modSection
    .header {
    position: unset;
  }
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .rootContent
    .modSections
    .modSection
    .imageWrapper,
  .modal
    .itemModalWrapper
    .itemModalContent
    .itemModalContainer
    .secondaryContent
    .modSections
    .modSection
    .imageWrapper {
    display: none;
  }
}
.modal .itemModalWrapper .itemModalContent .itemModalContainer .actionWrapper {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  padding: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  background-color: #fff;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .actionWrapper
  button {
  border-radius: 32px;
  font-size: 16px;
  font-weight: 500;
  padding: 12px 24px;
  min-height: 48px;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .actionWrapper
  button.secondary {
  justify-content: center;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .actionWrapper
  button.remove {
  background-color: #fff;
  color: #252525;
  border: 1px solid #cecece;
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .actionWrapper
  button.remove:hover {
  background-color: var(
    --ds-background-primary-overlay,
    var(--tsw-primary-color-25)
  );
}
.modal
  .itemModalWrapper
  .itemModalContent
  .itemModalContainer
  .actionWrapper
  .loadingButton {
  border-radius: 32px;
  height: 48px;
  width: 100%;
  background: #f0f0f2;
}
.modalButton {
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  width: 100%;
  border: none;
  border-radius: 32px;
  height: 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 24px;
}
.modalButton.centered {
  justify-content: center;
}
.modalButton:hover {
  cursor: pointer;
  background-color: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
}
.modalButton:disabled {
  cursor: default;
  background-color: #7a7a7a;
}
.modalButton:disabled:hover {
  cursor: default;
  background-color: #7a7a7a;
}
.modalButton.marginBottom {
  margin-bottom: 8px;
}
@keyframes slide-in-from-right {
  0% {
    margin-left: 100%;
  }
  100% {
    margin-left: 0;
  }
}
@keyframes slide-out-to-right {
  0% {
    margin-left: 0;
  }
  100% {
    margin-left: 100%;
  }
}
@keyframes slide-up-desktop {
  0% {
    top: 100%;
  }
  100% {
    top: 0;
  }
}
@keyframes slide-down-desktop {
  0% {
    top: 0;
  }
  100% {
    top: 100%;
  }
}
@keyframes slide-up-mobile {
  0% {
    top: 100%;
  }
  100% {
    top: 36px;
  }
}
@keyframes slide-down-mobile {
  0% {
    top: 36px;
  }
  100% {
    top: 100%;
  }
}
.itemResolutionModal {
  padding: 24px 24px 40px 24px;
  width: 300px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  font-size: 14px;
}
.itemResolutionModal .header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.itemResolutionModal .header h3 {
  font-size: 18px;
  font-weight: 600;
}
.itemResolutionModal .header .closeButton {
  margin: 0;
  padding: 0;
}
.itemResolutionModal .info {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.itemResolutionModal .info img {
  align-self: center;
}
.itemResolutionModal .actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.itemResolutionModal .actions .button {
  width: 100%;
}
.ooQuantitySelector {
  gap: 8px;
}
.ooQuantitySelector.rootModal button.add,
.ooQuantitySelector.rootModal button.subtract {
  height: 32px;
  width: 32px;
}
.ooQuantitySelector button.add,
.ooQuantitySelector button.subtract {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 24px;
  width: 24px;
  border: 2px solid #252525;
  border-radius: 100%;
}
.ooQuantitySelector button.add i,
.ooQuantitySelector button.subtract i {
  display: flex;
}
.ooQuantitySelector button.add:disabled,
.ooQuantitySelector button.add[aria-disabled="true"],
.ooQuantitySelector button.subtract:disabled,
.ooQuantitySelector button.subtract[aria-disabled="true"] {
  background-color: #7a7a7a;
  border-color: #7a7a7a;
  color: #fff;
}
.quantitySelector {
  display: flex;
  align-items: center;
}
.quantitySelector .button {
  line-height: 0;
  height: 26px;
  width: 26px;
  border-radius: 50%;
  color: #252525;
  border: none;
  padding: 0;
  background-color: transparent;
}
.quantitySelector .button:first-child {
  margin-right: 8px;
}
.quantitySelector .button:last-child {
  margin-left: 8px;
}
.quantitySelector .button:hover {
  cursor: pointer;
}
.quantitySelector .button:disabled,
.quantitySelector .button[aria-disabled="true"] {
  color: #7a7a7a;
  opacity: 0.5;
  cursor: default;
}
.quantitySelector .quantity {
  display: flex;
  justify-content: center;
  align-items: center;
}
.quantitySelector.disabled .quantity {
  filter: grayscale(1) contrast(0.7);
}
.itemTagsCardContainer {
  display: flex;
  flex-direction: row;
  gap: 8px;
  width: 100%;
  overflow: hidden;
}
.itemTagsCardContainer.wrap {
  flex-wrap: wrap;
}
.itemTagsCardContainer.wrap > div {
  white-space: normal;
}
.itemTagsCardContainer .dynamicTagContainer {
  display: flex;
  flex-direction: row;
  gap: 8px;
  width: 100%;
  overflow: hidden;
}
.itemTagsCardContainer .dynamicTagContainer .itemTag:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
}
.itemTagsModalContainer {
  display: flex;
  flex-direction: row;
  gap: 8px;
  width: 100%;
  flex-wrap: wrap;
}
.itemTagsModalContainer .modalItemTag {
  padding: 4px 8px;
  border-radius: 36px;
  background: rgba(0, 0, 0, 0.06);
  font-size: 12px;
}
.itemTag {
  display: flex;
  flex-direction: row;
  gap: 4px;
  align-items: center;
  border-radius: 36px;
  padding: 4px 8px;
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  -webkit-text-decoration-line: none;
  text-decoration-line: none;
  font-size: 12px;
  font-weight: normal;
  white-space: nowrap;
}
.itemTag:not(.subtle) {
  font-weight: bold;
  font-family: "Source-Sans-Pro", sans-serif;
}
.changeLocationModal .modalContent {
  padding: 0;
  border-radius: 0px;
}
@media screen and (min-width: 35.5em) {
  .changeLocationModal .modalContent {
    max-height: 400px;
  }
}
.changeLocationModal .modalContent .locationLabel {
  display: grid;
  gap: 8px;
}
.changeLocationModal .modalContent .locationLabel .locationName {
  font-weight: 600;
}
.changeLocationModal .modalContent .locationLabel .locationAddress {
  font-size: 14px;
  font-weight: 400;
  color: #646464;
  text-wrap: pretty;
}
.changeLocationModal .modalContent .locationLabel .locationStockStatus {
  display: flex;
  align-items: center;
  gap: 8px;
}
.changeLocationModal
  .modalContent
  .locationLabel
  .locationStockStatus
  .stockMessage {
  font-size: 14px;
  color: #71ab24;
}
.changeLocationModal
  .modalContent
  .locationLabel
  .locationStockStatus
  .stockMessage.outOfStock {
  color: #d40023;
}
.changeLocationModal .modalContent .currentLocation {
  border-bottom: 0.75px solid #0000001f;
  padding: 20px 16px;
  display: grid;
  gap: 16px;
}
.changeLocationModal .modalContent .currentLocation .locationDetails {
  border: #cecece 1px solid;
  border-radius: 12px;
  padding: 16px 16px;
}
.changeLocationModal .modalContent .currentLocation .locationDetails .address {
  display: flex;
  align-items: center;
  gap: 12px;
}
.changeLocationModal
  .modalContent
  .currentLocation
  .locationDetails
  .address
  .addressLine1 {
  font-weight: 600;
}
.changeLocationModal
  .modalContent
  .currentLocation
  .locationDetails
  .address
  .addressCity {
  color: #646464;
  font-size: 12px;
}
.changeLocationModal .modalContent .otherLocations {
  padding: 20px 16px;
  display: grid;
  gap: 8px;
}
.changeLocationModal .modalContent .otherLocations ul {
  list-style: none;
  padding: unset;
  margin: unset;
}
.changeLocationModal .modalContent .menuItemCard {
  padding: 16px 24px;
  border-bottom: 0.75px solid #0000001f;
  background: rgba(0, 0, 0, 0.04);
  display: flex;
  gap: 16px;
  align-items: flex-start;
  justify-content: space-between;
}
.changeLocationModal .modalContent .menuItemCard .menuItemInformation {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.changeLocationModal .modalContent .menuItemCard .menuItemDescription {
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.changeLocationModal .modalContent .menuItemCard .menuItemPrice {
  font-size: 14px;
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
}
.changeLocationModal .modalContent .menuItemCard .menuItemImageContainer {
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  border-radius: 8px;
  overflow: hidden;
}
.changeLocationModal .modalContent .menuItemCard .menuItemImage {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.confirmLocationChange {
  width: 400px;
}
.confirmLocationChange .gap-8 {
  display: grid;
  gap: 8px;
  width: 100%;
}
.confirmLocationChange .modalContent {
  display: grid;
}
.confirmLocationChange .modalContent .topContent {
  display: grid;
  gap: 24px;
  justify-items: center;
  padding: 24px 8px;
  width: 100%;
}
.confirmLocationChange .modalContent .rxIcon {
  color: #ff4c00;
  opacity: 50%;
}
.confirmLocationChange .modalContent .rxIcon svg {
  height: 48px;
  width: 48px;
}
.confirmLocationChange .modalContent .newLocation {
  justify-items: center;
  text-align: center;
}
.confirmLocationChange .modalContent .newLocation .headline {
  font-size: 18px;
}
.confirmLocationChange .modalContent .newLocation .locationAddress {
  color: #646464;
  font-size: 16px;
}
.errorNavigationModal {
  max-width: 400px;
  width: 90%;
  margin: 0 auto;
  padding: 24px;
  border-radius: 8px;
}
.errorNavigationModal .error-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 16px;
}
.errorNavigationModal .error-content .error-header {
  display: block;
  align-items: center;
  gap: 12px;
}
.errorNavigationModal .error-content .error-header .warning-icon {
  width: 24px;
  height: 24px;
  color: var(--ds-error-default);
}
.errorNavigationModal .error-content .error-header h2 {
  font-size: 18px;
  font-weight: 600;
  color: var(--ds-text-default);
  margin: 0;
}
.errorNavigationModal .error-content p {
  color: var(--ds-text-default);
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}
.errorNavigationModal .error-content .countdown {
  font-size: 14px;
  color: var(--ds-text-secondary);
  margin-top: 8px;
}
.noDriver {
  display: flex;
  flex-direction: row;
}
.noDriver .info {
  display: flex;
  flex: 1;
  flex-direction: column;
}
.noDriver .icon {
  margin-right: 16px;
}
.copy {
  color: #666;
  margin-top: 8px;
  font-size: 14px;
}
.driverProfile {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.driverProfile .driverPhoto {
  width: 48px;
  height: 48px;
  border-radius: 48px;
  margin-right: 8px;
}
.driverName {
  font-size: 18px;
  font-weight: bold;
}
.providerName {
  font-size: 12px;
  color: #666;
  margin-top: 8px;
  font-style: italic;
}
.driverInfoHeader {
  display: flex;
  flex-direction: row;
}
.deliveryPhotoButton button.buttonColor {
  color: #2b4fb9;
}
.deliveryPhotoButton button.padding0 {
  padding: 0;
}
.deliveryPhotoButton .paddingTop025 {
  padding-top: 0.25rem;
}
.deliveryPhotoButton button.fontWeight400 {
  font-weight: 400;
}
.deliveryPhotoModal img.deliveryPhoto {
  max-height: 70vh;
}
.orderStatusBarWrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
  margin-top: 16px;
}
.orderStatusHeader {
  font-weight: bold;
  display: flex;
  align-items: center;
}
.orderStatusFooter {
  font-size: 14px;
  color: #666;
  margin-top: 16px;
}
.statusStageDivider {
  height: 3px;
  flex: 1;
  margin-left: 3px;
  margin-right: 3px;
  background: #252525;
}
.statusStageDivider.upcoming {
  background: silver;
}
.statusStageDivider.inProgress {
  background: linear-gradient(to right, #252525, #25252500);
}
.statusIcon {
  color: #252525;
}
.statusIcon.inProgress {
  color: silver;
}
.warningStatusIcon {
  color: #d40023;
}
.contactButton {
  margin-top: 16px;
  width: 100% !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.trackerMapFrame {
  flex-basis: 50%;
  height: 199px;
  overflow: hidden;
  border-radius: 10px;
}
.trackerMapFrame iframe {
  border: none;
  box-sizing: border-box;
}
.sectionBlock {
  padding: 16px 24px 16px 24px;
  box-shadow: 0px 0px 6px var(--ds-surface-shadow, rgba(0, 0, 0, 0.1));
  border-radius: 8px;
  margin: 16px 0px;
}
.mapWrapper {
  margin-top: 16px;
}
.fulfillmentInformation {
  margin-top: 16px;
}
.trackerSkeleton {
  width: 420px;
  border-radius: 8px;
  margin: 16px 0px;
}
.fulfillmentRow {
  margin-top: 16px;
  display: flex;
  flex-direction: row;
  align-items: center;
}
.fulfillmentRow .header {
  line-height: 1.2rem;
}
.fulfillmentRow .icon {
  margin-right: 8px;
}
.fulfillmentRow .estimatedArrival {
  font-weight: bold;
}
.fulfillmentRow .dropoffDeadline {
  color: #666;
  font-weight: normal;
}
.fulfillmentRow .directions {
  font-weight: 500;
  color: #2b4fb9;
}
.fulfillmentRow .deliveryAddress {
  font-size: 14px;
}
.fulfillmentRow .deliveryInstructions,
.fulfillmentRow .contactlessNote {
  font-size: 14px;
}
.stickyFooterContainer {
  background: linear-gradient(
    360deg,
    var(--ds-surface-default, var(--tsw-background-color)) 20.67%,
    rgba(255, 255, 255, 0) 100%
  );
  position: fixed;
  bottom: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  z-index: 8;
  padding: 20px 16px;
}
@media screen and (max-width: 23em) {
  .stickyFooterContainer {
    padding: 20px 12px;
  }
}
.stickyFooterContainer .footer {
  display: flex;
  align-items: center;
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  border-radius: 50px;
  font-size: 16px;
  height: 48px;
  border: unset;
  padding: 0;
}
.stickyFooterContainer .footer:active {
  background-color: color-mix(
    in oklch,
    var(--ds-background-primary, var(--tsw-primary-color)) 100%,
    black 8%
  );
}
.stickyFooterContainer .footer:active .cart {
  background-color: color-mix(
    in oklch,
    var(--ds-background-primary-focus, var(--tsw-primary-hover-color)) 100%,
    black 8%
  );
}
.stickyFooterContainer .footer.bounce {
  animation: footer-bounce 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.stickyFooterContainer .footer .content {
  padding: 0 24px;
  width: 100%;
}
@media screen and (max-width: 23em) {
  .stickyFooterContainer .footer .content {
    font-size: 14px;
  }
}
.stickyFooterContainer .footer .content.lessPadding {
  padding-right: 16px;
}
@media screen and (max-width: 23em) {
  .stickyFooterContainer .footer .content.lessPadding {
    padding-left: 12px;
  }
}
.stickyFooterContainer .footer .content .amount {
  font-weight: 700;
}
.stickyFooterContainer .footer .cart {
  display: flex;
  align-items: center;
  gap: 8px;
  background-color: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
  border-radius: 0 50px 50px 0;
  padding: 0 16px;
  height: 100%;
}
.stickyFooterContainer .footer .cart .qty.bounce {
  animation: qty-bounce 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
@keyframes footer-bounce {
  0% {
    transform: scaleX(1);
  }
  15% {
    transform: scaleX(1.03);
  }
  30% {
    transform: scaleX(0.99);
  }
  45% {
    transform: scaleX(1.01);
  }
  60% {
    transform: scaleX(0.998);
  }
  75% {
    transform: scaleX(1.002);
  }
  90% {
    transform: scaleX(0.999);
  }
  100% {
    transform: scaleX(1);
  }
}
@keyframes qty-bounce {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scale(1.2, 0.85);
  }
  50% {
    transform: scale(0.9, 1.1);
  }
  70% {
    transform: scale(1.1, 0.95);
  }
  100% {
    transform: scale(1);
  }
}
.infoIconWrapper {
  cursor: pointer;
  display: inline;
  margin-left: 4px;
  height: 20px;
  width: -webkit-min-content;
  width: min-content;
  vertical-align: text-top;
}
.infoIconWrapper .infoIcon {
  height: 12px;
  width: 12px;
  color: #252525;
}
.titleAndTooltip {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.feeModal {
  margin: 24px;
}
.feeModal .title {
  padding-bottom: 18px;
}
.feeModal .closeButton {
  position: absolute;
  top: 0;
  right: 0;
}
.feeModal .fee {
  margin: 12px;
}
.feeModal .fee .feeDescription {
  margin: 8px;
}
.taxesAndFees {
  cursor: pointer;
}
.reorderItemCard {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
  text-align: left;
  padding: 0;
  height: 136px;
  min-height: 136px;
  width: 100%;
  max-width: 612px;
  overflow: hidden;
  border: 0.75px solid var(--ds-border-default, #e0e0e0);
  border-radius: 8px;
  box-shadow: 0 2px 4px 0 var(--ds-surface-shadow, #e0e0e0), 0 0 6px 0 #00000005;
}
.reorderItemCard.borderStrokeNone {
  border: none;
}
.reorderItemCard.borderStrokeExaggerated {
  border: 2px solid var(--ds-border-default, #e0e0e0);
}
.reorderItemCard.roundedCornerNone {
  border-radius: 1px;
}
.reorderItemCard.roundedCornerExaggerated {
  border-radius: 20px;
}
.reorderItemCard.dropShadowNone {
  box-shadow: none;
}
.reorderItemCard.dropShadowExaggerated {
  box-shadow: 0 4px 8px 0 var(--ds-surface-shadow, #0000000f),
    0 0 4px 0 #0000000a;
}
.reorderItemCard:not(:disabled):hover {
  box-shadow: 0 0 24px var(--ds-surface-shadow, rgba(0, 0, 0, 0.2));
  cursor: pointer;
}
.reorderItemCard:disabled {
  cursor: default;
}
.reorderItemCard .itemInfo {
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex: 1;
}
.reorderItemCard .itemInfo .headerText {
  font-size: 16px;
  font-weight: 600;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.reorderItemCard .itemInfo .modifierText {
  font-size: 14px;
}
.reorderItemCard .itemInfo .itemPrice {
  font-size: 14px;
  margin-top: auto;
}
.reorderItemCard .itemImage {
  aspect-ratio: 1/1;
}
.reorderItemCard .seeMore {
  width: 100%;
  padding: 16px;
  gap: 16px;
  font-size: 16px;
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.reorderItemCard.classic .itemImage {
  border-left: 0.75px solid;
}
.reorderItemCard.leftImageV2 {
  flex-direction: row-reverse;
}
.reorderItemCard.leftImageV2 .itemImage {
  border-right: 0.75px solid;
}
.reorderItemCard.bgShadeLight .itemImage {
  border-color: var(--ds-border-default, #e0e0e0);
}
.reorderItemCard.bgShadeDark .itemImage {
  border-color: var(--ds-border-default, #ffffff14);
}
.reorderItemCard.imageRatioLarger .itemImage,
.reorderItemCard.imageRatioTaller .itemImage {
  aspect-ratio: 4/3;
}
.reorderItemCard.squareImage .itemImage,
.reorderItemCard.imageRatioSmaller .itemImage {
  aspect-ratio: 1/1;
}
.reorderItemCard.imageRatioShorter .itemImage {
  aspect-ratio: 16/9;
}
.itemHistoryModal {
  min-width: 500px;
}
.itemHistoryModal .closeButton {
  position: absolute;
  top: 8px;
  right: 16px;
  z-index: 3;
  background-color: #fff;
  border-radius: 50%;
}
@media screen and (max-width: 47.99em) {
  .itemHistoryModal .closeButton {
    top: 0;
  }
}
.itemHistoryModal h2 {
  padding-top: 24px;
  padding-left: 24px;
}
@media screen and (max-width: 47.99em) {
  .itemHistoryModal {
    min-width: 100%;
  }
}
.itemHistoryModal .items {
  padding: 24px 24px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  overflow: scroll;
}
.itemHistoryModal .items > :last-child {
  margin-bottom: 24px;
}
.itemHistoryModal .itemCard {
  max-width: 100%;
  min-width: 100%;
  overflow: visible;
}
.itemHistoryModal .itemCard:last-child {
  margin-bottom: 24px;
}
.reorderItems {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: 24px;
  line-height: normal;
}
.reorderItems .reorderItemsHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.reorderItems .reorderItemsHeader .header {
  font-size: 20px;
}
.reorderItems .reorderItemsHeader .arrows {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
}
.reorderItems .reorderItemsHeader .arrows .disabledArrow {
  opacity: 0.4;
}
.reorderItems .reorderItemsHeader .arrows .arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  height: 32px;
  width: 32px;
  border: 1px solid var(--ds-border-default, #0000001f);
  border-radius: 50%;
  background-color: var(--ds-background-primary, #ffffff);
}
.reorderItems .reorderItemsHeader .arrows .arrow.right {
  transform: rotate(180deg);
}
.reorderItems .reorderItemsHeader .arrows .arrow.disabled {
  cursor: auto;
}
.reorderItems .reorderItemsHeader .arrows .arrow svg {
  height: 12px;
  width: 8px;
}
.reorderItems .reorderMessagingCardContainer {
  padding: 24px 0;
  width: 100%;
}
@media screen and (min-width: 48em) {
  .reorderItems .reorderMessagingCardContainer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
}
.reorderItems .reorderMessagingCardContainer .reorderMessagingCard {
  display: flex;
  flex-direction: row;
  gap: 24px;
  padding: 24px;
}
@media screen and (max-width: 47.99em) {
  .reorderItems .reorderMessagingCardContainer .reorderMessagingCard {
    padding: 16px 24px;
  }
}
.reorderItems .reorderMessagingCardContainer .reorderMessagingCard.disabled {
  pointer-events: none;
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .reorderInfo {
  display: flex;
  flex-direction: row;
  gap: 16px;
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .reorderInfo
  .icon {
  color: var(--ds-icon-action, var(--tsw-primary-color));
}
@media screen and (max-width: 47.99em) {
  .reorderItems
    .reorderMessagingCardContainer
    .reorderMessagingCard
    .reorderInfo
    .icon.alignCenter {
    align-self: center;
  }
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .reorderInfo
  .reorderInfoText {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 4px;
  align-self: center;
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .reorderInfo
  .reorderInfoText
  .reorderInfoHeader {
  font-size: 18px;
  font-weight: 600;
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .reorderInfo
  .reorderInfoText
  .reorderInfoDetails {
  font-size: 14px;
  font-weight: 400;
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .signInButton {
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
  align-self: center;
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .signInButton
  button {
  padding: 12px 16px;
}
.reorderItems
  .reorderMessagingCardContainer
  .reorderMessagingCard
  .chevron.expanded
  svg {
  transform: rotate(90deg);
}
.reorderItems .reorderItemCards {
  width: calc(100% + 48px);
  padding: 24px;
  margin: 0 -24px;
}
.loadingSpinnerOverlay {
  border-radius: 10px;
}
.basicUpsellCardGrid {
  cursor: pointer;
  background-color: #f7f7f7;
  border-radius: 8px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-weight: 400;
}
.basicUpsellCardGrid .title {
  font-size: 14px;
  line-height: 17px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  color: #000;
}
.basicUpsellCardGrid .price {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  color: #000;
}
.imageUpsellItemGrid {
  cursor: pointer;
  display: grid;
  grid-template: "image" 88px "title" 52px "price" 14px;
  grid-gap: 0;
}
.imageUpsellItemGrid .image {
  grid-area: image;
  position: relative;
}
.imageUpsellItemGrid .image .imgWrapper {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 8px;
}
.imageUpsellItemGrid .image .quickAdd {
  position: absolute;
  right: 8px;
  bottom: 8px;
  cursor: pointer;
}
.imageUpsellItemGrid .title {
  grid-area: title;
  margin-bottom: 0;
  margin-top: 16px;
  font-size: 14px;
  line-height: 17px;
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  color: #000;
}
.imageUpsellItemGrid .price {
  grid-area: price;
  margin-top: 0;
  font-size: 12px;
  font-weight: 400;
  color: #000;
}
.upsell {
  --border-style: 1px solid $black-12;
  border-top: var(--border-style);
  border-bottom: var(--border-style);
}
@media only screen and (max-height: 47em) {
  .upsell {
    overflow-y: auto;
    min-height: 54px;
  }
}
@media screen and (max-height: 34.5em) {
  .upsell {
    max-height: 54px;
  }
}
.upsellHeader,
.upsellGrid {
  margin: 16px 0;
  font-weight: 700;
  font-size: 18px;
  line-height: 22px;
  letter-spacing: 0.2px;
  color: #252525;
}
.upsellGrid {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 16px;
  align-items: start;
}
.upsellGrid.upsellLong {
  grid-auto-rows: auto;
}
.upsellGrid.upsellShort {
  grid-auto-rows: auto;
}
.upsellQuickAddBtn {
  width: 24px;
  height: 24px;
  font-size: larger;
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  border: 1.5px solid #fff;
  border-radius: 24px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.04), 0 2px 2px rgba(0, 0, 0, 0.06),
    0 3px 1px -2px rgba(0, 0, 0, 0.09);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.upsellQuickAddBtn:hover {
  background-color: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
}
.filterNav {
  width: 100%;
}
.filterNav .filters {
  display: flex;
  flex-direction: row;
}
.filterTags {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: flex-start;
  padding-top: 24px;
  padding-bottom: 16px;
  flex-wrap: wrap;
}
.filterTags .filterTag {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
  border-radius: 8px;
  padding: 8px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}
.filterTags .filterTag .removeButton {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--ds-surface-tertiary, var(--tsw-primary-color));
  border-radius: 50%;
  height: 20px;
  width: 20px;
  border: none;
  color: var(--ds-icon-default, var(--tsw-primary-text-color));
}
.filterTags .filterTag .removeButton i {
  height: 100%;
}
.filterTags .filterTag .removeButton svg {
  width: 16px;
  height: 16px;
}
.filter {
  position: relative;
  padding: 8px 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.filter .filterLabel {
  display: inline-block;
  white-space: nowrap;
}
.filter .arrow {
  padding: 5px;
}
.filterContent {
  border-radius: 12px;
  cursor: default;
  position: absolute;
  top: 100%;
  z-index: 7;
  margin-top: 5px;
  align-items: inherit;
  padding: 12px;
}
.filterContent.left {
  left: 0;
}
.filterContent:not(.left) {
  right: 0;
}
@media screen and (max-width: 47.99em) {
  .filterContent {
    inset: 0;
    position: fixed;
    z-index: 10;
    border-radius: 0;
    margin-top: 0;
    max-height: 100%;
    display: flex;
    flex-direction: column;
  }
}
.filterContent .header {
  flex: 0;
  padding: 8px 0;
}
.filterContent .filterOptionsContainer {
  max-height: 288px;
  overflow-y: scroll;
  flex: 1;
}
@media screen and (max-width: 63.99em) {
  .filterContent .filterOptionsContainer {
    max-height: unset;
  }
}
.filterContent .filterOptionsContainer input {
  accent-color: var(--ds-icon-action, var(--tsw-primary-color));
}
.filterContent .filterOptionsContainer > * {
  display: flex;
  cursor: pointer;
  line-height: 24px;
  padding: 0 12px;
  border-radius: 6px;
}
.filterContent .filterOptionsContainer > *:hover {
  background-color: var(--ds-surface-focus, var(--tsw-primary-color-50));
}
.filterContent .filterOptionsContainer .filterOption {
  white-space: nowrap;
  display: flex;
  gap: 16px;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.filterContent .filterOptionsContainer .filterOption.bold {
  font-weight: 600;
  font-size: 16px;
}
.filterContent .filterOptionsContainer .filterOption.indent {
  padding-left: 20px;
  font-size: 14px;
}
.filterContent .filterOptionsContainer::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.filterContent .buttons {
  width: 100%;
  display: flex;
  gap: 6px;
  flex: 0;
  padding-top: 6px;
}
.filterContent .buttons .button {
  flex: 1;
  border-radius: 8px;
}
@media screen and (min-width: 48em) {
  .filterContent .buttons .button.mobileOnly {
    display: none;
  }
}
.paginatedMenu .loader {
  width: 100%;
  height: 124px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.photoSection {
  display: flex;
}
@media screen and (max-width: 47.99em) {
  .photoSection {
    flex-direction: column;
  }
}
@media screen and (max-width: 47.99em) {
  .photoSection.right {
    flex-direction: column-reverse;
  }
}
.photoSection .textContent {
  flex-basis: 50%;
}
@media screen and (min-width: 48em) {
  .photoSection .textContent.left {
    padding-right: 75px;
  }
  .photoSection .textContent.right {
    padding-left: 75px;
  }
}
.photoSection .textContent .title {
  font-size: 68px;
  line-height: 68px;
}
@media screen and (max-width: 63.99em) {
  .photoSection .textContent .title {
    font-size: 32px;
    line-height: 32px;
  }
}
.photoSection .textContent .separator {
  margin: 12px 0;
  max-width: 100px;
  height: 4px;
  border: none;
}
@media screen and (max-width: 63.99em) {
  .photoSection .textContent .separator {
    margin: 8px 0;
  }
}
@media screen and (min-width: 64em) {
  .photoSection .textContent .body {
    max-width: 550px;
  }
}
.photoSection .textContent .ctas {
  margin: 32px 0;
}
@media screen and (max-width: 47.99em) {
  .photoSection .textContent .ctas {
    display: flex;
    justify-content: center;
  }
}
.photoSection .photoContent {
  flex-shrink: 1;
  flex-basis: 50%;
  display: flex;
  position: relative;
}
.photoSection .photoContent img {
  border-radius: 6px;
  filter: drop-shadow(2px 4px 4px rgba(0, 0, 0, 0.25));
}
.photoSection .photoContent .anchorPhoto {
  position: relative;
  width: 400px;
  min-height: 150px;
}
@media screen and (max-width: 63.99em) {
  .photoSection .photoContent .anchorPhoto {
    width: 285px;
  }
}
@media screen and (max-width: 47.99em) {
  .photoSection .photoContent .anchorPhoto {
    display: none;
  }
}
.photoSection .photoContent .anchorPhoto .mainImg {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.photoSection .photoContent .anchorPhoto .featureImg {
  position: absolute;
  bottom: -50px;
  width: auto;
  max-height: 75%;
  max-width: 50%;
}
.photoSection .photoContent.left {
  justify-content: flex-end;
}
@media screen and (max-width: 47.99em) {
  .photoSection .photoContent.left {
    justify-content: center;
  }
}
.photoSection .photoContent.left .featureImg {
  left: -50px;
}
.photoSection .photoContent.right {
  justify-content: flex-start;
}
@media screen and (max-width: 47.99em) {
  .photoSection .photoContent.right {
    justify-content: center;
  }
}
.photoSection .photoContent.right .featureImg {
  right: -50px;
}
.date-of-birth-popup {
  text-align: center;
}
.date-of-birth-popup .inputElementWrapper,
.date-of-birth-popup .inputWrapper {
  width: auto;
}
.date-of-birth-popup .react-aria-DatePicker {
  font-size: 16px;
}
.date-of-birth-popup .react-aria-DatePicker .react-aria-DateInput {
  text-transform: uppercase;
  border: 1px solid #cecece;
  border-radius: 8px;
  padding-right: 16px;
  padding-left: 16px;
}
.date-of-birth-popup .react-aria-DatePicker .react-aria-Group {
  flex-direction: column;
  width: unset;
  justify-content: center;
}
.date-of-birth-popup .react-aria-DatePicker .calendarToggle {
  display: none;
}
.date-of-birth-popup .react-aria-DatePicker label {
  margin-right: 0;
}
.date-of-birth-popup .confirm-button {
  margin: 24px 0;
  width: 100%;
}
@media screen and (min-width: 567px) {
  .date-of-birth-popup .react-aria-DatePicker {
    font-size: 22px;
  }
  .date-of-birth-popup .react-aria-DatePicker .react-aria-Group {
    flex-direction: row;
  }
  .date-of-birth-popup .react-aria-DatePicker label {
    margin-right: 16px;
  }
}
.popupContent.loyaltyPopupContent {
  gap: 16px;
}
.loyaltyPopupContent .popupBody .loyaltySignup {
  display: grid;
  grid-gap: 16px;
}
.loyaltyPopupContent .heading > h2 {
  margin-bottom: 16px;
}
.loyaltyPopupContent .successMessage {
  margin: 16px;
}
.popupModal {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.popupModal::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.popupModal > * {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.popupModal > *::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.popup {
  padding: 0 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  max-width: 500px;
  border-radius: 24px;
}
.popup .popupContent {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media screen and (max-width: 63.99em) {
  .popup .popupContent {
    gap: 16px;
  }
}
.popup .popupContent .popupBody {
  display: flex;
  gap: 16px;
  overflow-y: scroll;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 63.99em) {
  .popup .popupContent .popupBody {
    flex-direction: column;
  }
}
.popup .popupContent .popupBody .image {
  -o-object-fit: cover;
  object-fit: cover;
  max-width: 50%;
}
@media screen and (max-width: 63.99em) {
  .popup .popupContent .popupBody .image {
    max-width: 100%;
  }
}
.popup .popupActions {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 0.5em;
}
@media screen and (max-width: 47.99em) {
  .popup .popupActions {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .popup .popupActions > button {
    width: 100%;
  }
}
.popup .promoCode {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  padding-top: 24px;
}
.popup .promoCode .bannerText {
  font-size: 18px;
  padding: 8px 0;
}
.popup .promoCode .codeSection {
  padding-top: 16px;
  position: relative;
  display: flex;
  gap: 8px;
  align-items: center;
}
.popup .promoCode .codeSection .code {
  font-size: 24px;
  font-weight: 600;
  cursor: pointer;
}
.popup .promoCode .codeSection .copyMessage {
  position: absolute;
  left: 0;
  right: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s ease-out;
  color: #252525;
  background-color: #e7eaf6;
  padding: 4px;
  border-radius: 4px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}
.popup .promoCode .codeSection .copyMessage.show {
  opacity: 1;
}
.popup .promoCode .codeSection .link {
  color: #2b4fb9;
  font-weight: 600;
}
.popupHeader {
  display: flex;
  justify-content: flex-end;
  min-height: 50px;
}
.popupHeader .closeButton {
  cursor: pointer;
}
.modalWrapper.popupShelf {
  padding: 0;
  justify-content: flex-end;
}
.modalWrapper.popupShelf .content {
  height: 100%;
  border-radius: 0;
}
@media screen and (max-width: 47.99em) {
  .modalWrapper.popupShelf .content {
    max-width: 314px;
  }
}
.popupWrapper.topLeft {
  justify-content: flex-start;
  align-items: flex-start;
}
.popupWrapper.topRight {
  justify-content: flex-end;
  align-items: flex-start;
}
.popupWrapper.bottomLeft {
  justify-content: flex-start;
  align-items: flex-end;
}
.popupWrapper.bottomRight {
  justify-content: flex-end;
  align-items: flex-end;
}
.popupWrapper .modalContent {
  max-width: 100%;
}
.editorPopup {
  position: fixed;
  inset: 0 0 0 0;
  max-height: calc(100vh - 8rem);
  z-index: 12;
}
.editorPopup .editorPopupOverlay {
  position: fixed;
  inset: 0 0 0 0;
}
.editorPopup .editorPopupWrapper {
  padding: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.editorPopup .editorPopupWrapper.popupShelf {
  padding: 0;
  justify-content: flex-end;
  height: 100%;
}
.editorPopup .editorPopupWrapper.popupShelf .editorPopupContents {
  height: 100%;
  border-radius: 0;
}
@media screen and (max-width: 47.99em) {
  .editorPopup .editorPopupWrapper.popupShelf .editorPopupContents {
    max-width: 314px;
  }
}
.editorPopup .editorPopupWrapper.topLeft {
  justify-content: flex-start;
  align-items: flex-start;
}
.editorPopup .editorPopupWrapper.topRight {
  justify-content: flex-end;
  align-items: flex-start;
}
.editorPopup .editorPopupWrapper.bottomLeft {
  justify-content: flex-start;
  align-items: flex-end;
}
.editorPopup .editorPopupWrapper.bottomRight {
  justify-content: flex-end;
  align-items: flex-end;
}
.editorPopup .editorPopupWrapper .editorPopupContents {
  position: relative;
  border-radius: 24px;
  max-width: 100%;
}
.sms-marketing-signup-popup {
  text-align: center;
}
.sms-marketing-signup-popup .button {
  margin: 0 auto;
}
.sms-marketing-signup-popup .qr-code-container {
  text-align: center;
}
.sms-marketing-signup-popup .qr-code-container .qr-code {
  width: 50%;
}
.sms-marketing-signup-popup .qr-code-container .alt-signup-method {
  font-weight: bold;
}
.sms-marketing-signup-popup .qr-code-container .scan-to-join-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 40px;
}
.sms-marketing-signup-popup .qr-code-container .scan-to-join-cta .top {
  margin-top: -15px;
  margin-bottom: -2px;
  width: 0;
  height: 0;
  display: inline-block;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #252525;
}
.sms-marketing-signup-popup .qr-code-container .scan-to-join-cta .bottom {
  background-color: #252525;
  border: none;
  padding: 8px 16px;
  color: #fff;
  border-radius: 4px;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.2px;
  font-weight: 400;
  display: inline-block;
}
.sms-marketing-signup-popup .legal-disclaimer {
  font-size: 14px;
}
.sms-marketing-signup-popup .popupBody {
  margin: 0 0 40px 0;
}
.sms-marketing-signup-popup .underline {
  text-decoration: underline;
}
.addToCartSection {
  display: flex;
  flex-direction: row;
  gap: 16px;
  padding-bottom: 32px;
}
.addToCartSection .outOfStock {
  background-color: var(--ds-background-disabled);
  color: var(--ds-text-disabled);
  cursor: not-allowed;
  opacity: 0.7;
}
.addToCartSection .outOfStock:hover {
  background-color: var(--ds-background-disabled);
}
.productDisplaySection .addToCartRow {
  width: 100%;
  display: flex;
  flex: 0;
  align-items: center;
  padding-bottom: 24px;
  -moz-column-gap: 24px;
  column-gap: 24px;
}
@media (max-width: 800px) {
  .productDisplaySection .addToCartRow {
    -moz-column-gap: 16px;
    column-gap: 16px;
  }
}
.productDisplaySection .addToCartRow .addToCartButton {
  border-radius: 6px;
  height: 48px;
  font-weight: 400;
}
.productDisplaySection .addToCartRow .quantitySelector {
  border: 0.75px solid var(--ds-border-default, var(--tsw-primary-color));
  border-radius: 8px;
  font-weight: 400;
  height: 48px;
}
.productDisplaySection .addToCartRow .quantitySelector .quantity {
  background-color: unset;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.productDisplaySection .fractionalQuantity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0px 8px;
  margin-bottom: 24px;
  border: 1px solid var(--ds-border-default, var(--tsw-primary-color));
  border-radius: 8px;
}
.productDisplaySection .fractionalQuantity .quantity input {
  max-width: 100px;
}
.productDisplaySection .fractionalQuantity .quantity input:focus {
  border-color: var(--ds-border-focus, var(--tsw-background-contrasting-color));
}
.productDisplaySection .fractionalQuantity .quantity label {
  margin-left: -24px;
}
.productDisplayBreadcrumbs .breadcrumbs ul {
  display: inline-block;
  margin: 0px;
  padding: 0px;
  vertical-align: middle;
}
.productDisplayBreadcrumbs .breadcrumbs ul a {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.productDisplayBreadcrumbs .breadcrumbs ul a:hover {
  color: var(--ds-text-action, var(--tsw-primary-hover-color));
}
.productDisplayBreadcrumbs .breadcrumbs ul .crumb {
  display: inline-block;
  padding: 0px 6px;
  list-style-type: none;
}
.productDisplayBreadcrumbs .breadcrumbs ul .crumb.slash {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  opacity: 0.5;
}
.productDisplayBreadcrumbs .breadcrumbs ul .crumb:first-child {
  padding-left: 0;
}
.modifierGroupRow .modSectionTitle {
  font-weight: 500;
}
.modifierGroupRow .modSectionSubtitle {
  font-size: 14px;
  color: var(--ds-text-secondary, #666666);
}
.modifierGroupRow .required {
  color: #666;
  font-size: 14px;
  line-height: 14px;
  padding: 4px 0;
}
.modifierGroupRow .required.highlight {
  color: #d40023;
  font-size: 16px;
  font-weight: 500;
}
.modifierGroupRow .modifierTextContent {
  flex: 1;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
}
.modifierGroupRow .modifierTextContent.leftAligned {
  justify-content: flex-start;
}
.modifierGroupRow .react-select__control {
  border: 1px solid var(--ds-border-default, var(--tsw-primary-color));
  min-height: 48px;
  height: 48px;
}
.modifierGroupRow .react-select__control:hover {
  border-color: var(--ds-border-focus, var(--ds-background-primary-focus));
}
.modifierGroupRow
  .react-select__option:not(.react-select__option--is-selected):not(.react-select__option--is-focused) {
  color: #000;
}
.modifierGroupRow
  .react-select__option.react-select__option--is-selected:not(:hover) {
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  opacity: 0.75;
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
.modifierGroupRow .react-select__option:hover,
.modifierGroupRow .react-select__option:active,
.modifierGroupRow .react-select__option.react-select__option--is-focused {
  background-color: var(
    --ds-background-primary-focus,
    var(--tsw-primary-hover-color)
  );
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
.modifierGroupRow .react-select__dropdownIndicator {
  padding: 4;
}
.modifierGroupRow .react-select__clearIndicator {
  padding: 4;
}
.modifierGroupRow .react-select__valuecontainer {
  padding: "0px 6px";
}
.modifierGroupRow .react-select__input {
  margin: 0;
  padding: 0;
}
.modifierGroupRow .react-select__multi-value {
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  border-radius: 8px;
}
.modifierGroupRow .react-select__multi-value__label {
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
.modifierGroupRow .react-select__multi-value__remove {
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
.modifierGroupRow .react-select__multi-value__remove:hover {
  color: #000;
}
.modifierGroupRow .react-select__menu {
  z-index: 99;
}
.productDisplayBreadcrumbs {
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (max-width: 47.99em) {
  .productDisplayBreadcrumbs {
    padding-top: 24px;
    padding-bottom: 24px;
  }
}
.productDisplaySection {
  padding-bottom: 16px;
  display: flex;
  flex-direction: row;
  overflow: hidden;
  -moz-column-gap: 80px;
  column-gap: 80px;
}
.productDisplaySection .productInfoSection,
.productDisplaySection .productImageSection {
  align-self: flex-start;
  min-width: 300px;
  width: 50%;
  max-width: 700px;
}
.productDisplaySection .productImageSection img {
  width: 100%;
  height: auto;
  max-height: 600px;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 8px;
}
.productDisplaySection .productNameRow {
  line-height: 38px;
  padding-bottom: 24px;
}
.productDisplaySection .pricesRow,
.productDisplaySection .modifierGroupRow {
  padding-bottom: 32px;
}
.productDisplaySection .pricesRow {
  display: inline-flex;
  align-items: center;
  width: 100%;
}
.productDisplaySection .pricesRow h4 {
  line-height: 14px;
  font-size: 18px;
}
.productDisplaySection .pricesRow .itemTagsCardContainer.wrap {
  justify-content: flex-end;
}
.productDisplaySection .stockRow {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding-bottom: 16px;
}
.productDisplaySection .stockRow .stockStatus {
  display: flex;
  align-items: center;
  gap: 8px;
}
.productDisplaySection .stockRow .stockStatus .stockMessage {
  font-weight: 600;
}
.productDisplaySection .stockRow .stockAvailability {
  display: flex;
}
.productDisplaySection .stockRow .stockAvailability .noAvailableLocations {
  color: var(--ds-text-secondary, var(--tsw-secondary-text-color));
}
.productDisplaySection .stockRow .stockAvailability .locationStockButton {
  background: none;
  border: none;
  padding: 0;
  text-decoration: underline;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  font-size: 16px;
}
.productDisplaySection .stockRow .stockAvailability .locationStockButton:hover {
  opacity: 0.8;
}
.productDisplaySection .productDescription {
  color: var(--ds-text-secondary, #666666);
}
.productDisplaySection .fractionalQuantity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0px 8px;
  border: 1px solid var(--ds-border-default, var(--tsw-primary-color));
  border-radius: 8px;
}
.productDisplaySection .fractionalQuantity .quantity input {
  max-width: 100px;
}
.productDisplaySection .fractionalQuantity .quantity input:focus {
  border-color: var(--ds-border-focus, var(--tsw-background-contrasting-color));
}
.productDisplaySection .fractionalQuantity .quantity label {
  margin-left: -24px;
}
.productDisplaySection .ariaAlert {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.productDisplaySection .loadingSkeleton {
  flex: 1;
}
@media screen and (max-width: 47.99em) {
  .productDisplaySection {
    flex-direction: column;
  }
  .productDisplaySection .productImageSection {
    padding-bottom: 40px;
  }
  .productDisplaySection .productImageSection,
  .productDisplaySection .productInfoSection {
    width: 100%;
  }
  .productDisplaySection .productNameRow {
    padding-bottom: 16px;
  }
}
.stockIcon {
  flex-shrink: 0;
  color: #71ab24;
}
.stockIcon.outOfStock {
  color: #d40023;
}
.stockIcon.lowStock {
  color: #ff6a00;
}
.depositPayment .depositDescription .depositDescriptionTitle {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1rem;
  line-height: 1.25;
  padding: 16px 0 16px 0;
  color: #252525;
}
.depositPayment .depositDescription .depositMessage {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
  padding-bottom: 16px;
}
.depositPayment .depositDescription .depositPaymentContainer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.depositPayment .depositDescription .depositPaymentContainer .depositAmountDue {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1.5rem;
  line-height: 1.5;
  padding-bottom: 16px;
  color: #252525;
}
.depositPayment .countdown {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
  text-align: center;
  padding-bottom: 16px;
}
.depositPayment .countdown span {
  font-weight: bold;
  color: #d40023;
}
.depositPayment .depositError {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
  background: #ffe6e9;
  border-radius: 4px;
  padding: 0.75em 1em;
  margin: 0.5em;
  display: flex;
  flex-direction: row;
}
.guestSelector .dropDown,
.resLocationSelector .dropDown,
.selector .dropDown {
  height: 48px;
  border-radius: 8px;
}
.guestSelector .dropDown .selected,
.guestSelector .dropDown .selectedLocation,
.resLocationSelector .dropDown .selected,
.resLocationSelector .dropDown .selectedLocation,
.selector .dropDown .selected,
.selector .dropDown .selectedLocation {
  vertical-align: middle;
  display: inline-block;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.guestSelector .dropDown .dropDownContent,
.resLocationSelector .dropDown .dropDownContent,
.selector .dropDown .dropDownContent {
  width: 100%;
}
.occasionSelector {
  padding-top: 12px;
}
.occasionSelector .dropDownWrapper .dropDown {
  border-radius: 0px;
  border-top: 0px;
  border-right: 0px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.56);
  border-left: 0px;
  padding-left: 0px;
}
.occasionSelector .dropDownWrapper .dropDown .dropDownContent {
  width: 100%;
  max-height: 300px;
}
.occasionSelector
  .dropDownWrapper
  .dropDown
  .dropDownLabel
  .selected
  .placeholder {
  font-size: 18px;
}
.occasionSelector .option,
.occasionSelector .selected {
  display: flex;
  align-items: center;
}
.occasionSelector .option i,
.occasionSelector .option img,
.occasionSelector .selected i,
.occasionSelector .selected img {
  margin-top: 1px;
  margin-right: 0.4rem;
}
.occasionSelector .placeholder {
  color: #7a7a7a;
}
.confirmation .description {
  padding-bottom: 16px;
}
.confirmation .buttons {
  padding-bottom: 16px;
}
.confirmation .buttons .button {
  width: 100%;
  margin-bottom: 16px;
  display: flex;
  justify-content: center;
}
.confirmation .buttons .loyaltyContainer {
  display: flex;
  justify-content: center;
  padding: 12px 0;
}
.confirmation .buttons a {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: center;
}
.confirmation .buttons .joinLoyalty {
  padding-left: 8px;
  color: #252525;
}
.confirmation .policies .cancellationPolicy {
  padding-bottom: 0px;
}
.confirmation .policies .cancellationPolicy span {
  font-weight: 600;
  color: #252525;
}
.confirmation .depositSummary {
  margin-top: 32px;
  background-color: #f7f7f7;
  border-radius: 8px;
  padding: 16px;
}
.confirmation .depositSummary .depositDescriptionTitle {
  padding-bottom: 8px;
}
.confirmation .depositSummary .depositPaymentContainer {
  display: flex;
  justify-content: space-between;
}
.errorSection .error {
  display: flex;
  flex-direction: row;
  background-color: #ffe6e9;
  padding: 12px;
  margin-bottom: 18px;
  line-height: 24px;
}
.errorSection .error img {
  align-self: flex-start;
  padding-right: 10px;
}
.errorSection .potsImage {
  padding-bottom: 20px;
  width: 100%;
}
.errorSection .button {
  width: 100%;
  display: flex;
  justify-content: center;
}
.squaresSection {
  width: 100%;
  gap: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.squaresSection .square {
  width: calc(50% - 5px);
  min-width: calc(50% - 5px);
  padding: 12px 0;
  background-color: #e5e5e5;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25;
  text-align: center;
  border-radius: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.squaresSection .square .occasionIcon {
  display: flex;
  align-items: center;
}
.squaresSection .square .occasionIcon i,
.squaresSection .square .occasionIcon img {
  margin-top: 1px;
  margin-right: 0.4rem;
}
.menuDividingLine {
  display: flex;
  width: auto;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  border-top: 1px solid #000;
  opacity: 0.12;
  margin: 0px;
}
.menuDividingLine.menuDividingLineMarginTop {
  margin-top: 20px;
}
.menuDividingLine.menuDividingLinePaddingBottom {
  padding-bottom: 10px;
}
.depositMessage {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
  padding-bottom: 8px;
  color: #666;
}
.depositMessage span {
  font-weight: 600;
  color: #252525;
}
.depositMessage.bold {
  font-weight: 600 !important;
}
.depositMessage.extraPadding {
  padding-top: 16px;
  padding-bottom: 16px;
}
.depositMessage.noPaddingBottom {
  padding-bottom: 0px;
}
.depositMessage.morePaddingBottom {
  padding-bottom: 16px;
}
.depositMessage.black {
  color: #252525;
}
.guestForm {
  padding: 16px 0;
}
.guestForm.withDeposit {
  padding: 0px;
}
.cancellationTitleSection {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 1.5rem;
  line-height: 1.5;
  font-size: 1rem;
  padding-top: 20px;
  padding-bottom: 16px;
  color: #252525;
}
.backButton {
  display: flex;
  align-items: center;
  margin-left: 16px;
}
.backButton .changeSelection {
  width: 100%;
  border: none;
  color: #252525;
  background: none;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25;
  padding-top: 0px;
  margin-bottom: 1px;
}
.cancellationPolicy,
.disclaimer {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5;
  padding: 0 0 16px 0 !important;
  color: #666;
}
.reservation {
  width: 100%;
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.reservation .backgroundImage {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  top: 0;
  z-index: -1;
  height: 200px;
}
.reservation .backgroundImage img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.reservation .cardSection {
  max-width: 500px;
  min-width: 500px;
  display: flex;
  flex-direction: column;
  background-color: #fff;
  color: #252525;
  border-radius: 24px;
  margin: 120px 80px;
  padding: 24px;
  box-shadow: 0px 0px 6px var(--ds-surface-shadow, rgba(0, 0, 0, 0.15));
}
.reservation .cardSection.isModal {
  box-shadow: none;
}
@media screen and (max-width: 47.99em) {
  .reservation .cardSection {
    margin: 16px 0;
    width: calc(100% - 48px);
    min-width: calc(100% - 48px);
  }
}
.reservation .cardSection .closeButton {
  position: absolute;
  top: 16px;
  right: 16px;
  background-color: #fff;
}
@media screen and (max-width: 47.99em) {
  .reservation .cardSection .closeButton {
    top: 12px;
  }
}
.reservation .cardSection h3.titleSection,
.reservation .cardSection .titleSection h3 {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 24px;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 47.99em) {
  .reservation .cardSection h3.titleSection,
  .reservation .cardSection .titleSection h3 {
    font-family: var(--tsw-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-weight: 600;
    font-family: var(--tsw-header-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-size: 1.5rem;
    line-height: 1.5;
    margin-bottom: 16px;
  }
}
.reservation .cardSection .formSection {
  display: flex;
  margin-bottom: 24px;
  justify-content: space-between;
  flex-direction: column;
}
.reservation .cardSection .formSection .locationSection,
.reservation .cardSection .formSection .guestSection,
.reservation .cardSection .formSection .dateSection,
.reservation .cardSection .formSection .timeSection {
  padding-bottom: 16px;
}
.reservation .cardSection .formSection .dateTimeSection {
  display: flex;
  flex-direction: row;
  gap: 8px;
}
.reservation .cardSection .formSection .dateTimeSection .dateSection,
.reservation .cardSection .formSection .dateTimeSection .timeSection {
  width: calc(50% - 4px);
}
.reservation .cardSection .formSection .findTableButton {
  padding-top: 16px;
}
.reservation .cardSection .sectionTitle {
  padding-bottom: 4px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25;
}
.reservation .cardSection .seatingLocationWrapper {
  width: 100%;
  padding-bottom: 24px;
}
.reservation .cardSection .seatingLocationWrapper.withoutBorder {
  padding-bottom: 0px;
}
.reservation .cardSection .timeOptions {
  padding: 16px 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.reservation .cardSection .timeOptions .timePillContainer {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.reservation .cardSection .timeOptions .timePillContainer .timePill {
  padding: 10px;
  background-color: var(--tsw-primary-text-color-25);
  border-radius: 24px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.1;
  border: none;
  text-decoration: none;
  cursor: pointer;
}
.reservation .cardSection .timeOptions .timePillContainer .timePill.selected,
.reservation .cardSection .timeOptions .timePillContainer .timePill:hover {
  background-color: var(--ds-background-primary, var(--tsw-primary-color));
  color: #fff;
}
.reservation .cardSection .timeOptions .timePillContainer button {
  background-color: #e5e5e5;
}
.reservation .cardSection .timeOptions .timePillContainer span {
  color: #666;
  font-size: 12px;
}
.reservation .cardSection .description {
  padding-bottom: 32px;
}
.reservation .cardSection .findTableButton {
  align-self: flex-end;
  display: flex;
  align-items: center;
}
.reservation .cardSection .findTableButton button {
  width: 100%;
  margin-left: 32px;
}
.reservation .cardSection .findTableButton .changeSelection {
  margin-left: 8px;
}
.reservation .cardSection .toastLogo {
  margin-top: 16px;
}
.reservation .cardSection .toastLogo svg {
  fill: #252525;
}
.modal .modalWrapper.reservationModalWrapper .modalContent {
  overflow-y: scroll;
  overflow-x: hidden;
}
@media screen and (max-width: 47.99em) {
  .modal .modalWrapper.reservationModalWrapper .modalContent {
    min-width: 100%;
  }
}
.modal .modalWrapper.reservationModalWrapper .modalContent::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.modal .modalWrapper.reservationModalWrapper .cardSection {
  margin: 0px;
}
@media screen and (max-width: 47.99em) {
  .modal .modalWrapper.reservationModalWrapper .cardSection {
    min-width: 100%;
  }
}
.reservation .link {
  color: var(--tsw-primary-text-color);
}
.breadcrumbs ul {
  display: inline-block;
  margin: 0px;
  padding: 0px;
  vertical-align: middle;
}
.breadcrumbs ul a {
  color: var(--tsw-primary-text-color);
}
.breadcrumbs ul a:hover {
  color: #2b4fb9;
}
.breadcrumbs ul .crumb {
  display: inline-block;
  padding: 0px 6px;
  list-style-type: none;
}
.breadcrumbs ul .crumb.slash {
  color: silver;
}
.breadcrumbs ul .crumb:first-child {
  padding-left: 0;
}
.pill {
  font-size: 14px;
  line-height: 17px;
  background: #fce8e5;
  border: 1px solid #ff4c00;
  border-radius: 22px;
  padding: 4px 10px 4px 10px;
  display: inline-block;
}
.pill.primary {
  background: #fce8e5;
  border: 1px solid #ff4c00;
}
.pill.secondary {
  background: #fff;
  border: 1px solid silver;
}
.pill.truncated {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.profileFooter {
  height: 230px;
  margin-top: 40px;
  margin-bottom: 100px;
}
.profileFooter .footer-container {
  height: 100%;
}
.profileFooter .footer-container .footer-content {
  display: table;
  width: 100%;
  height: 100%;
  border-top: 1px solid #e5e5e5;
}
@media screen and (max-width: 35.49em) {
  .profileFooter .footer-container .footer-content {
    padding-top: 20px;
  }
}
.profileFooter .footer-container .footer-content .twitter path {
  fill: gray;
}
.profileFooter .footer-container .footer-content .content-cell {
  display: table-cell;
  vertical-align: middle;
}
.profileFooter .footer-container .footer-content .content-cell .logo-wrapper {
  margin-bottom: 8px;
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  .logo-wrapper
  .logo-link {
  display: inline-block;
}
.profileFooter .footer-container .footer-content .content-cell .footer-nav a {
  color: var(--tsw-primary-text-color);
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  .footer-nav
  a:hover {
  color: #2b4fb9;
  text-decoration: underline;
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  .footer-nav
  .social-media {
  margin-top: 10px;
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  .footer-nav
  .social-media
  li {
  display: inline-block;
  padding: 0px 20px 0px 0px;
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  .footer-nav.nav-down
  li {
  margin-bottom: 10px;
}
@media screen and (max-width: 35.49em) {
  .profileFooter .footer-container .footer-content .content-cell .footer-nav {
    margin-bottom: 20px;
  }
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  .footer-nav
  .toast-badge {
  margin-top: 30px;
}
.profileFooter .footer-container .footer-content .content-cell ul.footer-nav {
  margin: 0px;
  padding: 0px;
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  ul.footer-nav
  li {
  list-style-type: none;
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  ul.footer-nav
  li
  a {
  color: var(--tsw-primary-text-color);
}
.profileFooter
  .footer-container
  .footer-content
  .content-cell
  ul.footer-nav
  li.nav-title {
  padding-bottom: 4px;
}
@media screen and (max-width: 35.49em) {
  .profileFooter .footer-container .footer-content .content-cell ul.footer-nav {
    margin-bottom: 20px;
  }
}
.rx-header-photo {
  width: 100%;
  height: 300px;
  border-radius: 24px;
  background: #f0f0f0;
  position: relative;
  overflow: hidden;
}
.rx-header-photo > div > img {
  min-height: 100%;
  width: 100%;
  position: absolute;
  top: -9999px;
  bottom: -9999px;
  left: -9999px;
  right: -9999px;
  margin: auto;
}
@media screen and (max-width: 63.99em) {
  .rx-header-photo {
    height: 150px;
    border-radius: 0;
    margin-left: -50px;
    width: calc(100% + 100px);
    margin-top: 16px;
  }
}
@media screen and (max-width: 47.99em) {
  .rx-header-photo {
    margin-left: -30px;
    width: calc(100% + 60px);
  }
}
.rx-header-photo .image-container {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.rx-header-photo .map-container {
  display: inline-block;
}
.rx-header-photo .map-container img {
  min-width: auto;
}
.hours-container {
  font-size: 16px;
  line-height: 25px;
}
.hours-container .bold {
  font-weight: bold;
}
.location-container > p {
  font-size: 18px;
  line-height: 22px;
  margin: 8px 0;
}
.location-container .location-img {
  max-width: 100%;
  height: auto;
  border: 0;
}
.commission-disclaimer {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
}
.commission-disclaimer .storefront-icon img {
  vertical-align: middle;
  margin: auto 0;
}
.commission-disclaimer p {
  font-size: 14px;
  line-height: 16px;
}
.rx-overview {
  max-width: 383px;
}
@media screen and (max-width: 63.99em) {
  .rx-overview {
    max-width: 247px;
  }
}
@media screen and (max-width: 47.99em) {
  .rx-overview {
    max-width: none;
  }
}
.rx-overview .address {
  margin: 8px 0 16px;
}
.rx-overview .ctas {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: baseline;
}
@media screen and (max-width: 63.99em) {
  .rx-overview .ctas {
    row-gap: 16px;
  }
}
.rx-overview .ctas .cta {
  text-align: center;
  color: var(--tsw-primary-text-color);
}
@media screen and (max-width: 47.99em) {
  .rx-overview .ctas .cta {
    flex-basis: 0;
  }
}
.rx-overview .ctas .cta > p {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
}
@media screen and (max-width: 47.99em) {
  .rx-overview .ctas .cta > p {
    font-family: var(--tsw-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-weight: 400;
    font-size: 0.75rem;
    line-height: 1.5;
  }
}
.rx-overview hr {
  margin: 16px 0;
  color: #e5e5e5;
}
.rxPageSectionWrapper {
  flex-direction: column;
}
.rxPageSectionWrapper .rx-page-section {
  margin: 8px 0;
}
.rxPageSectionWrapper h1.rx-page-section {
  font-weight: 900;
  font-size: 48px;
  line-height: 44px;
}
@media screen and (max-width: 47.99em) {
  .rxPageSectionWrapper h1.rx-page-section {
    font-size: 32px;
    line-height: 38px;
  }
}
.rxPageSectionWrapper .rx-page-section.rx-cards {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 16px;
}
.rxPageSectionWrapper .rx-page-section.rx-cards > * {
  flex: calc(50% - 16px);
}
@media screen and (max-width: 47.99em) {
  .rxPageSectionWrapper .rx-page-section.rx-cards > * {
    flex: 100%;
  }
}
.rxPageSectionWrapper a {
  color: #2b4fb9;
}
.restaurantProfile {
  display: flex;
  flex-direction: column;
  position: relative;
  padding-top: 10px;
}
.restaurantProfile .lg-reverse {
  display: flex;
  flex-direction: column-reverse;
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .lg-reverse {
    flex-direction: column;
  }
}
.restaurantProfile .lg-reverse .rx-info {
  display: block;
  position: relative;
  padding-right: 480px;
  margin: 16px 0;
}
@media screen and (max-width: 63.99em) {
  .restaurantProfile .lg-reverse .rx-info {
    padding-right: 345px;
  }
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .lg-reverse .rx-info {
    position: static;
    padding-right: 0;
    margin: 0;
  }
}
.restaurantProfile .lg-reverse .rx-info .overview-container {
  position: absolute;
  top: 16px;
  right: 32px;
  background: #fff;
  padding: 24px;
  border-radius: 24px;
  z-index: 1;
  box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .lg-reverse .rx-info .overview-container {
    position: static;
    padding: 0;
    border-radius: 0;
    box-shadow: none;
  }
}
.restaurantProfile .menu-wrapper {
  margin-top: 32px;
}
.restaurantProfile .banner-container {
  display: flex;
  justify-content: center;
  padding: 20px 0px;
}
.restaurantProfile .food-types {
  padding-top: 5px;
  color: #666;
}
.restaurantProfile .open-hours-today {
  display: flex;
}
.restaurantProfile .open-hours-today > p {
  font-size: 18px;
  margin-bottom: 16px;
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .open-hours-today > p {
    margin-bottom: 8px;
  }
}
.restaurantProfile .cuisine-pills {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
  margin: 16px 0;
}
.restaurantProfile .rx-details {
  margin-top: 16px;
}
.restaurantProfile .rx-details .description {
  max-width: 100%;
  overflow: hidden;
}
.restaurantProfile .rx-details .address {
  padding: 5px 0px;
  color: #666;
}
.restaurantProfile .popular-title {
  padding: 10px 0px;
}
.restaurantProfile .see-full-menu {
  text-align: center;
  margin: 8px 0;
}
.restaurantProfile .rx-photo-title {
  padding: 20px 0px;
}
.restaurantProfile .rx-photos {
  margin: -10px -10px;
}
.restaurantProfile .rx-photos .rx-photo {
  padding: 10px;
}
.restaurantProfile .rx-photos .rx-photo img {
  max-width: 100%;
  height: auto;
}
.restaurantProfile .order-buttons {
  display: inline-block;
  display: flex;
  align-items: center;
  background-color: #fff;
  padding: 6px 10px;
  cursor: pointer;
  border: 1px solid #e5e5e5;
}
.restaurantProfile .order-buttons:hover {
  background-color: #e5e5e5;
}
.restaurantProfile .individual-container {
  padding-right: 10px;
}
.restaurantProfile .button-container {
  display: flex;
  direction: row;
  justify-content: flex-start;
  padding: 20px 0px;
}
.restaurantProfile .button-icon {
  padding-right: 10px;
}
.restaurantProfile .rx-hot-spots {
  margin-top: 40px;
}
.restaurantProfile .rx-hot-spots .title-section {
  margin-bottom: 20px;
}
.restaurantProfile .rx-hot-spots .title-section .icon,
.restaurantProfile .rx-hot-spots .title-section h2 {
  display: inline-block;
  vertical-align: middle;
}
.restaurantProfile .rx-hot-spots .title-section .icon {
  margin: 0px;
}
.restaurantProfile .rx-hot-spots .title-section h2 {
  margin-left: 10px;
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .title-info.add-padding {
    margin-left: 21px;
  }
}
.restaurantProfile .open-closed-dot {
  border-radius: 50%;
  display: inline-block;
  height: 13px;
  width: 13px;
  margin-right: 8px;
  vertical-align: top;
  margin-top: 6px;
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .open-closed-dot {
    margin-top: 2px;
  }
}
.restaurantProfile .open-closed-dot.almost-closed {
  background-color: #f76600;
}
.restaurantProfile .open-closed-dot.closed {
  background-color: #c12700;
}
.restaurantProfile .open-closed-dot.open {
  background-color: #71ab24;
}
.restaurantProfile .mobile-bottom-sticky {
  z-index: 8;
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
  padding: 19px 16px;
  background: #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
  border-radius: 24px 24px 0px 0px;
}
.restaurantProfile .desktop-sticky-order-nav {
  position: fixed;
  top: -88px;
  transition: top 0.3s, box-shadow 0.3s;
  left: 0;
  right: 0;
  height: 88px;
  background: #fff;
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0);
  z-index: 11;
  padding: 0 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.restaurantProfile .desktop-sticky-order-nav h1 {
  font-size: 24px;
  line-height: 29px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
}
@media screen and (max-width: 63.99em) {
  .restaurantProfile .desktop-sticky-order-nav h1 {
    font-size: 18px;
  }
}
.restaurantProfile .desktop-sticky-order-nav .left {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 40px;
}
.restaurantProfile .desktop-sticky-order-nav .right {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  width: 530px;
}
.restaurantProfile .desktop-sticky-order-nav .right .review-summary {
  font-size: 18px;
  line-height: 22px;
  margin-right: 24px;
  white-space: nowrap;
}
.restaurantProfile .desktop-sticky-order-nav .right .review-summary > img {
  margin-right: 10px;
}
.restaurantProfile .desktop-sticky-order-nav.slide-down {
  top: 0;
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}
.restaurantProfile .divider {
  margin: 16px 0;
}
.restaurantProfile .go-to-gallery-button {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 16px;
  padding: 8px 16px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 25px;
  color: var(--tsw-primary-text-color);
  background: #fff;
  border-radius: 24px;
}
.restaurantProfile .go-to-gallery-button:hover {
  text-decoration: none;
}
.restaurantProfile .go-to-gallery-button:visited,
.restaurantProfile .go-to-gallery-button :active {
  color: var(--tsw-primary-text-color);
}
.restaurantProfile .go-to-gallery-button > img {
  margin-right: 10px;
  margin-bottom: -3px;
}
@media screen and (max-width: 47.99em) {
  .restaurantProfile .go-to-gallery-button > img {
    margin-right: 4px;
    margin-left: 4px;
  }
}
.rx-page-section .order-link {
  padding: 12px 24px;
  align-items: start;
  border-radius: 12px;
  border: 1px solid silver;
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  margin: 24px 0 12px auto;
  display: flex;
  flex-direction: row;
  gap: 4px;
}
.rx-page-section .order-link > img {
  margin-top: 2px;
}
.rx-page-section .order-link .link-to-rx-profile {
  color: #ff4c00;
  font-weight: 600;
}
.rx-carousel .title-section {
  padding-bottom: 24px;
}
.rx-carousel h2 {
  color: #000;
  display: inline-block;
  font-size: 22px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
}
.rx-carousel .scroll-button-section {
  background: #fff;
  border-radius: 50px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  float: right;
  height: 32px;
  width: 64px;
}
.rx-carousel .scroll-button-section > .arrow {
  padding: 4px;
  border: none;
  background: transparent;
  cursor: pointer;
}
.rx-carousel .restaurants {
  display: block;
  overflow: hidden;
  padding-bottom: 10px;
  white-space: nowrap;
}
@media screen and (max-width: 47.99em) {
  .rx-carousel .restaurants {
    overflow-x: auto;
    overflow-y: hidden;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
  }
}
.rx-carousel .carousel-listing {
  margin-right: 16px;
  width: 288px;
  border-radius: 24px;
  overflow: hidden;
  scroll-snap-align: start;
}
.rx-carousel .carousel-listing a:hover {
  text-decoration: none;
}
.rx-carousel .carousel-listing .listing-image-container {
  height: 132px;
  width: 288px;
  overflow: hidden;
}
.rx-carousel .carousel-listing .listing-image-container .listing-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.rx-carousel .carousel-listing .listing-content {
  padding: 16px;
}
.rx-carousel .carousel-listing .listing-content .first-line {
  overflow-y: hidden;
  max-height: 30px;
}
.rx-carousel .carousel-listing .listing-content .review-summary {
  color: var(--tsw-primary-text-color);
  float: right;
  font-size: 14px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
}
.rx-carousel .carousel-listing .listing-content .review-summary img {
  height: 10px;
  width: 10px;
  padding-right: 4px;
}
.rx-carousel .carousel-listing .listing-content .rx-name {
  color: #000;
  display: inline-block;
  font-size: 16px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  text-overflow: ellipsis;
  max-width: 65%;
  overflow: hidden;
}
.rx-carousel .carousel-listing .listing-content:hover .rx-name {
  max-width: 100%;
}
.rx-carousel .carousel-listing .listing-content .address-line {
  color: #000;
  font-size: 12px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
}
.rx-carousel .carousel-listing .listing-content .view-rx {
  color: var(--tsw-primary-text-color);
  font-size: 16px;
  font-weight: 700;
  height: 25px;
  margin-top: 27px;
}
.rx-carousel .carousel-listing .listing-content .view-rx .icon-img {
  float: right;
}
.rx-carousel .more-rx-button {
  padding-top: 24px;
  display: flex;
  justify-content: center;
}
.rx-carousel .more-rx-button .btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.rx-carousel .more-rx-button .btn .btn-text {
  background: #212121;
  border: 2px solid #212121;
  border-radius: 32px;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  line-height: 24px;
  padding: 12px 24px;
}
.title-card {
  width: 100%;
  display: block;
  margin: 8px 0;
}
.title-card .title {
  padding: 8px 0;
  cursor: pointer;
}
.title-card .title::after {
  float: right;
  content: ">";
  font-size: 20px;
  color: var(--tsw-primary-text-color);
}
.title-card .children {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.6s ease-out;
}
.title-card.close .title::after {
  transform: rotate(90deg) scaleY(1.5);
  transition: transform 0.6s;
}
.title-card.open .title::after {
  transform: rotate(270deg) scaleY(1.5);
  transition: transform 0.6s;
}
.title-card.open .children {
  max-height: 500px;
  transition: max-height 0.6s ease-in;
}
.reviewsSection .sectionHeader {
  text-align: center;
  padding-top: 40px;
}
.reviewsSection .carouselArrows {
  padding-bottom: 40px;
}
.reviewsSection blockquote {
  -webkit-margin-after: 0;
  margin-block-end: 0;
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
}
.reviewsSection .reviewCardWrapper,
.reviewsSection .reviewCard,
.reviewsSection .reviewWrapper,
.reviewsSection .reviewContent {
  height: 100%;
}
.reviewsSection .reviewCardWrapper {
  padding: 10px;
}
.reviewsSection .reviewCardWrapper .reviewCard {
  display: flex;
  flex-direction: column;
  border-radius: 22px;
  padding: 18px 22px;
  position: relative;
  border: 1px solid #e0e0e0;
}
@media screen and (max-width: 47.99em) {
  .reviewsSection .reviewCardWrapper .reviewCard {
    padding: 24px;
  }
}
.reviewsSection .reviewCardWrapper .reviewCard .reviewContent {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.reviewsSection .reviewCardWrapper .reviewCard .reviewContent .reviewTop {
  flex: 1;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .reviewHeader {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  line-height: 1;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .reviewHeader
  .starRating {
  display: flex;
  gap: 2px;
  flex-shrink: 0;
  white-space: nowrap;
}
@media screen and (max-width: 47.99em) {
  .reviewsSection
    .reviewCardWrapper
    .reviewCard
    .reviewContent
    .reviewTop
    .reviewHeader
    .starRating
    svg {
    width: 20px;
    height: 20px;
  }
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .reviewHeader
  .quoteChar {
  flex-shrink: 0;
  font-size: 84px;
  margin-top: 28px;
  line-height: 0.25;
  font-family: "Trebuchet MS", -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;
}
@media screen and (max-width: 47.99em) {
  .reviewsSection
    .reviewCardWrapper
    .reviewCard
    .reviewContent
    .reviewTop
    .reviewHeader
    .quoteChar {
    font-size: 56px;
    margin-top: 22px;
  }
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .quote {
  margin-top: 6px;
  margin-bottom: 30px;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .quote
  p,
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .quote
  h1,
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .quote
  h2,
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .quote
  h3,
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewTop
  .quote
  h4 {
  line-height: 1.75;
  font-size: 18px;
  font-weight: 400;
}
.reviewsSection .reviewCardWrapper .reviewCard .reviewContent .reviewBottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .authorInfo {
  display: flex;
  align-items: center;
  gap: 14px;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .authorInfo
  .authorAvatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  background: #e8e8e8;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 47.99em) {
  .reviewsSection
    .reviewCardWrapper
    .reviewCard
    .reviewContent
    .reviewBottom
    .authorInfo
    .authorAvatar {
    display: none;
  }
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .authorInfo
  .authorAvatar
  img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .authorInfo
  .authorAvatar.authorPlaceholder {
  background: #e0e0e0;
  color: #7a7a7a;
  font-size: 24px;
  font-weight: 500;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .authorInfo
  .authorDetails
  .authorName {
  font-size: 18px;
  font-weight: 600;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .sourceBadge {
  display: flex;
  gap: 6px;
  flex-shrink: 0;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .sourceBadge
  .sourceText {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .sourceBadge
  .sourceText
  .postedOn {
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
}
.reviewsSection
  .reviewCardWrapper
  .reviewCard
  .reviewContent
  .reviewBottom
  .sourceBadge
  .sourceText
  .sourceName {
  font-size: 15px;
  font-weight: 900;
  white-space: nowrap;
}
.reviewsSection.wide {
  padding: 0;
}
.reviewsSection.wide .reviewCardWrapper .reviewCard {
  border: none;
  padding-bottom: 0;
}
@media screen and (min-width: 48em) {
  .reviewsSection.wide .reviewCardWrapper .reviewCard {
    padding-top: 80px;
  }
}
.reviewsSection.wide .reviewCardWrapper .reviewCard .reviewWrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 100%;
}
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent {
  max-width: 800px;
  width: 100%;
}
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .reviewTop {
  text-align: center;
}
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .starRating {
  margin-bottom: 24px;
  justify-content: center;
}
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .quote
  .span
  p,
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .quote
  h1,
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .quote
  h2,
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .quote
  h3,
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .quote
  h4 {
  font-weight: 700;
  font-size: 36px;
  line-height: 41px;
}
@media screen and (max-width: 47.99em) {
  .reviewsSection.wide
    .reviewCardWrapper
    .reviewCard
    .reviewWrapper
    .reviewContent
    .quote
    .span
    p,
  .reviewsSection.wide
    .reviewCardWrapper
    .reviewCard
    .reviewWrapper
    .reviewContent
    .quote
    h1,
  .reviewsSection.wide
    .reviewCardWrapper
    .reviewCard
    .reviewWrapper
    .reviewContent
    .quote
    h2,
  .reviewsSection.wide
    .reviewCardWrapper
    .reviewCard
    .reviewWrapper
    .reviewContent
    .quote
    h3,
  .reviewsSection.wide
    .reviewCardWrapper
    .reviewCard
    .reviewWrapper
    .reviewContent
    .quote
    h4 {
    font-size: 18px;
    line-height: 24px;
  }
}
.reviewsSection.wide
  .reviewCardWrapper
  .reviewCard
  .reviewWrapper
  .reviewContent
  .reviewBottom {
  gap: 40px;
}
.reviewsSection.emptySection {
  min-height: 100px;
}
.scheduleMap {
  width: 100%;
  display: flex;
}
@media screen and (min-width: 48em) {
  .scheduleMap {
    max-height: 340px;
  }
}
@media screen and (max-width: 47.99em) {
  .scheduleMap {
    flex-direction: column;
  }
}
.scheduleMap .schedule {
  padding: 45px;
  flex-basis: 50%;
  color: #fff;
  background-color: #242424;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 63.99em) {
  .scheduleMap .schedule {
    padding: 24px;
  }
}
@media screen and (max-width: 47.99em) {
  .scheduleMap .schedule {
    align-items: flex-start;
  }
}
.scheduleMap .schedule .content {
  max-width: 100%;
}
.scheduleMap .schedule .header {
  margin: 0 0 20px;
}
.scheduleMap .schedule .phoneNumber {
  margin-top: 16px;
}
.scheduleMap .schedule .phoneNumber > a {
  color: #fff;
}
.scheduleMap .schedule .hours {
  overflow: scroll;
  margin-top: 20px;
  scrollbar-width: none;
  -ms-overflow-style: none;
  display: flex;
}
.scheduleMap .schedule .hours::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.scheduleMap .schedule .hours .times {
  min-width: 50px;
  font-weight: 400;
  padding-right: 16px;
}
.mapFrame {
  flex-basis: 50%;
  height: 199px;
  overflow: hidden;
  margin-top: 80px;
}
@media screen and (max-width: 47.99em) {
  .mapFrame {
    margin-top: 30px;
  }
}
.mapFrame iframe {
  border: none;
  box-sizing: border-box;
}
.ooSearch {
  margin-left: auto;
  height: 40px;
  background-color: #fff;
  border: 1px rgba(0, 0, 0, 0.12) solid;
  border-width: 1px;
  border-radius: 9999px;
  display: flex;
  justify-content: unset !important;
  align-items: center;
}
.ooSearch:hover {
  border-color: #2b4fb9;
  box-shadow: #2b4fb9 0px 0px 0px 1px inset;
}
.ooSearch:focus-within {
  border-color: #2b4fb9;
  outline: none;
  box-shadow: #558edd 0px 0px 0px 3px;
}
.ooSearch .searchIcon {
  color: #666;
  margin-left: calc(-1px + 0.75rem);
  line-height: 0;
}
.ooSearch .searchBox {
  border-radius: 9999px;
  height: calc(100% - 4px);
  flex: 1;
  min-width: 0;
}
.ooSearch .searchBox:focus {
  font-size: 18px;
}
.ooSearch .searchBox:focus:-ms-input-placeholder {
  color: transparent;
}
.ooSearch .searchBox:focus::placeholder {
  color: transparent;
}
.ooSearch .searchClearIconPlaceHolder {
  width: 36px;
  height: 36px;
  border-radius: 9999px;
}
.ooSearch .searchClearIcon {
  width: 36px;
  height: 36px;
  border-radius: 9999px;
}
.ooSearch .searchClearIcon button {
  background-color: transparent;
  border: none;
  color: silver;
  padding: 2px;
  line-height: 0px;
}
.ooSearch .searchClearIcon button:focus-within {
  outline: none;
  border-radius: 9999px;
  background-color: rgba(0, 0, 0, 0.04);
}
.ooSearch .searchClearIcon button i {
  display: inline-block;
  padding: 4px;
  border-radius: 9999px;
}
.spotlightBanner {
  height: 48px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  position: relative;
  z-index: 7;
}
.spotlightBanner.isHidden {
  height: 0;
}
.spotlightBanner .carouselWrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.spotlightBanner .carouselWrapper .spotlightCarousel {
  width: 100%;
}
.spotlightBanner .carouselWrapper .spotlightCarousel .carouselArrows {
  width: 44px;
  height: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  padding: 0;
  display: flex;
  gap: 4px;
  align-items: center;
}
.spotlightBanner .carouselWrapper .spotlightCarousel .carouselArrows div {
  height: 20px;
  width: 20px;
  border-radius: 30px;
  background: color-mix(in srgb, var(--spotlightBannerBgColor), #000 15%);
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.spotlightBanner .carouselWrapper .spotlightCarousel .carouselArrows div i {
  display: flex;
}
.spotlightBanner .carouselWrapper .spotlightCarousel .carouselArrows div * {
  height: 10px;
  width: 10px;
}
.spotlightBanner
  .carouselWrapper
  .spotlightCarousel
  .carouselArrows
  div:not(.swiper-button-disabled) {
  cursor: pointer;
}
.spotlightBanner
  .carouselWrapper
  .spotlightCarousel
  .carouselArrows
  div:not(.swiper-button-disabled):hover {
  background: color-mix(in srgb, var(--spotlightBannerBgColor), #000 30%);
}
.spotlightBanner
  .carouselWrapper
  .spotlightCarousel
  .carouselArrows
  div.swiper-button-disabled {
  opacity: 0.4;
}
.spotlightBanner
  .carouselWrapper
  .spotlightCarousel
  .carouselArrows
  .carouselArrowPrev {
  left: 0;
}
.spotlightBanner
  .carouselWrapper
  .spotlightCarousel
  .carouselArrows
  .carouselArrowNext {
  right: 0;
}
.spotlightBanner .carouselWrapper .spotlightCarousel .carouselPagination {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  padding: 4px 0;
}
.spotlightBanner .carouselWrapper .spotlightCarousel .carouselPagination span {
  width: 24px;
  height: 3px;
  background: var(--spotlightPaginationColor);
  border-radius: 4px;
}
.spotlightBanner
  .carouselWrapper
  .spotlightCarousel
  .carouselPagination
  span:not(.swiper-pagination-bullet-active) {
  opacity: 0.4;
}
.spotlightBanner .carouselWrapper .hideButton {
  background: color-mix(in srgb, var(--spotlightBannerBgColor), #000 15%);
  height: 20px;
  width: 20px;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 0;
  position: absolute;
  top: 20%;
  z-index: 1;
}
.spotlightBanner .carouselWrapper .hideButton.singlePage {
  top: 0;
}
.spotlightBanner .carouselWrapper .hideButton:hover {
  background: color-mix(in srgb, var(--spotlightBannerBgColor), #000 30%);
}
.spotlightBanner .carouselWrapper .hideButton i {
  position: relative;
}
.spotlightBanner .carouselWrapper .hideButton i svg {
  position: absolute;
  left: 0;
}
.spotlightBanner .carouselWrapper .hideButton * {
  height: 10px;
  width: 10px;
}
.spotlightBanner .swiper-slide {
  display: flex;
  justify-content: center;
}
.spotlightBanner .swiper-slide .contentWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  gap: 4px;
  width: 50%;
}
@media screen and (max-width: 35.49em) {
  .spotlightBanner .swiper-slide .contentWrapper {
    width: 100%;
  }
}
.spotlightBanner .swiper-slide .contentWrapper .seeMoreButton {
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
}
.spotlightBanner .swiper-slide .contentWrapper .seeMoreButton.leftPadding {
  padding-left: 8px;
}
.spotlightBanner .swiper-slide .contentWrapper button {
  font-size: 14px;
  padding: 0px;
}
.spotlightBanner.fixedTop {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
}
.spotlightBanner .description {
  line-height: 24px;
}
.spotlightBanner .icon {
  padding-right: 4px;
  height: 16px;
  width: 16px;
}
.spotlightBanner .icon i svg {
  width: 16px;
  height: 16px;
}
@media screen and (max-width: 47.99em) {
  .spotlightBanner {
    font-size: 1rem;
    font-weight: 500;
  }
}
.spotlightModal {
  padding: 16px 24px 24px;
  max-width: 375px;
  line-height: 20px;
}
.spotlightModal .header {
  display: flex;
  justify-content: flex-end;
}
.spotlightModal .description {
  font-size: 18px;
  margin-bottom: 16px;
}
.spotlightModal .additionalDetails {
  font-size: 16px;
}
.spotlightModal .closeButton {
  cursor: pointer;
}
.styledCard {
  overflow: hidden;
  align-items: stretch;
  text-align: left;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0.75px solid var(--ds-border-default, #e0e0e0);
  border-radius: 8px;
  box-shadow: 0 2px 4px 0 var(--ds-surface-shadow, #e0e0e0), 0 0 6px 0 #00000005;
}
.styledCard.borderStrokeNone {
  border: none;
}
.styledCard.borderStrokeExaggerated {
  border: 2px solid var(--ds-border-default, #e0e0e0);
}
.styledCard.roundedCornerNone {
  border-radius: 1px;
}
.styledCard.roundedCornerExaggerated {
  border-radius: 20px;
}
.styledCard.dropShadowNone {
  box-shadow: none;
}
.styledCard.dropShadowExaggerated {
  box-shadow: 0 4px 8px 0 var(--ds-surface-shadow, #0000000f),
    0 0 4px 0 #0000000a;
}
.styledCard:not(:disabled):hover {
  box-shadow: 0 0 24px var(--ds-surface-shadow, rgba(0, 0, 0, 0.2));
  cursor: pointer;
}
@media screen and (max-width: 47.99em) {
  .styledCard:not(:disabled):hover {
    box-shadow: 0 0 16px var(--ds-surface-shadow, rgba(0, 0, 0, 0.2));
  }
}
.styledCard:disabled {
  cursor: default;
}
.styledCard .cardContent {
  display: flex;
  justify-content: space-between;
  height: 100%;
}
.styledCard .cardContent.withAnimation {
  animation: slide-in-up-bounce 1s ease-out forwards;
  position: relative;
}
.styledCard .cardContent .offerUnlocked {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -10px;
  padding: 4px 8px 14px 8px;
  border-radius: 8px 8px 0 0;
  font-size: 10px;
}
.styledCard .cardContent .cardInfo {
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.styledCard .cardContent .cardInfo .cardText {
  font-size: 18px;
  font-weight: 600;
}
.styledCard .cardContent .cardInfo .cardDetails {
  font-size: 14px;
  font-weight: 400;
  display: inline;
}
.styledCard .cardContent .cardInfo .cardDetails svg {
  margin-left: 4px;
}
.styledCard .cardContent .illustration {
  padding: 12px;
}
.styledCard .targetOfferSplashScreen {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  animation: slide-out-up 0.5s linear forwards;
  animation-delay: 3s;
}
.styledCard .targetOfferSplashScreen .illustration {
  display: flex;
  justify-content: center;
  height: 60%;
  padding: 0;
}
.styledCard .targetOfferSplashScreen .illustration svg {
  height: 100%;
}
.styledCard .targetOfferSplashScreen .cardText {
  height: 40%;
  text-align: center;
  padding: 8px;
}
.styledCard .targetOfferSplashScreen .cardText .offerUnlocked {
  font-size: 16px;
  font-weight: 700;
}
.styledCard .targetOfferSplashScreen .cardText .offerText {
  font-size: 14px;
}
@keyframes shimmer {
  to {
    background-position-x: 0;
  }
}
@keyframes slide-out-up {
  0% {
    transform: translateY(0);
    opacity: 0;
  }
  100% {
    transform: translateY(-100%);
    opacity: 1;
  }
}
@keyframes slide-in-up-bounce {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  33% {
    transform: translateY(20px);
    opacity: 1;
  }
  67% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
.creditCardSurchargeDisclaimerBase.headerRule {
  border-top: 1px solid #000;
  padding-top: 24px;
  margin-top: 24px;
}
.creditCardSurchargeDisclaimerBase.confirmPageRule {
  padding-top: 24px;
  margin-top: 24px;
  color: #666;
}
.creditCardSurchargeDisclaimerBase.footerStyleDisclaimer {
  margin-top: auto;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
}
@media (max-width: 768px) {
  .creditCardSurchargeDisclaimerBase.footerStyleDisclaimer {
    padding: 16px 24px;
  }
}
.creditCardSurchargeDisclaimerBase.menuSurchargeDisclaimer {
  font-size: 11px;
  font-style: italic;
  text-align: left;
  max-width: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  line-height: 1.3;
  margin: 4px 0;
  padding: 0;
  color: #666;
}
.mapInfoWindow {
  max-width: 266px;
  color: #0d0d0d;
}
.mapInfoWindow hr {
  margin-bottom: 0;
}
.mapInfoWindow .options {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px 8px;
}
.mapInfoWindow .options .itemLabel {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mapInfoWindow .fulfillmentCta {
  display: flex;
  justify-content: center;
  width: 100%;
}
.mapInfoWindow .fulfillmentCta a {
  color: var(--ds-text-on-bg-primary, var(--tsw-primary-contrasting-color));
}
.mapInfoWindow .fulfillmentCta:disabled {
  cursor: default;
}
.mapInfoWindow.detail {
  font-size: 16px;
}
.mapInfoWindow.detail h3 {
  font-size: 20px;
  line-height: 28px;
}
.mapInfoWindow.detail h4 {
  font-size: 16px;
  font-weight: 500;
  line-height: 18px;
}
.mapInfoWindow.detail .schedule {
  padding-top: 8px;
}
.mapInfoWindow.detail .schedule .item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.gm-style-iw > button {
  display: none !important;
}
.localeSelector-modalContent .modalHeader.centered {
  justify-content: center;
}
.localeSelector-modalContent .modalHeader.centered h2 {
  font-size: 24px;
  line-height: 24px;
  margin: 0;
  font-weight: bold;
  padding: 8px;
}
.localeSelector-modalContent .modalHeader.centered .closeButton {
  display: none;
}
@media screen and (max-width: 35.49em) {
  .localeSelector-modalContent .modalHeader.centered {
    justify-content: flex-end;
  }
  .localeSelector-modalContent .modalHeader.centered .closeButton {
    display: inline-flex;
  }
}
.localeSelector.header {
  font-size: 24px;
  line-height: 24px;
  font-weight: bold;
  text-align: center;
}
.localeSelector.verticalSplit {
  display: flex;
  flex-direction: row;
}
.localeSelector.radioGroupContainer {
  flex: 1;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 0px 24px 0px 24px;
}
@media screen and (max-width: 35.49em) {
  .localeSelector.radioGroupContainer {
    padding-top: 24px;
  }
}
.localeSelector.radioGroup {
  display: flex;
  flex-direction: column;
}
.localeSelector.radioOption {
  padding: 24px 0;
  border-bottom: 0.75px solid rgba(0, 0, 0, 0.12);
  font-weight: 500;
}
.localeSelector.radioOption:last-child {
  border-bottom: none;
}
.localeSelector.radioOption .option .label {
  justify-content: space-between;
}
.localeSelector.radioOption .option .label .labelContents {
  order: 1;
  margin-right: auto;
}
.localeSelector.radioOption .option .label.showInput::after {
  order: 2;
  margin-right: 0;
  margin-left: 16px;
}
.localeSelector.radioOption .option .label.showInput::before {
  display: none;
}
.localeSelector.flexSpacer {
  flex: 1;
}
.localeSelector.footerButtons {
  display: flex;
  flex: 1;
  gap: 8px;
  padding: 24px;
  border-top: 0.75px solid rgba(0, 0, 0, 0.12);
}
.localeSelector.footerButtons button {
  border-radius: 32px !important;
}
.localeSelector.buttonContent {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  padding-left: 12px;
  padding-right: 12px;
  font-size: 16px;
  font-weight: normal;
}
.defaultTemplate.betterTogetherTemplate {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.betterTogetherPage {
  flex: 1;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.betterTogetherPage.backgroundColor {
  background: linear-gradient(
    to bottom,
    var(--ds-background-primary, var(--tsw-primary-color)) 0%,
    var(--ds-background-primary, var(--tsw-primary-color)) 30%,
    rgba(255, 255, 255, 0) 30%,
    rgba(255, 255, 255, 0) 100%
  );
}
.betterTogetherPage .postSubmit {
  color: #000;
}
.betterTogetherPage .background {
  display: none;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  inset: 66px 0 0 0;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage .background.left,
  .betterTogetherPage .background.right {
    display: block;
  }
}
@media screen and (min-width: 48em) {
  .betterTogetherPage.left,
  .betterTogetherPage.right {
    padding-top: 55px;
    padding-bottom: 126px;
  }
  .betterTogetherPage.left {
    flex-direction: row;
  }
  .betterTogetherPage.right {
    flex-direction: row-reverse;
  }
}
.betterTogetherPage .image.above {
  height: 260px;
}
.betterTogetherPage .image.behind {
  height: 260px;
  position: absolute;
  width: 100%;
  inset: 66px 0 0 0;
}
.betterTogetherPage .image.behind .betterTogetherWrapper {
  align-items: center;
}
.betterTogetherPage .image.left,
.betterTogetherPage .image.right {
  max-width: 30%;
  flex: 1;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage .image.left,
  .betterTogetherPage .image.right {
    display: none;
  }
}
@media screen and (min-width: 48em) {
  .betterTogetherPage .image.left {
    padding-left: 15px;
  }
  .betterTogetherPage .image.right {
    padding-right: 15px;
  }
}
@media screen and (min-width: 48em) {
  .betterTogetherPage.left {
    flex-direction: row;
  }
  .betterTogetherPage.right {
    flex-direction: row-reverse;
  }
}
.betterTogetherPage .betterTogetherWrapper {
  z-index: 1;
  flex: 1;
  display: flex;
  justify-content: center;
  overflow: auto;
  padding: 90px 0 28px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage .betterTogetherWrapper {
    padding: 50px 25px 50px 25px;
  }
}
@media screen and (min-width: 48em) {
  .betterTogetherPage .betterTogetherWrapper {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.betterTogetherPage .betterTogetherWrapper .betterTogether {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  min-width: min(100%, 400px);
  max-width: 950px;
  background-color: #fff;
  border-radius: 10px;
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .heading {
  text-align: center;
  color: #252525;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage
    .betterTogetherWrapper
    .betterTogether
    .heading
    .postSubmit
    > h1 {
    font-size: 20px;
    line-height: 24px;
  }
  .betterTogetherPage
    .betterTogetherWrapper
    .betterTogether
    .heading
    .postSubmit
    > h2 {
    font-size: 16px;
    line-height: 24px;
  }
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .heading > h2 {
  font-size: 20px;
  font-weight: 400;
  line-height: 24px;
  padding-top: 24px;
  padding-bottom: 40px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage .betterTogetherWrapper .betterTogether .heading > h2 {
    font-size: 18px;
    line-height: 24px;
  }
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .heading > h2 a,
.betterTogetherPage .betterTogetherWrapper .betterTogether .heading > h2 p {
  color: #252525;
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .formInput {
  padding-bottom: 12px;
  font-size: 14px;
}
.betterTogetherPage
  .betterTogetherWrapper
  .betterTogether
  .formInput
  .inputMessage {
  position: absolute;
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .submit {
  margin-top: 12px;
  width: 100%;
  max-width: 400px;
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .fieldsWrapper {
  width: 100%;
  max-width: 400px;
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .submit,
.betterTogetherPage .betterTogetherWrapper .betterTogether .fieldsWrapper {
  margin-left: auto;
  margin-right: auto;
}
.betterTogetherPage .betterTogetherWrapper .betterTogether .disableClicks {
  pointer-events: none;
}
.betterTogetherPage.behind .betterTogetherWrapper {
  margin-top: 120px;
  padding-bottom: 120px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage.behind .betterTogetherWrapper {
    padding-top: 95px;
    padding-bottom: 25px;
  }
}
.betterTogetherPage.behind .betterTogetherWrapper .betterTogether {
  padding: 80px 180px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage.behind .betterTogetherWrapper .betterTogether {
    padding: 25px 8px;
  }
}
.betterTogetherPage.left,
.betterTogetherPage.right {
  padding-top: 100px;
  padding-bottom: 100px;
}
.betterTogetherPage.left .betterTogether,
.betterTogetherPage.right .betterTogether {
  align-items: flex-start;
}
.betterTogetherPage.left .betterTogether .heading,
.betterTogetherPage.right .betterTogether .heading {
  text-align: left;
}
.betterTogetherPage.left .disclaimer,
.betterTogetherPage.right .disclaimer {
  padding: 20px 0;
}
.betterTogetherPage .disclaimer {
  padding: 20px;
  color: #666;
}
.betterTogetherPage .disclaimer a {
  color: #666;
  text-decoration: underline;
}
.betterTogetherPage.catering .cateringIframe {
  max-width: calc(100% - 480px);
  min-width: calc(100% - 480px);
  padding: 40px 80px 40px 80px;
}
@media screen and (max-width: 63.99em) {
  .betterTogetherPage.catering .cateringIframe {
    max-width: calc(100% - 260px);
    min-width: calc(100% - 260px);
  }
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage.catering .cateringIframe {
    max-width: 520px;
    min-width: 520px;
    padding: 40px;
  }
}
@media screen and (max-width: 35.49em) {
  .betterTogetherPage.catering .cateringIframe {
    max-width: calc(100% - 48px);
    min-width: calc(100% - 48px);
    padding: 40px 24px 40px 24px;
  }
}
.betterTogetherPage.catering.above .betterTogetherWrapper {
  padding: 0px;
}
.betterTogetherPage.catering.backgroundColor {
  background: none;
}
.betterTogetherPage.catering.backgroundColor .background.backgroundColor {
  background: none;
}
.betterTogetherPage.catering.backgroundColor .betterTogetherWrapper {
  padding: 88px 0px;
  background: linear-gradient(
    to bottom,
    var(--tsw-primary-color) 0% 260px,
    rgba(255, 255, 255, 0) 260px 100%
  );
}
.betterTogetherPage.catering.left .cateringIframe,
.betterTogetherPage.catering.right .cateringIframe {
  max-width: calc(100% - 136px);
  min-width: calc(100% - 136px);
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage.catering.left .cateringIframe,
  .betterTogetherPage.catering.right .cateringIframe {
    max-width: 520px;
    min-width: 520px;
  }
}
@media screen and (max-width: 35.49em) {
  .betterTogetherPage.catering.left .cateringIframe,
  .betterTogetherPage.catering.right .cateringIframe {
    max-width: calc(100% - 48px);
    min-width: calc(100% - 48px);
  }
}
.betterTogetherPage.catering.left .image,
.betterTogetherPage.catering.right .image {
  height: 550px;
}
.betterTogetherPage.catering.left .betterTogetherWrapper,
.betterTogetherPage.catering.right .betterTogetherWrapper {
  padding: 0px;
}
.betterTogetherPage.catering.right .image {
  padding-right: 80px;
}
.betterTogetherPage.catering.right .cateringIframe {
  padding: 0 56px 0 80px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage.catering.right .cateringIframe {
    padding: 40px;
  }
}
@media screen and (max-width: 35.49em) {
  .betterTogetherPage.catering.right .cateringIframe {
    padding: 40px 24px 40px 24px;
  }
}
.betterTogetherPage.catering.left .image {
  padding-left: 80px;
}
.betterTogetherPage.catering.left .cateringIframe {
  padding: 0 80px 0 56px;
}
@media screen and (max-width: 47.99em) {
  .betterTogetherPage.catering.left .cateringIframe {
    padding: 40px;
  }
}
@media screen and (max-width: 35.49em) {
  .betterTogetherPage.catering.left .cateringIframe {
    padding: 40px 24px 40px 24px;
  }
}
.footerWrapper {
  z-index: 1;
}
.defaultTemplate.formTemplate {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.formPage {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.formPage .postSubmit {
  color: #000;
}
.formPage .image.above {
  height: 260px;
}
.formPage .image.behind {
  height: 260px;
  position: absolute;
  width: 100%;
  inset: 66px 0 0 0;
}
.formPage .image.left,
.formPage .image.right {
  max-width: 30%;
  flex: 1;
}
@media screen and (max-width: 47.99em) {
  .formPage .image.left,
  .formPage .image.right {
    display: none;
  }
}
.formPage.behind {
  margin-top: 100px;
}
.formPage.behind .formWrapper {
  align-items: center;
}
@media screen and (min-width: 48em) {
  .formPage.left {
    flex-direction: row;
  }
  .formPage.right {
    flex-direction: row-reverse;
  }
}
@media screen and (min-width: 47.99em) {
  .formPage.left .formWrapper,
  .formPage.right .formWrapper {
    padding-top: 40px;
  }
}
.formPage .formWrapper {
  z-index: 1;
  flex: 1;
  display: flex;
  justify-content: center;
  overflow: auto;
  padding: 28px 0 28px 0;
}
.formPage .formWrapper .form {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  min-width: min(100%, 400px);
  background-color: #fff;
}
.formPage .formWrapper .form .heading {
  color: #252525;
}
.formPage .formWrapper .form .heading > h1 {
  font-weight: 400;
  font-size: 40px;
  line-height: 52px;
  color: #252525;
}
.formPage .formWrapper .form .heading > h1 a,
.formPage .formWrapper .form .heading > h1 p {
  color: #252525;
}
.formPage .formWrapper .form .heading > h2 {
  font-size: 18px;
  font-weight: 400;
  line-height: 20px;
  color: #252525;
}
.formPage .formWrapper .form .heading > h2 a,
.formPage .formWrapper .form .heading > h2 p {
  color: #252525;
}
.formPage .formWrapper .form .formInput {
  padding-bottom: 12px;
  font-size: 14px;
}
.formPage .formWrapper .form .formInput .inputMessage {
  position: absolute;
}
.formPage .formWrapper .form .submit {
  margin-top: 12px;
  width: 100%;
}
.formPage .formWrapper .form .fieldsWrapper {
  width: 100%;
}
.formPage .formWrapper .form .disableClicks {
  pointer-events: none;
}
.footerWrapper {
  z-index: 1;
}
.giftCardIllustration {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 60px;
}
.giftCardIllustration .headlines {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 24px;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.giftCardIllustration .headlines .cta {
  font-size: 26px;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.giftCardIllustration .headlines .locationName {
  color: var(--ds-text-default, var(--tsw-primary-text-color));
  font-size: 50px;
  line-height: 1.5;
}
.giftCardIllustration .card {
  box-shadow: 0 20px 31px 3px var(--ds-surface-shadow, rgba(0, 0, 0, 0.06));
  background-color: var(--ds-surface-tertiary, var(--tsw-primary-color));
  border-radius: 20px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  gap: 24px;
}
.giftCardIllustration .card .bow {
  color: var(--ds-icon-action, var(--tsw-primary-color));
  position: absolute;
  top: -16px;
  right: -2px;
}
.giftCardIllustration .card .tagIcon {
  color: var(--ds-surface-default, var(--tsw-background-color));
}
.giftCardIllustration .card .illustration {
  width: 343px;
  max-width: 343px;
  height: 193px;
  max-height: 193px;
  border-radius: 12px;
  box-shadow: 0 8px 19px 1px var(--ds-surface-shadow, rgba(0, 0, 0, 0.06));
  border: 1px solid #e5e5e5;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.giftCardIllustration .card .illustration .heading {
  padding: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex: 1;
}
.giftCardIllustration .card .illustration .heading .rxDetails {
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 70%;
  text-overflow: ellipsis;
  overflow: hidden;
  color: var(--ds-text-default, black);
}
.giftCardIllustration .card .illustration .heading .rxDetails .logo {
  height: 48px;
  width: auto;
}
.giftCardIllustration .card .illustration .maskedImageWrapper {
  overflow: hidden;
  -webkit-clip-path: ellipse(100% 80% at 50% 80%);
  clip-path: ellipse(100% 80% at 50% 80%);
  display: flex;
  flex: 2;
}
.giftCardIllustration .card .illustration .maskedImage {
  width: 100%;
  height: 100%;
}
.giftCardIllustration .card .messages {
  align-items: center;
  gap: 16px;
  display: flex;
  flex-direction: column;
  color: var(--ds-text-default, black);
}
.giftCardIllustration .card .messages .primary {
  display: flex;
  gap: 4px;
  font-weight: 600;
}
.giftCardIllustration .card .messages .primary .name {
  font-family: "Brush Script MT", cursive;
  font-size: 24px;
  font-weight: 400;
}
.giftCardPurchaseForm {
  max-width: 538px;
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 32px;
}
.giftCardPurchaseForm .creditCardFormSpi {
  width: 100%;
}
.giftCardPurchaseForm .row {
  display: flex;
  gap: 32px;
  width: 100%;
}
.giftCardPurchaseForm .row .inputField {
  width: 100%;
  margin-bottom: 0;
}
.giftCardPurchaseForm .row .inputField input,
.giftCardPurchaseForm .row .inputField textarea {
  line-height: normal;
}
.giftCardPurchaseForm .row .inputField.inputFieldTextarea .inputFieldInner {
  height: 80px;
}
@media screen and (max-width: 63.99em) {
  .giftCardPurchaseForm .row {
    flex-direction: column;
  }
}
.giftCardPurchaseForm .button {
  width: 100%;
}
.giftCardPurchaseForm .ccForm {
  width: 100%;
}
.giftCardPurchaseForm .successMessage {
  text-align: center;
  font-size: 38px;
}
.giftCardPurchasePage {
  background-color: var(--ds-surface-default, var(--tsw-background-color));
  min-height: 90vh;
  display: flex;
}
@media screen and (max-width: 63.99em) {
  .giftCardPurchasePage {
    flex-direction: column;
  }
}
.giftCardPurchasePage .form {
  padding: 48px 24px;
  background: #fff;
  flex: 1;
  min-width: 50%;
  color: #000;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 64em) {
  .giftCardPurchasePage .form {
    box-shadow: 12px 0 19px 1px var(--ds-surface-shadow, black);
  }
}
.giftCardPurchasePage .card {
  padding: 48px 24px;
  flex: 1;
  min-width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.iframePage {
  display: block;
  border: none;
}
.iframePage.readOnly {
  pointer-events: none;
}
.iframePage.loading {
  visibility: hidden;
}
.locationSelectionPageContent {
  display: flex;
  width: 100%;
  min-height: calc(100vh - 73px);
  max-height: 100vh;
}
@media screen and (max-width: 63.99em) {
  .locationSelectionPageContent {
    max-height: calc(100vh - 65px);
  }
}
.locationSelectionPageContent .leftColumn {
  box-shadow: 2px 0px 10px var(--ds-surface-shadow, rgba(0, 0, 0, 0.1));
  width: 500px;
  z-index: 1;
}
@media screen and (max-width: 47.99em) {
  .locationSelectionPageContent .leftColumn {
    max-width: unset;
    flex: 1;
  }
}
.locationSelectionPageContent .leftColumn .viewButton {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  background: #fff;
  border: 1.5px solid var(--ds-background-primary, var(--tsw-primary-color));
  padding: 12px;
  position: fixed;
  bottom: 48px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.locationSelectionPageContent .rightColumn {
  flex: 1;
}
@media screen and (max-width: 47.99em) {
  .locationSelectionPageContent .rightColumn {
    display: none;
  }
}
.basicLocationSelectionPageContent {
  max-width: 600px;
  margin: auto;
}
.locationSelectionWrapper {
  height: 100%;
}
@media screen and (max-width: 47.99em) {
  .locationSelectionWrapper {
    padding: 0 !important;
  }
}
.locationSelectionContent {
  height: 100%;
  min-width: 300px;
}
.locationSelectionContent .optionsHeading {
  padding: 16px 16px 0;
}
.locationSelectionContent .optionsLocationSelector {
  height: 100%;
  max-height: 100%;
  overflow: auto;
  position: relative;
  display: flex;
  flex-direction: column;
  padding-bottom: 16px;
}
.locationSelectionContent .optionsLocationSelector.basic {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.locationSelectionContent .optionsLocationSelector.basic::-webkit-scrollbar {
  -webkit-appearance: none;
  background: transparent;
  width: 0;
  height: 0;
}
.locationSelectionContent .optionsLocationSelector .topContent {
  padding: 24px;
  padding-bottom: 0;
}
.locationSelectionContent .optionsLocationSelector .topContent .toggle {
  margin: 12px 0;
}
.locationSelectionContent .optionsLocationSelector .topContent.basic h3 {
  text-align: center;
}
.locationSelectionContent .optionsLocationSelector .addressInput {
  display: flex;
  flex-direction: column;
}
.locationSelectionContent .optionsLocationSelector .addressInput input {
  border: 1px solid #e5e5e5;
}
.locationSelectionContent
  .optionsLocationSelector
  .addressInput
  .incompleteDeliveryAddress {
  color: #c42b44;
  font-size: 14px;
  margin: 8px;
  display: flex;
  flex-direction: column;
  padding-left: 4px;
}
.locationSelectionContent
  .optionsLocationSelector
  .addressInput
  .incompleteDeliveryAddress
  span {
  padding: 4px 0;
}
.locationSelectionContent
  .optionsLocationSelector
  .addressInput
  .incompleteDeliveryAddress
  p {
  color: #666;
  font-size: 14px;
}
.locationSelectionContent
  .optionsLocationSelector
  .addressInput
  .incompleteDeliveryAddress
  p:not(:last-child) {
  padding-bottom: 8px;
}
.locationSelectionContent
  .optionsLocationSelector
  .addressInput
  .incompleteDeliveryAddress
  p
  a {
  color: #2b4fb9;
  cursor: pointer;
}
.locationSelectionContent
  .optionsLocationSelector
  .addressInput
  .incompleteDeliveryAddress
  p
  a:hover {
  text-decoration: underline;
}
.locationSelectionContent .optionsLocationSelector .resultSection {
  flex: 2;
}
.locationSelectionContent .optionsLocationSelector .poweredBy {
  padding: 24px 0;
  width: 100%;
  display: flex;
  justify-content: center;
}
.locationSelectionContent .optionsLocationSelector .poweredBy > img {
  width: 165px;
}
.locationSelectionContent .optionsLocationSelector .results {
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.locationSelectionContent .optionsLocationSelector .results .prompt {
  font-size: 24px;
  line-height: 28px;
  text-align: center;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .prompt.ifFirstChild {
  display: none;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .prompt.ifFirstChild:first-child {
  display: block;
}
.locationSelectionContent .optionsLocationSelector .results .location {
  width: 100%;
  padding: 16px;
  border-radius: 24px;
  transition: box-shadow 0.2s ease-out, border-color 0.2s ease-out;
  border: 1.5px solid var(--ds-border-default, #e5e5e5);
}
.locationSelectionContent .optionsLocationSelector .results .location:hover {
  box-shadow: 0px 0px 20px var(--ds-surface-shadow, rgba(0, 0, 0, 0.15));
  cursor: pointer;
}
.locationSelectionContent .optionsLocationSelector .results .location.selected {
  border: 1.5px solid
    var(--ds-border-focus, var(--tsw-background-contrasting-color));
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .unavailable {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  padding: 8px 0;
}
.locationSelectionContent .optionsLocationSelector .results .location .badges {
  display: flex;
  gap: 24px;
  font-size: 14px;
  padding: 12px 0;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .badges
  .optionBadge {
  display: flex;
  align-items: center;
  gap: 8px;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours {
  font-size: 16px;
  padding: 12px 0;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule {
  padding-top: 18px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease-out;
  margin: 0;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  .hoursAndTooltip {
  display: flex;
  align-items: center;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  .hoursAndTooltip
  .tooltipContent {
  padding: 8px 16px;
  border-radius: 4px;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  .hoursWrapper {
  float: left;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  .infoIcon {
  background: none;
  border: none;
  margin-left: 10px;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule.expanded {
  max-height: 400px;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  .dayRow {
  display: flex;
  padding: 8px 0;
  grid-template-columns: 1fr 2fr;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  .heading
  > span {
  font-weight: 500;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  .bold {
  font-weight: 700;
  font-size: 16px;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  dt,
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  dd {
  margin: 0;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  dt {
  flex: 1;
  margin-right: 5px;
  text-align: left;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .schedule
  dd {
  flex: 2;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .hoursToggle {
  display: flex;
  cursor: pointer;
  gap: 8px;
  align-items: center;
  border: none;
  background: none;
  padding: 0;
  font-size: 16px;
  width: 100%;
  color: var(--ds-icon-default, var(--tsw-primary-text-color));
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .hoursToggle
  > img {
  transition: transform 0.2s ease-out;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .storeHours
  .hoursToggle
  > img.toggled {
  transform: rotate(180deg);
}
.locationSelectionContent .optionsLocationSelector .results .location .openTag {
  font-size: 16px;
  font-weight: 600;
}
@media screen and (max-width: 47.99em) {
  .locationSelectionContent
    .optionsLocationSelector
    .results
    .location
    .openTag {
    font-size: 14px;
  }
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .nameDistance {
  display: flex;
  justify-content: space-between;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .nameDistance
  .name {
  font-weight: 500;
  font-size: 24px;
  line-height: 28px;
  max-width: 70%;
  padding-right: 8px;
}
@media screen and (max-width: 47.99em) {
  .locationSelectionContent
    .optionsLocationSelector
    .results
    .location
    .nameDistance
    .name {
    font-size: 16px;
  }
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .nameDistance
  .distance {
  font-size: 14px;
  line-height: 28px;
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .locationInfo {
  font-size: 16px;
  line-height: 20px;
  padding-top: 8px;
}
@media screen and (max-width: 47.99em) {
  .locationSelectionContent
    .optionsLocationSelector
    .results
    .location
    .locationInfo {
    font-size: 14px;
  }
}
.locationSelectionContent
  .optionsLocationSelector
  .results
  .location
  .buttonLink
  a {
  color: var(
    --ds-text-on-bg-primary,
    var(--tsw-primary-contrasting-color)
  ) !important;
}
.locationSelectionContent .optionsLocationSelector .header {
  font-weight: 600;
  font-size: 16px;
  padding-bottom: 8px;
  padding-top: 16px;
  padding-left: 13px;
}
.locationSelectionContent .optionsLocationSelector h3 {
  font-weight: 400;
  font-size: 32px;
  line-height: 38px;
  padding-bottom: 16px;
}
.locationSelectionContent .optionsLocationSelector .locationSelector .dropDown {
  height: 34px;
  line-height: normal;
  font-size: 16px;
}
.locationSelectionContent
  .optionsLocationSelector
  .locationSelector
  .dropDown
  .icon {
  padding: 0 10px 0 0;
}
.locationSelectionContent
  .optionsLocationSelector
  .locationSelector
  .dropDown
  .dropDownArrow {
  width: unset;
}
.locationSelectionContent .optionsLocationSelector .map {
  height: 100%;
  margin-top: 24px;
}
.locationSelectionContent .optionsLocationSelector .map.hiddenView {
  display: none;
}
.pdfWrapper {
  position: relative;
  margin-top: 4px;
}
.pdfEditorOverlay {
  position: absolute;
  inset: 0 0 0 0;
}
.pdfCanvasWrapper {
  width: 100vw;
  height: calc(100vh - 38px);
  overflow: auto;
  text-align: center;
  margin-bottom: 19px;
}
.pdfCanvasWrapper.inEditor {
  width: 100%;
  max-width: 100%;
  min-width: 100%;
  overflow: hidden;
}
.pdfNav {
  position: -webkit-sticky;
  position: sticky;
  bottom: 10px;
  z-index: 100;
  margin: auto;
  margin-bottom: 19px;
  height: 38px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  font-size: 12px;
  color: #fff;
}
.pdfNav .pdfToolbar {
  display: flex;
  flex-direction: row;
  padding: 2px 4px;
  border-radius: 100px;
  background-color: #555;
  color: #fff;
  align-items: center;
}
.pdfNav .iconButton {
  width: 30px;
  height: 30px;
  padding: 5px 0 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  background-color: rgba(255, 255, 255, 0.3);
  margin-right: 6px;
  margin-left: 6px;
  color: #fff;
}
.pdfNav .iconButton:hover {
  background-color: rgba(255, 255, 255, 0.4);
}
.pdfNav .iconButton:first-child {
  margin-left: 0;
}
.pdfNav .iconButton:last-child {
  margin-right: 0;
}
.cuisine-filters {
  position: relative;
}
.cuisine-filters .filter-header {
  margin: 52px 0px 0px 0px;
}
.cuisine-filters .show-more {
  text-align: right;
  margin-bottom: 12px;
}
.cuisine-filters .show-more * {
  vertical-align: middle;
}
.cuisine-filters .show-more .caret {
  margin-left: 10px;
}
.cuisine-filters .filters {
  display: grid;
  overflow-x: scroll;
  grid-auto-flow: column;
  width: 100%;
}
.cuisine-filters .filters::-webkit-scrollbar {
  display: none;
}
.cuisine-filters .filters .arrow-wrapper {
  position: -webkit-sticky;
  position: sticky;
  top: 5px;
  background-color: #fff;
  z-index: 2;
  height: 30px;
  width: 30px;
  border-radius: 25px;
  cursor: pointer;
  text-align: center;
}
@media screen and (max-width: 47.99em) {
  .cuisine-filters .filters .arrow-wrapper {
    top: 50%;
  }
}
.cuisine-filters .filters .arrow-wrapper.left-arrow {
  left: 0px;
}
.cuisine-filters .filters .arrow-wrapper.right-arrow {
  right: 0px;
}
.cuisine-filters .filters .arrow-wrapper img {
  height: 20px;
  padding-top: 5px;
}
.cuisine-filters .filters .cuisine-filter {
  cursor: pointer;
}
.cuisine-filters .filters .cuisine-filter .cuisine-filter-content {
  position: relative;
  padding: 18px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cuisine-filters
  .filters
  .cuisine-filter
  .cuisine-filter-content
  .filter-icon-wrapper {
  position: relative;
  display: inline-block;
}
.cuisine-filters
  .filters
  .cuisine-filter
  .cuisine-filter-content
  .filter-icon-wrapper
  .filter-icon {
  height: 80px;
}
.cuisine-filters
  .filters
  .cuisine-filter
  .cuisine-filter-content
  .filter-title {
  position: relative;
  color: var(--tsw-primary-text-color);
  text-align: center;
  white-space: nowrap;
}
.cuisine-filters
  .filters
  .cuisine-filter:hover
  .cuisine-filter-content
  .filter-title {
  color: #2b4fb9;
  text-decoration: underline;
}
.cuisine-filters
  .filters
  .cuisine-filter.selected
  .cuisine-filter-content
  .filter-title {
  color: #fff;
  font-weight: bold;
  padding: 2px 5px;
  background-color: #4977de;
}
.cuisine-filters .filters:before {
  z-index: 1;
  content: "";
  position: absolute;
  top: 25px;
  left: -35px;
  width: 70px;
  height: inherit;
  box-shadow: inset 75px 0px 20px -20px #fff;
}
.cuisine-filters .filters:after {
  content: "";
  position: absolute;
  top: 25px;
  right: -35px;
  width: 70px;
  height: inherit;
  box-shadow: inset -75px 0px 20px -20px #fff;
}
.demoButton {
  white-space: nowrap;
}
.toastLocalFooter {
  position: relative;
  height: 230px;
  margin-top: 40px;
  margin-bottom: 100px;
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
}
.toastLocalFooter .container {
  height: 100%;
}
.toastLocalFooter .container .footerContent {
  display: table;
  width: 100%;
  height: 100%;
  border-top: 1px solid #e5e5e5;
}
@media screen and (max-width: 35.49em) {
  .toastLocalFooter .container .footerContent {
    padding-top: 20px;
  }
}
.toastLocalFooter .container .footerContent .contentCell {
  display: table-cell;
  vertical-align: middle;
}
.toastLocalFooter .container .footerContent .contentCell .logoWrapper {
  margin-bottom: 8px;
}
.toastLocalFooter
  .container
  .footerContent
  .contentCell
  .logoWrapper
  .logoLink {
  display: inline-block;
}
.toastLocalFooter .container .footerContent .contentCell .footerNav {
  font-size: 0.9rem;
}
.toastLocalFooter .container .footerContent .contentCell .footerNav a {
  color: var(--tsw-primary-text-color);
}
.toastLocalFooter .container .footerContent .contentCell .footerNav a:hover {
  color: #2b4fb9;
  text-decoration: underline;
}
.toastLocalFooter
  .container
  .footerContent
  .contentCell
  .footerNav
  .socialMedia {
  margin-top: 10px;
}
.toastLocalFooter
  .container
  .footerContent
  .contentCell
  .footerNav
  .socialMedia
  li {
  display: inline-block;
  padding: 0px 20px 0px 0px;
}
.toastLocalFooter .container .footerContent .contentCell .footerNav.navDown li {
  margin-bottom: 10px;
}
@media screen and (max-width: 35.49em) {
  .toastLocalFooter .container .footerContent .contentCell .footerNav {
    margin-bottom: 20px;
  }
}
.toastLocalFooter
  .container
  .footerContent
  .contentCell
  .footerNav
  .toastBadge {
  margin-top: 30px;
}
.toastLocalFooter .container .footerContent .contentCell ul.footerNav {
  margin: 0px;
  padding: 0px;
}
.toastLocalFooter .container .footerContent .contentCell ul.footerNav li {
  list-style-type: none;
}
.toastLocalFooter .container .footerContent .contentCell ul.footerNav li a {
  color: var(--tsw-primary-text-color);
  font-size: 0.9rem;
}
@media screen and (max-width: 35.49em) {
  .toastLocalFooter .container .footerContent .contentCell ul.footerNav {
    margin-bottom: 20px;
  }
}
.location-dropdown-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (max-width: 35.49em) {
  .location-dropdown-container {
    width: 100%;
  }
}
.location-dropdown-container .location-dropdown-pill {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #fff;
  border: 1px solid #d9d9d9;
  border-radius: 50px;
  padding: 0 12px;
  height: 54px;
  font-size: 16px;
}
@media screen and (max-width: 35.49em) {
  .location-dropdown-container .location-dropdown-pill {
    width: 100%;
  }
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-select-mode {
  display: flex;
  align-items: center;
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-select-mode
  i {
  padding: 4px 4px 0 0;
}
@media screen and (max-width: 400px) {
  .location-dropdown-container
    .location-dropdown-pill
    .location-dropdown-select-mode
    i {
    display: none;
  }
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-divider {
  width: 1px;
  height: 24px;
  background-color: #d9d9d9;
  margin-right: 16px;
}
.location-dropdown-container .location-dropdown-pill .location-dropdown-input {
  flex: 1;
  display: flex;
  align-items: center;
}
.location-dropdown-container .location-dropdown-pill .selected-location,
.location-dropdown-container .location-dropdown-pill .address-input {
  display: inline-block;
}
.location-dropdown-container .location-dropdown-pill .location-dropdown-input {
  display: flex;
  flex-direction: column;
  max-width: 300px;
  min-width: 218px;
}
@media screen and (max-width: 35.49em) {
  .location-dropdown-container
    .location-dropdown-pill
    .location-dropdown-input {
    min-width: auto;
  }
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-input
  .location-dropdown-input-wrapper {
  display: flex;
  width: 100%;
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-input
  .location-dropdown-input-wrapper
  .selected-location {
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #2b4fb9;
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-input
  .location-dropdown-input-wrapper
  .selected-location
  .address {
  margin: 0 5px;
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-input
  .location-dropdown-input-wrapper
  .address-input {
  vertical-align: bottom;
  width: 100%;
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-input
  .location-dropdown-input-wrapper
  .address-input
  input {
  height: 100%;
}
.location-dropdown-container
  .location-dropdown-pill
  .location-dropdown-input
  .location-dropdown-input-wrapper
  .current-location {
  padding-left: 12px;
  cursor: pointer;
  height: 24px;
  align-self: center;
}
.toastLocalNav {
  background-color: #f8f5f2;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  padding: 0 20px;
}
@media screen and (max-width: 35.49em) {
  .toastLocalNav {
    padding: 0 8px;
  }
}
.toastLocalNav .nav {
  max-width: 1240px;
  margin: auto;
  max-height: -webkit-fit-content;
  max-height: -moz-fit-content;
  max-height: fit-content;
  align-items: flex-start;
}
@media screen and (max-width: 35.49em) {
  .toastLocalNav .nav {
    flex-wrap: wrap;
    gap: 4px;
  }
}
.toastLocalNav .leftAndMiddleWrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 24px;
}
.toastLocalNav .left {
  margin-top: 8px;
}
@media screen and (max-width: 35.49em) {
  .toastLocalNav .middle {
    flex-basis: 100%;
  }
}
.toastLocalNav .right {
  padding-top: 8px;
}
@media screen and (max-width: 35.49em) {
  .toastLocalNav .right {
    padding: 0;
  }
}
.toastLocalNav .posPromoMini {
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}
@media screen and (max-width: 1080px) {
  .toastLocalNav .posPromoMini .promoForRestaurantWrapper {
    display: none;
  }
}
.toastLocalNav .posPromoMini .promoForRestaurant {
  font-weight: 400;
  display: flex;
}
.toastLocalNav .posPromoMini .promoForRestaurant .promoHyphen {
  margin: 0 6px;
}
.toastLocalNav .posPromoMini .verticalBar {
  width: 1px;
  background-color: #666;
  height: 20px;
  margin: 0 10px;
}
.toastLocalNav .posPromoMini .promoMobileLinks {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.toastLocalNav .posPromoMini .navPromoLink {
  color: #2b4fb9;
  font-weight: 600;
}
.toastLocalNav .posPromoMini .navPromoLink:hover {
  color: #002182;
  font-weight: 600;
}
.userNavLoginBtn {
  color: #2b4fb9;
  border: 1px solid #2b4fb9;
  padding: 10px 12px !important;
  margin-left: 10px;
  border-radius: 8px;
  background-color: transparent;
  cursor: pointer;
  transition: background-color 0.3s ease;
  font-weight: bold;
  white-space: nowrap;
}
.userNavLoginBtn:hover {
  background-color: #2b4fb9;
  color: #fff;
}
.searchBarContainer {
  display: flex;
  flex-direction: column;
}
.searchBarContainer .search-bar {
  max-width: 545px;
  height: 56px;
  position: relative;
  border: 1px solid #e5e5e5;
  background: #fff;
  display: flex;
  align-items: center;
  padding-right: 8px;
}
.searchBarContainer .search-bar input {
  height: 100%;
  width: calc(100% - 76px);
  padding-left: 16px;
  background: none;
  border: none;
}
.searchBarContainer .search-bar input:-ms-input-placeholder {
  color: #666;
}
.searchBarContainer .search-bar input::placeholder {
  color: #666;
}
.searchBarContainer .search-bar .submit-button {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: #2b4fb9;
  cursor: pointer;
}
.searchBarContainer .search-bar .submit-button .search-icon {
  pointer-events: none;
}
.searchBarContainer .search-bar.small {
  height: 35px;
}
.searchBarContainer .search-bar.small input {
  width: calc(100% - 45px);
  padding-left: 10px;
}
.searchBarContainer .search-bar.small .submit-button {
  height: 25px;
  width: 25px;
}
.searchBarContainer .search-bar.small .submit-button .search-icon {
  height: 50%;
  width: 50%;
}
.searchBarContainer .search-bar.full {
  height: 66px;
}
.searchBarContainer .search-bar.full input {
  width: calc(100% - 90px);
  padding-left: 20px;
}
.searchBarContainer .search-bar.full .submit-button {
  height: 50px;
  width: 50px;
}
@media screen and (max-width: 63.99em) {
  .searchBarContainer .search-bar {
    min-width: 400px;
  }
}
@media screen and (max-width: 47.99em) {
  .searchBarContainer .search-bar {
    min-width: 300px;
    max-width: 320px;
    line-height: 35px;
    height: 35px;
    margin: auto;
    padding-right: 4px;
  }
  .searchBarContainer .search-bar input {
    padding-left: 10px;
    width: calc(100% - 45px);
  }
  .searchBarContainer .search-bar .submit-button {
    height: 25px;
    width: 25px;
  }
  .searchBarContainer .search-bar .submit-button .search-icon {
    height: 50%;
    width: 50%;
  }
  .searchBarContainer .search-bar.full {
    line-height: 35px;
    height: 35px;
  }
  .searchBarContainer .search-bar.full .submit-button {
    height: 25px;
    width: 25px;
  }
}
.searchBarContainer .search-bar .disabled {
  filter: grayscale(100%);
}
.searchBarContainer .placesAutocompleteError {
  padding-left: 13px;
}
.paginated-rxs .rx-listing-title {
  margin-bottom: 12px;
}
.paginated-rxs .restaurantsMap {
  height: 500px;
}
.paginated-rxs .restaurants {
  width: calc(100% + 20px);
  margin-left: -10px;
}
.paginated-rxs .restaurants .rx-card-container .rx-card-wrapper {
  padding: 10px;
}
.paginated-rxs .restaurants .rx-card-container .link-to-rx-profile {
  padding-left: 10px;
}
.paginated-rxs .restaurants .rx-card-container.disabled .oo-link {
  pointer-events: none;
}
.paginated-rxs .restaurants .rx-card-container.disabled .rx-card {
  background: #e5e5e5;
  opacity: 60%;
  cursor: default;
}
.paginated-rxs .paginator {
  padding: 0px;
  text-align: center;
}
.paginated-rxs .viewButton {
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  background: #fff;
  border: 1.5px solid var(--ds-border-default, var(--tsw-primary-color));
  padding: 12px;
  position: fixed;
  bottom: 48px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.rx-card-container .oo-link {
  text-decoration: none;
  color: var(--ds-text-default, var(--tsw-primary-text-color));
}
.rx-card-container .rx-card-wrapper .rx-card {
  overflow: hidden;
  border: 1px solid #e5e5e5;
  cursor: pointer;
}
.rx-card-container .rx-card-wrapper .rx-card:hover {
  background: #f0f0f0;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card:hover
  .rx-details
  .rx-header
  .avg-rating
  .star-img {
  transform: rotate(72deg);
  stroke: #ff4c00;
  fill: #ff4c00;
}
.rx-card-container .rx-card-wrapper .rx-card .rx-image-wrapper {
  position: relative;
  width: 100%;
  height: auto;
  padding-bottom: 56.25%;
  overflow: hidden;
  border-bottom: 1px solid #e5e5e5;
}
.rx-card-container .rx-card-wrapper .rx-card .rx-image-wrapper .rx-image {
  position: absolute;
  width: 100%;
  height: auto;
  margin: auto;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
}
.rx-card-container .rx-card-wrapper .rx-card .rx-details {
  padding: 20px;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .rx-details
  .rx-header
  .food-types {
  font-size: 1.2rem;
  color: #666;
}
.rx-card-container .rx-card-wrapper .rx-card .rx-details .rx-header .rx-name {
  margin: 12px 0px;
  font-size: 22px;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .rx-details
  .rx-header
  .rx-address {
  margin-bottom: 12px;
  color: #666;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .rx-details
  .rx-header
  .avg-rating
  .star-img {
  fill: #2b4fb9;
  stroke: #2b4fb9;
  transition: all 0.4s ease-in-out;
}
.rx-card-container .rx-card-wrapper .rx-card .rx-details hr {
  margin: 14px 0px 0px 0px;
}
.rx-card-container .rx-card-wrapper .rx-card .popular-items-wrapper {
  padding: 0px 20px 20px 20px;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .show-items
  * {
  vertical-align: middle;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .show-items
  .caret {
  margin-left: 8px;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items {
  width: 100%;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  th {
  font-size: 2rem;
  text-align: left;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  td {
  vertical-align: bottom;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .name-cell {
  padding-top: 14px;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .price-cell {
  padding-top: 14px;
  text-align: right;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .description-cell {
  line-height: normal;
  color: #666;
}
@media screen and (max-width: 47.99em) {
  .rx-card-container
    .rx-card-wrapper
    .rx-card
    .popular-items-wrapper
    .rx-popular-items
    .menu-item
    .description-cell {
    font-family: var(--tsw-font-family, Effra, sans-serif);
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-weight: 400;
    font-size: 0.75rem;
    line-height: 1.5;
  }
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .description-cell
  .clamped {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .description-cell
  .link-text {
  font-weight: 100;
}
.rx-card-container
  .rx-card-wrapper
  .rx-card
  .popular-items-wrapper
  .rx-popular-items
  .menu-item
  .rating-cell {
  text-align: right;
}
.rx-card-container .link-to-rx-profile {
  color: #2b4fb9;
}
.rx-config {
  text-align: right;
}
.rx-config.has-menu-tag {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.rx-config img {
  padding: 5px;
  height: 18px;
}
.catering-container {
  background-color: #f8f5f2;
  flex: 1;
  overflow: hidden;
  position: relative;
}
.catering-loading-overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 75vh;
  width: 100vw;
  position: absolute;
  z-index: -1;
}
.catering-iframe {
  border: 0;
  width: 100%;
  height: 100%;
  position: relative;
}
.rx-search-container {
  display: flex;
  flex-direction: column;
  height: 100dvh;
}
.rx-search {
  height: 100%;
  padding-top: 84px 20px 0;
}
.rx-search .page-contents {
  padding: 10px 20px 0 20px;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}
.rx-search .filters-container {
  background-color: #f8f5f2;
}
.rx-search .toggles-container {
  display: flex;
  flex-direction: row;
}
@media screen and (max-width: 47.99em) {
  .rx-search .toggles-container {
    flex-direction: column;
  }
}
.rx-search .accepts-toggles {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 47.99em) {
  .rx-search .accepts-toggles {
    margin-right: auto;
    margin-top: 16px;
  }
}
.rx-search .accepts-toggles .accepts-toggle {
  align-items: center;
  justify-content: space-between;
  border-radius: 32px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background-color: #fff;
  font-size: 16px;
  font-weight: normal;
  font-family: "Source Sans Pro", sans-serif;
  overflow: hidden;
  height: 36px;
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
}
.rx-search .accepts-toggles .accepts-toggle .toggleContents {
  display: flex;
  flex-direction: row;
  gap: 6px;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px 8px 8px;
}
.rx-search .accepts-toggles .accepts-toggle .toggleContents.selected {
  background-color: #252525;
}
.rx-search .accepts-toggles .accepts-toggle .toggleContents .toggleTextContent {
  flex: 1;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
}
.rx-search
  .accepts-toggles
  .accepts-toggle
  .toggleContents
  .toggleTextContent
  .toggleText {
  overflow: hidden;
}
.rx-search
  .accepts-toggles
  .accepts-toggle
  .toggleContents
  .toggleTextContent
  .toggleText.selected {
  color: #fff;
}
.rx-search .cuisine-filters .filter-header {
  margin: 0;
}
.rx-search .rx-filters {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 24px;
}
@media screen and (max-width: 47.99em) {
  .rx-search .rx-filters {
    flex-direction: column;
  }
}
.rx-search .rx-filters .rx-filter-second-row {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 47.99em) {
  .rx-search .rx-filters .rx-filter-second-row {
    text-align: center;
  }
}
.rx-search .rx-filters .rx-filter {
  display: inline-block;
  min-height: 35px;
}
.rx-search .rx-filters .rx-filter .rx-filter-dropdown {
  margin-right: 20px;
}
.rx-search .rx-filters .rx-filter .button-group {
  display: flex;
  white-space: nowrap;
  width: auto;
  padding-top: 10px;
}
.rx-search .rx-filters .rx-filter .button-group .button-group-button {
  flex-grow: 1;
}
.rx-search .rx-filters .rx-filter .button-group .button-group-button img {
  vertical-align: text-top;
  padding-right: 5px;
}
.rx-search .rx-filters .rx-filter .rx-filter-dropdown-label-text span,
.rx-search .rx-filters .rx-filter .rx-filter-dropdown-label-text svg,
.rx-search .rx-filters .rx-filter .rx-filter-dropdown-label-text img {
  vertical-align: middle;
}
.rx-search .rx-filters .rx-filter .rx-filter-dropdown-label-text svg {
  padding-left: 3px;
}
.rx-search .rx-filters .rx-filter .rx-filter-dropdown-label-text img {
  padding-right: 5px;
}
@media screen and (min-width: 48em) {
  .rx-search .rx-filters .rx-filter .rx-filter-dropdown-menu {
    transform: translate(-40%);
  }
}
@media screen and (min-width: 64em) {
  .rx-search .rx-filters .rx-filter .rx-filter-dropdown-menu {
    transform: unset;
  }
}
@media screen and (max-width: 47.99em) {
  .rx-search .rx-filters .rx-filter .rx-filter-dropdown-menu .button-group {
    flex-wrap: wrap;
  }
  .rx-search
    .rx-filters
    .rx-filter
    .rx-filter-dropdown-menu
    .button-group
    .button-group-button {
    width: 40%;
    margin: 10px;
    padding: 10px 20px;
  }
}
@media screen and (max-width: 35.49em) {
  .rx-search
    .rx-filters
    .rx-filter
    .rx-filter-dropdown-menu
    .button-group
    .button-group-button {
    width: 100%;
  }
}
.rx-search .rx-filters .rx-filter .rx-rating-slider {
  height: 30px;
  width: 200px;
  padding: 15px 15px 0 15px;
  letter-spacing: normal;
}
@media screen and (max-width: 47.99em) {
  .rx-search .rx-filters .rx-filter .rx-rating-slider {
    width: 80%;
    margin: auto;
  }
}
.rx-search .rx-filters .rx-filter.clear-button {
  height: 35px;
}
.rx-search .rx-filters .rx-filter.clear-button .button-sm {
  height: auto;
  min-width: 50px;
  line-height: 35px;
  text-align: center;
  border: 0;
  font-weight: 400;
  font-size: 16px;
}
.cuisine-farm h2 {
  margin: 32px 0px 32px 0px;
}
@media screen and (max-width: 35.49em) {
  .cuisine-farm h2 {
    margin: 0px 0px 32px 0px;
  }
}
.cuisine-farm .cuisine-cards {
  margin: -12px;
}
.cuisine-farm .cuisine-cards .cuisine-card.hidden {
  display: none;
}
.cuisine-farm .cuisine-cards .cuisine-card .cuisine-card-content {
  padding: 18px 12px;
}
.cuisine-farm
  .cuisine-cards
  .cuisine-card
  .cuisine-card-content
  .cuisine-image-wrapper {
  position: relative;
  width: 100%;
  height: auto;
  padding-bottom: 75%;
  overflow: hidden;
  transition: all 0.25s ease-in-out;
}
.cuisine-farm
  .cuisine-cards
  .cuisine-card
  .cuisine-card-content
  .cuisine-image-wrapper
  .cuisine-image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
}
.cuisine-farm .cuisine-cards .cuisine-card .cuisine-card-content h3 {
  margin-top: 10px;
  text-decoration: none;
  color: var(--tsw-primary-text-color);
  font-size: 0.9rem;
}
.cuisine-farm
  .cuisine-cards
  .cuisine-card:hover
  .cuisine-card-content
  .cuisine-title {
  color: #2b4fb9;
  text-decoration: underline;
}
.cuisine-farm .show-more {
  margin-top: 34px;
  text-align: center;
}
.cuisine-farm .show-more .caret {
  margin-left: 10px;
}
.toastLocalHero {
  position: relative;
  padding-bottom: 100px;
}
.toastLocalHero .heroImage {
  position: absolute;
  right: 0;
  height: 500px;
}
.toastLocalHero .heroContent {
  position: relative;
  display: flex;
}
.toastLocalHero .heroContent .leftContent {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media screen and (max-width: 63.99em) {
  .toastLocalHero .heroContent .leftContent {
    align-items: center;
  }
}
.toastLocalHero .heroContent .leftContent h1 {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 3.5rem;
  line-height: 1.5;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  margin-top: 150px;
}
@media screen and (max-width: 63.99em) {
  .toastLocalHero .heroContent .leftContent h1 {
    text-align: center;
  }
}
.toastLocalHero .heroContent .rightContent {
  position: relative;
}
.toastLocalHero .heroContent .rightContent .foodPlate {
  position: absolute;
  width: 200px;
  height: 200px;
  padding: 10px;
  background: #fff;
  transition: all 0.15s ease-in-out;
  box-sizing: content-box;
}
.toastLocalHero .heroContent .rightContent .foodPlate .cropper {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.toastLocalHero .heroContent .rightContent .foodPlate .cropper img {
  width: auto;
  height: 100%;
}
.toastLocalHero .heroContent .rightContent .foodPlate.foodPlate1 {
  transform: scale(0.65);
  top: 70%;
  left: 8%;
}
.toastLocalHero .heroContent .rightContent .foodPlate.foodPlate2 {
  transform: scale(0.36);
  left: 2%;
  top: 8%;
}
.toastLocalHero .heroContent .rightContent .foodPlate.foodPlate3 {
  top: 40%;
  left: 54%;
}
.heroContainer {
  background-color: #f8f5f2;
  display: flex;
  justify-content: center;
  border-bottom-left-radius: 200px;
  border-bottom-right-radius: 200px;
  overflow: hidden;
}
@media screen and (max-width: 47.99em) {
  .heroContainer {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    overflow: visible;
  }
  .heroContainer .heroImage {
    display: none;
  }
}
.heroContainer .heroContent {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  max-width: 1240px;
  margin: 0 auto;
  background-color: #f8f5f2;
  justify-content: center;
}
.heroContainer .heroContent .heroImage {
  flex: 1 1 0;
  width: 320px;
  max-width: 320px;
  margin-bottom: -4px;
}
.heroContainer .heroContent .heroCenterContent {
  width: 480px;
  max-width: 545px;
  display: flex;
  flex-direction: column;
  text-align: center;
  padding: 20px;
}
@media screen and (max-width: 47.99em) {
  .heroContainer .heroContent .heroCenterContent {
    width: auto;
  }
}
.heroContainer .heroContent .heroCenterContent h1 {
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 700;
  font-family: var(--tsw-header-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 2.5rem;
  line-height: 1.5;
  font-family: var(--tsw-font-family, Effra, sans-serif);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 400;
  line-height: 1;
}
.heroContainer .heroContent .heroCenterContent .heroButtonsContainer {
  margin: 16px 0px;
  justify-content: center;
  display: flex;
  flex-direction: row;
  gap: 6px;
}
.heroContainer
  .heroContent
  .heroCenterContent
  .heroButtonsContainer
  .heroSearchModeButton {
  cursor: pointer;
  padding: 8px 26px;
  border-radius: 32px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.heroContainer
  .heroContent
  .heroCenterContent
  .heroButtonsContainer
  .heroSearchModeButton
  .heroSearchModeText {
  position: relative;
  color: #666;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
}
.heroContainer
  .heroContent
  .heroCenterContent
  .heroButtonsContainer
  .heroSearchModeButton:hover
  .heroSearchModeText {
  text-decoration: underline;
  color: #2b4fb9;
}
.heroContainer
  .heroContent
  .heroCenterContent
  .heroButtonsContainer
  .heroButtonSelected {
  background-color: #252525;
}
.heroContainer
  .heroContent
  .heroCenterContent
  .heroButtonsContainer
  .heroButtonSelected
  .heroSearchModeText {
  color: #fff !important;
}
.heroContainer .heroContent .heroCenterContent .heroSearchBarContainer {
  height: 66px;
}
@media screen and (max-width: 47.99em) {
  .heroContainer .heroContent .heroCenterContent .heroSearchBarContainer {
    height: auto;
  }
}
.heroContainer
  .heroContent
  .heroCenterContent
  .heroSearchBarContainer
  .heroSearchBar {
  position: absolute;
  width: 440px;
}
@media screen and (max-width: 47.99em) {
  .heroContainer
    .heroContent
    .heroCenterContent
    .heroSearchBarContainer
    .heroSearchBar {
    position: relative;
    width: auto;
  }
}
.mission {
  position: relative;
  margin: 60px 0px;
}
.mission .missionImg {
  height: 440px;
  width: 100%;
}
.mission .missionContent {
  position: absolute;
  top: 0;
  left: 75px;
  bottom: 0;
  align-content: center;
  color: #fff;
  max-width: 500px;
}
.mission .missionContent .flares,
.mission .missionContent h2 {
  margin-bottom: 24px;
}
.mission .missionContent h2 {
  font-weight: 400;
  font-size: 1.8rem;
}
.mission .missionContent p {
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 16px;
}
@media screen and (max-width: 47.99em) {
  .mission .missionContent {
    left: 45px;
    right: 45px;
  }
}
.rx-hot-spots .icon {
  margin-bottom: 32px;
}
.rx-hot-spots .blurb {
  margin-top: 8px;
}
.rx-hot-spots .hot-spots .simple-listing .listing-content {
  padding: 8px;
}
.rx-hot-spots .hot-spots .simple-listing .listing-content h3 {
  color: var(--tsw-primary-text-color);
  font-weight: 400;
  font-size: 26px;
}
.rx-hot-spots .hot-spots .simple-listing .listing-content h3:hover {
  color: #2b4fb9;
  text-decoration: underline;
}
.rx-hot-spots .hot-spots .simple-listing .listing-content p {
  color: #666;
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-size: 16px;
}
@media screen and (max-width: 63.99em) {
  .rx-hot-spots .hot-spots .simple-listing .listing-content {
    padding: 12px 0px 0px 0px;
  }
}
.promoContainerPadding {
  padding-top: 40px;
}
.promoContainer {
  display: flex;
  gap: 40px;
  align-items: center;
}
@media screen and (max-width: 63.99em) {
  .promoContainer .promoImg {
    display: none;
  }
}
.promoContainer .cateringImg {
  width: 380px;
  height: auto;
}
.promoContainer .promoContent h2 {
  font-weight: 400;
  line-height: 36px;
}
.promoContainer .promoContent h3 {
  margin: 20px 0px 34px 0px;
  font-size: 1.5rem;
  font-weight: 400;
}
.promoContainer .promoContent .titleText {
  font-size: 1.5rem;
  font-weight: 400;
  color: #7a7a7a;
}
.promoContainer .promoContent .titleContainer {
  margin-bottom: 6px;
  display: flex;
  align-items: center;
}
.promoContainer .promoContent .logo {
  height: 20px;
  margin-right: 6px;
}
.promoContainer .promoContent .divider {
  margin-right: 6px;
  border-right: 1px solid #7a7a7a;
  display: flex;
  align-items: center;
}
.promoContainer .promoContent .linkButton,
.promoContainer .promoContent .iosButton,
.promoContainer .promoContent .androidButton,
.promoContainer .promoContent .cateringButton {
  text-align: center;
  font-family: "Source Sans Pro", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  letter-spacing: normal;
  font-weight: 600;
  font-size: 16px;
}
.promoContainer .promoContent .cateringButton {
  width: 200px;
}
.promoContainer .promoContent .iosButton,
.promoContainer .promoContent .androidButton {
  width: 132px;
}
.promoContainer .promoContent .androidButton {
  margin-left: 20px;
}
.promoContainer .promoContent .dinerSupport {
  margin-top: 30px;
  color: #6e6e6e;
}
.promoContainer .promoContent .dinerSupport a {
  color: #2b4fb9;
}
.promoContainer .promoContent .dinerSupport a:hover {
  text-decoration: underline;
}
.toastLocalSplash {
  color: #252525;
}
.toastLocalSplash .posPromo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 45px 0px;
  padding: 20px 0px;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}
.toastLocalSplash .posPromo .message {
  line-height: 1.5rem;
}
@media screen and (max-width: 63.99em) {
  .toastLocalSplash .posPromo {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .toastLocalSplash .posPromo .message {
    padding-bottom: 10px;
    font-family: "Source Sans Pro", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: normal;
    font-weight: 400;
  }
}

/*# sourceMappingURL=public_1761243826.min.css.map*/
