/* add float effect on page load */
@keyframes float {
  0% {
    transform: translateY(100px);
  }
  50% {
    transform: translateY(-100px);
  }
  100% {
    transform: translateY(0px);
  }
}

body {
  --color-primary: #009579;
  --color-primary-dark: #007f67;
  --color-secondary: #252c6a;
  --color-error: #ec0202;
  --color-success: #4bb544;
  --border-radius: 4px;
  margin: 0;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  background: url(https://prd-image-masters.caravan-stories.com.tw/c/sig=1.wJPHhERFgwnK6pqXcpnOuTgK_Pkdv2HcqqPh335P2iM=/caravan-stories/masters/production-tw/attachments/1b21c7fb435b583e0592c03c04df26a9.jpg);
  background-size: cover;
  animation: float 1s ease-in-out 0s;
  animation-fill-mode: forwards; /* to retain last animation frame after animation ends */
  transform: translateY(20px); /* to offset the background image by 20px */
}
  
  :root {
    --color-primary: #009579;
    --color-primary-dark: #007f67;
    --color-secondary: #252c6a;
    --color-error: #ec0202;
    --color-success: #4bb544;
    --border-radius: 4px;
  }
  
  .container {
    width: 400px;
    max-width: 400px;
    margin: 1rem;
    padding: 2rem;
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.2);
    border-radius: var(--border-radius);
    background: rgba(255, 255, 255, 0.7);
    font: 500 1rem 'Quicksand', sans-serif;
  }
  
  .form--hidden {
    display: none;
  }
  
  .form > *:first-child {
    margin-top: 0;
  }
  
  .form > *:last-child {
    margin-bottom: 0;
  }
  
  .form__title {
    margin-bottom: 2rem;
    text-align: center;
  }
  
  .form__message {
    text-align: center;
    margin-bottom: 1rem;
  }
  
  /* update payment button styles */
  .form__button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 1rem 2rem;
    font-weight: bold;
    font-size: 1.1rem;
    color: #ffffff;
    border: none;
    border-radius: var(--border-radius);
    outline: none;
    cursor: pointer;
    background: var(--color-primary);
  }
  
  .form__button:hover {
    background-color: var(--color-primary-dark);
  }
  
  .form__button:active {
    transform: scale(0.98);
  }
  .form__button__icon {
    width: 24px;
    height: 24px;
    margin-right: 8px;
    background: url(https://www.paypalobjects.com/webstatic/en_US/i/buttons/PP_logo_h_200x51.png) no-repeat center center;
    background-size: contain;
  }
  