#cart_index table.cart-products tr:first-child td {
  border-top: 0;
}

#cart-main {
  margin-top: 45px;
  margin-bottom: 25px;
}

#cart-main .container {
  width: 100% !important;
  max-width: 1225px;
}

#cart-summary {
  margin: 0;
  width: calc(100% - 494px)
}

#checkout-form {
  width: 479px;
  float: right;
  margin-top: 4px;
}

#cart-summary h1 {
  margin-top: 0;
  font-size: 37px;
  margin-bottom: 8px;
}

.cart-count {
  font-size: 19px
}

.cart-plus span {
  vertical-align: -3px;
  background: url('../images/icons/icon-info.png');
  background-size: contain;
  display: inline-block;
  width: 18px;
  height: 19px;
}

.cart-plus .tooltip {
  opacity: 1
}

.cart-plus .tooltip div:nth-child(1) {
  margin-left: -8px !important;
  top: -3px;
  border: 0;
  width: 15px;
  height: 8px;
  background: url(/assets/images/icon-infotop.png);
  display: block
}

.cart-plus .tooltip div:nth-child(1) img {
  display: none !important
}

.cart-plus .tooltip div:nth-child(2) {
  max-width: 100%;
  width: 325px;
  padding: 15px 20px;
  border-radius: 0;
  font-size: 15px;
  line-height: 21px;
  color: #000;
  opacity: 1;
  box-shadow: 0px 0px 11px 0px rgba(0, 0, 0, 0.3);
  text-align: center;
  background: #fff;
}

.topbanner {
  background-image: url('../images/cart/topbanner-bg.png');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  color: white;
  padding: 1px 0 2px 0;
  margin: 14px 0;
}

.topbanner h2 {
  font-size: 29.5px;
  line-height: 35px;
  margin: 12px 0 5px 0;
}

.topbanner h2 span {
  font-size: 37.5px;
  position: relative;
  width: fit-content;
}

.topbanner h2 span::before {
  content: '';
  position: absolute;
  background-color: #fff;
  top: 17px;
  left: -43px;
  width: 26px;
  height: 2px;
}

.topbanner h2 span::after {
  content: '';
  position: absolute;
  background-color: #fff;
  top: 17px;
  right: -43px;
  width: 26px;
  height: 2px;
}

.cart-products {
  margin-top: 20px;
  margin-bottom: 0;
}

.cart-products h4 {
  font-size: 18px
}

.cart-products .text-right {
  position: relative;
  padding-top: 28px !important;
  padding-right: 12px;
}

.cart-products .text-right strong {
  font-size: 19px
}

.cart-products .text-right .removeitem {
  position: absolute;
  bottom: 21px;
  right: 16px;
  color: #ed1c24;
}

.cart-products .text-right .removeitem span {
  font-size: 15px;
  text-decoration: underline;
}

.cart-products .text-right .removeitem img {
  vertical-align: -3px;
  width: 15px;
  margin-right: 4px;
}

.cart-products tr td {
  padding-top: 21px !important;
  padding-bottom: 36px !important;
}

.table.cart-products > tbody > tr > td,
.table.cart-products > tbody > tr > th,
.table.cart-products > tfoot > tr > td,
.table.cart-products > tfoot > tr > th,
.table.cart-products > thead > tr > td,
.table.cart-products > thead > tr > th {
  border: none;
  border-bottom: 1px solid #898989;
}

.table.cart-products > tbody > tr:last-child > td,
.table.cart-products > tbody > tr:last-child > th {
  border-bottom: none;
}

.item-thumb {
  width: 137px;
  padding-left: 21px !important;
  padding-right: 4px !important;
}

.item-details {
  padding-left: 9px !important;
}

.item-details h4 {
  margin-bottom: 6px;
}

.item-details .details {
  color: #000;
  font-size: 15px;
  line-height: 22px;
}

.deliverybanner {
  background-color: #f4f4f4;
  padding: 6px 0 7px;
  margin-top: 2px;
}

.deliverybanner img {
  margin-right: 10px;
  max-width: 42.5px;
}

.deliverybanner span {
  font-size: 18px
}

.cartbottom {
  color: #000;
  margin: 25px 0;
  display: flex;
  align-items: center;
  line-height: 20px;
}

.cartbottom strong {
  font-size: 18px
}

.cartbottom span {
  font-size: 14.5px;
}

.cartbottom .priceblock {
  padding: 0 2px 0 0;
  display: flex;
  justify-content: end;
}

.cartbottom .priceblock strong {
  display: flex;
}

.cartbottom .priceblock strong {
  line-height: 27px;
  align-self: flex-end;
  font-size: 27px;
  margin: 9px 10px 0 0;
}

.needhelp {
  padding: 40px 0;
  color: white;
  background: #ed1c24 url(/assets/images/bg-bluebanner.png) repeat center;
}

.needhelp .help-bar > div {
  font-size: 28px
}

.help-bar {
  justify-content: center;
  display: flex;
  align-items: center
}

.help-bar ul li {
  padding: 0px 20px;
  font-size: 14px
}

.help-bar ul {
  margin-bottom: 0;
  vertical-align: middle;
}

.help-bar div,
.help-bar ul,
.help-bar ul li {
  display: inline-block;
}

.help-bar ul li img {
  display: block;
  width: 34px;
  margin: 2px auto 5px auto
}

.help-bar ul li a {
  color: white;
}

.cart-sidebar {
  box-shadow: none;
  border: 0;
  padding: 27px 20px 27px 20px
}

.cart-sidebar h3 {
  font-size: 26px;
  line-height: 33px;
}

.checkout-step .cart-sidebar h3 {
  margin-bottom: 10px;
}

.checkout-step img {
  max-width: 152px;
  margin-bottom: 25px;
}

.cart-sidebar input {
  border-radius: 0;
  box-shadow: none
}

.cart-sidebar input,
.cart-sidebar input::placeholder {
  opacity: 1;
  font-size: 15px;
  color: #000
}

.cart-sidebar button[type="submit"],
.js-checkout-mobile {
  margin-top: 15px;
  font-size: 17px;
  height: 53px;
  line-height: 53px;
  border: none;
  width: fit-content;
  padding: 0 56px;
  margin-bottom: 13px;
  color: #000;
}

.cm-in-store button {
  background: transparent;
}

.cart-sidebar .desc {
  margin: 0 auto;
  max-width: 380px;
  font-size: 13px;
}

.cart-sidebar small {
  font-size: 13px;
}

.cart-sidebar h2 {
  font-size: 28px;
  line-height: 37px;
  color: #ec182a
}

.cart-sidebar label {
  font-weight: 400;
  font-size: 15px;
  color: #000
}

.cart-sidebar .tamount .price {
  font-size: 41px;
  color: #ec182a
}

.cart-sidebar .tamount .label {
  color: #333;
  font-size: 16px
}

.cart-sidebar .text-muted {
  margin-bottom: 17px;
}

.cart-sidebar .text-muted small {
  line-height: 14px;
  display: block;
  color: #000;
  font-size: 13.5px;
}

.cart-sidebar .btm strong {
  color: #000;
  font-size: 17px
}

.cart-sidebar .btm a {
  color: #000;
  text-decoration: underline;
  font-size: 15px;
  line-height: 22px;
  display: block;
}

.cart-sidebar .btm p {
  margin: 0;
  padding: 0
}

.cart-sidebar .form-group {
  margin-bottom: 0;
}

.cart-sidebar .form-control {
  height: 48px;
  line-height: 48px;
  margin-bottom: 14px;
  padding: 0 15px;
  font-size: 15px;
}

.checkout-step .cart-sidebar .form-control {
  margin-bottom: 10px;
}


.checkout-step .total {
  font-size: 16px;
  display: flex;
  align-items: end;
  justify-content: center;
  margin-top: 13px;
}

.checkout-step .price {
  font-size: 43.5px;
  margin-left: 13px;
  line-height: 40px;
}

.checkout-step .price sup {
  font-size: 25px;
}

@media only screen and (max-width:991px) {

  #cart-summary,
  #checkout-form {
    width: 100%
  }
}

@media only screen and (max-width:768px) {
  .help-bar {
    text-align: center;
    flex-direction: column
  }

  .needhelp .help-bar > div {
    padding-bottom: 30px
  }

  .needhelp .help-bar ul {
    width: 100%;
    padding: 0
  }

  .needhelp .help-bar ul li {
    padding: 0 10px;
    width: 30%
  }
}

@media only screen and (max-width:480px) {
  .bluebanner br {
    display: none
  }

  .needhelp .help-bar ul li span {
    display: block
  }

  .needhelp .help-bar ul li span.mh {
    display: none
  }

  .needhelp .help-bar > div {
    padding-bottom: 15px
  }

  .needhelp {
    padding: 25px 0
  }

  .cart-sidebar .btn-block-blue {
    font-size: 15px
  }

  .cart-sidebar .btm br {
    display: none
  }

  .cart-page footer {
    background-color: #313131;
  }
}

.same-day-deliver .image img {
  width: 42px;
}

.same-day-deliver .text {
  width: calc(100% - 45px);
}

.same-day-deliver .text strong {
  font-size: 18px
}

.product-get-it-now-button,
.product-details .add-to-cart-button {
  font-size: 19px
}

.product-reserve.out-mobile {
  margin-bottom: 10px
}

.product-details .add-to-wishlist-button img {
  margin-bottom: -4px !important;
  height: 23px !important
}

.product-details .add-to-wishlist-button {
  font-size: 19px !important;
}

.popover {
  opacity: 1
}

.popover > div:nth-child(1) {
  margin-left: -8px !important;
  top: -3px;
  border: 0;
  width: 15px;
  height: 8px;
  background: url('../images/icons/icon-info.png');
  display: block
}

.popover > div:nth-child(1) img {
  display: none !important
}

.popover {
  max-width: 100%;
  width: 325px;
  padding: 0;
  border-radius: 0;
  font-size: 15px;
  line-height: 21px;
  color: #000;
  opacity: 1;
  box-shadow: 0px 0px 11px 0px rgba(0, 0, 0, 0.3);
  text-align: center;
  background: #fff;
}

.popover.bottom > .arrow:after {
  display: none !important
}

.popover.bottom > .arrow {
  top: -8px
}

.popover-content > div:nth-child(1) {
  padding-bottom: 5px;
  display: flex;
  justify-content: space-between
}

.popover-content > div:nth-child(1) strong {
  font-weight: 400;
  font-size: 16px;
}

.popover-content > div:nth-child(1) span a {
  text-decoration: underline;
  font-size: 16px;
}

.popover-content td {
  vertical-align: middle !important
}

.popover-content table {
  margin-bottom: 0 !important
}

.popover-content table tr td:nth-child(2) {
  text-align: left
}

.popover-content table tr td {
  font-size: 15px;
}

.popover-content table tr td strong {
  font-size: 15px;
}

#wishlist-updated-modal h1 {
  font-size: 23px !important
}

#wishlist-updated-modal .modal-dialog {
  width: 100% !important;
  max-width: 357px !important;
  border-radius: 0 !important
}

#wishlist-updated-modal .modal-content {
  box-shadow: none !important;
  border-radius: 0 !important
}

.wlistpage h1 {
  padding-bottom: 15px;
  font-size: 35px
}

.wlistpage .back {
  font-size: 17px;
  color: #333
}

.wlistpage .pname {
  margin-top: 15px;
  margin-bottom: 0
}

.wlistpage .details .inner {
  line-height: 19px;
  font-size: 15px;
}

.wlistpage .buttons button,
.wlistpage .buttons a {
  display: inline-block;
  padding: 0 5px;
  width: 150px;
  line-height: 42px;
  height: 42px;
  font-size: 17px;
  text-transform: uppercase
}

.wlistpage .buttons > div:nth-child(1) {
  margin-right: 20px
}

.wlistpage .buttons {
  display: flex
}

.wlistpage .remove-item-button {
  height: 27px;
  border-radius: 13px;
  width: 27px
}

.wlistpage .remove-item-button img {
  height: 14px;
  vertical-align: top;
  margin-left: -1px
}

.mylists .well {
  padding-top: 4px;
  box-shadow: none;
  border-radius: 15px
}

.mylists .well .col-xs-6 {
  border-radius: 0;
  padding: 5px
}

.mylists .well .col-xs-6 .thumbnail {
  height: 135px;
  border: 0;
  padding: 0;
  border-radius: 0
}

.mylists .well .row .col-xs-6:first-child .thumbnail {
  overflow: hidden;
  border-top-left-radius: 15px
}

.mylists .well .row .col-xs-6:last-child .thumbnail {
  overflow: hidden;
  border-top-right-radius: 15px
}

.mylists .well .col-xs-8 strong {
  font-size: 17px
}

.mylists .well .row:last-child {
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.mylists .well .row:last-child .col-xs-4 button {
  padding: 0;
  font-size: 15px;
  text-decoration: underline;
}

.mylists .well .row:last-child .col-xs-4 form {
  text-align: right
}

.mylists a.createlist {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 17px;
  padding: 0px 13px;
  display: inline-block;
  height: 50px;
  line-height: 50px
}

.mylists {
  position: relative
}

#create-wishlist-modal input {
  box-shadow: none;
  border-radius: 0
}

#create-wishlist-modal .modal-body {
  padding-top: 0
}

#create-wishlist-modal .modal-header {
  padding-bottom: 5px
}

#account_dashboard .well {
  border-radius: 13px;
  box-shadow: none;
  border: 0px
}

#account_dashboard h1.title {
  margin-top: 0;
  color: #000;
  font-size: 38px !important
}

#account_dashboard .btn {
  padding: 0 22px;
  min-width: 130px;
  height: 40px;
  line-height: 40px;
  font-size: 15px
}

#account_dashboard #agreements .well {
  border: 1px solid #c8c8c8
}

#account_dashboard #agreements .details {
  font-size: 16px;
}

.nextpayment .l1 {
  font-size: 20px;
}

.nextpayment .l2 {
  font-size: 20px;
}

.nextpayment .l3 {
  padding-top: 10px;
  font-size: 20px
}

#account_dashboard .nextpayment .btn {
  margin-top: 15px;
  padding: 0 20px;
  height: 50px;
  line-height: 50px
}

#agreements .well.agreement-details {
  padding-bottom: 35px;
  margin-bottom: 40px !important
}

#agreements .progresstitle span {
  padding-bottom: 4px;
  font-size: 16px;
}

#agreements .progress {
  border-radius: 8px;
  box-shadow: none;
  background-color: #ebebeb
}

#account_dashboard .pti {
  margin-top: 40px
}

.progress {
  height: 13px
}

.progress-bar {
  border-radius: 5px
}

.welcome-block h2 {
  margin-top: 0;
  font-size: 38px;
}

#account_dashboard main .inner {
  display: flex;
  justify-content: space-between
}

#account_dashboard main .left {
  width: 410px
}

#account_dashboard main .right {
  width: calc(100% - 410px)
}

#account_dashboard main .inner .name strong {
  font-size: 24px
}

#account_dashboard main .inner .customerid {
  font-size: 24px;
  color: #ec182a;
}

#account_dashboard .welcome-block .btn {
  margin-left: auto;
  max-width: 342px;
  margin-right: auto
}

#account_dashboard .welcome-block .button-white img {
  height: 27px
}

#account_dashboard .button-white.button-external {
  background-size: 23px
}

#account_dashboard .well.welcome-block {
  padding-left: 35px;
  padding-right: 35px
}

.memberblock {
  margin-top: 38px;
  padding: 30px 35px
}

.memberblock h4 {
  font-size: 24px;
}

.memberblock .labl {
  color: #333;
  font-size: 17px;
}

.memberblock .pointbox {
  background: #00aeee;
  color: #fff;
  border-radius: 10px;
  font-size: 55px;
  margin: 8px auto !important;
  width: 209px
}

.memberblock .ltpoints {
  color: #00aeee;
  font-size: 14px;
  height: 40px;
  line-height: 40px;
  margin: 15px auto 25px auto !important;
  width: 209px;
  background: #dceef4;
  border-radius: 20px
}

.memberblock .pointslink {
  font-size: 15px
}

.memberblock small {
  padding: 5px 10px;
  font-size: 13px;
  line-height: 19px;
  display: block;
}

#account_dashboard .btn.contactyour {
  padding: 5px 0;
  height: auto;
  font-size: 17px;
  margin-top: 5px
}

.personal h1 {
  font-size: 38px
}

#account_personal_info #account_dashboard .welcome-block .btn {
  padding-left: 43px
}

.yourlocal .name {
  padding-top: 4px;
  text-transform: uppercase;
  font-size: 17px;
  color: #ec182a;
}

.yourlocal .post {
  font-size: 17px;
  color: #000;
}

.yourlocal .address {
  padding-top: 15px;
  font-size: 17px
}

.yourlocal .phone {
  margin-bottom: 10px;
  font-size: 17px
}

.formfields input {
  height: 46px;
  line-height: 46px;
  background: #fff !important;
  box-shadow: none
}

.formfields label {
  font-weight: 400;
  font-size: 16px;
}

.checkout-step {
  display: none;
}

@media only screen and (max-width:1040px) {
  #account_dashboard main .left {
    width: 300px
  }

  #account_dashboard main .right {
    width: calc(100% - 300px)
  }

  #account_dashboard .welcome-block .btn {
    font-size: 10px
  }
}

@media screen and (max-width: 992px) {
  .item-thumb {
    padding-left: 0 !important;
  }
}

@media only screen and (max-width:982px) {
  #account_dashboard main .inner {
    flex-direction: column
  }

  #account_dashboard main .left {
    width: 100%
  }

  #account_dashboard main .right {
    width: 100%
  }

  #account_dashboard .welcome-block .btn {
    font-size: 15px
  }
}

@media only screen and (max-width:480px) {
  .wlistpage h1 {
    font-size: 28px
  }

  .wlistpage .back {
    display: inline-block;
    margin-top: 20px
  }

  .wlistpage .product-price span:last-child:after {
    padding-left: 8px;
    font-size: 17px;
    position: static;
    displaY: inline
  }

  .wlistpage .product-price span {
    font-size: 17px;
    vertical-align: bottom
  }

  .wlistpage .product-price {
    margin: 15px 0;
    font-size: 17px
  }

  .wlistpage hr {
    border-color: #898989
  }

  .mylists a.createlist {
    position: static;
    margin-top: 15px;
    margin-bottom: 25px
  }

  #account_dashboard .well.welcome-block {
    padding-left: 20px;
    padding-right: 20px
  }

  .welcome-block h2 {
    font-size: 31px
  }

  #account_dashboard main .inner .name strong {
    font-size: 20px
  }

  #account_dashboard main .inner .customerid {
    font-size: 20px
  }

  #account_dashboard h1.title {
    font-size: 28px !important
  }
}

@media only screen and (max-width:360px) {

  .wlistpage .buttons button,
  .wlistpage .buttons a {
    font-size: 15px;
    width: 125px
  }
}

.checkout-main {
  display: none;
}

.checkout-main .finish {
  line-height: 1;
}

.checkout-main .cm-top {
  font-size: 26px;
  line-height: 31px;
}

.checkout-main img {
  mix-blend-mode: multiply;
  max-width: 172px;
  margin-top: 13px;
  margin-bottom: 23px;
}

.checkout-main label {
  margin-bottom: 3px;
}

.checkout-main input {
  border-radius: 0;
  border-color: #bbbbbb;
  height: 47px !important;
  line-height: 47px;
}

.checkout-main input,
.checkout-main input::placeholder {
  font-family: 'Soleil-Regular' !important;
  font-size: 14px;
}

.checkout-main input::placeholder {
  color: #666666;
}

.checkout-main .checkout-step .form-field {
  margin-bottom: 11px;
}

.checkout-main .expiration {
  gap: 15px;
}

.checkout-main .amount {
  font-size: 17px;
}

.checkout-main .price-main {
  font-size: 44px;
}

.checkout-main .amount p {
  margin-bottom: 7px;
  margin-right: 6px;
}

.checkout-main .price-main sup {
  font-size: 52%;
}

.checkout-main .complete {
  padding-top: 0;
}

.checkout-main .complete p {
  font-size: 13px;
  line-height: 19px;
  margin-top: 15px;
}

.checkout-main .form-action [type="submit"].button {
  padding: 10px 51px 9px;
  font-size: 17px;
}

.cm-in-store {
  margin-top: 13px;
  padding-top: 0px;
  border-top: 1px solid var(--dark-gray);
}

.cm-in-store p:first-child {
  font-size: 18px;
  line-height: 23px;
  color: #262626;
  margin-bottom: 0;
}

.cart-sidebar .form-row.flex {
  gap: 15px;
}

.cm-in-store p:last-child {
  font-size: 14px;
  line-height: 19px;
  color: #262626;
}

@media screen and (max-width: 567px) {
  #cart-main {
    margin-top: 0;
    margin-bottom: 14px;
  }

  #cart-summary h1 {
    font-size: 28px;
    margin-top: 32px;
    margin-bottom: 0;
  }

  .cart-count {
    font-size: 17px;
  }

  .topbanner {
    margin: 17px 0 37px 0;
    width: calc(100% + 30px);
    margin-left: -15px;
  }

  .estimated strong {
    font-size: 17px;
  }

  .estimated span {
    font-size: 14px;
    line-height: 21px;
  }

  .est-price {
    font-size: 27px;
  }

  .deliverybanner {
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-top: 24px;
    padding: 6px;
  }

  .mobile-title {
    font-size: 15px;
    color: #000;
  }

  .mobile-price {
    font-size: 17px;
    color: #222;
    margin-top: 10px;
  }

  #checkout-form {
    display: none;
  }

  .close {
    font-size: 28px;
  }

  .details {
    padding: 0;
  }

  .deliverybanner span {
    font-size: 15px;
  }

  .deliverybanner img {
    max-width: 40px;
    height: auto;
  }

  .on-mobile .product-image {
    padding: 0;
    width: 46%;
  }

  .on-mobile .product-item {
    position: relative;
    border-bottom: 1px solid #ddd;
    padding: 15px 0 27px;
    margin: 0 0 22px 0;
  }

  .on-mobile .product-item:first-of-type {
    margin-top: 23px;
  }

  .on-mobile .product-details {
    width: 54%;
  }

  .on-mobile .product-details strong {
    font-size: 15px;
    line-height: 22.5px;
  }

  .on-mobile .product-details p {
    font-size: 14px;
    line-height: 21px;
  }

  .on-mobile .product-details .perweek {
    font-size: 17px;
    margin-top: 13px;
    width: 100%;
    text-align: right;
    display: block;
    position: relative;
    left: 12px;
  }

  .js-checkout-mobile {
    width: 100%;
    max-width: calc(100% - 30px);
    margin: 31px auto 34px auto;
    display: block;
  }

  .cart-sidebar {
    background: transparent;
  }

  .cart-sidebar h3 {
    font-size: 28px;
    line-height: 32px;
  }

  .checkout-step img {
    max-width: unset;
    margin-bottom: 16px;
    margin-top: 21px;
  }

  .cart-sidebar label {
    font-size: 14px;
    font-weight: 500;
  }

  .cart-sidebar .text-muted {
    margin-bottom: 20px;
  }

  .cart-sidebar {
    box-shadow: none;
    border: 0;
    padding: 27px 0 27px 0;
  }

  .cart-sidebar .form-control {
    height: 44px;
    line-height: 44px;
  }

  .cart-sidebar button[type="submit"] {
    margin-top: 18px;
    height: 50px;
    padding: 0;
    width: 100%;
  }

  .checkout-main .cm-top {
    font-size: 28px;
    line-height: 32px;
  }

  .checkout-main img {
    max-width: unset;
    margin-top: 21px;
    margin-bottom: 18px;
  }

  .checkout-main label {
    font-size: 14px;
    margin-bottom: 0;
  }

  .checkout-main .form-action [type="submit"].button {
    padding: 10px 0 9px;
    margin-top: 23px;
  }

  .checkout-main .price-main {
    font-size: 28px;
  }

  .checkout-main .amount {
    justify-content: space-between;
    margin-top: 8px;
    margin-bottom: 18px;
  }

  .checkout-main .complete p {
    font-size: 12.5px;
    line-height: 18px;
    margin-top: 19px;
  }

  .cm-in-store p:first-child {
    font-size: 16px;
    line-height: 19px;
  }
}