/* Primitives globales : boutons, liens texte, rythme de section,
   sur-titres, titres de section. Extrait de theme.css sans modification. */

/* Boutons. Vert (--accent) seulement pour ajouter au panier, commander,
   payer. Encre partout ailleurs, papier sur un fond encre. Deux hauteurs :
   standard et .button--compact. Aucun bouton ne porte de flèche. */
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;min-height:var(--button-h);padding:15px 23px;border:1px solid transparent;font-size:.91rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em;line-height:1.1;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.button:hover{transform:translateY(-3px)}
.button span{font-size:1.15rem;font-weight:400}
.button--accent{background:var(--accent);color:var(--ink)}
.button--accent:hover{background:var(--accent-hover)}
.button--ink{background:var(--ink);color:#fff}
.button--ink:hover{background:#254b63}
.button--outline{border-color:var(--ink);background:transparent;color:var(--ink)}
.button--outline:hover{background:var(--ink);color:#fff}
.button--paper{background:var(--paper);color:var(--ink)}
.button--paper:hover{background:var(--white)}
.button--compact{min-height:var(--button-h-compact);padding:11px 16px;gap:12px;font-size:.76rem}
.text-link{display:inline-flex;align-items:center;gap:10px;border:0;border-bottom:1px solid currentColor;padding:0 0 4px;background:transparent;font-weight:700;line-height:1.2}
.text-link:hover{opacity:.67}
.section-space{padding-block:100px}
.section-kicker{margin:0 0 15px;font-size:.9rem;font-weight:800;letter-spacing:.11em}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
.section-heading h1,.section-heading h2{margin:0}
.section-heading h2{font-size:var(--fs-h2);font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:-.025em;text-wrap:balance}
.section-heading>p{max-width:30ch;margin:0 0 5px;color:var(--muted);font-size:1.13rem}
.section-heading--line{border-bottom:1px solid var(--line);padding-bottom:27px}
.section-heading--line .text-link{margin-bottom:5px}

/* Flèche de sortie de page. Réservée aux liens qui mènent vers une autre
   page ; jamais sur un ajout au panier ni sur une ancre de la même page. */
/* La seule flèche du thème, réservée aux liens texte internes. */
.icon-arrow{flex:none;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square}
.icon-arrow--back{transform:scaleX(-1)}
.icon-arrow--down{transform:rotate(90deg)}

/* Blasons. Dans une boîte en grille centrée, une hauteur en pourcentage ne se
   résout pas et l'image reprenait sa taille propre, au point de chevaucher le
   texte voisin. L'image est donc posée à plat dans sa boîte, qui fixe seule la
   taille. Jamais de fond ni de cadre autour d'un blason. */
:root :is(.vestiaire-tab__crest, .club-index__crest, .territory__crest, .matrix__crest) { position: relative; }
:root :is(.vestiaire-tab__crest, .vestiaire-look__crest, .hero-product__crest, .gallery-card__crest, .club-index__crest, .territory__crest, .matrix__crest) > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: contain;
}
