/* Icônes de contact : pastilles rondes aux couleurs des marques, bouton flottant */
:root{--wa:#25D366;--wa-dark:#1EBE5A;--tel:#E1232B;--fb:#1877F2}
/* Barre du haut */
.topbar .tb-phone{gap:8px}
.topbar .tb-phone a:first-child{display:inline-flex;align-items:center;gap:8px;font-weight:600}
.topbar .tb-phone a:first-child svg{width:26px;height:26px;padding:6px;box-sizing:border-box;border-radius:50%;background:var(--tel);stroke:#fff;fill:none;stroke-width:2;flex:none}
.topbar a.tb-wa{width:26px;height:26px;border-radius:50%;background:var(--wa);align-items:center;justify-content:center}
.topbar .tb-wa svg{width:15px;height:15px;fill:#fff;stroke:none}
.topbar a.tb-wa:hover{background:var(--wa-dark)}
/* Numéros dans le texte */
.tel-line{gap:10px}
.tel-line a.tel{gap:9px;font-weight:600}
.tel-line a.tel .tel-ico{width:30px;height:30px;padding:7px;box-sizing:border-box;border-radius:50%;background:var(--tel);stroke:#fff;fill:none;stroke-width:2}
.tel-line a.wa{width:30px;height:30px;border-radius:50%;background:var(--wa);align-items:center;justify-content:center;transition:transform .15s ease,background .15s ease}
.tel-line a.wa .wa-ico{width:18px;height:18px;fill:#fff}
.tel-line a.wa:hover{background:var(--wa-dark);transform:translateY(-1px)}
/* Boutons */
.btn .tel-ico{width:1.1em;height:1.1em;padding:0;background:none;border-radius:0;stroke:currentColor}
.btn.btn-wa,.btn-wa{background:var(--wa);border:2px solid var(--wa);color:#fff}
.pg-hero .btn-wa,.hero .btn-wa,.cta-row .btn-wa,.maroc-foot .btn-wa{color:#fff}
.btn-wa .wa-ico{fill:#fff}
.btn-wa:hover,.btn-wa:focus-visible{background:var(--wa-dark);border-color:var(--wa-dark);color:#fff}
/* Réseaux sociaux : pied de page */
.social-row{gap:12px}
.social-btn{width:42px;height:42px;border:0;color:#fff;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
.social-btn svg{width:21px;height:21px}
.social-btn[aria-label="Facebook"]{background:var(--fb)}
.social-btn[aria-label="Facebook"] svg{fill:#fff;stroke:none}
.social-btn[aria-label="Instagram"]{background:linear-gradient(45deg,#F9A03F 0%,#E1306C 45%,#833AB4 100%)}
.social-btn[aria-label="Instagram"] svg{fill:none;stroke:#fff;stroke-width:2}
.social-btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,0,0,.35);filter:brightness(1.08)}
.social-btn[aria-label="Facebook"]:hover{background:var(--fb)}
.social-btn[aria-label="Instagram"]:hover{background:linear-gradient(45deg,#F9A03F 0%,#E1306C 45%,#833AB4 100%)}
/* Réseaux sociaux : section contact */
.social-pills{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.sp-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 18px 9px 14px;border-radius:999px;color:#fff;font-weight:600;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.sp-btn svg{width:18px;height:18px;flex:none}
.sp-fb{background:var(--fb)}.sp-fb svg{fill:#fff;stroke:none}
.sp-ig{background:linear-gradient(45deg,#F9A03F 0%,#E1306C 45%,#833AB4 100%)}.sp-ig svg{fill:none;stroke:#fff;stroke-width:2}
.sp-btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(22,35,61,.25);color:#fff}
/* Boutons flottants (appel + WhatsApp) */
.fab-contact{position:fixed;inset-inline-end:18px;bottom:18px;z-index:90;display:flex;flex-direction:column;gap:12px}
.fab-contact a{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.28);transition:transform .15s ease}
.fab-contact a:hover{transform:scale(1.08)}
.fab-contact svg{width:28px;height:28px}
.fab-tel{background:var(--tel)}.fab-tel svg{stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;width:25px;height:25px}
.fab-wa{background:var(--wa);animation:fabpulse 2.6s ease-out infinite}.fab-wa svg{fill:#fff;stroke:none}
@keyframes fabpulse{0%{box-shadow:0 6px 18px rgba(0,0,0,.28),0 0 0 0 rgba(37,211,102,.55)}70%,100%{box-shadow:0 6px 18px rgba(0,0,0,.28),0 0 0 16px rgba(37,211,102,0)}}
@media (prefers-reduced-motion:reduce){.fab-wa{animation:none}}
@media (max-width:640px){.fab-contact{inset-inline-end:12px;bottom:12px}.fab-contact a{width:50px;height:50px}}
@media print{.fab-contact{display:none}}
/* Correctifs : lisibilité des pastilles et numéro du pied de page sur une ligne */
.info-block .social-pills a.sp-btn,.social-pills a.sp-btn{color:#fff}
.info-block .social-pills a.sp-btn:hover{color:#fff}
footer .tel-line{flex-wrap:nowrap;gap:8px}
footer .tel-line a.tel{white-space:nowrap;gap:8px}
/* Rangées de boutons (accueil Maroc, pages Maroc) : même taille, même forme, vert plus lisible */
.maroc-foot,.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px}
.maroc-foot .btn,.cta-row .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:8px;font-size:1rem;font-weight:600;line-height:1;box-sizing:border-box;text-decoration:none}
.maroc-foot .btn .tel-ico,.maroc-foot .btn .wa-ico,.cta-row .btn .tel-ico,.cta-row .btn .wa-ico{margin:0;width:20px;height:20px;flex:none;vertical-align:0}
.btn.btn-wa,.btn-wa{background:#128C4A;border-color:#128C4A;color:#fff}
.btn-wa:hover,.btn-wa:focus-visible{background:#0F7A40;border-color:#0F7A40;color:#fff}
.maroc-foot .btn-solid{background:#E1232B;border-color:#E1232B;color:#fff}
.maroc-foot .btn-solid:hover{background:#B81C23;border-color:#B81C23}
.maroc-foot a.more{display:inline-flex;align-items:center;min-height:52px;padding:0 6px;font-weight:600;color:var(--ink);text-decoration:none;border-bottom:2px solid transparent}
.maroc-foot a.more:hover{border-bottom-color:#E1232B}
@media (max-width:640px){.maroc-foot .btn,.cta-row .btn{flex:1 1 100%}.maroc-foot a.more{flex:1 1 auto}}
/* Petits logos Facebook / Instagram dans la barre du haut */
.tb-social{display:inline-flex;align-items:center;gap:8px;margin-inline-start:6px}
.tb-social a{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease,filter .15s ease}
.tb-social svg{width:14px;height:14px}
.tb-fb{background:var(--fb)}.tb-fb svg{fill:#fff;stroke:none}
.tb-ig{background:linear-gradient(45deg,#F9A03F 0%,#E1306C 45%,#833AB4 100%)}.tb-ig svg{fill:none;stroke:#fff;stroke-width:2}
.tb-social a:hover{transform:translateY(-1px);filter:brightness(1.1)}
/* Bandeau de contact (sections « bureaux ») */
.contact-band{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;margin:26px 0 0;padding:32px 38px;background:#16233D;color:#fff;border-radius:14px;border-inline-start:6px solid #E1232B}
.contact-band .cb-q{display:block;color:#C9D1E3;font-size:1rem;margin-bottom:8px}
.contact-band a.cb-num{display:block;color:#fff;text-decoration:none;font-family:Lora,Georgia,serif;font-weight:600;font-size:clamp(1.9rem,4.2vw,2.75rem);line-height:1.05;letter-spacing:.01em}
.contact-band a.cb-num:hover{text-decoration:underline;text-decoration-color:#E1232B;text-underline-offset:6px}
.contact-band .cb-h{color:#C9D1E3;font-size:.95rem;margin-top:10px}
.contact-band .cb-b{display:flex;gap:12px;flex-wrap:wrap}
.contact-band .cb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font-weight:600;font-size:1rem;color:#fff;text-decoration:none;transition:transform .15s ease,filter .15s ease}
.contact-band .cb-btn:hover{transform:translateY(-2px);filter:brightness(1.08);color:#fff}
.contact-band .cb-btn svg{width:22px;height:22px;flex:none}
.contact-band .cb-tel{background:#E1232B}.contact-band .cb-tel svg{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.contact-band .cb-wa{background:#128C4A}.contact-band .cb-wa svg{fill:#fff;stroke:none}
@media (max-width:640px){.contact-band{padding:26px 22px}.contact-band .cb-b{width:100%}.contact-band .cb-btn{flex:1 1 100%}}
/* Barre du haut : logos Facebook / Instagram plus grands */
.tb-social{gap:14px}
.tb-social a{width:36px;height:36px}
.tb-social svg{width:21px;height:21px}
@media (max-width:640px){.tb-social a{width:34px;height:34px}.tb-social svg{width:20px;height:20px}}
/* Rangée d'appel des pages Maroc : un bouton principal + deux pastilles rondes */
.cta-or{color:#B9C3DA;font-size:.95rem;margin:0 2px}
.cta-circle{width:52px;height:52px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;transition:transform .15s ease,filter .15s ease,background .15s ease;flex:none}
.cta-circle svg{width:24px;height:24px}
.cta-circle:hover{transform:translateY(-2px);filter:brightness(1.1);color:#fff}
.cta-tel{background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.45)}
.cta-tel svg{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cta-wa{background:#128C4A}.cta-wa svg{fill:#fff;stroke:none}
@media (max-width:640px){.cta-row .btn.btn-solid{flex:1 1 100%}}
@media (min-width:641px){.hero .cta-row,.hero .hero-cta{flex-wrap:nowrap;gap:12px}.hero .btn{padding:0 18px;white-space:nowrap}.hero .cta-circle{width:48px;height:48px}}
.lede + .cta-row{margin-top:30px;margin-bottom:8px}
nav.primary a.nav-news,.mobile-nav a.nav-news{display:inline-flex;align-items:center;gap:8px;background:#E1232B;color:#fff;font-weight:700;padding:7px 14px;border-radius:999px;border-bottom:0;box-shadow:0 2px 10px rgba(225,35,43,.35)}
nav.primary a.nav-news:hover,nav.primary a.nav-news:focus-visible{background:#c91c24;color:#fff;border-bottom:0}
.live-dot{width:9px;height:9px;border-radius:50%;background:#fff;display:inline-block;animation:livepulse 1.6s infinite}
@keyframes livepulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.8)}70%{box-shadow:0 0 0 8px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}
nav.primary .nav-social,.mobile-nav .nav-social{display:inline-flex;align-items:center;gap:10px;margin-inline-start:10px}
nav.primary .nav-social a,.mobile-nav .nav-social a{width:34px;height:34px;padding:0;border:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
nav.primary .nav-social svg,.mobile-nav .nav-social svg{width:19px;height:19px}
.mobile-nav .nav-social{padding:14px 0 6px}
