/* Clean identity details: typography and fine rules replace decorative symbols. */
.hero-note {
  padding-left: 15px;
  border-left: 2px solid var(--gold);
}

.contact-note {
  padding-left: 15px;
  border-left: 2px solid var(--gold);
}

.service-strip span + span {
  border-left: 1px solid #d8ddd4;
  padding-left: 8%;
}

.card h3 {
  margin-top: 42px;
}

@media (max-width: 700px) {
  .service-strip span + span {
    border-left: 0;
    padding-left: 0;
  }

  .card h3 {
    margin-top: 30px;
  }
}

.contact { align-items: start; }
.contact-intro { position: sticky; top: 150px; }
#quote { padding: 32px; border: 1px solid #dce1d8; background: #fafbf8; }
#quote fieldset { margin: 0 0 30px; padding: 0; border: 0; }
#quote legend { width: 100%; margin-bottom: 18px; padding-bottom: 9px; border-bottom: 1px solid #dce1d8; color: var(--green); font-family: Georgia, 'Times New Roman', serif; font-size: 20px; }
.service-options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 18px; margin-bottom: 20px; }
.service-options > span { grid-column: 1 / -1; font-size: 13px; }
.service-options label, .consent { display: flex; gap: 10px; align-items: flex-start; padding: 12px; border: 1px solid #dce1d8; background: #fff; font-size: 13px; cursor: pointer; }
.service-options input, .consent input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--green); }
.consent { margin-bottom: 20px; }
.form-privacy { margin: 12px 0 0; color: var(--muted); font-size: 12px; }
#form-status { min-height: 24px; font-weight: 600; }

@media (max-width: 700px) {
  .contact-intro { position: static; }
  #quote { padding: 22px 18px; }
  .service-options { grid-template-columns: 1fr; }
}
