/*
Theme Name:     An Najm Child
Theme URI:      https://annajm.com
Template:       kadence
Author:         OukiWeb
Author URI:     https://oukiweb.com
Description:    Thème enfant An Najm - Éditions spirituelles avec design moderne et authentique
Version:        1.0.1
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/

/* =======================================================
   IMPORT DES POLICES GOOGLE FONTS
   ======================================================= */
@import url('https://fonts.googleapis.com/css2?family=Crimson+Text:ital,wght@0,400;0,600;1,400&family=Inter:wght@300;400;500;600;700&display=swap');

/* =======================================================
   VARIABLES CSS - CHARTE GRAPHIQUE AN NAJM CORRIGÉE
   ======================================================= */
:root {
/* Palette An Najm Spirituelle - COULEURS CORRIGÉES ET HARMONISÉES */
--anjm-primary: #D4A574;
--anjm-primary-light: #E6BF8A;
--anjm-primary-dark: #B8945F;
--anjm-primary-rgb: 212, 165, 116; /* cohérent avec #D4A574 */

--anjm-secondary: #2E4053;
--anjm-secondary-light: #34495E;
--anjm-secondary-dark: #1A252F;
--anjm-secondary-rgb: 46, 64, 83; /* corrigé (au lieu de 44,62,80 qui était #2C3E50) */

/* ACCENTS CORRIGÉS - Plus harmonieux */
--anjm-accent: #BE8A53;         /* Or antique au lieu de #F2C679 */
--anjm-accent-light: #E8A966;   /* Or clair harmonieux */
--anjm-accent-soft: #F7F1E3;    /* Crème dorée raffinée */
--anjm-accent-dark: #9C7144;    /* Or foncé pour contraste */
--anjm-accent-rgb: 190, 138, 83; /* corrigé pour matcher #BE8A53 */

/* Arrière-plans et surfaces */
--anjm-background: #FEFCF8;
--anjm-card-bg: #FFFFFF;
--anjm-card-bg-rgb: 255, 255, 255; /* ajouté pour permettre rgba() cohérent */
--anjm-surface-light: #F5F2ED;
--anjm-overlay: rgba(212, 165, 116, 0.05); /* Overlay léger basé sur le primaire */

/* Textes */
--anjm-text: #2C2C2C;           /* Noir doux, pas trop dur */
--anjm-text-secondary: #5A5A5A;
--anjm-text-muted: #8A8A8A;
--anjm-text-light: #FFFFFF;

/* Bordures */
--anjm-border: #E8E3D8;
--anjm-border-light: #F5F2ED;
--anjm-border-accent: rgba(212, 165, 116, 0.2); /* Accent basé sur primaire */

/* Optionnel - Accent spirituel (VERT) */
/* À utiliser avec parcimonie : icônes, ornements, petits détails */
--anjm-spiritual: #2E7D32;       /* Vert profond, symbolique en islam */
--anjm-spiritual-light: #3F7F5F; /* Variante douce pour hover ou fond subtil */
  
  /* Typographie */
  --anjm-font-heading: 'Crimson Text', Georgia, serif;
  --anjm-font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --anjm-font-mono: 'SF Mono', Monaco, monospace;
  
  /* Tailles de police */
  --anjm-text-xs: 0.75rem;
  --anjm-text-sm: 0.875rem;
  --anjm-text-base: 1rem;
  --anjm-text-lg: 1.125rem;
  --anjm-text-xl: 1.25rem;
  --anjm-text-2xl: 1.5rem;
  --anjm-text-3xl: 1.875rem;
  --anjm-text-4xl: 2.25rem;
  
  /* Espacements */
  --anjm-spacing-xs: 0.5rem;
  --anjm-spacing-sm: 0.75rem;
  --anjm-spacing: 1rem;
  --anjm-spacing-lg: 1.5rem;
  --anjm-spacing-xl: 2rem;
  --anjm-spacing-2xl: 2.5rem;
  --anjm-spacing-3xl: 3rem;
  --anjm-spacing-4xl: 4rem;
  
  /* Rayons de bordure */
  --anjm-radius-sm: 6px;
  --anjm-radius: 8px;
  --anjm-radius-md: 10px;
  --anjm-radius-lg: 12px;
  --anjm-radius-xl: 16px;
  --anjm-radius-2xl: 20px;
  
  /* Ombres - Base corrigée avec RGB du bleu marine (utilise --anjm-secondary-rgb) */
  --anjm-shadow-xs: 0 1px 3px rgba(var(--anjm-secondary-rgb), 0.05);
  --anjm-shadow-sm: 0 2px 6px rgba(var(--anjm-secondary-rgb), 0.08);
  --anjm-shadow: 0 4px 12px rgba(var(--anjm-secondary-rgb), 0.1);
  --anjm-shadow-md: 0 6px 20px rgba(var(--anjm-secondary-rgb), 0.12);
  --anjm-shadow-lg: 0 10px 30px rgba(var(--anjm-secondary-rgb), 0.15);
  --anjm-shadow-xl: 0 20px 40px rgba(var(--anjm-secondary-rgb), 0.18);
  
  /* Transitions */
  --anjm-transition-fast: 0.15s ease;
  --anjm-transition: 0.3s ease;
  --anjm-transition-slow: 0.5s ease;
  --anjm-transition-bounce: 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  
  /* Z-index */
  --anjm-z-dropdown: 1000;
  --anjm-z-sticky: 1020;
  --anjm-z-fixed: 1030;
  --anjm-z-modal: 1040;
  --anjm-z-popover: 1050;
  --anjm-z-tooltip: 1060;
}

/* =======================================================
   BASE STYLES & RESET
   ======================================================= */
* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--anjm-font-body);
  font-size: var(--anjm-text-base);
  line-height: 1.6;
  color: var(--anjm-text);
  background-color: var(--anjm-background);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* =======================================================
   TYPOGRAPHIE
   ======================================================= */

/* Titres avec Crimson Text */
h1, h2, h3, h4, h5, h6,
.wp-block-heading,
.entry-title,
.page-title,
.site-title {
  font-family: var(--anjm-font-heading);
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: var(--anjm-spacing);
  color: var(--anjm-accent);
}

h1, .h1 {
  font-size: var(--anjm-text-4xl);
  font-weight: 600;
  margin-bottom: var(--anjm-spacing-lg);
}

h2, .h2 {
  font-size: var(--anjm-text-3xl);
  color: var(--anjm-accent);
}

h3, .h3 {
  font-size: var(--anjm-text-2xl);
  color: var(--anjm-secondary);
}

h4, .h4 {
  font-size: var(--anjm-text-xl);
  color: var(--anjm-primary);
}

h5, .h5 {
  font-size: var(--anjm-text-lg);
  color: var(--anjm-text);
}

h6, .h6 {
  font-size: var(--anjm-text-base);
  color: var(--anjm-text-secondary);
  font-weight: 600;
}

/* Paragraphes et texte */
p {
  margin-bottom: var(--anjm-spacing);
  line-height: 1.7;
}

/* Liens */
a {
  color: var(--anjm-primary);
  text-decoration: none;
  transition: var(--anjm-transition);
}

a:hover {
  color: var(--anjm-accent);
  text-decoration: underline;
}

/* Texte d'accent spirituel */
.text-spiritual {
  font-family: var(--anjm-font-heading);
  color: var(--anjm-primary-dark);
  font-weight: 600;
  font-style: italic;
}

.text-accent {
  color: var(--anjm-accent);
  font-weight: 600;
}

.text-muted {
  color: var(--anjm-text-muted);
}

/* =======================================================
   BOUTONS
   ======================================================= */
.btn,
.wp-block-button__link,
button[type="submit"],
input[type="submit"],
.wc-block-components-button,
.single_add_to_cart_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--anjm-spacing-xs);
  padding: var(--anjm-spacing-sm) var(--anjm-spacing-lg);
  font-family: var(--anjm-font-body);
  font-size: var(--anjm-text-sm);
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  border: 2px solid transparent;
  border-radius: var(--anjm-radius);
  cursor: pointer;
  transition: var(--anjm-transition);
  white-space: nowrap;
}

/* Bouton primaire An Najm */
.btn-primary,
.wp-block-button.is-style-fill .wp-block-button__link,
.btn-anjm-primary {
  background: linear-gradient(135deg, var(--anjm-primary), var(--anjm-primary-light));
  color: var(--anjm-text-light);
  border-color: var(--anjm-primary);
  box-shadow: var(--anjm-shadow-sm);
}

.btn-primary:hover,
.btn-anjm-primary:hover {
  background: linear-gradient(135deg, var(--anjm-primary-light), var(--anjm-accent));
  transform: translateY(-2px);
  box-shadow: var(--anjm-shadow-md);
  color: var(--anjm-text-light);
  text-decoration: none;
}

/* Bouton secondaire */
.btn-secondary,
.btn-anjm-secondary {
  background: var(--anjm-secondary);
  color: var(--anjm-text-light);
  border-color: var(--anjm-secondary);
}

.btn-secondary:hover,
.btn-anjm-secondary:hover {
  background: var(--anjm-secondary-light);
  transform: translateY(-2px);
  color: var(--anjm-text-light);
  text-decoration: none;
}

/* Bouton accent */
.btn-accent,
.btn-anjm-accent {
  background: var(--anjm-accent);
  color: var(--anjm-text-light);
  border-color: var(--anjm-accent);
}

.btn-accent:hover,
.btn-anjm-accent:hover {
  background: var(--anjm-accent-dark);
  transform: translateY(-2px);
  color: var(--anjm-text-light);
  text-decoration: none;
}

/* Bouton outline */
.btn-outline,
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: var(--anjm-primary);
  border-color: var(--anjm-primary);
}

.btn-outline:hover {
  background: var(--anjm-primary);
  color: var(--anjm-text-light);
  text-decoration: none;
}

/* =======================================================
   CARTES ET COMPOSANTS
   ======================================================= */
.card,
.card-anjm,
.wp-block-group.is-style-card,
.product-item,
.post-item {
  background: var(--anjm-card-bg);
  border: 1px solid var(--anjm-border);
  border-radius: var(--anjm-radius-lg);
  padding: var(--anjm-spacing-xl);
  box-shadow: var(--anjm-shadow-sm);
  transition: var(--anjm-transition);
  position: relative;
  overflow: hidden;
}

.card:hover,
.card-anjm:hover,
.product-item:hover,
.post-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--anjm-shadow-md);
  border-color: var(--anjm-border-accent);
}

/* Effet de brillance spirituelle */
.card::before,
.card-anjm::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--anjm-accent), transparent);
  transition: var(--anjm-transition-slow);
}

.card:hover::before,
.card-anjm:hover::before {
  left: 100%;
}

/* =======================================================
   NAVIGATION
   ======================================================= */
.main-navigation a {
  font-weight: 500;
  color: var(--anjm-text);
  transition: var(--anjm-transition);
  position: relative;
}

.main-navigation a:hover {
  color: var(--anjm-primary);
  text-decoration: none;
}

/* Underline effect */
.main-navigation a::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--anjm-accent);
  transition: var(--anjm-transition);
}

.main-navigation a:hover::after {
  width: 100%;
}

/* Menu mobile 
.mobile-navigation {
  background: var(--anjm-card-bg);
  border: 1px solid var(--anjm-border);
  border-radius: var(--anjm-radius-lg);
  box-shadow: var(--anjm-shadow-lg);
  backdrop-filter: blur(20px);
}*/

/* =======================================================
   PRODUITS E-COMMERCE
   ======================================================= */
.woocommerce .products .product,
.wc-block-grid__product {
  background: var(--anjm-card-bg);
  border: 1px solid var(--anjm-border);
  border-radius: var(--anjm-radius-lg);
  padding: var(--anjm-spacing-lg);
  transition: var(--anjm-transition);
}

.woocommerce .products .product:hover {
  transform: translateY(-4px);
  box-shadow: var(--anjm-shadow-md);
}

.woocommerce .star-rating {
  color: var(--anjm-accent);
}

.woocommerce .price {
  color: var(--anjm-accent);
  font-weight: 600;
  font-size: var(--anjm-text-lg);
  font-family: var(--anjm-font-heading);
}

/* =======================================================
   FORMULAIRES
   ======================================================= */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
textarea,
select {
  background: var(--anjm-card-bg);
  border: 2px solid var(--anjm-border);
  border-radius: var(--anjm-radius);
  padding: var(--anjm-spacing-sm) var(--anjm-spacing);
  font-family: var(--anjm-font-body);
  font-size: var(--anjm-text-base);
  color: var(--anjm-text);
  transition: var(--anjm-transition);
  width: 100%;
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: var(--anjm-primary);
  box-shadow: 0 0 0 3px rgba(var(--anjm-primary-rgb), 0.1);
}

/* =======================================================
   GRILLES ET LAYOUT
   ======================================================= */
.grid-2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--anjm-spacing-xl);
}

.grid-3 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--anjm-spacing-lg);
}

.grid-4 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: var(--anjm-spacing-lg);
}

/* Container */
.container-anjm {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 var(--anjm-spacing-lg);
}

/* Section spacing */
.section-anjm {
  padding: var(--anjm-spacing-4xl) 0;
}

/* =======================================================
   HEADER ET FOOTER
   ======================================================= */
.site-header {
  background: rgba(var(--anjm-card-bg-rgb), 0.95); /* correction: compatible rgba() */
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--anjm-border);
}

.site-footer {
  background: var(--anjm-primary-dark);
  color: var(--anjm-surface-light);
}

.site-footer a {
  color: var(--anjm-accent-soft);
}

.site-footer a:hover {
  color: var(--anjm-accent);
}

/* =======================================================
   BLOG ET ARTICLES
   ======================================================= */
.entry-content {
  line-height: 1.8;
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
  margin-top: var(--anjm-spacing-2xl);
  margin-bottom: var(--anjm-spacing);
}

/* Meta informations */
.entry-meta {
  color: var(--anjm-text-muted);
  font-size: var(--anjm-text-sm);
}

.entry-meta a {
  color: var(--anjm-primary);
}

/* =======================================================
   PAGINATION AN NAJM - VERSION CORRIGÉE ET OPTIMISÉE
   ======================================================= */

/* Reset et base pour tous les types de pagination (EXCLUANT la navigation post) */
.pagination,
.posts-navigation .nav-links,
.comments-pagination .nav-links,
.woocommerce-pagination,
.woocommerce-pagination ul.page-numbers,
.page-numbers,
nav.woocommerce-pagination,
.wp-pagenavi {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: var(--anjm-spacing-xs);
  margin: var(--anjm-spacing-2xl) 0;
  padding: 0;
  list-style: none;
}

/* Éléments de pagination individuels (EXCLUANT la navigation post) */
.pagination a,
.pagination span,
.posts-navigation .nav-links a,
.posts-navigation .nav-links span,
.comments-pagination .nav-links a,
.comments-pagination .nav-links span,
.woocommerce-pagination a,
.woocommerce-pagination span,
.page-numbers a,
.page-numbers span,
.page-numbers li a,
.page-numbers li span,
.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: var(--anjm-spacing-sm) var(--anjm-spacing);
  font-family: var(--anjm-font-body);
  font-size: var(--anjm-text-sm);
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  color: var(--anjm-text);
  background: var(--anjm-card-bg);
  border: 2px solid var(--anjm-border);
  border-radius: var(--anjm-radius-sm);
  transition: var(--anjm-transition);
  cursor: pointer;
  box-shadow: var(--anjm-shadow-xs);
}

/* États de survol */
.pagination a:hover,
.posts-navigation .nav-links a:hover,
.comments-pagination .nav-links a:hover,
.woocommerce-pagination a:hover,
.page-numbers a:hover,
.page-numbers li a:hover,
.wp-pagenavi a:hover {
  background: var(--anjm-primary) !important;
  color: var(--anjm-text-light) !important;
  border-color: var(--anjm-primary) !important;
  transform: translateY(-2px);
  box-shadow: var(--anjm-shadow-md);
  text-decoration: none;
}

/* Page active/courante */
.pagination .current,
.pagination span.current,
.posts-navigation .nav-links .current,
.comments-pagination .nav-links .current,
.woocommerce-pagination .current,
.page-numbers .current,
.page-numbers li .current,
.page-numbers li span.current,
.wp-pagenavi .current {
  background: linear-gradient(135deg, var(--anjm-accent), var(--anjm-accent-dark)) !important;
  color: var(--anjm-text-light) !important;
  border-color: var(--anjm-accent) !important;
  box-shadow: var(--anjm-shadow-sm);
  font-weight: 600;
  cursor: default;
}

/* Boutons précédent/suivant */
.pagination .prev,
.pagination .next,
.posts-navigation .nav-links .nav-previous,
.posts-navigation .nav-links .nav-next,
.comments-pagination .nav-links .nav-previous,
.comments-pagination .nav-links .nav-next,
.woocommerce-pagination .prev,
.woocommerce-pagination .next,
.page-numbers .previouspostslink,
.page-numbers .nextpostslink,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  background: var(--anjm-secondary) !important;
  color: var(--anjm-text-light) !important;
  border-color: var(--anjm-secondary) !important;
  font-weight: 600;
}

.pagination .prev:hover,
.pagination .next:hover,
.posts-navigation .nav-links .nav-previous a:hover,
.posts-navigation .nav-links .nav-next a:hover,
.comments-pagination .nav-links .nav-previous a:hover,
.comments-pagination .nav-links .nav-next a:hover,
.woocommerce-pagination .prev:hover,
.woocommerce-pagination .next:hover,
.page-numbers .previouspostslink:hover,
.page-numbers .nextpostslink:hover,
.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover {
  background: var(--anjm-secondary-light) !important;
  transform: translateY(-2px);
  box-shadow: var(--anjm-shadow-md);
}

/* Éléments désactivés */
.pagination .disabled,
.posts-navigation .nav-links .disabled,
.comments-pagination .nav-links .disabled,
.woocommerce-pagination .disabled,
.page-numbers .disabled,
.wp-pagenavi .disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* Points de suspension (...) */
.pagination .dots,
.pagination span:not(.current):not(.prev):not(.next),
.woocommerce-pagination .dots,
.page-numbers .dots,
.wp-pagenavi .dots,
.page-numbers li span:not(.current):not(.prev):not(.next) {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: var(--anjm-text-muted) !important;
  cursor: default;
  font-weight: bold;
}

/* Override spécifique pour les conflits Kadence */
.content-bg.entry-content-wrap .pagination a,
.content-bg.entry-content-wrap .posts-navigation .nav-links a,
.content-bg.entry-content-wrap .comments-pagination .nav-links a,
body .site-container .pagination a {
  background: var(--anjm-card-bg) !important;
  color: var(--anjm-text) !important;
  border: 2px solid var(--anjm-border) !important;
}

.content-bg.entry-content-wrap .pagination a:hover,
.content-bg.entry-content-wrap .posts-navigation .nav-links a:hover,
.content-bg.entry-content-wrap .comments-pagination .nav-links a:hover,
body .site-container .pagination a:hover {
  background: var(--anjm-primary) !important;
  color: var(--anjm-text-light) !important;
  border-color: var(--anjm-primary) !important;
}

/* Corrections spécifiques pour archives et blog */
.archive .pagination,
.blog .pagination,
.search-results .pagination {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: var(--anjm-spacing-xs) !important;
  margin: var(--anjm-spacing-3xl) auto !important;
  padding: 0 !important;
}

.archive .pagination a,
.archive .pagination span,
.blog .pagination a,
.blog .pagination span,
.search-results .pagination a,
.search-results .pagination span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 44px !important;
  height: 44px !important;
  padding: var(--anjm-spacing-sm) var(--anjm-spacing) !important;
  background: var(--anjm-card-bg) !important;
  color: var(--anjm-text) !important;
  border: 2px solid var(--anjm-border) !important;
  border-radius: var(--anjm-radius-sm) !important;
  font-family: var(--anjm-font-body) !important;
  font-size: var(--anjm-text-sm) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: var(--anjm-transition) !important;
  box-shadow: var(--anjm-shadow-xs) !important;
}

.archive .pagination a:hover,
.blog .pagination a:hover,
.search-results .pagination a:hover {
  background: var(--anjm-primary) !important;
  color: var(--anjm-text-light) !important;
  border-color: var(--anjm-primary) !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--anjm-shadow-md) !important;
}

.archive .pagination .current,
.blog .pagination .current,
.search-results .pagination .current {
  background: linear-gradient(135deg, var(--anjm-accent), var(--anjm-accent-dark)) !important;
  color: var(--anjm-text-light) !important;
  border-color: var(--anjm-accent) !important;
  font-weight: 600 !important;
  cursor: default !important;
}

/* Pagination spécifique WooCommerce */
.woocommerce nav.woocommerce-pagination {
  text-align: center;
  margin: var(--anjm-spacing-3xl) 0;
}

.woocommerce nav.woocommerce-pagination ul {
  display: inline-flex !important;
  border: none;
  background: none;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: none !important;
  background: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  border: 2px solid var(--anjm-border) !important;
  background: var(--anjm-card-bg) !important;
  color: var(--anjm-text) !important;
}

/* Conteneur responsive */
@media (max-width: 768px) {
  .pagination,
  .posts-navigation .nav-links,
  .comments-pagination .nav-links,
  .woocommerce-pagination {
    gap: var(--anjm-spacing-xs);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: var(--anjm-primary) transparent;
  }
  
  .pagination a,
  .pagination span,
  .posts-navigation .nav-links a,
  .posts-navigation .nav-links span,
  .comments-pagination .nav-links a,
  .comments-pagination .nav-links span,
  .woocommerce-pagination a,
  .woocommerce-pagination span,
  .page-numbers a,
  .page-numbers span {
    min-width: 40px;
    height: 40px;
    padding: var(--anjm-spacing-xs) var(--anjm-spacing-sm);
    font-size: var(--anjm-text-xs);
  }
  
  /* Corrections spécifiques mobile pour archives */
  .archive .pagination a,
  .archive .pagination span,
  .blog .pagination a,
  .blog .pagination span,
  .search-results .pagination a,
  .search-results .pagination span {
    min-width: 40px !important;
    height: 40px !important;
    padding: var(--anjm-spacing-xs) var(--anjm-spacing-sm) !important;
    font-size: var(--anjm-text-xs) !important;
  }
}

/* Animation d'apparition */
.pagination,
.posts-navigation .nav-links,
.comments-pagination .nav-links,
.woocommerce-pagination {
  animation: fadeInUp 0.6s ease forwards;
}

/* Amélioration de l'accessibilité */
.pagination a:focus,
.posts-navigation .nav-links a:focus,
.comments-pagination .nav-links a:focus,
.woocommerce-pagination a:focus,
.page-numbers a:focus {
  outline: 3px solid var(--anjm-accent);
  outline-offset: 2px;
  box-shadow: var(--anjm-shadow-md);
}

/* Style pour les icônes de pagination (si utilisées) */
.pagination .icon,
.nav-links .icon,
.woocommerce-pagination .icon {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

/* Container pour centrer sur toute la largeur */
.pagination-wrapper {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: var(--anjm-spacing-xl) 0;
}

/* =======================================================
   NAVIGATION ENTRE ARTICLES (POST NAVIGATION) - PRÉSERVÉE
   ======================================================= */
/* Reset des styles de pagination pour la navigation post */
.post-navigation .nav-links {
  display: flex !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  gap: var(--anjm-spacing-lg) !important;
  margin: var(--anjm-spacing-3xl) 0 !important;
  flex-wrap: wrap !important;
}

.post-navigation .nav-links .nav-previous,
.post-navigation .nav-links .nav-next {
  flex: 1;
  min-width: 200px;
}

.post-navigation .nav-links a {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-width: auto !important;
  padding: var(--anjm-spacing-lg) !important;
  background: var(--anjm-card-bg) !important;
  border: 2px solid var(--anjm-border) !important;
  border-radius: var(--anjm-radius) !important;
  color: var(--anjm-text) !important;
  text-decoration: none !important;
  transition: var(--anjm-transition) !important;
  box-shadow: var(--anjm-shadow-xs) !important;
}

.post-navigation .nav-links a:hover {
  background: var(--anjm-surface-light) !important;
  border-color: var(--anjm-primary) !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--anjm-shadow-md) !important;
}

.post-navigation .post-navigation-sub {
  margin-bottom: var(--anjm-spacing-xs) !important;
}

.post-navigation .post-navigation-sub small {
  color: var(--anjm-text-muted) !important;
  font-size: var(--anjm-text-xs) !important;
  font-weight: 500 !important;
  display: flex !important;
  align-items: center !important;
  gap: var(--anjm-spacing-xs) !important;
}

.post-navigation .kadence-svg-iconset {
  color: var(--anjm-primary) !important;
}

@media (max-width: 768px) {
  .post-navigation .nav-links {
    flex-direction: column !important;
    gap: var(--anjm-spacing) !important;
  }
  
  .post-navigation .nav-links .nav-previous,
  .post-navigation .nav-links .nav-next {
    min-width: auto;
  }
  
  .post-navigation .nav-links a {
    border-radius: var(--anjm-radius) !important;
  }
}

/* =======================================================
   CLASSES UTILITAIRES
   ======================================================= */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

.font-heading { font-family: var(--anjm-font-heading); }
.font-body { font-family: var(--anjm-font-body); }

/* Classes de couleur avec gradients spirituels */
.bg-primary { 
  background: linear-gradient(135deg, var(--anjm-primary), var(--anjm-primary-light));
  color: var(--anjm-text-light);
}

.bg-secondary { 
  background: linear-gradient(135deg, var(--anjm-secondary), var(--anjm-secondary-light));
  color: var(--anjm-text-light);
}

.bg-accent { 
  background: linear-gradient(135deg, var(--anjm-accent), var(--anjm-accent-light));
  color: var(--anjm-text-light);
}

.bg-card { 
  background-color: var(--anjm-card-bg);
}

/* Classes de couleur solides (alternative sans gradient) */
.bg-primary-solid { 
  background-color: var(--anjm-primary);
  color: var(--anjm-text-light);
}

.bg-secondary-solid { 
  background-color: var(--anjm-secondary);
  color: var(--anjm-text-light);
}

.bg-accent-solid { 
  background-color: var(--anjm-accent);
  color: var(--anjm-text-light);
}

/* Gradient de fond pour sections hero */
.bg-hero {
  background: linear-gradient(135deg, 
    var(--anjm-background), 
    rgba(var(--anjm-primary-rgb), 0.05),
    var(--anjm-surface-light)
  );
}

.text-primary { color: var(--anjm-primary); }
.text-secondary { color: var(--anjm-secondary); }
.text-accent { color: var(--anjm-accent); }
.text-muted { color: var(--anjm-text-muted); }

.border-primary { border-color: var(--anjm-primary); }
.border-accent { border-color: var(--anjm-accent); }

.shadow-sm { box-shadow: var(--anjm-shadow-sm); }
.shadow { box-shadow: var(--anjm-shadow); }
.shadow-md { box-shadow: var(--anjm-shadow-md); }
.shadow-lg { box-shadow: var(--anjm-shadow-lg); }

.rounded { border-radius: var(--anjm-radius); }
.rounded-lg { border-radius: var(--anjm-radius-lg); }
.rounded-xl { border-radius: var(--anjm-radius-xl); }

/* Spacing utilities */
.m-0 { margin: 0; }
.mt-1 { margin-top: var(--anjm-spacing-xs); }
.mt-2 { margin-top: var(--anjm-spacing-sm); }
.mt-3 { margin-top: var(--anjm-spacing); }
.mt-4 { margin-top: var(--anjm-spacing-lg); }
.mt-5 { margin-top: var(--anjm-spacing-xl); }

.mb-1 { margin-bottom: var(--anjm-spacing-xs); }
.mb-2 { margin-bottom: var(--anjm-spacing-sm); }
.mb-3 { margin-bottom: var(--anjm-spacing); }
.mb-4 { margin-bottom: var(--anjm-spacing-lg); }
.mb-5 { margin-bottom: var(--anjm-spacing-xl); }

.p-1 { padding: var(--anjm-spacing-xs); }
.p-2 { padding: var(--anjm-spacing-sm); }
.p-3 { padding: var(--anjm-spacing); }
.p-4 { padding: var(--anjm-spacing-lg); }
.p-5 { padding: var(--anjm-spacing-xl); }

/* =======================================================
   ANIMATIONS ET INTERACTIONS
   ======================================================= */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.fade-in-up {
  animation: fadeInUp 0.6s ease forwards;
}

.fade-in {
  animation: fadeIn 0.4s ease forwards;
}

/* Hover animations */
.hover-lift {
  transition: var(--anjm-transition);
}

.hover-lift:hover {
  transform: translateY(-4px);
}

/* =======================================================
   PERSONNALISATIONS KADENCE SPÉCIFIQUES
   ======================================================= */

/* Override Kadence global palette */
:root {
  --global-palette1: var(--anjm-primary);
  --global-palette2: var(--anjm-accent);
  --global-palette3: var(--anjm-text);
  --global-palette4: var(--anjm-text-secondary);
  --global-palette5: var(--anjm-text-muted);
  --global-palette6: var(--anjm-secondary);
  --global-palette7: var(--anjm-card-bg);
  --global-palette8: var(--anjm-border-light);
  --global-palette9: var(--anjm-background);
}

/* Kadence blocks styling */
.wp-block-kadence-advanced-heading {
  font-family: var(--anjm-font-heading);
}

.wp-block-kadence-spacer {
  background: transparent;
}

/* Page title customization */
.entry-hero-container-inner {
  background: linear-gradient(135deg, rgba(var(--anjm-primary-rgb), 0.1), rgba(var(--anjm-accent-rgb), 0.1));
  backdrop-filter: blur(10px);
}

.hero-section .entry-title {
  color: var(--anjm-primary-dark);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* =======================================================
   RESPONSIVE DESIGN
   ======================================================= */
@media (max-width: 1024px) {
  :root {
    --anjm-spacing-4xl: 2.5rem;
    --anjm-spacing-3xl: 2rem;
  }
  
  .container-anjm {
    padding: 0 var(--anjm-spacing);
  }
  
  h1, .h1 {
    font-size: var(--anjm-text-3xl);
  }
  
  h2, .h2 {
    font-size: var(--anjm-text-2xl);
  }
}

@media (max-width: 768px) {
  :root {
    --anjm-spacing-4xl: 2rem;
    --anjm-spacing-3xl: 1.5rem;
    --anjm-spacing-2xl: 1.5rem;
  }
  
  .grid-2,
  .grid-3,
  .grid-4 {
    grid-template-columns: 1fr;
    gap: var(--anjm-spacing);
  }
  
  .btn,
  .wp-block-button__link {
    padding: var(--anjm-spacing) var(--anjm-spacing-lg);
    font-size: var(--anjm-text-base);
  }
  
  h1, .h1 {
    font-size: var(--anjm-text-2xl);
  }
  
  h2, .h2 {
    font-size: var(--anjm-text-xl);
  }
  
  .card,
  .card-anjm {
    padding: var(--anjm-spacing-lg);
  }
}

@media (max-width: 480px) {
  .container-anjm {
    padding: 0 var(--anjm-spacing-sm);
  }
  
  .section-anjm {
    padding: var(--anjm-spacing-2xl) 0;
  }
}

/* =======================================================
   ACCESSIBILITÉ
   ======================================================= */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Focus states pour l'accessibilité */
a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
  outline: 2px solid var(--anjm-accent);
  outline-offset: 2px;
}

/* Skip link */
.skip-link {
  position: absolute;
  top: -40px;
  left: 6px;
  background: var(--anjm-primary);
  color: var(--anjm-text-light);
  padding: 8px;
  text-decoration: none;
  border-radius: var(--anjm-radius);
  z-index: var(--anjm-z-tooltip);
}

.skip-link:focus {
  top: 6px;
}

/* =======================================================
   PRINT STYLES
   ======================================================= */
@media print {
  * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  
  .site-header,
  .site-footer,
  .navigation,
  .btn,
  button {
    display: none !important;
  }
  
  body {
    font-size: 12pt;
    line-height: 1.4;
  }
  
  h1, h2, h3 {
    page-break-after: avoid;
  }
}