/**
 * Tokens partagés des blocs LP GEO.
 *
 * Extrait tel quel de l'en-tête qui était dupliqué dans les 10 fichiers
 * assets/css/blocks/*.css. Chargé une seule fois, en dépendance de chaque CSS
 * de bloc (voir dioqa_block_css() dans functions.php) : les blocs restent donc
 * réutilisables sur n'importe quelle page sans embarquer 10 copies des tokens.
 *
 * IMPORTANT : ce fichier se charge partout où un bloc s'affiche (pages agence,
 * accueil, contenu...). Il ne doit contenir QUE des règles neutres, identiques
 * à l'existant. L'harmonisation propre à la landing page vit dans lp-geo.css,
 * scopée sous main.lp-geo.
 */

/* Conteneurs de texte riche (WYSIWYG) — normalise les <p> internes */
.lp-geo-hero-text p, .lp-geo-hero-intro p, .lp-geo-lead p, .lp-geo-cta-subtext p,
.lp-geo-equipe-lead p, .lp-geo-methode-lead p, .lp-geo-faq-answer p { margin: 0 0 .7em; }
.lp-geo-hero-text p:last-child, .lp-geo-hero-intro p:last-child, .lp-geo-lead p:last-child,
.lp-geo-cta-subtext p:last-child, .lp-geo-equipe-lead p:last-child,
.lp-geo-methode-lead p:last-child, .lp-geo-faq-answer p:last-child { margin-bottom: 0; }
.lp-geo strong, .lp-geo b { font-weight: 700; }

/* Surtitre / titres / lead / puce / bouton pilule */
.lp-geo-surtitre { display: block; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: #FF0088; font-weight: 600; }
.lp-geo-h2, .lp-geo-h2 * { font-weight: 700; font-size: 38px; line-height: 1.12; color: #313131; margin: 0; }
.lp-geo-h2--lg, .lp-geo-h2--lg * { font-size: 40px; line-height: 1.1; }
.lp-geo-lead { font-size: 16px; line-height: 1.6; color: #636363; margin: 0; }
.lp-geo-sq { width: 8px; height: 8px; background: #FF0088; display: inline-block; flex-shrink: 0; }
.lp-geo-pill { display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; background: #FF0088; color: #fff; border-radius: 25px; padding: 14px 26px; font-size: 15px; transition: opacity .25s ease; text-decoration: none; }
.lp-geo-pill, .lp-geo-pill:hover, .lp-geo-pill span { color: #fff; }
.lp-geo-pill:hover { opacity: .88; }
.lp-geo-pill img { display: block; }

/* Animations partagées */
@keyframes lp-geo-pulse { 0%,100% { opacity: 1; } 50% { opacity: .3; } }
@keyframes lp-geo-blink { 0%,49% { opacity: 1; } 50%,100% { opacity: 0; } }

/* Icônes recolorables (mask) */
.lp-geo-ico { display: inline-block; width: 18px; height: 18px; background: currentColor; -webkit-mask: center / contain no-repeat; mask: center / contain no-repeat; }
.lp-geo-ico-phone { -webkit-mask-image: url('../img/icon-phone.svg'); mask-image: url('../img/icon-phone.svg'); }
.lp-geo-ico-mail { width: 20px; height: 14px; -webkit-mask-image: url('../img/icon-mail.svg'); mask-image: url('../img/icon-mail.svg'); }
