/* Blocs d'information des vitrines (includes/infos.php) : large choix, marques, dimension, FAQ.
   Mise en page sobre (filets, typographie), habillée par thème plus bas (.avt-ib--<thème>). */

.avt-ib { --ib-acc:var(--avt-couleur, #bf4040); --ib-encre:#1d1c1a; --ib-gris:#62605b; --ib-ligne:#e2dfda; --ib-fond:#f5f4f1;
  --ib-titre:inherit; --ib-mono:'JetBrains Mono', ui-monospace, monospace; --ib-rayon:4px; color:var(--ib-encre); }
.avt-ib * { box-sizing:border-box; }
.avt-ib h2 { font-family:var(--ib-titre); font-size:clamp(26px, 3vw, 36px); line-height:1.12; font-weight:800; letter-spacing:-.015em; margin:0; color:var(--ib-encre); }
.avt-ib p { margin:0; }
.avt-ib a { color:inherit; }
.avt-ib-in { max-width:1280px; margin:0 auto; padding:0 40px; }
.avt-ib-sec { padding:clamp(52px, 6vw, 80px) 0; }
.avt-ib-choix { background:var(--ib-fond); }
.avt-ib-aide { border-top:1px solid var(--ib-ligne); }
.avt-ib-tete { max-width:760px; margin-bottom:34px; display:flex; flex-direction:column; gap:10px; }
.avt-ib-sur { font-size:12.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--ib-acc); }

/* Chiffres */
.avt-ib-chiffres { display:flex; flex-wrap:wrap; gap:8px 0; margin-top:10px !important; color:var(--ib-gris); font-size:15px; }
.avt-ib-chiffres span { padding:0 22px; border-left:1px solid var(--ib-ligne); }
.avt-ib-chiffres span:first-child { padding-left:0; border-left:0; }
.avt-ib-chiffres b { display:block; font-family:var(--ib-titre); font-size:clamp(26px, 3vw, 34px); line-height:1.1; color:var(--ib-encre); font-weight:800; font-variant-numeric:tabular-nums; }

/* Usages : colonnes séparées par un filet, sans cartes */
.avt-ib-usages { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:0 28px; }
.avt-ib-usage { margin:0; }
.avt-ib-usage > a, .avt-ib-usage > div { display:flex; flex-direction:column; gap:8px; height:100%; padding-top:16px; border-top:3px solid var(--ib-encre); text-decoration:none; transition:border-color .15s; }
.avt-ib-usage > a:hover { border-top-color:var(--ib-acc); }
.avt-ib-usage b { font-family:var(--ib-titre); font-size:19px; }
.avt-ib-usage span { font-size:14px; line-height:1.55; color:var(--ib-gris); }
.avt-ib-usage small { margin-top:auto; padding-top:6px; font-size:13px; font-weight:700; color:var(--ib-acc); font-variant-numeric:tabular-nums; }

/* Marques */
.avt-ib-logos { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(128px, 1fr)); border-top:1px solid var(--ib-ligne); border-left:1px solid var(--ib-ligne); }
.avt-ib-logos li { margin:0; height:84px; display:flex; align-items:center; justify-content:center; padding:14px; border-right:1px solid var(--ib-ligne); border-bottom:1px solid var(--ib-ligne); background:#fff; }
.avt-ib-logos img { max-width:100%; max-height:34px; width:auto; height:auto; object-fit:contain; filter:grayscale(1); opacity:.75; transition:filter .2s, opacity .2s; }
.avt-ib-logos li:hover img { filter:none; opacity:1; }
.avt-ib-logos span { font-weight:800; font-size:14px; letter-spacing:.03em; text-transform:uppercase; color:var(--ib-gris); text-align:center; }

/* Dimension + FAQ */
.avt-ib-deux { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:64px; align-items:start; }
.avt-ib-dim-bloc, .avt-ib-faq-bloc { display:flex; flex-direction:column; gap:10px; }
.avt-ib-dim-grand { font-family:var(--ib-titre); font-size:clamp(46px, 6.4vw, 80px); line-height:1; font-weight:800; letter-spacing:-.02em; margin:18px 0 22px !important; white-space:nowrap; font-variant-numeric:tabular-nums; }
.avt-ib-dim-grand i { font-style:normal; color:#b9b6b0; }
.avt-ib-acc { color:var(--ib-acc); }
.avt-ib-dim { margin:0; display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:18px 28px; }
.avt-ib-dim > div { display:flex; gap:12px; border-top:2px solid var(--ib-encre); padding-top:10px; }
.avt-ib-dim dt { font-family:var(--ib-titre); font-size:20px; font-weight:800; min-width:40px; }
.avt-ib-dim dd { margin:0; font-size:14px; line-height:1.5; color:var(--ib-gris); }
.avt-ib-note { margin-top:18px !important; font-size:14.5px; color:var(--ib-gris); }
.avt-ib-faq { margin-top:8px; border-top:1px solid var(--ib-ligne); }
.avt-ib-faq details { border-bottom:1px solid var(--ib-ligne); }
.avt-ib-faq summary { list-style:none; cursor:pointer; padding:17px 34px 17px 0; position:relative; font-weight:700; font-size:16px; line-height:1.4; }
.avt-ib-faq summary::-webkit-details-marker { display:none; }
.avt-ib-faq summary::after { content:'+'; position:absolute; right:4px; top:50%; transform:translateY(-50%); font-size:22px; font-weight:400; color:var(--ib-acc); }
.avt-ib-faq details[open] summary::after { content:'–'; }
.avt-ib-faq details > div { padding:0 0 18px; font-size:15px; line-height:1.65; color:var(--ib-gris); }
.avt-ib-faq details > div a { color:var(--ib-acc); font-weight:700; }

@media (max-width:1100px) {
  .avt-ib-usages { grid-template-columns:repeat(3, minmax(0, 1fr)); gap:28px; }
}
@media (max-width:860px) {
  .avt-ib-deux { grid-template-columns:1fr; gap:48px; }
}
@media (max-width:640px) {
  .avt-ib-in { padding:0 20px; }
  .avt-ib-usages { grid-template-columns:1fr 1fr; gap:24px 18px; }
  .avt-ib-chiffres span { padding:0 14px; }
  .avt-ib-logos { grid-template-columns:repeat(3, minmax(0, 1fr)); }
  .avt-ib-logos li { height:68px; padding:10px; }
  .avt-ib-dim { grid-template-columns:1fr; }
}

/* ---------------- Habillage par thème ---------------- */
.avt-ib--classique { --ib-encre:#15181d; --ib-gris:#5b6470; --ib-ligne:#e6e8ec; --ib-fond:#f5f6f8; }
.avt-ib--atelier { --ib-titre:'Archivo', Helvetica, Arial, sans-serif; --ib-encre:#1c1b19; --ib-gris:#6b6862; --ib-ligne:#e6e3de; --ib-fond:#f7f6f4; }
.avt-ib--atelier .avt-ib-in { max-width:var(--atl-wrap, 1280px); }
.avt-ib--comptoir { --ib-titre:'Instrument Sans', Helvetica, Arial, sans-serif; --ib-encre:#1c1b19; --ib-gris:#6b6862; --ib-ligne:#ebe8e3; --ib-fond:#fbfaf8; }
.avt-ib--comptoir h2 { font-weight:700; letter-spacing:-.02em; }
.avt-ib--comptoir .avt-ib-logos { border:0; gap:10px; }
.avt-ib--comptoir .avt-ib-logos li { border:1px solid var(--ib-ligne); border-radius:12px; }
.avt-ib--fiche-technique { --ib-titre:'IBM Plex Sans', Helvetica, Arial, sans-serif; --ib-encre:#15171a; --ib-gris:#6a6e75; --ib-ligne:#d5d7da; --ib-fond:#f5f6f7; }
.avt-ib--fiche-technique .avt-ib-in { max-width:none; padding-left:clamp(20px, 2.2vw, 32px); padding-right:clamp(20px, 2.2vw, 32px); }
.avt-ib--fiche-technique .avt-ib-sur, .avt-ib--fiche-technique .avt-ib-usage small, .avt-ib--fiche-technique .avt-ib-dim dt, .avt-ib--fiche-technique .avt-ib-dim-grand { font-family:'IBM Plex Mono', monospace; font-weight:500; }
.avt-ib--fiche-technique .avt-ib-sur::before { content:'// '; color:var(--ib-gris); }
.avt-ib--fiche-technique .avt-ib-dim-grand { font-weight:600; letter-spacing:-.04em; }
.avt-ib--signaletique { --ib-titre:'Barlow Condensed', 'Barlow', sans-serif; --ib-encre:#1c1b19; --ib-gris:#6b6862; --ib-ligne:#e3e0db; --ib-fond:#f4f3f1; }
.avt-ib--signaletique h2, .avt-ib--signaletique .avt-ib-usage b, .avt-ib--signaletique .avt-ib-faq summary { text-transform:uppercase; letter-spacing:.01em; }
.avt-ib--signaletique h2 { font-weight:700; font-size:clamp(30px, 3.4vw, 42px); }
.avt-ib--signaletique .avt-ib-faq summary { font-family:var(--ib-titre); font-size:18px; font-weight:600; }
.avt-ib--signaletique .avt-ib-in { max-width:var(--sig-wrap, 1312px); }
.avt-ib--quartier { --ib-titre:'Nunito', system-ui, sans-serif; --ib-encre:#2a2521; --ib-gris:#6e655c; --ib-ligne:#ece3d7; --ib-fond:color-mix(in srgb, var(--avt-couleur, #c0492b) 7%, #fff8ef); }
.avt-ib--quartier h2 { font-weight:800; letter-spacing:-.01em; }
.avt-ib--quartier .avt-ib-chiffres b, .avt-ib--quartier .avt-ib-dim-grand { font-weight:900; }
