/* Kobra Sobre overrides */
.article-content p { line-height: 1.9 !important; font-size: 1.125rem !important; }
.article-content p:first-of-type { font-size: 1.2rem !important; font-style: italic; }
.article-content h2 { margin-top: 2.5rem !important; margin-bottom: 1rem !important; font-size: 2rem !important; font-weight: 800 !important; letter-spacing: -0.02em !important; }

.article-content h3 { margin-top: 2rem !important; margin-bottom: .75rem !important; font-size: 1.5rem !important; font-weight: 800 !important; }

.article-content h4 { margin-top: 1.5rem !important; margin-bottom: .5rem !important; font-size: 1.25rem !important; font-weight: 700 !important; }

.article-content ul, .article-content ol { margin: 1.5rem 0; padding-left: 2rem; }

.article-content li { margin: 0.5rem 0; line-height: 1.8; }

.article-content hr { margin: 3rem 0; border: none; height: 1px; background: linear-gradient(to right, transparent, hsl(var(--bc) / 0.3), transparent); }

.article-content a { color: hsl(var(--p)); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; transition: all 0.2s ease; }

.article-content a:hover { color: hsl(var(--pf)); text-decoration-thickness: 3px; }

.article-content img { max-width: 100%; height: auto; border-radius: 0.75rem; margin: 2rem 0; box-shadow: 0 4px 6px -1px hsl(var(--bc) / 0.1), 0 2px 4px -1px hsl(var(--bc) / 0.06); }

.article-content code { background: hsl(var(--bc) / 0.1); padding: 0.25rem 0.5rem; border-radius: 0.375rem; font-size: 0.875em; font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; }

.article-content pre { background: hsl(var(--bc) / 0.05); padding: 1.5rem; border-radius: 0.75rem; overflow-x: auto; border: 1px solid hsl(var(--bc) / 0.1); margin: 2rem 0; }

.article-content pre code { background: none; padding: 0; border-radius: 0; }

/* Hero Section optimisé */
.hero {
  position: relative;
  overflow: hidden;
}

.hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, hsl(var(--b2)) 0%, hsl(var(--b1)) 100%);
  opacity: 0.8;
  z-index: 1;
}

.hero-content {
  position: relative;
  z-index: 2;
}

/* Bouton CTA optimisé */
.btn-primary {
  box-shadow: 0 4px 14px 0 hsl(var(--p) / 0.3);
  transition: all 0.3s ease;
}

.btn-primary:hover {
  box-shadow: 0 6px 20px 0 hsl(var(--p) / 0.4);
  transform: translateY(-2px);
}

/* AdSense slots optimisés */
.ad-slot {
  min-height: 280px;
  background: hsl(var(--bc) / 0.03);
  border: 1px solid hsl(var(--bc) / 0.1);
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 2rem 0;
  transition: all 0.3s ease;
}

.ad-slot:hover {
  border-color: hsl(var(--bc) / 0.2);
  background: hsl(var(--bc) / 0.05);
}

.ad-slot::before {
  content: "Publicité";
  color: hsl(var(--bc) / 0.4);
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

/* Section publicité dédiée */
.ad-section {
  background: hsl(var(--b2));
  border-radius: 1rem;
  padding: 2rem;
  margin: 2rem 0;
  border: 1px solid hsl(var(--bc) / 0.1);
}

/* Responsive */
@media (max-width: 768px) {
  .article-content p { font-size: 1rem !important; }
  .article-content h2 { font-size: 1.75rem !important; }
  .article-content h3 { font-size: 1.375rem !important; }
  .article-content h4 { font-size: 1.125rem !important; }
  
  .hero { min-height: 50vh; padding: 2rem 1rem; }
  .hero h1 { font-size: 3rem !important; }
  
  .ad-slot { min-height: 250px; margin: 1rem 0; }
}

