/* Xenaos v5 : habillage commun aligné sur la page d’accueil (chargé après v3.css, hors accueil) */
:root{--bg:#FFFFFF;--soft:#F6F5F2;--cream:#F6F4EF;--f-mono:var(--f-head);--line:#ECEAE4;--shadow5:0 2px 6px rgba(22,23,27,.04),0 24px 48px -20px rgba(22,23,27,.16)}
body{background:#fff;font-weight:300;font-size:17px;line-height:1.7}
b,strong{font-weight:600}
h1,h2,h3{font-weight:700;letter-spacing:-.03em;text-wrap:balance}
h1{font-weight:800;letter-spacing:-.04em;line-height:1.04}
.lead{font-weight:300}
.pad{padding:clamp(80px,10vw,128px) 0}
.band-alt{background:var(--soft)}
/* petits titres */
.eyebrow{font-family:var(--f-head);font-weight:700;font-size:.8rem;letter-spacing:.2em;color:var(--accent)}
.eyebrow::before{display:none}
/* boutons */
.btn{font-weight:500;padding:16px 28px}
.btn-accent{box-shadow:0 14px 30px -12px rgba(226,87,42,.6)}
.btn-accent:hover{transform:translateY(-2px)}
/* hero des pages : crème + onde */
.phero{position:relative;background:var(--cream);isolation:isolate;border-bottom:1px solid #E7E2D8}
.phero>.wrap{position:relative;z-index:1}
.v5-wave{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
/* captures produit */
.shot{border-radius:18px;box-shadow:var(--shadow5);border-color:var(--line)}
/* bandes sombres : deviennent une grande carte noire posée sur fond clair */
.demo,.langs,.band-dark{background:#fff;color:var(--ink)}
.band-alt+.demo,.band-alt+.langs,.band-alt+.band-dark{background:#fff}
.demo>.wrap,.langs>.wrap,.band-dark>.wrap{background:var(--dark);color:#fff;border-radius:32px;padding:clamp(36px,5vw,72px) clamp(22px,4.5vw,64px);max-width:1240px}
@media(max-width:760px){.demo>.wrap,.langs>.wrap,.band-dark>.wrap{border-radius:24px;margin:0 12px}}
/* CTA final : crème + onde, comme l’accueil */
.final{background:var(--cream);color:var(--ink);position:relative;isolation:isolate;border-top:1px solid #E7E2D8}
.final h2{color:var(--ink);font-weight:800;letter-spacing:-.04em}
.final .lead{color:var(--ink2)}
.final small,.final .final-sign{color:var(--muted)}
.final .btn-link{color:var(--ink)}
.final .eyebrow{color:var(--accent)!important}
.final-wave{display:none}
.final .btn-ghost,.final .btn-line{color:var(--ink);border-color:rgba(20,22,26,.2)}
/* cartes : arrondis et ombres plus doux */
.faq-list details,.faq details{border-color:var(--line)}
.final .btn-ghost-d{border-color:rgba(20,22,26,.18);color:var(--ink);background:#fff}
.final .btn-ghost-d:hover{border-color:var(--ink)}
/* collages photo + interface (heros des pages) */
.v5-col{position:relative;min-width:0}
.v5-ph{border-radius:28px;overflow:hidden;box-shadow:var(--shadow5);background:#EFEBE4}
.v5-ph img{width:100%;height:100%;object-fit:cover;display:block}
.v5-col.side{display:flex;justify-content:flex-end;align-items:center;min-height:520px}
.v5-col.side .v5-ph{width:68%;aspect-ratio:4/5}
.v5-col.side .v5-over{position:absolute;left:0;top:50%;transform:translateY(-50%);width:58%;margin:0;z-index:2}
.v5-col.bottom{padding-bottom:70px}
.v5-col.bottom .v5-ph{width:88%;margin-left:auto;aspect-ratio:4/4.3}
.v5-col.bottom .v5-over{position:absolute;left:0;bottom:0;width:72%;margin:0;z-index:2}
.v5-col .v5-over.shot,.v5-col .v5-over.callcard,.v5-col .v5-over.tcard{box-shadow:0 30px 60px -24px rgba(22,23,27,.35)}
.v5-col.side .v5-over.device{width:40%;max-width:250px}
@media(max-width:980px){.v5-col.side,.v5-col.bottom{display:block;min-height:0;padding:0}
 .v5-col.side .v5-ph,.v5-col.bottom .v5-ph{width:100%;aspect-ratio:4/3.4}
 .v5-col .v5-over,.v5-col.side .v5-over,.v5-col.bottom .v5-over{position:relative;left:auto;top:auto;bottom:auto;transform:none;width:auto;margin:-60px 14px 0}
 .v5-col.side .v5-over.device{width:58%;margin:-120px auto 0}}
.v5-col.under .v5-ph{aspect-ratio:4/3.1}
.v5-col.under .v5-over{position:relative;width:84%;margin:-90px 0 0 auto;z-index:2}
.v5-col .cap,.v5-col .v5-over .cap{position:absolute;right:0;bottom:-30px;margin:0;font-size:.78rem}
.mt{overflow:hidden}
.mt-ph{margin:-26px -26px 18px;aspect-ratio:16/10;overflow:hidden;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0}
.mt-ph img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block;transition:transform .6s}
.mt:hover .mt-ph img{transform:scale(1.03)}
.mt .mt-ic{display:none}
.v5-team{margin:0}.v5-team .v5-ph{aspect-ratio:16/10.5}
.mt .who{display:block}
/* ---------- Blog ---------- */
.post-head{max-width:860px}
.post-hero h1{font-size:clamp(2.2rem,4.6vw,3.6rem);margin-bottom:22px}
.post-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font-size:.9rem;color:var(--muted)}
.post-meta span+span::before{content:"·";margin-right:18px;color:var(--accent)}
.post{padding:64px 0 96px}
.post-grid{display:grid;grid-template-columns:220px minmax(0,720px);gap:64px;justify-content:center;align-items:start}
.post-toc{position:sticky;top:110px;display:grid;gap:10px;font-size:.9rem;padding-top:6px}
.post-toc b{font:700 .74rem var(--f-head);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}
.post-toc a{text-decoration:none;color:var(--muted);border-left:2px solid var(--line);padding-left:12px;line-height:1.4}
.post-toc a:hover{color:var(--ink);border-left-color:var(--accent)}
.post-body{font-size:1.1rem;line-height:1.8;color:var(--ink2);min-width:0}
.post-body>*+*{margin-top:22px}
.post-body h2{font-size:clamp(1.6rem,2.6vw,2.1rem);color:var(--ink);margin-top:56px;scroll-margin-top:100px}
.post-cover{margin:0 0 40px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow5)}
.post-cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.post-body b{color:var(--ink)}
.post-steps,.post-list{padding-left:0;list-style:none;display:grid;gap:14px;counter-reset:s}
.post-steps li{counter-increment:s;position:relative;padding-left:46px}
.post-steps li::before{content:counter(s);position:absolute;left:0;top:2px;width:30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);font:700 .9rem var(--f-head);display:grid;place-items:center}
.post-list li{position:relative;padding-left:26px}
.post-list li::before{content:"";position:absolute;left:4px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.post-formula{padding:22px 26px;border-radius:18px;background:var(--cream);border:1px solid #E7E2D8;font-size:1.02rem;color:var(--ink)}
.post-formula b{color:var(--accent-ink)}
.post-table{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}
.post-table>div{display:flex;justify-content:space-between;gap:16px;padding:13px 22px;border-top:1px solid var(--line);font-size:1rem}
.post-table>div:first-child{border-top:0}
.post-table b{font-family:var(--f-head);font-variant-numeric:tabular-nums;white-space:nowrap}
.post-table .tot{background:var(--ink);color:#fff;border-top-color:#2A2C31}.post-table .tot b{color:#fff}
.post-table .tot:last-child b{color:#F4B79A}
.post-note{font-size:.88rem;color:var(--muted)}
.post-callout{padding:30px;border-radius:24px;background:var(--dark);color:#C9C7C1;display:grid;gap:12px;justify-items:start}
.post-callout b{font:700 1.25rem var(--f-head);color:#fff}
.post-author{display:flex;gap:16px;align-items:flex-start;padding-top:30px;margin-top:56px!important;border-top:1px solid var(--line);font-size:.95rem}
.post-author svg{flex:none;border-radius:10px}.post-author b{display:block;color:var(--ink)}
@media(max-width:980px){.post-grid{grid-template-columns:1fr;gap:28px}.post-toc{position:static;padding:20px;border-radius:18px;background:var(--soft)}}
.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.blog-card{display:grid;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;transition:transform .25s,box-shadow .25s}
.blog-card:hover{transform:translateY(-3px);box-shadow:var(--shadow5)}
.blog-card.feat{grid-column:1/-1;grid-template-columns:1.15fr 1fr}
.bc-img{display:block;overflow:hidden;aspect-ratio:16/10}.blog-card.feat .bc-img{aspect-ratio:auto;min-height:340px}
.bc-img img{width:100%;height:100%;object-fit:cover}
.blog-card:not(.feat){grid-template-rows:auto 1fr}
.bc-txt{display:grid;gap:12px;align-content:start;padding:32px}
.blog-card.feat .bc-txt{align-content:center}
.blog-card:not(.feat) .bc-more{align-self:end}
.bc-tag{font:700 .74rem var(--f-head);letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.bc-txt b{font:700 clamp(1.3rem,2.4vw,1.9rem)/1.15 var(--f-head);letter-spacing:-.025em;color:var(--ink)}
.bc-ex{color:var(--ink2)}.bc-meta{font-size:.86rem;color:var(--muted)}.bc-more{font-weight:600;color:var(--accent-ink)}
@media(max-width:860px){.blog-grid{grid-template-columns:1fr}.blog-card.feat{grid-template-columns:1fr}.blog-card.feat .bc-img{min-height:0;aspect-ratio:16/10}}
.post-audio{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;margin-top:26px;padding:14px 18px;border-radius:20px;background:#fff;border:1px solid #E7E2D8;box-shadow:0 10px 24px -14px rgba(22,23,27,.18);max-width:720px}
.pa-ic svg{display:block;border-radius:8px}.pa-t{display:grid;flex:1;min-width:200px}.pa-t b{font:700 1rem var(--f-head);color:var(--ink)}.pa-t small{font-size:.84rem;color:var(--muted)}
.post-audio audio{width:100%;max-width:340px;height:40px}
.blog-grid.two{grid-template-columns:1fr 1fr}@media(max-width:860px){.blog-grid.two{grid-template-columns:1fr}}
