/*
Theme Name: Nico & Co Magazine
Theme URI: https://www.nicolascarles.com/
Author: Frédéric Pérès / Nico & Co
Description: Thème WordPress éditorial pour le carnet de pêche Nicolas Carles. Accueil par destinations, récits, catégories et page Nico & Co.
Version: 1.0.15
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: nicolas-carles-magazine
*/

/* Version 1.4.0 : hiérarchie, en-tête, heroes et pied de page. */
:root{
  --logo-display:"Rockwell Extra Bold",Rockwell,"Roboto Slab","DejaVu Serif",Georgia,serif;
}

@media(min-width:981px){
  .site-header.site-header-v122{
    grid-template-columns:clamp(300px,28vw,420px) minmax(0,1fr) max-content!important;
    column-gap:clamp(12px,1.4vw,24px)!important;
  }
  .site-header-v122 .main-nav>ul,
  .site-header-v122 .main-nav>div>ul{
    justify-content:flex-start!important;
    gap:clamp(7px,.75vw,16px)!important;
  }
  .site-header-v122 .main-nav{
    width:100%;
    margin-left:0!important;
  }
  .site-header-v122 .main-nav>ul>li>a,
  .site-header-v122 .main-nav>div>ul>li>a{
    font-size:clamp(11px,.7vw,13px)!important;
    letter-spacing:.055em!important;
  }
  .single .article-hero{
    margin-top:-138px!important;
  }
  .single .article-hero-text{
    padding-top:208px!important;
  }
}
@media(min-width:601px) and (max-width:980px){
  .single .article-hero{
    margin-top:-118px!important;
  }
  .single .article-hero-text{
    padding-top:188px!important;
  }
}
@media(max-width:600px){
  .single .article-hero{
    margin-top:-86px!important;
  }
  .single .article-hero-text{
    padding-top:136px!important;
  }
}

.page-hero h1,
.archive-hero h1,
.article-hero h1{
  font-family:var(--logo-display)!important;
  font-weight:800!important;
  line-height:.92!important;
  letter-spacing:.008em!important;
}

.archive-sidebar h2{
  margin:0 0 18px;
  font:700 25px/1.1 var(--serif);
}

.site-footer.site-footer-v123{
  grid-template-columns:minmax(0,620px) 1fr!important;
  align-items:center;
}
.site-footer-v123 .footer-brand-wrap{
  width:100%;
}
.footer-logo-link{
  display:block;
  width:min(100%,560px);
}
.footer-logo-link img{
  display:block;
  width:100%;
  height:auto;
}
.site-footer-v123 .copyright{
  grid-column:1/-1;
}
@media(max-width:780px){
  .site-footer.site-footer-v123{
    grid-template-columns:1fr!important;
  }
  .footer-logo-link{
    width:min(100%,520px);
  }
}

.comments-area .comments-title,
.comments-area .comment-reply-title{
  margin:0 0 24px;
  font:700 clamp(29px,4vw,42px)/1.08 var(--serif);
}
.comments-area .comment-list{
  margin:0 0 44px;
  padding:0;
  list-style:none;
}
.comments-area .comment-list .children{
  margin:22px 0 0 24px;
  padding-left:22px;
  border-left:2px solid var(--olive);
  list-style:none;
}
.comments-area .comment-body{
  margin-bottom:24px;
  padding:22px;
  background:#f6f7f2;
  border:1px solid #c9cec6;
}
.comments-area label{
  display:block;
  margin-bottom:7px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.comments-area input:not([type="submit"]):not([type="checkbox"]),
.comments-area textarea{
  width:100%;
  padding:13px 14px;
  border:1px solid #aeb5ac;
  background:#fff;
  color:var(--ink);
  font:400 16px/1.5 var(--sans);
}
.comments-area .submit{
  min-height:44px;
  padding:12px 20px;
  border:0;
  background:var(--olive);
  color:var(--ink);
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  cursor:pointer;
}

/* v1.3.9 : identité visuelle, heroes jointifs, CTA du hero, favicon et suivi GA4. */
.site-brand{
  display:flex;
  flex-direction:row!important;
  align-items:center;
  min-width:0;
}
.brand-visual{
  display:block;
  flex:0 1 auto;
  min-width:0;
}
.brand-visual img{
  display:block;
  width:100%;
  height:auto;
}
@media(min-width:601px){
  .site-brand .brand-copy{
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    white-space:nowrap;
    border:0;
  }
}
@media(min-width:981px){
  .site-header.site-header-v122{
    padding:20px 2.2vw!important;
    grid-template-columns:clamp(300px,30vw,450px) minmax(0,1fr) max-content!important;
    align-items:center!important;
  }
  .site-header-v122>.site-brand{
    width:100%;
    min-width:0!important;
    max-width:none!important;
  }
  .site-header-v122 .brand-visual{
    width:100%;
  }
  .site-header-v122 .main-nav,
  .site-header-v122 .header-actions{
    align-self:center!important;
  }
  .site-header-v122 .main-nav>ul,
  .site-header-v122 .main-nav>div>ul{
    margin-top:0!important;
  }
}
@media(min-width:601px) and (max-width:980px){
  .site-header.site-header-v122{
    height:118px;
    padding:16px 3vw!important;
    align-items:center!important;
  }
  .site-brand{
    flex:0 1 360px;
  }
  .brand-visual{
    width:min(360px,52vw);
  }
}
@media(max-width:600px){
  .site-header.site-header-v122{
    height:86px;
    padding:8px 12px!important;
    align-items:center!important;
  }
  .site-brand{
    flex:1 1 auto;
    gap:7px;
    overflow:hidden;
  }
  .brand-visual{
    flex:0 0 66px;
    width:66px;
  }
  .site-brand .brand-copy{
    display:block;
    min-width:0;
    color:#fff;
  }
  .site-brand .brand-name{
    display:block;
    margin:0;
    font:400 15px/1 var(--display);
    letter-spacing:.02em;
    text-transform:uppercase;
    white-space:nowrap!important;
  }
  .site-brand .brand-tagline{
    display:block;
    margin:4px 0 0;
    padding:0;
    font:italic 9px/1.15 var(--serif);
    white-space:nowrap;
  }
  .site-brand .brand-tagline:before{
    content:none;
  }
  .site-header-v122 .header-actions{
    flex:0 0 auto;
    margin-left:7px;
  }
}
@media(max-width:360px){
  .brand-visual{
    flex-basis:56px;
    width:56px;
  }
  .site-brand .brand-name{
    font-size:13px;
  }
  .site-brand .brand-tagline{
    font-size:8px;
  }
}
.archive-hero.has-archive-image,
.guide-debutant-hero.has-page-image{
  margin-top:-138px;
}
@media(max-width:980px){
  .archive-hero.has-archive-image,
  .guide-debutant-hero.has-page-image{
    margin-top:-118px;
  }
}
@media(max-width:600px){
  .archive-hero.has-archive-image,
  .guide-debutant-hero.has-page-image{
    margin-top:-86px;
  }
}
.button-link .fishbone-icon{
  display:block;
  flex:0 0 auto;
  width:44px;
  height:16px;
  color:var(--olive);
  transition:transform .18s ease;
}
.button-link:hover .fishbone-icon,
.button-link:focus-visible .fishbone-icon{
  transform:translateX(4px);
}

/* v1.3.8 : nom de la catégorie affiché dans le fil d'Ariane. */
/* v1.3.7 : tête et arêtes du pictogramme orientées vers la droite. */
/* v1.3.6 : CTA des cartes rapproché de son extrait et complété d'une arête de poisson. */
/* v1.3.5 : FAQ ACF des catégories affichée comme la FAQ de la home, uniquement en page 1. */
/* v1.3.4 : hero et FAQ de la page débutant gérés par le modèle dédié. */
/* v1.3.3 : taille du titre hero restaurée et dégradé des catégories réintégré. */
.home-hero .featured-title{
  margin:25px 0;
  font:400 clamp(58px,6.2vw,104px)/.91 var(--display);
  letter-spacing:.015em;
  text-transform:uppercase;
}
.archive-hero.has-archive-image:before{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(3,16,15,.94) 0%,rgba(3,16,15,.68) 48%,rgba(3,16,15,.22) 100%),
    linear-gradient(0deg,rgba(3,16,15,.88),transparent 65%);
}
@media(max-width:600px){
  .home-hero .featured-title{font-size:58px}
}

/* v1.3.2 : contenu sémantique sans classes ni styles dans l’éditeur. */
/* v1.3.0 : hero mobile 480 px verrouillé et ressources tardives filtrées. */
.hero-picture{display:block;width:100%}
:root{--muted:#4c554f}
.section.soft .topic p{color:#424b45}
.section.soft .topic small{color:#3f4842}
.home-faq-kicker{color:#46503f}
.home-faq-intro,.home-faq-answer{color:#38413a}

/* v1.2.8 : images dimensionnées et responsives, sans décalage de mise en page. */
.hero-full-image{display:block;width:100%;height:auto}
.post-thumb{overflow:hidden}
.post-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.post-thumb:hover img{transform:scale(1.025)}
.post-card>p:last-of-type{margin:0 0 6px}
.post-card .text-link{align-self:flex-start;display:inline-flex;align-items:center;gap:9px;margin-top:2px;padding-top:0;line-height:1.2}
.post-card .fishbone-icon{display:block;flex:0 0 auto;width:38px;height:14px;transition:transform .18s ease}
.post-card .text-link:hover .fishbone-icon,.post-card .text-link:focus-visible .fishbone-icon{transform:translateX(4px)}

/* v1.2.7 : compteurs explicites dans la navigation des thèmes. */
.archive-sidebar a small{margin-left:16px;color:var(--muted);font-size:10px;line-height:1.25;text-align:right}
.archive-sidebar .current-cat>a small{color:var(--ink)}

/* v1.2.4 : menu aligne et images hero affichees sans recadrage. */
@media(min-width:981px){
  .site-header-v122 .main-nav>ul>li,
  .site-header-v122 .main-nav>div>ul>li{display:flex;align-items:flex-start;min-height:32px;padding-top:0!important}
  .site-header-v122 .main-nav>ul>li>a,
  .site-header-v122 .main-nav>div>ul>li>a{display:flex;align-items:flex-start;height:32px;margin:0;padding:0 0 10px;line-height:22px}
  .site-header-v122 .main-nav>ul>li.menu-item-has-children,
  .site-header-v122 .main-nav>div>ul>li.menu-item-has-children{padding-right:20px}
  .site-header-v122 .main-nav>ul>li>.submenu-toggle,
  .site-header-v122 .main-nav>div>ul>li>.submenu-toggle{position:absolute;top:0;right:-2px;margin:0;width:20px;height:22px;line-height:22px}
}
.hero-full-image{display:block;width:100%;height:auto;max-width:none}
.home-hero.home-hero-full-image{min-height:0;margin-top:-138px;padding:0;background:var(--ink);overflow:hidden}
.home-hero.home-hero-full-image:before{z-index:1}
.home-hero-full-image .home-hero-content{position:absolute;left:5vw;right:5vw;bottom:7%;z-index:2}
.archive-hero.has-archive-image{display:block;min-height:0;padding:0;position:relative;overflow:hidden;background:var(--dark)}
.archive-hero.has-archive-image:before{z-index:1}
.archive-hero.has-archive-image .archive-hero-content{position:absolute;left:5vw;right:5vw;bottom:8%;z-index:2}
.archive-hero:not(.has-archive-image) .archive-hero-content{position:static}
@media(max-width:980px){.home-hero.home-hero-full-image{margin-top:-118px}}
@media(max-width:600px){
  .home-hero.home-hero-full-image{margin-top:-86px;padding-top:86px;overflow:visible}
  .home-hero-full-image .home-hero-content,.archive-hero.has-archive-image .archive-hero-content{position:static;padding:38px 20px 44px;background:var(--dark)}
  .home-hero.home-hero-full-image:before,.archive-hero.has-archive-image:before{display:none}
}

/* Correctifs structurels v1.2.3 : en-tête, cartes d'accueil et pied de page. */
.post-card .meta,.home-pinned-grid .meta,.home-pinned-grid .post-categories,.home-pinned-grid time{display:none!important}
@media(min-width:981px){
  .site-header.site-header-v122{height:138px;padding:24px 2.2vw 22px;display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;column-gap:clamp(16px,2vw,38px);align-items:start}
  .site-header-v122>.brand{min-width:max-content;max-width:none}
  .site-header-v122 .brand-name{display:block;margin:0;white-space:nowrap!important;font-size:clamp(28px,2.15vw,43px);line-height:1}
  .site-header-v122 .brand-tagline{white-space:nowrap;font-size:17px}
  .site-header-v122 .main-nav{min-width:0;margin:0;overflow:visible}
  .site-header-v122 .main-nav>ul,.site-header-v122 .main-nav>div>ul{justify-content:flex-end;gap:clamp(8px,1vw,20px);margin-top:12px;flex-wrap:nowrap}
  .site-header-v122 .main-nav a{white-space:nowrap;font-size:clamp(9px,.58vw,11px);letter-spacing:.07em}
  .site-header-v122 .main-nav a::after{content:none!important}
  .site-header-v122 .header-actions{margin:0;align-self:start}
  .site-main{padding-top:138px}.home-hero{margin-top:-138px;padding-top:220px}
  .site-footer.site-footer-v123{display:grid;grid-template-columns:1fr;gap:34px;padding:62px 5vw 30px}
  .site-footer-v123 .footer-brand-wrap{width:100%;min-width:0}
  .site-footer-v123 .footer-brand{display:flex;align-items:flex-start;width:max-content;max-width:100%}
  .site-footer-v123 .brand-name{display:block;margin:0;white-space:nowrap!important;font-size:clamp(34px,3vw,52px);line-height:1}
  .site-footer-v123 .brand-tagline{display:block;margin-top:12px;white-space:nowrap;line-height:1.3}
  .site-footer-v123 .copyright{margin:0}
}
@media(max-width:600px){.site-header-v122 .brand-name,.site-footer-v123 .brand-name{white-space:nowrap!important}.site-footer-v123 .brand-tagline{max-width:none;white-space:normal}}

/* FAQ administrable de la page d'accueil. */
.home-faq{padding:105px 5vw;background:#e2e4db;border-top:1px solid #b8beb1}
.home-faq-inner{max-width:1280px;margin:0 auto}
.home-faq-head{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:7vw;align-items:end;margin-bottom:48px;padding-top:22px;border-top:1px solid #8e9689}
.home-faq-kicker{margin:0 0 12px;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#46503f}
.home-faq-kicker:before{content:'';display:inline-block;width:32px;height:3px;margin-right:13px;background:var(--olive);vertical-align:middle}
.home-faq h2{margin:0;font:500 clamp(43px,5vw,72px)/.98 var(--serif)}
.home-faq-intro{max-width:680px;font:400 20px/1.6 var(--serif);color:#38413a}
.home-faq-intro>:first-child{margin-top:0}.home-faq-intro>:last-child{margin-bottom:0}
.home-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;align-items:start}
.home-faq details{background:#f3f3ed;border:1px solid #c4c9bd;transition:border-color .18s ease,box-shadow .18s ease}
.home-faq details[open]{border-color:#8d9a70;box-shadow:0 12px 28px rgba(7,17,15,.07)}
.home-faq summary{position:relative;padding:22px 62px 22px 24px;list-style:none;cursor:pointer;font:700 16px/1.4 var(--sans)}
.home-faq summary h3{margin:0;font:inherit;color:inherit}
.home-faq summary::-webkit-details-marker{display:none}
.home-faq summary:after{content:'+';position:absolute;top:50%;right:22px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #9aa58a;border-radius:50%;color:#52603f;font:400 20px/1 var(--sans);transform:translateY(-50%);transition:transform .18s ease,background .18s ease}
.home-faq details[open] summary:after{content:'\2212';background:var(--olive);color:var(--ink);transform:translateY(-50%) rotate(180deg)}
.home-faq-answer{padding:0 24px 24px;border-top:1px solid #d8dcd2;color:#38413a;font:400 15px/1.72 var(--sans)}
.home-faq-answer p{margin:18px 0 0}.home-faq-answer a{color:#39482c;text-decoration:underline;text-decoration-color:#8b9b69;text-underline-offset:3px}.home-faq-answer a:hover{color:#667744}
@media(max-width:780px){.home-faq-head{grid-template-columns:1fr;gap:24px}.home-faq-grid{grid-template-columns:1fr}}
@media(max-width:600px){.home-faq{padding:75px 20px}.home-faq-head{margin-bottom:34px}.home-faq h2{font-size:42px}.home-faq-intro{font-size:18px}.home-faq summary{padding:19px 56px 19px 18px;font-size:15px}.home-faq-answer{padding:0 18px 20px}}

/* Page article : colonne de lecture élargie, sans barre latérale auteur. */
body .article-layout{max-width:1050px;margin:auto;padding:90px 40px;display:block}
body .article-layout .entry-content{max-width:920px;margin:0 auto}
@media(max-width:600px){body .article-layout{padding:60px 20px}}
/* Cartes ACF : comptes rendus de pêche et fiches de montage. */
.acf-story-card{margin:0 0 70px;border:1px solid #c9cdc0;border-top:5px solid var(--olive);background:#f7f7f1;box-shadow:0 18px 45px rgba(7,17,15,.08);font-family:var(--sans)}
.entry-content>.acf-story-card+p{font-size:27px;line-height:1.5}
.acf-card-head{display:flex;align-items:center;gap:18px;padding:26px 30px;border-bottom:1px solid #d9dcd2;background:linear-gradient(120deg,#f7f7f1 0%,#e7eadc 100%)}
.acf-card-head p{margin:0 0 4px;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#69715f}
.entry-content .acf-card-head h2{margin:0;font:600 34px/1 var(--serif)}
.acf-card-mark{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:50%;background:var(--ink);color:var(--olive);font:400 34px/1 var(--serif)}
.acf-hook{font-size:42px;transform:rotate(18deg)}
.acf-status{margin-left:auto;padding:8px 13px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.acf-status-blank{background:var(--ink);color:var(--white)}
.acf-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px 30px 24px}
.acf-fact{display:flex;align-items:flex-start;gap:14px;min-width:0;padding:20px 12px;border-bottom:1px solid #dde0d7}
.acf-fact-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid #bcc5a3;border-radius:50%;background:#eef1e5;color:#34402e;font:700 20px/1 var(--serif)}
.acf-fact>div{min-width:0}.acf-fact-label{display:block;margin:1px 0 5px;color:#72786d;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.acf-fact strong{display:block;color:var(--ink);font:600 18px/1.35 var(--serif);overflow-wrap:anywhere}
.acf-montage-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.acf-montage-grid .acf-fact{border-right:1px solid #dde0d7}
.acf-difficulty small{display:block;margin-top:4px;color:#61695d;font-size:11px}.acf-stars{color:#667344!important;letter-spacing:.08em}
.acf-materials{padding:28px 40px 32px;background:#e3e6dc;border-top:1px solid #cdd1c6}
.entry-content .acf-materials h3{margin:0 0 18px;font:600 25px/1.2 var(--serif)}
.acf-materials h3 span{color:#667344;margin-right:8px}.acf-materials>div{font:400 16px/1.65 var(--sans)}
.acf-materials>div>:first-child{margin-top:0}.acf-materials>div>:last-child{margin-bottom:0}.acf-materials ul{padding-left:22px}
@media(max-width:760px){.acf-montage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.acf-story-card{margin-bottom:48px}.acf-card-head{padding:20px;gap:13px;align-items:flex-start}.acf-card-mark{flex-basis:44px;width:44px;height:44px;font-size:27px}.entry-content .acf-card-head h2{font-size:27px}.acf-status{margin-left:0;align-self:center}.acf-facts-grid,.acf-montage-grid{grid-template-columns:1fr;padding:5px 18px 18px}.acf-fact{padding:16px 2px}.acf-montage-grid .acf-fact{border-right:0}.acf-materials{padding:24px 20px}.entry-content .acf-materials h3{font-size:22px}}

/* Indices visuels des sous-menus sur ordinateur. */
@media(min-width:981px){.main-nav>div>ul>li.menu-item-has-children>a:after,.main-nav>ul>li.menu-item-has-children>a:after{content:'⌄';display:inline-block;margin-left:7px;color:var(--olive);font-size:12px}.main-nav .sub-menu li.menu-item-has-children>a:after{content:'›';float:right;margin-left:20px;color:var(--olive);font-size:14px}}

/* Accordéon tactile : le texte reste un lien, la flèche ouvre les niveaux 2 et 3. */
@media(max-width:980px){.main-nav{max-height:calc(100svh - 118px);overflow-y:auto}.main-nav li.menu-item-has-children{padding-right:46px}.main-nav .submenu-toggle{position:absolute;display:grid;place-items:center;top:3px;right:0;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:#ffffff10;color:var(--olive);font-size:22px;cursor:pointer}.main-nav .submenu-toggle span[aria-hidden="true"]{transition:transform .18s ease}.main-nav li.submenu-open>.submenu-toggle span[aria-hidden="true"]{transform:rotate(180deg)}.main-nav .sub-menu,.main-nav .sub-menu .sub-menu{position:static;display:none;min-width:0;margin:0 0 0 14px;padding:0 0 0 14px;background:transparent;border:0;border-left:1px solid #ffffff22;box-shadow:none;opacity:1;visibility:visible;transform:none;transition:none}.main-nav li.submenu-open>.sub-menu{display:block}.main-nav .sub-menu a{padding:12px 0;white-space:normal}.main-nav .sub-menu li.menu-item-has-children{padding-right:46px}}
@media(max-width:600px){.main-nav{max-height:calc(100svh - 86px)}}

/* Recherche interne accessible depuis l'en-tête. */
.header-actions{display:flex;align-items:center;gap:9px;order:3}.main-nav{margin-left:auto;order:2}.site-search-toggle{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #ffffff55;border-radius:50%;background:transparent;color:#fff;font-size:25px;line-height:1;cursor:pointer}.site-search-toggle:hover,.site-search-toggle[aria-expanded="true"]{border-color:var(--olive);color:var(--olive)}.site-search-panel{position:absolute;top:100%;right:5vw;width:min(650px,90vw);padding:18px;background:#07110f;border:1px solid #ffffff24;box-shadow:0 18px 40px #0008}.site-search-panel[hidden]{display:none!important}.header-search-form{display:flex;border-bottom:2px solid var(--olive)}.header-search-form input{flex:1;min-width:0;padding:14px 5px;border:0;background:transparent;color:#fff;font:500 22px/1.2 var(--serif);outline:none}.header-search-form button{padding:0 20px;border:0;background:var(--olive);color:var(--ink);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
@media(max-width:980px){.header-actions{margin-left:auto}.main-nav{margin-left:0;order:4}.site-search-panel{right:5vw;left:5vw;width:auto}.header-search-form input{font-size:18px}}
@media(max-width:600px){.header-actions{gap:7px}.site-search-toggle,.menu-toggle{width:40px;height:40px}.site-search-panel{right:20px;left:20px;padding:14px}.header-search-form{display:grid;grid-template-columns:1fr}.header-search-form button{padding:13px}.header-search-form input{width:100%;padding:12px 3px}}
/* Navigation hiérarchique : trois niveaux accessibles au clavier et au tactile. */
.main-nav>div>ul,.main-nav>ul{display:flex;gap:clamp(16px,2vw,35px);list-style:none;margin:12px 0 0;padding:0}.main-nav li{position:relative;list-style:none}.main-nav .sub-menu{position:absolute;top:100%;left:-18px;display:block;min-width:235px;margin:0;padding:10px 0;background:rgba(7,17,15,.98);border:1px solid #ffffff24;box-shadow:0 18px 35px #0007;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:110}.main-nav .sub-menu .sub-menu{top:-11px;left:100%;transform:translateX(8px)}.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.main-nav .sub-menu a{display:block;padding:11px 18px;border:0;white-space:nowrap;font-size:10px;line-height:1.35}.main-nav .sub-menu a:hover,.main-nav .sub-menu .current-menu-item>a{background:#ffffff0e;color:var(--olive);border:0}.submenu-toggle{display:none}
:root{--olive:#b7c48b;--ink:#07110f;--dark:#0b1614;--paper:#ecece5;--soft:#d6d8d0;--muted:#4c554f;--white:#f6f7f2;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--display:'Arial Narrow',Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.screen-reader-text{position:absolute;left:-9999px}.site-header{position:fixed;inset:0 0 auto;z-index:100;height:118px;padding:28px 5vw;display:flex;justify-content:space-between;align-items:flex-start;color:#fff;background:rgba(7,17,15,.92);border-bottom:1px solid #ffffff24;backdrop-filter:blur(14px)}.brand{display:flex;flex-direction:column}.brand-name{font:400 clamp(34px,3vw,54px)/.9 var(--display);letter-spacing:.02em;text-transform:uppercase}.brand-tagline{font:italic 19px var(--serif);margin-top:8px;padding-left:38px;position:relative}.brand-tagline:before{content:'';position:absolute;left:0;top:50%;width:27px;height:3px;background:var(--olive)}.custom-logo{max-height:58px;width:auto}.main-nav ul{display:flex;gap:clamp(16px,2vw,35px);list-style:none;margin:12px 0 0;padding:0}.main-nav a{font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;padding-bottom:10px}.main-nav a:hover,.main-nav .current-menu-item>a{color:var(--olive);border-bottom:2px solid var(--olive)}.menu-toggle{display:none;background:none;border:1px solid #ffffff55;color:#fff;width:44px;height:44px;border-radius:50%;font-size:20px}.site-main{padding-top:118px}.home-hero{min-height:calc(100svh - 0px);margin-top:-118px;padding:205px 5vw 60px;color:#fff;position:relative;background:var(--ink) center/cover no-repeat}.home-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#03100ff2 0%,#03100fb8 38%,#03100f26 75%),linear-gradient(0deg,#03100fd4,transparent 55%)}.home-hero-content{position:relative;z-index:1;max-width:760px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:'';display:inline-block;width:32px;height:3px;background:var(--olive);vertical-align:middle;margin-right:14px}.home-hero h1,.page-hero h1,.archive-hero h1{font:400 clamp(68px,8vw,126px)/.87 var(--display);letter-spacing:.015em;text-transform:uppercase;margin:25px 0}.hero-excerpt{font:400 24px/1.4 var(--serif);max-width:650px;color:#d0d5d1}.button-link{display:inline-flex;align-items:center;gap:15px;margin-top:25px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.button-link b{display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff55;border-radius:50%;color:var(--olive)}.featured-rail{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,250px));gap:12px;margin-top:65px}.featured-card{min-height:185px;padding:18px;display:flex;align-items:flex-end;position:relative;background:center/cover;border:1px solid #ffffff4a}.featured-card:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#03100ff2,transparent 75%)}.featured-card>div{position:relative}.featured-card small{color:var(--olive);text-transform:uppercase;letter-spacing:.14em}.featured-card h2{font:700 15px/1.25 var(--sans);text-transform:uppercase;margin:8px 0 0}.section{padding:105px 5vw}.section.paper{background:var(--paper)}.section.soft{background:var(--soft)}.section.dark{background:var(--dark);color:#fff}.section-head{display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:end;border-top:1px solid currentColor;padding-top:24px;margin-bottom:65px}.section-head h2{font:500 clamp(46px,5vw,75px)/.95 var(--serif);margin:0}.section-head>a{justify-self:end;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 22px}.post-card{display:flex;flex-direction:column}.post-thumb{aspect-ratio:1.35;display:block;background:#879087 center/cover;position:relative}.post-thumb:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#06110d66,transparent)}.post-card .meta{margin:17px 0 9px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.post-card h2{font:600 29px/1.05 var(--serif);margin:0 0 11px}.post-card p{font-size:12px;line-height:1.65;color:#5d665f}.text-link{margin-top:auto;padding-top:18px;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.topics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #8d948e;border-left:1px solid #8d948e}.topic{min-height:240px;padding:25px;border-right:1px solid #8d948e;border-bottom:1px solid #8d948e;position:relative}.topic:hover{background:var(--olive)}.topic h3{font:600 34px var(--serif);margin:55px 0 10px}.topic p{font-size:12px;color:#424b45}.manifesto{padding:100px 7vw;background:var(--olive);display:grid;grid-template-columns:2fr 1fr;gap:8vw;align-items:end}.manifesto blockquote{font:500 clamp(48px,6vw,88px)/.92 var(--serif);margin:0}.manifesto p{font-size:13px;line-height:1.8}.page-hero,.archive-hero{padding:90px 5vw;background:var(--dark);color:#fff}.breadcrumbs{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#a7afa9}.page-hero p,.archive-hero p{font:400 24px/1.4 var(--serif);max-width:690px}.article-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:#fff}.article-hero-text{padding:70px 5vw}.article-hero h1{font:400 clamp(68px,7vw,116px)/.87 var(--display);text-transform:uppercase;margin:25px 0}.article-hero-image img{width:100%;height:100%;min-height:650px;object-fit:cover}.article-meta{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid #ffffff3d;padding-top:18px;margin-top:40px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.article-layout{max-width:1180px;margin:auto;padding:90px 30px;display:grid;grid-template-columns:minmax(0,720px) 240px;gap:8vw}.entry-content{font:400 20px/1.78 var(--serif)}.entry-content>p:first-child{font-size:27px;line-height:1.5}.entry-content h2{font:600 43px/1.1 var(--serif);margin:60px 0 20px}.entry-content blockquote{border-left:4px solid var(--olive);font:italic 36px/1.2 var(--serif);margin:50px 0;padding-left:28px}.entry-content figure{margin:45px 0}.entry-content figcaption{font-size:13px;color:var(--muted)}.article-sidebar{align-self:start;position:sticky;top:150px;border-top:4px solid var(--olive);padding-top:20px}.article-sidebar h3{font:600 26px var(--serif)}.article-sidebar p{font-size:12px;line-height:1.6}.archive-wrap{display:grid;grid-template-columns:240px 1fr;gap:6vw;padding:80px 5vw}.archive-sidebar{align-self:start;position:sticky;top:150px}.archive-sidebar ul{list-style:none;margin:0;padding:0;border-top:1px solid #909790}.archive-sidebar a{display:flex;justify-content:space-between;padding:13px 5px;border-bottom:1px solid #b8bdb8;font-size:12px}.archive-sidebar .current-cat>a{background:var(--olive);padding-left:12px}.pagination{display:flex;justify-content:center;gap:18px;margin-top:65px}.pagination .page-numbers{padding:10px 13px}.pagination .current{background:var(--olive);border-radius:50%}.search-form{display:flex;max-width:1050px;border-bottom:2px solid currentColor;margin-top:45px}.search-field{flex:1;background:transparent;border:0;padding:16px 0;font:500 36px var(--serif);color:inherit;min-width:0}.search-submit{background:var(--olive);border:0;padding:0 25px;font-size:10px;font-weight:800;text-transform:uppercase}.comments-area{max-width:760px;margin:0 auto 80px;padding:40px 25px;border-top:1px solid #a9afa9}.site-footer{padding:65px 5vw 30px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr auto;gap:50px}.footer-links{display:flex;gap:28px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.copyright{grid-column:1/-1;border-top:1px solid #ffffff2f;padding-top:20px;color:#7f8982;font-size:10px;text-transform:uppercase}.wp-block-button__link{background:var(--olive)!important;color:var(--ink)!important}.alignwide{max-width:1180px;margin-left:auto;margin-right:auto}.alignfull{width:100vw;margin-left:calc(50% - 50vw)}@media(max-width:980px){.main-nav{display:none;position:fixed;top:118px;left:0;right:0;padding:20px 5vw;background:var(--ink)}.main-nav.open{display:block}.main-nav ul{flex-direction:column;gap:0}.main-nav a{display:block;padding:14px 0;border-bottom:1px solid #ffffff22}.menu-toggle{display:block}.post-grid{grid-template-columns:repeat(2,1fr)}.topics{grid-template-columns:repeat(2,1fr)}.section-head{grid-template-columns:1fr 2fr}.section-head>a{grid-column:2}.article-hero{grid-template-columns:1fr}.article-hero-image img{min-height:420px}.article-layout{grid-template-columns:1fr}.article-sidebar{position:static}.archive-wrap{grid-template-columns:190px 1fr}}@media(max-width:600px){.site-header{height:86px;padding:20px}.site-main{padding-top:86px}.brand-name{font-size:28px}.brand-tagline{font-size:13px;margin-top:5px}.main-nav{top:86px}.home-hero{margin-top:-86px;padding:52vh 20px 45px;min-height:940px;background-position:62% center}.home-hero h1{font-size:58px}.hero-excerpt{font-size:19px}.featured-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-20px}.featured-card{flex:0 0 75vw;scroll-snap-align:start}.section{padding:75px 20px}.section-head{display:block}.section-head h2{font-size:46px;margin:17px 0}.post-grid{grid-template-columns:1fr}.topics{grid-template-columns:1fr}.manifesto{padding:75px 20px;grid-template-columns:1fr}.manifesto blockquote{font-size:46px}.page-hero,.archive-hero{padding:65px 20px}.page-hero h1,.archive-hero h1{font-size:58px}.article-hero-text{padding:50px 20px}.article-hero h1{font-size:58px}.article-hero-image img{min-height:300px}.article-layout{padding:60px 20px}.entry-content{font-size:18px}.entry-content>p:first-child{font-size:23px}.entry-content h2{font-size:34px}.entry-content blockquote{font-size:28px}.archive-wrap{grid-template-columns:1fr;padding:60px 20px}.archive-sidebar{position:static}.site-footer{grid-template-columns:1fr;padding:55px 20px 25px}.footer-links{flex-wrap:wrap}}


/* Version 1.4.2 : H1 compacts étendus aux pages d’étiquettes. */
.category .archive-hero h1,
.tag .archive-hero h1,
.page .page-hero h1,
.page .archive-hero h1{
  font-size:clamp(46px,5vw,78px)!important;
  line-height:.95!important;
  max-width:1100px;
}
.single .article-hero h1{
  font-size:clamp(44px,4.6vw,72px)!important;
  line-height:.95!important;
}
@media(max-width:600px){
  .category .archive-hero h1,
  .tag .archive-hero h1,
  .page .page-hero h1,
  .page .archive-hero h1{
    font-size:40px!important;
    line-height:.98!important;
  }
  .single .article-hero h1{
    font-size:38px!important;
    line-height:.98!important;
  }
}


/* Version 1.4.3 : vidéo ressource et article focus sur la page d’accueil. */
.home-video{
  width:100%;
  margin:0;
  padding:0;
  background:#050b0a;
  overflow:hidden;
}
.home-video-content,
.home-video-content>*,
.home-video-content .wp-block-embed,
.home-video-content .wp-block-embed__wrapper{
  width:100%;
  max-width:none;
  margin:0;
}
.home-video iframe{
  display:block;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  aspect-ratio:16/9;
  margin:0;
  border:0;
}
.home-focus{
  position:relative;
  width:100%;
  min-height:clamp(520px,72vw,880px);
  overflow:hidden;
  background:var(--dark);
  color:#fff;
}
.home-focus-media,
.home-focus-media picture,
.home-focus-media img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
}
.home-focus-media img{
  object-fit:cover;
  object-position:center;
}
.home-focus:after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(3,16,15,.94) 0%,rgba(3,16,15,.68) 38%,rgba(3,16,15,.14) 76%),linear-gradient(0deg,rgba(3,16,15,.72) 0%,transparent 58%);
  pointer-events:none;
}
.home-focus-content{
  position:absolute;
  left:5vw;
  right:5vw;
  bottom:9%;
  z-index:2;
  max-width:820px;
}
.home-focus-kicker{
  margin:0 0 16px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--olive);
}
.home-focus-kicker:before{
  content:'';
  display:inline-block;
  width:32px;
  height:3px;
  margin-right:14px;
  background:var(--olive);
  vertical-align:middle;
}
.home-focus h2{
  margin:0;
  max-width:900px;
  font:600 clamp(46px,5.5vw,82px)/.95 var(--serif);
}
.home-focus-excerpt{
  max-width:680px;
  margin:22px 0 0;
  color:#d8ddda;
  font:400 20px/1.5 var(--serif);
}
.home-focus .button-link{color:#fff}
@media(max-width:600px){
  .home-video iframe{aspect-ratio:16/9}
  .home-focus{min-height:620px}
  .home-focus:after{background:linear-gradient(0deg,rgba(3,16,15,.94) 0%,rgba(3,16,15,.48) 64%,rgba(3,16,15,.12) 100%)}
  .home-focus-content{left:20px;right:20px;bottom:42px}
  .home-focus h2{font-size:42px;line-height:.98}
  .home-focus-excerpt{font-size:18px}
}

/* Version 1.4.5 : slogans ACF au-dessus de la vidéo et du Focus. */
.home-feature-heading{
  padding:clamp(54px,6vw,88px) 5vw clamp(30px,3.5vw,52px);
  background:#050b0a;
  color:#fff;
  border-top:1px solid #ffffff24;
}
.home-feature-heading h2{
  max-width:1200px;
  margin:0 auto;
  font:600 clamp(48px,6.1vw,92px)/.94 var(--serif);
  letter-spacing:-.025em;
}
.home-video-heading{padding-bottom:clamp(34px,4vw,58px)}
.home-focus-module{background:var(--dark)}
.home-focus-heading{background:var(--dark)}
.home-focus h3,
.home-focus h2{
  margin:0;
  max-width:900px;
  font:600 clamp(46px,5.5vw,82px)/.95 var(--serif);
}
@media(max-width:600px){
  .home-feature-heading{padding:52px 20px 28px}
  .home-feature-heading h2{font-size:44px;line-height:.97}
  .home-focus h3,.home-focus h2{font-size:42px;line-height:.98}
}

/* Version 1.4.8 : logo PNG détouré sur alpha réel et cohérence typographique de la home. */
.brand-visual img,
.footer-logo-link img{
  background:transparent!important;
}

/* Les slogans vidéo/focus reprennent la grammaire des grands titres éditoriaux de la home. */
.home-feature-heading{
  display:grid;
  grid-template-columns:1fr 2fr 1fr;
  gap:30px;
  align-items:end;
  padding:clamp(58px,6vw,92px) 5vw clamp(38px,4.4vw,66px);
  color:#fff;
  border-top:1px solid #ffffff2d;
}
.home-video-heading{background:#050b0a}
.home-focus-heading{background:var(--dark)}
.home-feature-heading h2{
  grid-column:2;
  max-width:none;
  margin:0;
  font:500 clamp(46px,5vw,75px)/.95 var(--serif);
  letter-spacing:0;
}
.home-feature-heading h2:before{
  content:'';
  display:block;
  width:32px;
  height:3px;
  margin:0 0 20px;
  background:var(--olive);
}
@media(max-width:980px){
  .home-feature-heading{grid-template-columns:1fr 2fr;padding-inline:5vw}
  .home-feature-heading h2{grid-column:2}
}
@media(max-width:600px){
  .home-feature-heading{display:block;padding:52px 20px 32px}
  .home-feature-heading h2{font-size:46px;line-height:.98}
  .home-feature-heading h2:before{margin-bottom:17px}
}

/* Version 1.4.9 : navigation homogène, titre hero et habillage éditorial vidéo. */
@media(min-width:981px){
  /* Les pictogrammes placés en tête des libellés sont isolés du texte pour
     conserver exactement la même taille et la même ligne de base sur tous
     les modèles de page, quel que soit l'ordre de chargement des CSS. */
  .site-header-v122 .main-nav>ul>li>a,
  .site-header-v122 .main-nav>div>ul>li>a{
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    height:32px!important;
    line-height:22px!important;
  }
  .site-header-v122 .main-nav>ul>li>a .menu-leading-icon,
  .site-header-v122 .main-nav>div>ul>li>a .menu-leading-icon{
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:15px;
    font-size:15px!important;
    line-height:1!important;
    transform:translateY(1px);
  }
  .site-header-v122 .main-nav>ul>li>a .menu-label,
  .site-header-v122 .main-nav>div>ul>li>a .menu-label{
    display:inline-block!important;
    line-height:22px!important;
  }
}

/* Le H2 du hero conserve son niveau sémantique mais reprend la signature
   typographique des H1 éditoriaux des pages internes. */
.home-hero .featured-title{
  font-family:var(--logo-display)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:.92!important;
  letter-spacing:.008em!important;
}

/* Petit repère éditorial au-dessus du titre de la vidéo, dans la même
   grammaire visuelle que le kicker FOCUS. */
.home-feature-kicker{
  grid-column:2;
  margin:0 0 18px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--olive);
}

/* Version 1.5.3 : contraste verrouillé et ratio intrinsèque du hero conservé. */
.topics .topic,
.topics .topic h3,
.topics .topic small,
.topics .topic p{
  color:#07110f!important;
}
.section.soft .topics .topic{background-color:#d6d8d0}
.section.soft .topics .topic:hover,
.section.soft .topics .topic:focus-visible{background-color:#b7c48b}
.topics .topic:focus-visible{
  outline:3px solid #07110f;
  outline-offset:-5px;
}
.home-feature-kicker:before{
  content:'';
  display:inline-block;
  width:32px;
  height:3px;
  margin-right:14px;
  background:var(--olive);
  vertical-align:middle;
}
.home-video-heading h2:before{display:none}
@media(max-width:980px){
  .home-feature-kicker{grid-column:2}
}
@media(max-width:600px){
  .home-feature-kicker{margin-bottom:16px}
}

/* Version 1.4.10 : navigation, hero, repères éditoriaux et citations. */
:root{
  --handwritten:"Segoe Script","Bradley Hand","Segoe Print","Comic Sans MS",cursive;
}

@media(min-width:981px){
  /* Une règle unique pour la home ET tous les autres modèles : le pictogramme
     a une boîte, une taille et une ligne de base fixes. */
  .site-header-v122 .main-nav>ul>li>a,
  .site-header-v122 .main-nav>div>ul>li>a{
    gap:9px!important;
  }
  .site-header-v122 .main-nav>ul>li>a .menu-leading-icon,
  .site-header-v122 .main-nav>div>ul>li>a .menu-leading-icon{
    display:inline-flex!important;
    flex:0 0 18px!important;
    align-items:center!important;
    justify-content:center!important;
    width:18px!important;
    min-width:18px!important;
    height:18px!important;
    font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif!important;
    font-size:17px!important;
    font-weight:400!important;
    line-height:18px!important;
    transform:none!important;
  }
  .site-header-v122 .main-nav>ul>li>a .menu-label,
  .site-header-v122 .main-nav>div>ul>li>a .menu-label{
    padding-left:0!important;
  }
}

/* Le H2 du hero de la home a exactement l'échelle du H1 des articles internes. */
.home-hero .featured-title{
  font-size:clamp(44px,4.6vw,72px)!important;
  line-height:.95!important;
  margin:25px 0!important;
}
@media(max-width:600px){
  .home-hero .featured-title{
    font-size:38px!important;
    line-height:.98!important;
  }
}

/* Les deux modules vidéo/focus utilisent le même repère : barre + texte. */
.home-video-heading h2:before,
.home-focus-heading h2:before{
  display:none!important;
}
.home-feature-kicker{
  text-transform:none;
  font-size:11px;
  letter-spacing:.11em;
}

/* Le second repère FOCUS dans l'image est supprimé du HTML ; garde-fou cache
   aussi un éventuel fragment resté en cache. */
.home-focus-kicker{display:none!important}

/* Citation Maclean à la place de l'ancien manifeste de comptage. */
.manifesto.manifesto-maclean{
  display:block;
  padding:clamp(72px,8vw,125px) 7vw;
  background:var(--olive);
}
.manifesto-maclean blockquote{
  max-width:1280px;
  margin:0 auto;
  font-family:var(--handwritten);
  font-size:clamp(28px,3.3vw,50px);
  font-weight:400;
  line-height:1.42;
  letter-spacing:.005em;
  text-transform:none;
}
.manifesto-maclean .manifesto-attribution{
  max-width:1280px;
  margin:34px auto 0;
  text-align:right;
  font-family:var(--serif);
  font-size:clamp(15px,1.2vw,19px);
  font-style:italic;
  line-height:1.5;
}

/* Le texte déplacé dans l'espace libre à droite du footer. */
.site-footer.site-footer-v123{
  grid-template-columns:minmax(0,620px) minmax(280px,1fr)!important;
  column-gap:clamp(45px,7vw,120px)!important;
}
.footer-editorial-note{
  max-width:680px;
  justify-self:end;
  align-self:center;
  color:#f1eee5;
  font-family:var(--handwritten);
  font-size:clamp(20px,2vw,31px);
  font-weight:400;
  line-height:1.5;
  letter-spacing:.005em;
}
@media(max-width:780px){
  .site-footer.site-footer-v123{
    grid-template-columns:1fr!important;
  }
  .footer-editorial-note{
    max-width:100%;
    justify-self:start;
    margin-top:6px;
    font-size:22px;
  }
  .manifesto-maclean blockquote{
    font-size:28px;
    line-height:1.45;
  }
}



/* Version 1.4.11 : menu totalement homogène, respiration header, hero et signatures. */
@media(min-width:981px){
  /* Même taille réelle de pictogramme sur la home et tous les autres templates. */
  .site-header-v122 .main-nav{
    margin-left:18px!important;
    width:calc(100% - 18px)!important;
  }
  .site-header-v122 .main-nav>ul>li>a,
  .site-header-v122 .main-nav>div>ul>li>a{
    gap:10px!important;
  }
  .site-header-v122 .main-nav>ul>li>a .menu-leading-icon,
  .site-header-v122 .main-nav>div>ul>li>a .menu-leading-icon{
    flex:0 0 20px!important;
    width:20px!important;
    min-width:20px!important;
    height:20px!important;
    font-size:18px!important;
    line-height:20px!important;
    transform:none!important;
  }
}

/* Repère éditorial du grand article épinglé. */
.home-hero-kicker{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 18px;
  color:var(--olive);
  font-size:11px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.11em;
  text-transform:none;
}
.home-hero-kicker:before{
  content:'';
  flex:0 0 32px;
  width:32px;
  height:3px;
  background:var(--olive);
}

/* La citation devient une respiration éditoriale et non un deuxième hero. */
.manifesto-maclean blockquote{
  max-width:1100px;
  font-size:clamp(17px,1.5vw,23px)!important;
  line-height:1.72!important;
}
.manifesto-maclean .manifesto-attribution{
  max-width:1100px;
  margin-top:22px;
  font-size:clamp(14px,1vw,17px);
}

/* Signature personnelle dans le footer. */
.footer-editorial-signature{
  display:block;
  margin-top:18px;
  text-align:right;
  font-family:var(--handwritten);
  font-size:clamp(17px,1.45vw,22px);
  font-style:italic;
  line-height:1.25;
  color:var(--olive);
}
@media(max-width:780px){
  .manifesto-maclean blockquote{
    font-size:17px!important;
    line-height:1.7!important;
  }
  .footer-editorial-signature{
    text-align:left;
    font-size:18px;
  }
}


/* ========================================================================
   NICO & CO — V1.0.1
   Adaptation du socle graphique La Pêche à la Mouche, sans assistant IA.
   ======================================================================== */

/* Identité temporaire : mot-symbole typographique jusqu'au nouveau logo. */
.nico-brand{
  width:auto!important;
  min-width:230px!important;
  max-width:360px!important;
  display:flex!important;
  align-items:center!important;
  color:#fff;
}
.nico-brand .nico-brand-copy{
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  clip:auto!important;
  clip-path:none!important;
  white-space:normal!important;
  border:0!important;
  display:flex!important;
  flex-direction:column!important;
}
.nico-brand .brand-name{
  display:block!important;
  margin:0!important;
  font-family:var(--logo-display)!important;
  font-size:clamp(30px,2.45vw,45px)!important;
  font-weight:800!important;
  line-height:.92!important;
  letter-spacing:.015em!important;
  text-transform:none!important;
  white-space:nowrap!important;
}
.nico-brand .brand-tagline{
  display:block!important;
  margin:7px 0 0!important;
  padding-left:34px!important;
  font:italic 15px/1.1 var(--serif)!important;
  color:#d7ddd8!important;
  white-space:nowrap!important;
}
.nico-custom-logo{display:block;width:min(320px,28vw)}
.nico-custom-logo img{display:block;width:100%;height:auto;max-height:82px;object-fit:contain;object-position:left center}

@media(min-width:981px){
  .site-header.site-header-v122{
    grid-template-columns:minmax(230px,330px) minmax(0,1fr) max-content!important;
    column-gap:clamp(18px,2vw,34px)!important;
  }
  .site-header-v122 .main-nav>ul,
  .site-header-v122 .main-nav>div>ul{
    justify-content:flex-end!important;
    gap:clamp(8px,.85vw,18px)!important;
  }
  .site-header-v122 .main-nav>ul>li>a,
  .site-header-v122 .main-nav>div>ul>li>a{
    font-size:clamp(9px,.58vw,11px)!important;
    letter-spacing:.055em!important;
  }
}
@media(max-width:980px){
  .nico-brand{min-width:0!important;max-width:calc(100% - 108px)!important}
  .nico-brand .brand-name{font-size:32px!important}
  .nico-brand .brand-tagline{font-size:13px!important}
}
@media(max-width:600px){
  .nico-brand .brand-name{font-size:25px!important}
  .nico-brand .brand-tagline{font-size:11px!important;margin-top:4px!important;padding-left:26px!important;max-width:52vw;overflow:hidden;text-overflow:ellipsis}
  .nico-custom-logo{width:min(220px,56vw)}
}

/* Hero home : le titre principal est le récit, le H1 reste la marque dans le header. */
.nico-home-hero .featured-title a{color:inherit;text-decoration:none}
.nico-home-hero .home-hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin:0 0 17px;
  color:var(--olive);
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.nico-home-hero .home-hero-kicker:before{content:'';width:34px;height:3px;background:var(--olive)}

/* Barre de navigation éditoriale vers les catégories de la home. */
.destination-rail{
  display:flex;
  align-items:center;
  gap:0;
  overflow-x:auto;
  padding:0 5vw;
  background:var(--ink);
  color:#fff;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
  scrollbar-width:none;
}
.destination-rail::-webkit-scrollbar{display:none}
.destination-rail-label,
.destination-rail a{
  flex:0 0 auto;
  padding:18px 19px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
  white-space:nowrap;
}
.destination-rail-label{padding-left:0;color:var(--olive)}
.destination-rail a{border-left:1px solid rgba(255,255,255,.11)}
.destination-rail a:hover,.destination-rail a:focus-visible{background:var(--olive);color:var(--ink)}

.card-meta{
  margin:17px 0 8px!important;
  color:#626c64!important;
  font:800 9px/1.35 var(--sans)!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.post-card h3{font:600 29px/1.05 var(--serif);margin:0 0 11px}
.section-intro{max-width:680px;margin:18px 0 0;font:400 17px/1.55 var(--serif);color:#566057}
.home-category-section{scroll-margin-top:140px}
.home-category-section .section-head>div{min-width:0}
.home-category-section .section-head h2{margin:0}

/* Bloc de présentation de la famille sur la home. */
.home-team-teaser{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);
  min-height:560px;
  background:var(--dark);
  color:#fff;
}
.home-team-teaser-media{min-height:560px;overflow:hidden}
.home-team-teaser-media .hero-picture,.home-team-teaser-media img{display:block;width:100%;height:100%!important;object-fit:cover}
.home-team-teaser-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(35px,5vw,85px)}
.home-team-teaser-copy h2{margin:20px 0;font:600 clamp(48px,5vw,76px)/.95 var(--serif)}
.home-team-teaser-copy>p:not(.eyebrow){margin:0;max-width:520px;color:#cfd6d1;font:400 19px/1.65 var(--serif)}

/* Conclusion éditoriale légère, sans citation externe. */
.nico-manifesto{padding:90px 7vw;background:var(--olive);color:var(--ink)}
.nico-manifesto blockquote{max-width:1180px;margin:25px 0 0;font:500 clamp(40px,5vw,74px)/1 var(--serif)}

/* Page Nico & Co : hero + trois grands blocs alternés. */
.team-hero{position:relative;overflow:hidden;background:var(--dark);color:#fff}
.team-hero:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,16,15,.9),rgba(3,16,15,.38) 58%,rgba(3,16,15,.08)),linear-gradient(0deg,rgba(3,16,15,.72),transparent 55%)}
.team-hero>.hero-picture,.team-hero>img{display:block;width:100%;max-height:760px;object-fit:cover}
.team-hero-content{position:absolute;left:5vw;right:5vw;bottom:9%;z-index:2;max-width:860px}
.team-hero h1{margin:24px 0;font-family:var(--logo-display);font-size:clamp(56px,7vw,104px);font-weight:800;line-height:.9;letter-spacing:.01em}
.team-intro{max-width:980px!important;margin:0 auto!important;padding:85px 30px 70px!important}
.team-members{padding:0 5vw 110px}
.team-member{display:grid;grid-template-columns:1fr 1fr;min-height:540px;margin:0 0 54px;background:#f6f7f2;border:1px solid #c8cec8;overflow:hidden}
.team-member:nth-child(even) .team-member-media{order:2}
.team-member-media{min-height:540px;background:#b9c0b8}
.team-member-media img{display:block;width:100%;height:100%;min-height:540px;object-fit:cover}
.team-photo-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:540px;background:linear-gradient(145deg,#aeb8ad,#d4d8cf)}
.team-photo-placeholder span{display:grid;place-items:center;width:130px;height:130px;border:2px solid rgba(7,17,15,.35);border-radius:50%;font:800 70px/1 var(--logo-display);color:rgba(7,17,15,.6)}
.team-member-copy{display:flex;flex-direction:column;justify-content:center;padding:65px clamp(32px,5vw,80px)}
.team-member-copy h2{margin:18px 0 14px;font:700 clamp(52px,5.5vw,82px)/.92 var(--serif)}
.team-tagline{margin:0 0 26px;color:#66705f;font:italic 22px/1.45 var(--serif)}
.team-bio{font:400 18px/1.72 var(--serif);color:#2f3933}
.team-bio p{margin:0 0 18px}
.team-bio-empty{font:italic 16px/1.6 var(--serif);color:#727b74}

/* Article : pleine largeur éditoriale, pas de sidebar. */
.nico-article-layout,.nico-page-layout{display:block!important;max-width:1040px!important}
.nico-article-layout .entry-content,.nico-page-layout .entry-content{max-width:760px;margin:0 auto}
.article-hero-image .hero-picture{height:100%;aspect-ratio:auto!important}
.article-hero-image .article-main-image{display:block;width:100%;height:100%;min-height:650px;object-fit:cover}

/* Footer sans ancien logo ni signature de l'autre site. */
.nico-footer .footer-brand-wrap{display:flex;align-items:center}
.footer-wordmark{display:flex;flex-direction:column;color:#fff}
.footer-wordmark strong{font-family:var(--logo-display);font-size:clamp(38px,4vw,66px);line-height:.9;letter-spacing:.01em}
.footer-wordmark em{margin-top:11px;color:var(--olive);font:italic 18px/1.25 var(--serif)}
.nico-footer .footer-editorial-note{max-width:680px}

@media(max-width:980px){
  .home-team-teaser{grid-template-columns:1fr}
  .home-team-teaser-media{min-height:420px;max-height:560px}
  .team-member{grid-template-columns:1fr;min-height:0}
  .team-member:nth-child(even) .team-member-media{order:0}
  .team-member-media,.team-member-media img,.team-photo-placeholder{min-height:440px}
  .article-hero-image .article-main-image{min-height:420px}
}

@media(max-width:600px){
  .destination-rail{padding:0 20px}
  .destination-rail-label,.destination-rail a{padding-top:15px;padding-bottom:15px}
  .nico-home-hero .home-hero-kicker{font-size:9px}
  .home-team-teaser-media{min-height:300px}
  .home-team-teaser-copy{padding:55px 20px 65px}
  .home-team-teaser-copy h2{font-size:46px}
  .home-category-section{scroll-margin-top:95px}
  .section-intro{font-size:15px}
  .nico-manifesto{padding:70px 20px}
  .nico-manifesto blockquote{font-size:40px}
  .team-hero:before{display:none}
  .team-hero>.hero-picture,.team-hero>img{max-height:none}
  .team-hero-content{position:static;padding:38px 20px 48px;background:var(--dark)}
  .team-hero h1{font-size:52px}
  .team-intro{padding:60px 20px 45px!important}
  .team-members{padding:0 20px 70px}
  .team-member{margin-bottom:30px}
  .team-member-media,.team-member-media img,.team-photo-placeholder{min-height:330px}
  .team-member-copy{padding:45px 24px 52px}
  .team-member-copy h2{font-size:50px}
  .team-tagline{font-size:19px}
  .article-hero-image .article-main-image{min-height:300px}
}


/* ========================================================================
   NICO & CO — V1.0.1 — logo officiel intégré au thème
   ======================================================================== */
.nico-brand{
  min-width:0!important;
  max-width:none!important;
}
.nico-custom-logo{
  display:block!important;
  width:clamp(220px,18vw,270px)!important;
  line-height:0;
}
.nico-custom-logo img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.nico-footer-logo{
  display:block;
  width:min(100%,470px)!important;
  line-height:0;
}
.nico-footer-logo img{
  display:block;
  width:100%;
  height:auto;
}

@media(min-width:981px){
  .site-header.site-header-v122{
    height:150px!important;
    padding:6px 2.2vw!important;
    grid-template-columns:clamp(220px,19vw,290px) minmax(0,1fr) max-content!important;
    align-items:center!important;
    background:rgba(0,0,0,.94)!important;
  }
  .site-header-v122>.site-brand{align-self:center!important}
  .site-header-v122 .main-nav{align-self:center!important}
  .site-header-v122 .main-nav>ul,
  .site-header-v122 .main-nav>div>ul{margin-top:0!important;align-items:center!important}
  .site-header-v122 .header-actions{align-self:center!important}
  .site-main{padding-top:150px!important}
  .home-hero.home-hero-full-image{margin-top:-150px!important}
  .single .article-hero{margin-top:-150px!important}
  .single .article-hero-text{padding-top:220px!important}
}

@media(min-width:601px) and (max-width:980px){
  .site-header.site-header-v122{
    height:126px!important;
    padding:5px 24px!important;
    align-items:center!important;
    background:rgba(0,0,0,.94)!important;
  }
  .nico-custom-logo{width:205px!important}
  .site-main{padding-top:126px!important}
  .main-nav{top:126px!important}
  .home-hero.home-hero-full-image{margin-top:-126px!important}
  .single .article-hero{margin-top:-126px!important}
  .single .article-hero-text{padding-top:196px!important}
}

@media(max-width:600px){
  .site-header.site-header-v122{
    height:108px!important;
    padding:5px 14px!important;
    align-items:center!important;
    background:rgba(0,0,0,.96)!important;
  }
  .nico-brand{max-width:calc(100% - 96px)!important}
  .nico-custom-logo{width:174px!important;max-width:100%!important}
  .site-main{padding-top:108px!important}
  .main-nav{top:108px!important}
  .home-hero.home-hero-full-image{margin-top:-108px!important;padding-top:108px!important}
  .single .article-hero{margin-top:-108px!important}
  .single .article-hero-text{padding-top:158px!important}
  .nico-footer-logo{width:min(100%,330px)!important}
}

.nico-footer{background:#000!important}


/* ========================================================================
   NICO & CO — V1.0.2 — compatibilité logo + heroes plus panoramiques
   ======================================================================== */

/*
 * Le logo fourni par le thème est désormais un PNG optimisé : format de
 * repli universel et nouveau nom de fichier pour contourner les caches
 * navigateur/proxy qui pouvaient conserver l'ancien WebP.
 */
.nico-custom-logo img,
.nico-footer-logo img{
  image-rendering:auto;
}

/*
 * HOME : on ne laisse plus le ratio natif de la photo déterminer la hauteur.
 * Le hero devient un vrai bandeau éditorial panoramique.
 */
.nico-home-hero > .hero-picture{
  width:100%!important;
  height:640px!important;
  aspect-ratio:auto!important;
  overflow:hidden;
}
.nico-home-hero > .hero-picture > .hero-full-image,
.nico-home-hero > .hero-full-image{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/*
 * CATÉGORIES / TAGS : un peu moins haut encore que la home pour laisser
 * arriver rapidement les cartes de récits.
 */
.archive-hero.has-archive-image > .hero-picture{
  width:100%!important;
  height:500px!important;
  aspect-ratio:auto!important;
  overflow:hidden;
}
.archive-hero.has-archive-image > .hero-picture > .hero-full-image,
.archive-hero.has-archive-image > .hero-full-image{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

@media(min-width:981px){
  /* Le nouveau header fait 150 px : les heroes commencent exactement sous lui. */
  .archive-hero.has-archive-image{margin-top:-150px!important}
}

@media(min-width:601px) and (max-width:980px){
  .nico-home-hero > .hero-picture{height:520px!important}
  .archive-hero.has-archive-image{margin-top:-126px!important}
  .archive-hero.has-archive-image > .hero-picture{height:430px!important}
}

@media(max-width:600px){
  /* Sur mobile, image courte puis texte : pas de hero qui mange tout l'écran. */
  .nico-home-hero > .hero-picture{
    height:285px!important;
  }
  .archive-hero.has-archive-image{
    margin-top:-108px!important;
    padding-top:108px!important;
    overflow:visible!important;
  }
  .archive-hero.has-archive-image > .hero-picture{
    height:245px!important;
  }
}

/* ========================================================================
   NICO & CO — V1.0.7 — hero éditorial : image à droite + fondu noir
   ======================================================================== */

/*
 * Desktop : la photo n'occupe plus tout le hero. Elle est ancrée à droite,
 * tandis que la partie gauche reste noire. Un dégradé horizontal raccorde
 * les deux zones et protège la lisibilité du titre.
 * Tablette et mobile conservent le bandeau panoramique de la V1.0.2.
 */
@media(min-width:981px){
  .nico-home-hero,
  .archive-hero.has-archive-image{
    position:relative!important;
    overflow:hidden!important;
    background:#000!important;
  }

  /* HOME : hauteur éditoriale raisonnable, header compris dans le chevauchement. */
  .nico-home-hero{
    height:720px!important;
    min-height:720px!important;
    padding:0!important;
  }
  .nico-home-hero > .hero-picture,
  .nico-home-hero > .hero-full-image{
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:72%!important;
    height:100%!important;
    margin:0!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    z-index:0!important;
  }
  .nico-home-hero > .hero-picture > .hero-full-image,
  .nico-home-hero > .hero-full-image{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
  .nico-home-hero:before{
    display:block!important;
    content:''!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:
      linear-gradient(90deg,
        #000 0%,
        #000 25%,
        rgba(0,0,0,.98) 31%,
        rgba(0,0,0,.88) 39%,
        rgba(0,0,0,.60) 48%,
        rgba(0,0,0,.25) 58%,
        rgba(0,0,0,0) 69%),
      linear-gradient(0deg,rgba(0,0,0,.52) 0%,rgba(0,0,0,0) 46%)!important;
  }
  .nico-home-hero .home-hero-content{
    position:absolute!important;
    left:5vw!important;
    right:auto!important;
    bottom:8%!important;
    width:min(46vw,760px)!important;
    max-width:760px!important;
    z-index:2!important;
  }

  /* CATÉGORIES / TAGS : même principe, légèrement plus compact. */
  .archive-hero.has-archive-image{
    height:600px!important;
    min-height:600px!important;
    padding:0!important;
  }
  .archive-hero.has-archive-image > .hero-picture,
  .archive-hero.has-archive-image > .hero-full-image{
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:70%!important;
    height:100%!important;
    margin:0!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    z-index:0!important;
  }
  .archive-hero.has-archive-image > .hero-picture > .hero-full-image,
  .archive-hero.has-archive-image > .hero-full-image{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
  .archive-hero.has-archive-image:before{
    display:block!important;
    content:''!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:
      linear-gradient(90deg,
        #000 0%,
        #000 27%,
        rgba(0,0,0,.98) 33%,
        rgba(0,0,0,.86) 41%,
        rgba(0,0,0,.56) 50%,
        rgba(0,0,0,.20) 60%,
        rgba(0,0,0,0) 70%),
      linear-gradient(0deg,rgba(0,0,0,.44) 0%,rgba(0,0,0,0) 44%)!important;
  }
  .archive-hero.has-archive-image .archive-hero-content{
    position:absolute!important;
    left:5vw!important;
    right:auto!important;
    bottom:9%!important;
    width:min(45vw,720px)!important;
    max-width:720px!important;
    z-index:2!important;
  }
}

/* ========================================================================
   NICO & CO — V1.0.8 — landing page éditoriale intégrée au thème
   Le CSS vit dans le thème : aucun <style> n'est nécessaire dans Gutenberg.
   ======================================================================== */

.team-page-custom{
  margin:0!important;
  padding:0!important;
  max-width:none!important;
  background:#030504;
}
.team-page-custom .nc-team{
  --nc-black:#030504;
  --nc-black-soft:#09100c;
  --nc-white:#f6f3ea;
  --nc-muted:#aaa99f;
  --nc-green:#728d2e;
  --nc-green-light:#b7c48b;
  --nc-gold:#d59a31;
  --nc-line:rgba(255,255,255,.12);
  width:100%;
  margin:0;
  background:radial-gradient(circle at 82% 18%,rgba(114,141,46,.12),transparent 30%),var(--nc-black);
  color:var(--nc-white);
  overflow:hidden;
  font-family:var(--sans);
}
.team-page-custom .nc-team *,
.team-page-custom .nc-team *::before,
.team-page-custom .nc-team *::after{box-sizing:border-box}
.team-page-custom .nc-team img{display:block;max-width:100%;height:auto}

/* HERO */
.team-page-custom .nc-team-hero{
  position:relative;
  min-height:720px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#000;
  isolation:isolate;
}
.team-page-custom .nc-team-hero-images{
  position:absolute;
  inset:0;
  z-index:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:3px;
}
.team-page-custom .nc-team-hero-image{position:relative;overflow:hidden;background:#111}
.team-page-custom .nc-team-hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.9) contrast(1.06);
  transform:scale(1.015);
}
.team-page-custom .nc-team-hero-image::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(0,0,0,.02) 18%,rgba(0,0,0,.22) 55%,rgba(0,0,0,.9) 100%);
}
.team-page-custom .nc-team-hero::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.26) 42%,rgba(0,0,0,.08) 74%,rgba(0,0,0,.2) 100%),
    linear-gradient(0deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.32) 48%,rgba(0,0,0,.05) 75%);
}
.team-page-custom .nc-team-hero-content{
  position:relative;
  z-index:2;
  width:min(1400px,90vw);
  margin:0 auto;
  padding:100px 0 72px;
}
.team-page-custom .nc-team-kicker{
  display:flex;
  align-items:center;
  gap:15px;
  margin:0 0 18px;
  color:var(--nc-green-light);
  font:800 12px/1.2 var(--sans);
  letter-spacing:.22em;
  text-transform:uppercase;
}
.team-page-custom .nc-team-kicker::before{content:'';width:54px;height:3px;background:var(--nc-green-light)}
.team-page-custom .nc-team-hero h1{
  max-width:1050px;
  margin:0;
  color:#fff;
  font:900 clamp(74px,9vw,150px)/.8 var(--logo-display);
  letter-spacing:-.05em;
  text-transform:uppercase;
}
.team-page-custom .nc-team-hero h1 span{
  display:block;
  color:transparent;
  -webkit-text-stroke:1.5px rgba(255,255,255,.78);
}
.team-page-custom .nc-team-hero-lead{
  max-width:850px;
  margin:32px 0 0;
  color:rgba(255,255,255,.92);
  font:500 clamp(21px,2vw,31px)/1.38 var(--serif);
}
.team-page-custom .nc-team-hero-lead strong{color:#fff;font-weight:800}

/* MANIFESTE */
.team-page-custom .nc-team-manifesto{
  position:relative;
  max-width:1160px;
  margin:0 auto;
  padding:130px 40px 145px;
  text-align:center;
}
.team-page-custom .nc-team-manifesto::before{
  content:'NICO & CO';
  position:absolute;
  top:45px;
  left:50%;
  transform:translateX(-50%);
  color:rgba(255,255,255,.025);
  font:900 clamp(80px,14vw,210px)/1 var(--logo-display);
  letter-spacing:-.08em;
  white-space:nowrap;
  pointer-events:none;
}
.team-page-custom .nc-team-manifesto p{
  position:relative;
  z-index:1;
  margin:0;
  color:#fff;
  font:700 clamp(28px,3.4vw,54px)/1.22 var(--serif);
  letter-spacing:-.025em;
}
.team-page-custom .nc-team-manifesto em{color:var(--nc-green-light);font-style:normal}

/* PROFILS */
.team-page-custom .nc-person{
  width:min(1400px,90vw);
  margin:0 auto 120px;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:clamp(50px,7vw,110px);
  align-items:center;
}
.team-page-custom .nc-person--reverse .nc-person-visual{order:2}
.team-page-custom .nc-person--reverse .nc-person-copy{order:1}
.team-page-custom .nc-person-visual{position:relative}
.team-page-custom .nc-person-photo{
  position:relative;
  overflow:hidden;
  background:#111;
  box-shadow:0 35px 80px rgba(0,0,0,.35);
}
.team-page-custom .nc-person-photo::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);
}
.team-page-custom .nc-person-photo img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center;
  transition:transform .6s ease;
}
.team-page-custom .nc-person:hover .nc-person-photo img{transform:scale(1.025)}
.team-page-custom .nc-person-number{
  position:absolute;
  right:-24px;
  bottom:-52px;
  z-index:2;
  color:var(--nc-green);
  text-shadow:0 10px 40px rgba(0,0,0,.5);
  font:900 clamp(110px,14vw,210px)/.7 var(--logo-display);
  letter-spacing:-.08em;
}
.team-page-custom .nc-person--reverse .nc-person-number{right:auto;left:-24px}
.team-page-custom .nc-person-eyebrow{
  margin:0 0 18px;
  color:var(--nc-gold);
  font:800 12px/1.2 var(--sans);
  letter-spacing:.2em;
  text-transform:uppercase;
}
.team-page-custom .nc-person h2{
  margin:0 0 8px;
  color:#fff;
  font:900 clamp(66px,8vw,122px)/.82 var(--logo-display);
  letter-spacing:-.06em;
  text-transform:uppercase;
}
.team-page-custom .nc-person-tagline{
  margin:0 0 34px;
  color:var(--nc-green-light);
  font:700 clamp(22px,2.1vw,32px)/1.2 var(--serif);
}
.team-page-custom .nc-person-copy p:not(.nc-person-tagline):not(.nc-person-punch){
  margin:0 0 20px;
  color:#d6d5ce;
  font:400 18px/1.78 var(--serif);
}
.team-page-custom .nc-person-copy p strong{color:#fff}
.team-page-custom .nc-person-punch{
  margin:36px 0!important;
  padding:24px 0 24px 28px;
  border-left:4px solid var(--nc-green);
  color:#fff!important;
  font:700 clamp(21px,2vw,27px)/1.45 var(--serif)!important;
}
.team-page-custom .nc-person-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:35px}
.team-page-custom .nc-person-links a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 16px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  color:#fff;
  text-decoration:none;
  font:750 12px/1.2 var(--sans);
  letter-spacing:.03em;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.team-page-custom .nc-person-links a::after{content:'→';color:var(--nc-green-light)}
.team-page-custom .nc-person-links a:hover{background:rgba(255,255,255,.06);border-color:var(--nc-green);transform:translateY(-2px)}

/* FINALE */
.team-page-custom .nc-team-finale{
  margin-top:160px;
  padding:145px 40px;
  text-align:center;
  border-top:1px solid var(--nc-line);
  background:linear-gradient(135deg,rgba(114,141,46,.16),transparent 48%),#070b08;
}
.team-page-custom .nc-team-finale-inner{max-width:1100px;margin:0 auto}
.team-page-custom .nc-team-finale-small{
  margin:0 0 22px;
  color:var(--nc-green-light);
  font:800 12px/1.2 var(--sans);
  letter-spacing:.23em;
  text-transform:uppercase;
}
.team-page-custom .nc-team-finale h2{
  margin:0;
  color:#fff;
  font:900 clamp(50px,7vw,112px)/.9 var(--logo-display);
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.team-page-custom .nc-team-finale p{
  max-width:820px;
  margin:35px auto 0;
  color:#c8c7c0;
  font:400 clamp(20px,2vw,26px)/1.55 var(--serif);
}
.team-page-custom .nc-team-finale p strong{color:#fff}

@media(max-width:980px){
  .team-page-custom .nc-team-hero{min-height:650px}
  .team-page-custom .nc-team-hero-content{width:calc(100% - 40px);padding:90px 0 50px}
  .team-page-custom .nc-team-hero-images{grid-template-columns:1fr 1fr}
  .team-page-custom .nc-team-hero-image:nth-child(3){display:none}
  .team-page-custom .nc-team-manifesto{padding:100px 25px 115px}
  .team-page-custom .nc-person,
  .team-page-custom .nc-person--reverse{width:calc(100% - 50px);grid-template-columns:1fr;gap:55px;margin-bottom:100px}
  .team-page-custom .nc-person--reverse .nc-person-visual,
  .team-page-custom .nc-person--reverse .nc-person-copy{order:initial}
  .team-page-custom .nc-person-photo img{aspect-ratio:4/4.8}
  .team-page-custom .nc-person-number,
  .team-page-custom .nc-person--reverse .nc-person-number{right:10px;left:auto;bottom:-35px}
  .team-page-custom .nc-team-finale{margin-top:100px;padding:100px 25px}
}

@media(max-width:600px){
  .team-page-custom .nc-team-hero{min-height:610px}
  .team-page-custom .nc-team-hero-images{grid-template-columns:1fr}
  .team-page-custom .nc-team-hero-image:nth-child(2),
  .team-page-custom .nc-team-hero-image:nth-child(3){display:none}
  .team-page-custom .nc-team-hero-image img{object-position:45% center}
  .team-page-custom .nc-team-hero::before{background:linear-gradient(to bottom,rgba(0,0,0,.05) 8%,rgba(0,0,0,.28) 42%,rgba(0,0,0,.96) 82%)}
  .team-page-custom .nc-team-hero-content{width:calc(100% - 30px);padding:70px 0 44px}
  .team-page-custom .nc-team-kicker{font-size:10px;letter-spacing:.18em}
  .team-page-custom .nc-team-hero h1{font-size:clamp(58px,20vw,94px)}
  .team-page-custom .nc-team-hero-lead{font-size:19px}
  .team-page-custom .nc-team-manifesto{padding:82px 20px 92px}
  .team-page-custom .nc-team-manifesto p{font-size:26px}
  .team-page-custom .nc-person,
  .team-page-custom .nc-person--reverse{width:calc(100% - 36px);gap:46px;margin-bottom:84px}
  .team-page-custom .nc-person h2{font-size:clamp(58px,19vw,90px)}
  .team-page-custom .nc-person-copy p:not(.nc-person-tagline):not(.nc-person-punch){font-size:17px}
  .team-page-custom .nc-person-punch{padding-left:20px}
  .team-page-custom .nc-person-links{flex-direction:column;align-items:stretch}
  .team-page-custom .nc-person-links a{justify-content:space-between;width:100%}
  .team-page-custom .nc-team-finale{padding:85px 20px}
}


/* ========================================================================
   NICO & CO — V1.0.9 — header noir, menu prioritaire et hero lisible
   ======================================================================== */

/* Sur cette landing, le header translucide laissait transparaître le fond
   clair de body/site-main et pouvait créer une bande claire. On force un
   fond noir continu sous et dans le header. */
body.page-template-page-nico-and-co,
body.page-template-page-nico-and-co .site-main,
body.page-template-page-nico-and-co .team-page-custom{
  background:#030504!important;
}
body.page-template-page-nico-and-co .site-header.site-header-v122{
  background:#000!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border-bottom-color:rgba(255,255,255,.12)!important;
}

/* Desktop : le texte vit dans une vraie zone noire à gauche et les trois
   portraits commencent plus à droite. Nico n'est donc plus masqué par le
   grand titre NICO & CO. */
@media(min-width:981px){
  .team-page-custom .nc-team-hero-images{
    inset:0 0 0 35%!important;
  }
  .team-page-custom .nc-team-hero::before{
    background:
      linear-gradient(90deg,#000 0%,#000 29%,rgba(0,0,0,.98) 34%,rgba(0,0,0,.72) 39%,rgba(0,0,0,.18) 49%,rgba(0,0,0,.05) 65%,rgba(0,0,0,.14) 100%),
      linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.28) 42%,rgba(0,0,0,.03) 74%)!important;
  }
  .team-page-custom .nc-team-hero-content{
    width:min(1400px,92vw)!important;
    padding:100px 0 72px!important;
  }
  .team-page-custom .nc-team-kicker,
  .team-page-custom .nc-team-hero h1,
  .team-page-custom .nc-team-hero-lead{
    max-width:min(31vw,520px)!important;
  }
  .team-page-custom .nc-team-hero h1{
    font-size:clamp(70px,7.2vw,126px)!important;
    line-height:.82!important;
  }
  .team-page-custom .nc-team-hero-lead{
    font-size:clamp(20px,1.55vw,27px)!important;
  }
  .team-page-custom .nc-team-hero-image:first-child img{
    object-position:center 28%!important;
  }
}

/* Tablette : garder le visage dans la partie haute du cadre, le texte étant
   davantage concentré dans le bas grâce au dégradé. */
@media(min-width:601px) and (max-width:980px){
  .team-page-custom .nc-team-hero-image:first-child img{
    object-position:center 24%!important;
  }
  .team-page-custom .nc-team-hero-content{
    padding-bottom:42px!important;
  }
}


/* V1.0.10 — navigation principale verrouillée : Accueil → Nico & Co → catégories. */


/* ========================================================================
   V1.0.11 — encart éditorial Fred dans le footer
   ======================================================================== */
.nico-footer .footer-fred-card{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:18px;
  width:min(100%,900px);
  margin:4px 0 0;
  padding:20px 24px;
  border:1px solid rgba(183,196,139,.32);
  border-left:4px solid var(--olive);
  background:linear-gradient(105deg,rgba(183,196,139,.095),rgba(255,255,255,.018) 58%,transparent);
}
.nico-footer .footer-fred-icon{
  width:58px;
  height:58px;
  flex:0 0 58px;
  display:grid;
  place-items:center;
  border:1px solid rgba(183,196,139,.48);
  border-radius:50%;
  color:var(--olive);
  background:rgba(183,196,139,.055);
}
.nico-footer .footer-fred-copy{min-width:0}
.nico-footer .footer-fred-kicker{
  display:block;
  margin:0 0 6px;
  color:var(--olive);
  font:800 10px/1.2 var(--sans);
  letter-spacing:.17em;
  text-transform:uppercase;
}
.nico-footer .footer-fred-copy p{
  margin:0;
  max-width:760px;
  color:#c8cec9;
  font:400 16px/1.55 var(--serif);
}
.nico-footer .footer-fred-copy a{
  color:#fff;
  font-weight:700;
  text-decoration-line:underline;
  text-decoration-color:var(--olive);
  text-decoration-thickness:2px;
  text-underline-offset:4px;
  transition:color .2s ease,text-decoration-color .2s ease;
}
.nico-footer .footer-fred-copy a:hover,
.nico-footer .footer-fred-copy a:focus-visible{
  color:var(--olive);
  text-decoration-color:#fff;
}
@media(max-width:600px){
  .nico-footer .footer-fred-card{
    grid-template-columns:44px minmax(0,1fr);
    gap:14px;
    padding:17px 16px;
  }
  .nico-footer .footer-fred-icon{
    width:44px;
    height:44px;
  }
  .nico-footer .footer-fred-icon svg{width:27px;height:27px}
  .nico-footer .footer-fred-copy p{font-size:15px;line-height:1.5}
}


/* ========================================================================
   V1.0.12 — description SEO repliable des catégories
   40 premiers mots visibles, texte complet présent dans le HTML.
   ======================================================================== */
.category-seo-description{
  max-width:720px;
  margin:22px 0 0;
  color:#d9dfda;
  font:400 17px/1.65 var(--serif);
}
.category-seo-description p{margin:0}
.category-seo-description .category-seo-rest[hidden]{display:none!important}
.category-seo-toggle{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:12px 0 0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--olive);
  font:800 10px/1.2 var(--sans);
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
}
.category-seo-toggle:hover,
.category-seo-toggle:focus-visible{color:#fff}
.category-seo-toggle .category-seo-toggle-mark{
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border:1px solid currentColor;
  border-radius:50%;
  font:700 16px/1 var(--sans);
}
.category-seo-description.is-expanded .category-seo-toggle{
  margin-top:16px;
}

/* Avec une image de hero, l'ouverture doit agrandir le bandeau au lieu
   de faire déborder la description sur l'image. */
@media(min-width:981px){
  .archive-hero.has-archive-image.seo-expanded{
    height:auto!important;
    min-height:600px!important;
    padding:225px 0 72px!important;
  }
  .archive-hero.has-archive-image.seo-expanded .archive-hero-content{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:min(45vw,720px)!important;
    max-width:720px!important;
    margin-left:5vw!important;
  }
}
@media(max-width:600px){
  .category-seo-description{
    margin-top:18px;
    font-size:16px;
    line-height:1.6;
  }
}


/* ========================================================================
   NICO & CO — V1.0.15 — header desktop plus haut pour contenir le logo
   ======================================================================== */
@media(min-width:981px){
  .site-header.site-header-v122{
    height:174px!important;
    padding:8px 2.2vw!important;
    overflow:visible;
  }
  .nico-custom-logo{
    width:clamp(220px,18vw,270px)!important;
  }
  .nico-custom-logo img{
    max-height:158px!important;
    width:auto!important;
    max-width:100%!important;
  }
  .site-main{padding-top:174px!important}
  .home-hero.home-hero-full-image{margin-top:-174px!important}
  .single .article-hero{margin-top:-174px!important}
  .single .article-hero-text{padding-top:244px!important}
}
