/* Body copy — slightly larger and darker for comfortable reading */

:root {
  --mid: #4a4440;
  --text-body: #3a3530;
}

/* SPA pages (index.html) */
.intro-strip p,
.about-hero-right p,
.about-text p,
.projects-header p,
.project-detail-sidebar p,
.service-content p,
.services-header p,
.contact-header p,
.blog-header p,
.blog-featured-excerpt,
.blog-card-excerpt {
  font-size: 17px;
  line-height: 1.85;
  color: var(--text-body);
  font-weight: 400;
}

/* SEO pages */
.seo-body p,
.seo-body ul,
.seo-body ol,
.seo-founder-text p,
.faq-answer-inner p {
  font-size: 17px;
  line-height: 1.85;
  color: var(--text-body);
  font-weight: 400;
}

.seo-hero .lead {
  font-size: 18px;
  line-height: 1.85;
  color: var(--text-body);
  font-weight: 400;
}

.seo-link-grid a,
.home-seo-links-grid a {
  font-size: 15px;
  color: var(--text-body);
}

/* Contact form */
.contact-info-item .label,
.form-group label {
  font-size: 11px;
  letter-spacing: 0.18em;
}

.form-group input,
.form-group textarea,
.custom-select-trigger {
  font-size: 17px;
  font-weight: 400;
}

.form-group input::placeholder,
.form-group textarea::placeholder,
.custom-select-trigger .custom-select-value.is-placeholder {
  color: #9a928a;
}

.custom-select-option {
  font-size: 16px;
  font-weight: 400;
}

.contact-info-item p {
  font-size: 22px;
}

.form-error,
.field-hint {
  font-size: 14px;
  color: #524c45;
}

/* FAQ */
.faq-question {
  font-size: 16px;
  font-weight: 400;
  color: var(--dark);
}

/* Footer */
.footer-col p,
.footer-col ul li a {
  font-size: 15px;
  color: var(--text-body);
}

.footer-bottom p {
  font-size: 12px;
}
