/* disclaimer.css — THE legal-disclaimer component. ⛔ THIS FILE IS THE SOURCE.

   ⛔ IT IS NO LONGER GENERATED, AND THAT IS THE POINT. It began as an extract
   from the frozen occupation template, because the template was the only place
   the component existed. On 2026-08-27 those rules were REMOVED from the
   template and every page — occupation and otherwise — now links this file.
   The generator therefore had nothing left to read: it emitted 3 rules instead
   of 19 and reported success, because its input had become its own output.
   ⚠ A migration tool that keeps running after the migration is a circular
   dependency waiting to empty the thing it produced. build-disclaimer-css.py is
   retired to ops/retired/ with that note.

   ⛔ ONE ELEMENT, ONE SELECTOR SET. Every disclaimer on the site is
   <details class="occ-disc"> — the div variant was converted the same day, which
   removed both the selector-translation layer and the behaviour gap that made
   the hub disclaimer refuse to close (a <div> has no native hide-when-closed,
   and no extracted CSS could ever have supplied it).

   ⚠ Colours are LITERAL, deliberately: --stone is #f0f1ec in the occupation
   template and #57534e (a TEXT colour) in chrome.css. A var() here rendered a
   dark grey box (R-125). */

/* ── INHERITED BASE — what a <details> gets from the template's bare element rule.
   ⛔ ONLY OCCUPATION PAGES HAVE THAT RULE INLINE, so without this every other
   page carrying <details class="occ-disc"> lost the 1px line that CLOSES the
   panel — the border the owner spotted missing on 2026-08-25, reappearing for a
   third time by a different route. Behaviour and appearance carried by the
   ELEMENT TYPE do not travel with a class; they have to be written down.
   ⚠ Must come FIRST: the class rules below override background, border-top,
   border-left, radius, padding and margin, leaving only the closing border. */
.occ-disc { background:#fff;border:1px solid #dfe5df;border-radius:10px;padding:0 18px;margin:10px 0 }
.occ-disc { transition:border-color .2s ease,box-shadow .2s ease }

.occ-disc { margin:44px 0 0;padding:16px 20px 20px 18px;background:#f0f1ec;
  border-top:2px solid #dfe5df;border-left:3px solid #0d5c3d;border-radius:0 4px 4px 0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:12.5px;line-height:1.7;color:#617067 }
.occ-disc summary.occ-disc-h { padding:0;margin:0 0 10px;font-size:10px;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;color:#17211b;cursor:pointer;
  display:flex;align-items:center;gap:.5rem;justify-content:flex-start;list-style:none;
  
  line-height:1 }
.occ-disc summary.occ-disc-h::-webkit-details-marker { display:none }
.occ-disc summary.occ-disc-h::after { content:"+";color:#0d5c3d;font-size:16px;
  font-weight:700;margin-left:auto;line-height:1 }
.occ-disc[open] summary.occ-disc-h::after { content:"−" }
.occ-disc summary.occ-disc-h:focus { outline:none }
.occ-disc summary.occ-disc-h:focus-visible { outline:2px solid #0d5c3d;outline-offset:3px }
.occ-disc summary.occ-disc-h svg { flex-shrink:0;opacity:.55 }
.occ-disc p { margin:0 0 8px }
.occ-disc p:last-of-type { margin-bottom:0 }
.occ-disc strong { color:#17211b;font-weight:600 }
.occ-disc a { color:#617067;text-decoration:underline;text-underline-offset:2px }
.occ-disc a:hover { color:#0d5c3d }
.occ-disc-f, .disclaimer-foot { margin-top:12px;padding-top:10px;border-top:1px solid #dfe5df;
  font-size:11.5px;color:#617067 }
.occ-disc:not([open]) summary.occ-disc-h { margin-bottom:0 }
.occ-disc:not([open]) { padding-top:17.5px;padding-bottom:16.5px }

/* ── ONE RULE THAT IS CORRECT IN BOTH CONTAINING BLOCKS ─────────────────────
   On an occupation page the panel sits inside the centred 850px `.wrap`, so
   `max-width:1032px` never binds and `margin-inline:auto` does nothing.
   Everywhere else the parent is the full-width page, so the same rule gives
   1032px centred — matching the CTA above it.
   ⚠ Scoping this by page family would have worked and would have been worse: a
   rule that has to know what page it is on is the thing this pass exists to
   remove. ⚠ The 40px bottom margin is the ONLY source of the gap below the
   panel; chrome.css zeroes `main`'s padding-bottom so the two cannot drift. */
.occ-disc { max-width:1032px; margin-inline:auto; margin-bottom:40px; }
