/* Source: ic-live-final-cursor-fix */
/* Supprime définitivement l'ancien gros curseur "VOIR" */
.project-cursor,
.project-cursor *,
.project-cursor-ring,
.project-cursor-core{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Règle unique : point jaune fluo simple partout */
html,body,body *,html *,body *::before,body *::after,
a,a *,button,button *,[role="button"],[role="button"] *,
input,textarea,select,label,[onclick],[data-cursor],[data-link],[data-href]{
  cursor:none!important;
}

.ic-fluo-cursor-final{
  position:fixed;
  left:0;
  top:0;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#111111 !important;
  background-color:#111111 !important;
  border:0;
  outline:0;
  box-shadow:none;
  filter:none;
  pointer-events:none;
  z-index:2147483647;
  transform:translate(-50%,-50%);
  transition:width .25s ease,height .25s ease,opacity .25s ease;
}

body.ic-cursor-hover .ic-fluo-cursor-final{
  width:14px;
  height:14px;
}

/* Source: final-verified-index-nav-footer-sync */
/* FINAL VERIFIED SYNC — navbar + footer copied from index, color adapted to Impact Logic */
:root{
  --banner-bg:#73C2FB !important;
  --banner-color:#111111 !important;
  --banner-border:rgba(17,17,17,.15) !important;
  --banner-hover-bg:#111111 !important;
  --banner-hover-color:#73C2FB !important;
  --footer-bg:#73C2FB !important;
  --footer-fg:#111111 !important;
  --footer-line:rgba(17,17,17,.22) !important;
  --footer-hover:#9d1000 !important;
}
header.nav{
  background:#73C2FB !important;
  color:#111111 !important;
  border-bottom:1px solid rgba(17,17,17,.15) !important;
  min-height:112px !important;
  padding:18px clamp(20px,3vw,52px) !important;
  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;
  align-items:center !important;
  gap:18px !important;
  overflow:visible !important;
  z-index:99999 !important;
}
header.nav,
header.nav *{
  color:#111111 !important;
}
header.nav .brand.navbar-brand-inline{
  justify-self:center !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  text-decoration:none !important;
}
header.nav .navbar-symbol-img{
  width:74px !important;
  height:74px !important;
  max-width:74px !important;
  max-height:74px !important;
  object-fit:contain !important;
  filter:none !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
  transform:none !important;
  display:block !important;
}
header.nav .navbar-wordmark{
  font-family:"Space Grotesk",Arial,sans-serif !important;
  font-size:clamp(34px,3.4vw,56px) !important;
  line-height:.88 !important;
  letter-spacing:-.065em !important;
  font-weight:700 !important;
  color:#111111 !important;
  text-shadow:none !important;
}
header.nav .pill,
header.nav .menu-toggle,
header.nav .news-tool-trigger{
  border-color:rgba(17,17,17,.7) !important;
  color:#111111 !important;
  background:transparent !important;
}
header.nav .pill:hover,
header.nav .menu-toggle:hover,
header.nav .news-tool-trigger:hover{
  background:#111111 !important;
  color:#73C2FB !important;
  border-color:#111111 !important;
}
footer.footer-redesign{
  background:#73C2FB !important;
  color:#111111 !important;
  border-top:1px solid rgba(17,17,17,.22) !important;
  padding:0 !important;
  overflow:hidden !important;
}
footer.footer-redesign .footer-logo{
  width:clamp(120px,10vw,150px)!important;
  max-width:150px!important;
  min-width:120px!important;
  height:auto !important;
  display:block !important;
  font-size:0 !important;
  line-height:0 !important;
}
footer.footer-redesign .footer-logo-img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  mix-blend-mode:normal !important;
  filter:contrast(1.12) brightness(.92) !important;
  transform:none !important;
}
footer.footer-redesign .footer-redesign-main{
  display:grid !important;
  grid-template-columns:minmax(280px,.85fr) minmax(640px,1.65fr) !important;
  gap:clamp(56px,9vw,150px) !important;
  align-items:start !important;
}
footer.footer-redesign .footer-nav-block{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(150px,1fr)) !important;
  gap:clamp(36px,6vw,92px) !important;
}
footer.footer-redesign .footer-redesign-bottom{
  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;
  align-items:center !important;
  border-top:1px solid rgba(17,17,17,.32) !important;
}
@media(max-width:980px){
  footer.footer-redesign .footer-redesign-main{grid-template-columns:1fr !important;gap:44px !important;}
  footer.footer-redesign .footer-logo{width:240px !important;min-width:0 !important;}
  footer.footer-redesign .footer-nav-block{grid-template-columns:1fr 1fr !important;}
  footer.footer-redesign .footer-redesign-bottom{grid-template-columns:1fr !important;gap:18px !important;padding:24px 0 !important;}
  header.nav{min-height:92px !important;grid-template-columns:1fr auto !important;}
  header.nav .brand.navbar-brand-inline{justify-self:start !important;gap:10px !important;}
  header.nav .navbar-symbol-img{width:52px !important;height:52px !important;max-width:52px !important;max-height:52px !important;}
  header.nav .navbar-wordmark{font-size:28px !important;}
}
@media(max-width:640px){
  footer.footer-redesign .footer-logo{width:220px !important;}
  footer.footer-redesign .footer-nav-block{grid-template-columns:1fr !important;}
}

/* Source: chatgpt-fixes */
/* Requested fixes */
.nav .pill[href*="contact"], .nav .pill.cta, .nav .start-project, .nav .project-btn{display:none!important;}
.brand img,.nav .brand img,.footer-logo img,.footer-logo-img{
background:transparent!important;
background-color:transparent!important;
mix-blend-mode:normal!important;
}
.footer-logo,.footer-logo-img{
filter:none!important;
}

/* Source: final-logo-clean-fix */
/* FINAL FIX — logo propre sans carré blanc */
.navbar-symbol-img,
.brand .navbar-symbol-img,
.footer-redesign .footer-logo,
.footer-redesign .footer-logo-img,
.footer-brand-logo,
.footer-brand-logo img{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  outline:0 !important;
  mix-blend-mode:normal !important;
}
.footer-redesign .footer-logo{
  width:clamp(96px,10vw,140px) !important;
  min-width:96px !important;
  max-width:140px !important;
  height:auto !important;
  overflow:visible !important;
}
.footer-redesign .footer-logo-img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  filter:none !important;
  opacity:1 !important;
}
.nav-actions > .pill[href*="contact"],
.links-right > .pill[href*="contact"],
a.pill[href*="#contact"],
a.pill[href="contact.html"]{
  display:none !important;
}

/* Source: final-publishing-finish */
/* FINAL PUBLISHING FINISH — fade, animation rhythm, image performance, accessibility */
html{
  scroll-behavior:smooth;
}

body{
  opacity:0;
  transition:opacity .55s cubic-bezier(.16,1,.3,1);
}

body.page-ready{
  opacity:1;
}

:root{
  --motion-fast:.28s;
  --motion-standard:.55s;
  --motion-slow:.9s;
  --motion-ease:cubic-bezier(.16,1,.3,1);
}

/* Uniform animation timings */
.reveal,
.service.reveal,
.card,
.service,
.service-thumb,
.service-thumb img,
.impact-frame,
.impact-frame img,
.news-tool-panel,
.history-panel,
.site-blur,
.floating-talk,
.pill,
.menu-toggle,
.section-menu,
.news-tool-trigger,
.news-card{
  transition-duration:var(--motion-standard)!important;
  transition-timing-function:var(--motion-ease)!important;
}

.hero-knot{
  animation-duration:12s!important;
}

.hero-knot img{
  animation-duration:36s!important;
}

.marquee-track{
  animation-duration:22s!important;
}

.editorial-image-track{
  animation-duration:42s!important;
}

.impact-rail:hover .impact-track{
  animation-duration:22s!important;
}

/* Image performance and visual stability */
img{
  max-width:100%;
  height:auto;
}

img[loading="lazy"]{
  content-visibility:auto;
}

/* Accessibility: keyboard focus */
a:focus-visible,
button:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible{
  outline:3px solid #ccff00!important;
  outline-offset:4px!important;
  border-radius:8px;
}

/* Accessibility: stronger readable contrasts on translucent text */
.editorial-title,
.editorial-title strong{
  color:rgba(244,239,231,.76)!important;
}

.history-lead,
.history-text{
  color:rgba(216,240,255,.78)!important;
}

.news-card p{
  color:rgba(216,240,255,.76)!important;
}

.news-card small,
.news-tool-kicker,
.news-clock-label{
  color:#D8F0FF!important;
}

.footer-redesign .footer-col a:hover,
.footer-redesign-bottom a:hover{
  color:#5a2616!important;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important;
  }
  body{
    opacity:1!important;
  }
}

