/* ================================
   EDMO CONTACT MODAL - COMPLETE CSS
   ================================ */
* {
  box-sizing: border-box;
}

/* ================================
   CTA BUTTON - ATTRACTIVE STYLE
================================ */
.edmo-cta-button,
button.edmo-cta-button,
a.edmo-cta-button,
.talk-to-agent-btn,
[class*="talk-to-agent"],
[class*="cta-button"],
.edmo-trigger-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  background: linear-gradient(180deg, #AA49DB 0%, #5B2775 100%) !important;
  color: #ffffff !important;
  border: none !important;
  padding: 16px 32px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: "Sora", sans-serif !important;
  border-radius: 50px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 15px rgba(170, 73, 219, 0.4) !important;
  text-decoration: none !important;
  letter-spacing: -0.01em !important;
}
.edmo-cta-button2{
	background: white!important;
    color: black!important;
    margin-top: -1px!important;
    font-size: 15px!important;
	font-weight: 400 !important;
	padding: 13.5px!important;
	border-radius: 12px !important;
  font-family: "Sora", sans-serif !important;
    
}

/* .edmo-cta-button2:hover{
  background: black!important;
  color: #000000 !important;
} */
.edmo-cta-button2:hover,
button.edmo-cta-button2:hover,
a.edmo-cta-button2:hover,
.talk-to-agent-btn2:hover,
[class*="talk-to-agent"]:hover,
[class*="cta-button"]:hover,
.edmo-trigger-button:hover {
/*   transform: translateY(-3px) !important;
  box-shadow: 0 8px 25px rgba(170, 73, 219, 0.5) !important; */
  background: #ffffff!important;
	padding: 13.5px!important;
  color: #000000 !important;
}



.edmo-cta-button:hover,
button.edmo-cta-button:hover,
a.edmo-cta-button:hover,
.talk-to-agent-btn:hover,
[class*="talk-to-agent"]:hover,
[class*="cta-button"]:hover,
.edmo-trigger-button:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 25px rgba(170, 73, 219, 0.5) !important;
  background: linear-gradient(180deg, #BA59EB 0%, #6B3785 100%) !important;
  color: #ffffff !important;
}

.edmo-cta-button:active,
button.edmo-cta-button:active,
a.edmo-cta-button:active,
.edmo-trigger-button:active {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(170, 73, 219, 0.4) !important;
}

/* Phone icon inside CTA button */
.edmo-cta-button .phone-icon,
.edmo-cta-button svg,
.talk-to-agent-btn svg,
.edmo-trigger-button svg {
  width: 20px !important;
  height: 20px !important;
  stroke: #ffffff !important;
  fill: none !important;
}

/* ================================
   MODAL OVERLAY - REDUCED BLUR
================================ */
.edmo-modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.75);
  z-index: 999999;
  opacity: 0;
  transition: opacity 0.3s ease;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.edmo-modal-overlay.active {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}

/* ================================
   MODAL CONTAINER - INCREASED SIZE
================================ */
.edmo-modal-container {
  background: #000000 !important;
  background-color: #1e1e22 !important;
  border-radius: 16px;
  max-width: 1400px;
  width: 95%;
  min-height: 500px;
  max-height: 95vh;
  overflow-y: auto;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  transform: scale(0.9);
  transition: transform 0.3s ease;
  margin: 0 auto;
  position: relative;
}

.edmo-modal-overlay.active .edmo-modal-container {
  transform: scale(1);
}

/* ================================
   MODAL HEADER - TITLE LEFT, X RIGHT
================================ */
.edmo-modal-header {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 28px 60px !important;
  border-bottom: 1px solid #3a3a3e !important;
  background: transparent !important;
}

.edmo-modal-title,
.edmo-modal-header h2,
.edmo-modal-header h3,
.edmo-modal-header .modal-title,
.edmo-modal-header span {
  color: #ffffff !important;
  font-size: 38px !important;
/*   font-family: "Sora", sans-serif !important; */
  font-weight: 400 !important;
  margin: 0 !important;
  padding: 0 !important;
  letter-spacing: -0.01em !important;
  order: 1 !important;
  flex: 1 !important;
}

/* Close button - RIGHT SIDE */
.edmo-close-button,
.edmo-modal-header button,
.edmo-modal-header .close-button,
.edmo-modal-container .close-btn,
.edmo-modal-header [class*="close"] {
  background: transparent !important;
  border: none !important;
  color: #999999 !important;
  cursor: pointer !important;
  padding: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
  font-size: 28px !important;
  line-height: 1 !important;
  order: 2 !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
}

.edmo-close-button:hover,
.edmo-modal-header button:hover,
.edmo-modal-header [class*="close"]:hover {
  background: #3a3a3e !important;
  color: #ffffff !important;
}

/* ================================
   MODAL CONTENT - INCREASED PADDING
================================ */
.edmo-modal-content {
  padding: 70px 100px;
  background: #1e1e22 !important;
  background-color: #1e1e22 !important;
}

.edmo-modal-content .forminator-ui,
.edmo-modal-content .forminator-custom-form,
.edmo-modal-content form {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* ================================
   FORM ROW - INLINE LAYOUT
================================ */
.edmo-modal-content .forminator-row,
.edmo-modal-content .forminator-field,
.edmo-form-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: baseline !important;
  gap: 30px !important;
  margin-bottom: 55px !important;
  background: transparent !important;
}

/* ================================
   LABELS - LARGE WHITE TEXT
================================ */
.edmo-modal-content label,
.edmo-modal-content .forminator-label,
.edmo-form-row label {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #ffffff !important;
  font-size: 38px !important;
  font-weight: 400 !important;
  font-family: "Sora", sans-serif !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  flex-shrink: 0 !important;
  white-space: nowrap !important;
  letter-spacing: -0.02em !important;
  position: relative !important;
  height: auto !important;
  width: auto !important;
  overflow: visible !important;
  clip: auto !important;
}

/* Hide required asterisks */
.edmo-modal-content label .forminator-required,
.edmo-modal-content label span.required {
  display: none !important;
}

/* ================================
   INPUT FIELDS - UNDERLINE STYLE
================================ */
.edmo-modal-content input[type="text"],
.edmo-modal-content input[type="email"],
.edmo-modal-content input[type="tel"],
.edmo-modal-content input[type="number"],
.edmo-form-row input[type="text"],
.edmo-form-row input[type="email"],
.edmo-form-row input[type="tel"] {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: 2px solid #4a6fa5 !important;
  border-radius: 0 !important;
  color: #ffffff !important;
  font-size: 20px !important;
  font-family: "Sora", sans-serif !important;
  padding: 10px 0 14px 0 !important;
  flex: 1 !important;
  min-width: 320px !important;
  max-width: 100% !important;
  transition: border-color 0.3s ease !important;
  outline: none !important;
  box-shadow: none !important;
}

/* ================================
   PHONE INPUT WITH COUNTRY CODE - FIXED WIDTH
================================ */
.phone-input-wrapper {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 15px !important;
  flex: 1 !important;
  min-width: 450px !important;
}

.country-code-select {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-bottom: 2px solid #4a6fa5 !important;
  border-radius: 0 !important;
  color: #ffffff !important;
  font-size: 20px !important;
  font-family: "Sora", sans-serif !important;
  padding: 10px 32px 14px 0 !important;
  min-width: 120px !important;
  width: 120px !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
  outline: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%23ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>') !important;
  background-repeat: no-repeat !important;
  background-position: right 8px center !important;
}

.country-code-select:focus {
  border-bottom-color: #7c9fd4 !important;
  outline: none !important;
}

/* Dropdown options */
.country-code-select option {
  background-color: #1e1e22 !important;
  color: #ffffff !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

/* Phone number input - WIDER for full placeholder */
.phone-input-wrapper input[type="tel"] {
  flex: 1 !important;
  min-width: 280px !important;
  width: 100% !important;
}

/* ================================
   TEXTAREA
================================ */
.edmo-modal-content textarea {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid #4a6fa5 !important;
  border-radius: 0 !important;
  color: #ffffff !important;
  font-size: 20px !important;
  font-family: "Sora", sans-serif !important;
  padding: 12px 0 !important;
  width: 100% !important;
  transition: border-color 0.3s ease !important;
  outline: none !important;
  min-height: 80px !important;
  resize: vertical !important;
}

/* Textarea container - stack vertically */
.edmo-modal-content .forminator-field:has(textarea) {
  flex-direction: column !important;
  align-items: flex-start !important;
}

.edmo-modal-content .forminator-field:has(textarea) label {
  min-width: auto !important;
  margin-bottom: 12px !important;
}

/* ================================
   PLACEHOLDER - FULL VISIBILITY
================================ */
.edmo-modal-content input::placeholder,
.edmo-modal-content textarea::placeholder,
.edmo-form-row input::placeholder {
  color: #6b7280 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  opacity: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

/* ================================
   FOCUS STATE
================================ */
.edmo-modal-content input:focus,
.edmo-modal-content textarea:focus,
.edmo-modal-content select:focus,
.edmo-form-row input:focus {
  border-bottom-color: #7c9fd4 !important;
  outline: none !important;
  box-shadow: none !important;
}

/* ================================
   SUBMIT BUTTON WITH PHONE ICON
================================ */
.edmo-modal-content button[type="submit"],
.edmo-modal-content .forminator-button-submit,
.edmo-form-row button[type="submit"] {
  background: linear-gradient(180deg, #AA49DB 0%, #5B2775 100%) !important;
  color: #ffffff !important;
  border: none !important;
  padding: 28px 100px 28px 55px !important;
  font-size: 30px !important;
  font-weight: 400 !important;
  font-family: "Sora", sans-serif !important;
  border-radius: 60px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  width: 100% !important;
  margin-top: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  box-shadow: 0 4px 20px rgba(170, 73, 219, 0.4) !important;
  position: relative !important;
  text-align: left !important;
}

.edmo-modal-content button[type="submit"]:hover,
.edmo-modal-content .forminator-button-submit:hover,
.edmo-form-row button[type="submit"]:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 30px rgba(170, 73, 219, 0.5) !important;
  background: linear-gradient(180deg, #BA59EB 0%, #6B3785 100%) !important;
}

.edmo-modal-content button[type="submit"]:active,
.edmo-modal-content .forminator-button-submit:active,
.edmo-form-row button[type="submit"]:active {
  transform: translateY(-1px) !important;
}

/* Phone icon in white circle */
.edmo-modal-content button[type="submit"]::after,
.edmo-modal-content .forminator-button-submit::after,
.edmo-form-row button[type="submit"]::after {
  content: "" !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background-color: #ffffff !important;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%235B2775" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>') !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 28px 28px !important;
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  border-radius: 50% !important;
  position: absolute !important;
  right: 20px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  flex-shrink: 0 !important;
}

/* ================================
   ERROR MESSAGES
================================ */
.edmo-modal-content .forminator-error-message {
  color: #ff6b6b !important;
  font-size: 14px !important;
  margin-top: 8px !important;
}

/* ================================
   CHROME AUTOFILL FIX
================================ */
.edmo-modal-content input:-webkit-autofill,
.edmo-modal-content input:-webkit-autofill:hover,
.edmo-modal-content input:-webkit-autofill:focus,
.edmo-modal-content textarea:-webkit-autofill,
.edmo-modal-content textarea:-webkit-autofill:hover,
.edmo-modal-content textarea:-webkit-autofill:focus,
.edmo-form-row input:-webkit-autofill,
.edmo-form-row input:-webkit-autofill:hover,
.edmo-form-row input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #1e1e22 inset !important;
  box-shadow: 0 0 0 1000px #1e1e22 inset !important;
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ffffff !important;
  border-bottom: 2px solid #4a6fa5 !important;
}

/* ================================
   OVERRIDE WHITE BACKGROUNDS
================================ */
.edmo-modal-container *,
.edmo-modal-content * {
  background-color: transparent !important;
}

.edmo-modal-container,
.edmo-modal-content {
  background-color: #1e1e22 !important;
}

/* ================================
   SCROLLBAR STYLING
================================ */
.edmo-modal-container::-webkit-scrollbar {
  width: 8px;
}

.edmo-modal-container::-webkit-scrollbar-track {
  background: #2a2a2e;
}

.edmo-modal-container::-webkit-scrollbar-thumb {
  background: #4a4a4e;
  border-radius: 4px;
}

.edmo-modal-container::-webkit-scrollbar-thumb:hover {
  background: #5a5a5e;
}

/* ================================
   MOBILE RESPONSIVE (768px and below)
================================ */
@media (max-width: 768px) {
  .edmo-modal-container {
    margin: 0 10px;
    max-height: 95vh;
    width: calc(100% - 20px);
  }

  .edmo-modal-header {
    padding: 20px 24px !important;
  }

  .edmo-modal-title,
  .edmo-modal-header h2,
  .edmo-modal-header h3,
  .edmo-modal-header span {
    font-size: 18px !important;
	  text-align: left!important;
  }

  .edmo-modal-content {
    padding: 40px 24px;
  }

  .edmo-modal-content .forminator-row,
  .edmo-modal-content .forminator-field,
  .edmo-form-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin-bottom: 36px !important;
  }

  .edmo-modal-content label,
  .edmo-modal-content .forminator-label,
  .edmo-form-row label {
    font-size: 22px !important;
    white-space: normal !important;
	      text-align: left !important;
  }

  .edmo-modal-content input[type="text"],
  .edmo-modal-content input[type="email"],
  .edmo-modal-content input[type="tel"],
  .edmo-modal-content input[type="number"],
  .edmo-form-row input[type="text"],
  .edmo-form-row input[type="email"],
  .edmo-form-row input[type="tel"] {
    width: 100% !important;
    min-width: auto !important;
    font-size: 16px !important;
  }

  .phone-input-wrapper {
    width: 100% !important;
    min-width: auto !important;
    flex-direction: row !important;
    gap: 10px !important;
  }

  .country-code-select {
    min-width: 100px !important;
    width: 100px !important;
    font-size: 16px !important;
  }

  .phone-input-wrapper input[type="tel"] {
    min-width: 150px !important;
    flex: 1 !important;
  }

  .edmo-modal-content button[type="submit"],
  .edmo-modal-content .forminator-button-submit,
  .edmo-form-row button[type="submit"] {
    font-size: 20px !important;
    padding: 18px 80px 18px 28px !important;
  }

  .edmo-modal-content button[type="submit"]::after,
  .edmo-modal-content .forminator-button-submit::after,
  .edmo-form-row button[type="submit"]::after {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    background-size: 20px 20px !important;
    right: 12px !important;
  }

  /* CTA button mobile */
  .edmo-cta-button,
  button.edmo-cta-button,
  a.edmo-cta-button,
  .talk-to-agent-btn,
  .edmo-trigger-button {
    padding: 14px 28px !important;
    font-size: 15px !important;
  }
}

/* ================================
   SMALL MOBILE (480px and below)
================================ */
@media (max-width: 480px) {

  .phone-input-wrapper {
    display: flex;
    flex-direction: row !important;   /* keep in one line */
    align-items: center;
    gap: 8px;
    width: 100%;
    flex-wrap: nowrap;                /* prevent wrapping */
  }

  .country-code-select {
    width: 35%;
    min-width: 90px;
    flex-shrink: 0;                   /* don't shrink */
  }

  .phone-input-wrapper input[type="tel"] {
    width: 65%;
    flex-grow: 1;
  }
}


  .edmo-modal-content button[type="submit"],
  .edmo-modal-content .forminator-button-submit,
  .edmo-form-row button[type="submit"] {
    font-size: 18px !important;
    padding: 16px 70px 16px 24px !important;
  }

  .edmo-modal-content button[type="submit"]::after,
  .edmo-modal-content .forminator-button-submit::after,
  .edmo-form-row button[type="submit"]::after {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    background-size: 18px 18px !important;
    right: 10px !important;
  }
}