.elementor-160 .elementor-element.elementor-element-b0af76a{--display:flex;}.elementor-msie .elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio-item{width:calc( 100% / 6 );}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-post__thumbnail__link{padding-bottom:calc( 1.7 * 100% );}.elementor-160 .elementor-element.elementor-element-e26ecef:after{content:"1.7";position:absolute;color:transparent;}.elementor-160 .elementor-element.elementor-element-e26ecef{--grid-row-gap:0px;width:var( --container-widget-width, 141.44% );max-width:141.44%;--container-widget-width:141.44%;--container-widget-flex-grow:0;top:135px;--grid-column-gap:6px;}.elementor-160 .elementor-element.elementor-element-e26ecef > .elementor-widget-container{background-color:#FFFFFF00;margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;--e-transform-origin-x:center;--e-transform-origin-y:center;transition:background 0.2s;border-style:none;}.elementor-160 .elementor-element.elementor-element-e26ecef:hover .elementor-widget-container{background-color:#FFFFFF00;}.elementor-160 .elementor-element.elementor-element-e26ecef.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}body:not(.rtl) .elementor-160 .elementor-element.elementor-element-e26ecef{left:7px;}body.rtl .elementor-160 .elementor-element.elementor-element-e26ecef{right:7px;}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio-item__img, .elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio-item__overlay{border-radius:0px 0px 0px 0px;}.elementor-160 .elementor-element.elementor-element-e26ecef a .elementor-portfolio-item__overlay{background-color:#000000;}.elementor-160 .elementor-element.elementor-element-e26ecef a .elementor-portfolio-item__title{color:var( --e-global-color-secondary );}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio-item__title{font-family:"Drafting regular", Sans-serif;font-size:14px;text-transform:lowercase;line-height:1px;letter-spacing:-2.5px;word-spacing:6px;}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio__filter{color:#161A1B7A;font-family:"Drafting regular", Sans-serif;font-size:22px;}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio__filter.elementor-active{color:var( --e-global-color-primary );}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio__filter:not(:last-child){margin-right:calc(70px/2);}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio__filter:not(:first-child){margin-left:calc(70px/2);}.elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio__filters{margin-bottom:20px;}.elementor-160 .elementor-element.elementor-element-69f40f0{--spacer-size:400px;}.elementor-160 .elementor-element.elementor-element-d8fb197{--display:flex;}@media(max-width:1024px){.elementor-msie .elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio-item{width:calc( 100% / 2 );}}@media(max-width:767px){.elementor-msie .elementor-160 .elementor-element.elementor-element-e26ecef .elementor-portfolio-item{width:calc( 100% / 1 );}body:not(.rtl) .elementor-160 .elementor-element.elementor-element-e26ecef{left:2px;}body.rtl .elementor-160 .elementor-element.elementor-element-e26ecef{right:2px;}.elementor-160 .elementor-element.elementor-element-e26ecef{top:7px;}}/* Start custom CSS for portfolio, class: .elementor-element-e26ecef */.elementor-portfolio-item {
  position: relative;
  overflow: hidden;
}

/* Remplissage noir */
.elementor-portfolio-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: black;
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.4s ease; /* durée totale du remplissage */
  z-index: 1;
}

/* Titre blanc, caché au départ */
.elementor-portfolio-item .elementor-portfolio-item__title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.5rem;
  z-index: 2;
  color: white;
  opacity: 0;
  transition: opacity 0.1s ease;
  transition-delay: 0s; /* sera contrôlé par hover */
}

/* Fond noir qui se remplit */
.elementor-portfolio-item:hover::before {
  transform: scaleY(1);
}

/* Texte blanc apparaît à mi-parcours (0.2s) */
.elementor-portfolio-item:hover .elementor-portfolio-item__title {
  opacity: 1;
  transition-delay: 0.001s; /* moitié du remplissage */
}

/* Texte disparaît à mi-parcours du déremplissage */
.elementor-portfolio-item:not(:hover) .elementor-portfolio-item__title {
  opacity: 0;
  transition-delay: 0.06s; /* moitié du retrait */
}

@media (max-width: 768px) {
  .elementor-portfolio {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(-1 * var(--container-padding, 15px));
    margin-right: calc(-1 * var(--container-padding, 15px));
    padding-left: 0;
    padding-right: 0;

    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 1rem;
  }

  .elementor-portfolio-item {
    flex: 0 0 auto;
    width: 65vw;
    height: 65vw;
    scroll-snap-align: start;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    border: 1px solid black;
  }

  .elementor-portfolio-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .elementor-portfolio-item .elementor-portfolio-item__title {
    font-size: 0.75rem;
    text-align: center;
    padding: 0 0.5rem;
    max-width: 90%;
    line-height: 1.2;
    white-space: normal;
  }

  .elementor-portfolio::-webkit-scrollbar {
    display: none;
  }

  .elementor-portfolio {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  /* Flèche animée */
  .elementor-portfolio::after {
    content: "➜";
    display: block;
    font-size: 2rem;
    color: black;
    text-align: center;
    margin-top: 0.5rem;
    animation: scrollArrow 1.5s infinite;
    opacity: 1;
  }
}
@keyframes scrollArrow {
  0%, 100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(6px);
  }
}
/* === Desktop : affichage horizontal scrollable avec flèches === */
@media (min-width: 769px) {
  .elementor-portfolio-wrapper {
    position: relative;
  }

  .elementor-portfolio {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 1rem;
    padding-bottom: 1rem;
    scrollbar-width: none; /* Firefox */
  }

  .elementor-portfolio::-webkit-scrollbar {
    display: none; /* Chrome / Safari */
  }

  .elementor-portfolio-item {
    flex: 0 0 auto;
    width: 300px; /* ou adapte à ton design */
    scroll-snap-align: start;
  }

  /* Flèches de navigation */
.portfolio-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  background: white;
  border: 1px solid black;
  font-size: 2rem;
  cursor: pointer;
  padding: 0.5rem 0.75rem;
  box-shadow: none;         /* suppression de l’ombre */
  border-radius: 0;         /* coins carrés */
}

  .portfolio-arrow.left {
    left: -1.5rem;
  }

  .portfolio-arrow.right {
    right: -1.5rem;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Drafting regular';
	font-display: auto;
	src: url('https://salmon-grasshopper-697971.hostingersite.com/wp-content/uploads/2025/05/DraftingMono-Regular.ttf') format('truetype');
}
/* End Custom Fonts CSS */