/* Preserve complete translated action labels in the existing product layout. */
.featured-card .featured-dose-picker,
.product-card .featured-dose-picker {
  flex-wrap: wrap;
}
.featured-card .featured-dose-btn,
.product-card .featured-dose-btn {
  min-width: max-content;
  flex: 1 0 auto;
}
.product-buy-card .vd-card .vd-card-tag {
  box-sizing: border-box;
  max-width: 100%;
  padding-inline: 3px;
  font-size: 0.6875rem;
  letter-spacing: 0.015em;
  white-space: normal;
  overflow-wrap: anywhere;
}
.gift-dialog-option-copy {
  box-sizing: border-box;
  min-width: 0;
}
.gift-dialog-option-kicker {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
/* The order label and amount must fit the narrow tablet checkout sidebar too. */
body.checkout-fokus .checkout-submit-btn {
  flex-wrap: wrap;
  row-gap: 4px;
}
.checkout-submit-btn #submitBtnText {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
@media (max-width: 1000px) {
  .checkout-submit-btn .submit-btn-amount {
    order: 1;
    flex-basis: 100%;
    text-align: center;
  }
  .checkout-submit-btn .submit-btn-amount:not(:empty)::before {
    content: none;
  }
}
@media (max-width: 720px) {
  .announcement-promo .promo-default,
  .announcement-promo .promo-done {
    max-width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    white-space: normal;
  }
}
@media (max-width: 420px) {
  .gift-dialog-options--format {
    grid-template-columns: minmax(0, 1fr);
  }
  .gift-dialog-options--format .gift-dialog-format-card {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
  }
  .gift-dialog-options--format .gift-dialog-option-media {
    height: 100%;
    min-height: 110px;
  }
  .gift-dialog-options--format .gift-dialog-option-copy {
    min-height: 0;
    padding: 12px;
  }
}

.gift-dialog-options--products .gift-dialog-option-copy strong,
.gift-dialog-options--products .gift-dialog-option-copy b {
  box-sizing: border-box;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
@media (max-width: 640px) {
  .gift-dialog-options--products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 420px) {
  .gift-dialog-options--products {
    grid-template-columns: minmax(0, 1fr);
  }
  .gift-dialog-options--products .gift-dialog-product-card {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
  }
  .gift-dialog-options--products .gift-dialog-option-media {
    height: 100%;
    min-height: 110px;
  }
  .gift-dialog-options--products .gift-dialog-option-copy {
    min-height: 0;
    padding: 12px;
  }
  .gift-dialog-options--products .gift-dialog-option-check,
  .gift-dialog-options--format .gift-dialog-option-check {
    left: 58px;
    right: auto;
  }
}

@media (max-width: 420px) {
  .product-master-card--relaunch .product-buy-card .vd-card-price {
    font-size: 0.8125rem;
    letter-spacing: 0;
  }
}

@media (max-width: 420px) {
 .product-master-card--relaunch .product-buy-card .vd-card-orig {font-size:0.8125rem;letter-spacing:0;}
}

@media(max-width:420px){
.product-master-card--relaunch .product-buy-card .vd-card-unit{display:block;max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;}
}

.product-master-card--relaunch .product-buy-card .vd-card-unit{display:block;max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;}
.product-master-card--relaunch .product-buy-card .vd-card-saveline{display:flex;flex-wrap:wrap;justify-content:center;max-width:100%;min-width:0;}

/* Standard paragraph wrapping avoids a reproducible WebKit text-wrap:pretty crash. */
body p { text-wrap: wrap; }

/* Category labels stay readable at narrow widths in all supported languages. */
body .category-pill {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
body .category-pill > span:not(.category-pill-count) {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

/* The Swedish checkout gift format is a complete label at 320 px. */
html[lang="sv"] main .checkout-page button.gift-format-option {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
