@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Thin.ttf)format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-ThinItalic.ttf)format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-ExtraLight.ttf)format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-ExtraLightItalic.ttf)format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Light.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-LightItalic.ttf)format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-MediumItalic.ttf)format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-SemiBold.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-SemiBoldItalic.ttf)format("truetype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-ExtraBold.ttf)format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-ExtraBoldItalic.ttf)format("truetype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Black.ttf)format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-BlackItalic.ttf)format("truetype");font-weight:900;font-style:italic;font-display:swap}:root{--lumora-red:#e8351a;--lumora-red-raw:#ff2700;--lumora-ember:#c22a12;--lumora-flame:#ff6a4a;--lumora-ink:#1a1410;--lumora-char:#3a2e26;--lumora-stone:#8c8073;--lumora-mist:#c9bfb2;--lumora-bone:#f5f1ea;--lumora-clay:#e8dfd2;--lumora-sand:#efe8db;--lumora-white:#fdfbf7;--bg:var(--lumora-bone);--bg-alt:var(--lumora-clay);--bg-invert:var(--lumora-ink);--surface:var(--lumora-white);--fg:var(--lumora-ink);--fg-muted:var(--lumora-stone);--fg-soft:var(--lumora-char);--fg-invert:var(--lumora-bone);--accent:var(--lumora-red);--accent-hover:var(--lumora-ember);--border:color-mix(in oklch, var(--lumora-stone) 28%, transparent);--border-strong:color-mix(in oklch, var(--lumora-ink) 18%, transparent);--font-serif:"Montserrat", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-display:"Montserrat", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-sans:"Montserrat", ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;--text-xs:11px;--text-sm:13px;--text-base:16px;--text-md:18px;--text-lg:22px;--text-xl:28px;--text-2xl:38px;--text-3xl:52px;--text-4xl:72px;--text-5xl:104px;--leading-tight:1.05;--leading-snug:1.2;--leading-body:1.55;--leading-loose:1.75;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.08em;--tracking-eyebrow:.14em;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--radius-none:0;--radius-sm:2px;--radius-md:4px;--radius-pill:9999px;--shadow-none:none;--shadow-soft:0 2px 24px -8px #1a141026;--shadow-lift:0 8px 40px -12px #1a141038;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-in:cubic-bezier(.6, 0, .8, .3);--dur-fast:.16s;--dur-mid:.24s;--dur-slow:.52s;--container:1440px;--gutter:48px;--gutter-sm:20px;--nav-h:64px;--nav-h-sm:56px}html,body{scroll-behavior:smooth;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01", "ss02";margin:0;padding:0;overflow-x:hidden}*{box-sizing:border-box}a{color:inherit}h1,.h1{font-family:var(--font-display);font-size:var(--text-5xl);line-height:var(--leading-tight);letter-spacing:-.035em;color:var(--fg);text-wrap:balance;font-weight:300}h2,.h2{font-family:var(--font-display);font-size:var(--text-3xl);line-height:var(--leading-snug);letter-spacing:-.028em;text-wrap:balance;font-weight:300}h3,.h3{font-family:var(--font-display);font-size:var(--text-2xl);line-height:var(--leading-snug);letter-spacing:-.022em;font-weight:400}h4,.h4{font-family:var(--font-sans);font-size:var(--text-lg);line-height:var(--leading-snug);font-weight:500}p,.p{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-body);color:var(--fg-soft);text-wrap:pretty}.lead{font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-loose);color:var(--fg);max-width:62ch;font-weight:400}.eyebrow{font-family:var(--font-sans);font-size:var(--text-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--fg-muted);font-weight:600}.meta{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--fg-muted)}strong{color:var(--fg);font-weight:500}em{font-style:italic}code,.mono{font-family:var(--font-mono);font-size:.94em}.btn{font-family:var(--font-sans);font-size:var(--text-sm);letter-spacing:.02em;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-mid) var(--ease-out), color var(--dur-mid) var(--ease-out), border-color var(--dur-mid) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:1px solid #0000;align-items:center;gap:10px;padding:14px 22px;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{transform:scale(.98)}.btn-ghost{color:var(--fg);border-color:var(--border-strong);background:0 0}.btn-ghost:hover{background:var(--lumora-ink);color:var(--fg-invert);border-color:var(--lumora-ink)}.btn-invert{background:var(--fg-invert);color:var(--fg)}.btn-invert:hover{background:var(--accent);color:#fff}.a-underline{color:var(--fg);text-decoration:none;position:relative}.a-underline:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform var(--dur-mid) var(--ease-out);position:absolute;bottom:-3px;left:0;transform:scaleX(0)}.a-underline:hover:after{transform:scaleX(1)}@keyframes lumora-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes lumora-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes lumora-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes lumora-scroll-cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}to{opacity:0;transform:translateY(14px)}}@keyframes lumora-crane-sway{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@keyframes lumora-module-lift{0%{opacity:0;transform:translateY(-80px)}20%{opacity:1}60%,to{opacity:1;transform:translateY(0)}}.lumora-route-in>*{animation:lumora-rise .6s var(--ease-out) both}@media (max-width:980px){.lumora-hero-grid,.lumora-two-col,.lumora-page-hero,.lumora-featured-grid,.lumora-contact-grid{grid-template-columns:1fr!important;gap:48px!important}.lumora-hero-meta{grid-template-columns:1fr!important;gap:32px!important}.lumora-pillar-grid,.lumora-pipeline-grid,.lumora-projects-grid,.lumora-audience-grid,.lumora-stat-grid{grid-template-columns:1fr!important}.lumora-pillar-grid>a,.lumora-audience-grid>div{border-right:none!important;padding:32px 0!important}.lumora-projects-grid>div{grid-column:span 1!important}.lumora-footer-grid{grid-template-columns:1fr 1fr!important;gap:40px!important}:root{--gutter:24px;--text-5xl:56px;--text-4xl:44px;--text-3xl:36px}}@media (max-width:560px){.lumora-footer-grid{grid-template-columns:1fr!important}:root{--gutter:20px;--text-5xl:44px;--text-4xl:36px;--text-3xl:28px}}
