/* Composants des contenus existants (bloc-maillage, automat-*, geo-box…), repris du thème enfant BeTheme.
   Nettoyé automatiquement : sélecteurs propres à BeTheme et !important retirés. Généré le 01/10/2026. */
.txblanc {color:#fff;}
.violet {color:#8100e8;}
.noir {color:#000;}
.txpt {font-size:13px; line-height:15px;}
.blanc {color:#fff;}
.majuscule-pt {display: block;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #8100e8;
    margin-bottom: 0.9rem;}
.gros-chiffre {font-size:30px; color:fff; text-align:right;}
.btn-violet,
.btn-violet:hover {display: inline-block;  background:#8100e8; color: #fff; padding: 0.55rem 1.3rem;  border-radius: 3px; font-size: 0.82rem;
font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; text-decoration: none; transition: background 0.2s;}
.btn-blanc {display: inline-block; border: 1.5px solid #000; color: #000; padding:  0.55rem 1.3rem; border-radius: 3px; font-size:0.82rem; font-weight: 600;
    letter-spacing: 0.06em; text-transform: uppercase; text-decoration: none; transition: all 0.2s;}
.geo-box {background:#fcfcfc; border-left: 2px solid #8100e8; padding: .95rem 1.3rem; margin-bottom: 1.8rem;}
.check-list {list-style: none; margin-top: 12px;}
.check-list li {display: flex; gap: 8px; align-items: center; font-size: .8rem; color: #444; padding: 4px 0;}
.check-list li::before {content: "✓"; color: #8100e8; font-weight: 700; flex-shrink: 0;}
.bloc-maillage,
.bloc-maillage * {float:none;box-sizing:border-box}
.bloc-maillage a,
.bloc-maillage a:hover,
.bloc-maillage a:visited,
.bloc-maillage a:focus {text-decoration:none;outline:none}
.bloc-maillage br {display:none}
.bloc-maillage {padding:24px;border-top:3px solid #534AB7;background:#f7f7f5;border-radius:0 0 8px 8px;margin:2rem 0 0 0;width:100%;clear:both;overflow:hidden}
.bloc-maillage .bm-section {margin:0 0 14px 0;padding:0;width:100%;clear:both}
.bloc-maillage .bm-section:last-child {margin-bottom:0}
.bloc-maillage .bm-label {font-size:11px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;margin:0 0 10px 0;padding:0;line-height:1.4}
.bloc-maillage .label-glossaire {color:#0F6E56}
.bloc-maillage .label-articles {color:#378ADD}
.bloc-maillage .label-piliers {color:#BA7517}
.bloc-maillage .bm-cards {display:grid;gap:10px;width:100%;margin:0;padding:0;list-style:none}
.bloc-maillage .bm-cards-3 {grid-template-columns:repeat(3,1fr)}
.bloc-maillage .bm-cards-2 {grid-template-columns:repeat(2,1fr)}
@media (max-width:768px) {
.bloc-maillage .bm-cards-3,
.bloc-maillage .bm-cards-2 {grid-template-columns:1fr}
}
.bloc-maillage a.bm-card {background:#fff;border:1px solid #e0dfd9;border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;transition:border-color .2s,transform .15s;width:auto;margin:0;color:inherit}
.bloc-maillage a.bm-card:hover {transform:translateY(-2px)}
.bloc-maillage a.type-glossaire:hover {border-color:#0F6E56}
.bloc-maillage a.type-article:hover {border-color:#378ADD}
.bloc-maillage .bm-badge {font-size:9px;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;padding:2px 7px;border-radius:3px;display:inline-block;line-height:1.6;margin:0 0 2px 0;width:auto}
.bloc-maillage .badge-glossaire {background:#E1F5EE;color:#085041}
.bloc-maillage .badge-article {background:#E6F1FB;color:#0C447C}
.bloc-maillage .bm-card-title,
.bloc-maillage .bm-card-title * {font-size:13px;font-weight:600;color:#2C2C2A;line-height:1.4;margin:0;padding:0}
.bloc-maillage .bm-card-desc {font-size:11.5px;color:#5F5E5A;line-height:1.4;margin:0;padding:0}
.bloc-maillage .bm-divider {height:1px;background:#e0dfd9;margin:14px 0;padding:0;width:100%;clear:both;border:none}
.bloc-maillage a.bm-pilier-card {display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e0dfd9;border-radius:8px;padding:10px 14px;transition:border-color .2s,transform .15s;width:auto;margin:0;color:inherit}
.bloc-maillage a.bm-pilier-card:hover {border-color:#BA7517;transform:translateY(-1px)}
.bloc-maillage .bm-pilier-icon {font-size:20px;color:#BA7517;flex-shrink:0;width:36px;height:36px;min-width:36px;border-radius:8px;background:#FAEEDA;display:flex;align-items:center;justify-content:center}
.bloc-maillage .bm-pilier-content {flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.bloc-maillage .bm-pilier-title {font-size:13px;font-weight:600;color:#2C2C2A;line-height:1.4;margin:0}
.bloc-maillage .bm-pilier-desc {font-size:11px;color:#5F5E5A;line-height:1.3;margin:0}
.bloc-maillage a.bm-cta-link {display:flex;align-items:center;gap:10px;background:#EEEDFE;border:1px solid #534AB7;border-radius:8px;padding:11px 16px;transition:background .2s;width:100%;color:inherit}
.bloc-maillage a.bm-cta-link:hover {background:#534AB7}
.bloc-maillage a.bm-cta-link:hover .bm-cta-text,
.bloc-maillage a.bm-cta-link:hover .bm-cta-arrow {color:#fff}
.bloc-maillage .bm-cta-text {font-size:13px;font-weight:600;color:#3C3489;flex:1;margin:0}
.bloc-maillage .bm-cta-arrow {font-size:18px;color:#534AB7}
.automat-article {max-width: 780px;
  margin: 0 auto;
  padding: 0 20px;
  font-family: inherit;
  font-size: 14px;
  line-height: 24px;
  color: #1a1a1a;}
.automat-article h2 {color: #3a3a3a;
  font-size: 26px;
  line-height: 1.3;
  font-weight: 700;
  margin: 4em 0 0.7em;
  padding-bottom: 0.4em;
  border-bottom: 2px solid #8100e8;
  letter-spacing: -0.3px;}
.automat-article h3 {font-size: 19px;
  line-height: 1.35;
  font-weight: 600;
  color: #2d2d2d;
  margin: 2.5em 0 0.7em;}
.automat-article p {margin-bottom: 1.2em;}
.automat-article .automat-2col {display: flex;
  gap: 0;
  margin: 1.5em 0;
  align-items: flex-start;}
.automat-article .automat-2col > div {flex: 1;
  min-width: 0;
  padding: 0 2em;
  border-right: 1px solid #ddd;}
.automat-article .automat-2col > div:first-child {padding-left: 0;}
.automat-article .automat-2col > div:last-child {border-right: none;
  padding-right: 0;}
.automat-article .automat-chapeau {font-size: 15px;
  line-height: 1.65;
  color: #333;
  border-left: 3px solid #8100e8;
  padding-left: 1.2em;
  margin-bottom: 2em;}
.automat-article .automat-toc {background: #f4f4f4;
  border-radius: 6px;
  padding: 3em 2.5em;
  margin-bottom: 3em;}
.automat-article .automat-toc ul {list-style: none;
  padding: 0;
  margin: 0;
  columns: 2;
  column-gap: 2em;}
.automat-article .automat-toc li {padding: 0.55em 0;
  font-size: 13px;
  line-height: 1.6;
  break-inside: avoid;
  margin-bottom: 0;}
.automat-article .automat-toc a {color: #333;
  text-decoration: none;
  border-bottom: 1px dotted #999;}
.automat-article .automat-toc a:hover {color: #8100e8;
  border-bottom-color: #8100e8;}
.automat-article .automat-card {background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 1.3em 1.5em;
  margin: 1.5em 0;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);}
.automat-article .automat-card-inline {display: flex;
  align-items: baseline;
  gap: 0.8em;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 1em 1.3em;
  margin: 0.7em 0;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);}
.automat-article .automat-card-inline .card-label {font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: #8100e8;
  white-space: nowrap;
  flex-shrink: 0;}
.automat-article .automat-card-inline .card-text {font-size: 14px;
  line-height: 1.6;
  color: #333;}
.automat-article .automat-card-header {font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #8100e8;
  margin-bottom: 0.8em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #f0f0f0;}
.automat-article .automat-flat {background: #f4f4f4;
  border-radius: 6px;
  padding: 1.3em 1.5em;
  margin: 1.5em 0;}
.automat-article .automat-keyfigures {display: flex;
  flex-direction: row;
  gap: 1em;
  margin: 2em 0;}
.automat-article .automat-keyfigure {flex: 1;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 1em 0.8em;
  text-align: center;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);}
.automat-article .automat-keyfigure .num {font-size: 22px;
  font-weight: 700;
  color: #8100e8;
  display: block;
  margin-bottom: 0.25em;
  line-height: 1.2;}
.automat-article .automat-keyfigure .label {font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: #666;
  line-height: 1.4;}
.automat-article table {width: 100%;
  border-collapse: collapse;
  margin: 2em 0;
  font-size: 13px;
  line-height: 1.5;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  overflow: hidden;}
.automat-article caption {font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: #555;
  text-align: left;
  padding: 0 0 0.6em;}
.automat-article thead th {background: #2d2d2d;
  color: #8100e8;
  padding: 10px 14px;
  text-align: left;
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;}
.automat-article tbody td {padding: 10px 14px;
  border-bottom: 1px solid #eee;
  vertical-align: top;
  text-align: left;}
.automat-article tbody td:first-child {font-weight: 500;}
.automat-article tbody tr:nth-child(even) {background: #fafafa;}
.automat-article tbody tr:hover {background: #f4f4f4;}
.automat-article ul,
.automat-article ol {margin-bottom: 1.2em;
  padding-left: 1.3em;}
.automat-article li {margin-bottom: 0.4em;
  line-height: 1.6;}
.automat-article code {background: #f4f0fa;
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 0.88em;
  color: #8100e8;
  font-family: "SF Mono", "Consolas", monospace;}
.automat-article .automat-part-separator {margin: 3.5em 0 2em;
  padding: 1em 1.5em;
  background: #2d2d2d;
  color: #fff;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 0.8em;}
.automat-article .automat-part-separator .part-icon {font-size: 22px;}
.automat-article .automat-part-separator .part-label {font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #c9a0ff;
  font-weight: 700;}
.automat-article .automat-part-separator .part-title {font-size: 18px;
  font-weight: 600;}
.automat-article .automat-checklist {list-style: none;
  padding-left: 0;
  margin-left: 0;
  counter-reset: check;}
.automat-article .automat-checklist li {counter-increment: check;
  padding: 0.7em 0 0.7em 2.5em;
  position: relative;
  border-bottom: 1px solid #f0f0f0;
  list-style-type: none;}
.automat-article .automat-checklist li::before {content: counter(check, decimal-leading-zero);
  position: absolute;
  left: 0;
  font-size: 14px;
  font-weight: 700;
  color: #8100e8;
  width: 2em;
  text-align: center;}
.automat-article .automat-checklist li::marker {content: none;
  display: none;}
.automat-article a {color: #8100e8;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-bottom-color 0.2s;}
.automat-article a:hover {border-bottom-color: #8100e8;}
.automat-article .automat-signature {margin-top: 3em;
  padding-top: 1.5em;
  border-top: 1px solid #e0e0e0;
  font-size: 12px;
  color: #888;
  font-style: italic;}
@media (max-width: 768px) {
.automat-article {padding: 0 15px;}
.automat-article h2 {font-size: 22px;}
.automat-article h3 {font-size: 17px;}
.automat-article .automat-toc ul {columns: 1;}
.automat-article .automat-keyfigures {flex-direction: column;}
.automat-article table {font-size: 12px;}
.automat-article thead th,
.automat-article tbody td {padding: 8px 10px;}
.automat-article .automat-card-inline {flex-direction: column; gap: 0.3em;}
.automat-article .automat-2col {flex-direction: column; gap: 1em;}
}
.automat-article h2 {margin: 2em 0 0.7em;}
