/* =========================================================================
   tg-site.css — La direction du site public SUR ORDINATEUR (Tom, 09/10/2026).

   Téléphone : le site reste comme avant la refonte (Tom : « reviens sur la
   version d'avant pour mobile »). Tout ce fichier est donc dans une règle
   @media (min-width: 768px), la même bascule que tg-desktop.css et que
   l'en-tête. Chargé en DERNIER dans chaque page publique.

   Sobre, dense et formel, comme une plateforme d'échange : fond #0B0E11,
   surfaces #181A20 / #1E2329, bordures 1 px #2B3139, IBM Plex Sans, chiffres
   en colonnes, rayons de 4 à 8 px, aucune ombre lourde, aucun dégradé, aucune
   lueur, aucun verre dépoli, aucune animation décorative. Les jetons sont
   dans tg-tokens.css.
   ========================================================================= */
@media (min-width: 768px) {

html, body {
  background: var(--tg-fond) !important;
  color: var(--tg-texte);
  font-family: var(--tg-police) !important;
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'tnum' 1;
  overflow-x: clip;
}
body { -webkit-font-smoothing: antialiased; line-height: 1.5; }
body * { font-variant-numeric: tabular-nums; }
input, select, textarea, button { font-family: var(--tg-police); }

h1, h2, h3, h4, h5, h6 { font-family: var(--tg-police) !important; letter-spacing: 0 !important; text-shadow: none !important; }

*, *::before, *::after { text-shadow: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid var(--tg-accent); outline-offset: 2px;
}
::selection { background: var(--tg-accent); color: var(--tg-sur-accent); }
input[type="text"], input[type="email"], input[type="tel"], input[type="search"], input[type="password"], input[type="number"], select, textarea { border-radius: var(--tg-r-petit); }
* { scrollbar-width: thin; scrollbar-color: var(--tg-bord-fort) transparent; }
img, svg, video { max-width: 100%; }

/* Titres : une seule couleur, taille contenue, en casse normale. */
h1 { font-size: clamp(22px, 1.6vw + 14px, 34px) !important; line-height: 1.2 !important; font-weight: 600 !important; text-transform: none !important; }
h2 { font-size: clamp(18px, .6vw + 14px, 22px) !important; line-height: 1.3 !important; font-weight: 600 !important; text-transform: none !important; }
.section-title, .titre, .titre-bloc, .contact-title {
  font-family: var(--tg-police) !important; letter-spacing: 0 !important; text-transform: none !important;
  font-size: 20px !important; font-weight: 600 !important; line-height: 1.3 !important; color: var(--tg-texte);
}
.section-title span, .titre span, .titre-bloc span, .contact-title span, h1 span, h2 span, h1 em, h2 em { color: inherit !important; font-style: normal; }
.section-subtitle, .section-sub { color: var(--tg-texte-2) !important; font-size: 13px !important; letter-spacing: 0 !important; }
[class*="title"] em, [class*="titre"] em { color: inherit !important; font-style: normal; }
[class*="kicker"], [class*="eyebrow"], [class*="surtitre"] { color: var(--tg-texte-2) !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 500 !important; }
[class*="hero-badge"] { background: transparent !important; border: 0 !important; padding: 0 !important; color: var(--tg-texte-2) !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 500 !important; font-size: 12px !important; }

/* « Tout voir » : un bouton fin, pas une pilule. */
.see-all {
  background: transparent !important; border: 1px solid var(--tg-bord) !important; color: var(--tg-texte) !important;
  border-radius: var(--tg-r-petit) !important; font: 500 13px var(--tg-police) !important; letter-spacing: 0 !important;
  padding: 0 12px !important; min-height: 36px; transform: none !important; text-transform: none !important;
}
.see-all:hover { background: var(--tg-surface-2) !important; }

/* Boutons : casse normale, sans écartement des lettres. */
button, .btn, [class*="btn"], [class*="cta"] { text-transform: none !important; letter-spacing: 0 !important; }

/* Survols : la bordure change, rien ne saute. */
[class*="card"]:hover, [class*="carte"]:hover, [class*="product"]:hover, [class*="tile"]:hover { transform: none !important; }

/* Pas d'apparition au défilement : le contenu est là, tout de suite. */
.reveal, .fade-in, [data-aos] { opacity: 1 !important; transform: none !important; transition: none !important; }

/* Pied de page : jamais plus large que l'écran. */
#tg-footer, #tg-footer * { box-sizing: border-box; }

/* Styles écrits dans les balises (version d'avant) : polices et couleurs des jetons. */
[style*="TG Titres"], [style*="Barlow"] { font-family: var(--tg-police) !important; letter-spacing: 0 !important; }
[style*="TG Titres"][style*="font-size:28px"], [style*="TG Titres"][style*="font-size:26px"], [style*="TG Titres"][style*="font-size: 28px"] { font-size: 20px !important; font-weight: 600 !important; line-height: 1.3 !important; }
[style*="TG Titres"] span { color: inherit !important; }
[style*="color:#FFD600"], [style*="color: #FFD600"], [style*="color:#ffd600"] { color: var(--tg-accent) !important; }
[style*="background:#FFD600"], [style*="background: #FFD600"], [style*="background:#ffd600"] { background: var(--tg-accent) !important; }
[style*="background:#0A0A0A"], [style*="background:#0a0a0a"], [style*="background: #0a0a0a"], [style*="background:#000"] { background-color: var(--tg-fond) !important; }
[style*="background:#101010"], [style*="background:#111"], [style*="background:#131313"], [style*="background:#141414"], [style*="background: #101010"] { background-color: var(--tg-surface) !important; }
[style*="background:#1a1a1a"], [style*="background:#1A1A1A"], [style*="background:#181818"], [style*="background:#1c1c1c"], [style*="background:#161616"], [style*="background: #1a1a1a"] { background-color: var(--tg-surface-2) !important; }
[style*="border:1px solid #222"], [style*="border:1px solid #2a2a2a"], [style*="border:1px solid #333"], [style*="border: 1px solid #222"], [style*="border:1px solid #1a1a1a"] { border-color: var(--tg-bord) !important; }
[style*="color:#888"], [style*="color:#999"], [style*="color:#777"], [style*="color:#666"], [style*="color:#aaa"], [style*="color: #888"] { color: var(--tg-texte-2) !important; }
[style*="color:#fff"], [style*="color: #fff"], [style*="color:#FFF"], [style*="color:white"] { color: var(--tg-texte) !important; }
[style*="linear-gradient"], [style*="radial-gradient"] { background-image: none !important; background-color: var(--tg-surface-2); }
[style*="gradient"][style*="rgba(0,0,0"] { background: rgba(11,14,17,.55) !important; }
[style*="gradient"][style*="height:3px"] { display: none !important; }
[style*="box-shadow"] { box-shadow: none !important; }
[style*="border-radius:20px"], [style*="border-radius:999px"], [style*="border-radius:50px"], [style*="border-radius: 20px"], [style*="border-radius:30px"] { border-radius: 4px !important; }
[style*="border-radius:12px"], [style*="border-radius:14px"], [style*="border-radius:16px"], [style*="border-radius: 12px"], [style*="border-radius:18px"], [style*="border-radius:24px"] { border-radius: 8px !important; }

}

@media (prefers-reduced-motion: reduce) and (min-width: 768px) {
  *, *::before, *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; scroll-behavior: auto !important; }
}
