.kld-header{background:var(--kld-color-background);border-bottom:1px solid color-mix(in srgb,var(--kld-color-text) 12%,transparent);position:relative;z-index:20}.kld-header--sticky{position:sticky;top:0}.admin-bar .kld-header--sticky{top:32px}.kld-header--transparent{background:transparent}.kld-header__inner{align-items:center;display:flex;gap:2rem;justify-content:space-between;min-height:76px}.kld-brand a{color:var(--kld-color-text);font-weight:800;text-decoration:none}.kld-header nav{display:flex;align-items:center;gap:1.5rem}.kld-header nav ul{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}.kld-menu-toggle{display:none}.kld-header--centered .kld-header__inner{flex-direction:column;gap:.8rem;padding-block:1rem}.kld-topbar{background:var(--kld-color-secondary);color:#fff;padding:.5rem 0}

/* Modèle préconstruit : barre flottante et toujours visible. */
.kld-header.kld-header--floating{--kld-floating-menu-top:94px;position:sticky;top:18px;z-index:100;width:min(1240px,calc(100% - 36px));margin:18px auto 0;background:#fff;border:0;border-radius:20px;box-shadow:0 12px 35px rgb(15 23 42 / 12%)}
.admin-bar .kld-header.kld-header--floating{--kld-floating-menu-top:126px;top:50px}
.kld-header--floating .kld-header__inner{min-height:76px;padding:12px 14px 12px 20px;gap:24px}
.kld-header--floating .kld-brand{margin-right:auto;min-width:0}
.kld-header--floating .kld-brand img{display:block;max-width:min(250px,32vw);max-height:48px;width:auto}
.kld-header--floating .kld-brand a{color:var(--kld-color-secondary)}
.kld-header--floating nav ul{align-items:center;gap:4px}
.kld-header--floating nav a{display:block;padding:14px 13px;border-radius:12px;color:var(--kld-color-text);font-weight:600;text-decoration:none}
.kld-header--floating nav .current-menu-item>a,.kld-header--floating nav .current_page_item>a,.kld-header--floating nav a:hover,.kld-header--floating nav a:focus-visible{background:var(--kld-color-background-alt);color:var(--kld-color-secondary)}
.kld-header--floating .kld-header__cta{align-items:center;gap:14px;min-height:50px;padding:14px 18px;border-radius:14px;background:var(--kld-color-secondary);color:#fff;white-space:nowrap}
.kld-header--floating .kld-header__cta::after{content:'↗';color:var(--kld-color-accent);font-weight:700}
/* Menu control styles are breakpoint-independent so tablet and mobile share one component. */
.kld-menu-toggle{align-items:center;justify-content:center;gap:9px;min-width:82px;min-height:46px;padding:0 13px;border:1px solid #dbe3ed;border-radius:12px;background:#101827;color:#fff;font-family:inherit;font-size:14px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 3px 10px rgb(16 24 39 / 12%);transition:background-color .18s ease,border-color .18s ease,transform .18s ease}
.kld-menu-toggle:hover{background:#1a2940;border-color:#b9c8d9}
.kld-menu-toggle:active{transform:scale(.97)}
.kld-menu-toggle:focus-visible{outline:3px solid #46c3d2;outline-offset:3px}
.kld-menu-toggle__icon{display:inline-flex;width:18px;height:14px;flex-direction:column;justify-content:space-between}
.kld-menu-toggle__icon i{display:block;width:18px;height:2px;border-radius:2px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
.kld-menu-toggle[aria-expanded="true"] .kld-menu-toggle__icon i:first-child{transform:translateY(6px) rotate(45deg)}
.kld-menu-toggle[aria-expanded="true"] .kld-menu-toggle__icon i:nth-child(2){opacity:0}
.kld-menu-toggle[aria-expanded="true"] .kld-menu-toggle__icon i:last-child{transform:translateY(-6px) rotate(-45deg)}
.kld-menu-toggle__label{white-space:nowrap}

@media(max-width:600px){.kld-header.kld-header--floating{--kld-floating-menu-top:78px;top:10px;width:calc(100% - 20px);margin-top:10px;border-radius:16px}.admin-bar .kld-header.kld-header--floating{--kld-floating-menu-top:124px;top:56px}.kld-header--floating .kld-header__inner{gap:12px;min-height:68px;padding:10px 14px}.kld-header--floating .kld-brand img{max-width:min(160px,45vw);max-height:42px}}

@media(max-width:600px){
  .kld-header__inner{gap:10px;min-width:0}
  .kld-brand{flex:1 1 auto;min-width:0;overflow:hidden}
  .kld-brand a{display:flex;align-items:center;min-width:0;max-width:100%;overflow:hidden}
  .kld-brand img{display:block;flex:0 0 42px;width:42px;height:42px;max-width:52px;max-height:42px;object-fit:contain;object-position:center}
}


/* Keep nested WordPress menu items hidden until their parent is hovered/focused. */
.kld-header nav ul.menu{align-items:center;flex-wrap:nowrap;white-space:nowrap}
.kld-header nav .menu-item-has-children{position:relative}
.kld-header nav ul.sub-menu{position:absolute;top:100%;left:0;z-index:110;display:none;min-width:230px;flex-direction:column;align-items:stretch;gap:2px;padding:8px;border:1px solid rgb(15 23 42 / 10%);border-radius:14px;background:#fff;box-shadow:0 16px 35px rgb(15 23 42 / 16%);white-space:normal}
.kld-header nav ul.sub-menu .sub-menu{top:0;left:100%}
.kld-header nav .menu-item-has-children:hover>ul.sub-menu,.kld-header nav .menu-item-has-children:focus-within>ul.sub-menu{display:flex}
.kld-header--floating nav ul.sub-menu a{padding:11px 12px;color:var(--kld-color-secondary)}
.kld-header--floating nav ul.sub-menu a:hover,.kld-header--floating nav ul.sub-menu a:focus-visible{background:var(--kld-color-background-alt);color:var(--kld-color-secondary)}
@media(max-width:1200px){.kld-header nav.is-open ul.sub-menu{position:static;display:grid;min-width:0;padding:0 0 0 1rem;border:0;border-radius:0;background:transparent;box-shadow:none}}

.kld-header.kld-header--floating{margin-bottom:-94px}
@media(max-width:1200px){.kld-header.kld-header--floating{margin-bottom:-86px}}
@media(max-width:600px){.kld-header.kld-header--floating{margin-bottom:-78px}}
