:root {
  --primary: #ff6a21;
  --primary_hover: #e85b18;
  --accent: #101010;
  --lime: #ff6a21;
}

/* Contact — image de fond derrière la carte */
.elementor-61 .elementor-element.elementor-element-dd4cc01:not(.elementor-motion-effects-element-type-background),
.elementor-61 .elementor-element.elementor-element-dd4cc01 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.breadcrumb-wrap, .elementor-page-61 .breadcrumb-wrap {
  background-image: url("/assets/euro/chantiers/construction-facade.jpg") !important;
  background-position: center center !important;
  background-size: cover !important;
}

/* Contact — strips chantier avec fondu latéral (fond transparent) */
.elementor-element-01f1958 img,
.elementor-element-f3e0a68 img {
  width: 190px !important;
  height: 80px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 40px !important;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 20%, black 80%, transparent 100%) !important;
  mask-image: linear-gradient(to right, transparent 0%, black 20%, black 80%, transparent 100%) !important;
}

/* Forcer la visibilité des widgets avec animation Elementor (elementor-invisible) */
.elementor-widget-spaciaz-testimonials.elementor-invisible,
.elementor-widget-spaciaz-testimonials.animated-fast {
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}


.site-header,
.hfe-site-logo-container {
  overflow: visible;
}

.hfe-site-logo-img,
.custom-logo {
  height: 40px !important;
  width: auto !important;
}

.elementor-button .btn-icon,
.elementor-button .btn-icon-hover {
  color: inherit;
}

/* Euro Concept final polish */
.elementor-widget-spaciaz-team-box .elementor-teambox-item:nth-child(n + 4) {
  display: none !important;
}



/* Boutons fond blanc/transparent → texte orange (hors footer tel/email) */
.elementor-element-4b6d85e .elementor-button-text,
.elementor-element-ff07e5f .elementor-button-text,
.elementor-element-72597ef .elementor-button-text,
.elementor-element-eca203f .elementor-button-text,
.elementor-element-a8b4b48 .elementor-button-text {
  color: #ff6a21 !important;
}

/* Footer tel/email — style identique au menu footer */
.elementor-element-1e556fc .elementor-button,
.elementor-element-97ca8b0 .elementor-button {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  justify-content: flex-start !important;
}

.elementor-element-1e556fc .elementor-button-text,
.elementor-element-97ca8b0 .elementor-button-text {
  color: #000 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: Switzer, sans-serif !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  letter-spacing: normal !important;
}

#colophon .elementor-element.elementor-element-1e556fc.line-effect-yes .elementor-button::after,
#colophon .elementor-element.elementor-element-97ca8b0.line-effect-yes .elementor-button::after {
  background-color: #ff6a21 !important;
}

/* Masquer éléments inutiles */
.elementor-element-855dc9e,
.elementor-element-5f83b5d,
.elementor-element-434b876 {
  display: none !important;
}

/* Boutons fond orange → texte blanc */
.elementor-element-ad5cd6d .elementor-button-text,
.elementor-element-1eb415e .elementor-button-text,
.elementor-element-1dec1de .elementor-button-text,
.elementor-element-5ff1f9d .elementor-button-text,
.elementor-element-bf987dd .elementor-button-text,
.elementor-element-e797be5 .elementor-button-text,
.elementor-element-a74042f .elementor-button-text {
  color: #fff !important;
}

/* Boutons — fond orange, icône blanche */
.elementor-button-icon {
  background-color: #ff6a21 !important;
  color: #fff !important;
}

.elementor-button-icon i,
.elementor-button-icon i::before,
.elementor-button-icon svg,
.elementor-button-icon svg *,
.elementor-button-icon .btn-icon,
.elementor-button-icon .btn-icon-hover {
  color: #fff !important;
  fill: #fff !important;
}


/* Icônes font (spaciaz-icon-*) sur fond orange */
.elementor-view-stacked .elementor-icon i[class*="spaciaz-icon-"],
.elementor-view-stacked .elementor-icon i[class*="spaciaz-icon-"]::before {
  color: #fff !important;
}

/* Flèche bouton scroll / nav + hamburger menu */
i.spaciaz-icon-arrow-up,
.elementor-button i[class*="spaciaz-icon-"],
.elementor-button i[class*="spaciaz-icon-"]::before,
.elementor-element-9ec369e i[class*="spaciaz-icon-"],
.elementor-element-9ec369e i[class*="spaciaz-icon-"]::before {
  color: #fff !important;
}

/* Icons stacked : fond orange */
.elementor-view-stacked .elementor-icon {
  background-color: #ff6a21 !important;
  border-color: #ff6a21 !important;
}

/* Restaurer la forme décorative blanche (wave SVG) */
.elementor-icon svg[fill="none"] { fill: none !important; }
.elementor-icon svg[fill="none"] path { fill: white !important; }

/* SVG icônes 32×32 jaunes → orange (ciblage par ID) */
.elementor-element-45d9f03 .elementor-icon svg,
.elementor-element-45d9f03 .elementor-icon svg *,
.elementor-element-0515b17 .elementor-icon svg,
.elementor-element-0515b17 .elementor-icon svg *,
.elementor-element-0614195 .elementor-icon svg,
.elementor-element-0614195 .elementor-icon svg * {
  fill: #ff6a21 !important;
}

/* Core values — icônes "Finitions / Relation / Chantier" en orange */
.elementor-element-1c70c3a .elementor-icon,
.elementor-element-90530c9 .elementor-icon,
.elementor-element-c5a2e7d .elementor-icon,
.elementor-element-fc21c51 .elementor-icon,
.elementor-element-1c70c3a .elementor-icon svg,
.elementor-element-90530c9 .elementor-icon svg,
.elementor-element-c5a2e7d .elementor-icon svg,
.elementor-element-fc21c51 .elementor-icon svg,
.elementor-element-1c70c3a .elementor-icon svg *,
.elementor-element-90530c9 .elementor-icon svg *,
.elementor-element-c5a2e7d .elementor-icon svg *,
.elementor-element-fc21c51 .elementor-icon svg * {
  color: #ff6a21 !important;
  fill: #ff6a21 !important;
  stroke: #ff6a21 !important;
}

/* Logo : sans bordure jaune */
.hfe-site-logo-img {
  border-color: transparent !important;
}

/* Border slide-scrolling */
.elementor-widget-spaciaz-slide-scrolling .elementor-widget-container {
  border-color: #ff6a21 !important;
}

/* Score "4.9" et fond menu mobile */
.elementor-element-f312289 .elementor-heading-title {
  color: #ff6a21 !important;
}

.elementor-element-9ec369e .elementor-widget-container {
  background-color: #ff6a21 !important;
}

/* Étoiles notation */
.elementor-star-rating__star.elementor-star-full,
.elementor-star-rating .elementor-star-rating__star,
.e-star-rating__star--filled,
.e-star-rating .e-star-rating__icon {
  color: #ff6a21 !important;
  fill: #ff6a21 !important;
}

.c-lime, [class*="c-lime"] { color: #ff6a21 !important; }
.bg-lime, [class*="bg-lime"] { background-color: #ff6a21 !important; }

/* Hero bannière — image Euro Concept locale */
.elementor-41 .elementor-element.elementor-element-7ee5e2d:not(.elementor-motion-effects-element-type-background),
.elementor-41 .elementor-element.elementor-element-7ee5e2d > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-image: url("/assets/euro/higgsfield/blog-dallage-terrasse.png") !important;
  background-position: center center !important;
  background-size: cover !important;
}

/* Footer — image atmosphérique Euro Concept */
.elementor-264 .elementor-element.elementor-element-5a54819:not(.elementor-motion-effects-element-type-background),
.elementor-264 .elementor-element.elementor-element-5a54819 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-image: url("/assets/euro/higgsfield/blog-facade.png") !important;
  background-position: center center !important;
  background-size: cover !important;
}

/* Home — aérer toute la section "Nos engagements" après les prestations */
.elementor-41 .elementor-element.elementor-element-d841b89 {
  margin-top: clamp(72px, 9vw, 150px) !important;
}

.elementor-41 .elementor-element.elementor-element-bc4516d {
  margin-top: clamp(32px, 4vw, 64px) !important;
}

@media (max-width: 767px) {
  .elementor-41 .elementor-element.elementor-element-d841b89 {
    margin-top: 64px !important;
  }

  .elementor-41 .elementor-element.elementor-element-bc4516d {
    margin-top: 36px !important;
  }
}

/* Section "Qui nous sommes" — images custom Euro Concept (remplacement template Spaciaz) */
.elementor-41 .elementor-element.elementor-element-971d04b:not(.elementor-motion-effects-element-type-background),
.elementor-41 .elementor-element.elementor-element-971d04b > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-image: url("/assets/euro/higgsfield/about-ouvrier-dallage.png") !important;
  background-position: center top !important;
  background-size: cover !important;
}

.elementor-41 .elementor-element.elementor-element-06cb890:not(.elementor-motion-effects-element-type-background),
.elementor-41 .elementor-element.elementor-element-06cb890 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-image: url("/assets/euro/higgsfield/about-detail-maconnerie.png") !important;
  background-position: center center !important;
  background-size: cover !important;
}

.elementor-41 .elementor-element.elementor-element-a3caffe:not(.elementor-motion-effects-element-type-background),
.elementor-41 .elementor-element.elementor-element-a3caffe > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-image: url("/assets/euro/higgsfield/engagements-facade-escalier.png") !important;
  background-position: center center !important;
  background-size: cover !important;
  filter: brightness(1.15) !important;
}

/* Home — fallback local pour les chiffres "Qui sommes-nous" */
.elementor-41 .elementor-element.elementor-element-e9f7002,
.elementor-41 .elementor-element.elementor-element-53d1454,
.elementor-41 .elementor-element.elementor-element-a083507,
.elementor-41 .elementor-element.elementor-element-e9f7002 *,
.elementor-41 .elementor-element.elementor-element-53d1454 *,
.elementor-41 .elementor-element.elementor-element-a083507 * {
  visibility: visible !important;
}

/* Home — section réalisations sticky, styles repris de Home 2 */
.elementor-41 .elementor-element.elementor-element-6ee327f {
  --display: flex;
  --flex-direction: column;
  --container-widget-width: calc((1 - var(--container-widget-flex-grow)) * 100%);
  --container-widget-height: initial;
  --container-widget-flex-grow: 0;
  --container-widget-align-self: initial;
  --flex-wrap-mobile: wrap;
  --align-items: center;
  --margin-top: 0px;
  --margin-bottom: 150px;
  --margin-left: 0px;
  --margin-right: 0px;
  --padding-top: 150px;
  --padding-bottom: 150px;
  --padding-left: 30px;
  --padding-right: 30px;
}

.elementor-41 .elementor-element.elementor-element-6ee327f:not(.elementor-motion-effects-element-type-background),
.elementor-41 .elementor-element.elementor-element-6ee327f > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--e-global-color-background_light);
}

.elementor-41 .elementor-element.elementor-element-077d62d {
  width: var(--container-widget-width, 130px);
  max-width: 130px;
  --container-widget-width: 130px;
  --container-widget-flex-grow: 0;
  z-index: 2;
}

.elementor-41 .elementor-element.elementor-element-077d62d > .elementor-widget-container {
  padding: 2px 20px 5px;
  border: 1px solid var(--e-global-color-primary);
  border-radius: 20px;
}

.elementor-41 .elementor-element.elementor-element-077d62d .elementor-scrolling-inner {
  animation-duration: 10s;
  align-items: center;
}

.elementor-41 .elementor-element.elementor-element-077d62d .elementor-scrolling-wrapper .elementor-scrolling-item-inner {
  align-items: center;
}

.elementor-41 .elementor-element.elementor-element-077d62d .elementor-scrolling-wrapper .elementor-scrolling-item {
  padding-left: 5px;
  padding-right: 5px;
}

.elementor-41 .elementor-element.elementor-element-077d62d .scrolling-title,
.elementor-41 .elementor-element.elementor-element-077d62d .scrolling-title a {
  font-size: var(--e-global-typography-589f815-font-size);
  font-weight: var(--e-global-typography-589f815-font-weight);
  text-transform: var(--e-global-typography-589f815-text-transform);
  line-height: var(--e-global-typography-589f815-line-height);
}

.elementor-41 .elementor-element.elementor-element-6fd5249 {
  width: var(--container-widget-width, 765px);
  max-width: 765px;
  --container-widget-width: 765px;
  --container-widget-flex-grow: 0;
  z-index: 2;
  text-align: center;
}

.elementor-41 .elementor-element.elementor-element-6fd5249 > .elementor-widget-container {
  margin: 30px 0 65px;
}

.elementor-41 .elementor-element.elementor-element-6fd5249 .elementor-heading-title {
  font-size: var(--e-global-typography-bdefc39-font-size);
  font-weight: var(--e-global-typography-bdefc39-font-weight);
  line-height: var(--e-global-typography-bdefc39-line-height);
  letter-spacing: var(--e-global-typography-bdefc39-letter-spacing);
  color: var(--e-global-color-accent);
}

.elementor-41 .elementor-element.elementor-element-54f39c1 {
  width: 100%;
  max-width: 100%;
  z-index: 2;
}

.elementor-41 .elementor-element.elementor-element-54f39c1 .d-grid {
  grid-gap: 50px;
}

@media (max-width: 1200px) {
  .elementor-41 .elementor-element.elementor-element-6ee327f {
    --margin-bottom: 100px;
    --padding-top: 100px;
    --padding-bottom: 100px;
  }
}

@media (max-width: 1024px) {
  .elementor-41 .elementor-element.elementor-element-6ee327f {
    --margin-bottom: 80px;
    --padding-top: 80px;
    --padding-bottom: 80px;
  }
}

@media (max-width: 767px) {
  .elementor-41 .elementor-element.elementor-element-6ee327f {
    --margin-bottom: 60px;
    --padding-top: 60px;
    --padding-bottom: 60px;
    --padding-left: 15px;
    --padding-right: 15px;
  }

  .elementor-41 .elementor-element.elementor-element-6fd5249 > .elementor-widget-container {
    margin: 10px 0 30px;
  }
}
