.elementor-12 .elementor-element.elementor-element-e2fec45{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* =========================================================
   COMM’WEB HEADER — Clean Premium (Hello + Elementor)
   Une seule version (sans patchs empilés)
   ========================================================= */

:root{
  --cw-ink:#0B1220;
  --cw-blue:#1F3A5F;
  --cw-blue2:#2E5B8C;
  --cw-orange:#FF7A00;
  --cw-orange2:#FF9A3D;

  --cw-border: rgba(15,23,42,.10);
  --cw-shadow: 0 14px 40px rgba(2,8,23,.10);

  --cw-wrap: 1240px;
  --cw-pad: 20px;

  --cw-font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
}

/* Base */
.cw-header{ position: relative; z-index: 999; font-family: var(--cw-font); }
.cw-header__bar{
  position: sticky;
  top: 0;
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--cw-border);
}

/* Admin bar WP */
.admin-bar .cw-header__bar{ top: 32px; }
@media (max-width: 782px){
  .admin-bar .cw-header__bar{ top: 46px; }
}

/* Layout: logo | nav */
.cw-header__wrap{
  max-width: var(--cw-wrap);
  margin: 0 auto;
  padding: 14px var(--cw-pad);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 18px;
}

/* Brand */
.cw-brand{ display:flex; align-items:center; text-decoration:none; }
.cw-brand__logo{
  height: 44px;
  width: auto;
  display:block;
}

/* Burger */
.cw-toggle{ position:absolute; opacity:0; pointer-events:none; }
.cw-burger{
  display:none;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(31,58,95,.14);
  background: rgba(255,255,255,.75);
  box-shadow: var(--cw-shadow);
  cursor:pointer;
  align-items:center;
  justify-content:center;
  gap: 6px;
  flex-direction:column;
}
.cw-burger span{
  width: 18px;
  height: 2px;
  background: rgba(11,18,32,.78);
  border-radius: 99px;
  transition: transform .18s ease, opacity .18s ease;
}

/* Nav desktop: menu + ctas */
.cw-nav{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 16px;
  min-width: 0;
}

.cw-menu{
  list-style:none;
  display:flex;
  align-items:center;
  gap: 6px;
  margin:0;
  padding:0;
  flex-wrap: nowrap;
}

.cw-menu a{
  display:inline-flex;
  align-items:center;
  padding: 10px 12px;
  border-radius: 999px;
  text-decoration:none;
  color: rgba(11,18,32,.86);
  font-weight: 650;
  font-size: 14px;
  letter-spacing: .2px;
  transition: transform .18s ease, background-color .18s ease, color .18s ease;
}
.cw-menu a:hover{
  background: rgba(31,58,95,.08);
  color: var(--cw-blue);
  transform: translateY(-1px);
}

/* CTAs */
.cw-ctas{
  display:flex;
  align-items:center;
  gap: 10px;
  flex: 0 0 auto;
}

/* Badge 2009 */
.cw-badge{
  height: 40px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(31,58,95,.16);
  background:
    radial-gradient(120% 140% at 10% 20%, rgba(255,122,0,.18), transparent 60%),
    radial-gradient(120% 140% at 90% 80%, rgba(46,91,140,.22), transparent 60%),
    rgba(255,255,255,.85);
  box-shadow: 0 12px 34px rgba(2,8,23,.10);
  display:inline-flex;
  align-items:center;
  gap: 8px;
  text-decoration:none;
  color: rgba(11,18,32,.86);
  white-space: nowrap;
  transition: transform .18s ease, box-shadow .18s ease;
}
.cw-badge:hover{ transform: translateY(-1px); box-shadow: 0 16px 40px rgba(2,8,23,.14); }
.cw-badge__k{ font-size: 12px; font-weight: 750; opacity:.78; }
.cw-badge__v{
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .6px;
  padding: 6px 10px;
  border-radius: 999px;
  color:#fff;
  background: linear-gradient(135deg, var(--cw-blue), var(--cw-blue2));
  box-shadow: 0 10px 24px rgba(31,58,95,.22);
}

/* Buttons */
.cw-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 14px;
  text-decoration:none;
  white-space: nowrap;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}
.cw-btn--primary{
  color:#fff;
  background: linear-gradient(135deg, var(--cw-orange), var(--cw-orange2));
  box-shadow: 0 14px 40px rgba(255,122,0,.20);
}
.cw-btn--primary:hover{ transform: translateY(-1px); box-shadow: 0 18px 48px rgba(255,122,0,.26); }
.cw-btn--ghost{
  color: var(--cw-blue);
  background: rgba(31,58,95,.06);
  border: 1px solid rgba(31,58,95,.16);
}
.cw-btn--ghost:hover{ transform: translateY(-1px); background: rgba(31,58,95,.09); }

/* Responsive */
@media (max-width: 980px){
  .cw-header__wrap{
    grid-template-columns: auto auto;
  }

  .cw-burger{
    display:inline-flex;
    justify-self: end;
  }

  .cw-nav{
    position: fixed;
    left: 16px;
    right: 16px;
    top: 76px;
    z-index: 1000;

    display: grid;
    gap: 12px;
    padding: 14px;
    border-radius: 22px;
    border: 1px solid var(--cw-border);
    background: rgba(255,255,255,.92);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: var(--cw-shadow);

    transform: translateY(-6px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
  }

  .cw-menu{
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
  }
  .cw-menu a{
    width: 100%;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(31,58,95,.05);
    justify-content: space-between;
  }

  .cw-ctas{
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .cw-badge, .cw-btn{ width: 100%; }

  /* Open */
  #cw-toggle:checked ~ .cw-nav{
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  #cw-toggle:checked + .cw-burger span:nth-child(1){ transform: translateY(8px) rotate(45deg); }
  #cw-toggle:checked + .cw-burger span:nth-child(2){ opacity: 0; }
  #cw-toggle:checked + .cw-burger span:nth-child(3){ transform: translateY(-8px) rotate(-45deg); }

  /* Admin bar mobile */
  .admin-bar .cw-nav{ top: 122px; }
}
/* =========================================================
   FIX WRAP MENU (desktop) — empêcher les retours à la ligne
   ========================================================= */

/* 1) Empêche les retours à la ligne dans les items du menu */
.cw-menu,
.cw-menu li,
.cw-menu a{
  white-space: nowrap;
}

/* 2) Empêche le wrap du menu + ctas en desktop */
@media (min-width: 981px){
  .cw-nav{ flex-wrap: nowrap; }
  .cw-menu{ flex-wrap: nowrap; }
  .cw-ctas{ flex-wrap: nowrap; }
}

/* 3) Réduit un peu l’espace pour tenir en 1 ligne */
@media (min-width: 981px) and (max-width: 1220px){
  .cw-menu{ gap: 4px; }
  .cw-menu a{ padding: 9px 10px; font-size: 13px; }
  .cw-btn{ height: 38px; padding: 0 12px; font-size: 13px; }
  .cw-badge{ height: 38px; }
}

/* 4) Si ça devient trop serré : on passe en burger plus tôt (évite "cassé") */
@media (max-width: 1220px){
  .cw-header__wrap{ grid-template-columns: auto auto; }
  .cw-burger{ display: inline-flex; justify-self: end; }
  .cw-nav{
    position: fixed;
    left: 16px; right: 16px;
    top: 76px;
    z-index: 1000;
    display: grid;
    gap: 12px;
    padding: 14px;
    border-radius: 22px;
    border: 1px solid var(--cw-border);
    background: rgba(255,255,255,.92);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: var(--cw-shadow);
    transform: translateY(-6px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
  }
  #cw-toggle:checked ~ .cw-nav{
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  .cw-menu{
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
  }
  .cw-menu a{
    width: 100%;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(31,58,95,.05);
    justify-content: space-between;
  }
  .cw-ctas{
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .cw-badge, .cw-btn{ width: 100%; }
}

/* Admin bar (si WP) */
@media (max-width: 1220px){
  .admin-bar .cw-nav{ top: 122px; }
}/* End custom CSS */