/* Utile Demain — CSS complémentaire (généré). Slider/ticker sans JS, cartes, a11y. */
:root{--n0vnk-radius:10px;--n0vnk-shadow:0 6px 24px rgba(0,0,0,.08);--n0vnk-covdim:0.50}

/* Fond de page : image fixe, opacité header/footer, panneau de contenu */
.n0vnk-panel{background-color:color-mix(in srgb, var(--wp--preset--color--surface) 94%, transparent);border-radius:var(--n0vnk-radius);padding:clamp(1.25rem,4vw,2.5rem);box-shadow:var(--n0vnk-shadow)}

/* Menu principal — rendu esthétique */
.n0vnk-nav a,.n0vnk-nav .wp-block-navigation-item__content{font-weight:700}
.n0vnk-nav{background-color:var(--wp--preset--color--base);padding-block:.75rem;padding-inline:.95rem;border-top:1px solid color-mix(in srgb, currentColor 22%, transparent);border-bottom:1px solid color-mix(in srgb, currentColor 22%, transparent)}
.n0vnk-topbar{background:var(--wp--preset--color--surface);font-size:.85rem}
.n0vnk-topbar,.n0vnk-topbar a,.n0vnk-topbar .wp-block-site-tagline,.n0vnk-topbar .n0vnk-topbar-txt{color:var(--wp--preset--color--contrast)}
:where(a,button,input,.wp-block-button__link):focus-visible{outline:2px solid var(--wp--preset--color--primary);outline-offset:2px}

/* Filet de sécurité images : toute image du contenu reste dans la colonne, y compris
   un <img> brut sans width/srcset inséré par le pipeline de rédaction (sinon une image
   large déborde et passe sous la sidebar). */
.wp-block-post-content img{max-width:100%;height:auto}

/* Icônes de section (iconFeatures / iconList) — SVG inline auto-hébergé */
.n0vnk-icon{color:var(--wp--preset--color--primary);line-height:0;margin-bottom:.6rem}
.n0vnk-icon svg{width:42px;height:42px}
/* iconFeatures : grille qui enroule (3 à 6 atouts), tout centré */
.n0vnk-iconfeat.wp-block-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--wp--preset--spacing--40)}
.n0vnk-iconfeat .wp-block-column{text-align:center}
.n0vnk-iconfeat .n0vnk-icon{display:flex;justify-content:center;margin-bottom:.6rem}
.n0vnk-iconlist{list-style:none;margin:0;padding:0}
.n0vnk-iconlist li{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.5rem}
.n0vnk-iconlist .n0vnk-icon{margin:0;flex:0 0 auto}
.n0vnk-iconlist .n0vnk-icon svg{width:22px;height:22px}

/* Cartes de listing en grille */
.n0vnk-cards .wp-block-post-template{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--wp--preset--spacing--40)}
.n0vnk-cards .wp-block-post,.n0vnk-card{background:var(--wp--preset--color--surface);border-radius:var(--n0vnk-radius);overflow:hidden;box-shadow:var(--n0vnk-shadow);display:flex;flex-direction:column}
.n0vnk-cards .wp-block-post .wp-block-post-featured-image img,.n0vnk-card .wp-block-post-featured-image img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto}
.n0vnk-cards .wp-block-post>:not(.wp-block-post-featured-image),.n0vnk-card>:not(.wp-block-post-featured-image){padding-inline:var(--wp--preset--spacing--30)}
.n0vnk-cards .wp-block-post>:last-child{padding-bottom:var(--wp--preset--spacing--30)}

/* Article-hero : le dernier post réel en grand (image + texte + « Découvrir ») */
.n0vnk-articlehero .wp-block-post-featured-image img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto;border-radius:12px}
.n0vnk-articlehero .wp-block-post-terms{color:var(--wp--preset--color--primary);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.n0vnk-articlehero .wp-block-post-title{margin:.4rem 0 .6rem;line-height:1.1}
.n0vnk-articlehero .wp-block-read-more{display:inline-block;margin-top:1rem;padding:.55rem 1.15rem;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--base);border-radius:var(--n0vnk-radius);text-decoration:none;font-weight:600}
.n0vnk-articlehero .wp-block-read-more:hover{opacity:.9}

/* Colonne latérale optionnelle (récents / catégories / sélection) */
.n0vnk-sidebar{background:var(--wp--preset--color--surface);border-radius:var(--n0vnk-radius);padding:var(--wp--preset--spacing--40);box-shadow:var(--n0vnk-shadow)}
@media (min-width:782px){.n0vnk-sidebar{margin-top:var(--wp--preset--spacing--40)}}
/* Widgets avec image à la une (medium, centrée, cliquable) */
.n0vnk-widgetlist-img .wp-block-post{border-bottom:none;padding-bottom:0;margin-bottom:var(--wp--preset--spacing--30);text-align:center}
.n0vnk-widgetlist-img .wp-block-post-featured-image{margin:0 0 .4rem}
.n0vnk-widgetlist-img .wp-block-post-featured-image img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:6px;display:block}
.n0vnk-sidebar h3{margin:1.3rem 0 .6rem;text-transform:uppercase;letter-spacing:.03em}
.n0vnk-sidebar h3:first-child{margin-top:0}
.n0vnk-widgetlist .wp-block-post-template{display:block;margin:0;padding:0;list-style:none}
.n0vnk-widgetlist .wp-block-post{margin:0 0 .6rem;padding-bottom:.6rem;border-bottom:1px solid rgba(0,0,0,.08)}
.n0vnk-widgetlist .wp-block-post-title{margin:0;line-height:1.3}
.n0vnk-widgetlist .wp-block-post-date{color:var(--wp--preset--color--muted)}
.n0vnk-sidebar .wp-block-categories{list-style:none;margin:0;padding:0}
.n0vnk-sidebar .wp-block-categories li{margin:.3rem 0}

/* Carte cover overlay (mise en forme déportée du markup → blocs valides) : voile en
   bas-gauche, coins arrondis, texte sur l'image. */
.n0vnk-cov{min-height:240px;border-radius:var(--n0vnk-radius);overflow:hidden;align-items:flex-end;justify-content:flex-start;padding:var(--wp--preset--spacing--40)}
/* Overlay = voile NOIR qui assombit l'image (lisibilité). Intensité réglable via
   --n0vnk-covdim (spec.layout.cardOverlayDim), indépendante du dimRatio du markup.
   Sélecteur à FORTE spécificité (0,4,0) pour battre le CSS de core
   (.wp-block-cover .wp-block-cover__background.has-background-dim-N = 0,3,0). */
.n0vnk-cov.wp-block-cover .wp-block-cover__background.has-background-dim{background-color:#000;opacity:var(--n0vnk-covdim)}
.n0vnk-cov .wp-block-cover__inner-container{width:100%}
.n0vnk-cov .wp-block-post-title,.n0vnk-cov .wp-block-post-title a,.n0vnk-cov .wp-block-post-terms,.n0vnk-cov .wp-block-post-terms a,.n0vnk-cov .wp-block-post-excerpt{color:#fff}
.n0vnk-cov .wp-block-post-title a{text-decoration:none}
.n0vnk-cov .wp-block-post-title a:hover{text-decoration:underline}
.n0vnk-cov .wp-block-post-terms{text-transform:uppercase;letter-spacing:.03em;font-weight:600;opacity:.92}

/* Mosaïque de vitrine : 1 grande vignette (2×2) + petites, texte sur l'image */
.n0vnk-mosaic .wp-block-post-template{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(150px,1fr);gap:var(--wp--preset--spacing--40);grid-auto-flow:dense}
.n0vnk-mosaic .wp-block-post{margin:0}
.n0vnk-mosaic .wp-block-post:first-child{grid-column:span 2;grid-row:span 2}
.n0vnk-mosaic .n0vnk-cov{min-height:0;height:100%}
@media (max-width:781px){.n0vnk-mosaic .wp-block-post-template{grid-template-columns:1fr 1fr;grid-auto-rows:minmax(140px,1fr)}.n0vnk-mosaic .wp-block-post:first-child{grid-column:1 / -1;grid-row:span 1}}

/* Cartes OVERLAY : texte SUR l'image via core/cover (image à la une + voile). */
.n0vnk-overlaycards .wp-block-post-template{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--wp--preset--spacing--40)}
.n0vnk-overlaycards .wp-block-post{margin:0}
.n0vnk-overlaycards .wp-block-post-title,.n0vnk-overlaycards .wp-block-post-title a,.n0vnk-overlaycards .wp-block-post-terms,.n0vnk-overlaycards .wp-block-post-terms a{color:#fff}
/* Pages catégories : nombre de colonnes forcé (override de l'auto-fill) + option masonry. */
.n0vnk-cols-1 .wp-block-post-template{grid-template-columns:1fr}
.n0vnk-cols-2 .wp-block-post-template{grid-template-columns:repeat(2,1fr)}
.n0vnk-cols-3 .wp-block-post-template{grid-template-columns:repeat(3,1fr)}
.n0vnk-cols-4 .wp-block-post-template{grid-template-columns:repeat(4,1fr)}
@media (max-width:781px){.n0vnk-cols-3 .wp-block-post-template,.n0vnk-cols-4 .wp-block-post-template{grid-template-columns:repeat(2,1fr)}}
.n0vnk-masonry .wp-block-post-template{display:block;column-count:3;column-gap:var(--wp--preset--spacing--40)}
.n0vnk-masonry.n0vnk-cols-1 .wp-block-post-template{column-count:1}
.n0vnk-masonry.n0vnk-cols-2 .wp-block-post-template{column-count:2}
.n0vnk-masonry.n0vnk-cols-3 .wp-block-post-template{column-count:3}
.n0vnk-masonry.n0vnk-cols-4 .wp-block-post-template{column-count:4}
.n0vnk-masonry .wp-block-post{break-inside:avoid;-webkit-column-break-inside:avoid;display:inline-block;width:100%;margin:0 0 var(--wp--preset--spacing--40)}
@media (max-width:781px){.n0vnk-masonry .wp-block-post-template{column-count:2}.n0vnk-masonry.n0vnk-cols-1 .wp-block-post-template{column-count:1}}
.n0vnk-overlaycards .wp-block-post-title{margin:.15rem 0 0}
.n0vnk-overlaycards .wp-block-post-title a{text-decoration:none}
.n0vnk-overlaycards .wp-block-post-title a:hover{text-decoration:underline}
.n0vnk-overlaycards .wp-block-post-terms{text-transform:uppercase;letter-spacing:.03em;font-weight:600;opacity:.92}

/* Article-héro OVERLAY (grande couverture) */
.n0vnk-heroverlay .wp-block-cover{min-height:60vh}
.n0vnk-heroverlay .wp-block-post-title,.n0vnk-heroverlay .wp-block-post-title a,.n0vnk-heroverlay .wp-block-post-terms,.n0vnk-heroverlay .wp-block-post-excerpt{color:#fff}
.n0vnk-heroverlay .wp-block-post-title a{text-decoration:none}
.n0vnk-heroverlay .wp-block-post-terms{text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.n0vnk-heroverlay .wp-block-read-more{display:inline-block;margin-top:1rem;padding:.6rem 1.2rem;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--base);border-radius:var(--n0vnk-radius);text-decoration:none;font-weight:600}
/* Hero statique AVEC image de fond : voile NOIR réglable (var --n0vnk-covdim), comme
   les cartes. Forte spécificité (0,4,0) pour battre le has-background-dim-N de core. */
.n0vnk-hero.wp-block-cover .wp-block-cover__background.has-background-dim{background-color:#000;opacity:var(--n0vnk-covdim)}
/* Boutons du bandeau d'accroche : secondaires (outline) en clair sur le fond sombre */
.n0vnk-herobtns{margin-top:1.4rem}
.n0vnk-herobtns .is-style-outline .wp-block-button__link{background:transparent;border:2px solid var(--wp--preset--color--base);color:var(--wp--preset--color--base)}
.n0vnk-herobtns .is-style-outline .wp-block-button__link:hover{background:var(--wp--preset--color--base);color:var(--wp--preset--color--contrast)}

/* Étiquettes d'article en #hashtags */
.n0vnk-tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.n0vnk-tags a{display:inline-block;padding:.2rem .65rem;background:var(--wp--preset--color--surface);border-radius:999px;font-size:.82rem;color:var(--wp--preset--color--primary);text-decoration:none}
.n0vnk-tags a::before{content:"#"}
.n0vnk-tags a:hover{background:var(--wp--preset--color--primary);color:var(--wp--preset--color--base)}

/* Boutons de partage social (liens statiques) */
.n0vnk-share{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.n0vnk-share-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:0;padding:0;cursor:pointer;border-radius:50%;background:var(--wp--preset--color--surface);color:var(--wp--preset--color--contrast);transition:background .2s ease,color .2s ease}
.n0vnk-share-btn:hover{background:var(--wp--preset--color--primary);color:var(--wp--preset--color--base)}

/* Catégorie d'article : styles positionnables (au lieu d'un simple lien bleu) */
.n0vnk-cat{margin:.15rem 0}
.n0vnk-cat a{text-decoration:none;color:var(--wp--preset--color--primary);font-weight:600}
.n0vnk-cat a:hover{text-decoration:underline}
.n0vnk-cat-up a{text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}
.n0vnk-cat-pill a{display:inline-block;padding:.22rem .7rem;border-radius:999px;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--base)}
.n0vnk-cat-pill a:hover{filter:brightness(.92);text-decoration:none}
.n0vnk-cat-soft a{display:inline-block;padding:.22rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--wp--preset--color--primary) 14%,transparent);color:var(--wp--preset--color--primary)}
.n0vnk-cat-soft a:hover{background:color-mix(in srgb,var(--wp--preset--color--primary) 24%,transparent);text-decoration:none}

/* Bloc auteur sous l'article */
.n0vnk-author{margin-top:var(--wp--preset--spacing--50);padding-top:var(--wp--preset--spacing--40);border-top:1px solid color-mix(in srgb,var(--wp--preset--color--contrast) 14%,transparent)}
.n0vnk-author .wp-block-avatar{margin-bottom:.4rem}
.n0vnk-author-center{text-align:center}
.n0vnk-author-center .wp-block-avatar img{margin-left:auto;margin-right:auto}
/* Formes d'avatar : rond (défaut), carré, arrondi, squircle (galet), hexagone */
.n0vnk-av-round .wp-block-avatar img{border-radius:50%}
.n0vnk-av-square .wp-block-avatar img{border-radius:0}
.n0vnk-av-rounded .wp-block-avatar img{border-radius:14px}
.n0vnk-av-squircle .wp-block-avatar img{border-radius:42% 58% 56% 44% / 48% 44% 56% 52%}
.n0vnk-av-hexagon .wp-block-avatar img{border-radius:0;clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%)}

/* Aération : rythme vertical entre sections de home + marge avant le footer */
.n0vnk-home{margin-bottom:var(--wp--preset--spacing--60)}
.n0vnk-home > * + *{margin-top:var(--wp--preset--spacing--60)}
/* Override de marge du haut PAR SECTION (gapTop) — priorité sur l'espacement global */
.n0vnk-home > .n0vnk-gap-none{margin-top:0}
.n0vnk-home > .n0vnk-gap-compact{margin-top:clamp(1rem,3vw,1.75rem)}
.n0vnk-home > .n0vnk-gap-spacious{margin-top:clamp(3.5rem,8vw,6rem)}
/* 1re section collée en haut (pas d'espace vide entre header et 1re section) */
.n0vnk-home > *:first-child{margin-top:0}
/* héro/cover pleine largeur en 1re section : remonte sous le header (edge-to-edge) */
.n0vnk-home > .wp-block-cover:first-child{margin-top:calc(-1 * var(--wp--preset--spacing--40))}
/* Un titre (ou son intro) reste COLLÉ à son contenu : petit écart, pas le grand rythme */
.n0vnk-home > .wp-block-heading + *,
.n0vnk-home > .n0vnk-secintro + *{margin-top:.7rem}
/* Intro d'une section (texte sous le titre de rubrique, avant les cartes) */
.n0vnk-secintro{color:var(--wp--preset--color--muted);max-width:var(--content);margin:0 0 1rem}
.n0vnk-secintro{text-align:center;margin-left:auto;margin-right:auto}
/* Fonds de couleur pleine largeur par section (bandes). Texte auto-lisible (contraste). */
.n0vnk-band{padding-block:var(--wp--preset--spacing--60)}
.n0vnk-home > .n0vnk-band + .n0vnk-band{margin-top:0}
.n0vnk-band-surface{background:var(--wp--preset--color--surface);color:var(--wp--preset--color--contrast)}
.n0vnk-band-primary{background:var(--wp--preset--color--primary);color:var(--wp--preset--color--base)}
.n0vnk-band-secondary{background:var(--wp--preset--color--secondary);color:var(--wp--preset--color--contrast)}
.n0vnk-band-contrast{background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base)}
.n0vnk-band :where(h1,h2,h3,h4){color:inherit}
.n0vnk-band .n0vnk-secintro{color:inherit;opacity:.85}
.n0vnk-band .n0vnk-cards .wp-block-post-title a,.n0vnk-band .n0vnk-cards .wp-block-post-excerpt{color:var(--wp--preset--color--contrast)}
.n0vnk-band .is-style-outline .wp-block-button__link{color:inherit;border-color:currentColor}

/* Slider horizontal (scroll-snap tactile, sans JS) */
.n0vnk-slider .wp-block-post-template{display:flex;gap:var(--wp--preset--spacing--40);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:.5rem;scrollbar-width:thin}
.n0vnk-slider .wp-block-post{scroll-snap-align:start;flex:0 0 min(78vw,320px);background:var(--wp--preset--color--surface);border-radius:var(--n0vnk-radius);overflow:hidden}
/* Cartes overlay DANS un slider (texte sur image + défilement horizontal) */
.n0vnk-slider-ov .wp-block-post{background:none;box-shadow:none}
.n0vnk-slider-ov .wp-block-cover{min-height:220px}
.n0vnk-slider-ov .wp-block-post-title,.n0vnk-slider-ov .wp-block-post-title a,.n0vnk-slider-ov .wp-block-post-terms{color:#fff}
.n0vnk-slider-ov .wp-block-post-title a{text-decoration:none}
.n0vnk-slider-ov .wp-block-post-terms{text-transform:uppercase;letter-spacing:.03em;font-weight:600;opacity:.92}
/* Slider AUTO-défilant : boucle continue (cartes dupliquées en JS), pause au survol */
.n0vnk-slider-auto{overflow:hidden}
.n0vnk-slider-auto .wp-block-post-template{width:max-content;overflow:visible;scroll-snap-type:none;animation:n0vnk-slide 22s linear infinite}
.n0vnk-slider-auto:hover .wp-block-post-template{animation-play-state:paused}
@keyframes n0vnk-slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.n0vnk-slider-auto{overflow-x:auto}.n0vnk-slider-auto .wp-block-post-template{animation:none;width:auto}}

/* Tuiles média cliquables */
.n0vnk-tile{position:relative;border-radius:var(--n0vnk-radius);overflow:hidden}
.n0vnk-tile img,.n0vnk-card img{transition:transform .4s ease}

/* Bandeau magazine : une seule ligne. Date fixe à gauche, fil défilant clippé à droite. */
.n0vnk-ticker{display:flex;align-items:center;gap:1rem;flex-wrap:nowrap;background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base);padding:.45rem var(--wp--preset--spacing--40);font-size:.85rem;line-height:1;overflow:hidden}
.n0vnk-ticker .n0vnk-date{flex:0 0 auto;white-space:nowrap;font-weight:700;letter-spacing:.02em;padding-right:1rem;border-right:1px solid rgba(255,255,255,.25)}
.n0vnk-ticker .wp-block-query{flex:1 1 auto;min-width:0;overflow:hidden}
.n0vnk-ticker .wp-block-post-template{display:flex;flex-wrap:nowrap;white-space:nowrap;gap:2.5rem;width:max-content;margin:0;padding:0;list-style:none;animation:n0vnk-marquee 32s linear infinite}
.n0vnk-ticker .wp-block-post{flex:0 0 auto;margin:0}
.n0vnk-ticker .wp-block-post-title{margin:0;font-size:inherit;line-height:1;font-weight:400}
.n0vnk-ticker a{color:var(--wp--preset--color--base);text-decoration:none;white-space:nowrap}
.n0vnk-ticker:hover .wp-block-post-template{animation-play-state:paused}
@keyframes n0vnk-marquee{from{transform:translateX(0)}to{transform:translateX(-100%)}}

/* Barre supérieure du header (3ᵉ ligne optionnelle) — fond/texte/police dynamiques (topbarCss) */
.n0vnk-topbar{border-bottom:1px solid rgba(0,0,0,.06);padding:.35rem clamp(1rem,4vw,2rem);gap:1rem}
.n0vnk-topbar .wp-block-site-tagline{margin:0}
/* Texte de la barre supérieure centré : il prend l'espace, les utilitaires à droite */
.n0vnk-topbar-c .n0vnk-topbar-txt,.n0vnk-topbar-c .wp-block-site-tagline{flex:1 1 auto;text-align:center}
.n0vnk-copyright{font-size:.85rem;color:var(--wp--preset--color--muted);text-align:center}
.n0vnk-hdrborder{border-bottom:1px solid var(--wp--preset--color--surface)}
/* Bouton de recherche de l'en-tête : compact + couleur du thème */
.n0vnk-hsearch .wp-block-search__button{background:var(--wp--preset--color--primary);color:var(--wp--preset--color--base);border:0;border-radius:var(--n0vnk-radius);padding:.35rem .5rem;min-width:auto;height:auto}
.n0vnk-hsearch .wp-block-search__button svg{width:16px;height:16px;fill:currentColor}
.n0vnk-hsearch .wp-block-search__button:hover{opacity:.9}

/* Texte de marque à côté du logo (remplace le titre du site) */
.n0vnk-brandtext{font-family:var(--wp--preset--font-family--heading);font-weight:700;font-size:1.15rem;line-height:1.15;margin:0}
.n0vnk-brandtext a{color:var(--wp--preset--color--contrast);text-decoration:none}
.wp-block-button__link{border-radius:var(--n0vnk-radius)}
.n0vnk-tile:hover,.n0vnk-card:hover{transform:translateY(-4px)}

.n0vnk-hero{background-image:url(hero.webp);background-size:cover;background-position:center}
.n0vnk-media-16{background-image:url(media-16.webp);background-size:cover;background-position:center}
@media (prefers-reduced-motion:reduce){.n0vnk-tile img,.n0vnk-card img{transition:none}.n0vnk-ticker .wp-block-post-template{animation:none}}
