/* FM4 DesignEngine — dynamic 2026-09-23 08:36:38 */

:root {
  --fm4-block-filter:none;
  --fm4-block-shadow:none;
  --fm4-block-drop-filter:none;
  --fm4-figure-filter:none;
  --fm4-img-filter:none;
  --fm4-block-radius:var(--fm4-global-radius,0);
  --fm4-block-opacity:1;
  --fm4-block-bg:transparent;
  --fm4-block-border:none;
  --fm4-block-overflow:visible;
  --fm4-block-bdblur:none;
  --fm4-block-mask:none;
  --fm4-block-decoration:none;
  --fm4-block-decoration-display:none;
  --fm4-block-margin:0;
  --fm4-block-margin-top:var(--fm4-section-gap,var(--fm4-block-spacing,0));
  --fm4-block-margin-right:var(--fm4-block-margin,0);
  --fm4-block-margin-bottom:var(--fm4-block-margin,0);
  --fm4-block-margin-left:var(--fm4-block-margin,0);
  --fm4-block-padding-top:var(--fm4-block-padding-v,0);
  --fm4-block-padding-right:var(--fm4-block-padding-h,0);
  --fm4-block-padding-bottom:var(--fm4-block-padding-v,0);
  --fm4-block-padding-left:var(--fm4-block-padding-h,0);
  --fm4-block-focal-x:50%;
  --fm4-block-focal-y:50%;
  --fm4-block-ar:auto;
  --fm4-txt-radius:0;
  --fm4-txt-mask:none;
  --fm4-txt-margin:0;
}

:root {
  --fm4-mask-circle: ellipse(50% 50% at 50% 50%);
  --fm4-mask-portrait: inset(0% 10% 0% 10% round 100px);
  --fm4-mask-squircle: polygon(5% 0%,95% 0%,100% 5%,100% 95%,95% 100%,5% 100%,0% 95%,0% 5%);
  --fm4-mask-hexagon: polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);
  --fm4-mask-organic: polygon(48% 9%,85% 20%,100% 50%,80% 90%,45% 100%,15% 80%,0% 50%,15% 15%);
  --fm4-filter-glass: blur(8px) saturate(180%) brightness(1.05);
  --fm4-filter-sepia: sepia(80%) contrast(1.1);
  --fm4-filter-grayscale: grayscale(100%);
  --fm4-filter-vintage: sepia(40%) contrast(1.05) brightness(0.95) saturate(0.8);
  --fm4-filter-vivid: saturate(160%) contrast(1.1);
  --fm4-filter-warm: sepia(30%) saturate(140%) hue-rotate(-5deg) brightness(1.05);
  --fm4-filter-cool: saturate(80%) hue-rotate(20deg) brightness(1.05);
  --fm4-block-spacing: 24px;
  --fm4-space-tight: 0.5rem;
  --fm4-space-read: 1.25rem;
  --fm4-space-breathe: 2.5rem;
  --fm4-space-section: 5rem;
  --fm4-secondary-color: var(--fm4-secondary, color-mix(in srgb, var(--fm4-primary-color, #2563eb) 30%, var(--fm4-text-color, #334155)));
  --fm4-secondary: var(--fm4-secondary-color);
  --fm4-muted-color: color-mix(in srgb, var(--fm4-text-color, #334155) 65%, transparent);
  --fm4-text-shadow-color: rgba(0,0,0,0.85);
  --fm4-project-id: 1;
  --project-id: 1;
  --fm4-project-id: 1;
  --fm4-heading-font: Outfit, sans-serif;
  --theme-heading-font: Outfit, sans-serif;
  --theme-font-head: Outfit, sans-serif;
  --fm4-body-font: Inter, sans-serif;
  --theme-body-font: Inter, sans-serif;
  --theme-font-body: Inter, sans-serif;
  --fm4-heading-gap: 1.15rem;
  --heading-gap: 1.15rem;
  --fm4-heading-gap: 1.15rem;
  --fm4-section-gap: 4.00rem;
  --section-gap: 4.00rem;
  --fm4-section-gap: 4.00rem;
  --fm4-content-gap: 2.25rem;
  --content-gap: 2.25rem;
  --fm4-content-gap: 2.25rem;
  --fm4-page-title-top-gap: 3.25rem;
  --page-title-top-gap: 3.25rem;
  --fm4-page-title-top-gap: 3.25rem;
  --fm4-primary-color: #F05F24;
  --theme-primary: #F05F24;
  --primary-color: #F05F24;
  --fm4-accent-color: #F05F24;
  --theme-accent: #F05F24;
  --accent-color: #F05F24;
  --fm4-background-color: #fafafa;
  --fm4-bg-color: #fafafa;
  --theme-bg: #fafafa;
  --bg-color: #fafafa;
  --background-color: #fafafa;
  --fm4-surface-color: #ffffff;
  --theme-surface: #ffffff;
  --surface-color: #ffffff;
  --fm4-text-color: #111827;
  --theme-text: #111827;
  --text-color: #111827;
  --fm4-border-color: #e5e7eb;
  --theme-border: #e5e7eb;
  --border-color: #e5e7eb;
  --fm4-global-radius: 12.00px;
  --theme-radius: 12.00px;
  --global-radius: 12.00px;
  --fm4-global-radius: 12.00px;
  --fm4-image-radius: 12.00px;
  --image-radius: 12.00px;
  --fm4-image-radius: 12.00px;
  --fm4-dual-themes: 1;
}

:root.dark-mode, html.dark-mode, [data-theme="dark"], body.dark-mode {
  --fm4-primary-color: #F05F24;
  --theme-primary: #F05F24;
  --primary-color: #F05F24;
  --fm4-accent-color: #F05F24;
  --theme-accent: #F05F24;
  --accent-color: #F05F24;
  --fm4-background-color: #0a0c10;
  --fm4-bg-color: #0a0c10;
  --theme-bg: #0a0c10;
  --bg-color: #0a0c10;
  --background-color: #0a0c10;
  --fm4-surface-color: #12151d;
  --theme-surface: #12151d;
  --surface-color: #12151d;
  --fm4-text-color: #f3f4f6;
  --theme-text: #f3f4f6;
  --text-color: #f3f4f6;
  --fm4-border-color: #1e2430;
  --theme-border: #1e2430;
  --border-color: #1e2430;
}


/* ── FM4 Layout & Container Spacing ── */
.fm4-main {
  padding-top: var(--fm4-main-top-padding, 0px);
  padding-bottom: var(--fm4-main-bottom-padding, clamp(3rem, 6vw, 4.5rem));
  padding-inline: var(--fm4-site-padding, 0px);
}