/* Pages éditoriales SEO — même charte, lecture plus directe et légère */
.seo-page{max-width:1240px;margin:0 auto;padding:clamp(1.4rem,3vw,2.8rem) 1.5rem 4rem}
.seo-breadcrumb{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin-bottom:1.25rem;color:var(--muted,#5c6b66);font-size:.82rem;font-weight:700}
.seo-breadcrumb a{color:var(--accent,#176b5f);text-decoration:underline;text-underline-offset:3px}
.seo-landing{background:linear-gradient(135deg,rgba(14,93,84,.08),rgba(212,175,55,.12));border:1px solid var(--warm-rule,#d4c49d);border-radius:20px;padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--shadow-soft,0 8px 24px rgba(24,58,49,.07));margin-bottom:2rem}
.seo-landing h1{max-width:18ch;font-family:'Fraunces',Georgia,serif;font-size:clamp(2.1rem,4.5vw,4rem);line-height:1.06;color:var(--deep,#123f38);margin:.55rem 0 .85rem}
.seo-landing h1::after{content:"";display:block;width:3.25rem;height:.18rem;margin-top:.85rem;border-radius:99px;background:var(--gold,#d4af37)}
.seo-landing .lead{max-width:72ch;color:var(--ink-soft,#52615c);font-size:1.08rem;line-height:1.75;margin:0}
.seo-eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:#8a6614;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800}
.seo-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.75rem;margin-top:1.5rem}
.seo-kpi{background:rgba(255,254,250,.9);border:1px solid rgba(14,93,84,.16);border-radius:14px;padding:1rem}
.seo-kpi strong{display:block;color:var(--deep,#123f38);font-size:1.5rem;line-height:1.1}
.seo-kpi span{display:block;color:var(--muted,#5c6b66);font-size:.78rem;margin-top:.35rem}
.seo-content{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:1.5rem;align-items:start}
.seo-prose,.seo-aside{background:var(--surface,#fffefa);border:1px solid var(--rule,#dfd6c5);border-radius:16px;padding:clamp(1.25rem,2.5vw,2rem);box-shadow:var(--shadow-soft,0 8px 24px rgba(24,58,49,.06))}
.seo-prose h2{font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.2;margin:1.7rem 0 .65rem;color:var(--deep,#123f38)}
.seo-prose h2:first-child{margin-top:0}
.seo-prose h3{font-size:1.05rem;margin:1.25rem 0 .35rem;color:var(--accent,#176b5f)}
.seo-prose p{color:var(--ink-soft,#52615c);line-height:1.75;margin:.65rem 0}
.seo-prose ul,.seo-prose ol{margin:.65rem 0 .9rem 1.2rem;color:var(--ink-soft,#52615c)}
.seo-prose li{margin:.35rem 0}
.seo-prose strong{color:var(--deep,#123f38)}
.seo-table-wrap{overflow-x:auto;margin:1rem 0}
.seo-table{width:100%;border-collapse:collapse;min-width:620px;font-size:.9rem}
.seo-table th,.seo-table td{padding:.72rem .8rem;border-bottom:1px solid var(--rule,#dfd6c5);text-align:left;vertical-align:top}
.seo-table th{background:var(--accent-soft,#e5f0eb);color:var(--deep,#123f38);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}
.seo-table td{color:var(--ink-soft,#52615c)}
.seo-note{border-left:4px solid var(--gold,#d4af37);background:#fff8df;padding:.9rem 1rem;border-radius:0 10px 10px 0;color:var(--deep,#123f38);margin:1rem 0;line-height:1.65}
.seo-aside h2{font-size:1.15rem;margin:0 0 .7rem;color:var(--deep,#123f38)}
.seo-aside ul{list-style:none;margin:0;padding:0}
.seo-aside li{border-top:1px solid var(--rule,#dfd6c5);padding:.7rem 0;color:var(--ink-soft,#52615c);font-size:.9rem}
.seo-aside li:first-child{border-top:0;padding-top:0}
.seo-aside a{color:var(--accent,#176b5f);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.seo-faq{display:grid;gap:.65rem;margin-top:1rem}
.seo-faq details{border:1px solid var(--rule,#dfd6c5);border-radius:10px;padding:.8rem 1rem;background:rgba(255,254,250,.8)}
.seo-faq summary{cursor:pointer;font-weight:800;color:var(--deep,#123f38)}
.seo-faq p{margin:.65rem 0 0;color:var(--ink-soft,#52615c);line-height:1.65}
.seo-cta{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}
.seo-source-list{display:grid;gap:.55rem;margin-top:.7rem}
.seo-source-list a{color:var(--accent,#176b5f);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.seo-content{grid-template-columns:1fr}.seo-landing h1{max-width:20ch}.seo-page{padding-inline:1rem}}
@media(max-width:520px){.seo-landing{padding:1.25rem}.seo-prose,.seo-aside{padding:1rem}.seo-table{min-width:560px}}
