/*
 * Technical custom properties.
 *
 * Structural values only. There is no colour, no font-family, no font-size and
 * no font-weight in this file, and there never should be — brand styling is
 * owned entirely by the Elementor Pro Theme Builder and its Site Settings, and
 * a token declared here would compete with it for specificity on every client
 * site.
 *
 * The test for whether something belongs here: would this value be identical on
 * a law firm's site and on a surf shop's? If not, it belongs in Site Settings.
 */

:root {
	/* Layout container. Matches the Elementor default content width so the
	   theme's own templates line up with Elementor-built sections. */
	--enm-container-max: 1140px;
	--enm-container-wide: 1400px;
	--enm-gutter: clamp(1rem, 4vw, 2rem);

	/* Stacking order. Named so a project never has to guess a z-index. */
	--enm-z-base: 0;
	--enm-z-raised: 10;
	--enm-z-sticky: 100;
	--enm-z-overlay: 500;
	--enm-z-modal: 1000;
	--enm-z-skip-link: 9999;

	/* Offset for a sticky Theme Builder header. Set by the project, read by
	   scroll-margin-top so anchor links do not land under the header. */
	--enm-header-offset: 0px;

	/* Breakpoints, mirrored from Elementor's defaults. Exposed as custom
	   properties so JavaScript can read them instead of hard-coding a number
	   that then drifts from the CSS. */
	--enm-bp-mobile: 767px;
	--enm-bp-tablet: 1024px;
	--enm-bp-desktop: 1440px;

	/* Motion. A duration, not a personality — kept here because the reduced
	   motion handling in reset.css needs something to zero out. */
	--enm-motion-duration: 200ms;
	--enm-motion-easing: cubic-bezier(0.2, 0, 0.2, 1);
}
