@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
/* --- Health Partnerships Form overrides --- */

html, body, #hp-fw, .hp-fw, .container {
  width: 100% !important;
  max-width: none !important;
  margin: 0;
}

#hp-form { width: 100% !important; }

.grid.two {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
@media (min-width: 768px) {
  .grid.two { grid-template-columns: 1fr 1fr; }
}

.field {
  display: block;
  margin-bottom: 20px;
}
.label-line { display: block; font-weight: 600; margin-bottom: 6px; }
.req { color: #ef4444; margin-left: 4px; }

input, select, textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
}
textarea { min-height: 140px; resize: vertical; }

.btn {
  display: inline-block;
  padding: 12px 20px;
  border-radius: 10px;
  border: 0;
  background: #0ea5e9;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}
.btn:disabled { opacity: .6; cursor: not-allowed; }

.banner {
  margin: 12px 0 0;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid #d1fae5;
  background: #ecfdf5;
  color: #065f46;
}
.banner.error {
  border-color: #fecaca;
  background: #fef2f2;
  color: #7f1d1d;
}
.error-text {
  color: #b91c1c;
  font-size: .9rem;
  margin-top: 6px;
  display: block;
}
.field-error input, .field-error select, .field-error textarea {
  border-color: #ef4444;
}


/* Uniform vertical spacing between form rows */
#hp-form > .grid.two { margin-bottom: 24px; }
#hp-form > label.field { margin-bottom: 24px; }
#hp-form .grid.two .field { margin-bottom: 0; } /* grid gap handles inside */



/* Force column spacing in two‑column grid rows */
#hp-form .grid.two {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;        /* overall gap */
  column-gap: 24px !important; /* explicit column gap */
  row-gap: 24px !important;    /* explicit row gap */
}

@media (min-width: 768px) {
  #hp-form .grid.two {
    grid-template-columns: 1fr 1fr !important;
    column-gap: 24px !important;
    row-gap: 24px !important;
  }
}

/* Ensure fields span their grid cell fully and don't collapse spacing */
#hp-form .grid.two > .field {
  width: 100%;
  margin: 0; /* grid gap handles spacing */
}



/* --- Robust gutter fix for two-column grids --- */
#hp-form, #hp-form *, #hp-form *::before, #hp-form *::after {
  box-sizing: border-box;
}

#hp-form .grid.two {
  align-items: start !important;
}

#hp-form .grid.two > .field {
  min-width: 0; /* allow fields to shrink inside grid and respect column gaps */
}

#hp-form .grid.two > .field input,
#hp-form .grid.two > .field select,
#hp-form .grid.two > .field textarea {
  min-width: 0;
  width: 100%;
  box-sizing: border-box !important;
}



/* Inherit site typography: no custom font set here */
#hp-form,
#hp-form label,
#hp-form .label-line,
#hp-form input,
#hp-form select,
#hp-form textarea,
#hp-form button {
  
  font-size: inherit;
  line-height: inherit;
}

#hp-form input::placeholder,
#hp-form textarea::placeholder {
  
  font-size: inherit;
  line-height: inherit;
}



/* --- Inherit font from parent page --- */
#hp-form, #hp-form input, #hp-form select, #hp-form textarea, #hp-form button, #hp-form .label-line {
  font-family: inherit !important;
}



/* --- Poppins fallback for iframe --- */
#hp-form, #hp-form * {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  font-weight: 400;
}
#hp-form .label-line, #hp-form h1, #hp-form h2, #hp-form h3, #hp-form strong { font-weight: 600; }



/* --- Ensure header/title also use Poppins --- */
#hp-fw, #hp-fw * {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}
#hp-fw h1, #hp-fw h2, #hp-fw h3, #hp-fw strong { font-weight: 600; }
#hp-fw p, #hp-fw label, #hp-fw input, #hp-fw select, #hp-fw textarea, #hp-fw button { font-weight: 400; }

