/**
 * Phase 1 - Optimisations Espace & Navigation
 * Réduction des espacements inutiles, navigation compacte, meilleure visibilité du contenu
 */

/* === Optimisations Globales === */
:root {
  /* Réduction des espacements pour meilleure utilisation de l'espace */
  --slide-padding-optimized: 1.5rem;
  --slide-gap-optimized: 1.5rem;
  --section-gap-optimized: 1.5rem;
  
  /* Navigation compacte */
  --nav-height-compact: 44px;
  --nav-padding-compact: 0.5rem 0.75rem;
}

/* === Optimisation Container === */
.slides-container {
  /* Réduction padding top pour voir le contenu immédiatement */
  padding-top: var(--spacing-md);
  /* Réduction gap entre slides */
  gap: var(--slide-gap-optimized);
}

/* === Optimisation Slides === */
.slide {
  /* Padding réduit mais confortable */
  padding: var(--slide-padding-optimized);
  /* Margin réduite entre slides */
  margin-bottom: var(--slide-gap-optimized);
  /* Hauteur minimale réduite pour moins de scroll */
  min-height: auto;
}

/* === Optimisation Sections dans Slides === */
.slide > * + * {
  margin-top: var(--section-gap-optimized);
}

.slide-header {
  margin-bottom: var(--spacing-md);
}

.slide-title {
  margin-bottom: var(--spacing-sm);
}

/* === Optimisation Navigation Compacte === */
.slide-navigation {
  /* Hauteur fixe compacte */
  height: var(--nav-height-compact);
  /* Padding minimal */
  padding: var(--nav-padding-compact);
  /* Position optimisée */
  bottom: var(--spacing-sm);
  /* Ombre plus subtile */
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.08);
}

/* === Optimisation Boutons Navigation === */
.nav-button {
  /* Taille réduite mais toujours cliquable */
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
}

.nav-button svg {
  width: 16px;
  height: 16px;
}

/* === Optimisation Indicateurs === */
.slide-indicators {
  /* Hauteur fixe pour éviter le débordement */
  height: 20px;
  /* Padding horizontal minimal */
  padding: 0 var(--spacing-xs);
  /* Largeur maximale pour éviter trop d'espace */
  max-width: 250px;
}

.indicator {
  width: 5px;
  height: 5px;
  min-width: 5px;
  min-height: 5px;
}

.indicator.active {
  width: 18px;
}

/* === Optimisation Grilles === */
.kpi-grid,
.feature-grid,
.project-grid {
  gap: var(--spacing-md);
  margin: var(--spacing-md) 0;
}

/* === Optimisation Cards === */
.card,
.kpi-card,
.feature-card,
.project-card {
  padding: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
}

/* === Optimisation Timeline === */
.timeline-enhanced,
.agenda-timeline {
  gap: var(--spacing-md);
  margin-top: var(--spacing-sm);
}

.timeline-item {
  padding: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
}

/* === Optimisation Tables === */
.engagement-table-enhanced,
table {
  margin: var(--spacing-md) 0;
}

/* === Optimisation Espacement Vertical === */
.slide-content > * + * {
  margin-top: var(--spacing-md);
}

/* === Réduction Espacements Titres === */
h1, h2, h3, h4, h5, h6 {
  margin-top: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
}

h1:first-child,
h2:first-child,
h3:first-child {
  margin-top: 0;
}

/* === Optimisation Responsive === */
@media (max-width: 768px) {
  :root {
    --slide-padding-optimized: 1rem;
    --slide-gap-optimized: 1rem;
    --section-gap-optimized: 1rem;
    --nav-height-compact: 40px;
  }
  
  .slides-container {
    padding-top: var(--spacing-sm);
    padding-bottom: 60px;
  }
  
  .slide {
    padding: var(--slide-padding-optimized);
    margin-bottom: var(--slide-gap-optimized);
  }
  
  .slide-navigation {
    bottom: var(--spacing-xs);
    height: var(--nav-height-compact);
  }
  
  .nav-button {
    width: 28px;
    height: 28px;
  }
  
  .nav-button svg {
    width: 14px;
    height: 14px;
  }
  
  .slide-indicators {
    max-width: 180px;
  }
}

/* === Amélioration Visibilité Contenu === */
.slide.active {
  /* Animation d'entrée plus rapide */
  animation: fadeInUp 0.4s ease-out;
}

/* Scroll smooth pour navigation fluide */
html {
  scroll-behavior: smooth;
}

/* === Optimisation Espacement Cover Slide === */
.slide-cover-enhanced {
  padding: var(--spacing-lg);
  min-height: auto;
}

.slide-title-enhanced {
  margin-bottom: var(--spacing-sm);
  font-size: clamp(2rem, 5vw, 3rem);
}

.slide-subtitle-enhanced {
  margin-bottom: var(--spacing-sm);
}

/* === Optimisation KPI Cards === */
.kpi-primary-card {
  padding: var(--spacing-lg);
  margin-bottom: var(--spacing-md);
}

.kpi-secondary-grid {
  gap: var(--spacing-md);
  margin-top: var(--spacing-md);
}

/* === Optimisation CTA === */
.cta-hero-enhanced {
  padding: var(--spacing-lg);
  margin: var(--spacing-md) 0;
}

/* === Réduction Espacements Listes === */
ul, ol {
  margin: var(--spacing-sm) 0;
  padding-left: var(--spacing-lg);
}

li {
  margin-bottom: var(--spacing-xs);
}

/* === Optimisation Paragraphes === */
p {
  margin-bottom: var(--spacing-sm);
  line-height: 1.6;
}

/* === Suppression Marges Inutiles === */
.slide > *:last-child {
  margin-bottom: 0;
}

.slide-content > *:last-child {
  margin-bottom: 0;
}

/* === Amélioration Espacement Horizontal === */
.slide-row,
.grid-2,
.grid-3,
.grid-4 {
  gap: var(--spacing-md);
}

/* === Optimisation Fullscreen (si nécessaire) === */
@media (min-width: 1920px) {
  .slides-container {
    max-width: 1400px;
  }
}

