.page__content p {
	text-align: justify;
}
.anchorjs-link {
  color: inherit !important;
  text-decoration: none !important; /* do not underline */
}
@media (max-width: 768px) {
  /* do not display AnchorJS icon on less than 768px view point */
  .anchorjs-link {
    display: none;
  }
}
*:hover > .anchorjs-link {
  opacity: .75;
  /* To fade links as they appear, change transition-property from 'color' to 'all' */
  /* transition: color .16s linear; */
}
*:hover > .anchorjs-link:hover,
.anchorjs-link:focus {
  text-decoration: none !important; /* do not underline */
  opacity: 1;
}
a[href^="http://"]:after, 
a[href^="https://"]:after {
	content: url(/images/external_link.png);
	margin: 0 0 0 5px;
}
a[href^="https://francois.aichelbaum.com"]:after, 
a[href^="https://dev.aichelbaum.com"]:after {
	content: none;
	margin: 0;
}
.readmore {
	color: #9ba1a6;
}
.list__item .page__meta {
  margin: 0;
}
.archive__item-excerpt {
  text-align: justify;
}
.left {
  float: left;
  margin-right: 50px;
}
.right {
  float: right;
  margin-left: 50px;
}
.cc_banner-wrapper {
    z-index: 9001;
    position: relative
}

.cc_container .cc_btn {
    cursor: pointer;
    text-align: center;
    font-size: 0.6em;
    transition: font-size 200ms;
    line-height: 1em
    float: left;
    margin-right: 20px;
}

.cc_container .cc_message {
    font-size: 0.6em;
    transition: font-size 200ms;
    margin: 0;
    padding: 0;
    line-height: 1.5em
}

.cc_container .cc_logo {
    display: none;
    text-indent: -1000px;
    overflow: hidden;
    width: 100px;
    height: 22px;
    background-size: cover;
    opacity: 0.9;
    transition: opacity 200ms;
    direction: ltr;
}

.cc_container .cc_logo:hover,.cc_container .cc_logo:active {
    opacity: 1
}

@media screen and (min-width: 500px) {
    .cc_container .cc_btn {
        font-size: 0.8em
    }

    .cc_container .cc_message {
        font-size: 0.8em
    }
}

@media screen and (min-width: 768px) {
    .cc_container .cc_btn {
        font-size: 1em
    }

    .cc_container .cc_message {
        font-size: 1em;
        line-height: 1em
    }
}

@media screen and (min-width: 992px) {
    .cc_container .cc_message {
        font-size: 1em
    }
}

@media print {
    .cc_banner-wrapper,.cc_container {
        display: none
    }
}

.cc_container {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    padding: 10px
}

.cc_container .cc_btn {
    padding: 8px 10px;
    background-color: #f1d600;
    cursor: pointer;
    transition: font-size 200ms;
    text-align: center;
    font-size: 0.6em;
    display: block;
    width: 33%;
    margin-left: 10px;
    float: left;
    margin-right: 20px;
    max-width: 120px
}

.cc_container .cc_message {
    transition: font-size 200ms;
    font-size: 0.6em;
    display: block
}

@media screen and (min-width: 500px) {
    .cc_container .cc_btn {
        font-size: 0.8em
    }

    .cc_container .cc_message {
        margin-top: 0.5em;
        font-size: 0.8em
    }
}

@media screen and (min-width: 768px) {
    .cc_container {
        padding: 15px 30px 15px
    }

    .cc_container .cc_btn {
        font-size: 1em;
        padding: 8px 15px
    }

    .cc_container .cc_message {
        font-size: 1em
    }
}

@media screen and (min-width: 992px) {
    .cc_container .cc_message {
        font-size: 1em
    }
}

.cc_container {
    background: #222;
    color: #fff;
    font-size: 17px;
    font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial;
    box-sizing: border-box;
    border: 1px solid black;
}

.cc_container ::-moz-selection {
    background: #ff5e99;
    color: #fff;
    text-shadow: none
}

.cc_container .cc_btn,.cc_container .cc_btn:visited {
    color: #000;
    background-color: #f1d600;
    transition: background 200ms ease-in-out,color 200ms ease-in-out,box-shadow 200ms ease-in-out;
    -webkit-transition: background 200ms ease-in-out,color 200ms ease-in-out,box-shadow 200ms ease-in-out;
    border-radius: 5px;
    -webkit-border-radius: 5px
}

.cc_container .cc_btn:hover,.cc_container .cc_btn:active {
    background-color: #fff;
    color: #000
}

.cc_container a,.cc_container a:visited {
    text-decoration: none;
    color: #ff0000;
    transition: 200ms color
}

.cc_container a:hover,.cc_container a:active {
    color: #ff0000
}

@-webkit-keyframes slideUp {
    0% {
        -webkit-transform: translateY(66px);
        transform: translateY(66px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes slideUp {
    0% {
        -webkit-transform: translateY(66px);
        -ms-transform: translateY(66px);
        transform: translateY(66px)
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.cc_container,.cc_message,.cc_btn {
    animation-duration: 0.8s;
    -webkit-animation-duration: 0.8s;
    -moz-animation-duration: 0.8s;
    -o-animation-duration: 0.8s;
    -webkit-animation-name: slideUp;
    animation-name: slideUp
}
#search_box {
    background-image:url("data:image/png;base64,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");
    background-repeat:no-repeat;
    background-position:left center;
    outline:0;
    padding-left: 55px;
}
#search_results {
    position:absolute;
    z-index:99;
    width: 300%;
    background: #d5d5d5;
    border: 1px solid #000000;
    display: none;
}
#search_results:after, #search_results:before {
    bottom: 100%;
    left: 90px;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

#search_results:after {
    border-color: rgba(213, 213, 213, 0);
    border-bottom-color: #d5d5d5;
    border-width: 10px;
    margin-left: -10px;
}
#search_results:before {
    border-color: rgba(0, 0, 0, 0);
    border-bottom-color: #000000;
    border-width: 11px;
    margin-left: -11px;
}
#search_results > li {
    line-height: 2.5;
    list-style: none;
}
#search_results a {
    color: #494e52;
    font-weight: bold;
    text-decoration: none;
}
#search_results a:hover {
    color: #000;
    text-decoration: underline;
}

/* === Playfair Display + LinkedIn palette === */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&display=swap');

h1, h2, h3, h4, h5,
.archive__item-title,
.page__title,
.site-title,
.masthead__menu-item a {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
}

a {
  color: #821400;
}
a:hover {
  color: #6a1000;
}

/* Éviter de colorier les liens de navigation et auteur qui ont leur propre style */
.masthead a,
.nav__items a,
.author__urls a,
.author__name,
.page__footer a {
  color: inherit;
}
.masthead a:hover,
.nav__items a:hover {
  color: #821400;
}

/* Fix z-index : masthead au-dessus du sidebar sticky (z-index 99) */
.masthead {
  z-index: 200 !important;
}

/* Avatar : carré à coins arrondis au lieu de cercle */
.author__avatar {
  display: block;
}
.author__avatar img {
  border-radius: 8px !important;
  max-width: 120px;
  height: 120px;
  width: 120px;
  object-fit: cover;
  object-position: center top;
}

/* Fix z-index recherche - résultats au-dessus du sidebar */
.masthead,
.masthead__inner-wrap {
  z-index: 200 !important;
  position: relative !important;
}
.greedy-nav {
  position: relative;
  z-index: 250 !important;
}
ul#results,
.search-content {
  position: relative !important;
  z-index: 300 !important;
}

/* Badge Meetergo - meeting */
.meeting-badge {
  position: fixed !important;
  bottom: 20px !important;
  right: 20px !important;
  z-index: 99999 !important;
  background-color: #821400 !important;
  color: #fff !important;
  padding: 10px 18px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-family: inherit !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.25) !important;
  transition: background-color 0.2s !important;
  white-space: nowrap !important;
  display: block !important;
}
.meeting-badge:hover {
  background-color: #6a1000 !important;
  color: #fff !important;
  text-decoration: none !important;
}
.meeting-badge::after {
  content: none !important;
  display: none !important;
}

/* =============================================
   AJOUTS : Terracotta, fond chaud, liens inversés,
   masthead sticky, logos expériences CV
   ============================================= */

/* Fond gris clair chaud (palette LinkedIn banner) */
body {
  background-color: #f5f0ed;
}
.page__content,
.sidebar,
.sidebar__right {
  background-color: transparent;
}

/* TOC layout : grid 2 colonnes pour éviter l'overlap float+sticky */
@media (min-width: 64em) {
  /* Le page__content passe en grid quand il contient un TOC sticky */
  .page__content:has(> .sidebar__right.sticky) {
    display: grid;
    grid-template-columns: 1fr 210px;
    column-gap: 1.5em;
    align-items: start;
    /* cancel float:left + clear:both from main.css */
    float: none;
    clear: none;
    width: 100%;
  }
  /* Tous les enfants directs sauf le TOC → colonne 1 */
  .page__content:has(> .sidebar__right.sticky) > *:not(.sidebar__right) {
    grid-column: 1;
    /* reset float set on page__content children elsewhere */
    float: none;
  }
  /* TOC → colonne 2, sticky */
  .page__content > .sidebar__right.sticky {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    position: sticky;
    top: 4.5em; /* masthead ~4em + small gap */
    float: none;
    clear: none;
    width: auto;
    margin-left: 0;
  }
}

/* TOC active section highlight */
.toc__menu a.toc-active {
  background-color: #821400 !important;
  color: #f5f0ed !important;
  font-weight: bold;
  padding: 0.3em 0.7em;
  display: block;
  border-radius: 2px;
  text-decoration: none !important;
}

/* Liens : rouge par défaut, noir au survol */
a {
  color: #821400 !important;
}
a:hover {
  color: #1a1a1a !important;
  text-decoration: none;
}

/* Titres de posts/archives : idem */
.archive__item-title a,
.page__title a {
  color: #821400 !important;
}
.archive__item-title a:hover,
.page__title a:hover {
  color: #1a1a1a !important;
}

/* Terracotta : dates, meta, tags, section dates CV */
.page__meta,
.page__meta a,
time,
.exp-date {
  color: #b47864;
}
.page__taxonomy-item,
.page__taxonomy-item a {
  border-color: #b47864 !important;
  color: #b47864 !important;
}
.page__taxonomy-item:hover,
.page__taxonomy-item a:hover {
  background-color: #b47864 !important;
  color: #fff !important;
}
blockquote {
  border-left-color: #b47864 !important;
}
/* H3 dans le CV et posts = terracotta */
.page__content h3 {
  color: #b47864;
}

/* Masthead sticky */
.masthead {
  position: sticky !important;
  top: 0 !important;
  z-index: 200 !important;
  box-shadow: 0 1px 6px rgba(0,0,0,0.10);
  background-color: #f5f0ed !important;
}

/* Logos d'expérience dans le CV */
.exp-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 1.2em 0 0.3em;
}
.exp-logo {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px;
  object-fit: contain !important;
  vertical-align: middle;
  border-radius: 3px;
  background: transparent;
  flex-shrink: 0;
}
.exp-header h3 {
  margin: 0 !important;
  line-height: 1.3;
  color: #b47864;
  font-size: 1em;
}


/* =============================================
   CORRECTIONS FINALES
   ============================================= */

/* Masthead + inner-wrap : fond chaud, pas blanc */
.masthead,
.masthead__inner-wrap,
.greedy-nav {
  background-color: #f5f0ed !important;
}

/* Avatar border-radius - sélecteurs ultra-spécifiques pour écraser le 50% du thème */
.sidebar .author__avatar img,
.author__avatar img,
img.author__avatar,
.sidebar img[class*="author__avatar"],
.author__avatar > img {
  border-radius: 8px !important;
  -webkit-border-radius: 8px !important;
}

/* Privateer logo dans la sidebar : petite taille correcte */
.author__urls li a img[src*="privateer-logo"] {
  width: 16px !important;
  height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  display: inline-block !important;
}

/* Tags : pill shape, bordeaux border, fond chaud, texte bordeaux */
.page__taxonomy-item {
  display: inline-block !important;
  border: 1px solid #821400 !important;
  border-radius: 20px !important;
  padding: 2px 10px !important;
  background-color: #f5f0ed !important;
  color: #821400 !important;
  font-size: 0.72em !important;
  line-height: 1.6 !important;
  margin: 2px 3px !important;
  text-decoration: none !important;
}
.page__taxonomy-item a {
  color: #821400 !important;
  text-decoration: none !important;
}
.page__taxonomy-item:hover,
.page__taxonomy-item a:hover {
  background-color: #821400 !important;
  color: #fff !important;
  border-color: #821400 !important;
}

/* Fix recherche : greedy-nav au-dessus du sidebar sticky */
.greedy-nav {
  position: relative !important;
  z-index: 300 !important;
}
.search-content,
ul#results {
  position: relative !important;
  z-index: 400 !important;
  background-color: #f5f0ed !important;
}


/* =============================================
   GEORGIA + HOME LAYOUT + TAG CLEANUP
   ============================================= */

/* Georgia pour les corps de texte */
body,
.page__content p,
.page__content li,
.archive__item-excerpt {
  font-family: Georgia, 'Times New Roman', Times, serif !important;
}

/* Conserver Playfair pour les titres */
h1, h2, h3, h4, h5, h6,
.archive__item-title,
.page__title,
.masthead__menu-item a {
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* Amélioration lisibilité corps */
.page__content p {
  line-height: 1.85 !important;
  max-width: 720px;
}

/* Tags — pill shape propre */
.page__taxonomy-item,
.page__taxonomy-item a,
.taxonomy__section .archive__item .page__meta-sep + a,
.tag-cloud a {
  display: inline-block !important;
  border: 1.5px solid #821400 !important;
  border-radius: 20px !important;
  padding: 3px 12px !important;
  background-color: transparent !important;
  color: #821400 !important;
  font-size: 0.72em !important;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif !important;
  line-height: 1.6 !important;
  margin: 2px 3px !important;
  text-decoration: none !important;
  transition: all 0.15s ease !important;
}
.page__taxonomy-item:hover,
.page__taxonomy-item a:hover {
  background-color: #821400 !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* Home featured post */
.home-featured {
  margin: 2em 0 3em;
  border-bottom: 2px solid #e8ddd8;
  padding-bottom: 2.5em;
}
.home-featured__article {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: ". header" "image body";
  gap: 1em 2em;
  align-items: start;
}
.home-featured__header { grid-area: header; }
.home-featured__image  { grid-area: image; }
.home-featured__body   { grid-area: body; }
@media (max-width: 768px) {
  .home-featured__article {
    grid-template-columns: 1fr;
    grid-template-areas: "header" "image" "body";
  }
}
.home-featured__image img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  border-radius: 4px;
}
.home-featured__meta {
  font-size: 0.78em;
  color: #b47864;
  margin-bottom: 0.5em;
  font-family: -apple-system, sans-serif;
}
.home-featured__title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.6em;
  line-height: 1.3;
  margin: 0 0 0.8em;
  color: #1a1a1a;
}
.home-featured__title a {
  color: #1a1a1a !important;
  text-decoration: none !important;
}
.home-featured__title a:hover { color: #821400 !important; }
.home-featured__excerpt {
  color: #444;
  line-height: 1.7;
  margin-bottom: 1em;
}
.home-featured__cta {
  display: inline-block;
  padding: 8px 20px;
  background: #821400;
  color: #fff !important;
  border-radius: 3px;
  font-size: 0.85em;
  text-decoration: none !important;
}
.home-featured__cta:hover { background: #6a1000; }

/* Grid 4 posts récents */
.home-recent__heading {
  font-size: 0.9em;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #b47864;
  margin: 2em 0 1.2em;
  font-family: -apple-system, sans-serif !important;
}
.home-recent__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5em;
  margin-bottom: 2em;
}
@media (max-width: 600px) {
  .home-recent__grid { grid-template-columns: 1fr; }
}
.home-recent__item {
  border: 1px solid #e8ddd8;
  border-radius: 4px;
  overflow: hidden;
  background: #fff;
}
.home-recent__thumb img {
  width: 100%;
  height: 140px;
  object-fit: cover;
  display: block;
}
.home-recent__body {
  padding: 0.9em 1em 1em;
}
.home-recent__body time {
  font-size: 0.72em;
  color: #b47864;
  font-family: -apple-system, sans-serif;
}
.home-recent__body h3 {
  font-size: 0.95em;
  margin: 0.3em 0 0.5em;
  line-height: 1.4;
  color: #1a1a1a !important;
}
.home-recent__body h3 a {
  color: #1a1a1a !important;
  text-decoration: none !important;
}
.home-recent__body h3 a:hover { color: #821400 !important; }
.home-recent__body p {
  font-size: 0.82em;
  color: #555;
  line-height: 1.6;
  margin: 0;
  max-width: none !important;
}
.home-more {
  text-align: center;
  padding: 1em 0 2em;
}
.home-more__link {
  font-size: 0.85em;
  color: #821400 !important;
  border-bottom: 1px solid #821400;
  text-decoration: none !important;
  padding-bottom: 2px;
}


/* =============================================
   FIX FINAL : a.tag (home + archives) + search
   ============================================= */

/* Tags dans home page et archive-single : a.tag */
a.tag,
ul.tags li a,
ul.tags a {
  display: inline-block !important;
  border: 1.5px solid #821400 !important;
  border-radius: 20px !important;
  padding: 3px 12px !important;
  background-color: transparent !important;
  color: #821400 !important;
  font-size: 0.72em !important;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif !important;
  line-height: 1.6 !important;
  margin: 2px 3px !important;
  text-decoration: none !important;
  transition: all 0.15s ease !important;
}
a.tag:hover,
ul.tags li a:hover,
ul.tags a:hover {
  background-color: #821400 !important;
  color: #fff !important;
  text-decoration: none !important;
}
/* Supprimer les pseudo-éléments du style tag originel */
a.tag::before,
a.tag::after {
  display: none !important;
  content: none !important;
}
ul.tags {
  list-style: none !important;
  padding: 0 !important;
  margin: 0.5em 0 !important;
}
ul.tags li {
  display: inline-block !important;
  float: none !important;
}

/* Search : greedy-nav au-dessus du sidebar (z-index: 99) */
/* Le sidebar UL .author__urls a z-index: -1 mais l'author__urls-wrapper a z-index: 10 */
/* Forcer masthead et greedy-nav au-dessus de tout le sidebar */
.author__urls-wrapper {
  z-index: 9 !important;
}
.masthead {
  isolation: isolate;
  z-index: 200 !important;
  position: sticky !important;
}
.greedy-nav .hidden-links {
  z-index: 9999 !important;
}


/* =============================================
   SEARCH Z-INDEX FIX DÉFINITIF
   ============================================= */
/* Le sidebar UL author__urls-wrapper a z-index:10 par le thème.
   Le masthead a z-index:200 dans notre CSS.
   La superposition vient du fait que le search dropdown du greedy-nav
   doit apparaître AU-DESSUS du sidebar sticky.
   Solution : isoler le masthead comme un stacking context indépendant */
.masthead {
  position: sticky !important;
  top: 0 !important;
  z-index: 200 !important;
  isolation: isolate;
}
.greedy-nav .hidden-links,
.greedy-nav__toggle ~ ul,
ul.hidden-links {
  z-index: 9999 !important;
  position: absolute !important;
}
/* S'assurer que le sidebar reste sous le masthead */
.sidebar,
.sidebar__left,
.author__urls-wrapper {
  z-index: 9 !important;
}
.author__urls {
  z-index: 8 !important;
}

/* Avatar : full sidebar width, coins arrondis */
.author__avatar,
.author__avatar img,
.sidebar .author__avatar img,
img.author__avatar,
.author__avatar > img {
  border-radius: 8px !important;
  -webkit-border-radius: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  object-position: center top !important;
}




/* Home page : cacher le h1 vide ajouté par le layout archive */
body .archive .page__title:empty,
.home-featured ~ .page__title:empty {
  display: none !important;
}

/* Liste all-posts par année */
.posts-year-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 2em !important;
}
.posts-year-list__item {
  display: flex;
  align-items: baseline;
  gap: 1em;
  padding: 4px 0;
  border-bottom: 1px solid #f0e8e3;
  font-family: Georgia, serif;
}
.posts-year-list__date {
  min-width: 50px;
  color: #b47864;
  font-size: 0.8em;
  font-family: -apple-system, sans-serif;
}
.posts-year-list__item a {
  color: #1a1a1a !important;
  text-decoration: none !important;
}
.posts-year-list__item a:hover {
  color: #821400 !important;
}


/* =============================================
   SMOOTH SCROLL + PROGRESS BAR + FADE-IN
   ============================================= */

html { scroll-behavior: smooth; }

#reading-progress {
  position: fixed;
  top: 0; left: 0;
  height: 3px;
  width: 0;
  background: #821400;
  z-index: 9999;
  transition: width 0.1s linear;
}



/* =============================================
   FAQ SECTION (FAQPage schema companion)
   ============================================= */

.page__faq {
  margin-top: 2.5em;
  padding-top: 1.5em;
  border-top: 1px solid #e8e0da;
}

.page__faq-item {
  margin-bottom: 1.25em;
}

.page__faq-question {
  margin-bottom: 0.25em;
}


/* =============================================
   CV : rendu mobile (timeline, compétences, profil)
   ============================================= */

/* Filet blanc : plus aucun débordement horizontal ne rend la page scrollable (clip ne casse pas le sticky) */
#main { overflow-x: clip; }

.sidebar_score .skill-item { display: block; }

@media (max-width: 768px) {
  /* Timeline : ligne à gauche, date au-dessus du texte, carte à hauteur libre */
  .vtl { padding: 6px 0 6px 30px; }
  .vtl::before { left: 8px; width: 2px; }
  div.ewrap { padding: 8px 0; }
  div.ewrap::before { display: none; }
  div.ewrap::after {
    width: 14px;
    height: 14px;
    border-radius: 14px;
    left: -28px;
    top: 22px;
    box-sizing: border-box;
  }
  div.event { height: auto; min-height: 0; padding: 12px 14px; }
  strong.date {
    position: static;
    display: block;
    left: auto;
    top: auto;
    text-align: left;
    font-size: .78em;
    color: #b47864;
    margin-bottom: 2px;
  }
  div.event > p.text { position: static; top: auto; margin: 0; line-height: 1.5 !important; }
  div.event > p.text a,
  div.event > p.text > strong > a {
    position: static;
    right: auto;
    bottom: auto;
    border: 0;
    background: none;
    font-size: 1em;
  }

  /* Profil compact : avatar à gauche, nom à droite */
  .sidebar > div[itemtype$="Person"] {
    display: grid;
    grid-template-columns: 96px 1fr;
    grid-template-areas: "avatar name" "urls urls";
    gap: 8px 14px;
    align-items: center;
    margin-bottom: 14px;
  }
  .sidebar > div[itemtype$="Person"] .author__avatar { grid-area: avatar; float: none; width: 96px; margin: 0; padding: 0; }
  .sidebar > div[itemtype$="Person"] .author__content { grid-area: name; float: none; width: auto; padding: 0; }
  .sidebar > div[itemtype$="Person"] .author__urls-wrapper { grid-area: urls; float: none; width: auto; padding: 0; }
  .sidebar > div[itemtype$="Person"] .author__name { margin: 0 0 6px; font-size: 1.15em; }

  /* Compétences en pastilles plutôt qu'en liste */
  .sidebar_score { margin: 0 0 14px; }
  .sidebar_score h3 { margin: 0 0 6px; font-size: .95em; }
  .sidebar_score .skill-list { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; }
  .sidebar_score .skill-item {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 2px 10px;
    border: 1px solid #d9c9c2;
    border-radius: 20px;
    background: #fff;
    font-size: .78em;
    font-family: -apple-system, BlinkMacSystemFont, sans-serif;
    line-height: 1.6;
    white-space: nowrap;
  }
  .sidebar_score .skill-item .fa { color: #821400; }
}
