/* Blogue RouteProof (routeproof.app/blogue/) — pages rendues par netlify/functions/blogue.mjs ; complète site.css */
.bl{--ink:#10131A;--txt:#262B36;--soft:#5A6272;--line:#E6E8EE;--brand:#FF6A13;--brand2:#FFB067;--tint:#FFF5EE;background:#fff}
.bl .serif{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:0}
.bl .eyebrow{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand)}
.bl .btn{border-radius:999px}
.bl .btn.primary{background:linear-gradient(180deg,#FF7A2B,#F25C05);border:0;box-shadow:0 8px 24px rgba(255,106,19,.28)}

/* liste */
.bl-hero{padding:72px 0 36px;background:radial-gradient(ellipse at 50% -20%,rgba(255,106,19,.14),transparent 60%),#fff;border-bottom:1px solid var(--line)}
.bl-hero h1{font-size:clamp(40px,6vw,72px);line-height:1;letter-spacing:-.035em;margin:12px 0 16px;font-weight:800}
.bl-hero .serif{font-size:1.08em;background:linear-gradient(100deg,var(--brand),var(--brand2));-webkit-background-clip:text;background-clip:text;color:transparent}
.bl-hero .lead{font-size:clamp(17px,2vw,20px);color:var(--soft);max-width:640px;margin:0}
.bl-list{padding-top:44px;padding-bottom:70px}
.bl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.bl-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;color:inherit;transition:box-shadow .2s,transform .2s,border-color .2s}
.bl-card:hover{text-decoration:none;border-color:#D3D7E0;box-shadow:0 18px 44px rgba(16,19,26,.09);transform:translateY(-2px)}
.bl-card .ph{aspect-ratio:16/9;background:#F1F2F5;overflow:hidden}.bl-card .ph img{width:100%;height:100%;object-fit:cover;display:block}
.bl-card .tx{padding:18px 20px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.bl-card .mt{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--soft)}
.bl-card .cat{background:var(--tint);color:#C2470A;font-weight:700;border-radius:999px;padding:3px 10px;font-size:12px}
.bl-card h3{font-size:19px;line-height:1.3;margin:2px 0 0;letter-spacing:-.01em;color:var(--ink)}
.bl-card p{margin:0;color:var(--soft);font-size:15px;line-height:1.55}
.bl-card .more{margin-top:auto;padding-top:6px;font-weight:700;font-size:14px;color:#D9560B}
.bl-card.big{grid-column:span 3;flex-direction:row}.bl-card.big .ph{flex:1.25;aspect-ratio:auto;min-height:320px}.bl-card.big .tx{flex:1;padding:32px;justify-content:center}
.bl-card.big h3{font-size:clamp(24px,2.6vw,32px);letter-spacing:-.02em}
.bl-empty{color:var(--soft);font-size:18px;padding:40px 0}

/* article */
.bl-preview{background:#FFF1E6;color:#9A3A05;text-align:center;font-weight:700;padding:10px;border-bottom:1px solid #F6D2B8}
.bl-head{padding:48px 0 26px}.bl-head .wrap{max-width:860px}
.crumbs{font-size:14px;color:var(--soft);margin-bottom:18px}.crumbs a{color:var(--soft)}.crumbs span{color:#C2470A;font-weight:600}
.bl-head h1{font-size:clamp(32px,4.6vw,52px);line-height:1.08;letter-spacing:-.03em;margin:0 0 16px;font-weight:800;color:var(--ink)}
.bl-head .lead{font-size:clamp(17px,2vw,20px);color:var(--soft);margin:0 0 22px;line-height:1.55}
.by{display:flex;gap:12px;align-items:center;font-size:14px;color:var(--soft);line-height:1.4}.by b{color:var(--ink)}
.av{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#FF7A2B,#F25C05);color:#fff;font-weight:800;font-size:14px}
.bl-heroimg{max-width:1120px}.bl-heroimg img{display:block;width:100%;height:auto;border-radius:20px;aspect-ratio:16/9;object-fit:cover;background:#F1F2F5}
.bl-body{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:56px;padding-top:40px;padding-bottom:40px;align-items:start}
.bl-body .prose{grid-column:1;grid-row:1;max-width:740px}
.bl-side{grid-column:2;grid-row:1;position:sticky;top:84px;display:grid;gap:18px}
.toc{border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.toc p{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.toc a{display:block;padding:7px 0;border-top:1px solid #F1F2F5;font-size:14px;line-height:1.4;color:var(--txt)}.toc a:first-of-type{border-top:0}.toc a:hover{color:#D9560B;text-decoration:none}
.side-cta{border-radius:14px;padding:18px;background:#10131A;color:#C9CED8;font-size:14px}.side-cta b{color:#fff;font-size:16px}.side-cta p{margin:6px 0 14px}.side-cta .btn{width:100%;height:40px}

/* typographie de l'article */
.prose{color:var(--txt);font-size:18px;line-height:1.75}
.prose>*:first-child{margin-top:0}
.prose p{margin:0 0 20px}
.prose h2{font-size:clamp(24px,2.6vw,30px);line-height:1.2;letter-spacing:-.02em;color:var(--ink);margin:48px 0 14px;scroll-margin-top:84px}
.prose h3{font-size:20px;line-height:1.3;color:var(--ink);margin:30px 0 10px}
.prose ul,.prose ol{margin:0 0 22px;padding-left:24px}.prose li{margin:6px 0}
.prose a{color:#D9560B;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.prose strong{color:var(--ink)}
.prose figure{margin:30px 0}.prose figure img{display:block;width:100%;height:auto;border-radius:14px;background:#F1F2F5}
.prose figcaption{font-size:14px;color:var(--soft);margin-top:8px}
.prose blockquote{margin:26px 0;padding:4px 0 4px 20px;border-left:3px solid var(--brand);color:var(--ink);font-size:19px}
.prose .tbl{margin:26px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.prose table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5}
.prose th,.prose td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;min-width:120px}
.prose td:first-child{min-width:96px;font-weight:600;color:var(--ink)}
.prose thead th{background:#F7F8FA;color:var(--ink);font-weight:700;border-bottom:2px solid #D9DCE3;white-space:nowrap}
.prose .rc{background:var(--tint);border:1px solid #FAD9C2;border-left:4px solid var(--brand);border-radius:12px;padding:18px 20px;margin:0 0 30px;font-size:17px}
.prose .rc>b:first-child,.prose .rc>strong:first-child{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#C2470A;margin-bottom:6px}
.prose .rc p:last-child{margin:0}
.prose .cta-inline{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#10131A;color:#C9CED8;border-radius:16px;padding:20px 22px;margin:32px 0;font-size:16px;line-height:1.5}
.prose .cta-inline p{margin:0;max-width:440px}.prose .cta-inline strong{color:#fff}
.prose .cta-inline a{flex:none;display:inline-flex;align-items:center;height:42px;padding:0 18px;border-radius:999px;font-weight:700;font-size:15px;color:#fff;text-decoration:none;background:linear-gradient(180deg,#FF7A2B,#F25C05)}
.prose .resume{border:1px solid var(--line);border-radius:14px;padding:6px 22px;margin:34px 0;background:#FAFAFB}
.prose .resume h2{margin-top:18px}
.prose .sources{font-size:14px;color:var(--soft)}.prose .sources a{color:var(--soft)}
.prose section.faq{margin-top:46px;padding:0}.prose .faq details{border-bottom:1px solid var(--line);padding:14px 0}
.prose .faq summary{font-weight:700;cursor:pointer;color:var(--ink);font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.prose .faq summary::-webkit-details-marker{display:none}.prose .faq summary:after{content:"+";color:var(--brand);font-size:22px;line-height:1}.prose .faq details[open] summary:after{content:"–"}
.prose .faq p{margin:10px 0 0;font-size:16px;color:var(--soft)}
.author{display:flex;gap:14px;margin-top:44px;padding:20px;border:1px solid var(--line);border-radius:16px;font-size:15px;line-height:1.55}
.author b{color:var(--ink)}.author p{margin:4px 0 0;color:var(--soft)}

.bl-related{padding:56px 0;background:#F7F8FA;border-top:1px solid var(--line)}.bl-related h2{margin-bottom:22px}
.bl-final{padding:72px 0}
.bl-final .in{border-radius:26px;padding:60px 26px;text-align:center;background:radial-gradient(ellipse at 50% 0%,rgba(255,106,19,.32),transparent 60%),#0D1118;color:#AEB4BF}
.bl-final h2{color:#fff;font-size:clamp(30px,4vw,46px);letter-spacing:-.03em;margin:0 0 12px}
.bl-final .serif{background:linear-gradient(100deg,var(--brand),var(--brand2));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.08em}
.bl-final p{max-width:560px;margin:0 auto 26px;font-size:17px}
.bl-final .btn{margin:4px 6px}.bl-final .btn.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22)}
.bl-404{padding:90px 22px;min-height:50vh}

@media(max-width:980px){.bl-grid{grid-template-columns:1fr 1fr}.bl-card.big{grid-column:span 2}
  .bl-body{grid-template-columns:1fr;gap:0}.bl-side{position:static;grid-column:1;grid-row:1;margin-bottom:26px}.bl-side .side-cta{display:none}.bl-body .prose{grid-row:2;max-width:none}}
@media(max-width:640px){.bl-grid{grid-template-columns:1fr}.bl-card.big{grid-column:span 1;flex-direction:column}.bl-card.big .ph{min-height:0;aspect-ratio:16/9}.bl-card.big .tx{padding:20px}
  .bl-hero{padding-top:52px}.bl-head{padding-top:32px}.prose{font-size:17px}.bl-heroimg{padding:0 14px}.bl-heroimg img{border-radius:14px}.bl-final{padding:44px 0}.bl-final .in{padding:44px 18px}
  .prose .cta-inline{flex-direction:column;align-items:flex-start}}
