
/* Utility */
.nav-link { @apply text-slate-700 hover:text-brand; }
.nav-link.active { @apply text-brand font-semibold; }
.btn { @apply inline-flex items-center justify-center rounded-md px-4 py-2 transition; }
.btn-primary { @apply bg-brand text-white hover:bg-brand-dark; }
.btn-secondary { @apply border border-slate-300 text-slate-700 hover:bg-slate-100; }
.btn-light { @apply bg-white text-slate-900 hover:bg-slate-200; }

.page-title { @apply text-3xl sm:text-4xl font-bold; }
.section-title { @apply text-2xl sm:text-3xl font-bold; }

.card { @apply p-6 rounded-lg border border-slate-200 bg-white shadow-sm; }
.card-title { @apply text-lg font-semibold; }
.card-text { @apply mt-2 text-slate-600; }

.post-card { @apply rounded-lg border border-slate-200 bg-white hover:shadow-md transition overflow-hidden; }
.post-thumb { @apply w-full h-48 object-cover; }
.post-title { @apply p-4 pb-0 text-lg font-semibold; }
.post-excerpt { @apply px-4 pb-4 text-slate-600; }

.service-card { @apply rounded-lg border border-slate-200 bg-white overflow-hidden flex flex-col; }
.service-img { @apply w-full h-48 object-cover; }
.service-title { @apply p-4 pb-0 text-xl font-semibold; }
.service-text { @apply px-4 text-slate-600; }
.service-price { @apply px-4 pt-2 pb-4 font-medium text-brand; }

.team-card { @apply text-center; }
.team-photo { @apply w-full h-64 object-cover rounded-lg; }
.team-name { @apply mt-4 text-lg font-semibold; }
.team-role { @apply text-sm text-slate-500; }
.team-bio { @apply mt-2 text-slate-600; }

.cta { @apply bg-brand rounded-xl p-8 sm:p-10 text-white flex flex-col sm:flex-row items-start sm:items-center justify-between gap-6; }

.footer-title { @apply font-semibold text-white; }
.footer-links li { @apply mt-2 text-sm; }
.footer-links a { @apply text-slate-300 hover:text-white; }

.label { @apply block text-sm font-medium text-slate-700; }
.input { @apply w-full rounded-md border border-slate-300 px-4 py-2 focus:outline-none focus:ring-2 focus:ring-brand; }

.prose h2 { @apply text-xl font-semibold mt-6; }
.prose h3 { @apply text-lg font-semibold mt-4; }
.prose p { @apply mt-3; }
.prose ul { @apply mt-3 list-disc list-inside; }

.breadcrumb { @apply text-sm text-slate-600; }
.breadcrumb a { @apply text-brand hover:underline; }

/* Cookie banner */
.cookie { @apply fixed inset-x-0 bottom-0 z-50; }
.cookie-box { @apply max-w-7xl mx-auto m-4 p-4 rounded-lg border bg-white border-slate-200 shadow-lg flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4; }
.cookie-text { @apply text-sm text-slate-700; }
.cookie-actions { @apply flex items-center gap-3; }
.cookie-link { @apply text-sm text-brand hover:underline; }
.hidden { display: none; }
