.block-promo_sticky {
  position : sticky;
  top      : 90px;
}

.block-promo {
  font-size  : 0.8em;
  margin-top : 1em;
}

.block-promo .promo-code .alert-danger {
  position   : relative;
  margin-top : 1.25rem;
  background : #ff4c4c;
  color      : #fff;
  display    : none
}

.block-promo .promo-code .alert-danger:after {
  bottom              : 100%;
  left                : 10%;
  border              : solid transparent;
  content             : " ";
  height              : 0;
  width               : 0;
  position            : absolute;
  pointer-events      : none;
  border-bottom-color : #ff4c4c;
  border-width        : 10px;
  margin-left         : -10px
}

.block-promo .promo-code form {
  text-align : center
}

.block-promo .promo-input {
  position      : relative;
  color         : var(--color-black-default);
  border-radius : 2px;
  text-indent   : 0.625rem;
  width         : 100%;
  height        : 3rem;
  border        : 2px solid var(--color-grey-default)
}

.block-promo .promo-input + button {
  position       : absolute;
  right          : 20px;
  font-size      : 16px;
  text-transform : capitalize;
  height         : 3rem;
  border-radius  : 0 2px 2px 0;
}

.block-promo .promo-input::placeholder {
  font-size : 16px;
}

.block-promo .promo-name {
  background    : #f7f7f7;
  border-radius : 3px;
  margin-bottom : 1em;
  padding       : 0.5em;
}

.block-promo .cart-summary-line .label,
.block-promo .promo-name {
  font-weight   : 600;
  color         : var(--color-secondary);
  margin-bottom : 1em;
}

.block-promo .cart-summary-line .label a,
.block-promo .promo-name a {
  display     : inline-block;
  font-weight : 400;
  color       : var(--color-black-default);
}

.block-promo .cart-summary-line .label {
  display : inline-block;
  margin  : 3px 0 0;
}

.block-promo .promo-code-button {
  padding-left  : 1.25rem;
  margin-bottom : 1.25rem;
  display       : inline-block
}

.block-promo.promo-highlighted {
  padding        : 1.25rem;
  padding-bottom : 0;
  margin-bottom  : 0
}
