/* LM Bien-être — Custom Styles */

/* Prose typography for markdown content */
.prose { max-width: none; }
.prose p:first-of-type::first-letter {
  float: left;
  font-family: 'Merriweather', serif;
  font-size: 3.5em;
  line-height: 0.8;
  padding-right: 0.08em;
  padding-top: 0.05em;
  color: #0891b2;
  font-weight: 700;
}
.prose h2 { margin-top: 2.5rem; margin-bottom: 1rem; }
.prose h3 { margin-top: 2rem; margin-bottom: 0.75rem; }
.prose p { margin-bottom: 1.25rem; }
.prose ul, .prose ol { margin-bottom: 1.25rem; padding-left: 1.5rem; }
.prose li { margin-bottom: 0.5rem; }
.prose blockquote {
  border-left: 3px solid;
  padding-left: 1.25rem;
  margin: 2rem 0;
  font-style: normal;
}

/* Line clamp utilities */
.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Smooth scroll */
html { scroll-behavior: smooth; }

/* Focus states */
a:focus-visible,
button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* Global transitions */
a, button {
  transition: color 0.2s ease, background-color 0.2s ease;
}

/* Image loading placeholder */
img { background-color: #f3f4f6; }

/* Print */
@media print {
  header, footer, nav { display: none !important; }
  .prose { max-width: 100%; }
}
