
/* Layout : une colonne de lecture (max 760px) sur fond beige, étapes empilées, résultat en encadrés beige foncé ; charte ORéa (beige, anthracite, doré), thème unique */
.regularisation-tool{
  --bg:#f6f1e8;
  --bg-2:#efe6d6;
  --fg:#3b3a37;
  --fg-soft:#6d6a63;
  --gold:#b8933f;
  --gold-soft:#d8c38a;
  --line:#e1d6c1;
  --alert:#5a4634;
  --ok:#b8933f;
  --display:"Cormorant Garamond", Georgia, "Times New Roman", serif;
  --lettrine:"MonteCarlo", "Cormorant Garamond", cursive;
  --body:"Lato", "Helvetica Neue", Arial, sans-serif;
}
.regularisation-tool{height:100%}
.regularisation-tool{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.6;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0 48px}
.regularisation-tool *{box-sizing:border-box}
.regularisation-tool .wrap{max-width:760px;margin:0 auto}
.regularisation-tool header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0 10px;border-bottom:1px solid var(--line);margin-bottom:28px}
.regularisation-tool .logo{font-family:var(--display);font-size:1.55rem;font-weight:600;letter-spacing:.01em}
.regularisation-tool .logo b{color:var(--gold);font-weight:600}
.regularisation-tool .logo span{color:var(--fg)}
.regularisation-tool nav.menu{display:flex;gap:18px;font-size:.85rem;color:var(--fg-soft);flex-wrap:wrap}
.regularisation-tool nav.menu .on{color:var(--gold);border-bottom:2px solid var(--gold)}
.regularisation-tool .band{height:9px;background:var(--gold);border-radius:3px;margin-bottom:22px}
.regularisation-tool h1{font-family:var(--display);font-weight:500;font-size:2.3rem;line-height:1.1;margin:0 0 10px;text-wrap:balance}
.regularisation-tool h1 .ltr{font-family:var(--lettrine);font-size:3.4rem;color:var(--gold);line-height:0;vertical-align:-0.12em;margin-right:2px}
.regularisation-tool h2{font-family:var(--display);font-weight:500;font-size:1.55rem;margin:0 0 8px;text-wrap:balance}
.regularisation-tool h3{font-family:var(--display);font-weight:600;font-size:1.2rem;margin:14px 0 6px}
.regularisation-tool p{margin:0 0 12px;text-align:justify;hyphens:none;-webkit-hyphens:none;text-wrap:pretty}
.regularisation-tool .lead{color:var(--fg-soft);font-size:1.02rem}
.tools-page .regularisation-tool .tool-benefits{display:grid;gap:8px;margin:20px 0 28px}
.tools-page .regularisation-tool .tool-benefits p{display:flex;gap:10px;align-items:baseline;margin:0;font-size:calc(var(--reading-size) * .9);color:var(--ink);text-align:left!important;text-align-last:left;hyphens:none;-webkit-hyphens:none}
.tools-page .regularisation-tool .tool-benefits p::before{content:"";display:block;flex:0 0 14px;height:1px;background:#b8933f;align-self:flex-start;margin-top:.79em}
@media (width < 768px){.tools-page .regularisation-tool .tool-benefits p{font-size:14.4px}}
.regularisation-tool .step{border-top:1px solid var(--line);padding:26px 0}
.regularisation-tool .eyebrow{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.regularisation-tool label{display:block;font-size:.9rem;color:var(--fg-soft);margin-bottom:4px}
.regularisation-tool input[type=text],.regularisation-tool input[type=date],.regularisation-tool select{font:inherit;color:var(--fg);background:#fff;border:1px solid var(--line);border-radius:4px;padding:10px 12px;width:100%;max-width:100%}
.regularisation-tool select{appearance:none;-webkit-appearance:none;padding-right:58px;cursor:pointer;background-image:linear-gradient(var(--line),var(--line)),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1l6 6 6-6' fill='none' stroke='%23b8933f' stroke-width='2'/></svg>");background-repeat:no-repeat;background-position:right 44px center,right 15px center;background-size:1px 60%,14px 9px}
.regularisation-tool select.empty{color:var(--fg-soft)}
.regularisation-tool input:focus,.regularisation-tool select:focus,.regularisation-tool button:focus,.regularisation-tool .chk:focus-within{outline:2px solid var(--gold-soft);outline-offset:2px}
.regularisation-tool .row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.regularisation-tool .row>div{flex:1 1 180px;min-width:0}
.regularisation-tool button{font:inherit;font-weight:700;cursor:pointer;border-radius:4px;padding:10px 18px;border:1px solid var(--gold);background:var(--gold);color:#fff}
.regularisation-tool button.ghost{background:transparent;color:var(--gold)}
.regularisation-tool button.more{padding:6px 0;border:0;font-weight:700;font-size:.9rem}
.regularisation-tool button:disabled{opacity:.5;cursor:default}
.regularisation-tool .note{font-size:.84rem;color:var(--fg-soft);text-align:justify}
.regularisation-tool .msg{font-size:.9rem;margin-top:8px}
.regularisation-tool .req{color:var(--gold);font-weight:700}
.regularisation-tool .msg.err{color:var(--alert)}
.regularisation-tool .msg.ok{color:var(--ok)}
.regularisation-tool .company{background:var(--bg-2);border-radius:6px;padding:14px 16px;margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}
.regularisation-tool .company div{min-width:0}
.regularisation-tool .company .k{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-soft)}
.regularisation-tool .company .v{font-weight:700}
@media (max-width:480px){.regularisation-tool .company{grid-template-columns:1fr}}
.regularisation-tool table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:.93rem}
.regularisation-tool th,.regularisation-tool td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:middle}
.regularisation-tool th{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-soft);font-weight:700}
.regularisation-tool td.num{text-align:right}
.regularisation-tool .tbl{overflow-x:auto}
.regularisation-tool .pill{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid var(--line);color:var(--fg-soft);white-space:nowrap}
.regularisation-tool .chk{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:#fff;cursor:pointer}
.regularisation-tool .chk input{margin-top:4px;accent-color:var(--gold)}
.regularisation-tool .chk span{text-align:justify}
.regularisation-tool .choices{display:grid;gap:8px}
.regularisation-tool .result{margin-top:10px;background:var(--bg-2);border-radius:8px;padding:22px 22px 18px;border:1px solid var(--line)}
.regularisation-tool .result p{text-align:justify}
.regularisation-tool .kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0 18px}
.regularisation-tool .kpi{background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:12px 14px;min-width:0}
.regularisation-tool .kpi .n{font-family:var(--display);font-size:1.9rem;font-weight:600;line-height:1;color:var(--gold)}
.regularisation-tool .kpi .n.bad{color:var(--alert)}
.regularisation-tool .kpi .l{font-size:.8rem;color:var(--fg-soft);margin-top:4px}
@media (max-width:520px){.regularisation-tool .kpis{grid-template-columns:1fr}}
.regularisation-tool .cal li{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}
.regularisation-tool .cal li:last-child{border-bottom:0}
.regularisation-tool .cal{list-style:none;padding:0;margin:0 0 14px}
.regularisation-tool .cal .d{font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}
.regularisation-tool .cal .t{text-align:justify}
@media (max-width:420px){.regularisation-tool .cal li{grid-template-columns:1fr}}
.regularisation-tool .amount{font-family:var(--display);font-size:1.5rem;font-weight:600}
.regularisation-tool .recap{white-space:pre-wrap;background:#fff;border:1px solid var(--line);border-radius:4px;padding:14px;font-size:.88rem;line-height:1.5;text-align:left}
.regularisation-tool textarea{font:inherit;color:var(--fg);background:#fff;border:1px solid var(--line);border-radius:4px;padding:10px 12px;width:100%;min-height:110px}
.regularisation-tool .proto{font-size:.8rem;color:var(--fg-soft);border:1px dashed var(--gold-soft);border-radius:4px;padding:8px 12px;margin-bottom:20px;text-align:justify}
.regularisation-tool footer{margin-top:40px;font-size:.78rem;color:var(--fg-soft);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px}
.regularisation-tool a{color:var(--gold)}
@media (prefers-reduced-motion:no-preference){.regularisation-tool .result{animation:fade .35s ease}}
@keyframes fade{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}
/* Match the existing site without changing the supplied tool's code or content. */
.tool-card,.tool-callout { background:var(--ivory); border:1px solid var(--line); border-radius:6px; padding:28px; box-shadow:none; }
.tool-card { max-width:900px; }
.tool-card .tool-icon { display:block; color:var(--gold); margin-bottom:18px; }
.tool-card h2 { margin-top:0!important; }
.tool-card p:last-child,.tool-callout p:last-child { margin-bottom:0; }
.tool-card a,.tool-callout a { color:var(--gold-deep); }
.tool-callout { margin:28px 0; }
.regularisation-tool {
 --bg:var(--ivory-soft);--bg-2:var(--ivory);--fg:var(--ink);--fg-soft:var(--muted);
 --gold:#b47c0d;--gold-soft:var(--line);--alert:#5a4634;--ok:#b8933f;
 --display:var(--serif);--lettrine:var(--calligraphic);--body:var(--serif);
 height:auto;max-width:none;margin:0;padding:4.5rem max(32px,calc((100% - 1120px)/2));
 font-family:var(--serif);font-size:var(--reading-size);line-height:1.58;color:var(--ink);
}
.regularisation-tool .wrap { width:100%;max-width:900px;margin:0;min-width:0; }
.regularisation-tool [hidden] { display:none!important; }
.regularisation-tool * { hyphens:none;-webkit-hyphens:none;word-break:normal; }
.regularisation-tool .band { display:none; }
.regularisation-tool h1 { max-width:100%;margin:0 0 25px;font-family:var(--serif); }
.regularisation-tool h1::first-letter { font-family:inherit!important;font-size:1em!important;color:inherit; }
.regularisation-tool h1 .ltr { display:inline-block;font-family:var(--calligraphic);font-size:1.18em;font-weight:400;line-height:1;margin-right:.13em;vertical-align:baseline;color:var(--gold); }
.regularisation-tool h1::after { content:"";display:block;width:110px;height:1px;background:var(--gold-deep);margin-top:22px; }
.regularisation-tool h2 { font-size:var(--subtitle-size);line-height:1.35;font-weight:500;margin:0 0 12px;color:var(--ink); }
.regularisation-tool h3 { font-size:var(--subtitle-size);line-height:1.35;font-weight:500;color:var(--ink); }
.regularisation-tool p,.regularisation-tool .lead { font-size:var(--reading-size);line-height:1.58;color:var(--ink);margin:0 0 16px; }
.regularisation-tool .note { font-size:1rem;line-height:1.58; }
.regularisation-tool .step { padding:28px 0; }
.regularisation-tool .eyebrow { color:var(--gold-deep);font-family:var(--sans); }
.regularisation-tool label,.regularisation-tool .msg,.regularisation-tool .company,.regularisation-tool .recap { font-size:1rem;line-height:1.58;color:var(--ink); }
.regularisation-tool :is(p,label,.msg,.recap,.company .v,.kpi .l,.cal .t) { text-align:justify;text-align-last:start; }
.regularisation-tool .row { min-width:0; }
.regularisation-tool :is(input,select,textarea,button) { font-size:1rem;max-width:100%;min-width:0; }
.regularisation-tool :is(input[type=text],input[type=date],textarea) { background:#fffdf8;color:var(--ink); }
.regularisation-tool select,.regularisation-tool option { background-color:var(--ivory);color:var(--ink); }
.regularisation-tool select { width:100%;padding-right:48px; }
.regularisation-tool button { font-family:var(--sans);font-weight:500;line-height:1.58;min-height:44px;background:var(--action-brown);border-color:var(--action-brown);color:var(--ivory-soft); }
.regularisation-tool button:hover { background:var(--gold-deep); }
.regularisation-tool button.ghost { background:transparent;color:var(--gold-deep); }
.regularisation-tool button.ghost:hover { background:var(--ivory); }
.regularisation-tool .recap,.regularisation-tool .chk { background:var(--ivory); }
/* Keep status colours independent of the site's shared palette overrides. */
.tools-page .regularisation-tool .pill{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid #e1d6c1;color:#6d6a63;white-space:nowrap}
.tools-page .regularisation-tool .pill.no{background:#5a4634!important;border-color:#5a4634!important;color:#f6f1e8!important}
.tools-page .regularisation-tool .pill.yes{background:#efe6d6!important;border-color:#e1d6c1!important;color:#6d6a63!important}
.tools-page .regularisation-tool .pill.wait{background:transparent!important;border-color:#b8933f!important;color:#b8933f!important}
.tools-page .regularisation-tool input[type=checkbox]{accent-color:#b8933f!important}
.tools-page .regularisation-tool .kpi .n{color:#b8933f!important}
.tools-page .regularisation-tool .kpi .n.bad{color:#5a4634!important}
.regularisation-tool :is(th,td) { text-align:justify; }
.regularisation-tool .amount { white-space:nowrap;word-spacing:normal; }
.regularisation-tool #fSite { position:fixed!important;left:0!important;top:0;width:1px!important;height:1px!important;padding:0;border:0;opacity:0;pointer-events:none; }
@media (width < 768px) {
 .tool-card,.tool-callout { padding:20px 16px; }
 .regularisation-tool { padding:48px 16px;font-size:16px; }
 .regularisation-tool p,.regularisation-tool .lead,.regularisation-tool .note { font-size:16px;line-height:1.58;width:100%;margin-left:0;margin-right:0; }
 .regularisation-tool .row>div { flex-basis:100%!important; }
 .regularisation-tool .company { grid-template-columns:1fr; }
 .regularisation-tool .result { padding:18px 12px; }
 .regularisation-tool .recap { padding:12px; }
 .regularisation-tool .tbl { overflow:visible; }
 .regularisation-tool table { table-layout:fixed;font-size:13px; }
 .regularisation-tool :is(th,td) { padding:9px 3px;letter-spacing:normal; }
 .regularisation-tool th { font-size:11px; }
 .regularisation-tool th:nth-child(1) { width:25%; }
 .regularisation-tool th:nth-child(2) { width:26%; }
 .regularisation-tool th:nth-child(3) { width:31%; }
 .regularisation-tool th:nth-child(4) { width:18%; }
 .tools-page .regularisation-tool .pill { font-size:10px;padding:3px 5px;letter-spacing:normal; }
 .regularisation-tool input[type=checkbox] { width:18px;height:18px; }
 .regularisation-tool input[type=file] { width:100%;font-size:14px; }
}
@media (width < 768px) {
 .tool-card.editorial-copy > p { width:100%!important;max-width:100%!important;margin-inline:0!important; }
}
#s7 h2{font-size:var(--section-title-size);line-height:1.18;margin:0 0 16px}
#s7 h2 .ltr{display:inline-block;font-family:"MonteCarlo","Cormorant Garamond",cursive;font-size:1.18em;font-weight:400;color:#b8933f;line-height:1;vertical-align:baseline;margin-right:.13em}
#s7 h3{font-size:1.2rem;font-weight:500;display:inline-block;padding-bottom:3px;border-bottom:2px solid #b8933f;margin:18px 0 8px}

.regularisation-tool .step > .eyebrow{font-size:1rem;font-weight:700;line-height:1.35}
.regularisation-tool .step > .eyebrow + h2{font-weight:700}
