.elementor-14059 .elementor-element.elementor-element-7b3c6b8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-14059 .elementor-element.elementor-element-7b3c6b8.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-14059 .elementor-element.elementor-element-7b3c6b8{--width:87.103%;}}/* Start custom CSS for html, class: .elementor-element-c104434 *//* ====== Base ====== */
.cd-labels { 
  --bg: #fafafa;
  --card: #ffffff;
  --text: #0a0a0a;
  --muted: #60646c;
  --border: rgba(0,0,0,.10);
  --soft: rgba(0,0,0,.04);
  --shadow: 0 10px 30px rgba(0,0,0,.06);
  --radius: 24px;
  --max: 1180px;
  --pad: 22px;

  /* Bleu charte */
  --navy: #004f95;

  font-family: inherit;
  color: var(--text);
  background: var(--bg);
  overflow-x: clip;
}
.cd-labels, .cd-labels * { box-sizing: border-box; }
.cd-wrap { max-width: var(--max); margin: 0 auto; padding: 0 var(--pad); }

.cd-h1 { font-size: clamp(32px, 4vw, 52px); line-height: 1.05; letter-spacing: -0.02em; margin: 0 0 10px; }
.cd-h2 { font-size: clamp(22px, 2.3vw, 30px); line-height: 1.15; margin: 0; letter-spacing: -0.01em; }
.cd-lead, .cd-sub { color: var(--muted); }
.cd-lead { max-width: 58ch; font-size: 16px; line-height: 1.6; margin: 0; }
.cd-sub { margin: 8px 0 0; font-size: 14px; line-height: 1.6; }

/* ====== Topbar (vide) ====== */
.cd-topbar{
  position: sticky; top: 0; z-index: 50;
  background: rgba(255,255,255,.85);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--border);
}
.cd-topbar__inner{ padding: 10px var(--pad); min-height: 10px; }

/* ====== Hero ====== */
.cd-hero{ padding: 42px 0 20px; }
.cd-hero__grid{ display:grid; gap: 18px; grid-template-columns: 1fr; }

.cd-logoRow{ display:flex; flex-wrap:wrap; gap:10px; margin-top: 14px; }
.cd-logo{
  padding:10px 12px;
  border-radius:999px;
  border:1px solid var(--border);
  background: rgba(255,255,255,.92);
  font-weight: 900;
  font-size: 12px;
}

/* ====== Sections ====== */
.cd-section{ padding: 34px 0; }
.cd-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:14px; flex-wrap:wrap; }

/* Tabs (fond transparent + texte bleu) */
.cd-tabs{ display:flex; gap:8px; flex-wrap:wrap; }
.cd-tab{
  appearance:none;
  cursor:pointer;
  border: 1px solid var(--border);
  background: transparent;
  padding: 10px 14px;
  border-radius: 18px;
  font-weight: 950;
  font-size: 13px;
  color: var(--navy);
  transition: .2s ease;
}
.cd-tab:hover{
  background: rgba(0,79,149,.06);
  border-color: rgba(0,79,149,.22);
}
.cd-tab.is-active{
  background: rgba(0,79,149,.10);
  border-color: rgba(0,79,149,.28);
  color: var(--navy);
}

/* Pane */
.cd-pane{ margin-top: 18px; }
.cd-pane.is-active{ display:block; }

/* Cards */
.cd-grid{ display:grid; gap:14px; grid-template-columns: repeat(3, 1fr); }
.cd-card{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: 0 1px 0 rgba(0,0,0,.02);
  min-height: 190px;
}
.cd-card__top{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }

/* bloc logo + titres */
.cd-card__id{ display:flex; gap:12px; align-items:flex-start; min-width: 0; }

.cd-card__logo{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border: 1px dashed rgba(0,0,0,.22);
  background: rgba(0,0,0,.02);
  display:flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;
  overflow: hidden;
  color: rgba(0,0,0,.55);
  font-weight: 900;
  font-size: 11px;
}

/* Option B: vignette logo (meilleure lisibilité sur images avec texte) */
.cd-card__logo{
  width: 96px;
  height: 64px;
  border-radius: 16px;
  background: #fff;
}
.cd-card__logo img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display:block;
  padding: 6px;
}

.cd-card__title{
  font-weight: 950;
  font-size: 16px;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 44ch;
}
.cd-card__meta{ margin-top: 3px; font-size: 12px; color: var(--muted); }

.cd-tag{
  font-size: 12px;
  font-weight: 950;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--soft);
  color: var(--text);
  white-space: nowrap;
}

.cd-bullets{
  margin: 14px 0 0;
  padding-left: 18px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

/* Encarts des cartes : bleu ciel semi-transparent (#81d0f5 à 50%) */
.cd-card__body{
  margin-top: 12px;
  background: rgba(129, 208, 245, .5);
  border-radius: 18px;
  padding: 12px;
  color: #3b3f45;
  font-size: 13px;
  line-height: 1.55;
}

.cd-card__footer{ margin-top: 12px; display:flex; justify-content:flex-end; }
.cd-link{ font-weight: 950; font-size: 13px; color: var(--navy); text-decoration: none; }
.cd-link:hover{ text-decoration: underline; }

/* FAQ */
.cd-faq{ margin-top: 14px; display:grid; gap:12px; grid-template-columns: repeat(2,1fr); }
.cd-faq__item{
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: var(--card);
  padding: 16px;
  box-shadow: 0 1px 0 rgba(0,0,0,.02);
}
.cd-faq__q{ cursor:pointer; font-weight: 950; font-size: 14px; }
.cd-faq__a{ margin-top:10px; color: var(--muted); font-size: 13px; line-height: 1.55; }

/* ====== Responsive ====== */
@media (max-width: 980px){
  /* Mobile : centrage inratable (flex) */
  .cd-labels .cd-grid{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
  }
  .cd-labels .cd-card{
    width: 100% !important;
    max-width: 560px !important;
    margin: 0 auto !important;
  }
  .cd-labels .cd-wrap{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Mobile : évite le conflit titre / tag */
  .cd-labels .cd-card__top{
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .cd-labels .cd-tag{
    margin-top: 10px;
  }
  .cd-labels .cd-card__title{
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: 100% !important;
  }

  .cd-tab{ flex: 1 1 auto; }
  .cd-faq{ grid-template-columns: 1fr; }
}
/* === Variante logo PORTRAIT (pour ACSI) === */
.cd-labels .cd-card.is-portrait-logo .cd-card__logo{
  width: 64px !important;
  height: 96px !important;       /* portrait */
  border-radius: 16px !important;
  background: #fff !important;
}
.cd-labels .cd-card.is-portrait-logo .cd-card__logo img{
  padding: 6px !important;
  object-fit: contain !important;
}
.cd-labels .cd-hero__left{
  text-align: center;
}
.cd-labels .cd-lead{
  margin-left: auto;
  margin-right: auto;
}/* End custom CSS */