/*
Theme Name: Slateways Type B
Theme URI: https://slateways.fr
Author: Slateways
Author URI: https://slateways.fr
Description: Theme blog Type B. Le chrome (header/footer/logo/boutons) est delegue au styles.css du front (classes .main-header/.main-footer partagees) pour un rendu pixel-identique ; le theme ne style que le specifique blog (barre categories, hero, listing, article, sidebar, pagination) en consommant les tokens du front avec fallbacks.
Version: 1.6.0
Requires at least: 6.0
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: slateways-typeb
*/

/* ============================================================================
   SOMMAIRE
   1. Base & layout     2. Barre categories     3. Hero blog + breadcrumb
   4. Listing articles  5. Article (single)     6. Pagination
   7. Utilities         8. Responsive (mobile-first ; 768px ; 1024px)
   Chrome (header/footer/logo/btn) = styles.css du front. Ici : specifique blog.
   Convention : tokens du front en var(--x, fallback). Mobile-first.
   ============================================================================ */

/* ============================================================================
   1. BASE & LAYOUT
   ============================================================================ */
body {
    font-family: var(--font-body, 'IBM Plex Serif', sans-serif);
    color: var(--dark-color, #1F3A4D);
    background: var(--light-color, #F7F4EE);
    line-height: 1.6;
    margin: 0;
}
.container {
    width: 100%;
    max-width: var(--max-width, 1200px);
    margin: 0 auto;
    padding: 0 1.25rem;
    box-sizing: border-box;
}
.section { padding: 2.5rem 0; }
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading, 'Archivo', sans-serif);
    color: var(--dark-color, #1F3A4D);
    line-height: 1.25;
}
a {
    color: var(--primary-color, #D2542F);
    text-decoration: none;
    transition: color var(--transition-fast, .2s ease);
}
a:hover { color: var(--primary-hover, #B8451F); }
img { max-width: 100%; height: auto; }

/* ============================================================================
   2. BARRE CATEGORIES (specifique blog ; absente du front)
   ============================================================================ */
.blog-categories {
    background: var(--white, #FFFFFF);
    border-bottom: 1px solid var(--gray-200, #DCD5C9);
}
.category-pills {
    display: flex;
    gap: .6rem;
    max-width: var(--max-width, 1200px);
    margin: 0 auto;
    padding: .85rem 1.25rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.category-pills::-webkit-scrollbar { display: none; }
.category-pill {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .45rem .95rem;
    border-radius: 99px;
    font-size: .85rem;
    font-weight: 600;
    font-family: var(--font-heading, 'Archivo', sans-serif);
    color: var(--gray-800, #12252F);
    background: var(--gray-100, #EFEAE1);
    border: 1px solid var(--gray-200, #DCD5C9);
    white-space: nowrap;
    transition: all var(--transition-fast, .2s ease);
}
.category-pill:hover {
    color: var(--primary-color, #D2542F);
    border-color: var(--primary-color, #D2542F);
}
.category-pill.active {
    color: var(--white, #FFFFFF);
    background: var(--primary-color, #D2542F);
    border-color: var(--primary-color, #D2542F);
}
@media (min-width: 768px) {
    .category-pills { padding: 1rem 1.5rem; flex-wrap: wrap; justify-content: center; }
}

/* ============================================================================
   3. HERO BLOG + BREADCRUMB
   ============================================================================ */
.guide-hero {
    background: linear-gradient(135deg, var(--primary-hover, #B8451F), var(--primary-color, #D2542F));
    color: var(--white, #FFFFFF);
    padding: 2.75rem 0;
}
.guide-hero .container { width: 100%; }
.guide-hero h1 { color: var(--white, #FFFFFF); font-size: 1.9rem; margin: .4rem 0 0; }
.breadcrumb {
    display: flex; flex-wrap: wrap; align-items: center; gap: .4rem;
    font-size: .82rem; color: rgba(255, 255, 255, .8); margin-bottom: .4rem;
}
.breadcrumb a { color: rgba(255, 255, 255, .9); }
.breadcrumb a:hover { color: var(--white, #FFFFFF); text-decoration: underline; }
.breadcrumb-sep { opacity: .6; }
.guide-hero-meta {
    display: flex; flex-wrap: wrap; gap: 1rem; margin-top: .9rem;
    font-size: .88rem; color: rgba(255, 255, 255, .9);
}
.guide-hero-meta span { display: inline-flex; align-items: center; gap: .35rem; }

/* ============================================================================
   4. LISTING ARTICLES (cards)
   ============================================================================ */
.cards-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
.guide-card {
    display: flex; flex-direction: column;
    background: var(--white, #FFFFFF);
    border: 1px solid var(--gray-200, #DCD5C9);
    border-radius: var(--radius-md, 12px);
    overflow: hidden;
    box-shadow: var(--shadow-sm, 0 2px 8px rgba(0,0,0,.04));
    transition: transform var(--transition-fast, .2s ease), box-shadow var(--transition-fast, .2s ease);
}
.guide-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md, 0 10px 30px rgba(0,71,110,.08)); }
.guide-card-img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.guide-card-body { display: flex; flex-direction: column; gap: .6rem; padding: 1.1rem 1.2rem 1.3rem; flex: 1; }
.guide-card-difficulty {
    display: inline-flex; align-items: center; gap: .35rem; align-self: flex-start;
    font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em;
    color: var(--primary-color, #D2542F); background: var(--gray-100, #EFEAE1);
    padding: .25rem .6rem; border-radius: 99px;
}
.guide-card-title { font-family: var(--font-heading, 'Archivo', sans-serif); font-size: 1.15rem; margin: 0; line-height: 1.3; }
.guide-card-title a { color: var(--dark-color, #1F3A4D); }
.guide-card-title a:hover { color: var(--primary-color, #D2542F); }
.guide-card-desc { color: var(--gray-600, #6B7A85); font-size: .92rem; margin: 0; flex: 1; }
.guide-card-footer {
    display: flex; align-items: center; justify-content: space-between;
    margin-top: .4rem; padding-top: .8rem; border-top: 1px solid var(--gray-100, #EFEAE1);
}
.guide-card-time { display: inline-flex; align-items: center; gap: .35rem; font-size: .82rem; color: var(--gray-600, #6B7A85); }
.card-read-more { display: inline-flex; align-items: center; gap: .3rem; font-weight: 600; font-size: .88rem; color: var(--primary-color, #D2542F); }
.card-read-more:hover { gap: .5rem; }

/* ============================================================================
   5. ARTICLE (single) : layout + corps + sidebar
   ============================================================================ */
.guide-layout { display: grid; grid-template-columns: 1fr; gap: 2rem; padding: 2.5rem 1.25rem; }
.guide-content { min-width: 0; font-size: 1rem; color: var(--dark-light, #46606F); line-height: 1.75; }
.guide-content > *:first-child { margin-top: 0; }
.guide-content h2 { font-family: var(--font-heading, 'Archivo', sans-serif); font-size: 1.6rem; margin: 2rem 0 .8rem; color: var(--dark-color, #1F3A4D); }
.guide-content h3 { font-family: var(--font-heading, 'Archivo', sans-serif); font-size: 1.3rem; margin: 1.6rem 0 .6rem; color: var(--dark-color, #1F3A4D); }
.guide-content h4 { font-size: 1.08rem; font-weight: 700; margin: 1.3rem 0 .5rem; color: var(--dark-color, #1F3A4D); }
.guide-content p { margin: 0 0 1.1rem; }
.guide-content a { color: var(--primary-color, #D2542F); text-decoration: underline; text-underline-offset: 2px; }
.guide-content a:hover { color: var(--primary-hover, #B8451F); }
.guide-content ul, .guide-content ol { margin: 0 0 1.2rem 1.4rem; padding-left: .4rem; }
.guide-content li { margin-bottom: .45rem; }
.guide-content strong { color: var(--dark-color, #1F3A4D); }
.guide-content blockquote {
    margin: 1.5rem 0; padding: .9rem 1.3rem;
    border-left: 4px solid var(--secondary-color, #1F3A4D);
    background: var(--gray-100, #EFEAE1); border-radius: var(--radius-sm, 6px);
    color: var(--gray-600, #6B7A85); font-style: italic;
}
.guide-content blockquote p:last-child { margin-bottom: 0; }
.guide-content img { border-radius: var(--radius-md, 12px); margin: 1.5rem 0; }
.guide-content figure { margin: 1.5rem 0; }
.guide-content figure img { margin: 0; }
.guide-content figcaption { font-size: .82rem; color: var(--gray-600, #6B7A85); text-align: center; margin-top: .5rem; }
.guide-content table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; font-size: .92rem; border: 1px solid var(--gray-200, #DCD5C9); }
.guide-content th, .guide-content td { padding: .65rem .9rem; border: 1px solid var(--gray-200, #DCD5C9); text-align: left; vertical-align: top; }
.guide-content th { background: var(--gray-100, #EFEAE1); color: var(--dark-color, #1F3A4D); font-weight: 700; font-family: var(--font-heading, 'Archivo', sans-serif); }
.guide-content tbody tr:nth-child(even) td { background: var(--light-color, #F7F4EE); }
.guide-content code { background: var(--gray-100, #EFEAE1); padding: .12rem .4rem; border-radius: var(--radius-sm, 6px); font-size: .9em; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: var(--primary-hover, #B8451F); }
.guide-content pre { background: var(--dark-color, #1F3A4D); color: #fff; padding: 1.1rem 1.2rem; border-radius: var(--radius-md, 12px); overflow: auto; margin: 1.5rem 0; }
.guide-content pre code { background: none; color: inherit; padding: 0; }
.guide-content hr { border: 0; border-top: 1px solid var(--gray-200, #DCD5C9); margin: 2rem 0; }
.guide-sidebar { min-width: 0; }
.guide-sidebar-card { background: var(--white, #FFFFFF); border: 1px solid var(--gray-200, #DCD5C9); border-radius: var(--radius-md, 12px); padding: 1.3rem; box-shadow: var(--shadow-sm, 0 2px 8px rgba(0,0,0,.04)); }
.guide-sidebar-card h4 { font-family: var(--font-heading, 'Archivo', sans-serif); font-size: 1.05rem; margin: 0 0 1rem; padding-bottom: .6rem; border-bottom: 2px solid var(--gray-200, #DCD5C9); }
.sidebar-list { display: flex; flex-direction: column; gap: .2rem; }
.sidebar-list a { display: flex; align-items: flex-start; gap: .5rem; padding: .55rem 0; font-size: .9rem; color: var(--dark-light, #46606F); border-bottom: 1px solid var(--gray-100, #EFEAE1); line-height: 1.4; }
.sidebar-list a:last-child { border-bottom: none; }
.sidebar-list a:hover { color: var(--primary-color, #D2542F); }
.sidebar-list a [data-lucide] { flex-shrink: 0; margin-top: 2px; color: var(--secondary-hover, #2C5064); }

/* --- Image vedette (featured image, sous le hero) --- */
.featured-image-wrap { max-width: var(--max-width, 1200px); margin: 0 auto; padding: 1.5rem 1.25rem 0; }
.featured-image-wrap img, .featured-image {
    width: 100%; height: 250px; object-fit: cover;
    border-radius: var(--radius-md, 12px); display: block;
}
@media (min-width: 1024px) { .featured-image-wrap img, .featured-image { height: 400px; } }

/* --- Embeds responsives (YouTube/oEmbed dans le corps d'article) --- */
.guide-content .wp-block-embed { margin: 1.5rem 0; }
.guide-content iframe {
    width: 100%; aspect-ratio: 16 / 9; height: auto;
    border: 0; border-radius: var(--radius-md, 12px); display: block;
}
.guide-content .wp-block-embed iframe { margin: 0; }

/* ============================================================================
   6. PAGINATION (the_posts_pagination)
   ============================================================================ */
.navigation.pagination { padding: 1.5rem 0 .5rem; }
.navigation.pagination .nav-links { display: flex; flex-wrap: wrap; gap: .4rem; justify-content: center; }
.navigation.pagination .page-numbers {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 40px; height: 40px; padding: 0 .6rem;
    border: 1px solid var(--gray-200, #DCD5C9); border-radius: var(--radius-sm, 6px);
    color: var(--dark-color, #1F3A4D); font-weight: 600; background: var(--white, #FFFFFF);
}
.navigation.pagination .page-numbers:hover { border-color: var(--primary-color, #D2542F); color: var(--primary-color, #D2542F); }
.navigation.pagination .page-numbers.current { background: var(--primary-color, #D2542F); border-color: var(--primary-color, #D2542F); color: var(--white, #FFFFFF); }

/* ============================================================================
   7. UTILITIES
   ============================================================================ */
.reveal-on-scroll { opacity: 0; transform: translateY(16px); transition: opacity .5s ease, transform .5s ease; }
.reveal-on-scroll.revealed { opacity: 1; transform: none; }

/* ============================================================================
   8. RESPONSIVE (mobile-first ; tablette 768px ; desktop 1024px)
   ============================================================================ */
@media (min-width: 768px) {
    .container { padding: 0 1.5rem; }
    .section { padding: 3rem 0; }
    .guide-hero { padding: 3.25rem 0; }
    .guide-hero h1 { font-size: 2.3rem; }
    .cards-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
    .cards-grid { grid-template-columns: repeat(3, 1fr); }
    .guide-layout { grid-template-columns: minmax(0, 1fr) 320px; gap: 2.75rem; padding: 3rem 1.5rem; }
    .guide-sidebar-card { position: sticky; top: 88px; }
    .guide-hero h1 { font-size: 2.5rem; }
}

/* ===== ENVELOPPE DE CONFIANCE — bloc auteur, méthode, sommaire, journal ===== */
.author-card{display:flex;gap:18px;align-items:flex-start;margin:0 0 30px;padding:20px;background:var(--fill,#EFEAE1);border-left:3px solid var(--primary,#D2542F)}
.author-card .author-img{width:64px;height:64px;border-radius:50%;display:block}
.author-card-lg .author-img{width:104px;height:104px}
.author-name{margin:0;font-family:var(--font-heading,Archivo),sans-serif;font-size:16px;font-weight:700;line-height:1.3}
.author-name a{color:var(--text-strong,#12252F);text-decoration:none}
.author-name a:hover{color:var(--primary,#D2542F)}
.author-job{display:block;margin-top:2px;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted,#6B7A85)}
.author-legit{margin:10px 0 0;font-size:14px;font-weight:600;color:var(--text-strong,#12252F)}
.author-bio,.author-bio-full{margin:8px 0 0;font-size:14px;line-height:1.55;color:var(--text-secondary,#46606F)}
.author-links{margin:10px 0 0;font-size:13px}
.author-links a{color:var(--primary,#D2542F);font-weight:700}
.method-note{margin:0 0 30px;padding:16px 18px;background:var(--callout-bg,#FBF0EA);border:1px solid var(--callout-border,#E7C7B7);border-left:3px solid var(--primary,#D2542F)}
.method-note-title{margin:0 0 6px;font-family:var(--font-heading,Archivo),sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--callout-text,#8A3417)}
.method-note p:last-child{margin:0;font-size:14px;line-height:1.6;color:var(--callout-text,#8A3417)}
.update-log{margin:36px 0 0;padding:18px 20px;border-top:2px solid var(--secondary,#1F3A4D);background:var(--fill,#EFEAE1)}
.update-log-title{margin:0 0 8px;font-family:var(--font-heading,Archivo),sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted,#6B7A85)}
.update-log ul{margin:0;padding:0;list-style:none}
.update-log li{padding:5px 0;font-size:13.5px;line-height:1.5;color:var(--text-secondary,#46606F);border-bottom:1px solid var(--border,#DCD5C9)}
.update-log li:last-child{border-bottom:0}
.update-log time{font-family:var(--font-mono,monospace);font-weight:600;color:var(--text-strong,#12252F)}
.pillar-link{margin:26px 0 0;padding:16px 18px;background:var(--secondary,#1F3A4D);color:#fff;font-size:15px}
.pillar-link span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1.2px;opacity:.75;margin-bottom:4px}
.pillar-link a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.author-post-list a small{display:block;margin-top:2px;font-size:11px;color:var(--text-muted,#6B7A85)}
@media(max-width:640px){.author-card{flex-direction:column;gap:12px;padding:16px}.author-card .author-img{width:56px;height:56px}}

/* ===== SOMMAIRE ez-toc — alignement sur la DA « carnet de métré » =====
   Sélecteurs ancrés sur #ez-toc-container (id) pour passer devant la feuille
   du plugin quel que soit l'ordre d'enqueue. */
#ez-toc-container{background:var(--surface,#fff);border:1px solid var(--border,#DCD5C9);border-left:3px solid var(--primary,#D2542F);border-radius:0;box-shadow:none;padding:20px 22px;margin:0 0 32px;width:100%;font-family:var(--font-body,'IBM Plex Serif'),Georgia,serif}
#ez-toc-container .ez-toc-title-container{margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:12px}
#ez-toc-container .ez-toc-title{margin:0;font-family:var(--font-heading,Archivo),sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted,#6B7A85)}
#ez-toc-container .ez-toc-title-toggle{line-height:0}
#ez-toc-container .ez-toc-btn,#ez-toc-container .ez-toc-btn-default{background:none;border:0;box-shadow:none;padding:0;color:var(--text-muted,#6B7A85)}
#ez-toc-container svg{fill:var(--primary,#D2542F)!important;color:var(--primary,#D2542F)!important;width:17px;height:17px}
#ez-toc-container nav>ul,#ez-toc-container ul.ez-toc-list{margin:0;padding:0;list-style:none}
#ez-toc-container ul.ez-toc-list ul{margin:0;padding-left:22px;list-style:none}
#ez-toc-container li{margin:0;padding:5px 0;font-size:14px;line-height:1.45}
#ez-toc-container li li{font-size:13px}
#ez-toc-container a,#ez-toc-container a.ez-toc-link,#ez-toc-container a:visited{color:var(--secondary,#1F3A4D);text-decoration:none;box-shadow:none;font-weight:600}
#ez-toc-container li li a{font-weight:400;color:var(--text-secondary,#46606F)}
#ez-toc-container a:hover,#ez-toc-container a:focus{color:var(--primary,#D2542F);text-decoration:underline;text-underline-offset:3px}
#ez-toc-container a.ez-toc-link.ez-toc-heading-highlight,#ez-toc-container .ez-toc-link.active{color:var(--primary,#D2542F);font-weight:700}
/* Numérotation : chiffres tabulaires, à l'accent, comme le reste du site. */
#ez-toc-container.ez-toc-counter nav ul li a::before,#ez-toc-container .eztoc-toggle-counter::before{font-family:var(--font-mono,ui-monospace),monospace;font-size:12px;font-weight:500;color:var(--primary,#D2542F);margin-right:8px}
/* Le plugin propose des jeux de couleurs : on neutralise celui qui est actif. */
#ez-toc-container.ez-toc-grey,#ez-toc-container.ez-toc-light-blue,#ez-toc-container.ez-toc-white{background:var(--surface,#fff)}
@media(max-width:640px){#ez-toc-container{padding:16px 18px}}

/* ===== PAGE AUTEUR ===== */
.author-monogram{display:inline-grid;place-items:center;border-radius:50%;background:var(--secondary,#1F3A4D);color:var(--white,#fff);font-family:var(--font-heading,Archivo),sans-serif;font-weight:700;font-size:.4em;letter-spacing:.5px;flex:0 0 auto}
.author-hero .author-kicker{margin:0 0 4px;font-family:var(--font-heading,Archivo),sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px;color:var(--primary,#D2542F)}
.author-hero .author-punch{margin:14px 0 0;max-width:620px;font-family:var(--font-heading,Archivo),sans-serif;font-size:clamp(17px,2vw,21px);line-height:1.35;color:var(--text-secondary,#46606F)}
.author-page{padding-bottom:56px}
.author-intro{display:grid;grid-template-columns:132px 1fr;gap:32px;align-items:start;padding:34px 0;border-bottom:1px solid var(--border,#DCD5C9)}
.author-intro p{margin:0 0 12px;font-size:15.5px;line-height:1.6;color:var(--text-secondary,#46606F)}
.author-intro .author-lede{font-size:17px;color:var(--text-strong,#12252F)}
.author-stats{display:flex!important;flex-wrap:wrap;gap:10px 28px;margin:18px 0 0!important;font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted,#6B7A85)}
.author-stats b{display:block;font-family:var(--font-mono,monospace);font-size:24px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--primary,#D2542F)}
.author-block{padding:34px 0;border-bottom:1px solid var(--border,#DCD5C9)}
.author-block:last-child{border-bottom:0}
.author-block>h2{margin:0 0 18px;font-family:var(--font-heading,Archivo),sans-serif;font-size:clamp(20px,2.3vw,25px);letter-spacing:-.5px;color:var(--text-strong,#12252F)}
.author-checks{counter-reset:ck;list-style:none;margin:0;padding:0;max-width:820px}
.author-checks li{counter-increment:ck;position:relative;padding:13px 0 13px 42px;border-bottom:1px solid var(--border,#DCD5C9);font-size:15px;line-height:1.55;color:var(--text-secondary,#46606F)}
.author-checks li:last-child{border-bottom:0}
.author-checks li::before{content:"0" counter(ck);position:absolute;left:0;top:14px;font-family:var(--font-mono,monospace);font-size:13px;font-weight:600;color:var(--primary,#D2542F)}
.author-checks b{color:var(--text-strong,#12252F)}
.author-scope{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.author-scope>div{padding:20px 22px;background:var(--surface,#fff);border:1px solid var(--border,#DCD5C9)}
.author-scope .scope-no{background:var(--fill,#EFEAE1)}
.scope-label{margin:0 0 10px;font-family:var(--font-heading,Archivo),sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted,#6B7A85)}
.author-scope ul{margin:0;padding:0;list-style:none}
.author-scope li{position:relative;padding:7px 0 7px 20px;font-size:14px;line-height:1.5;color:var(--text-secondary,#46606F)}
.author-scope .scope-yes li::before{content:"";position:absolute;left:0;top:15px;width:9px;height:2px;background:var(--primary,#D2542F)}
.author-scope .scope-no li::before{content:"×";position:absolute;left:0;top:6px;font-weight:700;color:var(--text-muted,#6B7A85)}
.author-rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.author-rules>div{padding:18px 20px;border-top:2px solid var(--secondary,#1F3A4D);font-size:14.5px;line-height:1.55;color:var(--text-secondary,#46606F)}
.author-rules b{display:block;margin-bottom:6px;font-family:var(--font-heading,Archivo),sans-serif;color:var(--text-strong,#12252F)}
.author-indep p{max-width:820px;font-size:15px;line-height:1.6;color:var(--text-secondary,#46606F)}
.author-indep a{color:var(--primary,#D2542F);font-weight:600}
.author-cat{display:flex;align-items:baseline;gap:10px;margin:24px 0 8px;font-family:var(--font-heading,Archivo),sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1.1px}
.author-cat a{color:var(--secondary,#1F3A4D);text-decoration:none}
.author-cat a:hover{color:var(--primary,#D2542F)}
.author-cat span{font-family:var(--font-mono,monospace);font-size:12px;font-weight:400;color:var(--text-muted,#6B7A85)}
@media(max-width:760px){.author-intro{grid-template-columns:1fr;gap:20px}.author-scope{grid-template-columns:1fr}}

/* ===== LOGO du front, repris par le chrome du blog ===== */
.brand .logo-img{display:block;height:38px;width:auto;max-width:190px}
.footer-brand .logo-img{height:46px;max-width:230px}
