/* CSS par MD WEB CREATION – index.css (compact) */

/* === HERO (hors critical) === */
.hero-overlay{position:absolute;inset:0;padding:60px;display:flex;align-items:center;z-index:4}
.location-overlay{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);width:100%;text-align:center;font-size:clamp(20px,4vw,100px);font-weight:700;color:rgba(255,255,255,.39);white-space:nowrap;border:0}

/* Bloc haut-gauche */
#hero .video-label-top{position:absolute;top:0;left:0;display:flex;box-sizing:border-box;background:#fff;width:600px!important;max-width:600px!important;height:409px;border-bottom-right-radius:2rem;z-index:6;overflow:visible;right:auto!important;min-width:0!important}

/* Coins décoratifs */
.corner-svg{position:absolute;width:40px;height:40px;z-index:7}
.video-top-left{top:409px;left:0;transform:rotate(270deg)}
.video-top-right{top:0;left:600px;transform:rotate(270deg)}

/* Lignes du menu */
.text-md-sous-titre {width: 100% !important;}
.texteffect{font-size:16px;color:#4f5795;text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;margin:0;line-height:1.2;width:100%;position:relative;overflow:hidden;white-space:nowrap;cursor:pointer}
.texteffect:hover{color:#fff}
.texteffect:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#8c94d1,#4f5795,#4f5795);border-radius:6px;z-index:-1;transform:scaleX(0);transform-origin:bottom right;transition:transform .7s ease}
.texteffect:hover:before{transform:scaleX(1);transform-origin:top left}
.menu-marge{margin-bottom:.1rem}
.video-label-top .left-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.video-label-top .right-image{flex:0 0 auto;display:inline-flex;align-items:center}
.video-label-top .right-image img{width:28px!important;height:auto;display:block}
@media (max-width:1280px){
  .video-label-top .texteffect{font-size:14px;letter-spacing:1px}
  .video-label-top .right-image img{width:24px!important}
}

/* Boîte flottante bas droite */
.floating-action-box{position:absolute;bottom:0;right:0;background:#fff;padding:1rem 0 0 1rem;border-top-left-radius:2rem;z-index:6;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}
.floating-action-box .corner-svg.bottom-left{bottom:0;left:-40px;transform:rotate(90deg)}
.floating-action-box .corner-svg.top-right{top:-40px;right:0;transform:rotate(90deg)}
span.btn-text {text-transform: none;}

/* Responsives (hero & coins) */
@media (max-width:767px){
  .hero{height:80svh;margin-top:30px!important}
  .video-top-left{top:120px;left:0}
  .video-top-right{top:20px;left:180px}
}
@media (min-width:768px) and (max-width:1024px){
  .hero{height:min(75svh,720px)!important}
  .video-top-left{top:250px;left:0}
  .video-top-right{top:50px;left:280px}
}

/* =========================
   SECTION LOGOS PARTENAIRES
   ========================= */
.logo-marquee{overflow:hidden;position:relative;width:100%;padding:1rem 0}
.logo-track{display:flex;width:fit-content;animation:scroll 60s linear infinite;align-items:center}
.logo-track.reverse{animation-direction:reverse}
.logo-track img{width:310px;height:auto;margin:0 1rem;object-fit:contain}
@keyframes scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.hover-label.bg-realisations.position-absolute.end-0.top-0.shadow-sm{padding:.5rem 1rem;background:#fff}
.hover-label::before, .hover-label::after {display: none;}

/* =========================
   SECTION MON TRAVAIL
   ========================= */
.section-work,.container-work{background:#fff;background-size:cover;background-repeat:no-repeat;background-position:center}
.work-card{position:relative;overflow:hidden;margin-bottom:30px}
.project-card{position:relative;overflow:hidden;border-radius:16px}
.project-img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover;transition:transform .35s ease;transform:translateZ(0)}
@media (hover:hover){.project-card:hover .project-img{transform:scale(1.03)}}

/* Badge hover */
.hover-label{position:absolute;top:0;right:0;z-index:2;padding:.75rem;background:#fff;border-bottom-left-radius:25px;border-top-right-radius:0;overflow:visible}

/* Coins SVG (blanc par défaut) */
.corner{position:absolute;width:40px;height:40px;pointer-events:none;fill:#fff;filter:invert(100%) sepia(0%) saturate(0%) hue-rotate(0) brightness(100%) contrast(100%)}
.corner path{filter:inherit}
.corner--tl{top:0;left:-39px;}
.corner--br{bottom:-39px;right:0;}

/* Infos projet */
.badge-group.d-flex.flex-wrap.gap-2.p-4.text-uppercase.fw-bold {width: 100%;}
.badge-group .badge{font-weight:600;}
.badge-group .texta{text-decoration:none;color:#111;display:inline-block;padding:.15rem .25rem}
.work-info{margin:15px 0 60px;text-align:left}
.work-info .mdw-h3{margin-bottom:1rem}

/* CTA (avis) */
.avis-img{max-width:350px;height:auto;display:block;margin:0 auto}

/* Accessibilité/perfs */
@media (prefers-reduced-motion:reduce){.project-img{transition:none!important}}

/* =========================
   SECTION EXPERTISES
   ========================= */
.section-expertises{background:#4f5795}
.section-expertises__inner{background:transparent;background-size:cover;background-repeat:no-repeat;background-position:center}

/* Liste services */
.service-links{width:100%;margin:0;padding:0;list-style:none}
.service-link{position:relative;display:flex;align-items:center;width:100%;padding:15px;border-bottom:2px solid rgba(255,255,255,.25);text-decoration:none;outline:0;transition:background-color .25s ease-in-out,padding-left .3s ease-in-out}
.service-link:last-child{border-bottom:0}
a.service-link{display:flex;align-items:center;width:100%;padding:25px;border-bottom:2px solid #ccc!important;text-decoration:none;position:relative;transition:all .3s ease-in-out}

/* Icône flottante */
.hover-img{position:absolute;top:50%;left:0;transform:translateY(-50%);width:80px;height:80px;border-radius:15px;background-size:cover;background-position:center;opacity:0;pointer-events:none;transition:opacity .25s ease-in-out}
@media (max-width:768px){.hover-img{width:50px;height:50px;opacity: 1;}span.service-text.text-white.fs-5.fw-bold  {padding-left: 60px;font-weight: 300 !important;}}

/* Texte */
.service-text{flex-grow:1;font-size:clamp(1rem,3.5vw,4rem)!important;font-weight:700;line-height:1.2;color:#fff;padding-left:0;transition:padding-left .3s ease-in-out}

/* Hover/Focus */
@media (hover:hover){
  .service-link:hover .hover-img{opacity:1}
  .service-link:hover .service-text{padding-left:90px}
}
.service-link:focus-visible{background-color:rgba(255,255,255,.08)}
.service-link:focus-visible .hover-img{opacity:1}
.service-link:focus-visible .service-text{padding-left:90px}
@media (max-width:768px){
  .service-link:hover .service-text,
  .service-link:focus-visible .service-text{padding-left:60px}
}
@media (prefers-reduced-motion:reduce){
  .hover-img,.service-text,.service-link{transition:none!important}
}

/* =========================
   MARQUEE CTA
   ========================= */
.marquee-cta{margin:50px 0;overflow:hidden;width:100%;line-height:1}
.marquee-row{position:relative;overflow:hidden;width:100%;white-space:nowrap}
.marquee-row+.marquee-row{margin-top:.25rem}
.marquee-track{display:inline-flex;gap:2rem;will-change:transform;animation:marquee-left 48s linear infinite}
.marquee-row--reverse .marquee-track{animation-name:marquee-right}
.marquee-item{display:inline-flex;align-items:center;flex-shrink:0;text-decoration:none}
.marquee-text{color:#4f5795;font-weight:800;letter-spacing:-.01em;font-size:clamp(1.5rem,8vw,6rem)}
@media (hover:hover){.marquee-item:hover .marquee-text{text-decoration:underline;text-underline-offset:.2em}}
@keyframes marquee-left{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes marquee-right{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none!important}}

/* =========================
   TÉMOIGNAGES (carousel)
   ========================= */
.carousel-navigation{position:relative;z-index:3;gap:.5rem}
.carousel-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#fafafa;border:0;cursor:pointer}
.carousel-btn svg{width:14px;height:16px;fill:#000}
.carousel-btn:disabled{opacity:.4;cursor:default}
@media (hover:hover){.carousel-btn:hover{transform:translateY(-1px)}}

#news-slider .owl-stage-outer{overflow:hidden}
.post-slide{display:flex;flex-direction:column;justify-content:space-between;height:530px!important}
@media (max-width:1024px){.post-slide{height:850px!important}}
@media (max-width:575.98px){.post-slide{height:820px!important}}
.post-content{margin-top:auto}
.icon-container-slide img,.icon-container-slide i{width:56px!important;height:56px!important;border-radius:50%;object-fit:cover}
