/* WEVAL INLINE STYLES MIGRATION (D574 - migrated from index.html)
 * Date: 2026-05-10
 * Source: index.html had 11 inline <style> blocks
 * Migrated to satisfy doctrine D574 (no inline <style> blocks).
 * Each block kept as-is, separated by section comments.
 */

/* === Block 1/11: d721-wr-cta-beauty ===  attrs:id="d721-wr-cta-beauty" */
/* D722: hide legacy d466 duplicate sticky bar */
#d466-sticky-cta-bar { display: none !important; }

/* D721: Embellir la barre RDV — du noir nul au gradient WEVAL */
.wr-floating-cta {
  background: linear-gradient(135deg, rgba(124,58,237,0.96) 0%, rgba(79,70,229,0.96) 45%, rgba(6,182,212,0.96) 100%) !important;
  backdrop-filter: blur(20px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(150%) !important;
  border-top: 1px solid rgba(255,255,255,0.22) !important;
  box-shadow: 0 -10px 40px rgba(99,102,241,0.35), 0 -2px 10px rgba(0,0,0,0.1) !important;
  padding: 14px 28px !important;
  gap: 18px !important;
  align-items: center !important;
  z-index: 9991 !important;
}
.wr-floating-cta * { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; }
.wr-floating-cta-text { font-weight: 500 !important; letter-spacing: 0.2px !important; opacity: 0.97 !important; }
.wr-floating-cta-text strong { font-weight: 700 !important; }
.wr-floating-cta button, .wr-floating-cta a {
  border-radius: 999px !important;
  padding: 10px 22px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: none !important;
  cursor: pointer !important;
}
/* Bouton primaire "Demander un devis" — fond blanc, texte violet */
.wr-floating-cta a[href*="contact"], 
.wr-floating-cta button:first-of-type,
.wr-floating-cta a:first-of-type {
  background: #ffffff !important;
  color: #6d28d9 !important;
  -webkit-text-fill-color: #6d28d9 !important;
  box-shadow: 0 4px 14px rgba(255,255,255,0.35) !important;
}
.wr-floating-cta a[href*="contact"]:hover,
.wr-floating-cta button:first-of-type:hover,
.wr-floating-cta a:first-of-type:hover {
  transform: translateY(-2px) scale(1.03) !important;
  box-shadow: 0 8px 22px rgba(255,255,255,0.45) !important;
}
/* Bouton secondaire "Prendre RDV" — outline blanc */
.wr-floating-cta a[href*="booking"],
.wr-floating-cta a[href*="rdv"],
.wr-floating-cta button:nth-of-type(2),
.wr-floating-cta a:nth-of-type(2) {
  background: rgba(255,255,255,0.12) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1.5px solid rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(8px) !important;
}
.wr-floating-cta a[href*="booking"]:hover,
.wr-floating-cta a[href*="rdv"]:hover,
.wr-floating-cta button:nth-of-type(2):hover,
.wr-floating-cta a:nth-of-type(2):hover {
  background: rgba(255,255,255,0.22) !important;
  border-color: #ffffff !important;
  transform: translateY(-2px) !important;
}
/* Bouton fermer × — discret mais accessible */
.wr-floating-cta button[aria-label*="ermer"], 
.wr-floating-cta .close-btn,
.wr-floating-cta button:last-of-type {
  background: rgba(255,255,255,0.1) !important;
  color: rgba(255,255,255,0.75) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  font-size: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 8px !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
}
.wr-floating-cta button[aria-label*="ermer"]:hover,
.wr-floating-cta .close-btn:hover,
.wr-floating-cta button:last-of-type:hover {
  background: rgba(255,255,255,0.25) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
/* Animation d'entrée */
.wr-floating-cta.visible { 
  animation: d721-cta-slide-up 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}
@keyframes d721-cta-slide-up {
  0% { transform: translateY(100%); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}
/* Mobile responsive */
@media (max-width: 640px) {
  .wr-floating-cta { padding: 10px 12px !important; gap: 8px !important; flex-wrap: wrap !important; }
  .wr-floating-cta-text { font-size: 11px !important; flex-basis: 100% !important; text-align: center !important; }
  .wr-floating-cta button, .wr-floating-cta a { padding: 8px 14px !important; font-size: 12px !important; }
}
/* D721 wr-floating-cta beauty — applied */

/* D722: force white on text + secondary button */
.wr-floating-cta .wr-floating-cta-text,
.wr-floating-cta .wr-floating-cta-text strong,
.wr-floating-cta .wr-floating-cta-text * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.wr-floating-cta .wr-cta-secondary,
.wr-floating-cta button:nth-of-type(2),
.wr-floating-cta a:nth-of-type(2) {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.wr-floating-cta .wr-cta-close {
  background: rgba(255,255,255,0.15) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.3) !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}
.wr-floating-cta .wr-cta-close:hover {
  background: rgba(255,255,255,0.25) !important;
  transform: rotate(90deg) !important;
}

/* D735: mobile responsive cleanup - reduce widget clutter + compact banner */
@media (max-width: 768px) {
  /* CTA floating banner: compact, 1 ligne, autoriser le scroll-stop */
  .wr-floating-cta {
    padding: 8px 12px !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    max-height: 56px !important;
    align-items: center !important;
    background: linear-gradient(135deg, rgba(124,58,237,0.97) 0%, rgba(79,70,229,0.97) 50%, rgba(6,182,212,0.97) 100%) !important;
  }
  .wr-floating-cta-text {
    display: none !important;
  }
  .wr-floating-cta button,
  .wr-floating-cta a {
    padding: 7px 12px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
    flex-shrink: 1 !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    text-align: center !important;
    line-height: 1.2 !important;
  }
  .wr-floating-cta {
    overflow: hidden !important;
    justify-content: space-between !important;
  }
  .wr-cta-close {
    width: 28px !important;
    height: 28px !important;
    flex-shrink: 0 !important;
  }
  
  /* Right widgets: cacher TOUS les widgets non-essentiels sur mobile pour liberer l'ecran */
  /* Garder seulement WhatsApp (le plus utile pour mobile) */
  #d710-av, #d483-live-widget, .d483-toggle,
  #d470-fab, #d470-fab-tooltip,
  .chat-toggle-btn {
    display: none !important;
  }
  
  /* Cacher aussi le bouton "Nos services" injecte en bas-gauche en JS si trop encombrant */
  body > a[href="/services"][style*="position:fixed"] {
    bottom: 90px !important;
    font-size: 12px !important;
    padding: 8px 16px !important;
  }
  
  /* WhatsApp et Chat: position plus haute pour eviter chevauchement avec banner CTA */
  #weval-whatsapp {
    bottom: 80px !important;
    top: auto !important;
    right: 12px !important;
    width: 48px !important;
    height: 48px !important;
  }
  .chat-toggle-btn {
    bottom: 140px !important;
    top: auto !important;
    right: 12px !important;
    width: 48px !important;
    height: 48px !important;
  }
  .chat-toggle-btn span {
    font-size: 22px !important;
  }
  
  /* Hide D466 legacy bar on mobile too */
  #d466-sticky-cta-bar {
    display: none !important;
  }
  
  /* Body: padding-bottom pour eviter que la banner masque le contenu */
  body {
    padding-bottom: 64px !important;
  }
  
  /* CTA popup avatar (d710-pop) - si jamais ouvert: full width */
  #d710-pop {
    width: calc(100vw - 16px) !important;
    right: 8px !important;
    left: 8px !important;
    top: 8% !important;
    height: 84vh !important;
  }
  
  /* Cookie banner / autres banners overlapping - reduire */
  .cookie-banner, .gdpr-banner, [class*="cookie"] {
    font-size: 12px !important;
    padding: 8px !important;
  }
}

/* Plus petit (iPhone SE) */
@media (max-width: 380px) {
  .wr-floating-cta button,
  .wr-floating-cta a {
    padding: 7px 10px !important;
    font-size: 12px !important;
  }
  #weval-whatsapp, .chat-toggle-btn {
    width: 42px !important;
    height: 42px !important;
  }
}

  
/* D741: hide duplicate Tech Radar injected by flagship.js (nav already has a Tech Radar button) */
.weval-tech-radar-nav { display: none !important; }

/* === Block 2/11: anonymous-block-2 ===  attrs: */
/* Carousel v3 */
.carousel-3d-container{height:620px!important;perspective:1600px!important}
.carousel-3d-wrapper{width:420px!important;height:480px!important}
.carousel-3d-card{width:380px!important;height:450px!important;background:#ffffff!important;border:1px solid rgba(0,0,0,0.08)!important;color:#1B1B1B!important;padding:2rem!important;border-radius:22px!important;box-shadow:0 4px 24px rgba(0,0,0,0.06)!important}
.carousel-3d-card.active{background:#ffffff!important;border-color:rgba(55,48,163,0.25)!important;box-shadow:0 20px 50px rgba(0,0,0,0.10)!important}
.carousel-3d-card:not(.active){opacity:0.5!important;filter:blur(1.5px)!important}
.carousel-3d-card .service-title{color:#3730A3!important;-webkit-text-fill-color:#3730A3!important;font-size:1.3rem!important;font-weight:700!important}
.carousel-3d-card .service-description,.carousel-3d-card .service-détails{color:#555555!important;-webkit-text-fill-color:#555555!important;font-size:.9rem!important;line-height:1.5!important;-webkit-line-clamp:8!important}
.carousel-3d-card .service-icon{font-size:2.2rem!important;margin-bottom:.8rem!important}
.carousel-3d-card .service-button{background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;color:#fff!important;border:none!important;padding:.7rem 1.5rem!important;border-radius:12px!important;font-weight:600!important;font-size:.95rem!important}
.carousel-3d-prev{left:5%!important}.carousel-3d-next{right:5%!important}
.carousel-3d-nav{width:50px!important;height:50px!important;font-size:1.8rem!important;background:#ffffff!important;border:1px solid rgba(55,48,163,0.3)!important;color:#3730A3!important;box-shadow:0 2px 8px rgba(0,0,0,0.06)!important}
.carousel-3d-dots{margin-top:1.5rem!important}
@media(max-width:1024px){
.carousel-3d-container{height:550px!important}
.carousel-3d-wrapper{width:350px!important;height:420px!important}
.carousel-3d-card{width:320px!important;height:400px!important;padding:1.5rem!important}
}
@media(max-width:768px){
.carousel-3d-container{height:500px!important;perspective:1000px!important}
.carousel-3d-wrapper{width:300px!important;height:380px!important}
.carousel-3d-card{width:280px!important;height:360px!important;padding:1.3rem!important}
.carousel-3d-card .service-title{font-size:1.1rem!important}
.carousel-3d-card .service-description,.carousel-3d-card .service-détails{font-size:.8rem!important}
.carousel-3d-prev{left:2%!important}.carousel-3d-next{right:2%!important}
.carousel-3d-nav{width:40px!important;height:40px!important;font-size:1.4rem!important}
}
@media(max-width:480px){
.carousel-3d-container{height:450px!important;perspective:800px!important}
.carousel-3d-wrapper{width:260px!important;height:340px!important}
.carousel-3d-card{width:250px!important;height:320px!important;padding:1rem!important}
.carousel-3d-card .service-title{font-size:1rem!important}
.carousel-3d-card .service-description,.carousel-3d-card .service-détails{font-size:.75rem!important;-webkit-line-clamp:5!important}
.carousel-3d-prev{left:0!important}.carousel-3d-next{right:0!important}
.carousel-3d-nav{width:35px!important;height:35px!important;font-size:1.2rem!important}
}

/* === Block 3/11: d466-sticky-cta ===  attrs:id="d466-sticky-cta" */
/* D466 - Sticky conversion CTA bar Yacine */
#d466-sticky-cta-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
    color: #ffffff;
    padding: 12px 24px;
    box-shadow: 0 -4px 16px rgba(99,102,241,0.25);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    z-index: 9990;
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 14px;
    transform: translateY(100%);
    transition: transform 300ms ease;
}
#d466-sticky-cta-bar.visible { transform: translateY(0); }
#d466-sticky-cta-bar .msg { font-weight: 500; opacity: 0.95; }
#d466-sticky-cta-bar .cta-btn {
    background: #ffffff;
    color: #6366f1;
    padding: 10px 24px;
    border-radius: 24px;
    font-weight: 700;
    text-decoration: none;
    transition: transform 200ms, box-shadow 200ms;
    border: none;
    cursor: pointer;
    font-size: 14px;
}
#d466-sticky-cta-bar .cta-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.2); }
#d466-sticky-cta-bar .close-x {
    background: transparent;
    color: #ffffff;
    border: 1px solid rgba(255,255,255,0.4);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 8px;
}
@media (max-width: 768px) {
    #d466-sticky-cta-bar { font-size: 12px; padding: 10px 16px; gap: 10px; flex-wrap: wrap; }
    #d466-sticky-cta-bar .msg { display: none; }
    #d466-sticky-cta-bar .msg-mobile { display: inline; }
    #d466-sticky-cta-bar .cta-btn { padding: 8px 16px; font-size: 13px; }
}
#d466-sticky-cta-bar .msg-mobile { display: none; }

/* === Block 4/11: d467-contact-modal-css ===  attrs:id="d467-contact-modal-css" */
/* D467 Contact form modal universel - WEVAL UX premium */
#d467-contact-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.78);
    backdrop-filter: blur(8px);
    z-index: 99990;
    align-items: center;
    justify-content: center;
    padding: 16px;
    font-family: 'DM Sans', system-ui, sans-serif;
}
#d467-contact-modal.open { display: flex; }
#d467-contact-modal .d467-modal-card {
    background: #ffffff;
    border-radius: 20px;
    max-width: 520px;
    width: 100%;
    max-height: 92vh;
    overflow-y: auto;
    box-shadow: 0 24px 64px rgba(0,0,0,0.4);
    position: relative;
    animation: d467-pop 280ms ease-out;
}
@keyframes d467-pop { from { transform: scale(0.94); opacity: 0; } to { transform: scale(1); opacity: 1; } }
#d467-contact-modal .d467-header {
    background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
    color: #ffffff;
    padding: 24px 28px 20px;
    border-radius: 20px 20px 0 0;
    position: relative;
}
#d467-contact-modal .d467-header h2 {
    margin: 0 0 6px;
    font-size: 22px;
    font-weight: 800;
}
#d467-contact-modal .d467-header p {
    margin: 0;
    font-size: 14px;
    opacity: 0.92;
}
#d467-contact-modal .d467-close {
    position: absolute;
    top: 16px;
    right: 16px;
    background: rgba(255,255,255,0.18);
    color: #fff;
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 200ms;
}
#d467-contact-modal .d467-close:hover { background: rgba(255,255,255,0.32); }
#d467-contact-modal .d467-body {
    padding: 24px 28px 28px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
#d467-contact-modal label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
#d467-contact-modal input,
#d467-contact-modal textarea {
    width: 100%;
    padding: 11px 14px;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    font-size: 14px;
    font-family: inherit;
    color: #1f2937;
    background: #f9fafb;
    transition: border 180ms, background 180ms;
    box-sizing: border-box;
}
#d467-contact-modal input:focus,
#d467-contact-modal textarea:focus {
    outline: none;
    border-color: #6366f1;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(99,102,241,0.12);
}
#d467-contact-modal textarea { min-height: 90px; resize: vertical; }
#d467-contact-modal .d467-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
#d467-contact-modal .d467-honeypot { display: none !important; } /* anti-bot */
#d467-contact-modal .d467-submit {
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: #ffffff;
    border: none;
    padding: 13px 20px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: transform 180ms, box-shadow 180ms, opacity 180ms;
    margin-top: 4px;
}
#d467-contact-modal .d467-submit:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(99,102,241,0.35); }
#d467-contact-modal .d467-submit:disabled { opacity: 0.5; cursor: not-allowed; transform: none; box-shadow: none; }
#d467-contact-modal .d467-msg {
    text-align: center;
    padding: 12px;
    border-radius: 8px;
    font-size: 14px;
    display: none;
}
#d467-contact-modal .d467-msg.success { display: block; background: #d1fae5; color: #065f46; border: 1px solid #10b981; }
#d467-contact-modal .d467-msg.error { display: block; background: #fee2e2; color: #991b1b; border: 1px solid #ef4444; }
#d467-contact-modal .d467-rgpd {
    font-size: 11px;
    color: #6b7280;
    text-align: center;
    margin-top: 4px;
}
@media (max-width: 520px) {
    #d467-contact-modal .d467-row { grid-template-columns: 1fr; }
    #d467-contact-modal .d467-modal-card { border-radius: 16px; }
}

/* === Block 5/11: d468-trust-css ===  attrs:id="d468-trust-css" */
#d468-trust-signals {
    background: linear-gradient(180deg, #fafbff 0%, #ffffff 100%);
    padding: 56px 24px;
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    font-family: 'DM Sans', system-ui, sans-serif;
}
#d468-trust-signals .container { max-width: 1200px; margin: 0 auto; }
#d468-trust-signals .label {
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px;
    color: #6366f1; text-align: center; margin-bottom: 16px;
}
#d468-trust-signals h2 {
    text-align: center; font-size: 32px; font-weight: 800; color: #0f172a;
    margin: 0 0 40px; line-height: 1.2;
}
#d468-trust-signals .stats-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; margin-bottom: 48px;
}
#d468-trust-signals .stat-card {
    text-align: center; padding: 24px 16px; background: #ffffff;
    border-radius: 16px; border: 1px solid #f1f5f9;
    transition: transform 240ms, box-shadow 240ms;
}
#d468-trust-signals .stat-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(99,102,241,0.10); }
#d468-trust-signals .stat-num {
    font-size: 44px; font-weight: 800;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
    line-height: 1; margin-bottom: 8px;
}
#d468-trust-signals .stat-label { font-size: 13px; color: #475569; font-weight: 600; line-height: 1.4; }
#d468-trust-signals .stat-source { font-size: 11px; color: #475569; margin-top: 4px; font-style: italic; font-weight: 500; }
#d468-trust-signals .industries { text-align: center; }
#d468-trust-signals .industries-label { font-size: 12px; color: #64748b; margin-bottom: 16px; font-weight: 500; }
#d468-trust-signals .industries-tags { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
#d468-trust-signals .industry-tag {
    background: #ffffff; border: 1.5px solid #e2e8f0; color: #475569;
    padding: 8px 16px; border-radius: 20px; font-size: 13px; font-weight: 600;
    transition: all 200ms; cursor: default;
}
#d468-trust-signals .industry-tag:hover {
    background: #6366f1; color: #ffffff; border-color: #6366f1; transform: translateY(-2px);
}
@media (max-width: 768px) {
    #d468-trust-signals { padding: 40px 16px; }
    #d468-trust-signals h2 { font-size: 24px; margin-bottom: 28px; }
    #d468-trust-signals .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; margin-bottom: 32px; }
    #d468-trust-signals .stat-num { font-size: 32px; }
}

/* === Block 6/11: d469-testimonials-css ===  attrs:id="d469-testimonials-css" */
/* D469 Testimonials anonymisés - NDA respect Yacine doctrine */
#d469-testimonials {
    background: #ffffff;
    padding: 64px 24px;
    border-top: 1px solid #f1f5f9;
    font-family: 'DM Sans', system-ui, sans-serif;
}
#d469-testimonials .container { max-width: 1200px; margin: 0 auto; }
#d469-testimonials .label {
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px;
    color: #6366f1; text-align: center; margin-bottom: 16px;
}
#d469-testimonials h2 {
    text-align: center; font-size: 32px; font-weight: 800; color: #0f172a;
    margin: 0 0 48px; line-height: 1.2;
}
#d469-testimonials .grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
#d469-testimonials .card {
    background: linear-gradient(135deg, #fafbff 0%, #ffffff 100%);
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 32px 28px 28px;
    position: relative;
    transition: transform 280ms, box-shadow 280ms, border-color 280ms;
}
#d469-testimonials .card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(99,102,241,0.10);
    border-color: #c7d2fe;
}
#d469-testimonials .quote-mark {
    position: absolute; top: 16px; right: 24px;
    font-size: 56px; line-height: 1; color: #c7d2fe;
    font-family: Georgia, serif; font-weight: 800;
}
#d469-testimonials .quote {
    font-size: 15px; line-height: 1.6; color: #1f2937;
    margin: 0 0 24px; font-style: italic;
}
#d469-testimonials .author {
    display: flex; align-items: center; gap: 12px;
    padding-top: 18px; border-top: 1px solid #f1f5f9;
}
#d469-testimonials .avatar {
    width: 44px; height: 44px; border-radius: 50%;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    display: flex; align-items: center; justify-content: center;
    color: #fff; font-weight: 700; font-size: 18px;
    flex-shrink: 0;
}
#d469-testimonials .author-info { flex: 1; min-width: 0; }
#d469-testimonials .author-role {
    font-weight: 700; color: #0f172a; font-size: 14px;
    line-height: 1.2;
}
#d469-testimonials .author-context {
    font-size: 12px; color: #64748b; margin-top: 2px;
}
#d469-testimonials .industry-badge {
    display: inline-block; margin-top: 6px;
    background: #f5f3ff; color: #6366f1;
    padding: 2px 10px; border-radius: 10px;
    font-size: 10px; font-weight: 600;
}
#d469-testimonials .nda-note {
    text-align: center; margin-top: 32px;
    font-size: 11px; color: #94a3b8; font-style: italic;
}
@media (max-width: 968px) {
    #d469-testimonials .grid { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 768px) {
    #d469-testimonials { padding: 40px 16px; }
    #d469-testimonials h2 { font-size: 24px; margin-bottom: 32px; }
}

/* === Block 7/11: d470-fab-css ===  attrs:id="d470-fab-css" */
/* D470 Mobile Floating Action Button - 1-tap conversion mobile */
@media (max-width: 768px) {
    #d470-fab {
        position: fixed;
        bottom: 80px; /* above sticky CTA bar (60-72px) */
        right: 16px;
        z-index: 9988;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
        border: none;
        cursor: pointer;
        box-shadow: 0 8px 24px rgba(99,102,241,0.45), 0 0 0 4px rgba(255,255,255,0.95);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 26px;
        color: #ffffff;
        transition: transform 200ms, box-shadow 200ms;
        animation: d470-pulse 3s ease-in-out infinite;
        opacity: 0;
        transform: scale(0.4);
        pointer-events: none;
    }
    #d470-fab.visible {
        opacity: 1;
        transform: scale(1);
        pointer-events: auto;
    }
    #d470-fab:active {
        transform: scale(0.92);
        box-shadow: 0 4px 12px rgba(99,102,241,0.55);
    }
    #d470-fab .badge {
        position: absolute;
        top: -4px;
        right: -4px;
        background: #ef4444;
        color: #fff;
        font-size: 9px;
        font-weight: 800;
        padding: 3px 6px;
        border-radius: 10px;
        line-height: 1;
        box-shadow: 0 2px 6px rgba(0,0,0,0.2);
        animation: d470-badge-pop 600ms ease-out 2s forwards;
        opacity: 0;
        transform: scale(0);
    }
    #d470-fab-tooltip {
        position: fixed;
        bottom: 90px;
        right: 88px;
        z-index: 9989;
        background: #1f2937;
        color: #fff;
        padding: 8px 14px;
        border-radius: 8px;
        font-size: 12px;
        font-weight: 600;
        font-family: 'DM Sans', sans-serif;
        white-space: nowrap;
        box-shadow: 0 4px 12px rgba(0,0,0,0.25);
        opacity: 0;
        transform: translateX(20px);
        transition: opacity 280ms, transform 280ms;
        pointer-events: none;
    }
    #d470-fab-tooltip.show {
        opacity: 1;
        transform: translateX(0);
    }
    #d470-fab-tooltip::after {
        content: '';
        position: absolute;
        top: 50%;
        right: -6px;
        transform: translateY(-50%);
        border: 6px solid transparent;
        border-left-color: #1f2937;
    }
}
/* Hide on desktop */
@media (min-width: 769px) {
    #d470-fab, #d470-fab-tooltip { display: none !important; }
}
@keyframes d470-pulse {
    0%, 100% { box-shadow: 0 8px 24px rgba(99,102,241,0.45), 0 0 0 4px rgba(255,255,255,0.95); }
    50% { box-shadow: 0 8px 24px rgba(99,102,241,0.65), 0 0 0 4px rgba(255,255,255,0.95), 0 0 0 12px rgba(99,102,241,0.15); }
}
@keyframes d470-badge-pop {
    0% { opacity: 0; transform: scale(0); }
    60% { opacity: 1; transform: scale(1.2); }
    100% { opacity: 1; transform: scale(1); }
}

/* === Block 8/11: d472-a11y-css ===  attrs:id="d472-a11y-css" */
/* D472 A11y improvements */
.d472-skip-link {
    position: absolute;
    top: -100px;
    left: 0;
    z-index: 100000;
    background: #6366f1;
    color: #fff;
    padding: 12px 20px;
    font-weight: 700;
    border-radius: 0 0 8px 0;
    text-decoration: none;
    font-family: 'DM Sans', system-ui, sans-serif;
    transition: top 200ms;
}
.d472-skip-link:focus {
    top: 0;
    outline: 3px solid #fff;
    outline-offset: 2px;
}

/* === Block 9/11: d473-carousel-css ===  attrs:id="d473-carousel-css" */
/* D473 carousel-3d améliorations - WEVAL UX premium + cohérence offres */
.carousel-3d-card .service-button {
    background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%) !important;
    transition: transform 200ms, box-shadow 200ms !important;
}
.carousel-3d-card .service-button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(99, 102, 241, 0.4) !important;
}
.carousel-3d-card .service-source {
    font-size: 11px;
    color: rgba(255,255,255,0.5);
    font-style: italic;
    margin-top: 8px;
    display: block;
}

/* === Block 10/11: d483-live-widget-css ===  attrs:id="d483-live-widget-css" */
/* D483/D484 Yacine - Widget LIVE → /demo-agents.html avec mascotte WEVIA + 3 widgets harmonisés droite */
@keyframes d483-pulse-glow {
    0%, 100% { box-shadow: 0 8px 24px rgba(99,102,241,0.35), 0 0 0 0 rgba(168,85,247,0.5); transform: scale(1); }
    50% { box-shadow: 0 12px 32px rgba(99,102,241,0.55), 0 0 0 14px rgba(168,85,247,0); transform: scale(1.04); }
}
@keyframes d483-orbit { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes d483-live-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.55; } }
@keyframes d483-fade-in { from { opacity: 0; transform: translateY(-50%) translateX(20px); } to { opacity: 1; transform: translateY(-50%) translateX(0); } }

/* Widget WEVIA (D483) - position TOP 30% droite, taille 64x64 (référence) */
#d483-live-widget {
    position: fixed !important;
    right: 24px !important;
    top: auto !important;
    bottom: 55% !important;
    transform: none !important;
    z-index: 9990;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    cursor: pointer;
    opacity: 0;
    animation: d483-fade-in 600ms ease-out 1s forwards;
}
#d483-live-widget.collapsed { right: -52px !important; }

.d483-orb {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: conic-gradient(from 0deg, #6366f1, #a855f7, #6366f1);
    position: relative;
    animation: d483-pulse-glow 2.6s ease-in-out infinite;
    border: 2px solid rgba(255,255,255,0.95);
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(99,102,241,0.35);
}
.d483-orb::before {
    content: '';
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #ffffff 0%, #ddd6fe 70%, #c7d2fe 100%);
    z-index: 1;
}
.d483-orb::after {
    content: '';
    position: absolute;
    inset: 6px;
    border-radius: 50%;
    border: 1.5px dashed rgba(99,102,241,0.45);
    animation: d483-orbit 8s linear infinite;
    z-index: 3;
    pointer-events: none;
}
.d483-orb img.d483-mascotte {
    position: absolute;
    inset: 4px;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
    object-fit: cover;
    object-position: center 22%;
    border-radius: 50%;
    z-index: 2;
}

.d483-label {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px 3px 8px;
    background: linear-gradient(135deg, #10b981, #059669);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(16,185,129,0.4);
    font-family: 'DM Sans', system-ui, sans-serif;
}
.d483-label .d483-dot {
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
    animation: d483-live-blink 1.4s ease-in-out infinite;
    box-shadow: 0 0 6px rgba(255,255,255,0.7);
}

/* UX bouton x amélioré - plus visible, plus joli */
.d483-collapse {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(255,255,255,0.98);
    border: 1.5px solid rgba(99,102,241,0.4);
    cursor: pointer;
    color: #4f46e5;
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 8px rgba(0,0,0,0.12);
    transition: all 200ms;
    z-index: 5;
    padding: 0;
}
.d483-collapse:hover {
    transform: scale(1.15) rotate(90deg);
    background: #ef4444;
    color: #fff;
    border-color: #ef4444;
}

.d483-toggle {
    position: fixed;
    right: 12px;
    top: 30%;
    transform: translateY(-50%);
    z-index: 9991;
    width: 28px;
    height: 56px;
    background: linear-gradient(135deg, #6366f1, #a855f7);
    border: none;
    border-radius: 14px 0 0 14px;
    color: #fff;
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    box-shadow: -4px 4px 12px rgba(99,102,241,0.3);
}
#d483-live-widget.collapsed ~ .d483-toggle { display: flex; }

/* D484 - Coordination 3 widgets droite : taille uniforme 64x64 + répartis hauteur */
/* WhatsApp (autre Opus) -> taille 64x64 + position 50% */
#weval-whatsapp {
    width: 56px !important;
    height: 56px !important;
    right: 24px !important;
    top: 54% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    z-index: 9989 !important;
    border-radius: 50% !important;
}
#weval-whatsapp img, #weval-whatsapp svg { width: 32px !important; height: 32px !important; }

/* Brain chat (autre Opus) -> taille 64x64 + position 70% */
.chat-toggle-btn {
    width: 56px !important;
    height: 56px !important;
    right: 24px !important;
    top: 72% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    z-index: 9988 !important;
}
.chat-toggle-btn span { font-size: 30px !important; }

@media (max-width: 768px) {
    #d483-live-widget {
        top: 25% !important;
        right: 12px !important;
        transform: translateY(-50%) !important;
    }
    #d483-live-widget.collapsed { right: -52px !important; top: 25% !important; }
    .d483-toggle { top: 25% !important; }
    
    .d483-orb { width: 56px !important; height: 56px !important; }
    .d483-label { font-size: 9px !important; padding: 2px 7px 2px 5px !important; }
    
    /* Mobile: répartir sur hauteur 25% / 50% / 75% */
    #weval-whatsapp {
        width: 56px !important;
        height: 56px !important;
        top: 50% !important;
        right: 12px !important;
        transform: translateY(-50%) !important;
    }
    #weval-whatsapp img, #weval-whatsapp svg { width: 28px !important; height: 28px !important; }
    
    .chat-toggle-btn {
        width: 56px !important;
        height: 56px !important;
        top: 75% !important;
        right: 12px !important;
        transform: translateY(-50%) !important;
    }
    .chat-toggle-btn span { font-size: 26px !important; }
}

/* === Block 11/11: anonymous-block-11 ===  attrs: */
/* D710 Uniform Right Sidebar Widgets */
#d710-av{position:fixed!important;left:24px!important;right:auto!important;top:50%!important;transform:translateY(-50%)!important;z-index:9991;cursor:pointer;opacity:0;animation:d740-slide-in 800ms cubic-bezier(0.16,1,0.3,1) 0.6s forwards;display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important}
@keyframes d740-slide-in{from{opacity:0;transform:translate(-30px,-50%)}to{opacity:1;transform:translate(0,-50%)}}
#d710-av .orb{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#7c3aed 0%,#6366f1 50%,#06b6d4 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(124,58,237,0.45),0 0 0 4px rgba(124,58,237,0.15),0 0 0 12px rgba(124,58,237,0.06);transition:all .3s cubic-bezier(0.4,0,0.2,1);position:relative}
#d710-av .orb::before{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(124,58,237,0.4);opacity:0;animation:d740-pulse 3s ease-in-out infinite}
@keyframes d740-pulse{0%,100%{opacity:0;transform:scale(1)}50%{opacity:0.6;transform:scale(1.1)}}
#d710-av:hover .orb{transform:scale(1.1)}
#d710-av img{width:68px;height:68px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,0.25)}
#d710-av .lbl{font:700 10px 'DM Sans',system-ui;color:#7c3aed;text-align:center;letter-spacing:0.4px;text-transform:uppercase;background:#fff;padding:3px 10px;border-radius:20px;box-shadow:0 2px 8px rgba(124,58,237,0.15)}
#d483-live-widget{top:auto!important;bottom:calc(100vh - 45%)!important;right:24px!important}
.d483-orb{width:56px!important;height:56px!important}
#weval-whatsapp{top:auto!important;bottom:24px!important;right:24px!important}
body.d710-open #d483-live-widget,body.d710-open #weval-whatsapp,body.d710-open .chat-toggle-btn,body.d710-open .d483-toggle{display:none!important}
body.d710-open #d710-av{opacity:1;pointer-events:auto!important;cursor:pointer!important}
#d710-pop iframe{width:100%;height:100%;border:none;display:block}
#d710-x{position:absolute;top:8px;right:8px;z-index:10;width:30px;height:30px;border-radius:50%;background:rgba(15,23,42,0.7);color:#fff;border:none;font:700 16px system-ui;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
#d710-x:hover{background:rgba(220,38,38,0.85)}


/* D860-NUCLEAR: widget positions HIGH specificity */
html body #d483-live-widget{top:auto!important;bottom:55%!important;transform:none!important;right:24px!important}
html body #weval-whatsapp{top:auto!important;bottom:24px!important;right:24px!important}

/* D860-CONTRAST: fix invisible purple-on-purple buttons */
a.active[style*='background'],a.b.bp,button.active{color:#fff!important}
.navigation-text{color:#1a1f3a!important}

/* === D862-HIDE-DUP-TRANSLATE — masque le 2e bouton traduction (doublon weval-ml-btn) === */
/* Garde .language-switcher (weval-translate.js sacré), masque #weval-ml-btn (multilingual) */
#weval-ml-btn, .weval-ml-btn { display:none !important; visibility:hidden !important; }
/* === end D862 === */

/* === D863-CONTRAST-FIX — texte carrousel gris/blanc + boutons Discover indigo/violet === */
/* .service-source: gris clair illisible sur fond blanc -> gris foncé lisible */
html body .carousel-3d-card .service-source,
html body span.service-source,
html body .service-source { color:#5a6480 !important; }
/* sur carte active (fond sombre) garder clair */
html body .carousel-3d-card.w3d-active .service-source { color:#cbd5e1 !important; }
/* .wr-service-link: indigo sur violet -> blanc lisible */
html body a.wr-service-link,
html body .wr-service-link { color:#ffffff !important; }
html body a.wr-service-link:hover { color:#e0e7ff !important; }
/* skip-link accessibilite -> blanc sur fond sombre */
html body a.skip-link-d606,html body .skip-link-d606 { color:#ffffff !important; }
/* === end D863 === */
