/**
 * Interactions partagées du modèle Premium (révélations, boutons, marquee).
 * Extraites de l'ancien premium-nav Webflow pour survivre au shell header-5.
 */

.tpl-premium [data-premium-reveal="up"] {
  opacity: 0;
  transform: translate3d(0, 28px, 0);
  transition: opacity 0.7s ease, transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity, transform;
}
.tpl-premium [data-premium-reveal="up"].is-inview {
  opacity: 1;
  transform: none;
}
.tpl-premium [data-premium-reveal="image"] {
  position: relative;
}
.tpl-premium [data-premium-reveal="image"] > .image-effect-wrapper {
  display: block !important;
  position: absolute !important;
  inset: 0;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
.tpl-premium .planning-image-one > .planning-image-content-wrapper {
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 991px) {
  .tpl-premium [data-premium-reveal="image"] > .image-effect-wrapper {
    display: none !important;
  }
}
.tpl-premium [data-premium-reveal="image"] .inside-overlay,
.tpl-premium [data-premium-reveal="image"] .outside-overlay {
  /* Gagne sur premium.css (translateY(100%) = déjà révélé sans webflow.js) */
  transform: translateY(0) !important;
  transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
}
.tpl-premium [data-premium-reveal="image"] .outside-overlay {
  transition-delay: 0.08s;
}
.tpl-premium [data-premium-reveal="image"].is-inview .inside-overlay,
.tpl-premium [data-premium-reveal="image"].is-inview .outside-overlay {
  transform: translateY(101%) !important;
}
@media (prefers-reduced-motion: reduce) {
  .tpl-premium [data-premium-reveal="up"] {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
  .tpl-premium [data-premium-reveal="image"] .inside-overlay,
  .tpl-premium [data-premium-reveal="image"] .outside-overlay {
    transition: none !important;
    transform: translateY(101%) !important;
  }
}

.tpl-premium .button-style-one-background {
  transform-box: border-box;
  transform: scaleY(0);
  transform-origin: bottom center;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}
.tpl-premium .button-style-one:hover .button-style-one-background,
.tpl-premium .button-style-one:focus-visible .button-style-one-background {
  transform: scaleY(1);
}
.tpl-premium .button-style-one .button-text-wrap > * {
  transform-box: border-box;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
.tpl-premium .button-style-one:hover .button-text-wrap > *:not(.button-text-stack),
.tpl-premium .button-style-one:focus-visible .button-text-wrap > *:not(.button-text-stack) {
  transform: translateY(-100%);
}
.tpl-premium .button-style-one .button-text-stack {
  display: flex;
  flex-direction: column;
}
.tpl-premium .button-style-one:hover .button-text-stack,
.tpl-premium .button-style-one:focus-visible .button-text-stack {
  transform: translateY(-50%);
}
/* Hero slider : CTA visible sans Webflow SLIDER_ACTIVE ; hover via text-stack (pas IX2) */
.tpl-premium .hero-three .hero-three-button-wrap,
.tpl-premium .hero-three .hero-three-button-wrap .button-style-one-wrap,
.tpl-premium .hero-three .hero-three-button-wrap .button-style-one {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
.tpl-premium .hero-three .button-text-wrap {
  display: block;
  height: 1.5em;
  overflow: hidden;
  z-index: 1;
}
.tpl-premium .hero-three .button-style-one-icon {
  z-index: 1;
}
.tpl-premium .hero-three .button-text-stack {
  display: flex;
  flex-direction: column;
  transform-box: border-box;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
.tpl-premium .hero-three .button-style-one:hover .button-text-stack,
.tpl-premium .hero-three .button-style-one:focus-visible .button-text-stack,
.tpl-premium .hero-three .button-style-one.is-kontix-hover .button-text-stack {
  transform: translateY(-50%);
}
.tpl-premium .hero-three .button-style-one-background {
  transform: scaleY(0) !important;
}
.tpl-premium .hero-three .button-style-one:hover .button-style-one-background,
.tpl-premium .hero-three .button-style-one:focus-visible .button-style-one-background,
.tpl-premium .hero-three .button-style-one.is-kontix-hover .button-style-one-background {
  transform: scaleY(1) !important;
}
/* Boutons dans un conteneur opacity:0 (Webflow) — le hover doit rester visible */
.tpl-premium [data-premium-reveal="up"] .button-style-one-wrap,
.tpl-premium [data-premium-reveal="up"] .button-style-one,
.tpl-premium .button-style-one-wrap[data-premium-reveal="up"],
.tpl-premium .button-style-one[data-premium-reveal="up"] {
  opacity: 1;
}

.tpl-premium .image-effect {
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.tpl-premium a:hover .image-effect,
.tpl-premium [data-premium-reveal="image"]:hover .image-effect,
.tpl-premium .overflow-hidden:hover > .image-effect {
  transform: scale(1.05);
}

.tpl-premium .client-one-marquee-train {
  animation: premium-clients-marquee 32s linear infinite;
}
@keyframes premium-clients-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-100%); }
}

.tpl-premium .service-three .service-three-title-wrap {
  padding-top: 30px;
}

.tpl-premium [data-premium-features-three] .features-three-title-wrap {
  padding-top: 30px;
}

.tpl-premium [data-premium-innovation] .innovation-body {
  padding-bottom: 56px;
}
.tpl-premium [data-premium-innovation] .innovation-body p {
  margin: 0 0 1em;
}
.tpl-premium [data-premium-innovation] .innovation-body p:last-child,
.tpl-premium [data-premium-innovation] .innovation-body ul:last-child,
.tpl-premium [data-premium-innovation] .innovation-body ol:last-child {
  margin-bottom: 0;
}
.tpl-premium [data-premium-innovation] .innovation-body ul,
.tpl-premium [data-premium-innovation] .innovation-body ol {
  margin: 0 0 1em;
  padding-inline-start: 1.25em;
}
.tpl-premium [data-premium-innovation] .innovation-body a {
  color: inherit;
  text-decoration: underline;
}

@media (prefers-reduced-motion: reduce) {
  .tpl-premium .button-style-one-background,
  .tpl-premium .button-style-one .button-text-wrap > *,
  .tpl-premium .image-effect {
    transition: none !important;
    transform: none !important;
  }
  .tpl-premium .client-one-marquee-train { animation: none; }
}

/* Catalogue UIblocs — chaque wrapper rejoue le chrome de sa page source. */
body.page-ui-catalog.tpl-premium {
  background-color: var(--brand-dark, #0d0d0d);
}

/* UIblocs : pas de webflow.js — tout visible sans attendre le scroll reveal */
body.page-ui-catalog.tpl-premium [data-premium-reveal="up"],
body.page-ui-catalog.tpl-premium [data-premium-reveal="up"].is-inview {
  opacity: 1 !important;
  transform: none !important;
}

/* UIblocs : boutons Kontix visibles et hover CSS actif */
body.page-ui-catalog.tpl-premium .premium-block-scope .button-style-one-wrap,
body.page-ui-catalog.tpl-premium .premium-block-scope .button-style-one {
  opacity: 1 !important;
  visibility: visible !important;
}

body.page-ui-catalog.tpl-premium .site-main > :not(.top-space-15) + :not(.top-space-15) {
  margin-top: 0;
}

body.page-ui-catalog.tpl-premium .premium-block-scope {
  isolation: isolate;
  position: relative;
  display: block;
  width: 100%;
  min-height: 0;
  height: auto;
  overflow: visible;
}

body.page-ui-catalog.tpl-premium .premium-block-scope [data-w-id]:not(.w-slide):not([hidden]) {
  visibility: visible;
}

body.page-ui-catalog.tpl-premium .premium-block-scope .about-kontix,
body.page-ui-catalog.tpl-premium .premium-block-scope .about-contix-sticky,
body.page-ui-catalog.tpl-premium .premium-block-scope .preservation--sticky-height {
  min-height: 0 !important;
  height: auto !important;
  position: relative !important;
}

/* Catalogue : IX2 absent — le bandeau « installateurs » ne doit plus
   se superposer en absolute/inset:0 sur le titre « Notre mission ». */
@media screen and (min-width: 992px) {
  body.page-ui-catalog.tpl-premium .premium-block-scope .about-kontix {
    min-height: auto !important;
    padding-bottom: 70px;
  }
  body.page-ui-catalog.tpl-premium .premium-block-scope .about-contix-sticky.overflow-hidden {
    min-height: auto !important;
    position: static !important;
    overflow: visible !important;
  }
  body.page-ui-catalog.tpl-premium .premium-block-scope .about-kontix-bottom-wrapper {
    position: relative !important;
    inset: auto !important;
    pointer-events: auto;
    padding-top: 70px;
    align-items: stretch;
  }
  body.page-ui-catalog.tpl-premium .premium-block-scope .about-kontix-image-animation-overlay {
    display: none !important;
  }
}

/* Bloc Notre histoire — icônes des 2 cartes (2× la taille d'origine Webflow). */
.tpl-premium [data-premium-our-story-one] .icon-box-three-icon img {
  width: 96px;
  height: auto;
  max-width: none;
}
.tpl-premium [data-premium-our-story-one] .icon-box-three.two .icon-box-three-icon img {
  width: 80px;
}
