.StripeElement,
.stripe-style-input {
  
  height: 40px;
  padding: 10px 12px;
  border-radius: 0px;
  
  -webkit-transition: box-shadow 150ms ease;
  transition: box-shadow 150ms ease;
}

.StripeElement--focus,
.stripe-style-input:focus,
.stripe-style-input:active {
  box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important;
}

.stripe-style-input::placeholder {
    color: #aab7c4;
}

.fieldset-label {
    position: relative;
    right: .5rem;
}

#payment-form .form-control,
#card-element {
    color: #000;
    border: 1px solid #000;
}

#card-options-container {
  width: 100%;
  max-width: 100%;
  min-height: 490px; 
}

.payment-window{
  overflow: visible;
  display: block;
  
}

.payment-wrapper{
  min-height: 380px; 
  border-radius: 10px;
 
}



.submit-button {
  margin-top: 100px;
  position: relative;
  z-index: 1;
  margin-top: 1.5rem;
}

.StripeElement {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
/* -------------------------------------------------Checkout Form-styling */
.checkout-form-styling input,
.checkout-form-styling select,
.checkout-form-styling textarea {
    border-radius: 10px;
    min-height: 48px;
    padding: 12px 15px;
    border: 1px solid #ced4da;
    background: #fff;
    font-size: 1rem;
}

.checkout-form-styling input:focus,
.checkout-form-styling select:focus,
.checkout-form-styling textarea:focus {
    border-color: #000;
    box-shadow: none;
}

.checkout-form-styling .form-group {
    margin-bottom: 1rem;
}

.checkout-form-styling label {
    font-weight: 600;
    margin-bottom: .4rem;
}

.checkout-form-styling input, .checkout-form-styling select,  .checkout-form-styling textarea{
  color: gray !important;
  border: var(--primary-color) 1px solid!important;
}








/* -------------------------------------------------Shopping Cart */
#cart-icon{
 width: 50px;
 height: 40px;
 border-radius: 10px;
 list-style: none;
 fill: var(--bg1-color);
}

 
a#cart-btn-keep, a#cart-btn-secure{
  padding-top: 12px;
}

.cart-icon-total{
  font-size: 16px;
  color: var(--primary-color);
  font-weight: bold;
}

.cart-img {
  width: 110px;
  height: 110px;

}

img.cart-img{
 width: 150px;
 height: 130px;
}

.cart-size-text{
  text-transform: capitalize;
}

.cart-table-head{
  color: var(--primary-color) !important;
  font-size: 18px;
  letter-spacing: 1px;
}

.cart--table-row{
  font-size: 14px;
}

.cart-items-wrapper{ 
  max-height: 490px;
  overflow-y: auto;
  border: 1px solid transparent;
}

.cart-update-remove{
  font-size: 14px;
  margin-right: 30px;
}

.cart-update-remove:hover{
  color: var(--bg1-color) !important;
}

#cart-product-name{
letter-spacing: 2px;
}

.cart-form-control-input{
  width: 17px !important;
  
}

.form-control.cart-form-control-input{
  padding: 0%;
}

button.increment-qty, .decrement-qty {
  background-color: var(--btn-color) !important;
  color: var(--primary-color);
  font-size: 10px !important;
  height: 24px;
  
}



#save-info-label.form-check-label{
  display: flex !important;
  color: var(--primary-color);
  left: 0;
  width: 300px;
  padding-left: 10px;
  padding-top: 5px;
}

input#save-info-checkbox.form-check-input{
  display: flex;
  margin-left: 50px;
  
  min-height: 10px !important;
}


/*------------------------------Media Queries */

/* Stretches payment popup msg to fit on mobile screens so it's not hidden by the parent container */
@media (max-width: 576px) {
  #card-options-container {
      width: 100% !important;
      min-width: 100% !important;
      padding: 0 !important;
      overflow: visible !important;
  }

  .payment-window {
      padding-left: 0 !important;
      padding-right: 0 !important;
      overflow: visible !important;
  }

  fieldset.px-3 {
      padding-left: 0 !important;
      padding-right: 0 !important;
  }

  .bg-white.rounded.p-4 {
      padding-left: 0.5rem !important;
      padding-right: 0.5rem !important;
  }

  
  .payment-window {
      padding-left: 0 !important;
      padding-right: 0 !important;
  }
  
  fieldset.px-3 {
      padding-left: 0.5rem !important;
      padding-right: 0.5rem !important;
  }
}

@media (max-width: 767px) {
  .cart-items-wrapper table,
  .cart-items-wrapper thead,
  .cart-items-wrapper tbody,
  .cart-items-wrapper th,
  .cart-items-wrapper td,
  .cart-items-wrapper tr {
      display: block;
      width: 100%;
  }

  .cart-items-wrapper thead {
      display: none;  /* Hide table headers on mobile */
  }

  .cart-items-wrapper tr {
      margin-bottom: 1rem;
      border-bottom: 2px solid var(--primary-color);
      padding-bottom: 5px;
  }

  .cart-items-wrapper td {
      text-align: left;
      padding: 0.5rem 0;
  }
}

@media (min-width: 768px) {
  #card-options-container {
    min-height: 380px;
  }
}

@media (min-width: 992px) {
  #card-options-container {
    min-height: 430px;
  }
}

@media (min-width: 1200px) {
  #card-options-container {
    min-height: 480px;
  }
}


@media (max-width: 991px) {
  #cart-icon {
      padding-bottom: 10px !important;
}
}