
  @media (min-width: 992px) {
    .hide_for_desktop_united {
      display: none;
    }
  }
  @media (max-width: 991px) {
    .hide_for_mobile_united {
      display: none;
    }
  }
  .clamp-lines-united {
    overflow: hidden;
    line-height: 1.4em;
    max-height: 2.8em; /* default 2 lines */
    position: relative;
  }
  @media (max-width: 991px) {
    .clamp-lines-united {
      max-height: 2.8em; /* default 2 lines for 3 lines * 1.4em */
    }
  }
  .border-color-light-green {
    background-color: #DCEEDC !important;
    border: 1px solid rgba(0, 0, 0, .125) !important;
  }
  .selected_item_edite {
    position: static;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    background-color: transparent;
  }
  .selected_item_view {
    position: static;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    background-color: transparent;
  }
  .font-family-text-united {
    font-family: Montserrat, sans-serif !important;
  }
  .card{
    border-radius: 8px;
    margin-bottom: 25px;
    height: 450px !important;
  }
  .card-with-price{
    height: 475px !important;
  }
  @media (max-width: 991px){
    .card{
      height: 342px !important;
      margin-bottom: 0;
    }
    .card-with-price{
      height: 365px !important;
    }
  }
  .card-body-edite-choose-edit {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-height: 195px;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 1.25rem;
    font-family: Montserrat, sans-serif !important;
  }
  @media (max-width: 991px) {
    .card-body-edite-choose-edit {
      -ms-flex: 1 1 auto;
      flex: 1 1 auto;
      min-height: 1px;
      padding-left: 5px;
      padding-right: 5px;
      padding-top: 5px !important;
      padding-bottom: 0.3rem;
    }
  }
  .meal-card-title-united{
    font-size: 17px;
    line-height: 20px;
    font-family: Montserrat, sans-serif !important;
    font-weight: 600;
    color: #262322;
    min-height: 40px;
  }
  @media (max-width: 991px){
    .meal-card-title-united{
      min-height: 40px;
    }
  }
  .card-title {
    margin-bottom: 5px;
  }
  @media (max-width: 991px){
    .card-title {
      margin-bottom: 0px;
    }
  }
  .card-mark-extra-united{
    position: absolute;
    z-index: 8;
    padding: 3px 10px;
    border-radius: 0 5px 0 0;
    color: #FFF;
    font-weight: 600;
    margin-top: -38px;
    margin-left: -0.5px;
    outline: 4px solid white;
    outline-offset: 0px;
  }
  @media (max-width: 991px) {
    .card-mark-extra-united{
      position: absolute;
      z-index: 8;
      padding: 3px 10px;
      border-radius: 0 5px 0 0;
      color: #FFF;
      font-size: 11px;
      font-weight: 600;
      margin-left: -3px;
      outline: 2px solid white;
      margin-top: -29px;
    }
  }
  .price-extra-text-views-united {
    width: 100%;
    text-align: left;
    padding-left: 5px;
    position: relative;
  }
  @media (max-width: 991px) {
    .price-extra-text-views-united {
      width: 100%;
      text-align: left;
      margin-top: 5px;
      margin-bottom: 5px;
      margin-left: 0px;
      position: relative;
    }
  }
  .meal-card-title-dietary-pref-united{
    display: inline-block;
    font-size: 14px;
    line-height: 25px;
    color: #262322;
    min-height: 25px;
    width: 100%;
    font-family: Montserrat, sans-serif !important;
  }
  @media (max-width: 991px){
    .meal-card-title-dietary-pref-united{
      display: inline-block;
      min-height: 40px !important;
      font-size: 15px;
      line-height: 20px;
      width: 100%;
    }
  }
  .min-h{
    font-family: Montserrat, sans-serif !important;
  }
  .btn-united{
    display: inline-block;
      border-radius: 6px;
      padding: 4px;
  }
  .card-mark-united{
    position: absolute;
    z-index: 8;
    right: 15.5px;
    padding: 3px 10px;
    border-radius: 0 5px 0 0;
    color: #FFF;
    font-weight: 500;
    margin-top: 0.5px;
    background-color: #2D4641;
    font-family: Montserrat, sans-serif !important;
  }
  @media (max-width: 991px){
    .card-mark-united{
      right: 10px;
      line-height: 1.1;
      font-size: 14px;
    }
  }
  /*icons*/
  .meal-info-container {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  @media (max-width: 991px){
    .meal-info-container {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-top: 5px;
      margin-bottom: 10px;
    }
  }
  .calorie-container {
    display: flex;
    align-items: center;
    gap: 5px;
    max-width: 80px;
    white-space: nowrap;
    flex-shrink: 0;
    margin-right: -5px;
  }
  .calorie-icon {
    width: 40%;
    height: auto;
    margin-right: -7px;
  }
  .calorie-container-icon-big {
    text-align: center;
    margin-left: -20px;
  }
  @media (max-width: 991px){
    .calorie-container-icon-big {
      margin-left: -30px;
    }
  }
  .calorie-container-icon-big-text {
    font-weight: bold;
    text-align: center;
  }
  .calorie-container-icon-big-info {
    display: block;
    max-width: 120px;
    text-align: center;
  }
  @media (max-width: 991px){
    .calorie-container-icon-big-info {
      display: block;
      max-width: 120px;
    }
  }
  .other-nutritional-united {
    display: block;
    text-align: center;
  }
  .spicy-container-icon-big {
    text-align: center;
  }
  .spicy-container-icon-small {
    text-align: center;
  }
  .cooking-pan-container-icon-big {
    text-align: center;
    width: auto;
    white-space: nowrap;
  }
  .cooking-pan-container-icon-big-info {
      margin-top: -5px;
      display: block;
  }
  .calorie-icon-big {
    width: 18%;
    height: auto;
    margin-top: -2px;
  }
  .calorie-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 14px;
  }
  .calorie-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 14px;
  }
  .spicy-container {
    display: flex;
    gap: 2px;
    margin-left: -15px;
    margin-bottom: -10px;
  }
  .spicy-container-big {
    margin-top: -2px;
  }
  .spicy-icon {
    width: 90%;
    height: auto;
    flex-shrink: 0;
  }
  .spicy-icon-big {
    width: 70%;
    height: auto;
    flex-shrink: 0;
  }
  .spicy-icon-small {
    width: 20%;
    height: auto;
    margin-right: -7px;
  }
  .cooking-pan {
    width: 35px;
    height: auto;
    flex-shrink: 0;
    margin-left: -5px;
    margin-bottom: -3px;
  }
  .cooking-pan-big {
    width: 35px;
    height: auto;
    flex-shrink: 0;
    margin-left: -5px;
  }
  /*end icons*/
  .backlight-meal-plan{
    background-color: #bbbdb9;
  }
  .popup-meal {
    width: 100%;
    max-width: 100%;
    margin-top: -50px;
  }
  .modal-content {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 750px;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 0.3rem;
    outline: 0;
  }
  @media (max-width: 991px){
    .modal-content {
      position: relative;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column;
      width: 100%;
      pointer-events: auto;
      background-color: #fff;
      background-clip: padding-box;
      border: 1px solid rgba(0, 0, 0, 0.2);
      border-radius: 0.3rem;
      outline: 0;
    }
  }
  .popup-meal-image-wrap {
    position: relative;
    /*width: 100%;*/
    width: 700px;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  @media (max-width: 991px){
    .popup-meal-image-wrap {
      position: relative;
      width: calc(100% - 30px);
      /*width: 700px;*/
      display: block;
      margin-left: 15px;
      margin-right: 15px;
    }
  }
  .popup-meal-image-wrap img {
    width: 100%;
    height: auto;
    display: block;
   }
  .popup-meal-title {
    position: absolute;
    bottom: 1px;
    left: 0;
    width: 100%;
    color: white !important;
    font-size: 21px;
    background: rgba(0, 0, 0, 0.2);
    white-space: normal;
    word-wrap: break-word;
    padding-left: 10px;
    border-radius: 5px;
    height: 65px;
  }
  @media (max-width: 991px){
    .popup-meal-title {
      position: absolute;
      bottom: 1px;
      left: 0;
      width: 100%;
      color: white !important;
      font-size: 21px;
      background: rgba(0, 0, 0, 0.2);
      white-space: normal;
      word-wrap: break-word;
      padding-left: 10px;
      border-radius: 5px;
      height: 85px;
    }
  }
  .popup-meal-title-text {
    padding-top: 5px;
    line-height: normal;
  }
  .close-united {
    position: sticky;
    top: 10px;
    right: 0px;
    z-index: 100;
    float: right;
    font-size: 1.5rem;
    box-shadow: none;
    text-align: right;
    margin-top: -10px;
    padding-right: 18px;
    padding-top: 0px;
    padding-bottom: 0px;
    border: 0 !important;
    background-color: transparent !important;
    opacity: 1 !important;
    filter: none !important;
  }
  @media (max-width: 991px){
    .close-united {
      padding-right: 8px;
    }
  }
  .close-united img {
    opacity: 1 !important;
    filter: none !important;
    border-radius: 50%;
    padding: 0px;
  }
  .close-united:hover img {
    filter: brightness(2) saturate(1);
    opacity: 1;
    background-color: #ffffff;
    border-radius: 50%;
    transition: background-color 0.3s ease-in-out;
    padding: 0px;
  }
  .nutrition-info-united {
    display: flex;
    align-items: center;
    gap: 20px;
    background: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  @media (max-width: 991px){
    .nutrition-info-united {
      display: flex;
      align-items: center;
      gap: 6px;
      background: #fff;
      padding-top: 10px;
      padding-bottom: 10px;
      font-size: 16px;
      margin-left: 30px;
    }
  }
  .custom-line-united {
    height: 2px;
    width: 100%;
    background-color: rgba(204, 204, 204, 0.6);
    border: none;
  }
  .tag-united {
    display: inline-block;
    background-color: #f0f0f0;
    color: #333;
    border-radius: 3px;
    font-size: 14px;
    white-space: nowrap;
    padding: 2.5px 5px;
    margin-top: 15px;
    margin-bottom: 15px;
    font-weight: 500;
  }
  .title-text-united {
    font-size: 1.3em;
    font-weight: 600;
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .warming-up-title-united {
    font-size: 1.3em;
    font-weight: 600;
    margin-top: 15px;
  }
  .allergen-descriptions-text-united {
    font-weight: 700;
  }
  .ingredients-descriptions-text-united {
    /*font-weight: 500;*/
  }
  .general-text-united {
    font-weight: 410;
  }
  .warming-up-container-united {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5px;
    margin-top: -20px;
  }
  .warming-up-item-united {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: -7px;
    margin-bottom: 2px;
  }
  .warming-up-item-united img {
    width: 80px;
    height: 80px;
  }
  @media (max-width: 991px){
    .warming-up-item-united img {
      width: 60px;
      height: 60px;
    }
  }
  .nutritional-table {
    width: 100%;
    border-collapse: collapse;
  }
  .nutritional-table th {
    background-color: #f4f4f4;
    font-weight: bold;
    text-align: left;
    padding: 10px;
  }
  .nutritional-table td {
    padding: 10px;
  }
  .nutritional-table tr:nth-child(even) {
    background-color: #f9f9f9;
  }
  .nutritional-table th,
  .nutritional-table td {
    border: none;
  }
  .mobile-only-united {
    display: none;
  }
  @media (max-width: 991px) {
    .desktop-only-united {
      display: none;
    }
    .mobile-only-united {
      display: block;
    }
  }
  .menu-content-item__image-united {
    position: relative;
    width: 100%;
    display: block;
  }
  .menu-content-item__image-united img {
    width: 100%;
    height: auto;
    display: block;
  }
  .menu-content-item__image-united:hover .menu-content-item__overlay-united {
    display: flex;
    transition: all ease-in-out 0.25s;
  }
  .menu-content-item__overlay-united {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, .3);
    justify-content: center;
    align-items: center;
    display: none;
    overflow: hidden;
    transition: all ease-in-out 0.25s;
  }

  /* Fix overlay height for order_multipage pages (choose-meals, choose-add-ons) */
  /* On these pages, meal cards are smaller, so we need to limit overlay height */
  .meal-card-block .menu-content-item__overlay-united {
    max-height: 206px; /* Match the image height on order pages */
  }

  @media (max-width: 991px) {
    .meal-card-block .menu-content-item__overlay-united {
      max-height: 200px; /* Smaller height for mobile */
    }
  }
  .menu-content-item__cta-united {
    display: inline-block;
    border: 2px solid #fff;
    border-radius: 30px;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    font-weight: 900;
    font-size: 14px;
    /* identical to box height, or 214% */
    text-align: center;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #fff;
    padding: 0 20px;
    height: 40px;
    line-height: 40px;
    transition: all ease-in-out 0.25s;
  }
  .menu-content-item__cta-united:hover {
    text-decoration: none;
    background-color: #fff;
    color: #2e662e;
    transition: all ease-in-out 0.25s;
  }

  /* ------------------------------------------------------------------
     Mobile meal/add-on card, reviewed 2026-09-17 (owner request, Tom Tasty as
     reference): smaller title on up to 3 lines, one compact info line, the
     meal-plan as a small chip, card height driven by the content with the
     +/- row pinned to the bottom (was a fixed 342px with ~90px of white).
     Desktop (>= 992px) is untouched. */
  @media (max-width: 991px){
    /* card: equal height per row (the Bootstrap row stretches the columns), content decides the height, +/- row pinned to the bottom */
    .meal-card-block, .addon-card-block { display: flex; }
    .meal-card-block .card, .meal-card-block .card-with-price, .addon-card-block .card { height: auto !important; min-height: 0 !important; flex: 1 1 auto; display: flex; flex-direction: column; }
    .card-body-edite-choose-edit { display: flex; flex-direction: column; flex: 1 1 auto; padding: 8px 8px 8px !important; }
    .card-body-edite-choose-edit .bottom-bb { margin-top: auto; padding-top: 8px; }
    /* title: 14/18, up to 3 lines */
    .meal-card-title-united { font-size: 14px !important; line-height: 18px !important; min-height: 54px !important; font-weight: 600; }
    .meal-card-title-united.clamp-lines-united { max-height: 54px !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
    /* info row: one compact line, muted */
    .meal-info-container { gap: 8px; margin: 6px 0 6px !important; min-height: 18px; }
    .calorie-container { align-items: center; margin: 0 !important; }
    .calorie-icon { width: 15px !important; height: 15px !important; margin-right: 3px !important; }
    .calorie-text { flex-direction: row !important; gap: 3px; font-size: 12px !important; line-height: 16px; color: #5a5a5a; }
    .calorie-text span { margin: 0 !important; }
    .spicy-container { margin: 0 !important; gap: 0; }
    .spicy-icon { width: 40px !important; height: auto; }
    .cooking-pan { width: 22px !important; margin: 0 !important; }
    /* meal-plan line: the chosen plan as a small chip, the others as muted text */
    .meal-card-title-dietary-pref-united { min-height: 20px !important; font-size: 11px !important; line-height: 16px !important; color: #6a6a6a; }
    .backlight-meal-plan { display: inline-block; padding: 1px 6px; border-radius: 4px; font-size: 11px; line-height: 16px; color: #262322; }
    /* quantity row a touch smaller */
    .bottom-bb .btn-united { padding: 2px; }
    .bottom-bb .btn-united img { width: 30px; height: 30px; }
    .bottom-bb .checkout-cart-meal-amount { font-size: 16px; }
  }
