/* diginov-signature techguru.fr cle=techguru identite=ff052945e970316243d34f713e582639b4848a1e8f3ab1fc7fa93933a0cbcc95 genere=2026-09-23 pied=encre */
/* Fichier genere par ops/smartmag-design/signature/generer.py : ne pas editer ici. */

@font-face {
  font-family: "DN Bai Jamjuree";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/bai-jamjuree-400.woff2") format("woff2");
}

@font-face {
  font-family: "DN Bai Jamjuree";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/bai-jamjuree-600.woff2") format("woff2");
}

@font-face {
  font-family: "DN Bai Jamjuree";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/bai-jamjuree-700.woff2") format("woff2");
}

@font-face {
  font-family: "DN Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/inter-400.woff2") format("woff2");
}

@font-face {
  font-family: "DN Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/inter-600.woff2") format("woff2");
}

@font-face {
  font-family: "DN Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/inter-700.woff2") format("woff2");
}

html body.diginov-media.diginov-media-techguru {
  --dn-accent: #C5540E;
  --dn-accent-text: #C5540E;
  --dn-on-accent: #FFFFFF;
  --dn-accent-2: #58595C;
  --dn-accent-2-text: #58595C;
  --dn-on-accent-2: #FFFFFF;
  --dn-label-on-ink: #EF6F20;
  --dn-ink: #1D1F22;
  --dn-paper: #FFFFFF;
  --dn-paper-soft: #F4F6F9;
  --dn-line: #E1E1E2;
  --dn-muted: #73777D;
  --dn-display: "DN Bai Jamjuree", "DN Inter", ui-sans-serif, system-ui, sans-serif;
  --sig-accent: #EF6F20;
  --sig-accent-text: #BA4F0D;
  --sig-accent-mark: #EF6F20;
  --sig-accent-fill: #EF6F20;
  --sig-on-accent: #1D1F22;
  --sig-foot-bg: #1D1F22;
  --sig-foot-text: #FFFFFF;
  --sig-foot-muted: #F4F6F9;
  --sig-foot-logo: url("logo-sombre.png");
  --sig-display-family: "DN Bai Jamjuree", "DN Inter", ui-sans-serif, system-ui, sans-serif;
  --sig-body-family: "DN Inter", ui-sans-serif, system-ui, sans-serif;
}

/* ---- couche.css ---- */
/*
 * Couche commune de LISIBILITE, v1 du 23/09. Elle ne porte aucune DA : tout ce
 * qui se voit comme une identite (grille, titrage, couleurs de surface, home,
 * filets, pied) est ecrit media par media dans surcharges/<domaine>.css et
 * dediees/<domaine>/home.php. Demande de Marc : « survol et clarte identiques
 * sur les 150 », mais « pas de sites similaires ».
 *
 * Lecons d actuafoot.fr reprises ici :
 * - SmartMag fixe la racine a 14 px : un rem rend 12,5 % plus petit que prevu.
 *   Les tailles de lecture sont donc en px.
 * - Survol du menu : fond d accent et texte calcule pour 4,5 au moins, jamais
 *   l encre du media sur l accent (#07182d sur #304860 chez actuafoot).
 * - Le ::after des onglets recevait le fond d accent : sur « Plus », seul
 *   onglet dont le ::after porte un contenu (le chevron), un pave colore.
 *
 * Convention de bornage : chaque selecteur commence par
 *     html body.diginov-media
 * immediatement suivi du marqueur forme de deux soulignes, du mot MEDIA et de
 * deux soulignes. generer.py remplace ce marqueur par .diginov-media-<cle>.
 *
 * Jetons disponibles (definis par generer.py sur le meme selecteur) :
 *   --dn-accent --dn-accent-2 --dn-on-accent --dn-ink --dn-paper
 *   --dn-paper-soft --dn-muted --dn-line --dn-display --dn-body (et autres --dn-*)
 *   --sig-accent --sig-accent-text --sig-accent-mark --sig-accent-fill
 *   --sig-on-accent --sig-foot-bg --sig-foot-text --sig-foot-muted
 *   --sig-foot-logo --sig-display-family --sig-body-family
 */

/* Menu principal et sous-menus : survol et focus lisibles partout. */
html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu li > a:hover,
html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu li > a:focus-visible,
html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li:hover > a,
html body.diginov-media.diginov-media-techguru .off-canvas .mobile-menu li > a:hover,
html body.diginov-media.diginov-media-techguru .off-canvas .mobile-menu li > a:focus-visible {
  background: var(--sig-accent-fill) !important;
  color: var(--sig-on-accent) !important;
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation .menu > li > a::after {
  background: none !important;
  color: inherit !important;
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .sub-menu li > a {
  font-size: 15px;
  line-height: 1.35;
  padding-top: 9px;
  padding-bottom: 9px;
}

/* Focus clavier visible sur tout lien et tout bouton. */
html body.diginov-media.diginov-media-techguru a:focus-visible,
html body.diginov-media.diginov-media-techguru button:focus-visible,
html body.diginov-media.diginov-media-techguru input:focus-visible {
  outline: 2px solid var(--sig-accent-mark) !important;
  outline-offset: 2px;
}

/* Lecture d article : corps a 18 px, interligne ample, liens reperables. */
html body.diginov-media.diginov-media-techguru .entry-content {
  font-size: 18px;
  line-height: 1.7;
}

html body.diginov-media.diginov-media-techguru .entry-content p,
html body.diginov-media.diginov-media-techguru .entry-content li {
  font-size: 18px;
  line-height: 1.7;
}

html body.diginov-media.diginov-media-techguru .entry-content a:not([class]) {
  color: var(--sig-accent-text);
  text-decoration: underline;
  text-decoration-color: var(--sig-accent-mark);
  text-underline-offset: 3px;
}

html body.diginov-media.diginov-media-techguru .entry-content a:not([class]):hover {
  text-decoration-thickness: 2px;
}

/* Planchers de taille : meta, etiquettes de rubrique, extraits, fil d Ariane. */
html body.diginov-media.diginov-media-techguru .post-meta,
html body.diginov-media.diginov-media-techguru .post-meta a,
html body.diginov-media.diginov-media-techguru .post-meta time,
html body.diginov-media.diginov-media-techguru .post-meta span,
html body.diginov-media.diginov-media-techguru .breadcrumbs,
html body.diginov-media.diginov-media-techguru .breadcrumbs a {
  font-size: max(13px, 1em);
}

html body.diginov-media.diginov-media-techguru .cat-labels a {
  font-size: 12px;
  letter-spacing: 0.04em;
}

html body.diginov-media.diginov-media-techguru .excerpt,
html body.diginov-media.diginov-media-techguru .excerpt p {
  font-size: 15px;
  line-height: 1.55;
}

@media (max-width: 767px) {
  html body.diginov-media.diginov-media-techguru .entry-content,
  html body.diginov-media.diginov-media-techguru .entry-content p,
  html body.diginov-media.diginov-media-techguru .entry-content li {
    font-size: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.diginov-media.diginov-media-techguru * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* Burger mobile : les barres suivent la couleur du bouton. Le theme enfant
 * fixe --c-hamburger par composition historique (papier pour gameup, sur un
 * en-tete alors sombre) : sous une DA dediee a en-tete clair, l icone
 * devenait blanche sur blanc (game-up, bitcoinmatin, releve du 23/09). */
html body.diginov-media.diginov-media-techguru #smart-head-mobile .offcanvas-toggle,
html body.diginov-media.diginov-media-techguru #smart-head-mobile .offcanvas-toggle .hamburger-icon {
  --c-hamburger: currentColor !important;
}

/* Burger a barres internes (variante -a) : seules .inner et ses deux
 * pseudo-elements sont des barres. Des surcharges peignaient aussi le bouton,
 * d ou un pave plein (expertise-comptable, hellobiz, techguru, releve du 23/09).
 * Le :has() donne la priorite sur ces surcharges sans dependre de l ordre. */
html body.diginov-media.diginov-media-techguru #smart-head .hamburger-icon:has(.inner),
html body.diginov-media.diginov-media-techguru #smart-head-mobile .hamburger-icon:has(.inner),
html body.diginov-media.diginov-media-techguru #smart-head .hamburger-icon:has(.inner)::before,
html body.diginov-media.diginov-media-techguru #smart-head-mobile .hamburger-icon:has(.inner)::before,
html body.diginov-media.diginov-media-techguru #smart-head .hamburger-icon:has(.inner)::after,
html body.diginov-media.diginov-media-techguru #smart-head-mobile .hamburger-icon:has(.inner)::after {
  background-color: transparent !important;
}

/* Encarts ranksource (publicite-partenariats et contact) : texte justifie,
 * sans cesure automatique. En drapeau, la marge droite tombait a 50-68 px
 * contre 27 a gauche a 390 (sonde commerciale du 23/09, 16 medias) ; avec
 * hyphens:auto, des mots se coupaient a la verticale. */
html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__marketplace p:not(.dn-trust__kicker),
html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__contact-commercial p:not(.dn-trust__kicker) {
  text-align: justify;
  hyphens: manual;
  -webkit-hyphens: manual;
}

/* Encarts ranksource, grille. wpautop glisse un <p></p> vide dans l aside
 * contact : il prend la 2e colonne, le texte retombe sous le logo dans la
 * colonne de 210 px (vocatis 648x749, decentre 43/535 chez geekcosmos). La
 * grille 200px|1fr|auto de la marketplace laisse 189 px au texte dans une
 * colonne de page de 650 a 850 px. Regle de la porte : ratio hauteur/largeur
 * <= 0,80 a 1440 ; 32 blocs hors regle au 23/09. En une colonne, le logo en
 * tete : vocatis 0,678, libetoulouse 0,552. La colonne prend la largeur de
 * sa plus longue ligne et se centre : un texte court (une ligne chez
 * biotissime) laissait 29 px a gauche et 104 a droite, hors tolerance de la
 * porte ; un texte long remplit la carte comme avant. */
html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__contact-commercial > p:empty,
html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__marketplace > p:empty {
  display: none !important;
}
@media (min-width: 821px) {
  html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__contact-commercial,
  html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__marketplace {
    grid-template-columns: minmax(0, max-content) !important;
    justify-content: center !important;
    gap: 18px !important;
    align-items: start !important;
  }
  html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__marketplace-logo {
    max-width: 200px;
  }
  html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__marketplace > p:last-child {
    margin: 0;
  }
  html body.diginov-media.diginov-media-techguru .dn-trust .dn-trust__contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
  }
}

/* Pont de survol sous les onglets a sous-menu. La signature centre le menu
 * (align-items:center) dans une rangee de 110 px : l onglet ne fait plus que
 * 44 px de haut, le mega-menu part du bas de la rangee. Trou de 33 px chez
 * montagne-france (releve de Marc du 23/09) : la souris qui descend vers le
 * sous-menu quitte le li, :hover tombe, le sous-menu s efface. Le ::before de
 * l onglet survole se prolonge vers le bas, transparent ; z-index 0, sous le
 * sous-menu (110 chez SmartMag), il ne vole aucun clic. Le ::after porte le
 * chevron : on n y touche pas. 941 px : point de rupture du menu desktop
 * SmartMag (.navigation .menu masque sous 940 px).
 * Deux cas. Sans .nav-hov-b, le ::before est libre ; display force parce que
 * douze surcharges l eteignent. Avec .nav-hov-b, SmartMag y trace le
 * soulignement de survol (border-bottom, bottom:0, z-index 9997) : on
 * l allonge vers le bas et le trait passe en bordure haute, couleur et
 * largeur reprises de SmartMag (border-color et border-width du
 * personnaliseur valent pour les quatre cotes ; 2 px par defaut via :where,
 * qui cede au personnaliseur). translateY(-100%) remonte la boite de sa
 * hauteur plus l epaisseur du trait : le trait reste pile ou SmartMag le
 * dessine, quelle que soit son epaisseur. display laisse a la surcharge qui
 * l a masque. */
@media (hover: hover) and (min-width: 941px) {
  /* Le theme enfant met le menu de la rangee basse en overflow:hidden des
   * 1025 px (pas de retour a la ligne) : le pont etait rogne sous l onglet.
   * clip sur l axe horizontal garde la coupe a droite, l axe vertical laisse
   * passer le pont. */
  html body.diginov-media.diginov-media-techguru #smart-head .smart-head-bot :is(.navigation-main, .navigation) > .menu {
    overflow-x: clip;
    overflow-y: visible;
  }

  html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li.menu-item-has-children > a {
    position: relative;
  }

  html body.diginov-media.diginov-media-techguru #smart-head .navigation-main:not(.nav-hov-b) .menu > li.menu-item-has-children:hover > a::before {
    content: "";
    display: block !important;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: 72px;
    z-index: 0;
    background: transparent !important;
  }

  html body.diginov-media.diginov-media-techguru #smart-head .navigation-main.nav-hov-b .menu > li.menu-item-has-children:hover > a::before {
    top: calc(100% + 72px);
    bottom: auto;
    box-sizing: content-box;
    height: 72px;
    transform: translateY(-100%);
    z-index: 0;
    border-bottom-style: none;
    border-top-style: solid;
    background: transparent !important;
  }

  :where(html body.diginov-media.diginov-media-techguru .navigation-main.nav-hov-b .menu > li.menu-item-has-children:hover) > a::before {
    border-top-width: 2px;
  }
}

/* Colonne d article : le texte prend toute la largeur de sa colonne. Le theme
 * enfant plafonne .dn-article-content a 42rem (588 px) ou 760 px : chez
 * finactu, texte a 588 px dans une colonne de 826 ou la notice et le pied
 * font 826, trou de 236 px avant le rail (releve de Marc du 23/09). Sonde de
 * flotte du 23/09 a 1440 : 25 medias dans ce cas. Sans rail, la grille
 * commune des styles d image a la Une (article/commun.css) ramene deja la
 * colonne a 800 px centree. */
html body.diginov-media.diginov-media-techguru .dn-article-main > .dn-article-content {
  max-width: none !important;
}

/* Sans rail (emplacement de pub vide, masque), la colonne d article tient en
 * 800 px, centree. La grille commune des styles d image a la Une y pourvoit,
 * mais certaines surcharges passent la mise en page en flex : chez
 * france-escape, colonne de 1061 px, soit des lignes de 1061 px une fois le
 * plafond du texte leve (sonde du 23/09). */
html body.diginov-media.diginov-media-techguru .dn-article .dn-article-layout--full:has(> .dn-article-rail > .dn-article-rail__slot[aria-hidden="true"]:only-child) > .dn-article-main,
html body.diginov-media.diginov-media-techguru .dn-article .dn-article-layout--full:has(> .dn-article-rail[aria-hidden="true"]:empty) > .dn-article-main {
  max-width: 800px !important;
  margin-inline: auto !important;
}

/* ---- surcharges/techguru.fr.css ---- */
/*
 * techguru.fr : banc d essai a fiches techniques.
 * Motif : la tuile orange du favicon au T en fil, et la reglette graduee sous chaque
 * etiquette de rayon. Fiches a liseré fin, comparatif en tableau pour Mobilite,
 * bande graphite pour Gaming. Bai Jamjuree 700 en titrage, Inter en texte.
 */

html body.diginov-media.diginov-media-techguru {
  --gu-accent: #EF6F20;
  --gu-lisible: #C5540E;
  --gu-encre: #1D1F22;
  --gu-papier: #FFFFFF;
  --gu-doux: #F4F6F9;
  --gu-trait: #E1E1E2;
  --gu-gris: #73777D;
  --gu-pale: #92959A;
  --gu-graphite: #58595C;
  --gu-r: 6px;
  --gu-fond: #1D1F22;
  --gu-survol: #C5540E;
  --gu-hero-texte: #FFFFFF;
  --gu-pied-label: #EF6F20;
  --gu-titre: "DN Bai Jamjuree", var(--sig-display-family);
  --gu-texte: "DN Inter", var(--sig-body-family);
  background: var(--gu-papier);
  color: var(--gu-encre);
}

/* ------------------------------------------------------------ home */
html body.diginov-media.diginov-media-techguru .dn-gu {
  background: var(--gu-papier);
  padding: 40px 0 0;
  font-family: var(--gu-texte);
}

html body.diginov-media.diginov-media-techguru .dn-gu-wrap {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 32px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-h1 {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  margin: 0;
}

html body.diginov-media.diginov-media-techguru .dn-gu a {
  color: inherit;
  text-decoration: none;
}

html body.diginov-media.diginov-media-techguru .dn-gu img.dn-cover,
html body.diginov-media.diginov-media-techguru .dn-gu a img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
}

html body.diginov-media.diginov-media-techguru .dn-gu h3 {
  margin: 0;
  font-family: var(--gu-titre);
  font-weight: 700;
  letter-spacing: 0;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-gu h3 a:hover,
html body.diginov-media.diginov-media-techguru .dn-gu h3 a:focus-visible {
  color: var(--gu-lisible);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

/* tuile du favicon : carre orange a coins ronds, T en fil blanc */
html body.diginov-media.diginov-media-techguru .dn-gu-tile {
  display: block;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background:
    linear-gradient(#FFFFFF, #FFFFFF) 8px 9px / 18px 3px no-repeat,
    linear-gradient(#FFFFFF, #FFFFFF) 15.5px 9px / 3px 17px no-repeat,
    var(--gu-accent);
}

/* etiquette de rayon et reglette graduee */
html body.diginov-media.diginov-media-techguru .dn-gu-label {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 30px;
  padding: 0 0 22px;
  border-bottom: 2px solid var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-gu-label::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 8px;
  background:
    repeating-linear-gradient(90deg, var(--gu-pale) 0 1px, transparent 1px 12px) 0 4px / 100% 4px no-repeat,
    repeating-linear-gradient(90deg, var(--gu-encre) 0 2px, transparent 2px 60px) 0 0 / 100% 8px no-repeat;
  pointer-events: none;
}

html body.diginov-media.diginov-media-techguru .dn-gu-label__title {
  margin: 0;
  font-family: var(--gu-titre);
  font-size: 32px;
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: 0;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-gu-more {
  margin-left: auto;
  font-size: 16px;
  font-weight: 600;
  color: var(--gu-lisible) !important;
  border-bottom: 2px solid var(--gu-accent);
  padding: 0 0 2px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-more:hover,
html body.diginov-media.diginov-media-techguru .dn-gu-more:focus-visible {
  color: var(--gu-encre) !important;
  border-bottom-color: var(--gu-encre);
}

/* etiquette de rubrique, meta, extrait */
html body.diginov-media.diginov-media-techguru .dn-gu-tag {
  display: inline-block;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gu-lisible);
}

html body.diginov-media.diginov-media-techguru .dn-gu a.dn-gu-tag {
  color: var(--gu-lisible);
}

html body.diginov-media.diginov-media-techguru .dn-gu a.dn-gu-tag:hover,
html body.diginov-media.diginov-media-techguru .dn-gu a.dn-gu-tag:focus-visible {
  color: var(--gu-encre);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-by {
  margin: 12px 0 0;
  font-size: 14px;
  line-height: 1.4;
  color: var(--gu-gris);
}

html body.diginov-media.diginov-media-techguru .dn-gu-by a {
  color: var(--gu-graphite);
  font-weight: 600;
}

html body.diginov-media.diginov-media-techguru .dn-gu-by a:hover,
html body.diginov-media.diginov-media-techguru .dn-gu-by a:focus-visible {
  color: var(--gu-lisible);
  text-decoration: underline;
}

html body.diginov-media.diginov-media-techguru .dn-gu-excerpt {
  margin: 12px 0 0;
  font-size: 17px;
  line-height: 1.6;
  color: var(--gu-graphite);
}

/* vignettes */
html body.diginov-media.diginov-media-techguru .dn-gu-lead__media,
html body.diginov-media.diginov-media-techguru .dn-gu-sheet__media,
html body.diginov-media.diginov-media-techguru .dn-gu-wide__media,
html body.diginov-media.diginov-media-techguru .dn-gu-cmp__media {
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: var(--gu-doux);
}

html body.diginov-media.diginov-media-techguru .dn-gu a[aria-hidden="true"]:not(:has(img)) {
  background:
    linear-gradient(#FFFFFF, #FFFFFF) calc(50% + 0px) calc(50% - 8px) / 26px 4px no-repeat,
    linear-gradient(#FFFFFF, #FFFFFF) 50% calc(50% + 4px) / 4px 24px no-repeat,
    radial-gradient(circle at 50% 50%, var(--gu-accent) 0 26px, transparent 27px),
    var(--gu-doux);
}

/* fiche : liseré fin, departement orange en tete du corps */
html body.diginov-media.diginov-media-techguru .dn-gu-sheet {
  display: flex;
  flex-direction: column;
  background: var(--gu-papier);
  border: 1px solid var(--gu-trait);
  border-radius: var(--gu-r);
  overflow: hidden;
}

html body.diginov-media.diginov-media-techguru .dn-gu-sheet__body {
  position: relative;
  padding: 22px 20px 22px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-sheet__body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  width: 44px;
  height: 4px;
  background: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-gu-sheet__title {
  font-size: 20px !important;
  line-height: 1.3 !important;
}

/* ------------------------------------------------------------ banc principal */
html body.diginov-media.diginov-media-techguru .dn-gu-bench {
  padding: 0 0 64px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-lead {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  border: 1px solid var(--gu-trait);
  border-radius: var(--gu-r);
  overflow: hidden;
  margin: 0 0 30px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-lead__media {
  aspect-ratio: auto;
  min-height: 420px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-lead__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 40px 40px 40px 36px;
  background: var(--gu-doux);
  border-left: 6px solid var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-gu-lead__title {
  font-size: 40px !important;
  line-height: 1.12 !important;
}

html body.diginov-media.diginov-media-techguru .dn-gu-lead .dn-gu-excerpt {
  font-size: 18px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-bench__row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 1.1fr);
  gap: 24px;
  align-items: start;
}

html body.diginov-media.diginov-media-techguru .dn-gu-latest {
  padding: 22px 22px 8px;
  background: var(--gu-doux);
  border-top: 4px solid var(--gu-encre);
  border-radius: 0 0 var(--gu-r) var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-gu-latest__title {
  margin: 0 0 8px;
  font-family: var(--gu-titre);
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0;
  color: var(--gu-encre);
}

/* article de liste : puce carree orange */
html body.diginov-media.diginov-media-techguru .dn-gu-item {
  position: relative;
  padding: 14px 0 14px 22px;
  border-bottom: 1px solid var(--gu-trait);
}

html body.diginov-media.diginov-media-techguru .dn-gu-item:last-child {
  border-bottom: 0;
}

html body.diginov-media.diginov-media-techguru .dn-gu-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 21px;
  width: 9px;
  height: 9px;
  border-radius: 2px;
  background: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-gu-item__title {
  font-size: 17px !important;
  line-height: 1.35 !important;
}

html body.diginov-media.diginov-media-techguru .dn-gu-item .dn-gu-by {
  margin-top: 6px;
  font-size: 13px;
}

/* ------------------------------------------------------------ rayons */
html body.diginov-media.diginov-media-techguru .dn-gu-shelf {
  padding: 0 0 64px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-info__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 0.95fr);
  gap: 28px;
  align-items: start;
}

html body.diginov-media.diginov-media-techguru .dn-gu-list {
  border-top: 4px solid var(--gu-encre);
}

/* comparatif Mobilite */
html body.diginov-media.diginov-media-techguru .dn-gu-cmp__table {
  border: 1px solid var(--gu-trait);
  border-radius: var(--gu-r);
  overflow: hidden;
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__row {
  display: grid;
  grid-template-columns: 168px minmax(0, 1fr) 200px 150px;
  align-items: center;
  gap: 0;
  border-bottom: 1px solid var(--gu-trait);
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__row:last-child {
  border-bottom: 0;
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__row:nth-child(even) {
  background: var(--gu-doux);
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__row:hover {
  box-shadow: inset 4px 0 0 var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__media {
  height: 105px;
  aspect-ratio: auto;
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__title {
  padding: 16px 26px;
  font-size: 20px !important;
  line-height: 1.3 !important;
}

html body.diginov-media.diginov-media-techguru .dn-gu-sans-image .dn-gu-cmp__title {
  grid-column: 1 / 3;
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__cat,
html body.diginov-media.diginov-media-techguru .dn-gu-cmp__date {
  align-self: stretch;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 16px 20px;
  border-left: 1px solid var(--gu-trait);
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__cat .dn-gu-tag {
  margin: 0;
}

html body.diginov-media.diginov-media-techguru .dn-gu-cmp__date {
  font-size: 14px;
  color: var(--gu-gris);
}

/* bande graphite Gaming */
html body.diginov-media.diginov-media-techguru .dn-gu-band {
  margin: 0 0 64px;
  padding: 56px 0 60px;
  background: var(--gu-encre);
  border-top: 6px solid var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-label {
  border-bottom-color: var(--gu-pale);
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-label::after {
  background:
    repeating-linear-gradient(90deg, var(--gu-graphite) 0 1px, transparent 1px 12px) 0 4px / 100% 4px no-repeat,
    repeating-linear-gradient(90deg, var(--gu-pale) 0 2px, transparent 2px 60px) 0 0 / 100% 8px no-repeat;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-label__title {
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-more {
  color: var(--gu-accent) !important;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-more:hover,
html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-more:focus-visible {
  color: #FFFFFF !important;
  border-bottom-color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band__row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-sheet {
  background: var(--gu-encre);
  border-color: var(--gu-graphite);
}

html body.diginov-media.diginov-media-techguru .dn-gu-band h3,
html body.diginov-media.diginov-media-techguru .dn-gu-band h3 a {
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band h3 a:hover,
html body.diginov-media.diginov-media-techguru .dn-gu-band h3 a:focus-visible {
  color: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-gu-band a.dn-gu-tag,
html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-tag {
  color: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-gu .dn-gu-band a.dn-gu-tag:hover,
html body.diginov-media.diginov-media-techguru .dn-gu .dn-gu-band a.dn-gu-tag:focus-visible,
html body.diginov-media.diginov-media-techguru .dn-gu-band a.dn-gu-tag:hover,
html body.diginov-media.diginov-media-techguru .dn-gu-band a.dn-gu-tag:focus-visible {
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-by {
  color: var(--gu-pale);
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-by a {
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-by a:hover,
html body.diginov-media.diginov-media-techguru .dn-gu-band .dn-gu-by a:focus-visible {
  color: var(--gu-accent);
}

/* Science */
html body.diginov-media.diginov-media-techguru .dn-gu-sci__grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

html body.diginov-media.diginov-media-techguru .dn-gu-wide__media {
  border-radius: var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-gu-wide__body {
  padding: 22px 0 0;
  border-top: 0;
}

html body.diginov-media.diginov-media-techguru .dn-gu-wide__title {
  font-size: 30px !important;
  line-height: 1.18 !important;
}

/* trois rayons */
html body.diginov-media.diginov-media-techguru .dn-gu-trio {
  padding: 0 0 80px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-trio__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
  align-items: start;
}

html body.diginov-media.diginov-media-techguru .dn-gu-trio .dn-gu-label__title {
  font-size: 26px;
}

html body.diginov-media.diginov-media-techguru .dn-gu-trio .dn-gu-list {
  border-top: 0;
  margin-top: 6px;
}

/* ------------------------------------------------------------ pied, famille prioritaire */
html body.diginov-media.diginov-media-techguru footer.dn-site-footer.dn-site-footer--priority {
  background: var(--gu-fond) !important;
  border-top: 6px solid var(--gu-accent) !important;
}

html body.diginov-media.diginov-media-techguru .dn-priority-footer__commercial {
  background: transparent !important;
  border: 2px solid var(--gu-accent) !important;
  border-radius: var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-priority-footer__commercial,
html body.diginov-media.diginov-media-techguru .dn-priority-footer__commercial h2,
html body.diginov-media.diginov-media-techguru .dn-priority-footer__commercial p,
html body.diginov-media.diginov-media-techguru .dn-priority-footer__commercial a {
  color: #FFFFFF !important;
}

html body.diginov-media.diginov-media-techguru .dn-priority-footer__label,
html body.diginov-media.diginov-media-techguru .dn-priority-footer__commercial .dn-priority-footer__label {
  color: var(--gu-pied-label) !important;
}

html body.diginov-media.diginov-media-techguru .dn-priority-footer__commercial a {
  border-color: var(--gu-accent) !important;
}

html body.diginov-media.diginov-media-techguru footer.dn-site-footer--priority a:hover,
html body.diginov-media.diginov-media-techguru footer.dn-site-footer--priority a:focus-visible,
html body.diginov-media.diginov-media-techguru footer.dn-site-footer--priority button:hover,
html body.diginov-media.diginov-media-techguru footer.dn-site-footer--priority button:focus-visible {
  color: #FFFFFF !important;
  text-decoration: underline;
  text-decoration-color: var(--gu-accent);
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

/* ------------------------------------------------------------ adaptatif */
@media (max-width: 1024px) {
  html body.diginov-media.diginov-media-techguru .dn-gu-bench__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-info__grid,
  html body.diginov-media.diginov-media-techguru .dn-gu-sci__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-info__grid .dn-gu-list,
  html body.diginov-media.diginov-media-techguru .dn-gu-wide {
    grid-column: 1 / -1;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-band__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-cmp__row {
    grid-template-columns: 140px minmax(0, 1fr) 150px;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-cmp__date {
    display: none;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-trio__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 48px;
  }
}

@media (max-width: 720px) {
  html body.diginov-media.diginov-media-techguru .dn-gu {
    padding-top: 28px;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-wrap {
    padding: 0 16px;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-label {
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 24px;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-label__title,
  html body.diginov-media.diginov-media-techguru .dn-gu-trio .dn-gu-label__title {
    font-size: 26px;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-lead {
    grid-template-columns: minmax(0, 1fr);
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-lead__media {
    min-height: 0;
    aspect-ratio: 16 / 10;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-lead__body {
    padding: 24px 20px;
    border-left: 0;
    border-top: 6px solid var(--gu-accent);
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-lead__title {
    font-size: 30px !important;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-bench__row,
  html body.diginov-media.diginov-media-techguru .dn-gu-info__grid,
  html body.diginov-media.diginov-media-techguru .dn-gu-sci__grid,
  html body.diginov-media.diginov-media-techguru .dn-gu-band__row {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-cmp__row {
    grid-template-columns: 108px minmax(0, 1fr);
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-cmp__media {
    height: 100%;
    min-height: 92px;
    grid-row: 1 / 3;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-cmp__title {
    padding: 14px 16px 4px;
    font-size: 17px !important;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-cmp__cat {
    padding: 0 16px 14px;
    border-left: 0;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-band {
    padding: 40px 0 44px;
  }

  html body.diginov-media.diginov-media-techguru .dn-gu-wide__title {
    font-size: 24px !important;
  }
}

/* ------------------------------------------------------------ bandeaux graphite lisibles */
html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-shell p,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-shell p {
  color: #FFFFFF !important;
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-breadcrumb span,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-breadcrumb span {
  color: var(--gu-pale) !important;
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-breadcrumb a,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-breadcrumb a {
  color: #FFFFFF !important;
}

html body.diginov-media.diginov-media-techguru .dn-article-header .dn-breadcrumb span,
html body.diginov-media.diginov-media-techguru .dn-article-header time,
html body.diginov-media.diginov-media-techguru .dn-article-header span {
  color: var(--gu-pale) !important;
}

/* ------------------------------------------------------------ en-tete */
html body.diginov-media.diginov-media-techguru #smart-head .smart-head-mid {
  border-bottom: 0 !important;
  box-shadow: none;
  position: relative;
}

html body.diginov-media.diginov-media-techguru #smart-head .smart-head-main .smart-head-mid::after,
html body.diginov-media.diginov-media-techguru .smart-head-mobile .smart-head-row::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: var(--gu-encre);
  box-shadow: inset 0 -1px 0 var(--gu-encre), 0 3px 0 var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .smart-head-mobile .smart-head-row {
  position: relative;
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li > a {
  font-family: var(--sig-body-family);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  color: var(--gu-encre);
  border-radius: var(--gu-r);
  padding-left: 14px;
  padding-right: 14px;
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li.current-menu-item > a,
html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li.current-menu-ancestor > a {
  color: var(--gu-lisible);
  box-shadow: inset 0 -3px 0 var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li > a:hover,
html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li:hover > a,
html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .menu > li > a:focus-visible {
  background: var(--gu-encre) !important;
  color: #FFFFFF !important;
  box-shadow: inset 0 -3px 0 var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .sub-menu {
  border-top: 3px solid var(--gu-accent);
  border-radius: 0;
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .sub-menu li > a {
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .sub-menu li > a:hover,
html body.diginov-media.diginov-media-techguru #smart-head .navigation-main .sub-menu li > a:focus-visible {
  background: var(--gu-encre) !important;
  color: #FFFFFF !important;
}

html body.diginov-media.diginov-media-techguru #smart-head .mega-menu .post-title a,
html body.diginov-media.diginov-media-techguru #smart-head .mega-menu h2 a,
html body.diginov-media.diginov-media-techguru #smart-head .mega-menu h3 a {
  font-family: var(--sig-display-family);
  font-size: 15px;
  line-height: 1.3;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru #smart-head .mega-menu .post-title a:hover,
html body.diginov-media.diginov-media-techguru #smart-head .mega-menu h2 a:hover,
html body.diginov-media.diginov-media-techguru #smart-head .mega-menu h3 a:hover {
  color: var(--gu-lisible);
  text-decoration: underline;
}

/* Recherche : champ et loupe toujours contrastes. */
html body.diginov-media.diginov-media-techguru #smart-head .search-form input[type="search"],
html body.diginov-media.diginov-media-techguru #smart-head .smart-head-search input {
  background: #FFFFFF;
  border: 1px solid var(--gu-trait);
  border-radius: var(--gu-r);
  color: var(--gu-encre);
  font-size: 14px;
}

html body.diginov-media.diginov-media-techguru #smart-head .search-icon,
html body.diginov-media.diginov-media-techguru #smart-head .search-submit,
html body.diginov-media.diginov-media-techguru #smart-head .smart-head-search button {
  color: var(--gu-encre) !important;
}

html body.diginov-media.diginov-media-techguru #smart-head .search-icon:hover,
html body.diginov-media.diginov-media-techguru #smart-head .search-icon:focus-visible,
html body.diginov-media.diginov-media-techguru #smart-head .search-submit:hover,
html body.diginov-media.diginov-media-techguru #smart-head .smart-head-search button:hover {
  color: var(--gu-lisible) !important;
}

html body.diginov-media.diginov-media-techguru .smart-head-mobile .offcanvas-toggle,
html body.diginov-media.diginov-media-techguru .smart-head-mobile .search-icon {
  color: var(--gu-encre) !important;
}

/* ------------------------------------------------------------ fil d Ariane */
html body.diginov-media.diginov-media-techguru .dn-breadcrumb,
html body.diginov-media.diginov-media-techguru .dn-breadcrumb span {
  font-size: 14px;
  color: var(--gu-gris);
}

html body.diginov-media.diginov-media-techguru .dn-breadcrumb a {
  color: var(--gu-lisible);
  text-decoration: underline;
  text-decoration-color: var(--gu-trait);
  text-underline-offset: 3px;
}

html body.diginov-media.diginov-media-techguru .dn-breadcrumb a:hover,
html body.diginov-media.diginov-media-techguru .dn-breadcrumb a:focus-visible {
  color: var(--gu-encre);
  text-decoration-color: var(--gu-accent);
}


/* ------------------------------------------------------------ article */
html body.diginov-media.diginov-media-techguru .dn-article-header {
  box-sizing: border-box;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding: 32px 40px 28px !important;
  border: 1.5px solid var(--gu-trait) !important;
  border-top: 6px solid var(--gu-accent) !important;
  border-radius: var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-article-header h1 {
  max-width: 1040px !important;
}

html body.diginov-media.diginov-media-techguru .dn-article-deck {
  max-width: 820px !important;
}

html body.diginov-media.diginov-media-techguru .dn-article-content,
html body.diginov-media.diginov-media-techguru .dn-article-content p,
html body.diginov-media.diginov-media-techguru .dn-article-content li {
  font-family: var(--sig-body-family);
  font-size: 17px;
  line-height: 1.75;
}

html body.diginov-media.diginov-media-techguru .dn-article-header h1 {
  font-family: var(--sig-display-family);
  font-size: 46px;
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -0.015em;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-article-deck {
  font-size: 21px;
  line-height: 1.55;
  color: var(--gu-encre);
  padding-left: 20px;
  border-left: 4px solid var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-category,
html body.diginov-media.diginov-media-techguru a.dn-category {
  display: inline-block;
  padding: 5px 13px;
  border-radius: var(--gu-r);
  background: var(--gu-doux);
  border: 1px solid var(--gu-trait);
  color: var(--gu-lisible) !important;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: none;
  text-decoration: none;
}

html body.diginov-media.diginov-media-techguru a.dn-category:hover,
html body.diginov-media.diginov-media-techguru a.dn-category:focus-visible {
  background: var(--gu-lisible);
  border-color: var(--gu-lisible);
  color: #FFFFFF !important;
}

html body.diginov-media.diginov-media-techguru .dn-article-byline,
html body.diginov-media.diginov-media-techguru .dn-article-byline .dn-meta,
html body.diginov-media.diginov-media-techguru .dn-article-byline time {
  font-size: 15px;
  color: var(--gu-gris);
}

html body.diginov-media.diginov-media-techguru .dn-article-author {
  color: var(--gu-lisible) !important;
  font-weight: 600;
}

html body.diginov-media.diginov-media-techguru .dn-article-author:hover,
html body.diginov-media.diginov-media-techguru .dn-article-author:focus-visible {
  color: var(--gu-survol) !important;
  text-decoration: underline;
}

html body.diginov-media.diginov-media-techguru .dn-article-hero img {
  border-radius: var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-article-content h2 {
  font-family: var(--sig-display-family);
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
  color: var(--gu-encre);
  margin-top: 1.6em;
  padding-left: 18px;
  border-left: 6px solid var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-article-content h3 {
  font-family: var(--sig-display-family);
  font-size: 23px;
  line-height: 1.25;
  font-weight: 700;
  color: var(--gu-lisible);
}

html body.diginov-media.diginov-media-techguru .dn-article-content blockquote {
  margin: 32px 0;
  padding: 24px 28px;
  background: var(--gu-doux);
  border: 0;
  border-left: 6px solid var(--gu-lisible);
  border-radius: 0;
  font-family: var(--sig-display-family);
  font-size: 22px;
  line-height: 1.45;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-article-content blockquote p {
  font-size: 22px;
  line-height: 1.45;
}

html body.diginov-media.diginov-media-techguru .dn-article-brief {
  background: var(--gu-doux);
  border: 0;
  border-top: 5px solid var(--gu-accent);
  border-radius: 0;
  padding: 22px 26px;
}

html body.diginov-media.diginov-media-techguru .dn-article-brief h2 {
  border-left: 0;
  padding-left: 0;
  margin-top: 0;
  font-size: 22px;
}

html body.diginov-media.diginov-media-techguru .dn-article-content figure img {
  border-radius: var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-article-tags a {
  display: inline-block;
  padding: 5px 12px;
  margin: 0 6px 8px 0;
  border-radius: var(--gu-r);
  border: 1px solid var(--gu-trait);
  color: var(--gu-lisible);
  font-size: 14px;
}

html body.diginov-media.diginov-media-techguru .dn-article-tags a:hover,
html body.diginov-media.diginov-media-techguru .dn-article-tags a:focus-visible {
  background: var(--gu-lisible);
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-share a:hover,
html body.diginov-media.diginov-media-techguru .dn-share a:focus-visible {
  background: var(--gu-lisible);
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-author-card {
  background: var(--gu-doux);
  border: 0;
  border-radius: var(--gu-r);
  padding: 26px;
}

html body.diginov-media.diginov-media-techguru .dn-author-card h2,
html body.diginov-media.diginov-media-techguru .dn-author-card h3 {
  font-family: var(--sig-display-family);
  font-size: 22px;
}

html body.diginov-media.diginov-media-techguru .dn-author-card a {
  color: var(--gu-lisible);
}

html body.diginov-media.diginov-media-techguru .dn-author-card a:hover,
html body.diginov-media.diginov-media-techguru .dn-author-card a:focus-visible {
  color: var(--gu-survol);
  text-decoration: underline;
}

html body.diginov-media.diginov-media-techguru .dn-related {
  background: var(--gu-doux);
  padding: 48px 0 56px;
}

html body.diginov-media.diginov-media-techguru .dn-section__head h2,
html body.diginov-media.diginov-media-techguru .dn-related h2 {
  font-family: var(--sig-display-family);
  font-size: 32px;
  font-weight: 700;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-kicker {
  font-family: var(--sig-body-family);
  color: var(--gu-lisible);
  font-weight: 600;
  letter-spacing: 0.08em;
}

html body.diginov-media.diginov-media-techguru .dn-related-card {
  background: #FFFFFF;
  border-radius: var(--gu-r);
  overflow: hidden;
  padding-bottom: 18px;
}

html body.diginov-media.diginov-media-techguru .dn-related-card h3 {
  font-family: var(--sig-display-family);
  font-size: 20px;
  line-height: 1.28;
  padding: 0 18px;
}

html body.diginov-media.diginov-media-techguru .dn-related-card time {
  padding: 0 18px;
  font-size: 14px;
  color: var(--gu-gris);
}

html body.diginov-media.diginov-media-techguru .dn-related-card h3 a:hover,
html body.diginov-media.diginov-media-techguru .dn-related-card h3 a:focus-visible {
  color: var(--gu-lisible);
  text-decoration: underline;
}

/* ------------------------------------------------------------ rubrique et auteur */
html body.diginov-media.diginov-media-techguru .dn-archive-hero,
html body.diginov-media.diginov-media-techguru .dn-author-hero {
  background: var(--gu-encre);
  color: #FFFFFF;
  border-bottom: 0;
  position: relative;
  border-radius: 0;
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero::before,
html body.diginov-media.diginov-media-techguru .dn-author-hero::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 6px;
  background: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero h1,
html body.diginov-media.diginov-media-techguru .dn-author-hero h1 {
  font-family: var(--sig-display-family);
  color: #FFFFFF;
  font-size: 56px;
  line-height: 1.04;
  font-weight: 700;
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-kicker,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-kicker {
  display: inline-block;
  padding: 6px 14px;
  border-radius: var(--gu-r);
  background: var(--gu-fond);
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero p,
html body.diginov-media.diginov-media-techguru .dn-author-hero p,
html body.diginov-media.diginov-media-techguru .dn-archive-description,
html body.diginov-media.diginov-media-techguru .dn-archive-count,
html body.diginov-media.diginov-media-techguru .dn-author-bio,
html body.diginov-media.diginov-media-techguru .dn-author-count {
  color: var(--gu-hero-texte);
  font-size: 17px;
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-breadcrumb,
html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-breadcrumb span,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-breadcrumb,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-breadcrumb span {
  color: var(--gu-hero-texte);
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-breadcrumb a,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-breadcrumb a {
  color: #FFFFFF;
  text-decoration-color: rgba(255, 255, 255, 0.5);
}

html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-breadcrumb a:hover,
html body.diginov-media.diginov-media-techguru .dn-archive-hero .dn-breadcrumb a:focus-visible,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-breadcrumb a:hover,
html body.diginov-media.diginov-media-techguru .dn-author-hero .dn-breadcrumb a:focus-visible {
  color: #FFFFFF;
  background: var(--gu-fond);
  text-decoration: none;
  border-radius: var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-author-hero img.dn-author-portrait {
  border-radius: var(--gu-r);
  border: 4px solid var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-archive-section .dn-section__head {
  border-bottom: 2px solid var(--gu-trait);
  padding-bottom: 14px;
}

html body.diginov-media.diginov-media-techguru .dn-archive-section .dn-section__head::after {
  display: none;
}

html body.diginov-media.diginov-media-techguru .dn-archive-section .dn-section__head h2 {
  font-size: 34px;
  text-transform: none;
}

html body.diginov-media.diginov-media-techguru .dn-archive-card {
  background: #FFFFFF;
  border: 1.5px solid var(--gu-trait);
  border-radius: var(--gu-r);
  overflow: hidden;
  padding-bottom: 18px;
}

html body.diginov-media.diginov-media-techguru .dn-archive-card__body {
  padding: 18px 18px 0 !important;
}

html body.diginov-media.diginov-media-techguru .dn-archive-card .dn-meta,
html body.diginov-media.diginov-media-techguru .dn-archive-card .dn-meta time,
html body.diginov-media.diginov-media-techguru .dn-archive-card .dn-meta span {
  font-size: 14px;
}

html body.diginov-media.diginov-media-techguru .dn-archive-card__media img {
  border-radius: 0;
}

html body.diginov-media.diginov-media-techguru .dn-archive-card h2,
html body.diginov-media.diginov-media-techguru .dn-archive-card h3 {
  font-family: var(--sig-display-family);
  font-size: 21px;
  line-height: 1.26;
}

html body.diginov-media.diginov-media-techguru .dn-archive-card h2 a,
html body.diginov-media.diginov-media-techguru .dn-archive-card h3 a {
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-archive-card h2 a:hover,
html body.diginov-media.diginov-media-techguru .dn-archive-card h2 a:focus-visible,
html body.diginov-media.diginov-media-techguru .dn-archive-card h3 a:hover,
html body.diginov-media.diginov-media-techguru .dn-archive-card h3 a:focus-visible {
  color: var(--gu-lisible);
  text-decoration: underline;
  text-decoration-color: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-archive-card p {
  font-size: 16px;
  line-height: 1.55;
}

html body.diginov-media.diginov-media-techguru .dn-pagination .page-numbers {
  white-space: nowrap;
  padding-left: 14px;
  padding-right: 14px;
  border-radius: var(--gu-r);
  border-color: var(--gu-trait);
  color: var(--gu-lisible);
  min-width: 44px;
  font-weight: 600;
}

html body.diginov-media.diginov-media-techguru .dn-pagination .page-numbers.current::before {
  display: inline;
  white-space: nowrap;
}

html body.diginov-media.diginov-media-techguru .dn-pagination .page-numbers.current {
  display: inline-flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  width: auto;
  min-width: 78px;
  justify-content: center;
  background: var(--gu-lisible);
  border-color: var(--gu-lisible);
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-pagination a.page-numbers:hover,
html body.diginov-media.diginov-media-techguru .dn-pagination a.page-numbers:focus-visible {
  background: var(--gu-fond);
  border-color: var(--gu-fond);
  color: #FFFFFF;
}

/* ------------------------------------------------------------ pages de confiance */
html body.diginov-media.diginov-media-techguru .dn-page-header {
  background: var(--gu-doux);
  border-bottom: 0;
  border-radius: 0;
  position: relative;
}

html body.diginov-media.diginov-media-techguru .dn-page-header::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 6px;
  background: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-page-header h1 {
  font-family: var(--sig-display-family);
  font-size: 50px;
  line-height: 1.06;
  font-weight: 700;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-page-content,
html body.diginov-media.diginov-media-techguru .dn-page-content p,
html body.diginov-media.diginov-media-techguru .dn-page-content li {
  font-size: 17px;
  line-height: 1.7;
}

html body.diginov-media.diginov-media-techguru .dn-page-content h2 {
  font-family: var(--sig-display-family);
  font-size: 28px;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-page-content a:not([class]) {
  color: var(--gu-lisible);
  text-decoration: underline;
  text-decoration-color: var(--gu-accent);
  text-underline-offset: 3px;
}

html body.diginov-media.diginov-media-techguru .dn-page-content a:not([class]):hover,
html body.diginov-media.diginov-media-techguru .dn-page-content a:not([class]):focus-visible {
  color: var(--gu-survol);
}

html body.diginov-media.diginov-media-techguru .dn-trust__hero {
  background: var(--gu-encre);
  color: #FFFFFF;
  border-radius: var(--gu-r);
  padding: 32px;
}

html body.diginov-media.diginov-media-techguru .dn-trust__hero h2,
html body.diginov-media.diginov-media-techguru .dn-trust__hero p {
  color: #FFFFFF;
}

html body.diginov-media.diginov-media-techguru .dn-trust__hero .dn-trust__kicker,
html body.diginov-media.diginov-media-techguru .dn-trust__hero .dn-trust__kicker span {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  background: var(--gu-lisible) !important;
}

html body.diginov-media.diginov-media-techguru .dn-trust__kicker {
  color: #FFFFFF !important;
  background: var(--gu-lisible);
  display: inline-block;
  padding: 5px 13px;
  border-radius: var(--gu-r);
}

html body.diginov-media.diginov-media-techguru .dn-trust__lede {
  font-size: 19px;
  line-height: 1.6;
}

html body.diginov-media.diginov-media-techguru .dn-trust__pillar {
  background: var(--gu-doux);
  border: 0;
  border-top: 5px solid var(--gu-accent);
  border-radius: 0;
  padding: 22px;
}

html body.diginov-media.diginov-media-techguru .dn-trust__pillar h3,
html body.diginov-media.diginov-media-techguru .dn-trust__pillar h2 {
  font-family: var(--sig-display-family);
  font-size: 21px;
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-trust__links a {
  color: var(--gu-lisible);
}

html body.diginov-media.diginov-media-techguru .dn-trust__links a:hover,
html body.diginov-media.diginov-media-techguru .dn-trust__links a:focus-visible {
  color: var(--gu-survol);
  text-decoration: underline;
}

/* ------------------------------------------------------------ pied */
html body.diginov-media.diginov-media-techguru .dn-fleet-footer__mast {
  background: var(--gu-doux);
  border-top: 0;
  position: relative;
}

html body.diginov-media.diginov-media-techguru .dn-fleet-footer__mast::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 6px;
  background: var(--gu-accent);
}

html body.diginov-media.diginov-media-techguru .dn-fleet-footer__statement {
  font-family: var(--sig-display-family);
  color: var(--gu-encre);
}

html body.diginov-media.diginov-media-techguru .dn-fleet-footer__grid a:hover,
html body.diginov-media.diginov-media-techguru .dn-fleet-footer__grid a:focus-visible,
html body.diginov-media.diginov-media-techguru .dn-fleet-footer__base a:hover,
html body.diginov-media.diginov-media-techguru .dn-fleet-footer__base a:focus-visible,
html body.diginov-media.diginov-media-techguru .dn-fleet-footer__base button:hover,
html body.diginov-media.diginov-media-techguru .dn-fleet-footer__base button:focus-visible {
  color: #FFFFFF !important;
  text-decoration: underline;
  text-decoration-color: var(--gu-accent);
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

html body.diginov-media.diginov-media-techguru .dn-fleet-footer__label {
  color: var(--gu-pied-label) !important;
}

html body.diginov-media.diginov-media-techguru .dn-fleet-footer__commercial .dn-fleet-footer__label {
  color: var(--gu-lisible) !important;
}

html body.diginov-media.diginov-media-techguru footer.dn-site-footer {
  border-top: 0 !important;
  box-shadow: none !important;
}

html body.diginov-media.diginov-media-techguru .dn-fleet-footer__commercial {
  border-radius: var(--gu-r);
}



@media (max-width: 720px) {
  html body.diginov-media.diginov-media-techguru .dn-author-card {
    display: block;
    padding: 22px 18px;
  }

  html body.diginov-media.diginov-media-techguru .dn-author-card img {
    width: 96px !important;
    height: 96px !important;
    max-width: 96px;
    margin: 0 0 14px;
    object-fit: cover;
  }

  html body.diginov-media.diginov-media-techguru .dn-article-header {
    width: auto !important;
    box-sizing: border-box;
    margin-left: 16px;
    margin-right: 16px;
    padding: 22px 18px 20px !important;
  }

  html body.diginov-media.diginov-media-techguru .dn-article-header h1 {
    font-size: 32px;
  }

  html body.diginov-media.diginov-media-techguru .dn-article-deck {
    font-size: 18px;
  }

  html body.diginov-media.diginov-media-techguru .dn-article-content h2 {
    font-size: 25px;
  }

  html body.diginov-media.diginov-media-techguru .dn-archive-hero h1,
  html body.diginov-media.diginov-media-techguru .dn-author-hero h1,
  html body.diginov-media.diginov-media-techguru .dn-page-header h1 {
    font-size: 36px;
  }
}

/* Etiquette de categorie des grilles auteur : police de texte, pas de monospace du socle. */
html body.diginov-media.diginov-media-techguru .dn-loop-post-fallback .dn-category { font-family: var(--sig-body-family) !important; letter-spacing: 0 !important; }

/* Titre des listes d archive aligne sur son filet (le socle reserve 42px a gauche). */
html body.diginov-media.diginov-media-techguru .dn-archive-section .dn-section__head { padding-left: 0 !important; padding-right: 0 !important; }

/* Bio de la carte auteur en fin d article : texte courant a 16px. */
html body.diginov-media.diginov-media-techguru .dn-author-card p { font-size: 16px !important; line-height: 1.6 !important; }

html body.diginov-media.diginov-media-techguru .dn-archive-card {
  grid-template-rows: auto !important;
}

html body.diginov-media.diginov-media-techguru main.dn-team {
  padding-bottom: 64px !important;
}

html body.diginov-media.diginov-media-techguru .dn-team-card__number {
  display: none !important;
}

/* Recherche de la barre de navigation (fond graphite) : encre sur encre,
 * contraste 1,00 a 1440 (sonde des en-tetes du 23/09). */
html body.diginov-media.diginov-media-techguru #smart-head .smart-head-bot .search-icon {
  color: var(--gu-papier) !important;
}
html body.diginov-media.diginov-media-techguru #smart-head .smart-head-bot .search-icon:hover,
html body.diginov-media.diginov-media-techguru #smart-head .smart-head-bot .search-icon:focus-visible {
  color: var(--gu-accent) !important;
}

/* ---- article/commun.css ---- */
/* Page article, bloc commun a tous les styles d image a la Une.
 * Genere dans signature.css apres la surcharge du media, seulement pour les
 * medias actives dans article/une.json. */

/* 1. Rail publicitaire vide (arbitrage de Marc du 23/09, « Poser, lots de 10 »).
 * Le gabarit pose aria-hidden sur le slot, le MU plugin diginov-media-ads le
 * retire en servant l unite : tant qu il est la, aucune regie n est servie.
 * On replie la piste et le rail, et la colonne de lecture reprend la mesure
 * de la maison (800 px centres) au lieu de s etaler sur toute la coque.
 * Le jour ou la regie sert, la regle cesse de matcher toute seule. */
html body.diginov-media.diginov-media-techguru .dn-article .dn-article-layout--full:has(> .dn-article-rail > .dn-article-rail__slot[aria-hidden="true"]:only-child),
html body.diginov-media.diginov-media-techguru .dn-article .dn-article-layout--full:has(> .dn-article-rail[aria-hidden="true"]:empty) {
  grid-template-columns: minmax(0, 800px) !important;
  justify-content: center !important;
}
html body.diginov-media.diginov-media-techguru .dn-article .dn-article-layout--full:has(> .dn-article-rail > .dn-article-rail__slot[aria-hidden="true"]:only-child) > .dn-article-rail,
html body.diginov-media.diginov-media-techguru .dn-article .dn-article-layout--full > .dn-article-rail[aria-hidden="true"]:empty {
  display: none !important;
}

/* 2. Image a la Une : une photo n est jamais recadree en portrait ou en carre
 * par le profil de surface. Le style du media fixe largeur et format. */
html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero {
  position: relative;
  overflow: visible !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none;
  padding: 0 !important;
}
html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero::before,
html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero::after {
  content: none !important;
}
html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: var(--une-ratio, 16 / 9) !important;
  object-fit: cover !important;
  object-position: 50% 40%;
  border: 0 !important;
  border-radius: var(--une-radius, 0) !important;
}

/* 3. Legende : sous l image, dans l axe du titre, en DA (trait d accent,
 * corps lisible, jamais sous 14 px). */
html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero figcaption {
  display: flex;
  gap: 12px;
  align-items: baseline;
  margin: 12px 0 0;
  padding: 0 0 12px;
  border-bottom: 1px solid color-mix(in srgb, var(--dn-ink) 14%, transparent);
  color: var(--dn-muted);
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
}
html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero figcaption::before {
  content: "";
  flex: 0 0 28px;
  height: 2px;
  background: var(--dn-accent);
  transform: translateY(-4px);
}

@media (max-width: 760px) {
  html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
  }
  html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero img {
    aspect-ratio: 3 / 2 !important;
    border-radius: 0 !important;
  }
  html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero figcaption {
    margin-inline: 16px;
  }
}

/* ---- article/une-large.css ---- */
/* Style « large » : l image prend la largeur exacte du titre, en 16/9. */
@media (min-width: 761px) {
  html body.diginov-media.diginov-media-techguru .dn-article-shell > .dn-article-hero {
    width: min(var(--dn-surface-measure, 1220px), calc(100% - 48px)) !important;
    max-width: none !important;
    margin-inline: auto !important;
    --une-ratio: 16 / 9;
    --une-radius: var(--dn-radius, 0);
  }
}

/* ---- article/gouttiere.json ---- */
/* Gouttiere mobile du titre : aligne sur le texte du corps. */
@media (max-width: 680px) {
  html body.diginov-media.diginov-media-techguru .dn-surface .dn-article-shell > .dn-article-header.dn-shell {
    margin-inline: 0 !important;
    width: auto !important;
    max-width: none !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    padding-left: 13px !important;
    padding-right: 13px !important;
    box-sizing: border-box !important;
    border-left-width: 1px !important;
  }
}
@media (min-width: 681px) and (max-width: 760px) {
  html body.diginov-media.diginov-media-techguru .dn-surface .dn-article-shell > .dn-article-header.dn-shell {
    margin-inline: 0 !important;
    width: auto !important;
    max-width: none !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    padding-left: 23px !important;
    padding-right: 87px !important;
    box-sizing: border-box !important;
    border-left-width: 1px !important;
  }
}
