/* ═══════════════════════════════════════════════════════════════════
   IT INSPECTORS — CMS glue
   The design files (theme.css / pages.css / home.css) are copied in from
   the approved build untouched, so anything needed only because the page
   is assembled by the CMS lives here instead of being patched into them.
   ═══════════════════════════════════════════════════════════════════ */

/* Every element renders inside <div class="fm-el fm-el--{slug}">. That extra
   box is not in the approved design, and it is not inert:

     · around the navbar it becomes the containing block for `position:
       sticky`, so the header unsticks after ~120px — the height of its own
       wrapper;
     · around a ScrollTrigger-pinned section it adds a layout box between the
       pin and the page;
     · around the footer it opens a stacking context that traps the floating
       back-to-top button.

   Elements ported straight from the design therefore declare
   supports.section_class = 'fm-raw', and `display: contents` drops their
   wrapper box while keeping the children — leaving exactly the DOM the
   design's CSS and JS expect.

   The trade-off: the backoffice's shared background / padding settings have
   no box to act on for these elements. That is deliberate. Their spacing and
   colour belong to the design system, not to per-instance overrides. */
.fm-el.fm-raw { display: contents; }
