/* Final site-wide spacing pass: tighter, cleaner content rhythm without changing the visual identity. */
section.py-20 { padding-top: 4rem !important; padding-bottom: 4rem !important; }
section.py-16 { padding-top: 3.5rem !important; padding-bottom: 3.5rem !important; }
section.py-14 { padding-top: 3.25rem !important; padding-bottom: 3.25rem !important; }
section.py-12 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
section.lg\:py-24 { padding-top: 4.5rem !important; padding-bottom: 4.5rem !important; }

section > .max-w-7xl > .grid.gap-12 { gap: 2rem !important; }
section > .max-w-7xl > .grid.gap-10 { gap: 2rem !important; }
section > .max-w-7xl > .grid.gap-8 { gap: 1.75rem !important; }
section > .max-w-7xl > .grid.gap-6 { gap: 1.25rem !important; }
section .grid.gap-5 { gap: 1.25rem !important; }
section .grid.gap-4 { gap: 1rem !important; }

section h2.mb-8 { margin-bottom: 1.5rem !important; }
section h2.mb-6 { margin-bottom: 1.25rem !important; }
section h2.mb-5 { margin-bottom: 1rem !important; }
section h2.mt-12 { margin-top: 2.5rem !important; }
section h2.mt-3 { margin-top: .65rem !important; }
section h2.mt-2 { margin-top: .5rem !important; }
section h3.mt-5 { margin-top: 1rem !important; }
section h3.mt-4 { margin-top: .85rem !important; }
section p.mt-4 { margin-top: .75rem !important; }
section p.mt-3 { margin-top: .65rem !important; }
section p.mt-2 { margin-top: .5rem !important; }
section .mb-8 { margin-bottom: 1.5rem !important; }
section .mt-14 { margin-top: 2.5rem !important; }
section .mt-12 { margin-top: 2.25rem !important; }
section .mt-10 { margin-top: 2rem !important; }
section .mt-8 { margin-top: 1.5rem !important; }

/* Compact cards while retaining comfortable readability. */
section .rounded-2xl.p-7 { padding: 1.35rem !important; }
section .rounded-2xl.p-6 { padding: 1.25rem !important; }
section .rounded-2xl.p-5 { padding: 1.15rem !important; }
section .rounded-xl.p-6 { padding: 1.2rem !important; }
section .rounded-xl.p-5 { padding: 1rem !important; }

/* Service-page content rhythm. */
.service-content h2 { margin-top: 2.25rem !important; margin-bottom: 1rem !important; }
.service-content p { margin-top: .5rem; }

/* Blog/article spacing. */
main.max-w-4xl { padding-top: 2.5rem !important; padding-bottom: 2.5rem !important; }
main.max-w-4xl article { margin-top: 1rem !important; padding: 1.75rem !important; }
main.max-w-4xl article h1 { margin-bottom: 1.25rem !important; }
main.max-w-4xl article .prose { line-height: 1.75 !important; }
main.max-w-4xl article .prose p { margin-top: 0 !important; margin-bottom: .8rem !important; }

/* Footer rhythm. */
footer.py-14 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
footer .mb-10 { margin-bottom: 2rem !important; }
footer .pt-7 { padding-top: 1.5rem !important; }

@media (max-width: 767px) {
  section.py-20, section.py-16, section.py-14 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
  section.lg\:py-24 { padding-top: 3.25rem !important; padding-bottom: 3.25rem !important; }
  section > .max-w-7xl > .grid.gap-12,
  section > .max-w-7xl > .grid.gap-10 { gap: 1.5rem !important; }
  section .mt-14 { margin-top: 2rem !important; }
  section .mt-12 { margin-top: 1.75rem !important; }
  section .mt-8 { margin-top: 1.25rem !important; }
  main.max-w-4xl { padding-top: 2rem !important; padding-bottom: 2rem !important; }
  main.max-w-4xl article { padding: 1.25rem !important; }
}

/* Final visual emphasis: contact details + service banners */
#contact a[href^="tel:"],
#contact a[href^="mailto:"] {
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  letter-spacing: -.01em;
}

#services .reveal-card {
  border-width: 2px !important;
  border-style: solid !important;
  border-color: #cbd5e1 !important;
  box-shadow: 0 5px 16px rgba(15,23,42,.06);
}
#services .reveal-card:hover {
  border-color: #2563eb !important;
  box-shadow: 0 18px 35px rgba(15,23,42,.13);
}

/* Strong outlines for the service-page highlight banners */
main > section:first-of-type .mt-8.grid.sm\\:grid-cols-3 > div {
  border-width: 2px !important;
  border-color: #cbd5e1 !important;
  box-shadow: 0 5px 16px rgba(15,23,42,.06);
}
main > section:first-of-type .mt-8.grid.sm\\:grid-cols-3 > div:hover {
  border-color: #2563eb !important;
  box-shadow: 0 14px 28px rgba(15,23,42,.11);
}
