/* South Express Moving V12.7.2.1 targeted remediation layer. */
:root {
  --text-blue: #166583;
  --focus-dark: #073f5c;
}

:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 6px var(--focus-dark);
}

.eyebrow:not(.light),
.stars,
.review-stars,
.brand-copy b,
.hero-contact-card > a small,
.faq-phone small,
.owner-professional-credential small,
.real-estate-facts strong,
.service-email-link,
.owner-story-email small,
.material-demo-name,
.main-nav a[aria-current="page"],
.professional-background-card > small,
.professional-background-card .real-estate-licensee span {
  color: var(--text-blue);
}

.final-cta .eyebrow.light,
.service-pricing .eyebrow.light {
  color: var(--navy);
}

.faq-item > div[hidden],
.form-recovery[hidden] {
  display: none !important;
}

.form-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.form-grid input,
.form-grid select {
  width: 100%;
  min-height: 48px;
  padding: 11px 12px;
  color: var(--ink);
  background: #f8fcfe;
  border: 1px solid #cbdfe8;
  border-radius: 11px;
}

.form-grid input:focus,
.form-grid select:focus,
.form-grid textarea:focus {
  outline: 3px solid #fff;
  outline-offset: 1px;
  border-color: var(--focus-dark);
  box-shadow: 0 0 0 5px var(--focus-dark);
}

.form-submit:disabled {
  cursor: wait;
  opacity: .68;
}

.form-status {
  color: #17613a;
}

.form-status.error {
  color: #8a1c1c;
}

.form-status:focus {
  outline: none;
  box-shadow: none;
}

.form-recovery {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0 0;
  padding: 14px;
  color: var(--navy);
  background: #fff4f4;
  border: 1px solid #c87171;
  border-radius: 12px;
  font-size: .8rem;
  font-weight: 800;
}

.form-recovery a {
  color: #064e6b;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.form-disclosure {
  margin-top: 12px;
  font-size: .79rem;
  line-height: 1.58;
}

.form-disclosure a,
.reservation-summary a,
.reservation-link {
  font-weight: 850;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.reservation-summary {
  margin-top: 12px;
  padding: 12px 14px;
  color: var(--navy);
  background: #f6fbfd;
  border-left: 4px solid var(--text-blue);
  border-radius: 8px;
  font-size: .82rem;
  line-height: 1.55;
}

.service-decision-section,
.packing-levels-section {
  padding: 78px 0;
  background: #f6fbfd;
}

.decision-grid,
.packing-levels-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-top: 28px;
}

.decision-grid article,
.packing-levels-grid article {
  padding: 26px;
  background: #fff;
  border: 1px solid #c9e4ef;
  border-radius: 20px;
  box-shadow: 0 14px 32px rgba(7, 31, 52, .07);
}

.decision-grid h3,
.packing-levels-grid h3 {
  margin: 0 0 12px;
  color: var(--navy);
}

.decision-grid ul,
.packing-levels-grid ul {
  margin: 0;
  padding-left: 1.15rem;
  color: var(--muted);
  line-height: 1.7;
}

.terms-summary-list {
  display: grid;
  gap: 12px;
  padding-left: 1.2rem;
  line-height: 1.7;
}

.terms-control-note {
  padding: 16px;
  color: var(--navy);
  background: #f6fbfd;
  border-left: 4px solid var(--text-blue);
  border-radius: 10px;
}

@media (max-width: 720px) {
  .decision-grid,
  .packing-levels-grid {
    grid-template-columns: 1fr;
  }
  .form-recovery {
    display: grid;
  }
  .service-decision-section,
  .packing-levels-section {
    padding: 58px 0;
  }
}
