/* Two-column estimate section, with the site's existing lead form. */
.ocf-cta { background: var(--ocf-bg); color: var(--ocf-body); border-top: 1px solid var(--ocf-border-light); }
.ocf-cta-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 64px; align-items: start; }
.ocf-cta-copy { max-width: 560px; }
.ocf-cta .heading-2 { color: var(--ocf-heading); font-size: var(--font-h2-size); line-height: var(--ocf-font-h2-line); }
.ocf-cta-description { margin-top: 22px; color: var(--ocf-body); font-size: var(--font-body-size); line-height: 1.7; }
.ocf-cta-call { display: grid; gap: 5px; margin-top: 26px; }
.ocf-cta-call > span { color: var(--ocf-body); font-size: 14px; }
.ocf-cta-call strong { color: var(--ocf-primary-hover); font-size: 27px; font-weight: 800; }
.ocf-cta-photo { margin-block: 28px 22px; overflow: hidden; border-radius: var(--image-radius); border-bottom: 4px solid var(--ocf-primary); }
.ocf-cta-photo img { width: 100%; height: auto; }
.ocf-cta-form { min-width: 0; padding: 32px; border: 1px solid var(--ocf-border-light); border-top: 4px solid var(--ocf-primary); background: var(--ocf-bg-alt); }
.ocf-cta-form > p { margin-top: 10px; font-size: 14px; }
.ocf-cta-form .ocf-simple-form { margin-top: 22px; }
.ocf-cta-form .form-submit-btn { width: 100%; }
@media (max-width: 900px) { .ocf-cta-inner { grid-template-columns: minmax(0,1fr); gap: 36px; } .ocf-cta-copy { max-width: none; } }
@media (max-width: 639px) { .ocf-cta-form { padding: 26px 20px; } .ocf-cta-call strong { font-size: 24px; } }
