/* =========================
   Base
   ========================= */
:root { --brand:#0072bc; --dark:#3f3f3f; --ink:#1f2937; --muted:#6b7280; --max:1080px; }
*{box-sizing:border-box}
body{margin:0;font-family:"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}
body.has-sticky-header{padding-top:70px}
.site-shell{overflow-x:hidden}
.wp-site-blocks{position:relative;z-index:0}
a{text-decoration:none;color:inherit}
.container{max-width:var(--max);margin:0 auto;padding:0 16px}

/* =========================
   Header
   ========================= */
.header-top{background:#444;color:#fff;font-size:14px;height:50px;position:fixed;top:0;left:0;width:100%;z-index:10002;transition:transform .25s ease}
.header-top.is-hidden{transform:translateY(-100%)}
.header-top-inner{display:flex;justify-content:space-between;align-items:center;height:50px;padding:0 16px}
.social-ico a{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:13px}
.header_right_text_pro{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:13px}
.sr-only{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.header-main{background:#fff;border-bottom:1px solid #eee;position:fixed;top:0;left:0;width:100%;z-index:10001;overflow:visible}
.header-main-inner{overflow:visible}
.header-main-inner{display:flex;align-items:center;justify-content:space-between;min-height:110px;gap:20px;position:relative;z-index:1001}
.site-header{position:relative;z-index:10000}
.site-main{position:relative;z-index:0}
/* =========================
   Navigation
   ========================= */
.wp-block-navigation{position:relative;z-index:10002}
.wp-block-navigation__responsive-container{z-index:20000;overflow:visible}
.wp-block-navigation__responsive-container.is-menu-open{z-index:20000}
.wp-block-navigation__responsive-container-content{overflow:visible}
.wp-block-navigation__container{overflow:visible}
.wp-block-navigation__container > .wp-block-page-list{display:contents}
.wp-block-navigation__submenu-container{position:absolute;z-index:20001;top:100%;left:0;width:245px !important;min-width:245px !important;max-width:245px !important}
.wp-block-navigation .wp-block-navigation-item{position:relative}
.wp-block-navigation__submenu-icon{display:none}
@media (min-width: 782px) {
  .wp-block-navigation .wp-block-navigation__submenu-container{
    margin-top:36px;
    border:none !important;
    left:12px;
    width:245px !important;
    min-width:245px !important;
    max-width:245px !important;
    -moz-box-shadow: 5px 1px 35px rgba(0,0,0,.15);
    -webkit-box-shadow: 5px 1px 35px rgba(0, 0, 0, .15);
    box-shadow: 5px 1px 35px rgba(0, 0, 0, .15);
  }
  .wp-block-navigation .wp-block-navigation__submenu-container::before{
    content:"";
    position:absolute;
    top:-10px;
    left:16px;
    width:0;
    height:0;
    border-left:8px solid transparent;
    border-right:8px solid transparent;
    border-bottom:10px solid #fff;
  }
  .wp-block-navigation .wp-block-navigation__submenu-container::after{
    content:"";
    position:absolute;
    top:-12px;
    left:15px;
    width:0;
    height:0;
    border-left:9px solid transparent;
    border-right:9px solid transparent;
    border-bottom:12px solid rgba(0,0,0,0.08);
    z-index:-1;
  }
  .wp-block-navigation .has-child.force-open > .wp-block-navigation__submenu-container{
    height:auto;
    min-width:245px !important;
    opacity:1;
    overflow:visible;
    visibility:visible;
    width:245px !important;
    max-width:245px !important;
  }
}
@media (min-width: 782px) {
  body.force-submenus-open .wp-block-navigation .wp-block-navigation__submenu-container {
    height:auto;
    min-width:245px !important;
    opacity:1;
    overflow:visible;
    visibility:visible;
    width:245px !important;
    max-width:245px !important;
  }
}
.brand{flex:0 0 auto}
.custom-logo-link{display:inline-block;max-width:190px}
.custom-logo-link img{height:70px;width:auto;display:block}
.home .wp-block-site-logo img,
.front-page .wp-block-site-logo img,
.page-template-front-page .wp-block-site-logo img{
  height:revert-layer !important;
}
.main-nav{margin-left:auto}
.menu-primary{display:flex;align-items:center;gap:20px;list-style:none;margin:0;padding:0;font-size:13px;font-weight:600;text-transform:none}
.menu-primary a{display:inline-block;padding:8px 0}
.wp-block-navigation .wp-block-navigation-item{position:relative;padding:10px}
.wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content,
.wp-block-navigation-item.current-menu-item .wp-block-navigation-link,
.wp-block-navigation-item .wp-block-navigation-item__content:hover,
.wp-block-navigation-item .wp-block-navigation-link:hover{
  color:var(--brand);
}
.menu-primary .current-menu-item > a{color:var(--brand)}
.menu-primary .sub-menu{display:none;position:absolute;background:#fff;padding:8px 10px;list-style:none;border:1px solid #ddd;min-width:170px;top:100%;left:0}
.menu-primary li{position:relative}
.menu-primary li:hover>.sub-menu{display:block}
.menu-toggle{display:none}

@media (min-width: 768px) {
  .header-sticky.sticky {
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.2);
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 10001;
  }
  .header-sticky.sticky + .home-hero,
  .header-sticky.sticky + .home-hero-carousel,
  .header-sticky.sticky + .home-hero-plugin {
    margin-top: 70px;
  }
  .header-main-inner{justify-content:space-between}
}

/* =========================
   Hero & Carousel
   ========================= */
.home-hero{min-height:420px;background:#ddd center/cover no-repeat;border-bottom:4px solid var(--brand)}
.home-hero-content{color:#fff;padding-top:30px;padding-bottom:30px}
.home-hero h1{font-size:50px;line-height:1.1;margin:0 0 12px}
.home-hero p{font-size:16px;margin:0 0 24px}
.home-hero-plugin{border-bottom:4px solid var(--brand);position:relative;display:flow-root}
.home-hero-plugin .metaslider{position:relative;display:block}
.home-hero-plugin .metaslider .flexslider{margin-bottom:0;display:block;overflow:visible}

.page-hero-plugin{border-bottom:4px solid var(--brand);position:relative;display:flow-root}
.page-hero-plugin .metaslider{position:relative;display:block;max-height:280px;overflow:hidden}
.page-hero-plugin .metaslider .flexslider{margin-bottom:0;display:block;max-height:280px}
.page-hero-plugin img{width:100%;height:280px;object-fit:cover}

.menu-primary .menu-parent,
.wp-block-pages-list__item__link.menu-parent{pointer-events:none;cursor:default}
.home-hero-plugin .metaslider,
.home-hero-plugin .n2-ss-slider{margin:0 !important}
.home-hero-carousel{position:relative;min-height:420px;border-bottom:4px solid var(--brand);overflow:hidden}
.home-hero-slide{position:absolute;inset:0;background:#ddd center/cover no-repeat;opacity:0;transition:opacity .7s ease}
.home-hero-slide.is-active{opacity:1}
.home-hero-carousel .home-hero-overlay{position:relative;z-index:2}
.hero-actions{display:flex;gap:10px}
.btn{display:inline-block;padding:10px 18px;border:1px solid var(--brand);background:var(--brand);color:#fff;font-size:13px}
.btn-secondary{background:#f5f5f5;color:#1f2937}

/* =========================
   Content
   ========================= */
.home-about{padding:58px 0}
.home-about h2,.home-news h2{text-align:center;color:var(--brand);font-size:44px;margin:0 0 18px;line-height:1.1}
.home-about-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:34px;align-items:start}
.home-about-text{font-size:13px;line-height:1.7;color:#505050}

.home-news{background:#f5f5f5;padding:60px 0}
.home-news> .container > p{text-align:center;color:#777;margin:0 0 24px;font-size:12px}
.home-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.home-news-card{background:#fff;padding:0 0 12px}
.home-news-thumb img{display:block;width:100%;height:170px;object-fit:cover}
.home-news-date{font-size:11px;color:#7c7c7c;margin:10px 12px 6px}
.home-news-card h3{font-size:24px;line-height:1.2;margin:0 12px}
.home-news-card h3 a{color:#111}

.page-content{padding:0px 0 70px}
.page-title{font-size:36px;line-height:1.2;margin:0 0 24px;text-align:center;color:var(--brand)}
.post-date,.news-date{font-size:12px;color:#7c7c7c;margin:0 0 8px}
.entry-content{font-size:13px;line-height:1.7;color:#505050;padding-left: 20px;padding-right: 20px;}
.entry-content img{max-width:100%;height:auto}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.accordion-container{margin-bottom:20px !important}
.wp-block-accordion .wp-block-accordion-heading__toggle{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  background:#0072bc;
  border:none;
  color:#fff;
  cursor:pointer;
  font-size:20px;
  font-weight:300;
  letter-spacing:normal;
  line-height:23px;
  margin-bottom:10px;
  padding:10px;
  border-radius:5px;
  transition:background .6s ease, color .6s ease;
  margin-top:0;
  margin-bottom:10px;
  transform:translateZ(0);
  line-height:1;
  position:relative;
  top:0;
}
.wp-block-accordion .wp-block-accordion-heading{margin:0}
.wp-block-accordion .wp-block-accordion-heading__toggle:focus{outline:none}
.wp-block-accordion .wp-block-accordion-heading__toggle-title{flex:1}
.wp-block-accordion .wp-block-accordion-heading__toggle-icon{
  font-size:30px;
  line-height:20px;
  width:20px;
  height:20px;
  order:-1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-family:"FontAwesome";
  font-size:30px;
  text-indent:-9999px;
  overflow:hidden;
  position:relative;
  transition:transform .6s ease;
}
.wp-block-accordion .wp-block-accordion-heading__toggle-icon::before{
  content:"\f107";
  text-indent:0;
  display:block;
  font-family:"FontAwesome";
  font-size:30px;
}
.wp-block-accordion .wp-block-accordion-heading__toggle[aria-expanded="true"] .wp-block-accordion-heading__toggle-icon{
  transform:rotate(180deg);
}
.wp-block-accordion .wp-block-accordion-panel{
  overflow:hidden;
}
.wp-block-accordion .wp-block-accordion-panel{
  border:none;
  border-radius:0;
  padding:0 20px;
}
.news-card{background:#fff;padding:0 0 12px}
.news-card h2{font-size:24px;line-height:1.2;margin:0 12px}
.news-card h2 a{color:#111}
.news-thumb img{display:block;width:100%;height:170px;object-fit:cover}

/* Actualites page (home.php) */
.news-list .container-blog{margin-bottom:50px;padding-bottom:30px;border-bottom:3px solid rgba(0,0,0,0.08)}
.news-list .pro-cat{display:inline-block;padding-bottom:8px;color:#bfbfbf;margin-right:15px;font-size:15px}
.news-list .blog-title{font-size:28px;line-height:1.2;margin:0 0 12px}
.news-list .blog-title a{color:#1f6fb5;text-decoration:none}
.news-list .featured-blog-progression{text-align:center;margin:18px 0 25px}
.news-list .featured-blog-progression img{width:100%;height:auto;display:block}
.news-list .blog-container-text{background:#fff}
.news-list .blog-container-text .entry-content{color:#444;font-size:15px;line-height:1.7}
.news-list a.more-link{text-decoration:none;color:#1f6fb5;font-weight:600}
.news-list a.more-link:hover{color:#195d97}

/* Actualites layout + sidebar */
.news-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start}
.news-layout .archive-header{grid-column:1 / -1;grid-row:1}
.news-main{grid-column:1;grid-row:2}
.news-sidebar{grid-column:2;grid-row:2}
.news-sidebar-card{background:#f7f7f7;border:1px solid #eee;border-radius:2px;padding:18px 20px}
.news-sidebar-title{margin:0 0 12px;font-size:14px;letter-spacing:.02em;color:#111;display:inline-block;border-bottom:3px solid #8bc34a;padding-bottom:4px}
.news-sidebar-list{list-style:none;margin:0;padding:0}
.news-sidebar-list li{margin:0 0 10px;padding-left:16px;position:relative}
.news-sidebar-list li:last-child{margin-bottom:0}
.news-sidebar-list li::before{content:"›";position:absolute;left:0;top:0;color:#9b9b9b}
.news-sidebar-list a{color:#7a7a7a;text-decoration:none;font-weight:600;display:block}
.news-sidebar-list a:hover{color:#1f6fb5}
.news-sidebar-date{display:block;color:#b0b0b0;font-size:12px;margin-top:2px}
@media (max-width: 900px){
  .news-layout{grid-template-columns:1fr}
  .news-main{grid-column:1;grid-row:auto}
  .news-sidebar{grid-column:1;grid-row:auto;order:1;margin-bottom:24px}
}

/* =========================
   Footer
   ========================= */
footer, #widget-area{background:#444;color:#888;font-size:14px}
footer a, #widget-area a{color:#888}
footer a:hover, #widget-area a:hover{color:#999}

.page-row{background:#444}
#widget-area{background:#444}
.width-container{max-width:1140px;margin:0 auto;padding:0 16px}
.footer-3-column{display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px}
.footer-3-column .widget{width:29%;padding:90px 0 80px}

.widget-title{color:#fff;margin:0 0 30px;font-size:24px;font-weight:400}
.social-icons-widget-pro div{margin-bottom:25px}
.social-icons-widget-pro .social-ico{font-size:15px}
.social-icons-widget-pro .social-ico a i{padding:10px;text-align:center;color:#fff}
.social-icons-widget-pro .social-ico a:hover i{color:#fff}
.social-ico a{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-right:6px;background:#0072bc;border-radius:50%}

.open-hours{list-style:none;margin:5px 0 0 0;padding:0;line-height:1.1}
.open-hours li{margin-bottom:6px}
#widget-area ul.open-hours li{padding-bottom:10px;margin-bottom:10px}

#widget-area #mc_embed_signup_form1{padding-top:30px;color:#fff}
#widget-area #mc_embed_signup_form1 .mc-field-group{display:inline}
#widget-area #mc_embed_signup_form1 label{display:none}
#widget-area #mc_embed_signup_form1 input,
#widget-area #mc_embed_signup_form1 .btn-subscribe{
  width:60%;
  max-width:100%;
  padding:15px 12px;
  background:#333;
  border:1px solid #333;
  color:#fff;
  border-radius:3px;
}
#widget-area #mc_embed_signup_form1 input:focus{color:#fff;border-color:#999;outline:none}
#widget-area #mc_embed_signup_form1 .btn-subscribe{
  position:relative;
  left:-10px;
  display:inline-block;
  width:auto;
  padding:16px 15px;
  background:#0072bc;
}
#widget-area #mc_embed_signup_form1 .message{color:#f03;margin-top:5px}
.subscribe-newsletter-form .mc-field-group{display:flex;align-items:center;gap:0}
.subscribe-newsletter-form input[type="email"]{
  width:60%;
  max-width:100%;
  padding:15px 12px;
  background:#333;
  border:1px solid #333;
  color:#fff;
  border-radius:3px;
}
.subscribe-newsletter-form input[type="email"]:focus{color:#fff;border-color:#999;outline:none}
.subscribe-newsletter-form .btn-subscribe{
  position:relative;
  left:-10px;
  display:inline-block;
  width:auto;
  padding:16px 15px;
  background:#0072bc;
  border:0;
  color:#fff;
  border-radius:3px;
  cursor:pointer;
}
.subscribe-newsletter-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.35);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:30000;
  opacity:0;
  animation:newsletterFadeIn .2s ease forwards;
}
.subscribe-newsletter-overlay .overlay-message{
  background:#fff;
  color:#222;
  padding:18px 28px;
  border-radius:6px;
  font-size:16px;
  box-shadow:0 10px 30px rgba(0,0,0,0.2);
}
.subscribe-newsletter-overlay.fade-out{
  animation:newsletterFadeOut .6s ease forwards;
}
@keyframes newsletterFadeIn{
  from{opacity:0}
  to{opacity:1}
}
@keyframes newsletterFadeOut{
  from{opacity:1}
  to{opacity:0}
}

#copyright{background:#3f3f42}
#copyright .width-container{display:flex;align-items:center;gap:16px}
#copyright-text{padding:40px 0 36px;font-size:12px;flex:0 0 auto}
#copyright-text a{color:#0072bc}
.menu-footer-menu-container{display:flex;align-items:center;gap:12px;margin-left:auto}
footer #copyright ul.pro-footer-menu{margin:0;padding:40px 0 36px;list-style:none;font-weight:500;display:flex;gap:16px;flex-wrap:wrap}
footer #copyright ul.pro-footer-menu li{display:inline;margin:0}
a.scrollup{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#0072bc;color:#fff;border-radius:50%;font-size:15px}
.pro-footer-menu .wp-block-navigation__submenu-icon{display:none !important;}
footer #copyright .pro-footer-menu .wp-block-navigation__submenu-icon{display:none !important;}

@media (max-width: 900px){
  .footer-3-column .widget{width:100%;padding:20px 0 30px}
  #copyright{text-align:center}
  a.scrollup{display:none}
  #copyright .width-container{justify-content:center}
  footer #copyright ul.pro-footer-menu{justify-content:center;padding:20px 0}
  #copyright-text{text-align:center}
  footer #copyright .pro-footer-menu .sub-menu{display:none !important;}
  footer #copyright .pro-footer-menu .wp-block-navigation__submenu-container{display:none !important;}
}

/* =========================
   Responsive
   ========================= */
@media (max-width: 600px){
  .menu-toggle{display:inline-block}
  .main-nav{display:none}
  .main-nav.is-open{display:block;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #eee}
  .menu-primary{flex-direction:column;padding:12px}
  .home-hero h1{font-size:36px}
  .home-about-grid,.home-news-grid,.footer-widgets{grid-template-columns:1fr}
  footer #copyright ul.pro-footer-menu li {display: inherit !important; min-width: 300px;}
  footer #copyright .pro-footer-menu .sub-menu{display:block !important;}
  footer #copyright .pro-footer-menu .wp-block-navigation__submenu-container{display:block !important;}
}

/* =========================
   MetaSlider Overrides
   ========================= */
.carousel_accueil .caption-wrap {
  background: transparent !important;
  bottom: 130px !important;
  line-height: 2em !important;
  opacity: 1 !important;
  text-shadow: rgba(0, 0, 0, .5) 1px 1px 4px;
}

.btn {
  text-shadow: none!important;
}
