/* Local adaptation of DS4 prestation, comparateur-decision and programmatic templates.
   Loaded only by ServiceEditorial; no selectors may escape this page root. */
.service-editorial { color:var(--ds-text);background:var(--ds-bg);font-family:var(--ds-font-sans);padding-bottom:64px; }
.service-editorial .service-container { max-width:1180px;margin-inline:auto;padding-inline:32px; }
.service-editorial .service-hero { padding:32px 0 64px;border-bottom:1px solid var(--ds-line); }
.service-editorial .service-breadcrumb { display:flex;gap:12px;font-size: var(--ds-fs-1);color:var(--ds-text-3);margin-bottom:44px; }
.service-editorial .service-breadcrumb a:hover { text-decoration:underline; }
.service-editorial .service-hero-grid { display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:64px;align-items:end; }
.service-editorial .service-eyebrow { font-family:var(--ds-font-mono);font-size: var(--ds-fs-1);letter-spacing:.09em;text-transform:uppercase;color:var(--ds-text-3);margin:0 0 20px; }
.service-editorial h1 { font-size: var(--ds-fs-8);line-height:1.06;letter-spacing:-.045em;font-weight:600;margin:0 0 28px;text-wrap:balance; }
.service-editorial h1 em,.service-editorial h2 em { font-family:var(--ds-font-serif);font-weight:400; }
.service-editorial .service-lead { font-size: var(--ds-fs-4);line-height:1.65;color:var(--ds-text-2);max-width:720px; }
.service-editorial .service-primary { margin-top:28px;white-space:normal; }
.service-editorial .service-overview { border:1px solid var(--ds-line);border-radius:var(--ds-radius-xl);padding:28px;background:var(--ds-bg-soft); }
.service-editorial .service-overview ol { list-style:none;padding:0;margin:0; }
.service-editorial .service-overview li + li { border-top:1px solid var(--ds-line); }
.service-editorial .service-overview a { display:grid;grid-template-columns:22px 1fr 12px;gap:14px;padding:16px 0;font-size: var(--ds-fs-2);line-height:1.5; }
.service-editorial .service-overview a:hover { color:var(--ds-blue); }
.service-editorial .service-number { font-family:var(--ds-font-mono);font-size: var(--ds-fs-1);line-height:1.6;color:var(--ds-text-4); }
.service-editorial .service-intro { max-width:800px;padding-block:40px;margin-inline:auto; }
.service-editorial .service-section { padding-block:52px;border-top:1px solid var(--ds-line);min-width:0; }
.service-editorial .service-section-heading { margin-bottom:24px; }
.service-editorial .service-section-heading > .service-number { display:block;margin-bottom:12px; }
.service-editorial h2 { font-size: var(--ds-fs-7);letter-spacing:-.03em;line-height:1.16;font-weight:600;margin:0;text-wrap:balance; }
.service-editorial h2[id] { scroll-margin-top:110px; }
.service-editorial .service-copy { font-size: var(--ds-fs-3);line-height:1.75;min-width:0;color:var(--ds-text-2);overflow-wrap:anywhere; }
.service-editorial .service-copy > :first-child { margin-top:0; }
.service-editorial .service-copy p { margin:0 0 20px; }
.service-editorial .service-copy p:last-child { margin-bottom:0; }
.service-editorial .service-copy h3 { font-size: var(--ds-fs-5);line-height:1.35;font-weight:600;color:var(--ds-text);margin:30px 0 12px;letter-spacing:-.02em; }
.service-editorial .service-copy ul,.service-editorial .service-copy ol { padding-left:24px;margin:20px 0;list-style:disc; }
.service-editorial .service-copy ol { list-style:decimal; }
.service-editorial .service-copy li { margin-block:9px;padding-left:5px; }
.service-editorial .service-copy li::marker { color:var(--ds-text-3); }
.service-editorial .service-copy a,.service-editorial .service-related a { color:var(--ds-blue);text-decoration:underline;text-underline-offset:3px; }
.service-editorial .service-copy img { max-width:100%;height:auto; }
.service-editorial .service-copy figure { margin:28px 0!important; }
.service-editorial .service-copy blockquote { border-left:3px solid var(--ds-line);padding-left:24px;margin:24px 0; }
.service-editorial .service-copy table { display:block;overflow-x:auto;max-width:100%;border-collapse:collapse;font-size: var(--ds-fs-2);margin:24px 0; }
.service-editorial .service-copy td,.service-editorial .service-copy th { min-width:140px;border:1px solid var(--ds-line);padding:14px;text-align:left;vertical-align:top; }
.service-editorial .service-copy th { background:var(--ds-bg-soft);font-weight:600; }
/* Dossier: documentary rail and an actual checklist from the page. */
.service-dossier .service-section { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.9fr);gap:64px; }
.service-editorial .service-block-deliverables .service-copy { padding:28px;background:var(--ds-bg-soft);border:1px solid var(--ds-line);border-radius:var(--ds-radius-xl); }
.service-editorial .service-block-deliverables .service-copy li { border-bottom:1px solid var(--ds-line);padding-bottom:10px; }
.service-editorial .service-block-deliverables .service-copy li:last-child { border:0; }
/* Decision: broad hero and horizontal reading map, then paired decision blocks. */
.service-decision .service-hero-grid { display:block; }
.service-decision h1 { max-width:1000px; }
.service-decision .service-overview { margin-top:40px;background:none;padding:24px 0 0;border:0;border-top:1px solid var(--ds-line);border-radius:0; }
.service-decision .service-overview ol { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px; }
.service-decision .service-overview li + li { border:0; }
.service-decision .service-sections { display:grid;grid-template-columns:1fr 1fr;column-gap:56px; }
.service-decision .service-block-steps,.service-decision .service-block-guarantee { grid-column:1/-1; }
.service-decision .service-block-steps .service-copy { columns:2;column-gap:56px; }
.service-decision .service-block-steps .service-copy h3 { break-after:avoid; }
.service-decision .service-block-steps .service-copy p,.service-decision .service-block-steps .service-copy ul { break-inside:avoid; }
/* Audit: compact editorial text, with the actual process standing out as a sequence. */
.service-audit .service-sections { max-width:900px;margin-inline:auto; }
.service-audit .service-section-heading { display:grid;grid-template-columns:36px 1fr;gap:16px; }
.service-audit .service-section-heading > .service-number { padding-top:7px; }
.service-audit .service-block-steps { background:var(--ds-bg-soft);padding:40px;border:1px solid var(--ds-line);border-radius:var(--ds-radius-xl);margin-block:20px; }
.service-audit .service-block-steps h3 { border-top:1px solid var(--ds-line);padding-top:24px; }
/* Sector: magazine opening and wider alternating editorial chapters. */
.service-secteur .service-hero-grid { grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start; }
.service-secteur .service-overview { border-radius:0;border-width:0 0 0 1px;background:none; }
.service-secteur .service-section { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,2fr);gap:80px; }
.service-secteur .service-section:nth-child(3n + 2) { background:var(--ds-bg-soft);padding:40px;margin-block:20px;border:1px solid var(--ds-line);border-radius:var(--ds-radius-xl); }
.service-editorial .service-block-guarantee { border-left:3px solid var(--ds-text);padding-left:28px; }
.service-editorial .service-offer { margin-block:48px;display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:40px;border:1px solid var(--ds-line);border-radius:var(--ds-radius-xl); }
.service-editorial .service-offer ul { list-style:none;padding:0;margin:0 0 24px; }
.service-editorial .service-offer li { padding:10px 0;border-bottom:1px solid var(--ds-line); }
.service-editorial .service-price { font-size: var(--ds-fs-7);margin-block:20px; }
.service-editorial .service-faq { padding-block:56px;display:grid;grid-template-columns:1fr 2fr;gap:64px;border-top:1px solid var(--ds-line); }
.service-editorial .service-faq details { border-bottom:1px solid var(--ds-line); }
.service-editorial .service-faq summary { padding:22px 0;cursor:pointer;font-size: var(--ds-fs-3);font-weight:500;list-style:disclosure-closed; }
.service-editorial .service-faq details[open] summary { list-style:disclosure-open; }
.service-editorial .service-faq details p { line-height:1.7;padding:0 0 24px;margin:0;color:var(--ds-text-2); }
.service-editorial .service-related { padding-block:32px;border-top:1px solid var(--ds-line); }
.service-editorial .service-related ul { list-style:none;display:flex;flex-wrap:wrap;gap:16px 28px;padding:0;margin:0; }
.service-editorial .service-final { padding:40px;display:flex;justify-content:space-between;align-items:center;gap:32px;background:var(--ds-text);color:white;border-radius:var(--ds-radius-xl);margin-top:32px; }
.service-editorial .service-final .service-eyebrow { color:var(--ds-text-on-ink-2,#d1d5db); }
.service-editorial .service-final a { flex-shrink:0; }
.service-editorial a:focus-visible,.service-editorial summary:focus-visible { outline:3px solid var(--ds-blue);outline-offset:5px; }
@media(max-width:900px) {
  .service-editorial .service-hero-grid { gap:32px;grid-template-columns:1fr; }
  .service-editorial .service-section,.service-editorial .service-faq { grid-template-columns:1fr;gap:20px; }
  .service-editorial .service-section-heading { margin-bottom:20px; }
  .service-decision .service-sections { column-gap:32px; }
  .service-editorial .service-final { flex-direction:column;align-items:start; }
}
@media(max-width:640px) {
  .service-editorial .service-container { padding-inline:20px; }
  .service-editorial .service-hero { padding-bottom:36px; }
  .service-editorial .service-breadcrumb { margin-bottom:28px; }
  .service-editorial h1 { font-size: var(--ds-fs-7); }
  .service-editorial .service-lead { font-size: var(--ds-fs-3); }
  .service-editorial .service-overview { padding:22px; }
  .service-decision .service-overview { padding:22px 0 0; }
  .service-decision .service-overview ol,.service-decision .service-sections { grid-template-columns:1fr;gap:0; }
  .service-decision .service-overview li + li { border-top:1px solid var(--ds-line); }
  .service-decision .service-block-steps .service-copy { columns:1; }
  .service-editorial .service-section { padding-block:32px; }
  .service-editorial .service-copy { font-size: var(--ds-fs-3); }
  .service-editorial .service-block-deliverables .service-copy,.service-audit .service-block-steps,.service-secteur .service-section:nth-child(3n + 2) { padding:22px; }
  .service-editorial .service-offer { grid-template-columns:1fr;padding:24px;gap:24px; }
  .service-editorial .service-final { padding:28px; }
  .service-editorial .service-final a { white-space:normal;width:100%; }
}
