/* Make services, proof, and the next step clear without adding popups. */
.fp-home .fx-hero .fx-hero-copy h1 { font-size: clamp(48px, 5.1vw, 74px); line-height: 1.08; letter-spacing: -.045em; }
.fx-hero-copy > p:not(.fx-eyebrow) { max-width: 480px; }
.fx-hero-actions { align-items: center; gap: 14px 22px; }
.fx-hero-actions .fp-button { font-size: 14px; }
.cv-hero-call { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
.cv-hero-note { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 24px; color: #c0d3dd; font-size: 12px; line-height: 1.6; }
.cv-hero-note a { color: #c0d3dd; text-underline-offset: 4px; }
.fp-home .fp-testimonial.cv-proof { padding-block: 34px; }
.fp-home .cv-proof blockquote { font-size: clamp(21px, 2vw, 28px); max-width: 1000px; line-height: 1.5; margin-bottom: 18px; }
.cv-proof .fp-eyebrow { margin-bottom: 14px; }
.cv-proof .fp-testimonial-foot { flex-wrap: wrap; gap: 14px 30px; }
.cv-lead-form .cv-optional-label { display: inline; font-weight: 400; color: #536571; }
.cv-lead-form label:has(.cv-optional-label) { display: block; }
.cv-lead-form label:has(.cv-optional-label) input { display: block; margin-top: 8px; }
.cv-optional-fields { grid-column: 1 / -1; min-width: 0; border-top: 1px solid #ccd9de; }
.cv-optional-fields > summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; list-style: none; min-height: 48px; padding: 13px 0; cursor: pointer; font-size: 13px; font-weight: 550; line-height: 1.6; color: #244655; }
.cv-optional-fields > summary::-webkit-details-marker { display: none; }
.cv-optional-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding: 8px 0 16px; }
.cv-optional-grid .cv-wide { grid-column: 1 / -1; }
.cv-optional-grid textarea { min-height: 100px; }
.cv-lead-form button[type=submit] { min-height: 54px; border-radius: 4px; font-size: 14px; }
.cv-lead-form button[type=submit]:disabled { opacity: .7; cursor: wait; }
.cv-lead-form .cv-form-next { margin: 15px 0 0; font-size: 12px; line-height: 1.6; color: #536571; }
.cv-error-call { display: block; min-height: 44px; padding-top: 10px; color: inherit; font-weight: 650; }
.pg-contact .pg-hero { padding-bottom: 30px; }
.pg-contact .pg-hero h1 { font-size: clamp(40px, 4.4vw, 62px); }
.pg-contact .pg-intro { max-width: 900px; }
.pg-contact .pg-intro-copy { max-width: 740px; }
.pg-form-panel#estimate { scroll-margin-top: 112px; }
.cv-final-cta { background: #eef1eb; }
.cv-final-cta > .fp-container { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.cv-final-cta h2 { margin-bottom: 20px; }
.cv-final-cta p:not(.fp-eyebrow) { color: #536571; font-size: 16px; }
.cv-final-actions { display: flex; flex-direction: column; align-items: center; gap: 16px; flex-shrink: 0; }
.cv-final-actions > a:last-child { color: #173b4b; min-height: 44px; display: inline-flex; align-items: center; font-size: 14px; }
@media (max-width: 760px) {
  .fp-home .fx-hero .fx-hero-copy h1 { font-size: clamp(42px, 10.3vw, 61px); }
  .fx-hero-actions .fp-button { font-size: 13px; }
  .cv-hero-call { font-size: 13px; }
  .cv-hero-note { font-size: 11px; gap: 8px 18px; margin-top: 18px; }
  .fp-home .fp-testimonial.cv-proof { padding-block: 28px; }
  .fp-home .cv-proof blockquote { font-size: 23px; }
  .fp-estimate-grid { gap: 26px !important; }
  .fp-estimate-grid > div:first-child h2 { font-size: 36px; }
  .pg-contact .pg-hero { padding-bottom: 24px; }
  .pg-contact .pg-hero h1 { font-size: clamp(38px, 9.8vw, 54px); }
  .pg-form-panel#estimate { scroll-margin-top: 88px; }
  .cv-final-cta > .fp-container { flex-direction: column; align-items: start; }
  .cv-final-actions { align-items: start; }
}
@media (max-width: 600px) {
  .cv-optional-grid { grid-template-columns: 1fr; }
  .cv-lead-form .fields { grid-template-columns: 1fr; }
}
@media (max-width: 360px) {
  .fp-home .fx-hero .fx-hero-copy h1 { font-size: 38px; }
  .fx-hero-actions { align-items: start; flex-direction: column; gap: 6px; }
}
