#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group{
padding:10px;
}
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.ui-state-highlight{
background-color:#ffffff !important;
border-color:#ffffff !important;
}
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .control-label {
color:#333333;
font-family: Verdana, Geneva, sans-serif;
font-size:14px;
}
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-block,
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-inline,
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-block span.label {
color:#FFFFFF;
}
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .label-important,
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .label-important .badge-important {
background-color:#B94A48;
}
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-block,
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-inline,
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group.error .help-block span.label {
color:#FFFFFF;
}
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .controls input,
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .controls select,
#jsn_form_28.jsn-master .jsn-bootstrap  .jsn-form-content .control-group .controls textarea {
background:#ffffff;
color:#666666;
}
/* ========== Schools Inquiry Form  ========== */

.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #1a1a1a;
  padding: 36px 44px 44px 44px !important;
  box-sizing: border-box;
  margin-top: 30px;
}

.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-label {
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #333;
  margin-bottom: 6px;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-intro,
.jsn-uniform.jsn-master .jsn-form-content .control-group[class*="static"] {
  padding: 6px 10px 8px !important;
  margin-bottom: 4px !important;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-intro .controls,
.jsn-uniform.jsn-master .jsn-form-content .control-group[class*="static"] .controls {
  font-weight: normal;
  text-transform: none;
  font-size: 14px;
  line-height: 1.55;
  color: #444;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-intro .controls p,
.jsn-uniform.jsn-master .jsn-form-content .control-group[class*="static"] .controls p {
  margin: 0 0 0.45em !important;
  padding: 0 !important;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-intro .controls p:last-child,
.jsn-uniform.jsn-master .jsn-form-content .control-group[class*="static"] .controls p:last-child {
  margin-bottom: 0 !important;
}

/* Theme H2 in static intro (e.g. disclaimer) — overrides ~40px line-height */
.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-intro .controls h2,
.jsn-uniform.jsn-master .jsn-form-content .control-group[class*="static"] .controls h2 {
  line-height: 1.45 !important;
  margin: 0 0 0.45em !important;
  padding: 0 !important;
  font-weight: inherit;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-intro .controls h2:last-child,
.jsn-uniform.jsn-master .jsn-form-content .control-group[class*="static"] .controls h2:last-child {
  margin-bottom: 0 !important;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group[class*="static"] .control-label {
  display: none;
}

.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.ui-state-highlight {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 0 solid transparent !important;
  border-color: transparent !important;
  outline: none !important;
}

/* Beat Form Style active row styles (stops focus “jump” from highlight border/padding) */
[id^="jsn_form_"].jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.ui-state-highlight {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 solid transparent !important;
  border-color: transparent !important;
}

.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.schools-interested-in,
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.schools-interested-in.ui-state-highlight {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  margin-top: 20px !important;
}

/* Optional: add Class `schools-section-gap` on any field that should sit lower */
.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-section-gap {
  margin-top: 20px !important;
}

/* Optional: Static content with Class `schools-form-spacer` and body:   or empty */
.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-spacer {
  padding: 0 !important;
  margin: 12px 0 4px !important;
  min-height: 0;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group.schools-form-spacer .control-label {
  display: none;
}

.jsn-uniform.jsn-master .jsn-bootstrap form.form-horizontal .jsn-form-content {
  margin: 0 auto;
  max-width: 100%;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group .controls {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.jsn-uniform.jsn-master .jsn-form-content input[type="text"]:not(#jsn-captcha):not([name="captcha"]):not([name$="[first]"]):not([name$="[last]"]):not([name$="[suffix]"]),
.jsn-uniform.jsn-master .jsn-form-content input[type="email"],
.jsn-uniform.jsn-master .jsn-form-content input[type="tel"],
.jsn-uniform.jsn-master .jsn-form-content input[type="number"],
.jsn-uniform.jsn-master .jsn-form-content input[type="url"],
.jsn-uniform.jsn-master .jsn-form-content textarea,
.jsn-uniform.jsn-master .jsn-form-content select {
  font-family: inherit;
  font-size: 15px;
  line-height: 1.4;
  padding: 10px 12px !important;
  border: 1px solid #c5cad1 !important;
  border-radius: 6px !important;
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  margin-bottom: 0 !important;
  background: #fff;
}

/* Questions textarea — beat form.css `box-sizing: content-box` (100% width + padding = overflow) */
[id^="jsn_form_"].jsn-uniform.jsn-master .jsn-row-container .control-group .controls textarea,
.jsn-uniform.jsn-master .jsn-row-container .control-group .controls textarea,
.jsn-uniform.jsn-master .jsn-form-content .control-group .controls textarea,
.jsn-uniform.jsn-master .jsn-form-content textarea[class*="span"],
.jsn-uniform.jsn-master .jsn-form-content textarea.jsn-input-xxlarge-fluid,
.jsn-uniform.jsn-master .jsn-form-content textarea.jsn-input-xlarge-fluid,
.jsn-uniform.jsn-master .jsn-form-content textarea.jsn-input-fluid {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  display: block !important;
  float: none !important;
  margin-left: 0 !important;
}

.jsn-uniform.jsn-master .jsn-form-content .characters-limit,
.jsn-uniform.jsn-master .jsn-form-content .words-limit {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden;
  box-sizing: border-box;
}

.jsn-uniform.jsn-master .jsn-form-content .characters-limit .pull-right,
.jsn-uniform.jsn-master .jsn-form-content .words-limit .pull-right {
  float: none !important;
  display: block;
  width: 100%;
  text-align: right;
}

/* Number field (NO. STUDENTS): Bootstrap .input-medium = 150px fixed — stretch like Email */
.jsn-uniform.jsn-master .jsn-form-content .controls input.number,
.jsn-uniform.jsn-master .jsn-form-content .controls input.number.input-medium,
.jsn-uniform.jsn-master .jsn-form-content .controls input.number.jsn-input-medium-fluid,
.jsn-uniform.jsn-master .jsn-form-content .controls input.number.jsn-input-small-fluid,
.jsn-uniform.jsn-master .jsn-form-content .controls input.number.jsn-input-mini-fluid {
  width: 100% !important;
  max-width: 100% !important;
}

/* Name: First | Last — flex row; error below (absolute) so column height matches School Name */
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  font-size: 0;
  gap: 0;
  position: relative;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input[name$="[first]"],
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input[name$="[suffix]"] {
  flex: 1 1 0;
  min-width: 0;
  width: auto !important;
  max-width: none !important;
  margin-right: 6px;
  margin-bottom: 0 !important;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 15px;
  line-height: 1.4;
  border: 1px solid #c5cad1 !important;
  border-radius: 6px !important;
  background: #fff;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input[name$="[last]"] {
  flex: 1 1 0;
  min-width: 0;
  width: auto !important;
  max-width: none !important;
  margin-bottom: 0 !important;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 15px;
  line-height: 1.4;
  border: 1px solid #c5cad1 !important;
  border-radius: 6px !important;
  background: #fff;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls .help-block,
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls .help-inline {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  width: 100%;
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.35;
  z-index: 2;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]):has(.help-block),
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]):has(.help-inline) {
  padding-bottom: 28px;
}

/* Medium name inputs — match Email / Phone padding */
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input.jsn-input-medium-fluid,
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input.input-medium,
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input.jsn-input-xlarge-fluid,
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input.jsn-input-fluid {
  padding: 10px 12px !important;
}

.jsn-uniform.jsn-master .jsn-form-content input:focus,
.jsn-uniform.jsn-master .jsn-form-content textarea:focus,
.jsn-uniform.jsn-master .jsn-form-content select:focus {
  border-color: #2d8a4e !important;
  outline: 2px solid rgba(45, 138, 78, 0.35) !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

/* Securimage CAPTCHA — beat Form Style `#jsn_form_XX … .controls input` (border-radius, colours) */
.jsn-uniform.jsn-master .jsn-form-content .control-group:has(#jsn-captcha) .controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  max-width: 100%;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group:has(#jsn-captcha) .row-fluid {
  flex: 0 0 auto;
  width: auto !important;
}

[id^="jsn_form_"].jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group:has(#jsn-captcha) .controls input#jsn-captcha,
[id^="jsn_form_"].jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group:has(#jsn-captcha) .controls input[name="captcha"],
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group:has(#jsn-captcha) .controls input#jsn-captcha {
  display: inline-block !important;
  width: 220px !important;
  max-width: 280px !important;
  min-width: 0;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
  font-family: inherit;
  font-size: 15px !important;
  line-height: 1.4 !important;
  padding: 20px 12px !important;
  border: 1px solid #c5cad1 !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #1a1a1a !important;
  margin-bottom: 0 !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

[id^="jsn_form_"].jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group:has(#jsn-captcha) .controls input#jsn-captcha:focus,
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group:has(#jsn-captcha) .controls input#jsn-captcha:focus {
  border-color: #2d8a4e !important;
  outline: 2px solid rgba(45, 138, 78, 0.35) !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

.jsn-uniform.jsn-master .jsn-form-content .control-group:has(#jsn-captcha) a.jsn-refresh-captcha {
  flex: 0 0 auto;
}

.jsn-uniform.jsn-master .jsn-form-content .jsn-group-field .controls {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.jsn-uniform.jsn-master .jsn-form-content .jsn-group-field .controls input[type="text"] {
  width: auto !important;
  flex: 1 1 calc(50% - 6px);
  min-width: 140px;
  max-width: none;
}

.jsn-uniform.jsn-master .jsn-form-content form.form-horizontal .control-group .row-fluid [class*="span"] input {
  margin-bottom: 0 !important;
}

.jsn-uniform.jsn-master .jsn-form-content .checkboxes label.checkbox,
.jsn-uniform.jsn-master .jsn-form-content .choices label.radio,
.jsn-uniform.jsn-master .jsn-form-content label.checkbox,
.jsn-uniform.jsn-master .jsn-form-content label.radio {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px;
  padding-left: 0 !important;
  margin: 0 16px 8px 0 !important;
  min-height: 28px;
  font-weight: normal !important;
  text-transform: none !important;
  font-size: 15px !important;
  letter-spacing: normal;
  color: #1a1a1a;
  cursor: pointer;
}

.jsn-uniform.jsn-master .jsn-form-content .checkboxes label.checkbox input,
.jsn-uniform.jsn-master .jsn-form-content .choices label.radio input,
.jsn-uniform.jsn-master .jsn-form-content label.checkbox input[type="checkbox"],
.jsn-uniform.jsn-master .jsn-form-content label.radio input[type="radio"] {
  margin: 0 !important;
  margin-left: 0 !important;
  position: static !important;
  float: none !important;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

/* --- v5 layout (columns, subjects, exam board Other) --- */
.jsn-uniform .jsn-row-container.row-fluid,
.jsn-uniform .jsn-uf-row-container.row-fluid {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  margin-left: 0 !important;
}

.jsn-uniform .jsn-row-container.row-fluid > [class*="span"],
.jsn-uniform .jsn-uf-row-container.row-fluid > [class*="span"] {
  float: none !important;
  flex: 0 0 50%;
  max-width: 50%;
  min-width: 0;
  margin-left: 0 !important;
  box-sizing: border-box;
  overflow: hidden;
}

.jsn-uniform .jsn-row-container .jsn-container-left.span6,
.jsn-uniform .jsn-uf-row-container .jsn-container-left.span6 {
  padding-left: 0 !important;
  padding-right: 12px;
  margin-left: 0 !important;
}

.jsn-uniform .jsn-row-container .jsn-container-right.span6,
.jsn-uniform .jsn-uf-row-container .jsn-container-right.span6 {
  padding-right: 0 !important;
  padding-left: 12px;
  margin-left: 0 !important;
}

.jsn-uniform .jsn-row-container .jsn-container-left .control-group,
.jsn-uniform .jsn-row-container .jsn-container-right .control-group,
.jsn-uniform .jsn-uf-row-container .jsn-container-left .control-group,
.jsn-uniform .jsn-uf-row-container .jsn-container-right .control-group {
  float: none !important;
  clear: both;
  width: 100%;
}

.jsn-uniform .jsn-container-right .control-group.useField,
.jsn-uniform .jsn-container-left .control-group.useField {
  float: none !important;
}

.jsn-uniform.jsn-master .jsn-row-container.form-horizontal .jsn-form-content .control-group .control-label {
  float: none !important;
  width: 100% !important;
  text-align: left;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.jsn-uniform.jsn-master .jsn-row-container.form-horizontal .jsn-form-content .control-group .controls {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.jsn-uniform .jsn-form-content .control-group {
  margin-left: 0 !important;
  margin-bottom: 14px;
  padding: 8px 10px;
}

.jsn-uniform .jsn-form-content .row-fluid {
  margin-left: 0 !important;
}

.jsn-uniform .jsn-row-container.row-fluid > .span12 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* --- Subject pair rows (level left, board right — same row in Design) --- */
.control-group.eco-level,
.control-group.maths-level,
.control-group.math-level,
.control-group.science-level,
.control-group.business-level,
.control-group.eco-exam-board,
.control-group.math-exam-board,
.control-group.maths-exam-board,
.control-group.science-exam-board,
.control-group.business-exam-board {
  margin-top: 0;
  margin-bottom: 12px;
  padding-top: 4px;
}

.jsn-uniform .control-group.useField {
  margin-bottom: 12px;
}

.eco-exam-board .jsn-columns-container.jsn-columns-count-two .jsn-column-item,
.math-exam-board .jsn-columns-container.jsn-columns-count-two .jsn-column-item,
.maths-exam-board .jsn-columns-container.jsn-columns-count-two .jsn-column-item,
.science-exam-board .jsn-columns-container.jsn-columns-count-two .jsn-column-item,
.business-exam-board .jsn-columns-container.jsn-columns-count-two .jsn-column-item {
  width: 48%;
  display: inline-block;
  vertical-align: top;
}

/* Hide "Other" textarea until that radio is selected (beats form.css display:block) */
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group[class*="-exam-board"] textarea.jsn-value-Others,
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.eco-exam-board textarea.jsn-value-Others,
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.math-exam-board textarea.jsn-value-Others,
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.maths-exam-board textarea.jsn-value-Others,
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.science-exam-board textarea.jsn-value-Others,
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.business-exam-board textarea.jsn-value-Others {
  display: none !important;
  max-width: 280px;
  min-height: 32px;
  margin-top: 6px;
}

.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group[class*="-exam-board"] textarea.jsn-value-Others:not([disabled]),
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.eco-exam-board textarea.jsn-value-Others:not([disabled]),
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.math-exam-board textarea.jsn-value-Others:not([disabled]),
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.maths-exam-board textarea.jsn-value-Others:not([disabled]),
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.science-exam-board textarea.jsn-value-Others:not([disabled]),
.jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content .control-group.business-exam-board textarea.jsn-value-Others:not([disabled]) {
  display: block !important;
}

@media (max-width: 767px) {
  .jsn-uniform.jsn-master .jsn-bootstrap .jsn-form-content {
    padding: 20px 16px 28px 16px !important;
  }
  .jsn-uniform .jsn-row-container.row-fluid,
  .jsn-uniform .jsn-uf-row-container.row-fluid {
    flex-wrap: wrap;
  }
  .jsn-uniform .jsn-row-container.row-fluid > [class*="span"],
  .jsn-uniform .jsn-uf-row-container.row-fluid > [class*="span"] {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls {
    flex-wrap: wrap;
  }
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input[name$="[first]"],
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input[name$="[last]"],
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls input[name$="[suffix]"] {
    flex: 1 1 100%;
    margin-right: 0;
  }
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls .help-block,
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]) .controls .help-inline {
    position: static;
    margin-top: 4px !important;
  }
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]):has(.help-block),
  .jsn-uniform.jsn-master .jsn-form-content .control-group:has(input[name$="[first]"]):has(.help-inline) {
    padding-bottom: 8px;
  }
  .jsn-uniform.jsn-master .jsn-form-content .jsn-group-field .controls input[type="text"] {
    flex: 1 1 100%;
    max-width: 100%;
  }
  .jsn-uniform.jsn-master .jsn-form-content #jsn-captcha,
  .jsn-uniform.jsn-master .jsn-form-content input[name="captcha"] {
    width: 100% !important;
    max-width: 280px !important;
    flex: 1 1 100%;
  }
}


