/* ============================================================
   BLOG — Jomega Expertise
   Listing (/blog) + gabarit article (/blog/<slug>/)
   S'appuie sur les variables de styles.css (chargé avant)
   ============================================================ */

/* ---------- commun ---------- */
.blog-main{padding-top:0}
.b-eyebrow{color:var(--gold-soft);font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:12.5px}
.grad{background:linear-gradient(120deg,var(--green) 0%,var(--green-mid) 55%,var(--gold) 130%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ============================================================
   1 · PAGE LISTE
   ============================================================ */
.blog-hero{position:relative;overflow:hidden;background:
   radial-gradient(ellipse 70% 90% at 85% -10%,var(--green-tint),transparent 60%),
   radial-gradient(ellipse 50% 70% at 5% 120%,var(--gold-tint),transparent 60%),
   var(--bg-soft);
   padding:64px 0 46px;border-bottom:1px solid var(--rule)}
.blog-hero .container{position:relative;z-index:2}
.blog-hero h1{font-size:clamp(38px,5.4vw,68px);margin:14px 0 0;max-width:14ch}
.blog-hero .bh-lead{margin:20px 0 0;max-width:60ch;color:var(--ink-soft);font-size:clamp(16px,1.5vw,19px);line-height:1.6}
.blog-hero .bh-shape{position:absolute;border:1.5px solid;pointer-events:none}
.bh-s1{width:120px;height:120px;border-color:rgba(200,169,96,.4);top:30px;right:9%;transform:rotate(14deg)}
.bh-s2{width:64px;height:64px;border-color:rgba(31,148,97,.4);bottom:36px;right:24%;border-radius:50%}
@media (max-width:760px){.blog-hero .bh-shape{display:none}}

/* toolbar : filtres + recherche */
.blog-toolbar{position:sticky;top:78px;z-index:30;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);
   border-bottom:1px solid var(--rule)}
.site-header.scrolled ~ .blog-main .blog-toolbar{top:66px}
.blog-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;flex-wrap:wrap}
.blog-chips{display:flex;gap:8px;flex-wrap:wrap}
.b-chip{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--ink-soft);background:none;
   border:1px solid var(--rule);padding:8px 16px;cursor:pointer;transition:.2s var(--ease)}
.b-chip:hover{border-color:var(--green);color:var(--green-deep)}
.b-chip.active{background:var(--green-deep);border-color:var(--green-deep);color:#fff}
.blog-searchwrap{position:relative;flex:0 0 auto}
.blog-search{font-family:var(--font-body);font-size:14.5px;color:var(--ink);background:#fff;border:1px solid var(--rule);
   padding:10px 14px 10px 38px;width:240px;max-width:48vw;transition:border-color .2s}
.blog-search:focus{outline:none;border-color:var(--green)}
.blog-searchwrap svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--ink-muted)}
/* mobile : filtres sur 2 lignes de 3, centrés ; barre de recherche avec marge à gauche */
@media(max-width:640px){
  .blog-tools{gap:14px}
  .blog-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%}
  .b-chip{text-align:center;padding:8px 4px;font-size:12.5px}
  .blog-searchwrap{width:100%;flex:1 1 100%}
  .blog-search{width:calc(100% - 14px);max-width:none;margin-left:14px}
  .blog-searchwrap svg{left:27px}
}

/* grille */
.blog-list-sec{padding:42px 0 90px}
.blog-count{color:var(--ink-muted);font-size:14px;margin:0 0 22px}
.blog-count b{color:var(--green-deep)}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
@media (max-width:1000px){.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.blog-grid{grid-template-columns:1fr}}

.bp-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--rule);
   text-align:left;transition:transform .35s var(--ease),box-shadow .35s,border-color .35s;min-height:230px}
.bp-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}
.bp-top{display:flex;align-items:center;gap:10px;padding:22px 24px 0}
.bp-cat{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green);
   border:1px solid rgba(31,148,97,.3);padding:4px 10px;background:var(--green-soft)}
.bp-card[data-cat="Fiscalité"] .bp-cat{color:var(--gold-soft);border-color:rgba(200,169,96,.35);background:var(--gold-tint)}
.bp-card[data-cat="Patrimoine"] .bp-cat{color:#7a5cc0;border-color:rgba(122,92,192,.3);background:#f3effb}
.bp-card[data-cat="Juridique"] .bp-cat{color:#1f6f94;border-color:rgba(31,111,148,.3);background:#eaf4f9}
.bp-card[data-cat="Social"] .bp-cat{color:#b5604a;border-color:rgba(181,96,74,.3);background:#fbeee9}
.bp-body{padding:14px 24px 0;flex:1}
.bp-body h3{font-size:21px;line-height:1.22;margin:0;color:var(--green-deep);transition:color .2s}
.bp-card:hover .bp-body h3{color:var(--green)}
.bp-ex{margin:12px 0 0;color:var(--ink-soft);font-size:14.5px;line-height:1.55}
.bp-foot{display:flex;align-items:center;justify-content:space-between;padding:18px 24px 22px;margin-top:16px}
.bp-meta{color:var(--ink-muted);font-size:12.5px;letter-spacing:.02em}
.bp-go{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-weight:600;font-size:13.5px}
.bp-card:hover .bp-go{gap:9px}
.blog-empty{display:none;text-align:center;color:var(--ink-muted);padding:60px 0;font-size:16px}
.blog-more{text-align:center;margin:48px 0 0}
.b-more{font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--green-deep);background:none;
   border:1px solid var(--green-deep);padding:14px 34px;cursor:pointer;transition:.22s var(--ease)}
.b-more:hover{background:var(--green-deep);color:#fff}

/* ============================================================
   2 · GABARIT ARTICLE
   ============================================================ */
.art-top{background:var(--bg-soft);border-bottom:1px solid var(--rule);padding:30px 0 40px}
.art-bread{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--ink-muted);margin:0 0 22px}
.art-bread a{color:var(--ink-soft)}
.art-bread a:hover{color:var(--green)}
.art-bread .sep{opacity:.5}
.art-bread .cur{color:var(--green-deep);font-weight:600}
.art-cat{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--green);
   border:1px solid rgba(31,148,97,.3);padding:5px 12px;background:var(--green-soft)}
.art-h1{font-size:clamp(30px,4.4vw,52px);line-height:1.12;margin:16px 0 0;max-width:20ch}
.art-meta{display:flex;align-items:center;gap:18px;margin:20px 0 0;color:var(--ink-muted);font-size:13.5px;flex-wrap:wrap}
.art-meta span{display:inline-flex;align-items:center;gap:7px}
.art-meta svg{color:var(--green)}
.art-draft{display:inline-block;margin:0 0 18px;background:var(--gold-tint);color:var(--gold-soft);border:1px solid rgba(200,169,96,.4);
   padding:8px 16px;font-size:13px;font-weight:600;letter-spacing:.01em}

.art-layout{max-width:var(--container);margin:0 auto;padding:54px 28px 90px;display:grid;
   grid-template-columns:minmax(0,1fr) 300px;gap:60px;align-items:start}
@media (max-width:960px){.art-layout{grid-template-columns:1fr;gap:0;padding-top:40px}}

/* corps */
.art-body{max-width:none;font-size:17.5px;line-height:1.75;color:#243038}
.art-body>p:first-of-type{font-size:20px;line-height:1.62;color:var(--ink);font-family:var(--font-body)}
.art-body p{margin:0 0 22px}
.art-body h2{font-size:clamp(24px,2.6vw,32px);margin:46px 0 16px;scroll-margin-top:120px;position:relative;padding-top:14px}
.art-body h2::before{content:"";position:absolute;top:-4px;left:0;width:46px;height:3px;background:var(--gold)}
.art-body h3{font-size:21px;margin:30px 0 12px;color:var(--green-deep)}
.art-body ul,.art-body ol{margin:0 0 24px;padding-left:0;list-style:none}
.art-body li{position:relative;padding-left:30px;margin:0 0 11px}
.art-body ul li::before{content:"";position:absolute;left:6px;top:11px;width:8px;height:8px;background:var(--green);transform:rotate(45deg)}
.art-body ol{counter-reset:li}
.art-body ol li{counter-increment:li}
.art-body ol li::before{content:counter(li);position:absolute;left:0;top:1px;width:22px;height:22px;background:var(--green-deep);
   color:#fff;font-size:12px;font-weight:700;font-family:var(--font-body);display:flex;align-items:center;justify-content:center}
.art-body a{color:var(--green);font-weight:600;text-decoration:underline;text-decoration-color:rgba(31,148,97,.35);text-underline-offset:3px}
.art-body a:hover{text-decoration-color:var(--green)}
.art-body strong{font-weight:700;color:var(--ink)}
.art-body .art-link-soon{color:var(--ink);font-weight:600;border-bottom:1px dotted var(--rule);cursor:default}
.art-body blockquote{margin:30px 0;padding:22px 26px;background:var(--green-soft);border-left:4px solid var(--green);
   font-family:var(--font-display);font-size:19px;line-height:1.5;color:var(--green-deep)}
.art-body blockquote p{margin:0}
.art-body h2:first-child{margin-top:0}

/* sidebar */
.art-side{position:sticky;top:104px}
@media (max-width:960px){.art-side{position:static;order:-1;margin:0 0 32px}
  .toc-box{margin-bottom:0}}
.toc-box{border:1px solid var(--rule);padding:22px 22px 24px;margin-bottom:24px}
.toc-box h4{font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
   color:var(--ink-muted);margin:0 0 14px}
.toc-box ol{list-style:none;margin:0;padding:0;counter-reset:t}
.toc-box li{counter-increment:t;margin:0 0 2px}
.toc-box a{display:flex;gap:10px;padding:7px 0;color:var(--ink-soft);font-size:14px;line-height:1.4;border-bottom:1px solid transparent;transition:color .2s}
.toc-box a::before{content:counter(t,decimal-leading-zero);color:var(--gold-soft);font-weight:700;font-size:12px;flex:0 0 auto}
.toc-box a:hover,.toc-box a.active{color:var(--green-deep)}
.toc-box a.active{font-weight:600}

.side-cta{background:linear-gradient(155deg,var(--green-deep),var(--green-deepest));color:#fff;padding:26px 24px 28px;position:relative;overflow:hidden}
.side-cta .sc-eyebrow{color:var(--gold);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.side-cta h4{font-family:var(--font-display);color:#fff;font-size:23px;line-height:1.2;margin:12px 0 10px}
.side-cta p{color:rgba(246,241,232,.82);font-size:14px;line-height:1.55;margin:0 0 18px}
.side-cta .btn{width:100%;justify-content:center}

/* related */
.art-related{background:var(--bg-soft);border-top:1px solid var(--rule);padding:64px 0}
.art-related h2{font-size:clamp(24px,3vw,34px);margin:0 0 28px}
.ar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:900px){.ar-grid{grid-template-columns:1fr}}

/* CTA pleine largeur en fin d'article */
.art-endcta{margin:54px 0 4px;background:linear-gradient(150deg,var(--green-deep),var(--green-deepest));color:#fff;
   padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;position:relative;overflow:hidden}
.art-endcta .ae-txt{flex:1;min-width:240px}
.art-endcta .ae-eyebrow{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.art-endcta h3{font-family:var(--font-display);color:#fff;font-size:clamp(24px,2.6vw,30px);line-height:1.18;margin:11px 0 9px}
.art-endcta p{color:rgba(246,241,232,.82);font-size:15px;line-height:1.6;margin:0;max-width:54ch}
.art-endcta .btn{flex:0 0 auto}
.art-endcta .btn-gold{color:#fff;text-decoration:none}
@media (max-width:600px){.art-endcta{padding:30px 24px;gap:22px}}

/* FAQ accordéon dans l'article */
.art-faq{margin:14px 0 8px;border-top:1px solid var(--rule)}
.art-q{border-bottom:1px solid var(--rule)}
.art-q-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;
   background:none;border:none;cursor:pointer;padding:20px 2px;font-family:var(--font-display);
   font-size:19px;line-height:1.3;color:var(--green-deep);transition:color .2s}
.art-q-btn:hover{color:var(--green)}
.art-q-btn span{flex:1}
.art-q-btn .aq-ic{flex:0 0 auto;color:var(--gold-soft);transition:transform .3s var(--ease)}
.art-q.open .art-q-btn .aq-ic{transform:rotate(45deg)}
.art-q-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.art-q-a p{margin:0 0 16px;font-size:16.5px;line-height:1.7;color:#243038}
.art-q-a p:first-child{padding-top:2px}

/* progress bar lecture */
.read-bar{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--green),var(--gold));z-index:9999;transition:width .1s linear}

/* ===== photos articles (v17) ===== */
.art-hero-img{margin:26px 0 0}
.art-hero-img img{width:100%;height:clamp(220px,32vw,380px);object-fit:cover;display:block}
.bp-thumb{width:100%;height:158px;object-fit:cover;display:block}

/* Signature auteur en bas d'article */
.art-author{display:flex;align-items:center;gap:14px;margin:40px 0 6px;padding:16px 20px;border:1px solid var(--rule,#e7e0d2);border-left:3px solid var(--gold,#C8A960);background:var(--bg-soft,#faf7f1);border-radius:10px}
.art-author .aa-avatar{flex:none;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--green,#1F9461),var(--green-deep,#0F2A1F));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display,Prata,serif);font-size:16px;letter-spacing:.5px}
.art-author .aa-info{display:flex;flex-direction:column;line-height:1.4}
.art-author .aa-label{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-muted,#6b7682)}
.art-author .aa-name{font-family:var(--font-display,Prata,serif);font-size:17px;color:var(--green-deep,#0F2A1F)}
.art-author .aa-org{font-size:12.5px;color:var(--ink-soft,#48555f)}
