/* ---------- Bouton (ex Element Pack) ---------- */
.bdt-advanced-button-wrapper{line-height:1}
.bdt-advanced-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;cursor:pointer;transition:all .3s;box-sizing:border-box;position:relative;overflow:hidden}
.bdt-advanced-button-content-wrapper{display:flex;align-items:center;justify-content:center;gap:0}
.bdt-advanced-button-icon{display:inline-flex;align-items:center}
.bdt-advanced-button-icon.bdt-button-icon-align-left{margin-right:8px}
.bdt-advanced-button-icon.bdt-button-icon-align-right{margin-left:8px}
.bdt-advanced-button-size-xs{padding:8px 16px;font-size:12px}
.bdt-advanced-button-size-sm{padding:12px 24px;font-size:14px}
.bdt-advanced-button-size-md{padding:15px 30px;font-size:16px}
.bdt-advanced-button-size-lg{padding:20px 40px;font-size:18px}
.bdt-advanced-button:hover{box-shadow:-6px 11px 16px 0 rgba(0,0,0,.2),-6px 9px 20px 0 rgba(0,0,0,.19)}

/* ---------- Carrousel (ex Elementor Pro Slides) ---------- */
.dfi-slides{position:relative;overflow:hidden;height:400px}
.dfi-slides__track{position:relative;height:100%}
.dfi-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s}
.dfi-slide.is-active{opacity:1;visibility:visible;z-index:1}
.dfi-slide .slick-slide-bg{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat}
.dfi-slide .slick-slide-inner{position:absolute;inset:0;display:flex;align-items:center;padding:50px;box-sizing:border-box;text-decoration:none;color:inherit}
.dfi-slide .elementor-slide-content{position:relative}
.dfi-slide .elementor-slide-heading{font-size:35px;font-weight:700;line-height:1}
.dfi-slide .elementor-slide-button{display:inline-block;margin-top:15px}
.dfi-slides__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;background:none;border:0;cursor:pointer;padding:10px;line-height:1}
.dfi-slides__prev{left:10px}.dfi-slides__next{right:10px}
.dfi-slides__dots{position:absolute;left:0;right:0;bottom:15px;z-index:3;display:flex;justify-content:center;gap:8px}
.dfi-slides__dots button{border:0;border-radius:50%;padding:0;opacity:.4;cursor:pointer}
.dfi-slides__dots button.is-active{opacity:1}
@media (max-width:767px){.dfi-slide .slick-slide-inner{padding:20px}}

/* ---------- Menu (ex Elementor Pro Nav Menu) ---------- */
.dfi-nav{position:relative}
.dfi-nav .elementor-nav-menu{list-style:none;margin:0;padding:0}
.dfi-nav .elementor-nav-menu--main>.elementor-nav-menu{display:flex;flex-wrap:wrap}
.dfi-nav .elementor-nav-menu--main .elementor-item{display:flex;padding:13px 20px;position:relative;line-height:20px;text-decoration:none}
.dfi-nav .elementor-nav-menu--main .elementor-item:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:currentColor;opacity:0;transition:opacity .3s}
.dfi-nav .elementor-nav-menu--main .elementor-item:hover:after,.dfi-nav .elementor-nav-menu--main .elementor-item-active:after{opacity:1}
.dfi-nav .elementor-nav-menu--main .sub-menu{display:none;position:absolute;background:#fff;min-width:200px;z-index:100;list-style:none;margin:0;padding:0;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.dfi-nav .elementor-nav-menu--main li{position:relative}
.dfi-nav .elementor-nav-menu--main li:hover>.sub-menu{display:block}
.dfi-nav .elementor-menu-toggle{display:none;align-items:center;justify-content:center;cursor:pointer;padding:.25em;border-style:solid;border-color:transparent;margin-left:auto;line-height:1}
.dfi-nav .elementor-nav-menu--dropdown{display:none;background:#fff;position:absolute;left:0;right:0;z-index:999;box-shadow:0 5px 10px rgba(0,0,0,.15)}
.dfi-nav .elementor-nav-menu--dropdown a{display:flex;padding:10px 20px;text-decoration:none;color:#33373d}
.dfi-nav.is-open .elementor-nav-menu--dropdown{display:block}
.dfi-nav--layout-dropdown .elementor-menu-toggle{display:inline-flex}
.dfi-nav--layout-dropdown{display:flex;flex-direction:column;align-items:flex-end}
@media (max-width:1024px){
.dfi-nav--dropdown-tablet .elementor-nav-menu--main{display:none}
.dfi-nav--dropdown-tablet .elementor-menu-toggle{display:inline-flex}
}
@media (max-width:767px){
.dfi-nav--dropdown-mobile .elementor-nav-menu--main{display:none}
.dfi-nav--dropdown-mobile .elementor-menu-toggle{display:inline-flex}
.dfi-nav--dropdown-mobile.dfi-nav--no-toggle .elementor-nav-menu--dropdown{display:block;position:static;box-shadow:none;background:transparent}
.dfi-nav--dropdown-mobile.dfi-nav--no-toggle .elementor-menu-toggle{display:none}
}

/* En-tête collant (ex option « sticky » d'Element Pack) */
.dfi-sticky-placeholder{display:none}
.dfi-is-sticky{position:fixed!important;top:0;left:0;right:0;z-index:999;background:#fff;padding:5px!important;box-shadow:0 2px 6px rgba(0,0,0,.08);animation:dfi-slide-down .3s}
body.admin-bar .dfi-is-sticky{top:32px}
@keyframes dfi-slide-down{from{transform:translateY(-100%)}to{transform:none}}

/* ---------- Articles ---------- */
.elementor-post{overflow:hidden}
.elementor-post__thumbnail img{width:100%;display:block}
.elementor-post__title a{color:inherit;text-decoration:none}
.dfi-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.dfi-post{background:#fff;box-shadow:0 25px 50px -28px rgba(0,0,0,.5)}
.dfi-post__image img{width:100%;display:block}
.dfi-post__text{padding:0 12px 20px}
.dfi-post__title{font-size:20px!important;line-height:26px!important;font-weight:400!important;padding:15px 0 0}
.dfi-post__title a{color:#636363}
@media (max-width:767px){.dfi-posts{grid-template-columns:1fr}}

/* ---------- Catalogues (marques, secteurs) ---------- */
.dfi-archive .archive-header{padding:40px 0 10px}
.dfi-archive .archive-title{font-family:"Raleway",sans-serif!important;font-weight:700!important;color:#1253a2!important;text-transform:uppercase}
.dfi-archive .brochure-category{font-family:"Raleway",sans-serif!important;font-weight:700!important;color:#000!important;margin-top:30px}
.dfi-archive hr{border:0;border-top:1px solid #e5e5e5;margin:0 0 25px}
.dfi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-bottom:40px}
.dfi-card{display:flex;flex-direction:column;text-align:center}
.dfi-card__image{display:block;border:1px solid #e5e5e5;overflow:hidden}
.dfi-card__image img{display:block;width:100%;height:auto;transition:transform .3s}
.dfi-card__image:hover img{transform:scale(1.04)}
.dfi-card__title{margin:10px 0!important;font-size:14px;line-height:20px;color:#444;flex-grow:1}
.dfi-card__button{display:block;background:#1253a2;background-image:linear-gradient(80deg,#1253a2 25%,#030df0 100%);color:#fff!important;font-family:"Raleway",sans-serif;font-weight:700;padding:10px;text-transform:uppercase}
@media (max-width:1024px){.dfi-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767px){.dfi-grid{grid-template-columns:repeat(2,1fr);gap:15px}}

/* ---------- Visionneuse PDF ---------- */
.dfi-pdf-viewer-page{margin:0;padding:0}
.dfi-pdf-viewer{position:fixed;inset:0;background:#333}
.dfi-pdf-viewer iframe{width:100%;height:100%;border:0;display:block}
.dfi-pdf-fallback{position:absolute;bottom:10px;right:20px;margin:0}
.dfi-pdf-fallback a{color:#fff;background:#1253a2;padding:6px 14px}

/* ---------- Article / offre ---------- */
.dfi-single .entry-title{margin-bottom:25px}
.dfi-single .offre-details{display:grid;grid-template-columns:repeat(4,auto);gap:15px;margin-bottom:25px;font-family:"Raleway",sans-serif}
.dfi-single .offre-details label{display:inline;color:#e65561}
.dfi-single .offre-details i{font-size:22px;color:#1253a2;margin-right:5px}
.button-postuler-container{text-align:right;margin:20px 0}
@media (max-width:767px){.dfi-single .offre-details{grid-template-columns:1fr}.button-postuler-container{text-align:center}}
