/* ============================================================
   AM — Page /subvention-topten/  (habillage éditorial am-refonte)
   CSS 100% scopé sous .am-subv → zéro fuite vers Divi / autres pages.
   Le tableau dynamique [am_topten] garde SON propre CSS (plugin am-topten) :
   on n'ajoute ici que l'alignement 1320 + le repli « Afficher les 534 ».
   ============================================================ */

/* ---- Élargir le conteneur Divi UNIQUEMENT sur cette page, SANS toucher au
        hero standard am-hero2 (1re section) : on ne cible que les sections suivantes. ---- */
body.page-id-987525305 #main-content{background:#f4f5f6;}
body.page-id-987525305 .et_pb_section:not(:first-of-type){padding:0 !important;background:#f4f5f6 !important;}
body.page-id-987525305 .et_pb_section:not(:first-of-type) .et_pb_row{max-width:100% !important;width:100% !important;padding:0 !important;margin:0 !important;}
body.page-id-987525305 .et_pb_section:not(:first-of-type) .et_pb_column{width:100% !important;margin:0 !important;padding:0 !important;}
body.page-id-987525305 .et_pb_section:not(:first-of-type) .et_pb_code,
body.page-id-987525305 .et_pb_section:not(:first-of-type) .et_pb_code_inner{margin:0 !important;}

/* ============ TOKENS am-refonte (canoniques) ============ */
.am-subv{
  --ink:#1a1a1a; --ink-2:#33383c; --muted:#6b7075; --muted-2:#8a9099;
  --line:#ececec; --line-2:#f1f2f3; --paper:#ffffff; --wash:#f4f5f6;
  --radius:14px; --radius-btn:15px; --radius-lg:20px; --maxw:1320px;
  --font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  /* Étiquette-énergie officielle EU (labels A-D conservés) */
  --e-a:#009640; --e-b:#52ae32; --e-c:#c8d200; --e-d:#ffed00;
  /* vert fonctionnel "prix net / économie / prime" */
  --save:#0a7d3c; --save-bg:#e9f6ee; --save-line:#bfe3cd;
  --shadow-sm:0 1px 2px rgba(17,19,21,.04);
  --shadow-md:0 6px 24px rgba(17,19,21,.07);
  --shadow-lg:0 18px 50px rgba(17,19,21,.12);
  font-family:var(--font);color:var(--ink);background:var(--wash);
  -webkit-font-smoothing:antialiased;line-height:1.5;
}
.am-subv *{box-sizing:border-box}
.am-subv img{max-width:100%;display:block}
.am-subv h1,.am-subv h2,.am-subv h3{margin:0}
.am-subv p{padding:0;margin:0}

/* ============ COMMUN ============ */
/* Conteneur IDENTIQUE au site (hero + header) : largeur calc(100% - 88px) plafonnée à 1320,
   flush, gouttière 44px/côté à toutes largeurs -> bords alignés au pixel avec les autres pages. */
.am-subv .wrap{width:calc(100% - 88px);max-width:var(--maxw);margin:0 auto;padding:0}
.am-subv .eyebrow{
  font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--save);margin:0 0 12px;display:inline-flex;align-items:center;gap:8px;
}
.am-subv .eyebrow.neutral{color:var(--muted-2)}
.am-subv .lead{font-size:16px;color:var(--ink-2);max-width:64ch;line-height:1.6}
.am-subv .fineprint{font-size:12.5px;color:var(--muted);line-height:1.55}
.am-subv svg.ic{width:22px;height:22px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
.am-subv svg.ic-sm{width:16px;height:16px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* ---------- BOUTONS CANONIQUES am-refonte ---------- */
.am-subv .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:inherit;cursor:pointer;font-weight:700;font-size:16px;line-height:1;
  min-height:52px;padding:16px 30px;border-radius:var(--radius-btn);
  border:1px solid transparent;text-decoration:none;white-space:nowrap;
  transition:transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
}
.am-subv .btn--primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.am-subv .btn--primary:hover{transform:translateY(-1px);background:#000;color:#fff}
.am-subv .btn--ghost{background:transparent;color:var(--ink);border-color:#d3d6d9}
.am-subv .btn--ghost:hover{border-color:var(--ink);color:var(--ink)}
.am-subv .on-dark .btn--primary{background:#fff;color:var(--ink);border-color:#fff}
.am-subv .on-dark .btn--primary:hover{background:#eceded;color:var(--ink)}
.am-subv .on-dark .btn--ghost{color:#fff;border-color:rgba(255,255,255,.5)}
.am-subv .on-dark .btn--ghost:hover{border-color:#fff;color:#fff}

/* badge classe énergie (labels A-D conservés) */
.am-subv .eb{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;
  border-radius:7px;font-weight:800;font-size:14px;color:#fff;flex:none;box-shadow:var(--shadow-sm)}
.am-subv .eb.a{background:var(--e-a)} .am-subv .eb.b{background:var(--e-b)}
.am-subv .eb.c{background:var(--e-c);color:#3a3400} .am-subv .eb.d{background:var(--e-d);color:#3a3400}

/* pastille prime verte (fonctionnel économie) */
.am-subv .prime{display:inline-flex;align-items:center;gap:6px;font-weight:750;color:var(--save);
  background:var(--save-bg);border:1px solid var(--save-line);padding:5px 11px;border-radius:999px;font-size:13.5px;white-space:nowrap}

/* prix barré -> net */
.am-subv .price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.am-subv .price .was{color:var(--muted);text-decoration:line-through;font-size:15px}
.am-subv .price .net{font-size:23px;font-weight:800;letter-spacing:-.01em}
.am-subv .price .cur{font-size:13px;font-weight:600;color:var(--muted);margin-left:2px}

/* carte produit "coup de cœur" */
.am-subv .deal{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.am-subv .deal:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:#d8dbde}
.am-subv .deal .thumb{
  aspect-ratio:4/3;background:radial-gradient(120% 90% at 50% 15%, #fff 0%, #f2f4f6 60%, #eaedf0 100%);
  display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid var(--line-2)}
.am-subv .deal .thumb .ph{color:#c2c7cc;width:64px;height:64px;stroke-width:1.2}
.am-subv .deal .thumb .flag{position:absolute;top:12px;left:12px;background:var(--save);color:#fff;
  font-weight:750;font-size:12px;padding:5px 10px;border-radius:999px;box-shadow:var(--shadow-sm)}
.am-subv .deal .thumb .cls{position:absolute;top:12px;right:12px}
.am-subv .deal .body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.am-subv .deal .brand{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.am-subv .deal .model{font-size:15.5px;font-weight:650;line-height:1.3;color:var(--ink)}
.am-subv .deal .foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap}

/* mini échelle de prime */
.am-subv .ladder{display:flex;flex-direction:column;gap:8px}
.am-subv .ladder .rung{display:flex;align-items:center;gap:12px}
.am-subv .ladder .bar{height:38px;border-radius:8px;display:flex;align-items:center;padding:0 14px;
  color:#fff;font-weight:800;box-shadow:var(--shadow-sm);position:relative;
  clip-path:polygon(0 0, calc(100% - 16px) 0, 100% 50%, calc(100% - 16px) 100%, 0 100%)}
.am-subv .ladder .bar.d{clip-path:none;border-radius:8px}
.am-subv .ladder .r-a .bar{background:var(--e-a);width:150px}
.am-subv .ladder .r-b .bar{background:var(--e-b);width:170px}
.am-subv .ladder .r-c .bar{background:var(--e-c);color:#3a3400;width:190px}
.am-subv .ladder .r-d .bar{background:#eef0f2;color:var(--muted);width:150px;box-shadow:none;border:1px solid var(--line)}
.am-subv .ladder .amt{font-weight:800;font-size:17px;letter-spacing:-.01em}
.am-subv .ladder .amt small{font-weight:600;color:var(--muted);font-size:12.5px;margin-left:4px}
.am-subv .ladder .amt.none{color:var(--muted);font-weight:600;font-size:14px}

/* étapes */
.am-subv .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.am-subv .step{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  padding:26px 24px;position:relative;box-shadow:var(--shadow-sm)}
.am-subv .step .n{width:34px;height:34px;border-radius:999px;background:var(--ink);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:750;font-size:15px;margin-bottom:16px}
.am-subv .step .icn{position:absolute;top:24px;right:24px;color:var(--muted-2)}
.am-subv .step h3{font-size:16.5px;font-weight:650;margin-bottom:7px}
.am-subv .step p{margin:0;font-size:14px;color:var(--ink-2);line-height:1.55}

/* bandeau chiffres */
.am-subv .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.am-subv .stat{padding:6px 26px;text-align:center}
.am-subv .stat + .stat{border-left:1px solid var(--line)}
.am-subv .stat .big{font-size:40px;font-weight:800;letter-spacing:-.02em;line-height:1}
.am-subv .stat .lbl{margin-top:8px;font-size:13.5px;color:var(--muted)}
.am-subv .stat .big .u{font-size:22px;font-weight:700;color:var(--muted-2)}

section.block, .am-subv section.block{padding:44px 0}
.am-subv .concept{background:var(--wash);padding-bottom:30px}

/* ---------- HERO : Éditorial économie ---------- */
.am-subv .c1-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:52px 52px;box-shadow:var(--shadow-md);position:relative;overflow:hidden}
.am-subv .c1-hero h1{font-size:44px;line-height:1.06;font-weight:750;letter-spacing:-.02em;margin-bottom:18px}
.am-subv .c1-hero h1 .hl{color:var(--save)}
/* Bande éditoriale sous le hero standard : titre = PRINCIPE (finance->déduction),
   volontairement plus petit que le H1 du hero pour ne pas dupliquer le titre. */
.am-subv .c1-hero h2{font-size:33px;line-height:1.12;font-weight:750;letter-spacing:-.02em;margin-bottom:16px}
.am-subv .c1-hero h2 .hl{color:var(--save)}
@media (max-width:960px){.am-subv .c1-hero h2{font-size:26px}}
.am-subv .btn-stack{display:inline-flex;flex-direction:column;gap:12px;align-items:stretch}
.am-subv .btn-stack .btn{width:100%}
.am-subv .cta-end{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
@media (max-width:520px){.am-subv .cta-end{flex-direction:column}.am-subv .cta-end .btn{width:100%}}
.am-subv .c1-hero .cta{margin-top:26px}
.am-subv .c1-money{background:linear-gradient(160deg,#101315,#20262b);border-radius:var(--radius);
  padding:34px 34px;color:#fff;box-shadow:var(--shadow-lg)}
.am-subv .c1-money .k{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#8b949c;font-weight:700;margin-bottom:12px}
.am-subv .c1-money .big{font-size:66px;font-weight:800;letter-spacing:-.03em;line-height:1;color:#fff}
.am-subv .c1-money .big .cur{font-size:26px;color:#9aa4ac;font-weight:700;margin-left:6px}
.am-subv .c1-money .sub{color:#aeb6bd;font-size:14px;margin:10px 0 24px}
.am-subv .c1-money .ladder .amt,.am-subv .c1-money .ladder .amt small{color:#e7ebee}
.am-subv .c1-money .ladder .r-d .bar{background:#2a3137;color:#9aa4ac;border-color:#3a424a}
.am-subv .c1-statband{background:var(--ink);border-radius:var(--radius);padding:34px 20px;color:#fff}
.am-subv .c1-statband .stat + .stat{border-left:1px solid #2a3137}
.am-subv .c1-statband .stat .lbl{color:#9aa4ac}
.am-subv .c1-statband .stat .big .u{color:#7f8992}

.am-subv .scroller{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.am-subv .sec-head{margin-bottom:24px}
.am-subv .sec-head h2{font-size:28px;font-weight:720;letter-spacing:-.01em;margin-bottom:8px}
.am-subv .sec-head p{margin:0;color:var(--muted);font-size:15px;line-height:1.55}

/* ---------- Tableau dynamique [am_topten] : alignement + repli ---------- */
.am-subv .am-tt-wrap{margin:0}

/* En-tête de colonnes plus propre (scopé page subvention) :
   - retire le filet noir au-dessus (border-bottom de l'en-tête catégorie)
   - barre d'en-tête noire à coins arrondis (radius am-refonte)
   - segment vert SUBVENTION + labels + alignement conservés */
.am-subv .am-tt-cat-hdr{border-bottom:0 !important;padding-bottom:12px}
.am-subv .am-tt-cat-block{border:0 !important}
.am-subv .am-tt-tw{border-top:0 !important;border-radius:12px}
.am-subv .am-tt-tbl thead th:first-child{border-top-left-radius:12px}
.am-subv .am-tt-tbl thead th:last-child{border-top-right-radius:12px}
.am-subv-cats{position:relative}
.am-subv-cats.am-subv-collapsed{max-height:760px;overflow:hidden}
.am-subv-cats.am-subv-collapsed::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;
  background:linear-gradient(180deg,rgba(244,245,246,0),#f4f5f6 90%);pointer-events:none}
.am-subv-tablefoot{margin-top:16px}
.am-subv-toggle{width:100%;justify-content:space-between}
.am-subv-toggle .chev{flex:none;transition:transform .25s ease}
.am-subv-toggle[aria-expanded="true"] .chev{transform:rotate(180deg)}

/* ---------- FAQ : accordéon am-refonte PLEINE LARGEUR (flush-left 1320) ---------- */
.am-subv .faq{border-top:1px solid var(--line)}
.am-subv .faq details{border-bottom:1px solid var(--line)}
.am-subv .faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
  gap:24px;padding:27px 2px;font-size:18.5px;font-weight:600;color:var(--ink);line-height:1.35;transition:color .15s ease}
.am-subv .faq summary:hover{color:#000}
.am-subv .faq summary::-webkit-details-marker{display:none}
.am-subv .faq summary .fq-ic{flex:0 0 auto;width:24px;height:24px;position:relative}
.am-subv .faq summary .fq-ic::before,.am-subv .faq summary .fq-ic::after{content:"";position:absolute;top:50%;left:50%;
  width:13px;height:1.7px;background:var(--ink);transform:translate(-50%,-50%);transition:transform .28s cubic-bezier(.22,.61,.36,1)}
.am-subv .faq summary .fq-ic::after{transform:translate(-50%,-50%) rotate(90deg)}
.am-subv .faq details[open] summary .fq-ic::after{transform:translate(-50%,-50%) rotate(0deg)}
.am-subv .faq details p{margin:0 0 30px;padding-right:56px;font-size:16px;color:#3a3f45;line-height:1.68;max-width:none}

.am-subv .note{margin-top:18px;padding:14px 16px;border-radius:12px;background:var(--save-bg);
  border:1px solid var(--save-line);font-size:13px;color:#155e35;display:flex;gap:10px;align-items:flex-start}
.am-subv .note svg{flex:none;margin-top:1px}

@media (max-width:960px){
  .am-subv .c1-hero{grid-template-columns:1fr;padding:36px 30px;gap:32px}
  .am-subv .c1-hero h1{font-size:30px}
  .am-subv .scroller{grid-template-columns:1fr 1fr}
  .am-subv .steps{grid-template-columns:1fr}
  .am-subv .stats{grid-template-columns:1fr}
  .am-subv .stat + .stat{border-left:none;border-top:1px solid var(--line);padding-top:20px;margin-top:16px}
  .am-subv .c1-statband .stat + .stat{border-top-color:#2a3137}
  .am-subv .faq summary{font-size:16.5px}
}
@media (max-width:600px){
  /* Les libellés de boutons sont longs : on autorise le retour à la ligne
     (le nowrap canonique forcerait un débordement horizontal du hero). */
  .am-subv .btn{white-space:normal;text-align:center;line-height:1.28;padding:15px 22px}
}
@media (max-width:560px){
  .am-subv .scroller{grid-template-columns:1fr}
  .am-subv .c1-money .big{font-size:54px}
}
@media (prefers-reduced-motion:reduce){
  .am-subv *{animation:none !important;transition:none !important}
}
