/* Pages intérieures de the-algoritm.io (services, ressources, à propos) — 2026-10-22, décision du CEO.
   Règle : aucune page intérieure n'est une seule colonne de texte centrée. Chaque page a un hero pleine largeur
   (titre à gauche, carte « En bref » à droite), des sections en deux colonnes (titre collant à gauche, contenu à
   droite), des listes rendues en cartes, et une bande d'appel sombre pleine largeur. Une seule source : ce fichier,
   lié par a-propos.html et par build_ressources.page() (donc par toutes les pages générées).
   Loi visuelle : DESIGN.md (blanc dominant, cartes blanches à bord gris et filet tricolore, Trame sur le sombre). */

.article{display:block;max-width:none;padding:0}
.int__hero{background:var(--gray-100);padding:var(--s6) var(--s4) var(--s5)}
.int__hero-in{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr);gap:var(--s5);align-items:center}
.int__hero-texte{display:flex;flex-direction:column;gap:var(--s3);min-width:0}
.int__hero h1{font-size:clamp(2.2rem,4.6vw,3.6rem);font-weight:800;line-height:1.05;letter-spacing:-.02em;text-wrap:balance;margin:0;max-width:18ch}
.int__lede{font-size:1.2rem;font-weight:400;line-height:1.55;color:var(--gray-500);max-width:62ch;text-wrap:pretty;margin:0}
.int__meta{font-size:.85rem;font-weight:400;color:var(--gray-500);margin:0}
.int__boutons{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s1)}
.int__carte{position:relative;overflow:hidden;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--r2);padding:var(--s4) var(--s3) var(--s3);display:flex;flex-direction:column;gap:var(--s2);min-width:0}
.int__carte::before{content:'';position:absolute;left:0;right:0;top:0;height:8px;background:linear-gradient(90deg,var(--blue) 0 61.8%,var(--amber) 61.8% 85.4%,var(--orange) 85.4% 100%)}
.int__carte .kicker{margin:0}
.int__carte ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--s2)}
.int__carte li{font-size:1rem;font-weight:400;line-height:1.5;padding-left:var(--s3);position:relative}
.int__carte li::before{content:'';position:absolute;left:0;top:.6em;width:10px;height:10px;border-radius:50%;background:var(--blue)}
.int__carte li strong{font-weight:800}
.int__carte p{margin:0;font-size:1rem;font-weight:400;line-height:1.5}
.int__chiffre,.int__carte .int__chiffre{font-size:clamp(2.6rem,5vw,4rem);font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--blue);margin:0}
.int__carte ul,.int__carte .int__carte ul{padding:0}
.int__banniere{display:block;width:100%;height:auto;border-radius:var(--r2)}
.int__photo{width:100%;max-width:360px;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:var(--r2);display:block;justify-self:end}
.int__fiche{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s2)}
.int__fiche div{background:var(--gray-100);border-radius:var(--r2);padding:var(--s2) var(--s3);display:flex;flex-direction:column;gap:2px;min-width:0}
.int__fiche dt{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gray-500)}
.int__fiche dd{margin:0;font-weight:700;font-size:1rem;line-height:1.4;overflow-wrap:anywhere}
.int__fiche dd a{color:var(--ink);border-bottom:1px solid var(--gray-200)}
.int__corps>.btn{align-self:flex-start}
.int__corps .link-amber{align-self:flex-start}
.int{max-width:1140px;margin:0 auto;padding:var(--s5) var(--s4);display:flex;flex-direction:column;gap:var(--s5)}
.int__split{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.65fr);gap:var(--s3) var(--s5);align-items:start;border-top:2px solid var(--ink);padding-top:var(--s4)}
.int__split>h2{position:sticky;top:96px;margin:0;font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:800;line-height:1.15;letter-spacing:-.02em;text-wrap:balance}
.int__split--plein{display:flex;flex-direction:column;border-top:0;padding-top:0}
.int__split--large{display:flex;flex-direction:column;gap:var(--s3)}
.int__split--large>h2{position:static}
.int__split--large .int__corps>p{max-width:72ch}
.int__split--plein .int__corps{max-width:72ch}
.int__corps{display:flex;flex-direction:column;gap:var(--s3);min-width:0}
.int__corps>p,.int__corps>ul:not(.cartes)>li,.int__corps>ol:not(.cartes)>li{font-size:1.1rem;font-weight:400;line-height:1.6;max-width:72ch;text-wrap:pretty}
.int__corps h3{font-size:1.2rem;font-weight:800;line-height:1.3;margin:var(--s2) 0 0}
.int__corps>ul:not(.cartes),.int__corps>ol:not(.cartes){margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:var(--s1)}
.int__corps figure{margin:0}
.int__corps .table-defile{overflow-x:auto;border:1px solid var(--gray-200);border-radius:var(--r2)}
.int__corps table{width:100%;border-collapse:collapse;font-size:.95rem;font-weight:400;margin:0}
.int__corps th,.int__corps td{text-align:left;padding:var(--s2) var(--s3);border-bottom:1px solid var(--gray-200);vertical-align:top}
.int__corps tr:last-child td{border-bottom:0}
.int__corps th{font-weight:800;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);background:var(--gray-100)}
.int__corps blockquote{margin:0;padding:var(--s3) var(--s4);background:var(--gray-100);border-radius:var(--r2);border-left:4px solid var(--blue)}
.int__corps blockquote p{margin:0;font-size:1.05rem}
.int__corps a{border-bottom:1px solid var(--gray-200)}
.int__corps a:hover{border-bottom-color:var(--blue)}
.int__corps em{color:var(--gray-500);font-style:normal;font-size:.9rem}
/* Les sélecteurs doublés (.int .cartes) passent devant « .article ul » de la feuille inline des articles. */
.cartes,.int .cartes,.int__corps .cartes{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--s3);max-width:none}
.cartes>li{position:relative;overflow:hidden;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--r2);padding:var(--s4) var(--s3) var(--s3);font-size:1rem;font-weight:400;line-height:1.55;display:block;transition:border-color var(--medium) var(--ease-quart),transform var(--medium) var(--ease-quart)}
.cartes>li::before{content:'';position:absolute;left:0;right:0;top:0;height:8px;background:linear-gradient(90deg,var(--blue) 0 61.8%,var(--amber) 61.8% 85.4%,var(--orange) 85.4% 100%)}
.cartes>li:hover{border-color:var(--blue);transform:translateY(-3px)}
.cartes>li>strong:first-child,.cartes>li>.no+strong{display:block;font-size:1.1rem;font-weight:800;line-height:1.3;margin-bottom:var(--s1)}
.cartes>li .no{display:block;font-size:1.6rem;font-weight:800;line-height:1;color:var(--blue);letter-spacing:-.02em;margin-bottom:var(--s2)}
.cartes>li>p{margin:var(--s1) 0 0}
.cartes--num>li{padding-top:var(--s3)}
.cartes>li a{font-weight:800;border-bottom:1px solid var(--gray-200)}
.cartes>li p{margin:0}
.int__faq{display:flex;flex-direction:column;gap:var(--s1)}
.int__faq details{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--r2);padding:var(--s2) var(--s3)}
.int__faq details[open]{border-color:var(--blue)}
.int__faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--s3);font-size:1.05rem;font-weight:800;line-height:1.3;padding:6px 0}
.int__faq summary::-webkit-details-marker{display:none}
.int__faq summary::after{content:'+';flex:none;width:26px;height:26px;border-radius:50%;border:2px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1}
.int__faq details[open] summary::after{content:'−';border-color:var(--blue);color:var(--blue)}
.int__faq details>div{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s1) 0 6px}
.int__faq details>div p{margin:0;font-size:1.05rem;font-weight:400;line-height:1.55}
.bande{background:var(--ink) url("/assets/trame-dark.svg") center/900px 900px repeat;color:var(--white);padding:var(--s6) var(--s4)}
.bande-in{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:var(--s4);align-items:center}
.bande h2{margin:0;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;line-height:1.1;letter-spacing:-.02em;color:var(--white);text-wrap:balance}
.bande p{margin:var(--s2) 0 0;font-size:1.1rem;font-weight:400;color:rgba(255,255,255,.78);max-width:56ch}
.bande__boutons{display:flex;flex-wrap:wrap;gap:var(--s2);justify-self:end}
.bande .btn{background:var(--white);color:var(--ink);white-space:normal;height:auto;min-height:55px;padding:var(--s2) var(--s4);text-align:center}
.bande .btn:hover{background:var(--blue);color:var(--white)}
.bande .btn--ghost{background:transparent;color:var(--white);border:2px solid var(--white)}
.bande .btn--ghost:hover{background:var(--white);color:var(--ink)}
.int__lies,.int .int__lies{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--s2);max-width:none}
.int__lies li a{display:block;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--r2);padding:var(--s3);font-weight:800;line-height:1.3;color:var(--ink);transition:border-color var(--medium) var(--ease-quart),color var(--medium) var(--ease-quart)}
.int__lies li a:hover{border-color:var(--blue);color:var(--blue)}
.int__lies li p{margin:var(--s1) 0 0;font-weight:400;font-size:.95rem;color:var(--gray-500)}
.int__grappe{background:var(--gray-100);border-radius:var(--r2);padding:var(--s3) var(--s4);display:flex;flex-direction:column;gap:var(--s1)}
@media(max-width:960px){
  .int__hero-in{grid-template-columns:1fr;gap:var(--s4)}
  .int__split{grid-template-columns:1fr;gap:var(--s3)}
  .int__split>h2{position:static}
  .bande-in{grid-template-columns:1fr}
  .bande__boutons{justify-self:start}
}
@media(max-width:720px){
  .int__hero{padding:var(--s5) 16px var(--s4)}
  .int{padding:var(--s4) 16px;gap:var(--s4)}
  .int__hero h1{font-size:clamp(1.9rem,8vw,2.4rem);max-width:none}
  .int__lede{font-size:1.05rem}
  .bande{padding:var(--s5) 16px}
  .cartes{grid-template-columns:1fr}
  .int__lies{grid-template-columns:1fr}
}
