.elementor-2554 .elementor-element.elementor-element-4bfeb35{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-2554 .elementor-element.elementor-element-174af9b .elementor-heading-title{color:#000000;}.elementor-2554 .elementor-element.elementor-element-72f0201{color:#5A5A5A;}.elementor-2554 .elementor-element.elementor-element-a6e6700 > .elementor-widget-container{margin:-34px 0px 0px 0px;}#elementor-popup-modal-2554 .dialog-widget-content{animation-duration:0.6s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-2554{background-color:rgba(0,0,0,.8);justify-content:flex-end;align-items:flex-end;pointer-events:all;}#elementor-popup-modal-2554 .dialog-message{width:374px;height:auto;}#elementor-popup-modal-2554 .dialog-close-button{display:flex;}@media(min-width:768px){.elementor-2554 .elementor-element.elementor-element-4bfeb35{--content-width:1600px;}}/* Start custom CSS for ws-form, class: .elementor-element-a6e6700 *//* Beautiful WS Form Purchase Section */
.one-time-purchase {
  max-width: 460px !important;
  margin: 40px auto !important;
  padding: 30px !important;
  border-radius: 26px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  border: 1px solid rgba(226, 232, 240, 0.9) !important;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.12) !important;
  font-family: Inter, Arial, sans-serif !important;
  color: #0f172a !important;
  box-sizing: border-box !important;
}

/* WS Form grid spacing */
.one-time-purchase .wsf-grid,
.one-time-purchase .wsf-fields {
  display: grid !important;
  gap: 18px !important;
}

/* Field wrapper */
.one-time-purchase .wsf-field-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Labels */
.one-time-purchase .wsf-label {
  display: block !important;
  margin: 0 0 8px 2px !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important;
}

/* Normal input fields */
.one-time-purchase input.wsf-field,
.one-time-purchase textarea.wsf-field,
.one-time-purchase select.wsf-field {
  width: 100% !important;
  height: 52px !important;
  padding: 0 16px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 15px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 52px !important;
  outline: none !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
  box-sizing: border-box !important;
}

/* Placeholder */
.one-time-purchase input.wsf-field::placeholder,
.one-time-purchase textarea.wsf-field::placeholder {
  color: #94a3b8 !important;
  opacity: 1 !important;
}

/* Focus state */
.one-time-purchase input.wsf-field:focus,
.one-time-purchase textarea.wsf-field:focus,
.one-time-purchase select.wsf-field:focus {
  border-color: #111827 !important;
  box-shadow: 0 0 0 4px rgba(17, 24, 39, 0.08) !important;
  transform: translateY(-1px) !important;
}

/* Coupon row */
.one-time-purchase [data-type="text"] + .wsf-field-wrapper,
.one-time-purchase .wsf-field-wrapper[data-type="button"] {
  align-self: end !important;
}

/* Coupon apply button */
.one-time-purchase .wsf-field-wrapper[data-type="button"] button,
.one-time-purchase button.wsf-button:not([type="submit"]) {
  width: 100% !important;
  height: 52px !important;
  padding: 0 18px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 15px !important;
  background: #f8fafc !important;
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transition: all 0.2s ease !important;
}

.one-time-purchase .wsf-field-wrapper[data-type="button"] button:hover,
.one-time-purchase button.wsf-button:not([type="submit"]):hover {
  background: #eef2f7 !important;
  border-color: #cbd5e1 !important;
  transform: translateY(-1px) !important;
}

/* Stripe card container */
.one-time-purchase [data-wsf-stripe-cc],
.one-time-purchase .StripeElement {
  width: 100% !important;
  min-height: 54px !important;
  padding: 16px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 15px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
}

/* Stripe focus */
.one-time-purchase .StripeElement--focus {
  border-color: #111827 !important;
  box-shadow: 0 0 0 4px rgba(17, 24, 39, 0.08) !important;
  transform: translateY(-1px) !important;
}

/* Stripe invalid */
.one-time-purchase .StripeElement--invalid {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.10) !important;
}

/* Submit button */
.one-time-purchase button[type="submit"],
.one-time-purchase .wsf-button-primary,
.one-time-purchase .kala {
  width: 100% !important;
  height: 56px !important;
  margin-top: 4px !important;
  padding: 0 20px !important;
  border: none !important;
  border-radius: 17px !important;
  background: linear-gradient(135deg, #111827 0%, #020617 100%) !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  cursor: pointer !important;
  box-shadow: 0 14px 30px rgba(2, 6, 23, 0.22) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease !important;
}

.one-time-purchase button[type="submit"]:hover,
.one-time-purchase .wsf-button-primary:hover,
.one-time-purchase .kala:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 38px rgba(2, 6, 23, 0.28) !important;
  opacity: 0.96 !important;
}

.one-time-purchase button[type="submit"]:active,
.one-time-purchase .wsf-button-primary:active,
.one-time-purchase .kala:active {
  transform: translateY(0) !important;
  box-shadow: 0 10px 20px rgba(2, 6, 23, 0.22) !important;
}

/* Error messages */
.one-time-purchase .wsf-invalid-feedback {
  margin-top: 7px !important;
  color: #dc2626 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

/* Invalid input */
.one-time-purchase .wsf-invalid,
.one-time-purchase input:invalid {
  border-color: #ef4444 !important;
}

/* Hide extra empty spacing */
.one-time-purchase .wsf-bottom {
  margin-bottom: 0 !important;
}

/* Make all tiles full width by default */
.one-time-purchase .wsf-tile {
  box-sizing: border-box !important;
}

/* Responsive */
@media (max-width: 600px) {
  .one-time-purchase {
    max-width: calc(100% - 28px) !important;
    margin: 24px auto !important;
    padding: 22px !important;
    border-radius: 22px !important;
  }

  .one-time-purchase .wsf-grid,
  .one-time-purchase .wsf-fields {
    gap: 15px !important;
  }

  .one-time-purchase input.wsf-field,
  .one-time-purchase textarea.wsf-field,
  .one-time-purchase select.wsf-field,
  .one-time-purchase button.wsf-button,
  .one-time-purchase button[type="submit"] {
    height: 50px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
  }

  .one-time-purchase [data-wsf-stripe-cc],
  .one-time-purchase .StripeElement {
    min-height: 52px !important;
    border-radius: 14px !important;
  }
}/* End custom CSS */