/* Typografska dorada: čitljiviji sadržaj i jasnija hijerarhija. */
body { font-size: var(--body-size); line-height: 1.7; }
.main-nav { font-size: 15px; }
.header-cta, .button { padding: 14px 22px; font-size: 15px; line-height: 1.25; }
.hero p, .page-hero p, .service-hero p { font-size: 19px; }
.rich-text { max-width: 700px; font-size: 17px; }
.benefit-list article { padding: 23px 24px 21px 48px; }
.benefit-list p, .page-cards p { font-size: 15px; line-height: 1.6; }
.service-card { min-height: 318px; padding: 29px; }
.service-card h2, .service-card h3 { font-size: 20px; }
.service-card p { font-size: 15px; line-height: 1.65; }
.service-card > a { bottom: 26px; font-size: 14px; }
.why-copy p { max-width: 520px; font-size: 17px; }
.why-items article { padding: 29px; }
.why-items p { font-size: 15px; line-height: 1.6; }
.project-grid { gap: 22px; }
.project-cover.generated { padding: 24px; }
.project-cover.generated span { font-size: 22px; }
.project-meta { padding: 21px 2px; }
.project-meta h2, .project-meta h3 { margin: 6px 0 8px; font-size: 21px; }
.project-meta p { font-size: 15px; line-height: 1.62; }
.project-meta small { font-size: 11px; }
.steps article { min-height: 112px; padding-top: 20px; }
.steps h3 { font-size: 16px; }
.final-cta p { max-width: 650px; font-size: 17px; }
.page-cards > article { padding: 22px 0 22px 47px; }
.contact-form { margin-top: 36px; }
.contact-form input, .contact-form textarea, .contact-form select { padding: 15px 16px; margin-bottom: 14px; font-size: 15px; }
.contact-form textarea { height: 140px; }
.contact-form .wpcf7-list-item { margin-bottom: 16px; font-size: 14px; }
.breadcrumbs { font-size: 13px; }
.detail-grid h2, .story-grid h2 { font-size: 34px; }
.check-list li { padding: 15px 0 15px 29px; font-size: 16px; }
.include-grid article { padding: 27px 25px 24px 46px; }
.include-grid p { font-size: 15px; line-height: 1.6; }
.faq-item button { padding: 21px 0; font-size: 18px; }
.faq-item > div > p { font-size: 16px; }
.project-title dl div { padding: 12px 0; font-size: 15px; }
.tech-section { padding: 39px 0; }
.tech-section strong { font-size: 20px; }
.footer-grid p { font-size: 14px; line-height: 1.7; }
.footer-grid h3 { font-size: 15px; }
.footer-grid a { margin: 8px 0; font-size: 14px; }
.footer-bottom { font-size: 12px; }
@media (max-width: 640px) {
  .hero p, .page-hero p, .service-hero p { font-size: 17px; }
  .service-card { min-height: 250px; }
  .steps article, .steps article:not(:first-child) { padding: 18px 0; }
  .steps h3 { margin-top: 9px; }
}
