/* MFC "air" rhythm + horizon hero arc. LIVE since mfc-blocks 1.2.0 (owner round 5): loaded and body.mfc-air set on every
   EN/NL page; off with ?mfc_air=0 (preview) or option mfc_blocks_off containing "air" (rollback).
   Spacing scale (content edge -> next content edge, desktop / phone 375), see shots/air-gaps.md:
     A  sub-part inside one block ......................  64 / 48   (press logos -> video tiles)
     B  next block, same topic .........................  112 / 80  (who -> timeline, video tiles -> demo)
     C  new topic on the same canvas ...................  200 / 136 (steps -> who, timeline -> founder, founder -> FAQ)
     D  canvas change through a BG-v1 horizon .........  128 / 96 + the arc (220 / 180)
     E  hero -> plans (dark to dark, under the arc) ....  208 / 136
   Live default is untouched: every rule is scoped to body.mfc-air. */

/* ---------- Shared components (every EN/NL page that embeds them) ---------- */
/* A: the proof band's press row no longer touches what follows (video tiles on home/promo, horizon on /payouts/). */
body.mfc-air .mfc-h2-r5 { margin-bottom: 64px !important; }
/* /payouts/ EN + NL: the proof band follows the dark "How it works" card on the same canvas = C. */
body.mfc-air:is(.page-id-11644, .page-id-33952) .mfc-h2-r5 { margin-top: 111px !important; }
@media (max-width: 767px) {
	body.mfc-air .mfc-h2-r5 { margin-bottom: 48px !important; }
	body.mfc-air:is(.page-id-11644, .page-id-33952) .mfc-h2-r5 { margin-top: 47px !important; }
}

/* ---------- Home (EN 51155 / NL 51161) ---------- */
/* E: hero -> plans. More room under the proof line for the arc. */
html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3 > .e-con-inner { padding-bottom: 206px !important; }
/* D: horizon -> rules, and rules -> proof (the band's own horizon above). */
html body.mfc-home2.mfc-air .mfc-rb { padding-top: 72px !important; }
html body.mfc-home2.mfc-air .mfc-home2-proof .mfc-h2-r5 { margin-top: 28px !important; }
/* C: steps -> who we are. */
html body.mfc-home2.mfc-air .mfc-ww-who { padding-top: 176px !important; }
/* B: who -> timeline. */
html body.mfc-home2.mfc-air .mfc-ww-story { margin-top: 112px !important; }
/* C: timeline -> founder note. */
html body.mfc-home2.mfc-air .mfc-ww-note { padding-top: 64px !important; position: relative; z-index: 1; }
/* C: founder note -> FAQ, with one hairline half-way (two open text blocks on white need a quiet edge). */
html body.mfc-home2.mfc-air .elementor-element.elementor-element-61c38dca { margin-top: 32px !important; }
html body.mfc-home2.mfc-air .mfc-ww-note::after {
	content: ""; position: absolute; left: 50%; bottom: -28px; transform: translateX(-50%);
	width: min(1180px, calc(100% - 2 * max(16px, 3vw))); height: 1px; background: #E3E5E8; pointer-events: none;
}
@media (min-width: 1601px) {
	html body.mfc-home2.mfc-air .elementor-element.elementor-element-61c38dca { margin-top: 2px !important; }
}

@media (max-width: 767px) {
	html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3 > .e-con-inner { padding-bottom: 134px !important; }
	html body.mfc-home2.mfc-air .mfc-rb { padding-top: 32px !important; }
	html body.mfc-home2.mfc-air .mfc-home2-proof .mfc-h2-r5 { margin-top: 20px !important; }
	html body.mfc-home2.mfc-air .mfc-home2-proof .elementor-element.elementor-element-edfebe0 > .e-con-inner,
	html body.mfc-home2.mfc-air .mfc-home2-proof .elementor-element.elementor-element-cca70bc > .e-con-inner { padding-top: 56px !important; }
	html body.mfc-home2.mfc-air .elementor-element.elementor-element-11b2a67b > .e-con-inner { padding-top: 8px !important; }
	html body.mfc-home2.mfc-air .mfc-ww-who { padding-top: 106px !important; }
	html body.mfc-home2.mfc-air .mfc-ww-story { margin-top: 66px !important; }
	html body.mfc-home2.mfc-air .mfc-ww-note { padding-top: 33px !important; }
	html body.mfc-home2.mfc-air .elementor-element.elementor-element-61c38dca { margin-top: -2px !important; }
	html body.mfc-home2.mfc-air .mfc-ww-note::after { bottom: -4px; }
}

/* ---------- Hero arc (r5, 17 Oct, owner: "the line runs too close to the stats, too crooked"): ONE version ----------
   A calm, symmetric planet limb well below the stats, brighter, in the section-horizon colours (BG-v1 ramp: navy ->
   periwinkle -> light blue -> a white core). Geometry: the limb sits 120px (76px phones) above the hero bottom at the
   centre and 50px (36px) above it at both screen edges: an even ellipse sized in % of the width (113% / 103%), so the
   curve reads the same at 1280, 1440 and 1920, and the light never meets the section edge. The glow above the limb is
   short (96px / 56px), so there is plain black air between the stats and the light: stats -> limb ~204 / ~130px.
   References: x.ai home (one light source, text never inside the glow), Raycast Teams (symmetric arcs, wide air). */
html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3 > .e-con-inner { padding-bottom: 324px !important; }
html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3::before {
	animation: none !important; transform: none !important; opacity: 1 !important; filter: none !important;
	background: radial-gradient(113% 600px at 50% calc(100% + 420px),
		#000 0%, #000 85%, rgb(10, 14, 93) 87.5%, rgb(75, 102, 173) 89%, rgb(201, 223, 240) 89.6%, rgb(248, 251, 255) 90%,
		rgb(214, 231, 248) 90.5%, rgb(150, 182, 222) 91.5%, rgb(90, 120, 190) 93.5%, rgba(40, 58, 150, .85) 96.5%,
		rgba(14, 20, 100, .55) 100%, rgba(4, 6, 60, .22) 103.5%, rgba(0, 0, 0, 0) 106%) !important;
}
/* Bloom: brand-blue light hugging the limb only (does not climb to the stats). */
html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 280px; z-index: -1; pointer-events: none;
	-webkit-mask: none; mask: none; filter: none; animation: none !important; opacity: 1 !important;
	background: radial-gradient(58% 64px at 50% calc(100% - 124px), rgba(150, 190, 255, .34), rgba(0, 106, 255, .12) 55%, rgba(0, 106, 255, 0) 100%) !important;
}
/* Plans heading: ~110px under the limb (it no longer needs its own top air). */
html body.mfc-home2.mfc-air .mfc-home2-plans > .elementor-element-4bef4d9c { margin-top: 16px !important; }
@media (max-width: 767px) {
	html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3 > .e-con-inner { padding-bottom: 206px !important; }
	html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3::before {
		background: radial-gradient(103% 300px at 50% calc(100% + 210px),
			#000 0%, #000 88.7%, rgb(10, 14, 93) 91.3%, rgb(75, 102, 173) 93.3%, rgb(201, 223, 240) 94.8%, rgb(248, 251, 255) 95.3%,
			rgb(214, 231, 248) 95.9%, rgb(150, 182, 222) 97%, rgb(90, 120, 190) 99.5%, rgba(40, 58, 150, .85) 103%,
			rgba(14, 20, 100, .55) 107%, rgba(4, 6, 60, .22) 111%, rgba(0, 0, 0, 0) 114%) !important;
	}
	html body.mfc-home2.mfc-air .elementor-element.elementor-element-de899b3::after {
		height: 180px;
		background: radial-gradient(70% 40px at 50% calc(100% - 78px), rgba(150, 190, 255, .34), rgba(0, 106, 255, .12) 55%, rgba(0, 106, 255, 0) 100%) !important;
	}
	html body.mfc-home2.mfc-air .mfc-home2-plans > .elementor-element-4bef4d9c { margin-top: 0px !important; }
}

/* ---------- Proof / video tiles -> horizon on other pages (promo, commodity ...): D, like home demo -> horizon ---------- */
body.mfc-air.mfc-b:not(.mfc-home2) .e-con:has(> .elementor-widget-template :is(.mfc-h2-r5, .mfc-b-media)):has(+ .elementor-widget-template img[src*="BG-v1"]) { padding-bottom: 128px !important; }
/* only when the proof band itself closes the container (1.2.0: on home and /promo/ the video tiles follow it, so the
   press row keeps its 64/48 gap above them; the rule used to zero it there). */
body.mfc-air .e-con:has(> .elementor-widget-template .mfc-h2-r5):not(:has(.mfc-b-media)):has(+ .elementor-widget-template img[src*="BG-v1"]) .mfc-h2-r5:last-child { margin-bottom: 0 !important; }
@media (max-width: 767px) {
	body.mfc-air.mfc-b:not(.mfc-home2) .e-con:has(> .elementor-widget-template :is(.mfc-h2-r5, .mfc-b-media)):has(+ .elementor-widget-template img[src*="BG-v1"]) { padding-bottom: 96px !important; }
}
