.amex-img{
  max-width:50px ! important;
}

.payment-submit{
  display:none ! important;
}

.custom-modal-overlay {
  display: none; /* Hidden by default */
  position: fixed; top: 0; left: 0; width: 100%; height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 9999;
  align-items: center; justify-content: center;
}

.custom-modal-header {
  padding: 15px 20px;
  border-bottom: 1px solid #dee2e6;
  display: flex; justify-content: space-between; align-items: center;
}

.custom-modal-title {
  margin: 0; font-size: 18px; font-weight: bold; font-family: sans-serif;
}

.custom-modal-close {
  background: none; border: none; font-size: 24px; cursor: pointer; color: #666; line-height: 1;
}

.custom-modal-content {
  background-color: #fff;
  width: 100%; max-width: 500px;
  border-radius: 8px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.3);
  display: flex; flex-direction: column;
  margin: 20px;
  max-height: 90vh !important; 
}

.custom-modal-body {
  padding: 10px 20px;
  
  /* The Magic Flexbox Fix */
  min-height: 0 !important; 
  flex: 1 1 auto !important; 
  
  /* Force the scrollbar to belong to THIS div */
  overflow-y: auto !important; 
  overflow-x: hidden !important;
}

#hco-embedded {
  width: 100% !important;
  overflow-y: unset !important; 
  /* Ensure Mastercard doesn't collapse to 0 before the iframe loads */
  min-height: 500px !important; 
}
