/* Pages document : légal, contact, tarifs, billing. */
.doc{max-width:760px; margin:0 auto; padding:56px 24px 80px;}
.doc .eyebrow{margin-bottom:10px; display:block;}
.doc h1{font-family:var(--serif); font-weight:400; font-size:clamp(30px,5vw,44px); margin:0 0 8px; letter-spacing:-.01em;}
.doc .updated{font-family:var(--mono); font-size:12px; color:var(--steel-6); margin-bottom:34px;}
.doc h2{font-family:var(--serif); font-weight:400; font-size:24px; margin:36px 0 10px;}
.doc h3{font-family:var(--serif); font-weight:400; font-size:18px; margin:22px 0 8px;}
.doc p, .doc li{font-size:16px; line-height:1.65; color:var(--charcoal-2);}
.doc ul{padding-left:20px; margin:10px 0;}
.doc li{margin-bottom:6px;}
.doc a{color:var(--sodium-700);}
.doc .lead{font-size:18px; color:var(--charcoal); line-height:1.6;}
.doc .note{background:var(--surface); border:1px solid var(--line); border-left:3px solid var(--sodium); border-radius:8px; padding:14px 16px; margin:22px 0; font-size:14.5px; color:var(--charcoal-2);}
.doc .ph{color:var(--sodium-700); font-family:var(--mono); font-size:.92em;}
.doc .disc{font-style:italic; color:var(--steel-6); font-size:14px; line-height:1.6; border-top:1px solid var(--line); padding-top:20px; margin-top:36px;}

/* contact */
.contact-grid{display:grid; grid-template-columns:1fr; gap:14px; margin-top:24px;}
.contact-ok{background:var(--ok-100); border:1px solid var(--ok); border-radius:10px; padding:18px; color:var(--ok); font-weight:600; margin-bottom:20px;}

/* SEO : encart d'appel à l'action + cartes de blogue */
.doc-cta{background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:28px 26px; margin:38px 0 8px; text-align:center;}
.doc-cta h2{margin:0 0 8px;}
.doc-cta p{margin:0 auto 18px; max-width:46ch;}
.doc ol{padding-left:20px; margin:10px 0;}
.doc ol li{margin-bottom:6px; font-size:16px; line-height:1.65; color:var(--charcoal-2);}
.blog-card{display:block; border:1px solid var(--line); border-radius:14px; padding:22px 24px; margin:16px 0; text-decoration:none; transition:border-color .15s ease, transform .15s ease;}
.blog-card:hover{border-color:var(--sodium); transform:translateY(-2px);}
.bc-tag{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:var(--sodium-700);}
.blog-card h2{margin:8px 0 6px; font-size:22px;}
.blog-card p{color:var(--charcoal-2); margin:0 0 10px;}
.bc-more{font-family:var(--mono); font-size:13px; color:var(--sodium-700); font-weight:600;}

/* SEO programmatique : guides — fil d'Ariane, FAQ dépliable, index de guides */
.doc .breadcrumb{font-family:var(--mono); font-size:12px; color:var(--steel-6); margin-bottom:16px;}
.doc .breadcrumb a{color:var(--sodium-700); text-decoration:none;}
.doc .breadcrumb a:hover{text-decoration:underline;}
.faq{margin:14px 0 8px;}
.faq details{border:1px solid var(--line); border-radius:10px; margin:10px 0; overflow:hidden;}
.faq summary{cursor:pointer; padding:14px 16px; font-weight:600; color:var(--charcoal); list-style:none;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+"; float:right; color:var(--sodium-700); font-family:var(--mono);}
.faq details[open] summary::after{content:"–";}
.faq details p{padding:0 16px 14px; margin:0;}
.guide-index{list-style:none; padding:0; margin:14px 0;}
.guide-index li{margin:0 0 10px;}
.guide-index a{display:block; border:1px solid var(--line); border-radius:10px; padding:14px 16px; text-decoration:none; color:var(--charcoal); transition:border-color .15s ease;}
.guide-index a:hover{border-color:var(--sodium);}
