.basket-items {
  margin-bottom: 1em; }
  .basket-items .basket-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.55556em 0.27778em;
    border-bottom: 1px solid #F1F1F1; }
    @media only screen and (min-width: 768px) {
      .basket-items .basket-item {
        padding: 0.55556em; } }
    @media only screen and (min-width: 1000px) {
      .basket-items .basket-item {
        padding: 0.83333em 1.38889em; } }
    .basket-items .basket-item_has-notes {
      position: relative;
      padding-bottom: 2.77778em; }
      .basket-items .basket-item_has-notes .notes {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        font-size: 0.66667em;
        background-color: #BD6B0A;
        color: #FFFFFF;
        max-height: 40px;
        text-align: center; }
        @media only screen and (min-width: 768px) {
          .basket-items .basket-item_has-notes .notes {
            font-size: 0.77778em;
            line-height: 40px; } }
        .basket-items .basket-item_has-notes .notes a {
          color: #FFFFFF;
          text-decoration: underline; }
    .basket-items .basket-item--product-link {
      flex-shrink: 0;
      flex-basis: 35%;
      margin-right: 0.5em; }
      @media only screen and (min-width: 768px) {
        .basket-items .basket-item--product-link {
          flex-basis: 12%; } }
    .basket-items .basket-item--product-info {
      flex-basis: 35%;
      flex-shrink: 0; }
      .basket-items .basket-item--product-info--name {
        margin: 0 0 0.3em;
        font-weight: 400; }
        @media only screen and (min-width: 1000px) {
          .basket-items .basket-item--product-info--name {
            font-size: 1.2em; } }
      .basket-items .basket-item--product-info .product-price {
        color: #4B4B4B; }
        @media only screen and (min-width: 768px) {
          .basket-items .basket-item--product-info .product-price {
            display: none; } }
    .basket-items .basket-item--qty, .basket-items .basket-item--cost, .basket-items .basket-item--remove {
      flex-basis: 15%;
      text-align: center; }
    .basket-items .basket-item--qty input {
      padding: 0.27778em 0;
      width: 2em;
      border: 1px solid #4B4B4B;
      text-align: center; }
    .basket-items .basket-item--cost {
      color: #4B4B4B; }
      @media only screen and (max-width: 767px) {
        .basket-items .basket-item--cost {
          display: none; } }
      @media only screen and (min-width: 768px) {
        .basket-items .basket-item--cost {
          font-weight: 700; } }
      @media only screen and (min-width: 1000px) {
        .basket-items .basket-item--cost {
          font-size: 1.25em; } }
    .basket-items .basket-item--remove {
      position: relative; }
      @media only screen and (max-width: 767px) {
        .basket-items .basket-item--remove:after {
          content: "x";
          position: absolute;
          top: 0;
          left: 50%;
          transform: translateX(-50%);
          z-index: 1;
          color: #5A5B5E;
          font-size: 1.5em;
          line-height: 1em;
          height: 1em; } }
      .basket-items .basket-item--remove button {
        cursor: pointer;
        border: 0;
        background: none;
        text-transform: lowercase;
        color: #5A5B5E;
        text-decoration: underline;
        padding: 0.27778em 0; }
        @media only screen and (max-width: 767px) {
          .basket-items .basket-item--remove button {
            position: relative;
            z-index: 2;
            width: 2em;
            overflow: hidden;
            text-indent: -10em; } }

.basket-footer {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 3em; }
  @media only screen and (min-width: 768px) {
    .basket-footer {
      flex-wrap: nowrap;
      justify-content: space-between;
      margin-left: -2em; } }
  .basket-footer--promo-code, .basket-footer--checkout {
    flex-basis: 100%; }
    @media only screen and (min-width: 768px) {
      .basket-footer--promo-code, .basket-footer--checkout {
        margin-left: 2em;
        max-width: 360px; } }
  .basket-footer--promo-code {
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .basket-footer--promo-code {
        text-align: left;
        flex-grow: 0;
        flex-basis: auto; } }
    @media only screen and (min-width: 768px) {
      .basket-footer--promo-code .promo-code-form {
        display: flex;
        align-items: stretch; } }
    .basket-footer--promo-code .promo-code-form--input {
      display: inline-block;
      margin: 0 auto 0.5em;
      width: 75%;
      border: 1px solid #5A5B5E; }
      @media only screen and (min-width: 768px) {
        .basket-footer--promo-code .promo-code-form--input {
          width: auto;
          margin: 0 0.25em 0 0; } }
    @media only screen and (min-width: 768px) {
      .basket-footer--promo-code .promo-code-form .btn {
        font-size: 1em; } }
  .basket-footer--checkout {
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .basket-footer--checkout {
        flex-basis: 40%;
        text-align: right; } }
    .basket-footer--checkout .basket-delivery select {
      width: 100%; }
    .basket-footer--checkout .basket-totals .totals {
      max-width: 75%;
      margin: 1em auto; }
      @media only screen and (min-width: 768px) {
        .basket-footer--checkout .basket-totals .totals {
          margin-left: auto;
          margin-right: 0; } }
      .basket-footer--checkout .basket-totals .totals .field {
        display: flex;
        justify-content: space-between;
        align-items: center;
        line-height: 1.5;
        margin-bottom: 0.25em;
        text-transform: lowercase; }
        .basket-footer--checkout .basket-totals .totals .field.total .cost {
          font-weight: 700;
          color: #4B4B4B; }
    .basket-footer--checkout .checkout-buttons .btn {
      display: block;
      margin-bottom: 0.75em; }
