/* IbracloDigital — palette unique sobre (#0f766e), sans dégradé coloré */
:root{
  --ibraclo-turquoise:#0f766e;
  --ibraclo-turquoise-light:#5fa9a3;
  --ibraclo-dark:#10181a;
}
body, .elementor-widget-text-editor, p { font-family:'Inter',sans-serif; color:#1f2937; }
h1,h2,h3,h4,h5,h6,.elementor-heading-title { font-family:'Space Grotesk','Poppins',sans-serif !important; font-weight:700 !important; }
a{ transition: color .2s ease; }

/* Boutons — couleur unie */
.elementor-button, .ibraclo-btn{
  background: var(--ibraclo-turquoise) !important;
  color:#fff !important;
  border-radius:10px !important;
  font-weight:600 !important;
  border:none !important;
  box-shadow:none !important;
  transition: background .2s ease, transform .2s ease;
}
.elementor-button:hover, .ibraclo-btn:hover{
  background:#0b5c56 !important;
  transform: translateY(-1px);
  color:#fff !important;
}
.ibraclo-btn-outline{
  background:transparent !important;
  color:#fff !important;
  border:1.5px solid rgba(255,255,255,.28) !important;
  box-shadow:none !important;
}
.ibraclo-btn-outline:hover{ background:rgba(255,255,255,.08) !important; border-color:rgba(255,255,255,.5) !important; }

/* Sections sombres — fond uni, pas de halo coloré */
.ibraclo-section-dark{
  background: var(--ibraclo-dark) !important;
}
.ibraclo-section-dark, .ibraclo-section-dark h1, .ibraclo-section-dark h2, .ibraclo-section-dark h3, .ibraclo-section-dark p{ color:#fff !important; }
.ibraclo-section-dark .ibraclo-muted{ color:#a9c4c0 !important; }

/* Hero — page d'accueil : deux colonnes, carte dashboard */
.ibraclo-hero{ min-height:auto; padding:100px 0; }
.ibraclo-hero h1.elementor-heading-title{ font-size:2.5rem; line-height:1.22; }
.ibraclo-hero-flex .elementor-container{ display:flex; align-items:center; gap:20px; }
@media (max-width:900px){ .ibraclo-hero-flex .elementor-container{ flex-wrap:wrap; text-align:center; } }

/* Hero — pages internes : sobre, centré */
.ibraclo-hero:not(.ibraclo-hero-flex){ text-align:center; padding:90px 0; }
.ibraclo-hero:not(.ibraclo-hero-flex) h1.elementor-heading-title{ font-size:2.2rem; }
.ibraclo-hero:not(.ibraclo-hero-flex) .elementor-widget-heading,
.ibraclo-hero:not(.ibraclo-hero-flex) .elementor-widget-text-editor,
.ibraclo-hero:not(.ibraclo-hero-flex) .elementor-widget-button{
  max-width:640px; margin-left:auto; margin-right:auto;
}
.ibraclo-hero:not(.ibraclo-hero-flex) .elementor-widget-text-editor{ color:#9fb3ae; }

.ibraclo-hero-visual{ position:relative; }
@media (max-width:900px){ .ibraclo-hero-visual{ display:none; } }
.ibraclo-glass-card{
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); border-radius:18px;
}
.ibraclo-dashboard-card{ position:relative; padding:28px; box-shadow:0 20px 40px rgba(0,0,0,.28); }
.ibraclo-browser-dots{ display:flex; gap:6px; margin-bottom:20px; }
.ibraclo-browser-dots span{ width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,.16); }
.ibraclo-dashboard-line{ height:11px; border-radius:6px; background:rgba(255,255,255,.09); margin-bottom:12px; width:75%; }
.ibraclo-dashboard-line.wide{ width:100%; }
.ibraclo-dashboard-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:22px; }
.ibraclo-dashboard-grid div{ height:64px; border-radius:10px; background:rgba(15,118,110,.14); border:1px solid rgba(15,118,110,.2); }
.ibraclo-floating-badge{
  position:absolute; padding:8px 16px; border-radius:999px; font-size:.82rem; font-weight:600;
  background:#10181a; border:1px solid rgba(15,118,110,.35); color:#5fa9a3;
  box-shadow:0 10px 20px rgba(0,0,0,.25);
}
.ibraclo-floating-badge.badge-one{ top:-16px; right:24px; animation-delay:0s; }
.ibraclo-floating-badge.badge-two{ bottom:36%; left:-28px; animation-delay:1.2s; }
.ibraclo-floating-badge.badge-three{ bottom:-16px; right:38%; animation-delay:2.4s; }
.ibraclo-floating-badge{ animation:ibracloBadgeFloat 5s ease-in-out infinite; }
@keyframes ibracloBadgeFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-8px); } }

.ibraclo-dashboard-card{ animation:ibracloCardBreathe 6s ease-in-out infinite; }
@keyframes ibracloCardBreathe{ 0%,100%{ box-shadow:0 20px 40px rgba(0,0,0,.28); } 50%{ box-shadow:0 24px 48px rgba(15,118,110,.22); } }

.ibraclo-eyebrow{ position:relative; padding-left:26px; }
.ibraclo-eyebrow::before{
  content:""; position:absolute; left:14px; top:50%; width:6px; height:6px; border-radius:50%;
  background:currentColor; transform:translateY(-50%); animation:ibracloEyebrowPulse 2s ease-in-out infinite;
}
@keyframes ibracloEyebrowPulse{ 0%,100%{ opacity:.4; transform:translateY(-50%) scale(.85); } 50%{ opacity:1; transform:translateY(-50%) scale(1.15); } }

.ibraclo-hero .elementor-widget-heading, .ibraclo-hero .elementor-widget-text-editor, .ibraclo-hero .elementor-widget-button, .ibraclo-hero-visual{
  animation:ibracloHeroEnter .7s cubic-bezier(.2,.8,.2,1) both;
}
.ibraclo-hero .elementor-column:first-child > .elementor-widget-wrap > .elementor-element:nth-child(1){ animation-delay:.05s; }
.ibraclo-hero .elementor-column:first-child > .elementor-widget-wrap > .elementor-element:nth-child(2){ animation-delay:.15s; }
.ibraclo-hero .elementor-column:first-child > .elementor-widget-wrap > .elementor-element:nth-child(3){ animation-delay:.25s; }
.ibraclo-hero .elementor-column:first-child > .elementor-widget-wrap > .elementor-element:nth-child(4){ animation-delay:.35s; }
.ibraclo-hero .elementor-column:first-child > .elementor-widget-wrap > .elementor-element:nth-child(5){ animation-delay:.45s; }
.ibraclo-hero-visual{ animation-delay:.25s; }
@keyframes ibracloHeroEnter{ from{ opacity:0; transform:translateY(18px); } to{ opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion: reduce){
  .ibraclo-floating-badge, .ibraclo-dashboard-card, .ibraclo-eyebrow::before,
  .ibraclo-hero .elementor-widget-heading, .ibraclo-hero .elementor-widget-text-editor, .ibraclo-hero .elementor-widget-button, .ibraclo-hero-visual{
    animation:none !important; opacity:1 !important; transform:none !important;
  }
}

/* Eyebrow badge */
.ibraclo-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:.8rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--ibraclo-turquoise);
  background:transparent; border:1px solid rgba(15,118,110,.3);
  padding:7px 16px; border-radius:999px; margin-bottom:14px;
}
.ibraclo-section-dark .ibraclo-eyebrow{ color:var(--ibraclo-turquoise-light) !important; background:transparent !important; border-color:rgba(15,118,110,.4) !important; }

/* Cartes */
.ibraclo-card{
  background:#fff; border-radius:14px; padding:30px;
  box-shadow:0 4px 16px rgba(6,12,15,.08); border:1px solid rgba(6,12,15,.08);
  transition: box-shadow .2s ease; height:100%;
}
.ibraclo-card:hover{ box-shadow:0 8px 24px rgba(6,12,15,.12); }
.ibraclo-glass{ background: rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.14) !important; border-radius:14px; }
.ibraclo-icon-box .elementor-icon{ background: var(--ibraclo-turquoise) !important; color:#fff !important; }
.ibraclo-text-gradient{ color: var(--ibraclo-turquoise) !important; }

/* FAQ */
.elementor-accordion .elementor-accordion-item{ border:1px solid rgba(6,12,15,.12) !important; border-radius:10px !important; margin-bottom:12px; overflow:hidden; }
.elementor-accordion .elementor-tab-title{ font-weight:700 !important; }
.elementor-accordion .elementor-tab-title.elementor-active{ color:var(--ibraclo-turquoise) !important; }

/* CTA band */
.ibraclo-cta-band{ border-radius:16px !important; padding:60px !important; text-align:center; }

@media (max-width:767px){
  .ibraclo-hero{ padding:60px 0; }
  .ibraclo-hero h1.elementor-heading-title{ font-size:2rem; }
  .ibraclo-cta-band{ padding:40px 24px !important; }
}
