
/* ClinicaMOB v76 effectiveness layer — presentation only; routing/forms untouched */
.cm-v76-direct-contact{margin:12px 0 0;text-align:center;font-size:.9rem;color:#526573}
.cm-v76-direct-contact a{font-weight:700;color:#12304A;text-decoration:none}
.cm-v76-direct-contact a:hover{text-decoration:underline}

/* Keep the home page decisive rather than campaign-like. */
body.home .cm-search-section{padding-top:34px;padding-bottom:38px}
body.home .cm-trust-strip{margin-top:0}
body.home .cm-process{padding-top:42px;padding-bottom:42px}
body.home .cm-opportunities,body.home .cm-markets,body.home .cm-tools,body.home .cm-credential{padding-top:46px;padding-bottom:46px}

/* Compact professional typography. */
.cm-section-head h2,.cm-process h2,.cm-opportunities h2,.cm-markets h2,.cm-tools h2,.cm-credential h2{font-size:clamp(1.55rem,2.2vw,2.05rem);line-height:1.12;letter-spacing:-.018em}
.cm-card h2,.cm-card h3,.card h2,.card h3{line-height:1.18}

/* Strong keyboard visibility without changing visual language. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2E6F95;outline-offset:3px}

/* Make dense card sets read as one system. */
@media (min-width:1100px){
  .cards:has(> :nth-child(4):last-child),.cm-grid:has(> :nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:700px){
  body.home .cm-search-section,body.home .cm-process,body.home .cm-opportunities,body.home .cm-markets,body.home .cm-tools,body.home .cm-credential{padding-top:30px;padding-bottom:30px}
  .cm-v76-direct-contact{font-size:.86rem}
}
