/* Cabinet Aflore : feuille de style portee de la maquette validee le 13/10 (atelier ouvert v2), prefixe c-.
   Les polices Newsreader et Inter viennent de partials/head.html, Spline Sans Mono de partials/head-cabinet.html. */
:root{--ink:#0F1B12;--ink2:#253F2E;--ink3:#456F53;--chalk:#EEF4EF;--terra:#A85B33;--line:#dfe8e1;--muted:#5b6e61}
.c-nav{display:flex;align-items:center;gap:20px;padding:14px 30px;border-bottom:1px solid var(--chalk);font-size:13px;color:var(--ink2)}
.c-logo{font-family:Newsreader,serif;font-size:23px;font-weight:500;color:var(--ink);letter-spacing:-.01em;margin-right:2px}
.c-sector{border:1px solid #cfdcd2;border-radius:999px;padding:3px 11px;color:var(--muted);font-size:11.5px}
.c-sector b{font-weight:500;color:var(--ink)}
.c-sp{flex:1}
.c-cta{background:var(--ink);color:#fff;border-radius:999px;padding:8px 16px;font-size:12.5px;font-weight:500}
.c-k{font-family:'Spline Sans Mono',monospace;font-size:10.5px;color:#567461;letter-spacing:.06em;text-transform:uppercase}

.c-hero{position:relative;text-align:center;padding:66px 24px 50px;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,#f1f7f2 0%,#fff 62%)}
.c-motif{position:absolute;left:50%;top:0;transform:translateX(-50%);width:980px;height:100%;pointer-events:none}
.c-motif line{stroke:#456F53;stroke-width:1;opacity:.12;animation:c-breathe 7s ease-in-out infinite}
.c-hero > *:not(.c-motif){position:relative}
.c-kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3);font-weight:500}
.c-title{font-family:Newsreader,serif;font-weight:500;font-size:54px;line-height:1.03;letter-spacing:-.018em;color:var(--ink);max-width:820px;margin:16px auto 0}
.c-title i{font-style:italic;font-weight:400;color:var(--ink2)}
.c-sub{font-size:16px;color:var(--ink2);max-width:620px;margin:18px auto 0;line-height:1.55}
.c-ask{max-width:640px;margin:28px auto 0;display:flex;align-items:center;gap:10px;border:1px solid #cfdcd2;border-radius:14px;padding:11px 12px 11px 16px;background:#fff;box-shadow:0 10px 30px -22px rgba(15,27,18,.5);text-align:left}
.c-ask .ph{color:#7c9384;flex:1;font-size:14px}
.c-ask .go{background:var(--ink);color:#fff;border-radius:9px;padding:7px 12px;font-size:12px;white-space:nowrap}
.c-caret{display:inline-block;width:1px;height:15px;background:var(--ink);vertical-align:-3px;margin:0 2px;animation:c-blink 1.1s steps(1) infinite}
.c-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:12px}
html:not(.js) .c-chips{display:none}   /* sans JavaScript les pastilles ne font rien : on ne les montre pas */
.c-chip{border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:12px;color:var(--ink2);background:#fff}
.c-alt{margin-top:16px;font-size:13px;color:var(--muted)}
.c-alt u{color:var(--ink);text-decoration-color:#9db6a5;text-underline-offset:3px}
.c-status{font-family:'Spline Sans Mono',monospace;font-size:11px;color:var(--ink3);margin-top:26px;display:inline-flex;gap:9px;align-items:center;letter-spacing:.02em}
.c-dot{width:6px;height:6px;border-radius:50%;background:#3d9a5c;display:inline-block;animation:c-pulse 2.6s ease-out infinite;flex-shrink:0}

.c-eng{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--chalk);border-bottom:1px solid var(--chalk)}
.c-eng div{padding:18px 20px;border-right:1px solid var(--chalk)}
.c-eng div:last-child{border-right:0}
.c-eng b{display:block;font-family:Newsreader,serif;font-size:18px;font-weight:500;color:var(--ink)}
.c-eng span{display:block;font-size:12px;color:var(--muted);margin-top:4px;line-height:1.45}

.c-sec{padding:38px 34px;border-top:1px solid var(--chalk)}
.c-sech{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}
.c-sect{font-family:Newsreader,serif;font-size:30px;font-weight:500;color:var(--ink);letter-spacing:-.01em}
.c-secs{font-size:13px;color:var(--muted);margin-top:4px}
.c-link{font-size:12.5px;color:var(--ink);white-space:nowrap;border-bottom:1px solid #9db6a5;padding-bottom:1px}

.c-reg{border-top:1px solid var(--ink)}
.c-row{display:grid;grid-template-columns:40px 1.1fr 2fr 1fr 1fr 24px;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
.c-row .n{font-family:'Spline Sans Mono',monospace;font-size:12px;color:#617969}
.c-row .t{font-family:Newsreader,serif;font-size:30px;font-weight:500;line-height:1.05}
.c-row .d{font-size:13.5px;color:var(--ink2);line-height:1.5}
.c-row .m{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.c-row .m b{display:block;color:var(--ink);font-weight:500;font-size:13px;text-transform:none;letter-spacing:0;margin-top:3px}
.c-row .ar{font-size:18px;color:var(--ink3)}

.c-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.c-steps.four{grid-template-columns:repeat(4,1fr)}
.c-step{border-top:1px solid var(--ink);padding-top:14px}
.c-step .n{font-family:'Spline Sans Mono',monospace;font-size:11px;color:#617969}
.c-step .t{font-family:Newsreader,serif;font-size:22px;font-weight:500;margin-top:6px}
.c-step .d{font-size:13px;color:var(--ink2);margin-top:8px;line-height:1.5}
.c-step .w{font-size:12px;color:var(--muted);margin-top:10px}

.c-demo{display:grid;grid-template-columns:1fr 1.6fr;gap:30px;align-items:center}
.c-demo .t{font-family:Newsreader,serif;font-size:30px;line-height:1.08;letter-spacing:-.01em}
.c-demo .d{font-size:13.5px;color:var(--ink2);margin-top:12px;line-height:1.55}
.c-console{background:#0F1B12;border-radius:14px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(15,27,18,.8);border:1px solid #1f3426}
.c-chead{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid #1f3426;font-family:'Spline Sans Mono',monospace;font-size:10.5px;color:#7fa08a}
.c-chead .lab{color:#e0b9a3;border:1px solid #5a3b2b;border-radius:4px;padding:1px 6px;margin-left:8px}
.c-cbtn{color:#cfe0d3;background:none;font:inherit;cursor:pointer;border:1px solid #2c4635;border-radius:6px;padding:2px 8px}
.c-cbtn:hover{border-color:#6f917b}
.c-cbtn:focus-visible{outline:2px solid #9fd3ae;outline-offset:2px}
.c-cbody{padding:14px 16px 16px;font-family:'Spline Sans Mono',monospace;font-size:11.5px;line-height:2;color:#cfe0d3}
.c-cl{display:grid;grid-template-columns:50px 96px 1fr;gap:10px}
/* Sans JavaScript, ou avant le premier affichage, toutes les lignes sont visibles : l'entree animee n'existe que sous .c-joue. */
.c-console.c-joue .c-cl{animation:c-type .5s ease backwards;animation-delay:calc(.2s + var(--i,0) * .9s)}
.anims-pause .c-console .c-cl{animation:none!important}
.c-cl .h{color:#6f917b}
.c-cl .v{color:#9fd3ae;letter-spacing:.05em}
.c-cl.wait .v{color:#e7b48f}
.c-cl.ok .v{color:#7fe0a0}

.c-jgrid{display:grid;grid-template-columns:1.75fr 1fr;gap:30px;align-items:start}
.c-j{border-top:1px solid var(--ink)}
.c-je{display:grid;grid-template-columns:96px 104px 1fr 50px;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);align-items:baseline}
.c-je .dt{font-size:12px;color:var(--muted)}
.c-tag{font-family:'Spline Sans Mono',monospace;font-size:10px;letter-spacing:.08em;color:var(--ink3);border:1px solid var(--line);border-radius:4px;padding:1px 6px;justify-self:start}
.c-je .tx{font-size:13.5px;color:var(--ink);line-height:1.45}
.c-je .go{font-size:12px;color:var(--ink3);text-align:right}
.c-tool{border:1px solid var(--line);border-radius:14px;padding:20px;background:linear-gradient(180deg,#fbfdfb,#f2f7f3)}
.c-tool .q{font-family:Newsreader,serif;font-size:23px;line-height:1.15;color:var(--ink);margin-top:10px}
.c-tool .s{font-size:12.5px;color:var(--muted);margin-top:8px;line-height:1.5}
.c-tool .f{margin-top:14px;border:1px solid #cfdcd2;border-radius:10px;padding:9px 11px;font-size:12.5px;color:#8aa090;background:#fff}
.c-tool .b{margin-top:10px;display:inline-block;background:var(--ink);color:#fff;border-radius:9px;padding:7px 12px;font-size:12px}

.c-faq{border-top:1px solid var(--ink)}
.c-faq div{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:14.5px;color:var(--ink)}
.c-faq span{font-family:'Spline Sans Mono',monospace;color:var(--ink3);font-size:15px}

.c-band{background:var(--ink);padding:40px 34px;display:flex;justify-content:space-between;align-items:center;gap:28px}
.c-band .t{font-family:Newsreader,serif;font-size:34px;color:#fff;letter-spacing:-.01em}
.c-band .s{font-size:13.5px;color:#b9cdbf;max-width:540px;margin-top:8px;line-height:1.55}
.c-btns{display:flex;gap:10px;flex-shrink:0}
.c-btn{border-radius:999px;padding:10px 18px;font-size:13px;font-weight:500;white-space:nowrap}
.c-btn.light{background:#EEF4EF;color:#0F1B12}
.c-btn.ghost{border:1px solid #3c5a45;color:#fff}
.c-btn.dark{background:var(--ink);color:#fff}
.c-btn.out{border:1px solid #cfdcd2;color:var(--ink)}

.c-footer{padding:30px 34px 16px;background:#fff;border-top:1px solid var(--ink)}
.c-fcols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:20px;font-size:12.5px;color:var(--ink2)}
.c-fcols b{display:block;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:8px}
.c-fcols span{display:block;margin-bottom:5px}
.c-dots{height:10px;background-image:radial-gradient(circle,#0F1B12 1px,transparent 1.6px);background-size:12px 10px;opacity:.3;margin:26px 0 4px;animation:c-dots 20s linear infinite}
.c-giant{font-family:Newsreader,serif;font-size:150px;line-height:.92;letter-spacing:-.035em;color:#000;font-weight:500}
.c-fbot{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:var(--muted);margin-top:12px}
.c-ai{border:1px solid var(--line);border-radius:999px;padding:4px 11px;color:var(--ink);font-family:'Spline Sans Mono',monospace;font-size:10.5px}

.c-phead{position:relative;padding:44px 34px 36px;overflow:hidden;background:radial-gradient(ellipse at 15% 0%,#f1f7f2 0%,#fff 60%)}
.c-crumb{font-size:12px;color:var(--muted)}
.c-crumb b{color:var(--ink);font-weight:500}
.c-ptitle{font-family:Newsreader,serif;font-size:64px;font-weight:500;letter-spacing:-.02em;line-height:1;margin-top:18px}
.c-psub{font-size:16.5px;color:var(--ink2);max-width:660px;margin-top:16px;line-height:1.55}
.c-kpis{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);margin-top:32px}
.c-kpis div{padding:16px 18px 0 0}
.c-kpis b{font-family:Newsreader,serif;font-size:32px;font-weight:500;display:block;line-height:1.1}
.c-kpis span{display:block;font-size:12.5px;color:var(--muted);margin-top:4px;line-height:1.45}
.c-dom{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.c-domc{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fbfcfb}
.c-domc b{display:block;font-family:Newsreader,serif;font-size:19px;font-weight:500}
.c-domc span{display:block;font-size:12.5px;color:var(--ink2);margin-top:6px;line-height:1.45}
.c-measure{display:grid;grid-template-columns:1fr 1.5fr;gap:28px;align-items:start;background:var(--chalk);border-radius:14px;padding:26px}
.c-measure .t{font-family:Newsreader,serif;font-size:26px;line-height:1.1}
.c-measure .d{font-size:13.5px;color:var(--ink2);line-height:1.6}
.c-measure .d div{margin-bottom:8px}

@keyframes c-breathe{0%,100%{opacity:.07}50%{opacity:.26}}
@keyframes c-pulse{0%{box-shadow:0 0 0 0 rgba(61,154,92,.45)}70%{box-shadow:0 0 0 7px rgba(61,154,92,0)}100%{box-shadow:0 0 0 0 rgba(61,154,92,0)}}
@keyframes c-blink{50%{opacity:0}}
@keyframes c-type{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes c-dots{to{background-position:240px 0}}

/* Accueil (tache 5) : la maquette posee dans une page reelle. Fonds et filets pleine largeur,
   contenu limite a la largeur de la maquette (1180 px, marges 34 px). */
.c-page{font-family:Inter,system-ui,sans-serif;font-weight:400;font-size:16px;line-height:1.4;color:var(--ink)}
:where(.c-page) :is(h2,h3,p){margin:0}
.c-page .c-sec,.c-page .c-band,.c-page .c-eng{padding-left:max(34px,calc((100% - 1180px) / 2 + 34px));padding-right:max(34px,calc((100% - 1180px) / 2 + 34px))}
.c-page .c-eng{padding-top:0;padding-bottom:0}
.c-page .c-eng div:first-child{padding-left:0}
.c-page .c-eng div:last-child{padding-right:0}
.c-page .c-kicker,.c-page .c-title,.c-page .c-sect,.c-page .c-demo .t,.c-page .c-band .t{text-wrap:balance}
.c-vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.c-ask:focus-within{border-color:var(--ink3);box-shadow:0 0 0 3px rgba(69,111,83,.16),0 10px 30px -22px rgba(15,27,18,.5)}
.c-ask input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:var(--ink);padding:0}
.c-ask input::placeholder{color:var(--muted);opacity:1}
.c-ask .go{border:0;font:inherit;font-size:12px;cursor:pointer}
.c-ask .go:hover{background:var(--ink2)}
.c-ask .go-i{display:none}
.c-ask .go:focus-visible,.c-chip:focus-visible{outline:2px solid var(--ink3);outline-offset:2px}
.c-chip{font:inherit;font-size:12px;cursor:pointer;transition:border-color .15s ease,color .15s ease}
.c-chip:hover{border-color:#9db6a5;color:var(--ink)}
#ask-result:empty{display:none}
#ask-result{max-width:640px;margin:14px auto 0;font-size:13.5px;color:var(--ink2);line-height:1.5}
.c-alt a u{color:var(--ink);text-decoration-color:#9db6a5;text-underline-offset:3px}
.c-alt a:hover u{text-decoration-color:var(--ink)}
.c-row{color:inherit;transition:background-color .15s ease}
.c-row:hover{background:#fafcfa}
.c-row:hover .ar{color:var(--ink)}
.c-row .x{display:block;margin-top:6px;font-size:12px;color:var(--muted)}
.c-note{font-size:11.5px;color:var(--muted);margin-top:12px}
.c-step .t{font-family:Newsreader,serif;line-height:1.15}
.c-demo .t{font-family:Newsreader,serif;font-weight:500;color:var(--ink);margin-top:8px}
.c-demo:not(:has(.c-console)){grid-template-columns:1fr}
.c-demo-txt{max-width:640px}
.c-jgrid:not(:has(.c-j)){grid-template-columns:minmax(0,560px)}
.c-tool .q{font-weight:500}
.c-tool .champs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.c-tool .champs .large{grid-column:1 / -1}
.c-tool input{width:100%;border:1px solid #cfdcd2;border-radius:10px;padding:9px 11px;font:inherit;font-size:12.5px;color:var(--ink);background:#fff}
.c-tool input::placeholder{color:var(--muted);opacity:1}
.c-lab{display:block;font-size:13px;font-weight:500;color:var(--ink2);margin-bottom:6px}
.c-tool input:focus{outline:2px solid var(--ink3);outline-offset:1px;border-color:var(--ink3)}
.c-tool .b{border:0;font:inherit;font-size:12px;cursor:pointer}
.c-tool .b:hover{background:var(--ink2)}
.c-link:hover{border-bottom-color:var(--ink)}
.c-faq details{border-bottom:1px solid var(--line)}
.c-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;font-size:14.5px;color:var(--ink);cursor:pointer}
.c-faq summary::-webkit-details-marker{display:none}
.c-faq summary::after{content:"+";font-family:'Spline Sans Mono',monospace;color:var(--ink3);font-size:15px;flex-shrink:0}
.c-faq details[open] summary::after{content:"\2212"}
.c-faq details p{font-size:13.5px;color:var(--ink2);line-height:1.6;padding:0 0 16px;max-width:760px}
.c-faq details a{color:var(--ink);border-bottom:1px solid #9db6a5}
.c-band .t{font-weight:500;line-height:1.1}
.c-btn{transition:background-color .15s ease,border-color .15s ease}
.c-btn.light:hover{background:#fff}
.c-btn.ghost:hover{border-color:#b9cdbf}
.c-page :is(a,button,summary):focus-visible{outline:2px solid var(--ink3);outline-offset:2px;border-radius:4px}
.c-band :is(a):focus-visible{outline-color:#EEF4EF}

/* mouvement : tout element anime porte data-anim */
@media (prefers-reduced-motion: reduce) { [data-anim], [data-anim] * { animation: none !important; transition: none !important; } }
.anims-pause [data-anim], .anims-pause [data-anim] * { animation-play-state: paused !important; }
@media (max-width: 760px) {
  .c-title { font-size: 36px; }
  .c-row, .c-eng, .c-steps, .c-steps.four, .c-kpis, .c-dom, .c-jgrid, .c-demo, .c-measure { grid-template-columns: 1fr; }
  .c-band { flex-direction: column; align-items: flex-start; }
  .nav .liens { display: none; }
}
@media (max-width: 760px) {
  .c-page .c-sec,.c-page .c-band,.c-page .c-eng{padding-left:20px;padding-right:20px}
  .c-hero{padding:48px 20px 40px}
  .c-sub{font-size:15px}
  .c-ask{padding:8px 8px 8px 14px}
  .c-ask .go{padding:7px 10px}
  .c-page .c-eng{grid-template-columns:1fr 1fr}
  .c-page .c-eng div{padding:16px 14px 16px 0;border-right:0}
  .c-page .c-eng div:nth-child(odd){border-right:1px solid var(--chalk)}
  .c-page .c-eng div:nth-child(even){padding-left:14px;padding-right:0}
  .c-page .c-eng div:nth-child(-n+2){border-bottom:1px solid var(--chalk)}
  .c-sec{padding-top:32px;padding-bottom:32px}
  .c-sect{font-size:26px}
  .c-sech{flex-wrap:wrap}
  .c-row{grid-template-columns:1fr 1fr;gap:8px 16px;padding:18px 0}
  .c-row .n,.c-row .t,.c-row .d{grid-column:1 / -1}
  .c-row .t{font-size:26px}
  .c-row .ar{display:none}
  .c-steps{gap:18px}
  .c-demo .t{font-size:26px}
  .c-band{padding-top:34px;padding-bottom:34px}
  .c-band .t{font-size:28px}
  .c-btns{flex-wrap:wrap}
}
@media (max-width: 420px) {
  /* le bouton reste visible : texte remplace par une fleche (nom accessible porte par aria-label) */
  .c-ask .go-t{display:none}
  .c-ask .go-i{display:inline;font-size:16px;line-height:1}
  .c-ask .go{padding:8px 12px}
  .c-tool .champs{grid-template-columns:1fr}
}

/* Pages de pole (tache 6) : gabarit commun Conseil / Conception / Performance */
.c-page .c-phead{padding-left:max(34px,calc((100% - 1180px) / 2 + 34px));padding-right:max(34px,calc((100% - 1180px) / 2 + 34px))}
.c-crumb a{color:inherit;border-bottom:1px solid transparent}
.c-crumb a:hover{border-bottom-color:var(--muted)}
.c-ptitle{margin-bottom:0}
.c-page .c-ptitle{text-wrap:balance}
.c-psub{margin-bottom:0}
.c-kpis b{overflow-wrap:anywhere}
.c-dom.three{grid-template-columns:repeat(3,1fr)}
.c-domc{display:flex;flex-direction:column}
.c-domc .p{display:block;margin-top:auto;padding-top:12px;font-style:normal;font-family:'Spline Sans Mono',monospace;font-size:12.5px;color:var(--ink);letter-spacing:.01em}
.c-tarifs{border-top:1px solid var(--ink)}
.c-tl{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line)}
.c-tl .l{font-size:14px;color:var(--ink2);line-height:1.5}
.c-tl .v{font-family:Newsreader,serif;font-size:22px;font-weight:500;color:var(--ink);line-height:1.25}
.c-tl .v small{display:block;font-family:Inter,system-ui,sans-serif;font-size:12.5px;font-weight:400;color:var(--muted);margin-top:4px;line-height:1.45}
.c-quand{font-size:15px;color:var(--ink2);line-height:1.6;max-width:760px}
.c-measure .t{font-weight:500;color:var(--ink);margin:0}
@media (max-width: 1100px) {
  .c-dom,.c-dom.three{grid-template-columns:repeat(2,1fr)}
  .c-kpis{grid-template-columns:repeat(2,1fr)}
  .c-kpis div{padding-bottom:16px}
}
@media (max-width: 760px) {
  .c-page .c-phead{padding:32px 20px 28px}
  .c-ptitle{font-size:44px}
  .c-psub{font-size:15.5px}
  .c-kpis{grid-template-columns:1fr}
  .c-kpis b{font-size:28px}
  .c-dom,.c-dom.three{grid-template-columns:1fr}
  .c-tl{grid-template-columns:1fr;gap:6px}
  .c-measure{padding:20px}
}

/* Journal (tache 8) : page liste et pages article */
.c-page .c-jlist{padding-top:8px;padding-bottom:64px}
.c-note{font-size:15px;color:var(--ink2);line-height:1.6}
.c-article{max-width:720px;margin:0 auto;padding:44px 24px 72px}
.c-article .c-crumb{margin-bottom:18px}
.c-article h1{font-family:Newsreader,serif;font-weight:500;font-size:40px;line-height:1.1;letter-spacing:-.015em;color:var(--ink);margin:0;text-wrap:balance}
.c-sign{font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.02em;color:var(--ink3);margin:16px 0 30px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.c-article h2{font-family:Newsreader,serif;font-weight:500;font-size:26px;line-height:1.2;color:var(--ink);margin:38px 0 10px}
.c-article h3{font-size:17px;font-weight:600;color:var(--ink);margin:26px 0 8px}
.c-article p,.c-article li{font-size:16.5px;line-height:1.7;color:var(--ink2)}
.c-article p{margin:0 0 16px}
.c-article ul,.c-article ol{margin:0 0 18px;padding-left:22px}
.c-article a{color:var(--ink);text-decoration:underline;text-decoration-color:#9db6a5;text-underline-offset:3px}
.c-article blockquote{margin:22px 0;padding:2px 0 2px 18px;border-left:2px solid var(--line)}
.c-article table{width:100%;border-collapse:collapse;font-size:14px;margin:0 0 20px}
.c-article th,.c-article td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.c-article th{font-weight:600;color:var(--ink);border-bottom-color:var(--ink)}
@media (max-width: 760px) {
  .c-article{padding:32px 20px 56px}
  .c-article h1{font-size:30px}
  .c-je{grid-template-columns:1fr auto;gap:6px 12px}
  .c-je .tx{grid-column:1 / -1;grid-row:2}
  .c-je .go{grid-column:2;grid-row:1}
}

/* Diagnostic (/diagnostic) */
.c-diag{max-width:720px}
.c-diag .champs{gap:10px}
.c-diag input{font-size:15px;padding:11px 13px}
.c-diag .b{font-size:14px;padding:10px 18px;border-radius:999px}
.c-diag .b:disabled{opacity:.55;cursor:wait}
.c-diag-zone{max-width:720px;margin-top:22px}
.c-diag-msg{font-size:16px;line-height:1.55;color:var(--ink2)}
.c-diag-attente{color:var(--ink3)}
.c-diag-erreur{color:var(--terra)}
.c-diag-score{font-family:Newsreader,serif;font-size:38px;font-weight:500;letter-spacing:-.01em;line-height:1.1;color:var(--ink)}
.c-diag-sous{font-size:15.5px;line-height:1.55;color:var(--ink2);margin-top:10px}
.c-diag-site{font-size:15px;color:var(--ink2);margin-top:12px}
.c-diag-h{font-family:Newsreader,serif;font-size:22px;font-weight:500;color:var(--ink);margin-top:26px}
.c-diag-ext,.c-diag-src{margin:10px 0 0;padding-left:20px;font-size:15px;line-height:1.55;color:var(--ink2)}
.c-diag-ext li{margin-top:8px}
.c-diag-src{font-family:'Spline Sans Mono',monospace;font-size:13.5px}
.c-diag-ask{margin-top:24px}
.c-diag-mention{max-width:720px;margin-top:22px;line-height:1.55}
.c-diag-texte{max-width:720px;font-size:16px;line-height:1.6;color:var(--ink2)}
@media (max-width: 760px) {
  .c-diag .champs{grid-template-columns:1fr}
  .c-diag-score{font-size:30px}
}

/* Contact (/contact) */
.c-contact{max-width:720px}
.c-contact label{display:block;font-family:Newsreader,serif;font-size:22px;font-weight:500;line-height:1.2;color:var(--ink);margin-bottom:10px}
.c-contact .c-star{color:var(--terra)}
.c-contact .c-q{margin-top:22px}
.c-contact .c-q:first-of-type{margin-top:16px}
.c-contact .c-q2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.c-contact select,.c-contact textarea,.c-contact input[type=text],.c-contact input[type=email]{width:100%;max-width:100%;box-sizing:border-box;border:1px solid #cfdcd2;border-radius:10px;padding:11px 13px;font:inherit;font-size:16px;line-height:1.4;color:var(--ink);background:#fff}
.c-contact textarea{resize:vertical;min-height:120px}
.c-contact :is(select,textarea,input):focus{outline:2px solid var(--ink3);outline-offset:1px;border-color:var(--ink3)}
.c-contact [aria-invalid=true]{border-color:var(--terra)}
.c-err{margin-top:8px;font-size:14.5px;line-height:1.45;color:#8a3f1d}
.c-req{font-size:14px;color:var(--muted);line-height:1.5}
.c-prog{margin-top:14px;font-family:'Spline Sans Mono',monospace;font-size:12px;letter-spacing:.04em;color:var(--ink3)}
.c-contact .c-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;align-items:center}
.c-contact .c-actions .b{margin-top:0;font-size:15px;padding:11px 20px;border-radius:999px;border:0;font-family:inherit;cursor:pointer}
.c-contact .c-actions .b:hover{background:var(--ink2)}
.c-contact .c-actions .b:disabled{opacity:.55;cursor:wait}
.c-contact .c-actions .c-btn{font:inherit;font-size:14px;font-weight:500;background:#fff;cursor:pointer}
.c-contact .c-promesse{margin-top:18px}
.c-recap-t{font-family:Newsreader,serif;font-size:26px;font-weight:500;margin-top:20px;color:var(--ink)}
.c-recap-t:focus{outline:none}
.c-recap-l{margin:12px 0 0;border-top:1px solid var(--ink)}
.c-recap-r{display:grid;grid-template-columns:minmax(0,170px) minmax(0,1fr) auto;gap:6px 16px;padding:12px 0;border-bottom:1px solid var(--line);align-items:baseline}
.c-recap-r dt{font-size:13px;color:var(--muted)}
.c-recap-r dd{margin:0;font-size:15.5px;color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap}
.c-recap-r dd.vide{color:var(--muted)}
.c-modifier{background:none;border:0;border-bottom:1px solid #9db6a5;padding:0 0 1px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer}
.c-merci{max-width:720px}
.c-merci:focus{outline:none}
.c-merci-t{font-family:Newsreader,serif;font-size:32px;font-weight:500;line-height:1.15;color:var(--ink)}
.c-rdv{max-width:660px;margin-top:14px}
@media (max-width: 760px) {
  .c-contact .c-q2{grid-template-columns:1fr}
  .c-contact label{font-size:20px}
  .c-recap-r{grid-template-columns:1fr auto}
  .c-recap-r dt{grid-column:1 / -1}
  .c-merci-t{font-size:26px}
}
.c-contact [hidden],.c-recap[hidden]{display:none!important}

/* lien d'evitement : visible seulement au focus clavier */
.c-skip{position:fixed;left:12px;top:-60px;z-index:100;background:#fff;color:var(--ink,#0f1b12);border:2px solid var(--ink3,#456f53);border-radius:8px;padding:10px 16px;font-weight:600;font-size:15px;transition:top 120ms ease}
.c-skip:focus,.c-skip:focus-visible{top:12px;outline:2px solid var(--ink3,#456f53);outline-offset:2px}
.c-page:focus{outline:none}
/* Transitions entre pages (spec 3.7), seulement si le visiteur n'a pas demande moins de mouvement */
@media (prefers-reduced-motion: no-preference){@view-transition{navigation:auto}}

/* Liens longs (sources du Journal) : coupés plutôt que de déborder sur mobile */
li > a{overflow-wrap:break-word}
