/* ============================================================
   Crinex Dental — chrome du site (header + footer) & page d'accueil
   Repris de la maquette (design_handoff : base.css / catalog.css).
   Tokens : voir assets/tokens.css (chargé via style.css).
   ============================================================ */

/* Lien d'évitement (a11y) : masqué sauf au focus clavier. */
.screen-reader-text{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.screen-reader-text:focus{ position:fixed !important; top:10px; left:10px; width:auto; height:auto; clip:auto; padding:10px 16px; background:var(--surface); color:var(--accent-d); border-radius:8px; box-shadow:var(--shadow-m); z-index:100; }

/* ============================================================
   HEADER (sticky, logo + nav + compte + panier)
   ============================================================ */
.crinex-hd{
  position:sticky; top:0; z-index:40;
  background:color-mix(in oklab, var(--surface) 88%, transparent);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.crinex-hd-inner{
  max-width:var(--maxw); margin:0 auto; padding:12px 24px;
  display:flex; align-items:center; gap:22px;
}
.crinex-logo{ display:inline-flex; align-items:center; flex:none; }
.crinex-logo-svg{ height:34px; width:auto; display:block; }
.crinex-nav{ display:flex; align-items:center; gap:24px; margin-inline:auto; }
.crinex-nav a{ font-size:14.5px; font-weight:600; color:var(--ink-2); text-decoration:none; transition:color .14s; }
.crinex-nav a:hover{ color:var(--accent); }
.crinex-hd-right{ display:flex; align-items:center; gap:14px; flex:none; }

.crinex-account{ display:flex; align-items:center; gap:9px; text-decoration:none; padding-right:14px; border-right:1px solid var(--line); }
.crinex-avatar{ width:34px; height:34px; border-radius:50%; background:var(--accent-t); color:var(--accent-d); display:grid; place-items:center; flex:none; }
.crinex-avatar svg{ width:17px; height:17px; }
.crinex-account-txt{ display:flex; flex-direction:column; line-height:1.15; }
.crinex-account-txt b{ font-size:13.5px; font-weight:700; color:var(--ink); }
.crinex-account-txt i{ font-size:11.5px; font-style:normal; color:var(--muted); }

.crinex-cart{
  position:relative; display:flex; align-items:center; gap:10px; text-decoration:none;
  background:var(--accent); color:#fff; border-radius:calc(var(--radius) * .7);
  padding:8px 14px 8px 12px; box-shadow:0 4px 12px color-mix(in oklab, var(--accent) 30%, transparent);
  transition:background .15s;
}
.crinex-cart:hover{ background:var(--accent-d); color:#fff; }
.crinex-cart-ic{ position:relative; display:grid; place-items:center; }
.crinex-cart-ic svg{ width:20px; height:20px; }
.crinex-cart-badge{
  position:absolute; top:-8px; right:-9px; min-width:18px; height:18px; padding:0 4px; box-sizing:border-box;
  background:#fff; color:var(--accent-d); border-radius:999px;
  font-size:11px; font-weight:800; line-height:18px; text-align:center;
}
.crinex-cart-badge[hidden]{ display:none; }
.crinex-cart-txt{ display:flex; flex-direction:column; align-items:flex-start; line-height:1.1; }
.crinex-cart-label{ font-size:11px; opacity:.85; }
.crinex-cart-amt{ font-size:14px; font-weight:700; font-variant-numeric:tabular-nums; }
.crinex-cart-amt .amount{ color:#fff; }

/* ============================================================
   FOOTER (teal foncé)
   ============================================================ */
.crinex-ft{ background:linear-gradient(180deg, #0a2c35, #07232b); color:#c5dee4; margin-top:56px; }
.crinex-ft-inner{
  max-width:var(--maxw); margin:0 auto; padding:48px 24px 32px;
  display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:32px;
}
.crinex-ft-brand .crinex-logo-svg{ height:30px; }
.crinex-ft-brand p{ font-size:13.5px; line-height:1.6; color:#8fb4bd; max-width:36ch; margin:14px 0 0; }
.crinex-ft-col h4{ font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:#6fd6e8; margin:0 0 14px; }
.crinex-ft-col a, .crinex-ft-col span{ display:block; font-size:13.5px; color:#b3d2d9; text-decoration:none; margin-bottom:9px; }
.crinex-ft-col a:hover{ color:#fff; }
.crinex-ft-bar{
  border-top:1px solid #143b45; max-width:var(--maxw); margin:0 auto; padding:16px 24px;
  display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; font-size:12.5px; color:#6f99a3;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:980px){
  .crinex-ft-inner{ grid-template-columns:1fr 1fr; gap:28px; }
  .crinex-ft-brand{ grid-column:1 / -1; }
}
@media (max-width:860px){
  .crinex-nav{ display:none; }
  .crinex-account-txt{ display:none; }
  .crinex-account{ padding-right:10px; }
}
@media (max-width:640px){
  .crinex-hd-inner{ padding:10px 16px; gap:12px; }
  .crinex-ft-inner{ grid-template-columns:1fr 1fr; gap:22px; padding:36px 16px 26px; }
  .crinex-ft-bar{ padding:16px; }
}
@media (max-width:420px){
  .crinex-account{ display:none; }
  .crinex-ft-inner{ grid-template-columns:1fr; }
}

/* ============================================================
   Compte (shortcode [crinex_account]) — variante sans séparateur
   ============================================================ */
.crinex-account--bare{ border-right:0; padding-right:0; }

/* ============================================================
   Panier Elementor (bouton header + tiroir « side-cart ») — couleurs Crinex
   ============================================================ */
/* Bouton panier du header (Menu Cart toggle) : cyan, comme la maquette. */
.elementor-menu-cart__toggle .elementor-button{
  background:var(--accent)!important; color:#fff!important; border:1px solid var(--accent)!important;
  border-radius:calc(var(--radius) * .7)!important; box-shadow:0 4px 12px color-mix(in oklab, var(--accent) 28%, transparent)!important;
}
.elementor-menu-cart__toggle .elementor-button:hover{ background:var(--accent-d)!important; border-color:var(--accent-d)!important; }
.elementor-menu-cart__toggle .elementor-button *,
.elementor-menu-cart__toggle .elementor-button .woocommerce-Price-amount{ color:#fff!important; }

/* Tiroir (off-canvas) : nom produit en encre + hover cyan. */
.elementor-menu-cart__product-name a{ color:var(--ink); font-weight:700; text-decoration:none; }
.elementor-menu-cart__product-name a:hover{ color:var(--accent-d); }
/* Sous-total : valeur en accent. */
.elementor-menu-cart__subtotal{ font-weight:700; color:var(--ink); }
.elementor-menu-cart__subtotal .woocommerce-Price-amount,
.elementor-menu-cart__subtotal strong{ color:var(--accent-d)!important; }
/* Boutons : « Commander » = cyan plein ; « Voir le panier » = secondaire bordé. */
.elementor-menu-cart__footer-buttons .elementor-button--checkout{
  background:var(--accent)!important; color:#fff!important; border:1px solid var(--accent)!important;
  border-radius:10px!important; font-weight:700!important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout:hover{ background:var(--accent-d)!important; border-color:var(--accent-d)!important; }
.elementor-menu-cart__footer-buttons .elementor-button--view-cart{
  background:var(--surface)!important; color:var(--ink)!important; border:1px solid var(--line)!important;
  border-radius:10px!important; font-weight:700!important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover{ border-color:var(--accent)!important; color:var(--accent-d)!important; }
/* Croix de fermeture : hover cyan. */
.elementor-menu-cart__close-button:hover{ color:var(--accent-d); }
/* Quantité/retrait : accent discret. */
.elementor-menu-cart__product .remove:hover{ color:var(--accent-d)!important; }

/* ----- Éléments injectés dans le tiroir (en-tête, franco, mention 30j) ----- */
.crinex-mc-head{ display:flex; align-items:center; gap:9px; font-size:18px; font-weight:800; color:var(--ink); letter-spacing:-.01em; margin:0 0 14px; }
.crinex-mc-head svg{ width:20px; height:20px; color:var(--accent-d); }
.crinex-mc-franco{ display:flex; gap:10px; align-items:flex-start; background:var(--surface-2); border:1px solid var(--line); border-radius:12px; padding:12px 14px; margin:0 0 16px; }
.crinex-mc-franco svg{ width:18px; height:18px; color:var(--accent-d); flex:none; margin-top:2px; }
.crinex-mc-franco-in{ flex:1; min-width:0; }
.crinex-mc-franco-txt{ font-size:13px; color:var(--ink-2); margin-bottom:7px; }
.crinex-mc-franco-txt b{ color:var(--ink); font-weight:700; }
.crinex-mc-bar{ height:6px; background:var(--line); border-radius:999px; overflow:hidden; }
.crinex-mc-bar span{ display:block; height:100%; width:0; background:var(--accent); border-radius:999px; transition:width .35s ease; }
.crinex-mc-franco.is-reached svg{ color:var(--free-text, #1F9E5A); }
.crinex-mc-franco.is-reached .crinex-mc-bar span{ background:var(--free-text, #1F9E5A); }
/* Chaque ligne produit en carte (comme la maquette). */
.elementor-menu-cart__products .elementor-menu-cart__product,
.woocommerce-mini-cart .elementor-menu-cart__product{
  border:1px solid var(--line)!important; border-radius:12px; padding:12px 14px!important; margin-bottom:10px!important;
}
.crinex-mc-note{ display:flex; align-items:center; justify-content:center; gap:6px; font-size:12px; color:var(--muted); margin:2px 0 12px; text-align:center; }
.crinex-mc-note svg{ width:14px; height:14px; color:var(--accent-d); flex:none; }

/* Tiroir plus LARGE : on élargit le PANNEAU (.elementor-menu-cart__main), PAS l'overlay
   (.elementor-menu-cart__container) — sinon l'overlay se réduit et le panneau part à gauche. */
.elementor-menu-cart__main{ width:min(460px, 94vw)!important; }
.elementor-menu-cart__product .elementor-menu-cart__product-name a{ font-size:15px; }
/* Croix de suppression : en haut à droite, avec marge. C'est le WRAPPER
   .elementor-menu-cart__product-remove qui est le parent de positionnement -> on le déplace. */
.elementor-menu-cart__product{ position:relative; padding-right:44px!important; }
.elementor-menu-cart__product .elementor-menu-cart__product-remove,
.elementor-menu-cart__product .product-remove{
  position:absolute!important; top:10px!important; right:10px!important; bottom:auto!important; left:auto!important; margin:0!important;
}
.elementor-menu-cart__product .remove_from_cart_button,
.elementor-menu-cart__product .elementor_remove_from_cart_button{
  position:absolute!important; top:0!important; right:0!important; bottom:auto!important; left:auto!important; margin:0!important;
}
.elementor-menu-cart__product .quantity{ color:var(--ink-2)!important; font-weight:600!important; font-size:14px!important; opacity:1!important; }
.elementor-menu-cart__product .quantity .woocommerce-Price-amount,
.elementor-menu-cart__product .quantity bdi{ color:var(--ink)!important; font-weight:700!important; }
/* Remise active : prix barré (del) discret, prix réduit (ins) en accent, texte verbeux masqué. */
.elementor-menu-cart__product del,
.elementor-menu-cart__product del bdi,
.elementor-menu-cart__product del .woocommerce-Price-amount{ color:var(--muted)!important; font-weight:400!important; text-decoration:line-through; }
.elementor-menu-cart__product ins,
.elementor-menu-cart__product ins bdi,
.elementor-menu-cart__product ins .woocommerce-Price-amount{ color:var(--accent-d)!important; font-weight:700!important; text-decoration:none; }
.elementor-menu-cart__product .screen-reader-text,
.woocommerce-mini-cart .screen-reader-text{ position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

/* Fond du tiroir légèrement bleuté -> les cartes blanches ressortent (comme la maquette). */
.elementor-menu-cart__main{ background:var(--bg)!important; }
.elementor-menu-cart__products{ background:transparent!important; }
.crinex-mc-franco{ background:var(--surface)!important; }

/* Cartes produit plus COMPACTES (≈ ÷1,7) : image plus petite + cadrée, marges réduites. */
.elementor-menu-cart__product{
  background:var(--surface)!important; padding:9px 12px!important; margin-bottom:8px!important;
}
.elementor-menu-cart__product img{
  width:58px!important; height:58px!important; object-fit:contain!important; flex:none!important;
  border:1px solid var(--line); border-radius:8px; background:#fff; padding:4px; box-sizing:border-box;
  mix-blend-mode:multiply;
}
.elementor-menu-cart__product .elementor-menu-cart__product-name{ margin:0 0 3px!important; }
.elementor-menu-cart__product .elementor-menu-cart__product-name a{ font-size:13.5px!important; line-height:1.3!important; }
.elementor-menu-cart__product .quantity{ font-size:13px!important; margin:0!important; }
/* La croix reste calée sur le wrapper en haut-droite (cartes plus basses). */
.elementor-menu-cart__product .elementor-menu-cart__product-remove,
.elementor-menu-cart__product .product-remove{ top:8px!important; right:8px!important; }

/* Indicateur de paliers de remise (tiroir + panier). */
.crinex-tiers{ margin:0 0 14px; display:flex; flex-direction:column; gap:7px; }
.crinex-tier-row{ display:flex; align-items:center; gap:8px; font-size:12.5px; color:var(--ink-2); background:var(--accent-t); border-radius:9px; padding:8px 11px; line-height:1.35; }
.crinex-tier-row svg{ width:15px; height:15px; color:var(--accent-d); flex:none; }
.crinex-tier-row b{ color:var(--accent-d); font-weight:700; }
.crinex-tier-row.is-max{ background:#E7F6EE; }
.crinex-tier-row.is-max svg, .crinex-tier-row.is-max b{ color:#1F9E5A; }

/* Toast « palier de remise débloqué » */
.crinex-toast{ position:fixed; right:22px; bottom:22px; z-index:9999; display:flex; align-items:center; gap:11px;
  max-width:350px; background:#fff; border:1px solid var(--line); border-left:4px solid #1F9E5A; border-radius:12px;
  padding:14px 18px; box-shadow:0 14px 36px rgba(17,39,47,.18); font-size:13.5px; line-height:1.4; color:var(--ink);
  transform:translateY(22px); opacity:0; transition:transform .35s ease, opacity .35s ease; }
.crinex-toast.is-in{ transform:translateY(0); opacity:1; }
.crinex-toast svg{ width:22px; height:22px; color:#1F9E5A; flex:none; }
.crinex-toast b{ color:var(--accent-d); font-weight:800; }
@media (max-width:640px){ .crinex-toast{ left:16px; right:16px; bottom:16px; max-width:none; } }

/* ============================================================
   Pages d'informations (mentions légales, CGV, conditions B2B,
   livraison & retours, confidentialité) — respiration verticale
   entre le header et le footer (textes collés sinon).
   ============================================================ */
body.page-id-233 main.site-main, body.page-id-234 main.site-main,
body.page-id-235 main.site-main, body.page-id-236 main.site-main,
body.page-id-237 main.site-main{
  padding-top:46px!important; padding-bottom:84px!important;
}
body.page-id-233 .page-header, body.page-id-234 .page-header,
body.page-id-235 .page-header, body.page-id-236 .page-header,
body.page-id-237 .page-header{
  margin:0 0 26px!important; padding-bottom:18px; border-bottom:1px solid var(--line);
}
@media (max-width:640px){
  body.page-id-233 main.site-main, body.page-id-234 main.site-main,
  body.page-id-235 main.site-main, body.page-id-236 main.site-main,
  body.page-id-237 main.site-main{ padding-top:30px!important; padding-bottom:56px!important; }
}

/* ============================================================
   Section Offres — accordéon dépliable sur 2 colonnes (accueil)
   Markup injecté via un widget HTML Elementor (#offres).
   ============================================================ */
.crx-off-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start; }
.crx-off-item{ background:var(--surface); border:1px solid var(--line); border-radius:16px; overflow:hidden; transition:box-shadow .25s, border-color .25s; }
.crx-off-item--vitis{ --c:#4C7FB8; --c-d:#2E5685; --c-t:#EAF0F7; }
.crx-off-item--interprox{ --c:#7C9A12; --c-d:#5C6E0C; --c-t:#F1F4E2; }
.crx-off-item--phb{ --c:#2C93C4; --c-d:#1E6E8E; --c-t:#E4F1F8; }
.crx-off-item[open]{ box-shadow:0 22px 44px -30px rgba(13,45,72,.4); border-color:color-mix(in oklab, var(--c) 30%, var(--line)); }
.crx-off-head{ list-style:none; cursor:pointer; display:flex; align-items:center; gap:14px; padding:16px 18px; position:relative; }
.crx-off-head::-webkit-details-marker{ display:none; }
.crx-off-head::before{ content:""; position:absolute; left:0; top:13px; bottom:13px; width:4px; border-radius:4px; background:var(--c); }
.crx-off-dot{ width:11px; height:11px; border-radius:50%; background:var(--c); flex:none; box-shadow:0 0 0 4px var(--c-t); }
.crx-off-name{ font-size:16px; font-weight:800; letter-spacing:-.01em; color:var(--ink); line-height:1.2; }
.crx-off-sub{ font-size:12px; color:var(--muted); margin-top:1px; }
.crx-off-sp{ flex:1; }
.crx-off-badge{ font-size:12px; font-weight:700; color:var(--c-d); background:var(--c-t); padding:5px 12px; border-radius:999px; white-space:nowrap; }
.crx-off-chev{ width:9px; height:9px; border-right:2.5px solid var(--muted); border-bottom:2.5px solid var(--muted); transform:rotate(45deg); transition:transform .3s; flex:none; margin:-4px 3px 0 0; }
.crx-off-item[open] .crx-off-chev{ transform:rotate(-135deg); margin-top:2px; }
.crx-off-body{ padding:0 18px 16px; }
.crx-off-row{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:9px 12px; border-radius:9px; }
.crx-off-row:nth-child(even){ background:var(--surface-2); }
.crx-off-q{ font-size:13.5px; color:var(--ink-2); }
.crx-off-v{ font-size:14px; font-weight:800; color:var(--c-d); letter-spacing:-.01em; white-space:nowrap; }
.crx-off-v small{ font-weight:600; color:var(--muted); font-size:11.5px; }
.crx-off-row.max{ background:linear-gradient(90deg, var(--c-t), transparent); }
.crx-off-row.max .crx-off-q{ font-weight:700; color:var(--ink); }
@media (max-width:782px){ .crx-off-grid{ grid-template-columns:1fr; } }

/* ============================================================
   Bandeau cookies Complianz — habillage Crinex Dental
   ============================================================ */
.cmplz-cookiebanner{
  font-family:'Hanken Grotesk',system-ui,-apple-system,sans-serif!important;
  border-radius:16px!important; border:1px solid var(--line)!important;
  box-shadow:0 24px 60px -24px rgba(13,45,72,.4)!important;
}
.cmplz-cookiebanner .cmplz-title{ color:var(--ink)!important; font-weight:800!important; letter-spacing:-.01em; }
.cmplz-cookiebanner .cmplz-body, .cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-category .cmplz-description{ color:var(--ink-2)!important; }
/* Boutons */
.cmplz-cookiebanner .cmplz-btn{ border-radius:10px!important; font-weight:700!important; transition:background .15s, border-color .15s, color .15s; }
.cmplz-cookiebanner .cmplz-btn.cmplz-accept{ background:var(--accent)!important; color:#fff!important; border:1px solid var(--accent)!important; }
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover{ background:var(--accent-d)!important; border-color:var(--accent-d)!important; }
.cmplz-cookiebanner .cmplz-btn.cmplz-deny{ background:var(--surface)!important; color:var(--accent-d)!important; border:1px solid var(--accent)!important; }
.cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover{ background:var(--accent-t)!important; }
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences,
.cmplz-cookiebanner .cmplz-btn.cmplz-manage-options{ background:var(--surface-2)!important; color:var(--ink-2)!important; border:1px solid var(--line)!important; }
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences:hover{ border-color:var(--accent)!important; color:var(--accent-d)!important; }
/* Liens politiques + croix */
.cmplz-cookiebanner .cmplz-links a, .cmplz-cookiebanner .cmplz-link{ color:var(--accent-d)!important; font-weight:600; }
.cmplz-cookiebanner .cmplz-close:hover{ color:var(--accent-d)!important; }
/* Interrupteurs des catégories (préférences) : actif = accent */
.cmplz-cookiebanner input:checked + .cmplz-label .cmplz-slider,
.cmplz-cookiebanner .cmplz-category input:checked ~ .cmplz-slider,
.cmplz-cookiebanner .cmplz-slider:before{ }
.cmplz-cookiebanner input:checked + .cmplz-slider,
.cmplz-cookiebanner .cmplz-banner-checkbox input:checked + .cmplz-label .cmplz-slider{ background-color:var(--accent)!important; }
/* Onglet flottant « Gérer le consentement » (après consentement) */
.cmplz-manage-consent.banner-status, .cmplz-cookiebanner-tab,
button.cmplz-manage-consent{ background:var(--accent)!important; color:#fff!important; border-radius:10px 10px 0 0!important; font-weight:700; }

/* ============================================================
   Offres — accordéon ÉDITABLE (widget « nested-accordion »), rendu = option B
   En-tête riche (puce + nom + sous-titre + pastille) via HTML dans le titre.
   ============================================================ */
.crx-offres-acc .e-n-accordion{ display:grid!important; grid-template-columns:1fr 1fr; gap:14px; align-items:start; }
.crx-offres-acc .e-n-accordion-item{ background:var(--surface)!important; border:1px solid var(--line)!important; border-radius:16px!important; overflow:hidden; transition:box-shadow .25s,border-color .25s; }
.crx-offres-acc .e-n-accordion-item:nth-of-type(1),
.crx-offres-acc .e-n-accordion-item:nth-of-type(2),
.crx-offres-acc .e-n-accordion-item:nth-of-type(3){ --c:#4C7FB8; --c-d:#2E5685; --c-t:#EAF0F7; }
.crx-offres-acc .e-n-accordion-item:nth-of-type(4){ --c:#7C9A12; --c-d:#5C6E0C; --c-t:#F1F4E2; }
.crx-offres-acc .e-n-accordion-item:nth-of-type(5),
.crx-offres-acc .e-n-accordion-item:nth-of-type(6){ --c:#2C93C4; --c-d:#1E6E8E; --c-t:#E4F1F8; }
.crx-offres-acc .e-n-accordion-item[open]{ box-shadow:0 22px 44px -30px rgba(13,45,72,.4); border-color:color-mix(in oklab,var(--c) 30%,var(--line))!important; }
/* En-tête : barre couleur de marque + summary pleine largeur */
.crx-offres-acc .e-n-accordion-item-title{ position:relative; padding:15px 18px 15px 22px!important; gap:12px; }
.crx-offres-acc .e-n-accordion-item-title::before{ content:""; position:absolute; left:6px; top:14px; bottom:14px; width:4px; border-radius:4px; background:var(--c); }
.crx-offres-acc .e-n-accordion-item-title-header{ flex:1 1 auto; min-width:0; }
.crx-offres-acc .e-n-accordion-item-title-text{ display:block!important; width:100%; margin:0!important; font-weight:400!important; }
/* En-tête custom (puce + nom + sous-titre + pastille) */
.crx-offres-acc .crx-h{ display:flex; align-items:center; gap:13px; width:100%; }
.crx-offres-acc .crx-h-dot{ width:11px; height:11px; border-radius:50%; background:var(--c); flex:none; box-shadow:0 0 0 4px var(--c-t); }
.crx-offres-acc .crx-h-txt{ display:flex; flex-direction:column; min-width:0; }
.crx-offres-acc .crx-h-name{ font-size:16px; font-weight:800; letter-spacing:-.01em; color:var(--ink); line-height:1.2; }
.crx-offres-acc .crx-h-sub{ font-size:12px; color:var(--muted); margin-top:1px; }
.crx-offres-acc .crx-h-badge{ margin-left:auto; font-size:12px; font-weight:700; color:var(--c-d); background:var(--c-t); padding:5px 12px; border-radius:999px; white-space:nowrap; }
/* Chevron (icône du widget) — placé À DROITE, après la pastille */
.crx-offres-acc .e-n-accordion-item-title{ flex-direction:row!important; }
.crx-offres-acc .e-n-accordion-item-title-icon{ color:var(--muted)!important; order:9!important; margin:0 0 0 12px!important; }
.crx-offres-acc .e-n-accordion-item-title-icon svg{ width:15px; height:15px; }
.crx-offres-acc .e-n-accordion-item-title-icon i{ font-size:14px; }
/* Corps : tableau des paliers */
.crx-offres-acc .e-n-accordion-item > .e-con{ padding:0 12px 12px!important; }
.crx-offres-acc .crx-tiers{ width:100%; border-collapse:collapse; margin:0; }
.crx-offres-acc .crx-tiers td{ padding:9px 12px; font-size:13.5px; color:var(--ink-2); border:0; }
.crx-offres-acc .crx-tiers td.crx-v{ text-align:right; font-weight:800; color:var(--c-d); white-space:nowrap; }
.crx-offres-acc .crx-tiers tr:nth-child(even){ background:var(--surface-2); }
.crx-offres-acc .crx-tiers tr.crx-max{ background:linear-gradient(90deg,var(--c-t),transparent); }
.crx-offres-acc .crx-tiers tr.crx-max td:first-child{ font-weight:700; color:var(--ink); }
@media (max-width:782px){ .crx-offres-acc .e-n-accordion{ grid-template-columns:1fr; } }
