.managed-form-layout.form-grid,
.managed-form-layout.offer-form-grid {
  display: block;
}

.managed-form-page[hidden],
[data-form-submit-area][hidden] {
  display: none !important;
}

.managed-form-progress {
  margin: 0 0 1rem;
  color: var(--red, #d32031);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.managed-form-page-heading,
.managed-form-section-heading {
  margin: 0 0 1.35rem;
}

.managed-form-page-heading h3,
.managed-form-section-heading h4 {
  margin: 0;
  font-family: var(--display, inherit);
  line-height: 1.1;
}

.managed-form-page-heading h3 {
  font-size: clamp(1.6rem, 3vw, 2.35rem);
}

.managed-form-section-heading h4 {
  font-size: clamp(1.2rem, 2vw, 1.55rem);
}

.managed-form-page-heading p,
.managed-form-section-heading p {
  margin: .45rem 0 0;
  opacity: .72;
  line-height: 1.6;
}

.managed-form-section + .managed-form-section {
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(128, 128, 128, .28);
}

.managed-form-row {
  display: grid;
  grid-template-columns: repeat(var(--managed-form-columns), minmax(0, 1fr));
  gap: 1.2rem;
}

.managed-form-row + .managed-form-row {
  margin-top: 1.35rem;
}

.managed-form-column {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 1.35rem;
}

.managed-form-column > label,
.managed-form-column > fieldset {
  min-width: 0;
}

.managed-form-navigation {
  margin-top: 2rem;
  padding-top: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid rgba(128, 128, 128, .28);
}

.managed-form-navigation button {
  min-width: 130px;
  min-height: 48px;
  padding: 0 1.1rem;
  border: 1px solid currentColor;
  background: transparent;
  color: inherit;
  font-weight: 800;
  cursor: pointer;
}

.managed-form-navigation button[data-form-next] {
  border-color: var(--red, #d32031);
  background: var(--red, #d32031);
  color: #fff;
}

.offer-form-grid .managed-form-progress {
  color: var(--ct-blue, #143858);
}

.offer-form-grid .managed-form-page-heading h3,
.offer-form-grid .managed-form-section-heading h4 {
  color: var(--ct-blue, #143858);
}

.offer-form-grid .managed-form-navigation button {
  color: var(--ct-blue, #143858);
}

.offer-form-grid .managed-form-navigation button[data-form-next] {
  border-color: var(--ct-blue, #143858);
  background: var(--ct-blue, #143858);
  color: #fff;
}

@media (max-width: 760px) {
  .managed-form-row {
    grid-template-columns: 1fr;
  }
}
.managed-form-assessment-links{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.65rem}.managed-form-assessment-links a{min-height:44px;padding:.7rem 1rem;display:inline-flex;align-items:center;background:#111;color:#fff;font-weight:800;text-decoration:none}.managed-form-assessment-links a:hover,.managed-form-assessment-links a:focus-visible{background:#d32031}
.managed-form-privacy{margin:1.25rem 0 0;color:inherit;font-size:.78rem;line-height:1.6;opacity:.72}.managed-form-privacy a{color:inherit;text-decoration:underline;text-underline-offset:.2em}

/* Shared confirmation treatment across contact, partner and emergency forms. */
/* Equal-height cells keep the one-pixel grid lines consistent when labels wrap. */
.contact-form .service-options { align-items:stretch; background:transparent; border:0; }
.contact-form .service-options label { display:flex; min-width:0; margin:0; padding:0; border:0; box-shadow:0 0 0 1px #414141; }
.contact-form .service-options span { width:100%; height:100%; box-sizing:border-box; }
.contact-form .service-options input[type="checkbox"]+span { display:flex; justify-content:center; align-items:center; gap:.6rem; }
[data-managed-form] select { appearance:none; border-radius:0; padding-right:2rem; cursor:pointer; background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%); background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%; background-size:5px 5px; background-repeat:no-repeat; }
.managed-select { position:relative; min-width:0; text-transform:none; letter-spacing:normal; }
[data-managed-form] .managed-select>input { width:100%; box-sizing:border-box; padding-right:2rem; cursor:text; }
.managed-select::after { content:"⌄"; position:absolute; right:.65rem; top:.8rem; pointer-events:none; }
.managed-select-options { position:absolute; top:100%; left:0; right:0; z-index:20; max-height:260px; overflow:auto; overscroll-behavior:contain; border:1px solid #b4b4b4; background:#fff; color:#171717; box-shadow:0 8px 24px #0002; }
.managed-select-options[hidden] { display:none; }
.managed-select-options>div { padding:.75rem 1rem; font:400 .95rem/1.4 var(--body,sans-serif); cursor:pointer; }
.managed-select-options>[aria-selected="true"] { font-weight:700; }
.managed-select-options>[role="option"]:hover,.managed-select-options>.is-active { background:#f1eeee; box-shadow:inset 3px 0 var(--red,#d32031); }
[data-managed-form].is-submitted > :not([data-form-status]) { display:none!important; }
[data-managed-form].is-submitted [data-form-status].success {
  width:100%; box-sizing:border-box; margin:0; padding:clamp(1.5rem,4vw,3rem) 0;
  border:0; border-top:3px solid var(--red,#d32031); border-bottom:1px solid currentColor;
  background:transparent; color:inherit; line-height:1.65;
}
[data-managed-form] .managed-form-success-title {
  display:block; font:600 clamp(1.8rem,3vw,2.8rem)/1.12 var(--display,sans-serif); letter-spacing:-.035em;
}
[data-managed-form] [data-form-status].success p { margin:1rem 0 0; max-width:42rem; font-size:1rem; font-weight:400; }
[data-managed-form] [data-form-status].success .managed-form-assessment-links a { background:transparent; color:inherit; border:1px solid currentColor; }
