/* Text rhythm within the existing MODX templates; no layout or animation replacement. */
.colorit-service-copy { overflow-wrap: anywhere; }
.colorit-service-copy > h1.h2 { font-size: 30px; line-height: 1.35; font-weight: 600; }
.colorit-service-copy h2 { margin: 32px 0 14px; font-size: 23px; line-height: 1.4; font-weight: 600; }
.colorit-service-copy h3 { font-size: 18px; line-height: 1.5; font-weight: 600; margin-bottom: 8px; }
.colorit-service-copy p { margin: 0 0 18px; line-height: 1.8; }
.colorit-service-copy .colorit-service-lead { margin-top: 22px; }
.colorit-service-copy ul, .colorit-service-copy ol { margin: 0 0 24px; padding-left: 24px; }
.colorit-service-copy li { margin-bottom: 12px; color: #555; line-height: 1.8; }
.colorit-service-copy ul { list-style: disc; }
.colorit-service-copy ol { list-style: decimal; }
.colorit-service-copy a:not(.main-button) { color: #89540c; text-decoration: underline; text-underline-offset: 3px; }
.colorit-service-copy a.main-button { display: inline-block; vertical-align: middle; line-height: 1.5; max-width: 100%; }
.colorit-service-copy a:focus-visible, .colorit-faq summary:focus-visible { outline: 2px solid #e98100; outline-offset: 4px; }
.colorit-copy-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 28px 0; }
.colorit-faq details { border-bottom: 1px solid #ddd; padding: 14px 0; }
.colorit-faq summary { cursor: pointer; font-weight: 500; color: #292929; line-height: 1.7; }
.colorit-faq details p { margin: 12px 0 0; }
.colorit-service-copy .colorit-faq + p { margin-top: 24px; }
.colorit-home-copy { padding: 36px 0 70px; }
.colorit-process { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 48px; }
.colorit-hero-projects { display: block; margin-top: 18px; color: #89540c; text-decoration: underline; }
@media (max-width: 575px) {
  .aux-content:has(> .colorit-service-copy) { padding: 24px !important; }
  .colorit-service-copy > h1.h2 { font-size: 25px; }
  .colorit-service-copy h2 { font-size: 21px; }
  .colorit-process { grid-template-columns: 1fr; gap: 8px; }
}
