:root{--deep-green:#0D5630;--sage-green:#426653;--royal-gold:#D4AF37;--bronze-gold:#B8860B;--pure-gold:#F3CD29;--black:#111111;--medium-grey:#595959;--white:#FFFFFF;--warm-beige:#C5B9AB;--light-cream:#E6DFD4;--paper:#F7F4EC;--ink-soft:#4a4a44;--pbi:#F2C811;--mstr:#D9232E;--tableau:#4E79A7;--qlik:#009845;--maxw:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Roboto Condensed,sans-serif;color:var(--black);background:var(--paper);line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:Fjalla One,sans-serif;font-weight:400;letter-spacing:.2px;margin:0}a{color:inherit;text-decoration:none}p{margin:0}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--bronze-gold)}.btn{display:inline-flex;align-items:center;gap:9px;font-family:Roboto Condensed,sans-serif;font-weight:700;font-size:15px;letter-spacing:.02em;padding:13px 22px;border-radius:7px;cursor:pointer;border:1px solid transparent;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}.btn .arw{transition:transform .18s ease}.btn:hover .arw{transform:translate(4px)}.btn-primary{background:var(--royal-gold);color:#fff;box-shadow:0 6px 18px -8px #b8860bb3}.btn-primary:hover{background:var(--pure-gold);color:#4a3800}.btn-ghost{background:transparent;color:var(--deep-green);border-color:#0d563040}.btn-ghost:hover{border-color:var(--bronze-gold);background:#d4af3714}.gs{position:relative;display:inline-block}.gs-trigger .chev{font-size:11px;transition:transform .18s ease;display:inline-block}.gs.open .gs-trigger .chev{transform:rotate(180deg)}.gs-menu{position:absolute;top:calc(100% + 10px);left:0;z-index:130;min-width:272px;max-width:calc(100vw - 56px);background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:13px;padding:8px;box-shadow:0 26px 52px -22px #0d321e80;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s ease,transform .16s ease}.gs.open{z-index:80}.gs.open .gs-menu{opacity:1;transform:none;pointer-events:auto}.gs-menu-label{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--medium-grey);font-weight:700;padding:9px 10px 7px}.gs-item{display:flex;align-items:center;gap:12px;padding:11px 10px;border-radius:9px;font-weight:500;font-size:15.5px;color:var(--black)}.gs-item svg{width:23px;height:23px;flex:none}.gs-item img.gs-logo{height:20px;width:auto;max-width:40px;object-fit:contain;flex:none;display:block}.gs-item .go-arw{margin-left:auto;color:var(--bronze-gold);opacity:0;transform:translate(-5px);transition:.16s ease}.gs-item:hover,.gs-item:focus-visible{background:var(--paper);color:var(--deep-green);outline:none}.gs-item:hover .go-arw,.gs-item:focus-visible .go-arw{opacity:1;transform:none}.gs-center .gs-menu{left:50%;top:auto;bottom:calc(100% + 10px);transform:translate(-50%,6px);text-align:left}.gs-center.open .gs-menu{transform:translate(-50%)}header{position:sticky;top:0;z-index:50;background:var(--deep-green);border-bottom:1px solid rgba(255,255,255,.08)}.nav{display:flex;align-items:center;justify-content:space-between;height:62px}.logo{display:flex;align-items:center;gap:10px;color:#fff}.logo svg{display:block}.logo-img{height:30px;width:auto;display:block}.logo-built{display:none;align-items:center;gap:10px}.logo .word{font-family:Fjalla One,sans-serif;font-size:22px;letter-spacing:.06em}.logo .word b{color:var(--royal-gold);font-weight:400;margin:0 2px}.nav-links{display:flex;gap:30px;align-items:center}.nav-links a{color:#ffffffd1;font-size:15px;font-weight:400;transition:color .15s}.nav-links a:hover{color:var(--pure-gold)}.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:6px}.nav-toggle span{display:block;width:22px;height:2px;background:#fff;margin:4px 0}.hero{position:relative;z-index:20;background:radial-gradient(1100px 480px at 78% -8%,rgba(212,175,55,.16),transparent 60%),linear-gradient(180deg,#f4efe4 0%,var(--paper) 100%);padding:74px 0 64px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:48px;align-items:center}.hero-chip{display:inline-flex;align-items:center;gap:8px;background:#ffffffb3;border:1px solid rgba(184,134,11,.35);color:var(--deep-green);font-weight:700;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;padding:7px 13px;border-radius:100px;margin-bottom:22px}.hero-chip .sq{width:9px;height:9px;background:var(--royal-gold);border-radius:2px}.hero h1{font-size:clamp(38px,5.2vw,66px);line-height:1.02;color:var(--deep-green)}.hero h1 .arrow{color:var(--bronze-gold);font-family:Roboto Condensed;font-weight:300}.hero h1 .gold{color:var(--royal-gold)}.hero .lede{margin-top:20px;max-width:485px;font-size:18px;color:var(--ink-soft);font-weight:300}.hero-actions{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}.src-row{margin-top:34px;padding-top:22px;border-top:1px solid rgba(13,86,48,.14);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.src-row .lab{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--medium-grey);font-weight:700;width:100%;margin-bottom:4px}.pill{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid rgba(0,0,0,.08);padding:6px 12px;border-radius:100px;font-weight:500;font-size:14px;box-shadow:0 2px 6px -4px #00000040}.dot{width:9px;height:9px;border-radius:50%}.pill-logo{height:15px;width:auto;max-width:42px;object-fit:contain;display:block;flex:none}.src-row .to{color:var(--bronze-gold);font-weight:700;padding:0 2px}.pill.dest{background:var(--deep-green);color:#fff;border-color:var(--deep-green)}.pill.dest .dest-logo{width:19px;height:19px;background:#fff;border-radius:50%;padding:2px;box-sizing:border-box;object-fit:contain}.card-stage{position:relative}.dash{background:#fff;border-radius:14px;padding:18px;box-shadow:0 30px 60px -30px #0d321e73,0 2px 8px #0000000d;border:1px solid rgba(0,0,0,.05);position:relative;z-index:2}.dash-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dash-title{display:flex;align-items:center;gap:9px;font-family:Fjalla One;font-size:17px;color:var(--deep-green)}.dash-title .grid-ic{width:16px;height:16px;color:var(--sage-green)}.badge-ok{font-size:11px;font-weight:700;color:var(--deep-green);background:#0d56301a;padding:4px 9px;border-radius:100px}.tiles{display:grid;grid-template-columns:1.4fr 1fr;gap:11px}.tile{background:#faf8f3;border:1px solid rgba(0,0,0,.06);border-radius:9px;padding:12px}.tile.big{grid-row:span 1}.tile .k{font-size:11px;color:var(--medium-grey);text-transform:uppercase;letter-spacing:.08em}.tile .v{font-family:Fjalla One;font-size:30px;color:var(--black);line-height:1.1;margin-top:2px}.tile .up{color:var(--deep-green);font-size:12.5px;font-weight:700}.tile.wide{grid-column:1 / -1}.spark{width:100%;height:46px;display:block}.reconciled{position:absolute;left:-14px;bottom:-18px;z-index:3;background:var(--deep-green);color:#fff;border-radius:11px;padding:12px 16px;box-shadow:0 16px 30px -14px #0d321e99}.reconciled .n{font-family:Fjalla One;font-size:26px;line-height:1}.reconciled .n small{color:var(--pure-gold);font-size:19px}.reconciled .cap{font-size:10px;letter-spacing:.16em;color:#fffc;text-transform:uppercase;margin-top:3px}.strip{background:#fff;border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06)}.strip-in{display:flex;align-items:center;gap:30px;flex-wrap:wrap;padding:20px 0}.strip .lead{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--bronze-gold)}.strip .feat{display:flex;align-items:center;gap:9px;font-size:14.5px;color:var(--ink-soft);font-weight:500}.strip .feat svg{width:17px;height:17px;color:var(--sage-green);flex:none}section{padding:78px 0}.sec-head{max-width:640px;margin-bottom:44px}.sec-head h2{font-size:clamp(28px,3.4vw,40px);color:var(--deep-green);margin-top:10px;line-height:1.08}.sec-head p{margin-top:14px;color:var(--ink-soft);font-size:17px;font-weight:300}.sources{background:var(--paper)}.conv{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:26px 20px;box-shadow:0 20px 44px -30px #0d321e59;margin-bottom:34px}.conv svg{width:100%;height:auto;display:block}.conn-line{transition:stroke-width .22s ease,opacity .22s ease,stroke .22s ease,filter .22s ease}.conv svg.focusing .conn-line{opacity:.15}.conv svg.focusing .conn-line.hl,.conn-line.hl{opacity:1;stroke:#13a24b;stroke-width:5;filter:drop-shadow(0 0 5px rgba(19,162,75,.6));stroke-dasharray:var(--len,600);animation:flow-draw .7s ease forwards}@keyframes flow-draw{0%{stroke-dashoffset:var(--len,600)}to{stroke-dashoffset:0}}.chip[data-src=power-bi].hl .chip-bg{stroke:#8a5a00}.chip[data-src=microstrategy].hl .chip-bg{stroke:#a3151d}.chip[data-src=tableau].hl .chip-bg{stroke:#1a4e80}.chip[data-src=qlik].hl .chip-bg{stroke:#006832}.chip .chip-bg{transition:stroke .2s ease,stroke-width .2s ease,fill .2s ease}.conv svg.focusing .chip{opacity:.42;transition:opacity .2s ease}.conv svg.focusing .chip.hl{opacity:1}.chip.hl .chip-bg{stroke:var(--hlc,#D4AF37);stroke-width:2.6;fill:#fff}.chip{cursor:pointer}.scard.hl{transform:translateY(-4px);box-shadow:0 22px 40px -24px #0d321e73}.src-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.scard{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:13px;padding:20px;border-top:3px solid var(--edge,var(--royal-gold));transition:transform .2s ease,box-shadow .2s ease}.scard:hover{transform:translateY(-4px);box-shadow:0 20px 36px -24px #0d321e66}.scard .mark{width:46px;height:46px;border-radius:11px;background:#fff;border:1px solid rgba(0,0,0,.09);display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 3px 8px -4px #00000047}.scard .mark img{width:30px;height:30px;object-fit:contain;display:block}.scard h4{font-family:Fjalla One;font-size:19px;color:var(--deep-green)}.scard .obj{font-size:12.5px;color:var(--bronze-gold);font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:2px 0 9px}.scard p{font-size:14.5px;color:var(--ink-soft);font-weight:300}a.scard{text-decoration:none;color:inherit}.scard .go{margin-top:15px;padding-top:13px;border-top:1px solid rgba(0,0,0,.07);font-size:14px;color:var(--deep-green);font-weight:700;display:flex;align-items:center;gap:7px}.scard .go .arw{color:var(--bronze-gold);transition:transform .18s ease}.scard:hover .go{color:var(--bronze-gold)}.scard:hover .go .arw{transform:translate(4px)}.lifecycle{background:#fff}.stages{display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:stretch}.stage{background:var(--paper);border:1px solid rgba(0,0,0,.07);border-radius:12px;padding:22px;position:relative}.stage-wrap{position:relative;padding-right:26px}.stage-wrap:last-child{padding-right:0}.conn{position:absolute;top:50%;right:-2px;transform:translateY(-50%);z-index:2;font-size:9.5px;letter-spacing:.14em;color:var(--bronze-gold);font-weight:700;text-transform:uppercase;background:#fff;padding:3px 5px}.stage .ic{width:38px;height:38px;border-radius:9px;background:#4266531f;display:flex;align-items:center;justify-content:center;margin-bottom:26px}.stage .ic svg{width:19px;height:19px;color:var(--deep-green)}.stage .num{position:absolute;top:18px;right:20px;font-family:Fjalla One;font-size:26px;color:#0d563029}.stage h3{font-family:Fjalla One;font-size:20px;color:var(--deep-green)}.stage .tag{color:var(--bronze-gold);font-weight:700;font-size:13.5px;margin:2px 0 10px}.stage p{font-size:14px;color:var(--ink-soft);font-weight:300;min-height:76px}.stage .open{font-weight:700;font-size:13.5px;color:var(--deep-green);display:inline-flex;gap:6px;align-items:center}.stage .open .arw{transition:transform .18s}.stage .open:hover .arw{transform:translate(4px)}.why{background:var(--paper)}.why-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:46px;align-items:start}.why-copy p{margin-top:16px;color:var(--ink-soft);font-size:16px;font-weight:300}.val-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.vcard{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:12px;padding:22px;border-top:3px solid var(--royal-gold)}.vcard .ic{width:34px;height:34px;border-radius:8px;background:#d4af3724;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.vcard .ic svg{width:17px;height:17px;color:var(--bronze-gold)}.vcard h4{font-family:Fjalla One;font-size:18px;color:var(--deep-green)}.vcard p{margin-top:7px;font-size:14px;color:var(--ink-soft);font-weight:300}.stats{background:radial-gradient(700px 300px at 12% 0%,rgba(212,175,55,.22),transparent 55%),linear-gradient(120deg,var(--deep-green),var(--sage-green));padding:60px 0}.stats .eyebrow{color:var(--pure-gold)}.stats h2{color:#fff;font-size:clamp(26px,3vw,36px);margin-top:8px;margin-bottom:34px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.stat{padding:4px 26px;border-left:1px solid rgba(255,255,255,.16)}.stat:first-child{border-left:0;padding-left:0}.stat .n{font-family:Fjalla One;font-size:clamp(42px,5vw,58px);color:var(--pure-gold);line-height:1}.stat .l{color:#ffffffd1;font-size:14px;margin-top:6px}.cta{position:relative;z-index:15;background:var(--paper);text-align:center}.cta h2{font-size:clamp(30px,4vw,46px);color:var(--deep-green);margin-top:10px}.cta h2 .gold{color:var(--royal-gold)}.cta p{margin:14px auto 30px;max-width:520px;color:var(--ink-soft);font-size:17px;font-weight:300}footer{background:linear-gradient(160deg,var(--sage-green),var(--deep-green));color:#fff;padding:56px 0 26px}.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px}.foot-brand .logo{margin-bottom:14px}.foot-brand p{color:#ffffffb8;font-size:14px;font-weight:300;max-width:330px}.foot-col h5{font-family:Roboto Condensed;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--pure-gold);margin:0 0 14px}.foot-col a{display:block;color:#fffc;font-size:14.5px;margin-bottom:9px;font-weight:300}.foot-col a:hover{color:#fff}.foot-bottom{margin-top:40px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#fff9;font-size:13px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal.in{opacity:1;transform:none}.draw{stroke-dasharray:var(--len,600);stroke-dashoffset:var(--len,600);transition:stroke-dashoffset 1.3s ease}.draw.in{stroke-dashoffset:0}@media (max-width:940px){.hero-grid{grid-template-columns:1fr;gap:42px}.src-cards{grid-template-columns:1fr 1fr}.stages{grid-template-columns:1fr 1fr;gap:16px}.stage-wrap{padding-right:0}.conn{display:none}.why-grid{grid-template-columns:1fr;gap:30px}.foot-grid{grid-template-columns:1fr 1fr;gap:26px}.stat-grid{grid-template-columns:1fr 1fr;gap:22px 0}.stat:nth-child(3){border-left:0;padding-left:0}}@media (max-width:620px){.nav-links{position:absolute;top:62px;left:0;right:0;background:var(--deep-green);flex-direction:column;gap:0;padding:8px 0;display:none;border-bottom:1px solid rgba(255,255,255,.1)}.nav-links.open{display:flex}.nav-links a{padding:12px 28px;width:100%}.nav-toggle{display:block}.src-cards,.val-grid{grid-template-columns:1fr}section{padding:56px 0}.stat{padding:0;border-left:0}.stat-grid{grid-template-columns:1fr 1fr;gap:26px 18px}}@media (prefers-reduced-motion:reduce){.reveal,.draw{transition:none}.conn-line.hl{animation:none;stroke-dashoffset:0}html{scroll-behavior:auto}}
