/* ===== Blog & articles PAYANT ===== */
.page-hero{background:var(--vert);color:var(--blanc);position:relative;overflow:hidden;padding:clamp(56px,8vw,96px) 0}
.page-hero-ec{position:absolute;right:-4%;top:50%;transform:translateY(-50%);width:min(42vw,400px);opacity:.07;pointer-events:none}
.page-hero .container{position:relative;max-width:760px}
.page-hero h1{color:var(--blanc);margin:8px 0 18px}
.page-hero .lead{color:rgba(252,251,248,.82)}

/* Liste d'articles */
.posts{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.post{display:flex;flex-direction:column;background:var(--blanc-pur);border:1px solid var(--ligne);border-radius:var(--r-l);overflow:hidden;transition:transform .25s,box-shadow .25s}
.post:hover{transform:translateY(-4px);box-shadow:var(--ombre)}
.post-cover{aspect-ratio:16/9;background:var(--vert) center/cover no-repeat;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:22px}
.post-cover .tag{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--vert-noir);background:var(--or-clair);padding:5px 12px;border-radius:100px;font-weight:600;position:relative;z-index:2}
.post-cover img.ill{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.post:hover .post-cover img.ill{transform:scale(1.05)}
.post-body{padding:28px 28px 30px;display:flex;flex-direction:column;flex-grow:1}
.post .meta{font-size:.82rem;color:var(--gris);margin-bottom:12px}
.post h2{font-size:1.4rem;line-height:1.2;margin-bottom:12px}
.post p{font-size:.97rem;color:#44544e;flex-grow:1;margin-bottom:18px}
.post .more{font-size:.92rem;font-weight:600;color:var(--vert);display:inline-flex;align-items:center;gap:7px}
.post .more svg{width:15px;height:15px;stroke:var(--vert);fill:none;stroke-width:2;transition:transform .2s}
.post:hover .more svg{transform:translateX(4px)}
@media(max-width:720px){.posts{grid-template-columns:1fr}}

/* Article */
.article{max-width:720px;margin:0 auto}
.article .back{display:inline-flex;align-items:center;gap:7px;font-size:.9rem;color:var(--gris);margin-bottom:26px}
.article .back:hover{color:var(--vert)}
.article-head .tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--or);font-weight:600}
.article-head h1{font-size:clamp(2rem,4.4vw,3rem);margin:14px 0 16px;line-height:1.1}
.article-head .meta{font-size:.9rem;color:var(--gris);padding-bottom:26px;border-bottom:1px solid var(--ligne-claire);margin-bottom:8px}
.article-ill{margin:28px 0 36px;border-radius:var(--r-l);overflow:hidden;border:1px solid var(--ligne);aspect-ratio:16/7}
.article-ill img{width:100%;height:100%;object-fit:cover;display:block}
.article-body{font-size:1.1rem;line-height:1.8;color:#38473f}
.article-body > p:first-of-type{font-size:1.2rem;color:var(--vert)}
.article-body h2{font-size:1.6rem;margin:42px 0 16px}
.article-body h3{font-size:1.25rem;margin:30px 0 12px}
.article-body p{margin-bottom:20px}
.article-body ul,.article-body ol{margin:0 0 22px 2px;padding-left:22px}
.article-body li{margin-bottom:10px}
.article-body strong{color:var(--vert);font-weight:600}
.article-body blockquote{border-left:3px solid var(--or);padding:4px 0 4px 24px;margin:28px 0;font-family:'Fraunces',serif;font-size:1.3rem;line-height:1.4;color:var(--vert);font-style:italic}
.article-body .callout{background:var(--vert-pale);border-radius:var(--r);padding:24px 26px;margin:28px 0}
.article-body .callout p{margin:0}
.article-body .callout strong{display:block;margin-bottom:6px}
.article-cta{margin-top:50px;padding:36px;background:var(--vert);border-radius:var(--r-l);text-align:center;color:var(--blanc)}
.article-cta h3{color:var(--blanc);font-size:1.5rem;margin-bottom:10px}
.article-cta p{color:rgba(252,251,248,.82);margin-bottom:22px;max-width:46ch;margin-left:auto;margin-right:auto}
.article-foot{max-width:720px;margin:0 auto;padding-top:40px;border-top:1px solid var(--ligne-claire)}
.article-foot .k{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gris);margin-bottom:18px}
.article-foot .links{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.article-foot a{padding:18px 20px;border:1px solid var(--ligne);border-radius:var(--r);font-weight:500;color:var(--vert);transition:border-color .2s}
.article-foot a:hover{border-color:var(--vert)}
.article-foot a .pk{display:block;font-size:.76rem;color:var(--gris);font-weight:400;margin-bottom:4px}
@media(max-width:560px){.article-foot .links{grid-template-columns:1fr}}

.article-disclaimer{max-width:720px;margin:40px auto 0;font-size:.84rem;color:var(--gris);font-style:italic}
