/* GVS — desktop header nav spacing
   ============================================================================
   The primary nav items sat 4px apart on desktop and read as crowded. This
   widens the flex GAP on the nav container only. It deliberately does not
   touch padding (that would move the hit areas and the current-item underline)
   or per-item margins (those fight the block editor's own layout classes).

   WHY A clamp() AND NOT A FIXED VALUE
   -----------------------------------
   How much gap fits is not a matter of taste at narrow desktop widths — it is
   arithmetic, and it is the same arithmetic `bindCentredNav()` in theme.js
   performs at runtime:

       menu + 2 * max(brand, controls)  <=  row

   When that is false the nav loses `has-centred-nav`, drops back INTO the
   header's flex flow, and the header — which is `flex-wrap: wrap` — pushes the
   CTA button onto a second line at the far left. Measured on this site: that
   orphan row is what a too-wide gap actually produces, not a gentle
   off-centring. So the ceiling on this gap is a measured number, not a guess.

   MEASURED CLIFFS (chrome-headless-shell, logged out, real pages, per language;
   German "Über uns & Leistungen…" and Spanish "Hazte socio o socia…" are the
   two longest menus and both bind):

       gap  4px  -> single clean row from 1245px up
       gap  8px  -> single clean row from 1275px up
       gap 12px  -> wraps at 1280, clean from 1320px
       gap 16px  -> wraps at 1280 and 1320, clean from 1366px

   `row` is `min(viewport - 64px, 1300px)`, so it SATURATES at a 1364px
   viewport. Above that the header geometry stops changing and the safe gap is
   constant — which is why the ramp ends and the value is capped rather than
   growing with the screen.

   THE THREE PIECES OF THE clamp(), EACH DERIVED
   ---------------------------------------------
   floor 4px  (--space-2): today's value, kept unchanged up to ~1300px. At 1280
              German and Spanish clear the wrap cliff by only 35px; 8px would
              cut that to 5px, which is one font-metric difference away from
              shipping the orphan row. Below ~1300px this header is simply full
              and the fix is fewer/shorter items, not more spacing.
   ramp 8vw - 100px: 4px at a 1300px viewport, 16px at 1450px — it opens up
              exactly where the band starts having slack, and no earlier.
   cap 16px   (--space-5): at the saturated 1300px band the measured safe
              maximum is ~20px, so 16px keeps roughly 32px of menu width in
              hand. Values are the site's own spacing scale, not magic numbers.

   SCOPE: `min-width: 1025px` only. At <=1024px ds.css already sets
   `var(--space-3)` (8px) and the header is swapped for parts/header-mobile.html
   at <=782px; both are left exactly as they were. Mobile is not changed.

   SPECIFICITY: (0,3,0) via `.app-header .app-nav.wp-block-navigation`, which
   clears core's `.wp-block-navigation__container { gap: inherit }` and the
   global-styles layout rule that supplies the 4px, with no `!important`. The
   gap is set on the NAV, not the list: core gives the list and every wrapper
   between them `gap: inherit`, so setting it once at the top carries down and
   nothing has to know about those wrappers.

   ROLLBACK: delete gvs-header-nav-spacing.php and this directory. Nothing else
   references either, and the nav returns to the 4px global-styles value.
   ========================================================================== */

@media (min-width: 1025px) {
	.app-header .app-nav.wp-block-navigation {
		gap: clamp(4px, 8vw - 100px, 16px);
	}
}
