/* ══════════════════════════════════════════════════════════════
   INNER SKIN A — Éditorial Full-Width
   Inspiré : eHarmony Dating Advice, Zoosk Date Mix
   Structure : article centré 760px, lecture immersive, sidebar flottante
   SEO : schema.org article, heading hierarchy, breadcrumb ARIA
   ══════════════════════════════════════════════════════════════ */

/* ── Variables (remplacées par brand-lpX.css plus tard) ─────── */
:root {
  --ink-900:   #0f172a;
  --ink-700:   #334155;
  --ink-600:   #475569;
  --ink-500:   #64748b;
  --ink-400:   #94a3b8;
  --ink-300:   #cbd5e1;
  --ink-200:   #e2e8f0;
  --ink-100:   #f1f5f9;
  --ink-50:    #f8fafc;
  --brand:     #4f46e5;
  --brand-mid: #7c3aed;
  --brand-soft:#ede9fe;
  --brand-grad:linear-gradient(135deg, #4f46e5, #7c3aed);
  --white:     #ffffff;
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.08);
  --shadow-md: 0 4px 20px rgba(0,0,0,.10);
  --shadow-lg: 0 12px 40px rgba(0,0,0,.14);
  --font-body: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-display: 'Cormorant Garamond', Georgia, serif;
  --font-ui:      var(--font-body);
  --transition: .2s ease;
  --sa-header-h: 60px; /* hauteur fixe — utilisée par le panneau search */
}

/* ══════════════════════════════════════════════════════════════
   RESET PARTIEL
   ══════════════════════════════════════════════════════════════ */
.skin-a *, .skin-a *::before, .skin-a *::after { box-sizing: border-box; }
.skin-a { font-family: var(--font-body); color: var(--ink-700); line-height: 1.7; background: var(--white); }
.skin-a img { max-width: 100%; height: auto; }
.skin-a a { color: var(--brand); text-decoration: none; }

/* ══════════════════════════════════════════════════════════════
   HEADER — sticky, transparent → blanc au scroll
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-header {
  position: sticky;
  top: 0;
  z-index: 200;
  height: var(--sa-header-h);
  padding: 0;
  background: var(--sa-hdr-bg-init);
  transition: background var(--transition), box-shadow var(--transition);
}
.skin-a .sa-header.scrolled {
  background: var(--sa-hdr-bg);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 1px 0 var(--sa-hdr-scroll-border);
}
.skin-a .sa-header__inner {
  max-width: 1280px;
  height: 100%;
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  align-items: center;
  gap: 32px;
}
/* Logo */
.skin-a .sa-logo {
  font-family: var(--font-body);
  font-size: 19px;
  font-weight: 800;
  color: var(--ink-900);
  letter-spacing: -.03em;
  text-decoration: none;
  flex-shrink: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.skin-a .sa-logo img { max-width: 100%; height: auto; width: auto; display: block; }
.skin-a .sa-logo svg { width: 28px; height: 28px; }
/* ── Zone variables — Header ────────────────────────────────────── */
.skin-a .sa-header,
.skin-a .sa-header.scrolled {
  --sa-hdr-bg-init:         transparent;
  --sa-hdr-bg:              var(--white);
  --sa-hdr-scroll-border:   var(--ink-100);
  --sa-hdr-nav-link:        var(--ink-500);
  --sa-hdr-nav-hover:       var(--ink-900);
  --sa-hdr-cta-bg:          var(--brand);
  --sa-hdr-cta-bg2:         var(--brand-mid);
  --sa-hdr-cta-color:       var(--white);
  --sa-hdr-cta-hover-bg:    #4338ca;
  --sa-hdr-cta-hover-bg2:   #6d28d9;
}
/* Nav */
.skin-a .sa-nav {
  flex: 1;
}
.skin-a .sa-nav a {
  font-size: 14px;
  font-weight: 500;
  color: var(--sa-hdr-nav-link);
  transition: color var(--transition);
}
.skin-a .sa-nav a:hover { color: var(--sa-hdr-nav-hover); }
.skin-a .sa-nav__list { display: flex; gap: 28px; list-style: none; margin: 0; padding: 0; }
/* CTA Header */
.skin-a .sa-header__ctas {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-left: auto;
}
.skin-a .sa-login {
  font-size: 14px;
  font-weight: 600;
  color: var(--sa-hdr-nav-link);
  transition: color var(--transition);
}
.skin-a .sa-login:hover { color: var(--sa-hdr-nav-hover); }

/* Search button */
.skin-a .sa-search-btn {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--ink-500);
  padding: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  transition: color var(--transition), background var(--transition);
}
.skin-a .sa-search-btn:hover,
.skin-a .sa-search-btn[aria-expanded="true"] { color: var(--brand); background: var(--brand-soft); }

/* ── Search panel (slide-down sous le header) ─────────────── */
.skin-a .sa-search-panel {
  position: fixed;
  top: var(--sa-header-h);
  left: 0;
  right: 0;
  z-index: 199;
  background: var(--white);
  border-bottom: 1px solid var(--sa-search-panel-border, var(--ink-100));
  box-shadow: 0 4px 24px rgba(0,0,0,.08);
  transform: translateY(-100%);
  visibility: hidden;
  transition: transform .25s cubic-bezier(.4,0,.2,1), visibility .25s ease;
}
.skin-a .sa-search-panel:not([hidden]) {
  transform: translateY(0);
  visibility: visible;
}
.skin-a .sa-search-panel__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
  height: 56px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.skin-a .sa-search-panel__inner form {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--ink-400);
}
.skin-a .sa-search-panel__input {
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  font-size: 16px;
  font-family: inherit;
  color: var(--ink-900);
  padding: 0;
  min-width: 0;
}
.skin-a .sa-search-panel__input::placeholder { color: var(--ink-400); }
.skin-a .sa-search-panel__input::-webkit-search-decoration,
.skin-a .sa-search-panel__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.skin-a .sa-search-panel__close {
  background: var(--sa-search-close-bg, none);
  border: none;
  cursor: pointer;
  color: var(--sa-search-close-color, var(--ink-500));
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  padding: 6px 10px;
  border-radius: var(--radius-sm);
  transition: color var(--transition), background var(--transition);
  flex-shrink: 0;
}
.skin-a .sa-search-panel__close:hover { color: var(--sa-search-close-color-hover, var(--ink-900)); background: var(--sa-search-close-bg-hover, var(--ink-100)); }

/* ── Search panel — variante plein écran ─────────────────── */
.skin-a .sa-search-panel--fullscreen {
  top: 0;
  bottom: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--sa-search-overlay-bg, rgba(255,255,255,.92));
  backdrop-filter: blur(12px);
  border-bottom: none;
  box-shadow: none;
  transform: none;
  opacity: 0;
  transition: opacity .2s ease, visibility .2s ease;
}
.skin-a .sa-search-panel--fullscreen:not([hidden]) {
  transform: none;
  opacity: 1;
}
.skin-a .sa-search-panel--fullscreen .sa-search-panel__inner {
  max-width: 600px;
  width: 100%;
  height: auto;
  flex-direction: column;
  gap: 16px;
  padding: 0 24px;
}
.skin-a .sa-search-panel--fullscreen .sa-search-panel__inner form {
  flex: none;
  width: 100%;
  border: 2px solid var(--ink-200);
  border-radius: 50px;
  padding: 0 20px;
  height: 54px;
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.skin-a .sa-search-panel--fullscreen .sa-search-panel__inner form:focus-within {
  border-color: var(--brand);
}
.skin-a .sa-search-panel--fullscreen .sa-search-panel__close {
  position: absolute;
  top: 20px;
  right: 24px;
  font-size: 14px;
}

.skin-a .sa-cta-btn {
  background: linear-gradient(135deg, var(--sa-hdr-cta-bg), var(--sa-hdr-cta-bg2));
  color: var(--sa-hdr-cta-color) !important;
  font-size: 13px;
  font-weight: 700;
  padding: 9px 22px;
  border-radius: var(--radius-sm);
  transition: background var(--transition);
  white-space: nowrap;
}
.skin-a .sa-cta-btn:hover {
  background: linear-gradient(135deg, var(--sa-hdr-cta-hover-bg), var(--sa-hdr-cta-hover-bg2));
}

/* ══════════════════════════════════════════════════════════════
   BREADCRUMB — schema.org BreadcrumbList
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-breadcrumb {
  --sa-hdr-bc-bg:     var(--ink-50);
  --sa-hdr-bc-border: var(--ink-100);
  border-bottom: 1px solid var(--sa-hdr-bc-border);
  background: var(--sa-hdr-bc-bg);
}
.skin-a .sa-breadcrumb__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 10px 40px;
  font-size: 12px;
  color: var(--ink-500);
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.skin-a .sa-breadcrumb a { color: var(--ink-500); transition: color var(--transition); }
.skin-a .sa-breadcrumb a:hover { color: var(--brand); }
.skin-a .sa-breadcrumb__sep { color: var(--ink-300); font-size: 11px; }
.skin-a .sa-breadcrumb__current { color: var(--ink-700); font-weight: 500; }

/* ══════════════════════════════════════════════════════════════
   HERO ARTICLE — grande image pleine largeur avec titre overlay
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-hero {
  position: relative;
  min-height: 480px;
  max-height: 580px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
}
.skin-a .sa-hero > img,
.skin-a .sa-hero .wp-post-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.skin-a .sa-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  /* gradient injecté via Customizer selon mode Sombre / Clair */
}
.skin-a .sa-hero__content {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px 52px;
  width: 100%;
}
.skin-a .sa-hero__cat {
  display: inline-block;
  background: var(--brand);
  color: var(--white);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 4px 14px;
  border-radius: 50px;
  margin-bottom: 16px;
}
.skin-a .sa-hero__title {
  font-family: var(--font-display);
  font-size: clamp(30px, 4.5vw, 56px);
  font-weight: 700;
  color: var(--sa-hero-title);
  line-height: 1.15;
  margin: 0 0 16px;
  letter-spacing: -.01em;
}
.skin-a .sa-hero__meta {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--sa-hero-meta);
  font-size: 13px;
  flex-wrap: wrap;
}
.skin-a .sa-hero__author { display: flex; align-items: center; gap: 8px; }
.skin-a .sa-hero__author img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; border: 2px solid rgba(255,255,255,.4); }
.skin-a .sa-hero__dot { width: 3px; height: 3px; border-radius: 50%; background: rgba(255,255,255,.4); }
.skin-a .sa-hero__read { display: flex; align-items: center; gap: 5px; }

/* ══════════════════════════════════════════════════════════════
   LAYOUT PRINCIPAL : article centré + sidebar flottante
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-body {
  max-width: 1280px;
  margin: 0 auto;
  padding: 60px 40px 80px;
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 72px;
  align-items: start;
}
/* Article zone */
.skin-a .sa-article {
  min-width: 0; /* évite overflow grid */
}
/* Sidebar */
.skin-a .sa-sidebar {
  position: sticky;
  top: 90px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* ══════════════════════════════════════════════════════════════
   PROGRESS BAR de lecture (JS-driven)
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  background: var(--brand-grad);
  width: 0%;
  z-index: 500;
  transition: width .1s linear;
}

/* ══════════════════════════════════════════════════════════════
   TYPOGRAPHIE ARTICLE (prose)
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-prose {
  --sa-prose-link:    var(--brand);
  --sa-prose-heading: var(--ink-900);
  --sa-prose-text:    var(--ink-700);
  /* Éléments typo — surchargeables via Customizer */
  --sa-bq-border:      var(--brand);
  --sa-bq-bg:          var(--brand-soft);
  --sa-bq-text:        var(--ink-900);
  --sa-bq-cite:        var(--brand);
  --sa-code-bg:        var(--ink-100);
  --sa-code-color:     var(--brand-mid);
  --sa-pre-bg:         var(--ink-900);
  --sa-pre-color:      var(--ink-200);
  --sa-table-th-bg:    var(--brand-soft);
  --sa-table-th-color: var(--brand-mid);
  --sa-table-border:   var(--ink-200);
  --sa-btn-bg:         var(--brand);
  --sa-btn-color:      #ffffff;
  --sa-btn-hover-bg:   var(--brand-dark, #4338ca);
  --sa-pq-border:      var(--brand);
  --sa-pq-bg:          var(--brand-soft);
  --sa-pq-text:        var(--ink-900);
  --sa-pq-cite:        var(--brand);
  --sa-accordion-bg:     #261908;
  --sa-accordion-color:  #f5ede0;
  --sa-accordion-border: #c96b00;
  --sa-accordion-accent: #c96b00;
  --sa-accordion-text:   rgba(245,237,224,.65);
  font-size: 17px;
  line-height: 1.85;
  color: var(--sa-prose-text);
}
.skin-a .sa-prose > * + * { margin-top: 1.4em; }
.skin-a .sa-prose h1 {
  font-family: var(--font-display);
  font-size: clamp(26px, 3.2vw, 38px);
  font-weight: 700;
  color: var(--sa-prose-heading);
  line-height: 1.2;
  margin-top: 2.5em;
  margin-bottom: .5em;
  letter-spacing: -.01em;
}
.skin-a .sa-prose h2 {
  font-family: var(--font-display);
  font-size: clamp(22px, 2.8vw, 32px);
  font-weight: 700;
  color: var(--sa-prose-heading);
  line-height: 1.25;
  margin-top: 2.5em;
  margin-bottom: .5em;
  letter-spacing: -.01em;
}
.skin-a .sa-prose h3 {
  font-size: 20px;
  font-weight: 700;
  color: var(--sa-prose-heading);
  margin-top: 2em;
  margin-bottom: .4em;
}
.skin-a .sa-prose h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--sa-prose-text);
  margin-top: 1.6em;
  margin-bottom: .3em;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.skin-a .sa-prose p { margin: 0 0 1.2em; }
.skin-a .sa-prose a { color: var(--sa-prose-link); text-decoration: underline; text-underline-offset: 3px; }
.skin-a .sa-prose a:hover { color: var(--brand-mid); }
.skin-a .sa-prose strong { font-weight: 700; color: var(--sa-prose-heading); }
.skin-a .sa-prose em { font-style: italic; }

/* Listes */
.skin-a .sa-prose ul,
.skin-a .sa-prose ol {
  padding-left: 1.5em;
  margin: 0 0 1.2em;
}
.skin-a .sa-prose ul { list-style: none; padding-left: 0; }
.skin-a .sa-prose ul li {
  padding-left: 1.6em;
  position: relative;
  margin-bottom: .5em;
}
.skin-a .sa-prose ul li::before {
  content: '→';
  position: absolute;
  left: 0;
  color: var(--brand);
  font-weight: 700;
  font-size: .85em;
  top: .15em;
}
.skin-a .sa-prose ol { list-style: decimal; }
.skin-a .sa-prose ol li { margin-bottom: .5em; padding-left: .3em; }
.skin-a .sa-prose li::marker { color: var(--brand); font-weight: 700; }

/* Blockquote */
.skin-a .sa-prose blockquote {
  border-left: 4px solid var(--sa-bq-border);
  margin: 2em 0;
  padding: 1.2em 1.6em;
  background: var(--sa-bq-bg);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  color: var(--sa-bq-text);
  font-style: italic;
  font-size: 1.05em;
}
.skin-a .sa-prose blockquote cite {
  display: block;
  margin-top: .75em;
  font-size: .85em;
  font-style: normal;
  color: var(--sa-bq-cite);
  font-weight: 600;
}

/* Images dans l'article */
.skin-a .sa-prose img {
  border-radius: var(--radius-md);
  margin: 1.8em 0;
  box-shadow: var(--shadow-md);
}
.skin-a .sa-prose figure {
  margin: 2em 0;
}
.skin-a .sa-prose figcaption {
  font-size: 13px;
  color: var(--ink-500);
  text-align: center;
  margin-top: 8px;
  font-style: italic;
}

/* Code */
.skin-a .sa-prose code {
  background: var(--sa-code-bg);
  border-radius: 4px;
  padding: 2px 7px;
  font-size: .88em;
  font-family: 'Fira Code', monospace;
  color: var(--sa-code-color);
}
.skin-a .sa-prose pre {
  background: var(--sa-pre-bg);
  color: var(--sa-pre-color);
  border-radius: var(--radius-md);
  padding: 1.5em;
  overflow-x: auto;
  font-size: .88em;
  line-height: 1.7;
  margin: 1.8em 0;
}
.skin-a .sa-prose pre code { background: none; color: inherit; padding: 0; }

/* Tableau */
.skin-a .sa-prose table,
.skin-a .sa-prose .wp-block-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 1.8em 0;
  font-size: 15px;
  border-radius: var(--radius-md);
  overflow: hidden;
  border: 1px solid var(--sa-table-border, var(--ink-200)) !important;
  box-shadow: var(--shadow-sm);
}
.skin-a .sa-prose .wp-block-table {
  overflow: visible;
  margin: 1.8em 0;
}
.skin-a .sa-prose th,
.skin-a .sa-prose .wp-block-table th {
  background: var(--sa-table-th-bg);
  color: var(--sa-table-th-color);
  font-weight: 700;
  text-align: left;
  padding: 12px 16px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .06em;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: 2px solid var(--sa-table-border, var(--ink-200)) !important;
}
.skin-a .sa-prose td,
.skin-a .sa-prose .wp-block-table td {
  padding: 11px 16px;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: 1px solid var(--sa-table-border, var(--ink-200)) !important;
  color: var(--ink-700);
}
.skin-a .sa-prose tr:last-child td,
.skin-a .sa-prose .wp-block-table tr:last-child td { border-bottom: none !important; }
.skin-a .sa-prose tr:hover td,
.skin-a .sa-prose .wp-block-table tr:hover td { background: var(--ink-50); }

/* Séparateur */
.skin-a .sa-prose hr {
  border: none;
  border-top: 2px solid var(--ink-100);
  margin: 3em 0;
}

/* Accordion natif details/summary */
.skin-a .sa-prose details {
  background: var(--sa-accordion-bg, #261908);
  border-radius: 14px;
  overflow: hidden;
  margin: .5em 0;
  border: 1px solid var(--sa-accordion-border, rgba(201,107,0,.25));
}
.skin-a .sa-prose summary {
  list-style: none;
  cursor: pointer;
  padding: 18px 24px;
  font-size: .95rem;
  font-weight: 600;
  color: var(--sa-accordion-color, #f5ede0);
  background: var(--sa-accordion-bg, #261908) !important;
  border-bottom: 1px solid transparent !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  transition: color .2s, background .2s;
  user-select: none;
}
.skin-a .sa-prose summary::-webkit-details-marker { display: none; }
.skin-a .sa-prose summary::marker { display: none; }
.skin-a .sa-prose summary::after {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  background-image: none !important;
  background-color: var(--sa-accordion-color, #f5ede0);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='6 9 12 15 18 9' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='6 9 12 15 18 9' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  transition: transform .3s, background-color .2s;
}
.skin-a .sa-prose details[open] > summary::after {
  transform: rotate(180deg);
  background-color: var(--sa-accordion-accent, #c96b00);
}
.skin-a .sa-prose details[open] > summary {
  color: var(--sa-accordion-accent, #c96b00);
  border-bottom: 1px solid var(--sa-accordion-border, #c96b00) !important;
}
.skin-a .sa-prose summary:hover {
  color: var(--sa-accordion-accent, #c96b00);
}
.skin-a .sa-prose details > div,
.skin-a .sa-prose details > p {
  padding: 0 24px 18px;
  font-size: .9rem;
  color: var(--sa-accordion-text, rgba(245,237,224,.65));
  line-height: 1.7;
  margin: 0;
}

/* Bouton Gutenberg (wp-block-button) */
.skin-a .sa-prose .wp-block-button .wp-block-button__link,
.skin-a .sa-prose .wp-element-button {
  background: var(--sa-btn-bg) !important;
  color: var(--sa-btn-color) !important;
  border-radius: var(--radius-md);
  padding: 10px 24px;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  border: none;
  transition: background .2s;
}
.skin-a .sa-prose .wp-block-button .wp-block-button__link:hover,
.skin-a .sa-prose .wp-element-button:hover {
  background: var(--sa-btn-hover-bg) !important;
}
.skin-a .sa-prose .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  border: 2px solid var(--sa-btn-bg) !important;
  color: var(--sa-btn-bg) !important;
}
.skin-a .sa-prose .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--sa-btn-bg) !important;
  color: var(--sa-btn-color) !important;
}

/* Pull quote Gutenberg (wp-block-pullquote) */
.skin-a .sa-prose .wp-block-pullquote {
  background: var(--sa-pq-bg);
  border-top: 4px solid var(--sa-pq-border);
  border-bottom: 4px solid var(--sa-pq-border);
  padding: 2em 2.5em;
  margin: 2.5em 0;
  text-align: center;
}
.skin-a .sa-prose .wp-block-pullquote blockquote {
  background: none;
  border-left: none;
  padding: 0;
  color: var(--sa-pq-text);
  font-size: 1.25em;
  font-weight: 600;
  font-style: italic;
  border-radius: 0;
}
.skin-a .sa-prose .wp-block-pullquote cite {
  color: var(--sa-pq-cite);
  font-size: .85em;
  font-style: normal;
  font-weight: 600;
}

/* ══════════════════════════════════════════════════════════════
   COMPOSANTS ÉDITORIAUX SPÉCIAUX
   (à utiliser via Gutenberg blocks ou shortcodes)
   ══════════════════════════════════════════════════════════════ */

/* 1. Encadré "À retenir" */
.skin-a .sa-callout {
  border: 2px solid var(--brand);
  border-radius: var(--radius-md);
  padding: 1.4em 1.8em;
  margin: 2em 0;
  background: var(--brand-soft);
  position: relative;
}
.skin-a .sa-callout__label {
  position: absolute;
  top: -12px;
  left: 16px;
  background: var(--brand);
  color: var(--white);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 3px 12px;
  border-radius: 50px;
}
.skin-a .sa-callout p { margin: 0; }

/* 2. Encadré "Bon à savoir" (warning) */
.skin-a .sa-callout--warning {
  border-color: #f59e0b;
  background: #fffbeb;
}
.skin-a .sa-callout--warning .sa-callout__label { background: #f59e0b; }

/* 3. Encadré "À éviter" (danger) */
.skin-a .sa-callout--danger {
  border-color: #ef4444;
  background: #fef2f2;
}
.skin-a .sa-callout--danger .sa-callout__label { background: #ef4444; }

/* 4. Grande citation pull-quote */
.skin-a .sa-pullquote {
  text-align: center;
  margin: 3em auto;
  max-width: 580px;
  padding: 0 2em;
}
.skin-a .sa-pullquote__mark {
  font-size: 80px;
  line-height: .6;
  color: var(--brand);
  font-family: Georgia, serif;
  display: block;
  margin-bottom: 12px;
  opacity: .4;
}
.skin-a .sa-pullquote__text {
  font-family: var(--font-display);
  font-size: clamp(20px, 2.5vw, 28px);
  font-style: italic;
  color: var(--ink-900);
  line-height: 1.4;
  margin: 0 0 .6em;
}
.skin-a .sa-pullquote__author {
  font-size: 13px;
  color: var(--brand);
  font-weight: 600;
}

/* 5. Liste de conseils numérotés stylisés */
.skin-a .sa-steps {
  list-style: none;
  padding: 0;
  margin: 2em 0;
  counter-reset: steps;
}
.skin-a .sa-steps li {
  display: flex;
  gap: 20px;
  padding: 1.2em 0;
  border-bottom: 1px solid var(--ink-100);
  counter-increment: steps;
}
.skin-a .sa-steps li:last-child { border-bottom: none; }
.skin-a .sa-steps li::before {
  content: counter(steps);
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  background: var(--brand-grad);
  color: var(--white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 800;
  margin-top: 2px;
}

/* 6. Carte profil expert / auteur */
.skin-a .sa-expert {
  display: flex;
  gap: 18px;
  align-items: center;
  background: var(--ink-50);
  border-radius: var(--radius-md);
  padding: 1.4em;
  margin: 2em 0;
  border: 1px solid var(--ink-100);
}
.skin-a .sa-expert img {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 3px solid var(--brand-soft);
  margin: 0;
  box-shadow: none;
}
.skin-a .sa-expert__name { font-weight: 700; color: var(--ink-900); font-size: 15px; margin-bottom: 2px; }
.skin-a .sa-expert__role { font-size: 12px; color: var(--brand); font-weight: 600; margin-bottom: 6px; text-transform: uppercase; letter-spacing: .06em; }
.skin-a .sa-expert__bio { font-size: 14px; color: var(--ink-500); line-height: 1.5; margin: 0; }

/* 7. Grille de stats / chiffres clés */
.skin-a .sa-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 16px;
  margin: 2em 0;
}
.skin-a .sa-stat {
  background: var(--brand-soft);
  border-radius: var(--radius-md);
  padding: 1.2em;
  text-align: center;
}
.skin-a .sa-stat__num {
  font-family: var(--font-display);
  font-size: 36px;
  font-weight: 700;
  color: var(--brand);
  line-height: 1;
  display: block;
  margin-bottom: 4px;
}
.skin-a .sa-stat__label {
  font-size: 12px;
  color: var(--ink-500);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  line-height: 1.3;
}

/* 8. CTA mid-article */
.skin-a .sa-midcta {
  background: var(--brand-grad);
  color: var(--white);
  border-radius: var(--radius-lg);
  padding: 2.2em 2.5em;
  margin: 3em 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  position: relative;
  overflow: hidden;
}
.skin-a .sa-midcta::before {
  content: '';
  position: absolute;
  right: -40px;
  top: -40px;
  width: 180px;
  height: 180px;
  background: rgba(255,255,255,.07);
  border-radius: 50%;
}
.skin-a .sa-midcta__label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  opacity: .7;
}
.skin-a .sa-midcta__title {
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 800;
  line-height: 1.25;
  margin: 0;
}
.skin-a .sa-midcta__sub { font-size: 14px; opacity: .85; margin: 0; }
.skin-a .sa-midcta__btn {
  background: var(--white);
  color: var(--brand) !important;
  font-size: 14px;
  font-weight: 700;
  padding: 12px 28px;
  border-radius: var(--radius-sm);
  transition: filter var(--transition);
  text-decoration: none !important;
}
.skin-a .sa-midcta__btn:hover { filter: brightness(.96); }

/* 9. Comparatif tableau pros/cons */
.skin-a .sa-proscons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 2em 0;
}
.skin-a .sa-proscons__col {
  border-radius: var(--radius-md);
  padding: 1.4em;
}
.skin-a .sa-proscons__col--pro { background: #f0fdf4; border: 1px solid #bbf7d0; }
.skin-a .sa-proscons__col--con { background: #fef2f2; border: 1px solid #fecaca; }
.skin-a .sa-proscons__title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.skin-a .sa-proscons__col--pro .sa-proscons__title { color: #16a34a; }
.skin-a .sa-proscons__col--con .sa-proscons__title { color: #dc2626; }
.skin-a .sa-proscons__list { list-style: none; padding: 0; margin: 0; }
.skin-a .sa-proscons__list li {
  font-size: 14px;
  padding: .35em 0 .35em 1.5em;
  position: relative;
  color: var(--ink-700);
}
.skin-a .sa-proscons__col--pro .sa-proscons__list li::before { content: '✓'; position: absolute; left: 0; color: #16a34a; font-weight: 700; }
.skin-a .sa-proscons__col--con .sa-proscons__list li::before { content: '✗'; position: absolute; left: 0; color: #dc2626; font-weight: 700; }

/* 10. FAQ accordéon */
.skin-a .sa-faq { margin: 2em 0; }
.skin-a .sa-faq__item {
  border-bottom: 1px solid var(--ink-100);
}
.skin-a .sa-faq__question {
  width: 100%;
  background: none;
  border: none;
  padding: 1.1em 0;
  text-align: left;
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 600;
  color: var(--ink-900);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.skin-a .sa-faq__icon {
  width: 24px;
  height: 24px;
  background: var(--brand-soft);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 14px;
  color: var(--brand);
  transition: transform var(--transition);
}
.skin-a .sa-faq__item.open .sa-faq__icon { transform: rotate(45deg); }
.skin-a .sa-faq__answer {
  font-size: 15px;
  color: var(--ink-700);
  line-height: 1.7;
  padding: 0 0 1.2em;
  display: none;
}
.skin-a .sa-faq__item.open .sa-faq__answer { display: block; }

/* ══════════════════════════════════════════════════════════════
   SIDEBAR WIDGETS
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-widget {
  --sa-sdbr-widget-bg:       var(--white);
  --sa-sdbr-border:          var(--ink-100);
  --sa-sdbr-title-color:     var(--ink-900);
  --sa-sdbr-title-size:      14px;
  --sa-sdbr-cta-bg:          var(--brand-soft);
  --sa-sdbr-cta-btn-bg:           var(--brand);
  --sa-sdbr-cta-btn-bg2:          var(--brand-mid);
  --sa-sdbr-cta-btn-color:        var(--white);
  --sa-sdbr-cta-btn-hover-bg:     #4338ca;
  --sa-sdbr-cta-btn-hover-bg2:    #6d28d9;
  background: var(--sa-sdbr-widget-bg);
  border: 1px solid var(--sa-sdbr-border);
  border-radius: var(--radius-md);
  padding: 24px;
  box-shadow: var(--shadow-sm);
}
.skin-a .sa-widget--cta {
  --sa-sdbr-cta-title-color: var(--ink-900);
  --sa-sdbr-cta-title-size:  16px;
  --sa-sdbr-cta-text-color:  var(--ink-500);
  background: var(--sa-sdbr-cta-bg);
  border-color: transparent;
  text-align: center;
}
.skin-a .sa-widget--cta .sa-widget__title {
  font-size: var(--sa-sdbr-cta-title-size);
  color: var(--sa-sdbr-cta-title-color);
}
.skin-a .sa-widget--cta .sa-widget__sub {
  color: var(--sa-sdbr-cta-text-color);
}
.skin-a .sa-widget__title {
  font-size: var(--sa-sdbr-title-size);
  font-weight: 700;
  color: var(--sa-sdbr-title-color);
  margin: 0 0 6px;
  letter-spacing: -.01em;
}
.skin-a .sa-widget__sub {
  font-size: 13px;
  color: var(--ink-500);
  margin: 0 0 16px;
  line-height: 1.5;
}
.skin-a .sa-widget__btn {
  display: block;
  background: linear-gradient(135deg, var(--sa-sdbr-cta-btn-bg), var(--sa-sdbr-cta-btn-bg2));
  color: var(--sa-sdbr-cta-btn-color) !important;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  padding: 12px 16px;
  border-radius: var(--radius-sm);
  transition: background var(--transition);
  text-decoration: none !important;
}
.skin-a .sa-widget__btn:hover {
  background: linear-gradient(135deg, var(--sa-sdbr-cta-btn-hover-bg), var(--sa-sdbr-cta-btn-hover-bg2));
}
.skin-a .sa-widget__login {
  font-size: 12px;
  color: var(--ink-500);
  text-align: center;
  margin: 10px 0 0;
}
.skin-a .sa-widget--cta .sa-widget__login { color: var(--sa-sdbr-cta-text-color); }
.skin-a .sa-widget__login a { color: var(--brand); }

/* Widget articles récents */
.skin-a .sa-recents { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; list-style: none; }
.skin-a .sa-recents li { display: flex; gap: 12px; align-items: flex-start; }
.skin-a .sa-recents li > a { display: block; flex-shrink: 0; width: 56px; height: 56px; overflow: hidden; border-radius: var(--radius-sm); line-height: 0; }
.skin-a .sa-recents__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.skin-a .sa-recents__title {
  font-size: 13px;
  font-weight: 600;
  color: var(--ink-900);
  line-height: 1.35;
  display: block;
  margin-bottom: 3px;
  transition: color var(--transition);
}
.skin-a .sa-recents__title:hover { color: var(--brand); }
.skin-a .sa-recents__date { font-size: 11px; color: var(--ink-300); }

/* Widget catégories */
.skin-a .sa-cats { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 2px; }
.skin-a .sa-cats li { display: flex; justify-content: space-between; align-items: center; }
.skin-a .sa-cats a {
  font-size: 14px;
  color: var(--ink-700);
  padding: 6px 0;
  transition: color var(--transition);
}
.skin-a .sa-cats a:hover { color: var(--brand); }
.skin-a .sa-cats__count {
  background: var(--ink-100);
  color: var(--ink-500);
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 50px;
}

/* Widget tags */
.skin-a .sa-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.skin-a .sa-tags a {
  font-size: 12px;
  font-weight: 600;
  color: var(--sa-sdbr-tag-color, var(--brand));
  background: var(--sa-sdbr-tag-bg, var(--brand-soft));
  padding: 4px 12px;
  border-radius: 50px;
  transition: background var(--transition), color var(--transition);
}
.skin-a .sa-tags a:hover { background: var(--sa-sdbr-tag-hover-bg, var(--brand)); color: var(--sa-sdbr-tag-hover-color, var(--white)); }

/* ══════════════════════════════════════════════════════════════
   FOOTER ARTICLE (tags + share + auteur)
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-article-footer {
  --sa-art-ftr-sep:         var(--ink-100);
  --sa-art-ftr-tag-bg:      var(--ink-100);
  --sa-art-ftr-tag-color:   var(--ink-500);
  --sa-art-ftr-author-bg:   var(--ink-50);
  --sa-art-ftr-author-name: var(--ink-900);
  --sa-art-ftr-author-bio:  var(--ink-500);
  margin-top: 52px;
  padding-top: 32px;
  border-top: 2px solid var(--sa-art-ftr-sep);
}
.skin-a .sa-article-footer.no-tags { padding-top: 0; border-top: none; }
.skin-a .sa-article-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.skin-a .sa-tag {
  font-size: 12px;
  font-weight: 600;
  color: var(--sa-art-ftr-tag-color);
  background: var(--sa-art-ftr-tag-bg);
  padding: 5px 14px;
  border-radius: 50px;
  transition: background var(--transition), color var(--transition);
}
.skin-a .sa-tag:hover { background: var(--sa-art-ftr-tag-bg-hover, var(--brand-soft)); color: var(--sa-art-ftr-tag-color-hover, var(--brand)); }

/* Bloc auteur */
.skin-a .sa-author-card {
  display: flex;
  gap: 20px;
  padding: 1.6em;
  background: var(--sa-art-ftr-author-bg);
  border-radius: var(--radius-md);
  border: 1px solid var(--sa-art-ftr-sep);
  margin-bottom: 32px;
}
.skin-a .sa-author-card img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 3px solid var(--brand-soft);
}
.skin-a .sa-author-card__body { min-width: 0; }
.skin-a .sa-author-card__name { font-size: 16px; font-weight: 700; color: var(--sa-art-ftr-author-name); margin-bottom: 4px; overflow-wrap: break-word; word-break: break-word; }
.skin-a .sa-author-card__role { font-size: 12px; color: var(--brand); font-weight: 600; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 8px; }
.skin-a .sa-author-card__bio { font-size: 14px; color: var(--sa-art-ftr-author-bio); line-height: 1.6; margin: 0; }

/* Articles liés */
.skin-a .sa-related {
  max-width: 1280px;
  margin: 0 auto;
  padding: 60px 40px 80px;
  border-top: 2px solid var(--sa-related-sep, var(--ink-100));
}
.skin-a .sa-related__title { font-family: var(--font-display); font-size: 24px; font-weight: 700; color: var(--ink-900); margin-bottom: 24px; }
.skin-a .sa-related__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.skin-a .sa-rcard {
  background: var(--sa-card-bg);
  border-radius: var(--radius-md);
  overflow: hidden;
  border: 1px solid var(--sa-card-border);
  transition: box-shadow var(--transition), transform var(--transition);
}
.skin-a .sa-rcard:hover { box-shadow: var(--shadow-md); }
.skin-a .sa-rcard__img { height: 160px; object-fit: cover; width: 100%; display: block; }
.skin-a .sa-rcard__body { padding: 16px; }
.skin-a .sa-rcard__title { font-size: 15px; font-weight: 700; color: var(--sa-rcard-title, var(--sa-card-title)); line-height: 1.35; margin: 0; }
.skin-a .sa-rcard__title a { color: inherit; transition: color var(--transition); }
.skin-a .sa-rcard__title a:hover { color: var(--sa-rcard-title-hover, var(--sa-card-cat)); }
.skin-a .sa-rcard .sa-card__cat { color: var(--sa-rcard-cat, var(--sa-card-cat)); }
.skin-a .sa-rcard .sa-card__cat:hover { color: var(--sa-rcard-cat-hover, var(--sa-card-cat-hover)); }

.skin-a .sa-no-results {
  text-align: center;
  padding: 60px 40px 80px;
  font-size: 17px;
  color: var(--ink-400);
}

/* ══════════════════════════════════════════════════════════════
   ARCHIVE / PAGE BLOG
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-archive-header {
  max-width: 860px;
  margin: 0 auto;
  padding: 60px 40px 40px;
  text-align: center;
}
.skin-a .sa-archive-eyebrow {
  display: inline-block;
  background: var(--brand-soft);
  color: var(--brand);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 4px 16px;
  border-radius: 50px;
  margin-bottom: 16px;
}
.skin-a .sa-archive-title {
  font-family: var(--font-display);
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 700;
  color: var(--ink-900);
  line-height: 1.2;
  margin: 0 0 12px;
}
.skin-a .sa-archive-desc {
  font-size: 17px;
  color: var(--ink-500);
  max-width: 680px;
  margin: 0 auto;
}

/* ── Topics bar — dégradé brand (style dating app) ─────── */
.skin-a .sa-topics-bar {
  --sa-hdr-topics-bg1:          var(--brand);
  --sa-hdr-topics-bg2:          var(--brand-mid);
  --sa-hdr-topics-link:         rgba(255,255,255,.75);
  --sa-hdr-topics-link-hover:   var(--white);
  --sa-hdr-topics-item-bg:            rgba(255,255,255,.12);
  --sa-hdr-topics-item-hover-bg:      rgba(255,255,255,.22);
  --sa-hdr-topics-item-border:        rgba(255,255,255,.2);
  --sa-hdr-topics-item-border-hover:  rgba(255,255,255,.4);
  --sa-hdr-topics-active-bg:    var(--white);
  --sa-hdr-topics-active-color: var(--brand);
  position: sticky;
  top: var(--sa-header-h);
  z-index: 190;
  background: linear-gradient(135deg, var(--sa-hdr-topics-bg1), var(--sa-hdr-topics-bg2));
  overflow: clip; /* clipe sans casser le sticky */
}
.skin-a .sa-topics-bar__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: safe center; /* centré quand tout tient → flex-start auto si overflow */
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.skin-a .sa-topics-bar__list { display: flex; align-items: center; gap: 8px; white-space: nowrap; flex-shrink: 0; list-style: none; margin: 0; padding: 0; }
.skin-a .sa-topics-bar__inner::-webkit-scrollbar { display: none; }
/* Loupe dans la topics bar */
.skin-a .sa-topics-bar__search {
  margin-left: auto;
  flex-shrink: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: rgba(255,255,255,.75);
  padding: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  transition: color var(--transition), background var(--transition);
}
.skin-a .sa-topics-bar__search:hover,
.skin-a .sa-topics-bar__search[aria-expanded="true"] {
  color: var(--white);
  background: rgba(255,255,255,.15);
}
.skin-a .sa-topics-bar__inner li { list-style: none; flex-shrink: 0; }
.skin-a .sa-topic,
.skin-a .sa-topics-bar__inner li > a {
  display: inline-flex;
  align-items: center;
  padding: 6px 16px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 600;
  color: var(--sa-hdr-topics-link);
  background: var(--sa-hdr-topics-item-bg);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  border: 1.5px solid var(--sa-hdr-topics-item-border);
  transition: background var(--transition), color var(--transition), border-color var(--transition);
}
.skin-a .sa-topic:hover,
.skin-a .sa-topics-bar__inner li > a:hover {
  background: var(--sa-hdr-topics-item-hover-bg);
  color: var(--sa-hdr-topics-link-hover);
  border-color: var(--sa-hdr-topics-item-border-hover);
}
.skin-a .sa-topic.is-active,
.skin-a .sa-topics-bar__inner .current-menu-item > a {
  background: var(--sa-hdr-topics-active-bg);
  color: var(--sa-hdr-topics-active-color);
  border-color: var(--sa-hdr-topics-active-bg);
  font-weight: 700;
}

/* Archive body : feed + sidebar */
.skin-a .sa-archive-body {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px 72px;
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 48px;
  align-items: start;
}
.skin-a .sa-archive-body--nosidebar { grid-template-columns: 1fr; }
.skin-a .sa-archive-body--nosidebar .sa-archive-aside { display: none; }
.skin-a .sa-archive-aside { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 20px; }
/* sa-grid inside the feed: no autonomous max-width, parent handles centering */
.skin-a .sa-archive-feed .sa-grid { max-width: none; padding-left: 0; padding-right: 0; }

/* Grille articles */
.skin-a .sa-grid {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px 32px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
/* Card principale (featured) */
.skin-a .sa-grid .sa-card--hero {
  grid-column: span 3;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
}
.skin-a .sa-card,
.skin-a .sa-rcard {
  --sa-card-bg:          var(--white);
  --sa-card-border:      var(--ink-100);
  --sa-card-title:       var(--ink-900);
  --sa-card-text:        var(--ink-500);
  --sa-card-cat:         var(--brand);
  --sa-card-cat-bg:      var(--brand-soft);
  --sa-card-cat-hover:   #ffffff;
  --sa-card-cat-bg-hover:var(--brand);
  --sa-card-meta:        var(--ink-300);
  --sa-card-read:        var(--brand);
}
.skin-a .sa-card {
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--sa-card-bg);
  border: 1px solid var(--sa-card-border);
  transition: box-shadow var(--transition);
}
.skin-a .sa-card:hover { box-shadow: var(--shadow-lg); }
.skin-a .sa-card__img-wrap { position: relative; overflow: hidden; height: 200px; }
.skin-a .sa-card__img-wrap a { display: block; height: 100%; overflow: hidden; }
.skin-a .sa-card--hero .sa-card__img-wrap { height: auto; min-height: 340px; }
.skin-a .sa-card__img { width: 100%; height: 200px; object-fit: cover; display: block; }
.skin-a .sa-card--hero .sa-card__img { height: 100%; min-height: 340px; }
.skin-a .sa-card__body { padding: 20px 22px 22px; }
.skin-a .sa-card--hero .sa-card__body { padding: 40px 44px; display: flex; flex-direction: column; justify-content: center; }
.skin-a .sa-card__cat { font-size: 10px; font-weight: 700; color: var(--sa-card-cat); background: var(--sa-card-cat-bg); letter-spacing: .1em; text-transform: uppercase; display: inline-block; align-self: flex-start; margin-bottom: 8px; padding: 3px 10px; border-radius: 50px; text-decoration: none; transition: background var(--transition), color var(--transition); }
.skin-a .sa-card__cat:hover { background: var(--sa-card-cat-bg-hover); color: var(--sa-card-cat-hover); }
.skin-a .sa-card__title { font-family: var(--font-display); font-size: 20px; font-weight: 700; color: var(--sa-card-title); line-height: 1.3; margin-bottom: 10px; }
.skin-a .sa-card--hero .sa-card__title { font-size: clamp(22px, 2.5vw, 34px); margin-bottom: 14px; }
.skin-a .sa-card__title a { color: inherit; transition: color var(--transition); }
.skin-a .sa-card__title a:hover { color: var(--brand); }
.skin-a .sa-card__excerpt { font-size: 14px; color: var(--sa-card-text); line-height: 1.65; margin-bottom: 16px; }
.skin-a .sa-card__meta { font-size: 12px; color: var(--sa-card-meta); display: flex; gap: 12px; align-items: center; }
.skin-a .sa-card__read-more { font-size: 13px; font-weight: 700; color: var(--sa-card-read, var(--brand)); display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; }
.skin-a .sa-card__read-more::after { content: '→'; }

/* Pagination */
/* ── Pagination : Numéros ──────────────────────────────────── */
.skin-a .sa-pagination { padding-top: 32px; }
.skin-a .sa-pagination:not(.sa-pagination--prevnext) .nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}
.skin-a .sa-pagination:not(.sa-pagination--prevnext) a,
.skin-a .sa-pagination:not(.sa-pagination--prevnext) span {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  font-size: 14px;
  font-weight: 600;
  border: 1.5px solid var(--sa-pag-color, #f5e6d0);
  color: var(--sa-pag-color, #f5e6d0);
  outline: none;
  transition: all var(--transition);
}
.skin-a .sa-pagination:not(.sa-pagination--prevnext) a:hover,
.skin-a .sa-pagination:not(.sa-pagination--prevnext) a:focus { border-color: var(--sa-pag-hover-color, #C96B00); color: var(--sa-pag-hover-color, #C96B00); outline: none; }
.skin-a .sa-pagination:not(.sa-pagination--prevnext) span.current { background: var(--sa-pag-active-bg, #C96B00); color: var(--sa-pag-active-color, #ffffff); border-color: var(--sa-pag-active-bg, #C96B00); }
/* ── Pagination : Précédent / Suivant ──────────────────────── */
.skin-a .sa-pagination--prevnext { padding-left: 0; padding-right: 0; }
.skin-a .sa-pagination--prevnext .nav-links {
  display: flex;
  align-items: center;
  width: 100%;
}
/* nav-prev à gauche, nav-next toujours à droite */
.skin-a .sa-pagination--prevnext .nav-next { margin-left: auto; }
/* Style des boutons */
.skin-a .sa-pagination--prevnext .nav-links a {
  display: inline-flex;
  align-items: center;
  padding: 10px 22px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .01em;
  border-radius: var(--radius-md);
  border: 1.5px solid var(--sa-pag-color, #f5e6d0);
  color: var(--sa-pag-color, #f5e6d0);
  outline: none;
  transition: all var(--transition);
}
.skin-a .sa-pagination--prevnext .nav-links a:hover,
.skin-a .sa-pagination--prevnext .nav-links a:focus { border-color: var(--sa-pag-hover-color, #C96B00); color: var(--sa-pag-hover-color, #C96B00); outline: none; }
/* ── Pagination : Charger plus ─────────────────────────────── */
.skin-a .sa-loadmore-wrap { display: flex; justify-content: center; padding: 0 40px 60px; }
.skin-a .sa-loadmore {
  background: var(--sa-loadmore-bg, #C96B00);
  color: var(--sa-loadmore-color, #f5e6d0);
  border: none;
  border-radius: var(--radius-md);
  padding: 14px 40px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: filter var(--transition), opacity var(--transition);
  font-family: var(--font-ui);
  letter-spacing: .01em;
}
.skin-a .sa-loadmore:hover { filter: brightness(1.1); }
.skin-a .sa-loadmore:disabled { opacity: .55; cursor: not-allowed; filter: none; }

/* ══════════════════════════════════════════════════════════════
   STICKY BAR BAS DE PAGE (conversion)
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-bar {
  --sa-bar-bg:             var(--ink-900);
  --sa-bar-text:           rgba(255,255,255,.75);
  --sa-bar-login:          rgba(255,255,255,.55);
  --sa-bar-login-hover:    #ffffff;
  --sa-bar-close:          rgba(255,255,255,.6);
  --sa-bar-close-hover:    #ffffff;
  --sa-bar-cta-bg:         var(--brand);
  --sa-bar-cta-bg2:        var(--brand-mid);
  --sa-bar-cta-color:      var(--white);
  --sa-bar-cta-hover-bg:   #4338ca;
  --sa-bar-cta-hover-bg2:  #6d28d9;
  --sa-bar-text-strong:    #ffffff;
  --sa-bar-text-size:      14px;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 400;
  background: var(--sa-bar-bg);
  transform: translateY(100%);
  transition: transform .35s cubic-bezier(.4,0,.2,1);
}
.skin-a .sa-bar.visible { transform: translateY(0); }
.skin-a .sa-bar__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 14px 40px;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.skin-a .sa-bar__text { color: var(--sa-bar-text); font-size: var(--sa-bar-text-size); flex: 1; }
.skin-a .sa-bar__text strong { color: var(--sa-bar-text-strong); }
.skin-a .sa-bar__actions { display: flex; gap: 12px; align-items: center; }
.skin-a .sa-bar__login { font-size: 14px; font-weight: 600; color: var(--sa-bar-login); transition: color var(--transition); }
.skin-a .sa-bar__login:hover { color: var(--sa-bar-login-hover); }
.skin-a .sa-bar__cta {
  background: linear-gradient(135deg, var(--sa-bar-cta-bg), var(--sa-bar-cta-bg2));
  color: var(--sa-bar-cta-color) !important;
  font-size: 14px;
  font-weight: 700;
  padding: 10px 24px;
  border-radius: var(--radius-sm);
  white-space: nowrap;
  transition: background var(--transition);
  text-decoration: none !important;
}
.skin-a .sa-bar__cta:hover {
  background: linear-gradient(135deg, var(--sa-bar-cta-hover-bg), var(--sa-bar-cta-hover-bg2));
}
.skin-a .sa-bar__close {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  color: var(--sa-bar-close);
  cursor: pointer;
  transition: color var(--transition);
  padding: 0;
}
.skin-a .sa-bar__close:hover { color: var(--sa-bar-close-hover); }

/* ══════════════════════════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════════════════════════ */
.skin-a .sa-footer {
  --sa-ftr-bg:         var(--ink-900);
  --sa-ftr-text:       rgba(255,255,255,.55);
  --sa-ftr-col-h:      rgba(255,255,255,.9);
  --sa-ftr-link:       rgba(255,255,255,.45);
  --sa-ftr-link-hover: var(--white);
  --sa-ftr-sep:        rgba(255,255,255,.08);
  --sa-ftr-btm-link:   rgba(255,255,255,.35);
  --sa-ftr-btm-hover:  rgba(255,255,255,.8);
  background: var(--sa-ftr-bg);
  color: var(--sa-ftr-text);
  padding: 48px 0 28px;
}
.skin-a .sa-footer__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: 200px 1fr 1fr 1fr;
  gap: 40px;
  margin-bottom: 40px;
}
.skin-a .sa-footer__brand .sa-logo { color: var(--white); font-size: 17px; }
.skin-a .sa-footer__brand p { font-size: 13px; line-height: 1.6; margin: 10px 0 0; }
.skin-a .sa-footer__col h4 { font-size: 11px; font-weight: 700; color: var(--sa-ftr-col-h); text-transform: uppercase; letter-spacing: .1em; margin: 0 0 16px; }
.skin-a .sa-footer__col ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.skin-a .sa-footer__col a { color: var(--sa-ftr-link); font-size: 13px; transition: color var(--transition); }
.skin-a .sa-footer__col a:hover { color: var(--sa-ftr-link-hover); }
.skin-a .sa-footer__bottom {
  max-width: 1280px;
  margin: 0 auto;
  padding: 20px 40px 0;
  border-top: 1px solid var(--sa-ftr-sep);
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  flex-wrap: wrap;
  gap: 8px;
}
.skin-a .sa-footer__bottom a { color: var(--sa-ftr-btm-link); transition: color var(--transition); }
.skin-a .sa-footer__bottom a:hover { color: var(--sa-ftr-btm-hover); }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════ */
/* ══ NOSIDEBAR — article pleine largeur centré ═══════════════════════════════════════════════
   Activé par : .sa-body--nosidebar (Customizer ou meta par article)
   ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
*/
.skin-a .sa-body--nosidebar {
  grid-template-columns: 1fr;
}
.skin-a .sa-body--nosidebar .sa-sidebar { display: none; }

/* ═══ ARCHIVE — Layout Liste ═══════════════════════════════ */
.skin-a .sa-grid--list {
  grid-template-columns: 1fr;
  max-width: 860px;
  margin-left: auto; margin-right: auto;
  gap: 20px;
}
.skin-a .sa-grid--list .sa-card {
  display: flex; flex-direction: row;
}
.skin-a .sa-grid--list .sa-card--hero {
  grid-column: span 1;
  flex-direction: row;
}
.skin-a .sa-grid--list .sa-card__img-wrap {
  width: 260px; flex-shrink: 0;
  height: auto; /* override the default fixed 200px so flex-stretch works */
}
.skin-a .sa-grid--list .sa-card__img-wrap a { height: 100%; }
.skin-a .sa-grid--list .sa-card__img { width: 100%; height: 100%; min-height: 160px; object-fit: cover; }
.skin-a .sa-grid--list .sa-card__body {
  padding: 20px 24px; flex: 1;
  display: flex; flex-direction: column; justify-content: center;
}
.skin-a .sa-grid--list .sa-card__excerpt { display: block; }
.skin-a .sa-grid--list .sa-card__read-more { display: inline-flex; }

@media (max-width: 1100px) {
  .skin-a .sa-sidebar { position: static; }
  .skin-a .sa-grid { grid-template-columns: repeat(2, 1fr); }
  .skin-a .sa-grid--list { grid-template-columns: 1fr; } /* keep list in 1 column */
  .skin-a .sa-grid--list .sa-card__img-wrap { width: 200px; } /* narrower image in constrained feed */
  .skin-a .sa-grid .sa-card--hero { grid-column: span 2; }
  .skin-a .sa-related__grid { grid-template-columns: repeat(2, 1fr); }
  .skin-a .sa-footer__inner { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
  .skin-a .sa-header__inner,
  .skin-a .sa-archive-header,
  .skin-a .sa-pagination,
  .skin-a .sa-related,
  .skin-a .sa-footer__inner,
  .skin-a .sa-footer__bottom { padding-left: 20px; padding-right: 20px; }
  .skin-a .sa-topics-bar__inner { padding-left: 20px; padding-right: 20px; /* espace pour le fade AVANT 48px pour padding-right */ }
  /* Fade hint droite — indique qu'il y a plus d'items */
  .skin-a .sa-topics-bar::after {
    content: '';
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 48px;
    background: linear-gradient(to right, transparent, var(--sa-hdr-topics-bg2));
    pointer-events: none;
    z-index: 1;
  }
  .skin-a .sa-grid { padding-left: 0; padding-right: 0; }
  .skin-a .sa-body { padding: 32px 20px 48px; grid-template-columns: 1fr; gap: 32px; }
  .skin-a .sa-archive-body { padding: 0 20px 48px; grid-template-columns: 1fr; gap: 32px; }
  .skin-a .sa-archive-aside { position: static; }
  .skin-a .sa-hero__content { padding: 0 20px 36px; }
  .skin-a .sa-nav { display: none; }
  .skin-a .sa-login { display: none; }
  .skin-a .sa-grid { grid-template-columns: 1fr; }
  .skin-a .sa-grid .sa-card--hero { grid-column: span 1; grid-template-columns: 1fr; }
  .skin-a .sa-card--hero .sa-card__img { min-height: 220px; }
  .skin-a .sa-grid--list .sa-card { flex-direction: column; }
  .skin-a .sa-grid--list .sa-card__img-wrap { width: 100%; height: 220px; }
  .skin-a .sa-related__grid { grid-template-columns: 1fr; }
  .skin-a .sa-proscons { grid-template-columns: 1fr; }
  .skin-a .sa-footer__inner { grid-template-columns: 1fr; }
  .skin-a .sa-bar__text { display: none; }
  .skin-a .sa-bar__inner { position: relative; padding-right: 48px; }
  .skin-a .sa-bar__close { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); }
}
@media (max-width: 480px) {
  .skin-a .sa-hero { min-height: 320px; max-height: 420px; }
  .skin-a .sa-hero__title { font-size: 26px; }
  .skin-a .sa-midcta { padding: 1.6em; }
  .skin-a .sa-stats { grid-template-columns: repeat(2, 1fr); }
  .skin-a .sa-bar__login { display: none; }
  .skin-a .sa-bar__actions { justify-content: center; }
  .skin-a .sa-bar__inner { position: relative; padding-left: 16px; padding-right: 48px; }
  .skin-a .sa-bar__close { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); }
}
