/* Idéal Web — V33.9.1 HUB SYSTEM — GLOBAL HEADER FIX
   Header/footer canoniques pour les pages HUB publiques.
   Chargé en dernier pour neutraliser les anciennes variantes locales sans toucher au contenu métier. */
:root{
  --hub-ink:#10261f;
  --hub-muted:#52655d;
  --hub-green:#0f8442;
  --hub-green-dark:#0a6036;
  --hub-green-soft:#eef8f1;
  --hub-line:#d7e3dd;
  --hub-footer:#03241f;
  --hub-shell:1360px;
}
.hub-system-header,.hub-system-header *,.hub-system-footer,.hub-system-footer *{box-sizing:border-box}
.hub-system-header a,.hub-system-footer a{text-decoration:none}
.hub-system-header img,.hub-system-footer img{display:block;max-width:100%;height:auto}
.hub-system-header{position:sticky!important;top:0!important;z-index:1200!important;width:100%!important;background:rgba(255,255,255,.97)!important;border:0!important;border-bottom:1px solid rgba(215,227,221,.95)!important;color:var(--hub-ink)!important;backdrop-filter:blur(16px);box-shadow:none!important;transition:box-shadow .22s ease}
.hub-system-header.is-scrolled{box-shadow:0 10px 30px rgba(15,45,35,.08)!important}
.hub-shell{width:min(calc(100% - 48px),var(--hub-shell));margin-inline:auto;min-width:0}
.hub-system-header .header-inner{position:relative;display:flex!important;align-items:center!important;gap:24px!important;min-height:86px!important;padding:0!important}
.hub-system-header .brand{display:block!important;flex:0 0 auto!important;width:202px!important;min-width:0!important;margin:0!important;padding:0!important;background:none!important;border:0!important}
.hub-system-header .brand img{width:100%!important;max-height:none!important;object-fit:contain!important;filter:none!important}
.hub-system-header .main-menu{display:flex!important;align-items:center!important;justify-content:center!important;gap:20px!important;min-width:0!important;margin:0 0 0 auto!important;padding:0!important;background:transparent!important;position:static!important;transform:none!important;box-shadow:none!important;border:0!important}
.hub-system-header .main-menu>a,.hub-system-header .nav-parent{position:relative;display:flex!important;align-items:center!important;min-height:86px!important;padding:0!important;color:#263a34!important;font:750 13px/1.2 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;white-space:nowrap!important;background:none!important;border:0!important;border-radius:0!important}
.hub-system-header .main-menu>a::after,.hub-system-header .nav-parent::after{content:"";position:absolute;left:0;right:0;bottom:24px;height:2px;transform:scaleX(0);background:var(--hub-green);transform-origin:left;transition:transform .2s ease}
.hub-system-header .main-menu>a:hover::after,.hub-system-header .main-menu>a:focus-visible::after,.hub-system-header .main-menu>a[aria-current="page"]::after,.hub-system-header .nav-group:hover>.nav-parent::after,.hub-system-header .nav-group:focus-within>.nav-parent::after,.hub-system-header .nav-parent[aria-current="page"]::after{transform:scaleX(1)}
.hub-system-header .main-menu>a[aria-current="page"],.hub-system-header .nav-parent[aria-current="page"]{color:var(--hub-green-dark)!important}
.hub-system-header .nav-group{position:relative!important;display:block!important}
.hub-system-header .nav-parent{gap:7px!important}
.hub-system-header .nav-parent::before{content:"";order:2;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.hub-system-header .nav-submenu{color:var(--iw-text-on-light,#10261f);position:absolute!important;left:50%!important;top:calc(100% - 8px)!important;width:520px!important;padding:14px!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;visibility:hidden!important;opacity:0!important;transform:translate(-50%,10px)!important;border:1px solid var(--hub-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 18px 48px rgba(3,36,31,.12)!important;transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;z-index:20!important}
.hub-system-header .nav-group:hover .nav-submenu,.hub-system-header .nav-group:focus-within .nav-submenu{visibility:visible!important;opacity:1!important;transform:translate(-50%,0)!important}
.hub-system-header .nav-submenu a{display:block!important;padding:13px 14px!important;border-radius:9px!important;color:#20372f!important;background:#fff!important;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.hub-system-header .nav-submenu a:hover,.hub-system-header .nav-submenu a:focus-visible,.hub-system-header .nav-submenu a[aria-current="page"]{background:var(--hub-green-soft)!important;color:var(--hub-green-dark)!important}
.hub-system-header .nav-submenu strong,.hub-system-header .nav-submenu small{display:block!important}
.hub-system-header .nav-submenu strong{font-size:13px!important;line-height:1.3!important}
.hub-system-header .nav-submenu small{margin-top:4px!important;color:#52655d!important;font-size:11px!important;line-height:1.45!important}
.hub-system-header .header-actions{display:flex!important;align-items:center!important;gap:9px!important;flex:0 0 auto!important;margin:0!important;padding:0!important}
.hub-system-header .button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:46px!important;padding:11px 17px!important;border:1px solid transparent!important;border-radius:8px!important;font:850 12.5px/1.2 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;text-align:center!important;white-space:nowrap!important;transition:transform .18s ease,background .18s ease,border-color .18s ease!important}
.hub-system-header .button:hover{transform:translateY(-1px)}
.hub-system-header .button-client{border-color:#c9d9d1!important;background:#fff!important;color:var(--hub-green-dark)!important}
.hub-system-header .button-primary{background:linear-gradient(135deg,var(--hub-green),#008f59)!important;color:#fff!important;box-shadow:0 9px 22px rgba(0,122,77,.18)!important}
.hub-system-header .button-client svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hub-system-header .menu-toggle{display:none!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:5px!important;width:46px!important;height:46px!important;padding:0!important;border:1px solid var(--hub-line)!important;border-radius:9px!important;background:#fff!important;color:var(--hub-ink)!important}
.hub-system-header .menu-toggle span:not(.sr-only){display:block;width:21px;height:2px;background:var(--hub-ink);transition:transform .2s ease,opacity .2s ease}
.hub-system-header .main-menu>a.mobile-client-link,.hub-system-header .main-menu>a.mobile-start-link{display:none!important}

.hub-system-footer{margin:0!important;padding:0!important;background:var(--hub-footer)!important;color:#dce9e3!important;border:0!important;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.hub-system-footer .footer-grid{display:grid!important;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr!important;gap:34px!important;padding:58px 0 38px!important}
.hub-system-footer .footer-brand img{width:186px!important;filter:none!important;background:transparent!important}
.hub-system-footer .footer-brand>p{max-width:390px;margin:20px 0 17px!important;color:#c6d7cf!important;font-size:13px!important;line-height:1.7!important}
.hub-system-footer .footer-territories{display:flex!important;flex-wrap:wrap!important;gap:7px!important}
.hub-system-footer .footer-territories span{display:inline-flex!important;align-items:center!important;min-height:30px!important;padding:6px 9px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:999px!important;background:rgba(255,255,255,.055)!important;color:#dce9e3!important;font-size:10.5px!important}
.hub-system-footer h2{margin:4px 0 16px!important;color:#fff!important;font-size:13px!important;font-weight:850!important;line-height:1.35!important}
.hub-system-footer .footer-grid>div:not(.footer-brand)>a{display:block!important;margin:0 0 10px!important;color:#dce9e3!important;font-size:12px!important;line-height:1.45!important}
.hub-system-footer .footer-grid>div:not(.footer-brand)>a:hover,.hub-system-footer .footer-grid>div:not(.footer-brand)>a:focus-visible{color:#8ce0af!important}
.hub-system-footer .payment-security{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:24px!important;margin:0 auto 30px!important;padding:20px 24px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:16px!important;background:rgba(255,255,255,.055)!important;color:#fff!important}
.hub-system-footer .payment-security-copy,.hub-system-footer .payment-security-note{display:flex!important;align-items:center!important;gap:11px!important}
.hub-system-footer .payment-security-note{justify-self:end!important;text-align:left!important}
.hub-system-footer .payment-security-copy strong,.hub-system-footer .payment-security-note strong{display:block!important;font-size:11.5px!important}
.hub-system-footer .payment-security small{display:block!important;margin-top:3px!important;color:#aebfb7!important;font-size:10px!important}
.hub-system-footer .payment-security-icon{display:grid!important;place-items:center!important;flex:0 0 36px!important;width:36px!important;height:36px!important;border-radius:50%!important;background:rgba(255,255,255,.10)!important;color:#8ce0af!important}
.hub-system-footer .payment-security-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hub-system-footer .payment-methods{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex-wrap:wrap!important}
.hub-system-footer .payment-mark{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:31px!important;padding:6px 10px!important;border-radius:7px!important;background:#fff!important;color:#10261f!important;font-size:9px!important;font-weight:900!important;letter-spacing:.01em!important}
.hub-system-footer .payment-mark-stripe{color:#635bff!important;font-size:13px!important;text-transform:lowercase!important}
.hub-system-footer .footer-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;padding:23px 0 30px!important;border-top:1px solid rgba(255,255,255,.12)!important;color:#aebfb7!important;font-size:10.5px!important}
.hub-system-footer .footer-bottom p{margin:0!important}
.hub-system-footer .footer-bottom nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:13px!important;flex-wrap:wrap!important}
.hub-system-footer .footer-bottom a{color:#cbdad3!important}
.hub-system-footer .footer-bottom a:hover,.hub-system-footer .footer-bottom a:focus-visible{color:#fff!important}
.hub-system-footer .footer-contact-actions{display:grid;gap:8px;margin-top:14px}.hub-system-footer .footer-contact-direct{display:flex!important;align-items:center!important;gap:8px!important;min-height:43px!important;padding:8px 9px!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:10px!important;background:rgba(255,255,255,.05)!important;color:#fff!important}.hub-system-footer .footer-contact-symbol{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:8px;background:rgba(255,255,255,.10)}.hub-system-footer .footer-contact-direct span:last-child{display:grid;min-width:0}.hub-system-footer .footer-contact-direct strong{font-size:10.5px!important}.hub-system-footer .footer-contact-direct small{font-size:9.5px!important;color:#aebfb7!important;overflow-wrap:anywhere}.hub-system-footer .footer-social-title{display:block;margin-top:2px;color:#aebfb7;font-size:9.5px}.hub-system-footer .footer-social-links{display:flex;flex-wrap:wrap;gap:6px}.hub-system-footer .footer-social-links a{display:inline-flex!important;align-items:center!important;min-height:28px!important;padding:5px 8px!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:999px!important;background:rgba(255,255,255,.04)!important;color:#fff!important;font-size:9.5px!important}

@media(max-width:1240px){
  .hub-system-header .header-inner{gap:17px!important}.hub-system-header .brand{width:185px!important}.hub-system-header .main-menu{gap:15px!important}.hub-system-header .main-menu>a,.hub-system-header .nav-parent{font-size:12px!important}.hub-system-header .button{padding-inline:13px!important}.hub-system-footer .footer-grid{grid-template-columns:1.35fr repeat(4,1fr)!important;gap:25px!important}
}
@media(max-width:1080px){
  body.menu-open{overflow:hidden!important}
  .hub-shell{width:min(calc(100% - 30px),var(--hub-shell))}
  .hub-system-header .header-inner{min-height:76px!important;justify-content:space-between!important}.hub-system-header .brand{width:174px!important}.hub-system-header .menu-toggle{display:flex!important;order:3!important}.hub-system-header .header-actions{margin-left:auto!important}.hub-system-header .header-actions .button-primary{display:none!important}
  .hub-system-header .main-menu{position:fixed!important;left:0!important;right:0!important;top:76px!important;bottom:0!important;z-index:1100!important;display:block!important;overflow:auto!important;padding:12px 15px 28px!important;background:linear-gradient(180deg,#f7fbf9 0%,#fff 100%)!important;overscroll-behavior:contain;visibility:hidden!important;opacity:0!important;pointer-events:none!important;transform:translateY(-8px)!important;transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important}
  .hub-system-header .main-menu.is-open{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}
  .hub-system-header .main-menu>a,.hub-system-header .nav-parent{display:flex!important;min-height:0!important;padding:15px 4px!important;border-bottom:1px solid #e7efeb!important;font-size:14px!important;white-space:normal!important}
  .hub-system-header .main-menu>a::after,.hub-system-header .nav-parent::after{display:none!important}
  .hub-system-header .nav-group{display:block!important}
  .hub-system-header .nav-parent::before{display:none!important}
  .hub-system-header .nav-submenu{display:none!important}
  .hub-system-header .main-menu>a,.hub-system-header .nav-parent{min-height:52px!important;margin:6px 0!important;padding:14px 16px!important;border:1px solid #dce9e2!important;border-radius:12px!important;background:#fff!important;color:#18372d!important;font-size:14.5px!important;font-weight:800!important;line-height:1.25!important;box-shadow:0 5px 16px rgba(15,45,35,.035)!important}
  .hub-system-header .main-menu>a:hover,.hub-system-header .main-menu>a:focus-visible,.hub-system-header .nav-parent:hover,.hub-system-header .nav-parent:focus-visible{border-color:#add3bf!important;background:#f1faf5!important;color:var(--hub-green-dark)!important}
  .hub-system-header .main-menu>a.mobile-client-link{display:flex!important;justify-content:center!important;margin-top:12px!important;border-color:#bed7ca!important;color:var(--hub-green-dark)!important}
  .hub-system-header .main-menu>a.mobile-start-link{display:flex!important;justify-content:center!important;min-height:54px!important;margin:8px 0 0!important;border-color:transparent!important;background:linear-gradient(135deg,var(--hub-green),#008f59)!important;color:#fff!important;font-size:15px!important;font-weight:900!important;box-shadow:0 10px 24px rgba(0,122,77,.20)!important}
  .hub-system-header .header-actions .button-client{display:none!important}
  .hub-system-header .menu-toggle[aria-expanded="true"] span:not(.sr-only):nth-child(2){transform:translateY(7px) rotate(45deg)}
  .hub-system-header .menu-toggle[aria-expanded="true"] span:not(.sr-only):nth-child(3){opacity:0}
  .hub-system-header .menu-toggle[aria-expanded="true"] span:not(.sr-only):nth-child(4){transform:translateY(-7px) rotate(-45deg)}
  .hub-system-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hub-system-footer .footer-brand{grid-column:1/-1!important}.hub-system-footer .payment-security{grid-template-columns:1fr!important;gap:15px!important}.hub-system-footer .payment-security-note{justify-self:start!important}.hub-system-footer .payment-methods{justify-content:flex-start!important}.hub-system-footer .footer-bottom{align-items:flex-start!important;flex-direction:column!important}.hub-system-footer .footer-bottom nav{justify-content:flex-start!important}
}
@media(max-width:620px){
  .hub-shell{width:min(calc(100% - 24px),var(--hub-shell))}.hub-system-header .header-inner{min-height:70px!important}.hub-system-header .brand{width:150px!important}.hub-system-header .main-menu{top:70px!important;padding:10px 12px 24px!important}.hub-system-header .menu-toggle{width:44px!important;height:44px!important}.hub-system-footer .footer-grid{grid-template-columns:1fr!important;padding-top:44px!important}.hub-system-footer .footer-brand{grid-column:auto!important}.hub-system-footer .payment-security{padding:17px!important}.hub-system-footer .footer-bottom{padding-bottom:25px!important}
}
@media(prefers-reduced-motion:reduce){.hub-system-header *,.hub-system-footer *{scroll-behavior:auto!important;transition:none!important}}
