/*
 * Base commune à toutes les pages (chargée par src/layouts/Webflow.astro), passe 45 du 13/10/2026.
 * 1. Mise en page du texte : titres équilibrés, paragraphes sans mot isolé (complété côté serveur par src/lib/typo.ts).
 * 2. Le strict nécessaire au mouvement (public/js/qliq-motion.js) sur les pages qui ne chargent pas qliq.css.
 */
h1, h2, h3, h4, h5, h6, [class*='heading-style'] { text-wrap: balance; }
p, li, dd, dt, figcaption, blockquote, summary, label { text-wrap: pretty; }
/* Champs et boutons : pas d'équilibrage (largeurs calculées par le composant) */
input, select, textarea, button { text-wrap: wrap; }

/* Mots des titres qui montent (découpage par qliq-motion.js) */
.rf-w { display: inline-block; overflow: hidden; vertical-align: top; padding: 0 0.04em 0.14em; margin: 0 -0.04em -0.14em; }
.rf-w > span { display: inline-block; }
.rf-w--free { overflow: visible; }
/* Barre de progression de lecture */
.rf-progress { position: fixed; left: 0; top: 0; z-index: 1100; width: 100%; height: 3px; background: #619eff; transform: scaleX(0); transform-origin: 0 50%; pointer-events: none; }
/* Images révélées : léger zoom arrière dans leur cadre */
[data-auto-img] { overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .rf-progress { display: none; } }

/* Point médian « · » : dans Overpass, le glyphe est décalé vers la droite (« Menuisiers ·Marin »).
   Ce caractère seul est pris dans une police système, le reste du texte ne change pas (audit desktop 13/10/2026). */
@font-face { font-family: 'Overpass Variablefont Wght'; src: local('Helvetica Neue'), local('Helvetica'), local('Arial'); unicode-range: U+00B7; font-weight: 100 900; font-style: normal; }
@font-face { font-family: 'Overpass'; src: local('Helvetica Neue'), local('Helvetica'), local('Arial'); unicode-range: U+00B7; font-weight: 100 900; font-style: normal; }
