/* Encart "meilleur taux" (iframe partenaires) - refonte Accord 2026. Lisible de 300 a 900 px. */
:root {
	--acw-nuit: #16283A; --acw-ardoise: #435E79; --acw-ambre: #F3AC4B; --acw-ambre-fonce: #C97B14; --acw-ambre-clair: #FDF4E6;
	--acw-encre: #14202C; --acw-texte: #4A5868; --acw-gris: #7B8794; --acw-ligne: #E3E8EE; --acw-fond: #F3F6F9;
	--acw-police: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
}
*, *:before, *:after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body.acw { background: #fff; font-family: var(--acw-police); color: var(--acw-texte); line-height: 1.45; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
.acw h2, .acw p, .acw ul { margin: 0; padding: 0; }
.acw ul { list-style: none; }

.acw-in { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 12px; }
.acw-titre { font-size: 17px; font-weight: 800; letter-spacing: -.01em; line-height: 1.2; color: var(--acw-encre); margin-bottom: 10px !important; }

/* carte du reseau */
.acw-carte { padding: 14px; border-radius: var(--ac-r-max, 7px); background: var(--acw-fond); display: flex; flex-direction: column; align-items: center; text-align: center; min-width: 0; }
.acw-map { width: 100%; max-width: 230px; }
.acw-map svg { display: block; width: 100% !important; height: auto !important; max-height: 240px; overflow: visible; }
.acw-map svg path { fill: var(--acw-ardoise) !important; stroke: #fff !important; stroke-width: .8 !important; transition: fill .15s ease; }
.acw-map svg a:hover path, .acw-map svg a:focus path { fill: var(--acw-ambre) !important; }
.acw-map svg text { fill: #fff; font-family: var(--acw-police); }
.acw-btn { display: inline-flex; align-items: center; justify-content: center; margin-top: 12px; min-height: 40px; padding: 8px 16px; border-radius: 6px; background: var(--acw-ambre); color: var(--acw-nuit); font-weight: 700; font-size: 14px; line-height: 1.2; text-decoration: none; }
.acw-btn:hover { background: #f6b863; }

/* taux par duree */
.acw-taux { min-width: 0; }
.acw-grille { display: grid; grid-template-columns: repeat(auto-fill, minmax(128px, 1fr)); gap: 8px; }
.acw-taux-carte { padding: 12px; border-radius: var(--ac-r-max, 7px); border: 1px solid var(--acw-ligne); background: #fff; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.acw-duree { font-size: 13.5px; font-weight: 700; color: var(--acw-nuit); padding-bottom: 6px; border-bottom: 1px solid var(--acw-ligne); }
.acw-bas, .acw-haut { display: flex; flex-direction: column; }
.acw-bas strong { font-size: 24px; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; color: var(--acw-nuit); white-space: nowrap; }
.acw-haut strong { font-size: 16px; font-weight: 700; line-height: 1.2; color: var(--acw-ardoise); white-space: nowrap; }
.acw-bas span, .acw-haut span { font-size: 12px; color: var(--acw-gris); }
.acw-bas span { color: var(--acw-ambre-fonce); font-weight: 700; }
.acw-evo { display: grid; gap: 3px; margin-top: auto !important; padding-top: 6px !important; border-top: 1px dashed var(--acw-ligne); }
.acw-evo li { display: flex; align-items: flex-start; gap: 5px; font-size: 11.5px; line-height: 1.3; color: var(--acw-texte); }
.acw-evo i { flex: none; width: 15px; height: 15px; border-radius: 4px; display: grid; place-items: center; font-style: normal; font-weight: 800; font-size: 11px; line-height: 1; background: var(--acw-fond); color: var(--acw-ardoise); }
.acw-evo-down i { background: var(--acw-ambre-clair); color: var(--acw-ambre-fonce); }

/* moins de 800 px : bandeau carte compact + une ligne par duree (aucune carte orpheline) */
@media (max-width: 799px) {
	.acw-carte { display: grid; grid-template-columns: 150px minmax(0, 1fr); grid-template-areas: "map titre" "map btn"; align-items: center; column-gap: 16px; text-align: left; padding: 12px 14px; }
	.acw-carte .acw-titre { grid-area: titre; align-self: end; margin-bottom: 0 !important; }
	.acw-map { grid-area: map; max-width: 150px; }
	.acw-map svg { max-height: 120px; }
	.acw-btn { grid-area: btn; align-self: start; justify-self: start; margin-top: 10px; }
	.acw-grille { grid-template-columns: minmax(0, 1fr); gap: 6px; }
	.acw-taux-carte { display: grid; grid-template-columns: minmax(96px, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(150px, 1.3fr); align-items: center; column-gap: 12px; padding: 10px 12px; }
	.acw-duree { border: 0; padding: 0; }
	.acw-bas strong { font-size: 20px; }
	.acw-evo { margin: 0 !important; padding: 0 0 0 12px !important; border-top: 0; border-left: 1px dashed var(--acw-ligne); }
}
@media (max-width: 479px) {
	.acw-in { padding: 10px; gap: 10px; }
	.acw-carte { grid-template-columns: 110px minmax(0, 1fr); column-gap: 12px; }
	.acw-map { max-width: 110px; }
	.acw-titre { font-size: 16px; }
	.acw-btn { font-size: 13px; padding: 8px 12px; min-height: 36px; }
	.acw-taux-carte { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 1fr); row-gap: 8px; column-gap: 8px; }
	.acw-duree { font-size: 13px; }
	.acw-bas strong { font-size: 18px; }
	.acw-haut strong { font-size: 15px; }
	.acw-evo { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; gap: 8px; padding: 8px 0 0 !important; border-left: 0; border-top: 1px dashed var(--acw-ligne); }
}
/* 800 px et plus : carte a gauche, 5 cartes de taux sur une ligne */
@media (min-width: 800px) {
	.acw-in { grid-template-columns: 200px minmax(0, 1fr); align-items: start; gap: 14px; padding: 14px; }
	.acw-carte { padding: 12px; }
	.acw-carte .acw-titre { font-size: 15.5px; margin-bottom: 6px !important; }
	.acw-map svg { max-height: 132px; }
	.acw-btn { margin-top: 8px; width: 100%; min-height: 38px; font-size: 13.5px; }
	.acw-grille { grid-template-columns: repeat(auto-fit, minmax(112px, 1fr)); }
	.acw-taux-carte { padding: 10px; }
	.acw-duree { font-size: 13px; white-space: nowrap; }
}
