
/* Tailwind utility-first via CDN; custom tweaks below */
:root {
  --brand: #0ea5e9;
}
.nav-link { @apply text-slate-700 hover:text-slate-900; }
.nav-link.active { @apply text-sky-700 font-semibold; }
.btn { @apply inline-flex items-center justify-center px-4 py-2 rounded-md transition font-medium; }
.btn-primary { @apply bg-sky-600 text-white hover:bg-sky-700; }
.btn-secondary { @apply bg-white text-slate-900 border border-slate-300 hover:bg-slate-50; }
.btn-light { @apply bg-slate-100 text-slate-800 hover:bg-slate-200; }
.input { @apply w-full rounded-md border border-slate-300 px-3 py-2 outline-none focus:ring-2 focus:ring-sky-500; }
.label { @apply block text-sm font-medium text-slate-700 mb-1; }
.section-title { @apply text-3xl font-extrabold text-slate-900; }

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

.service-card { @apply group rounded-xl border border-slate-200 bg-white overflow-hidden hover:shadow; }
.service-img { @apply h-48 w-full object-cover transition group-hover:scale-105; }

.gallery-img { @apply w-full h-48 md:h-56 object-cover rounded-lg; }

.testimonial { @apply rounded-xl bg-white border border-slate-200 p-6 shadow-sm; }
.testimonial-text { @apply text-slate-700; }
.testimonial-author { @apply mt-3 text-slate-500 text-sm; }

.price-card { @apply rounded-xl border border-slate-200 bg-white p-6 shadow-sm flex flex-col gap-4; }
.price-card.highlight { @apply border-sky-300 ring-1 ring-sky-200; }
.price-title { @apply text-xl font-bold; }
.price-price { @apply text-3xl font-extrabold text-slate-900; }
.price-list { @apply text-slate-700 space-y-1; }

.team-card { @apply rounded-xl border border-slate-200 bg-white p-4 text-center; }
.team-img { @apply w-full h-48 object-cover rounded-lg; }

.post-card { @apply rounded-xl border border-slate-200 bg-white overflow-hidden hover:shadow-sm; }
.post-img { @apply h-44 w-full object-cover; }

.faq { @apply rounded-lg border border-slate-200 bg-white p-4; }
.faq-q { @apply font-semibold cursor-pointer; }
.faq-a { @apply mt-2 text-slate-700; }

.footer-title { @apply font-semibold mb-3; }
.footer-link { @apply text-slate-300 hover:text-white underline; }

.cookie-banner {
  position: fixed; bottom: 0; left: 0; right: 0;
  background: #f8fafc; border-top: 1px solid #e2e8f0;
  z-index: 60;
}

.prose { max-width: 65ch; }
