#existing-subscription-container p{
    font-size: large;
}

@keyframes LoadModalBackground {
  from{
    opacity: 0;

  }
  to{
    opacity: 1;
   
  }
}


.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgb(119 119 119 / 50%);
  justify-content: center;
  align-items: center;
  scroll-behavior: unset;
  z-index: 999;
  animation: LoadModalBackground .2s ease forwards 0s;

}


@keyframes LoadModalContent {
  from{
    opacity: 0;
    transform: translateY(-50px);

  }
  to{
    opacity: 1;

    transform: translateY(0px);
   
  }
}

.modal-content {
  background: white;

  width: calc(40vw - 80px);

  margin: 20px auto 0px;
  height: auto;
  max-height: calc(100vh - 40px);
  overflow: auto;
  overscroll-behavior: contain;
  border-radius: 35px;
  box-shadow: 0px 0px 8px 3px rgba(0, 0, 0, 0.3);
  animation: LoadModalContent .2s ease forwards 0s;

}

@media (max-width: 950px) {
   .modal-content {
      width: calc(100vw - 40px);
    } 
}


.main-content{
    position: relative;
    padding: 40px;
}
.modal-content input,
.modal-content button,
.modal-content select {
  width: 100%;
  padding: 10px;
  margin: 5px 0;
}

.modal-close{
    position: absolute;
    text-align: right;
    right: 20px;
    top: 20px;
}

.modal-close i{
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    background: lightgray;
    color: white;
    font-size: x-large;
    border-radius: 50px;
    cursor: pointer;
}

.modal-close i:hover{
    opacity: .8;
}

.product_image{
    display: block;
    width: 40%;
    margin: 0 auto;
}
.product_title{
    font-size: x-large;
    font-weight: bold;
    text-align: center;
    color: #8db26e;
}
@media (max-width: 950px) {

    #product_title{
        font-size: larger;
    }
}

.product_price{
    font-size: medium;
    font-weight: bold;
    text-align: center;
    color: #8db26e;
}

#checkout-container{
    display: none;
}

#checkout-content {

}

#payment-element{
    margin-top: 15px;
    margin-bottom: 15px;
}

#pay-button {
    background-color: #41a641;
    color: white;
    font-family: 'Avenir';
    cursor: pointer;
    border: 1px solid #e6e6e6;
    font-size: larger;
    border-radius: 40px;
    font-weight: bolder;
    margin-top: 30px;
}
#pay-button:hover {
    opacity: .8;
}

    #pay-button.disabled {
        opacity: .5;
        cursor: not-allowed;
        pointer-events: none;
        display: none;
    }

#confirm-errors {
  color: #df1b41;
  font-size: 0.8em;
  margin-top: 5px;
  display: none;
}


#confirm-success {
  color: #41a641;
  font-size: 0.8em;
  margin-top: 5px;
  display: none;
}

