/* CFO official public identity v1.0 — 2026-09-25. Scoped to protect the existing application. */
.cfo-exterior{--cx-bg:#060c18;--cx-panel:#0c1729;--cx-text:#f1f5fa;--cx-muted:#a2aec4;--cx-cyan:#20d5f5;--cx-blue:#315bff;--cx-violet:#8b5cf6;--cx-line:rgba(144,174,214,.16);font-family:"Segoe UI",Tahoma,Arial,sans-serif;background:var(--cx-bg);color:var(--cx-text);font-size:16px;line-height:1.8;isolation:isolate;overflow:clip;color-scheme:dark;text-align:start}
body:has(>.cfo-exterior:not(.hidden)){margin:0;background:#060c18}html:has(.cfo-exterior:not(.hidden)){scroll-behavior:smooth;scroll-padding-top:100px}.cfo-exterior *{box-sizing:border-box}.cfo-exterior.hidden,.cfo-exterior [hidden]{display:none!important}.cfo-exterior h1,.cfo-exterior h2,.cfo-exterior h3,.cfo-exterior p{margin:0}.cfo-exterior h1,.cfo-exterior h2,.cfo-exterior h3{color:var(--cx-text);line-height:1.4}.cfo-exterior h2{font-size:clamp(1.9rem,3.1vw,2.8rem);font-weight:650}.cfo-exterior h3{font-size:1.23rem}.cfo-exterior a{color:inherit;text-decoration:none}.cfo-exterior button,.cfo-exterior select{font:inherit}.cfo-exterior button{cursor:pointer;color:inherit}.cfo-exterior button,.cfo-exterior a{-webkit-tap-highlight-color:transparent}.cfo-exterior :focus-visible{outline:2px solid var(--cx-cyan);outline-offset:5px}.cfo-exterior svg{display:block}.cfo-exterior img{display:block;max-width:100%}.cfo-exterior em{font-style:normal}.cfo-exterior ::selection{background:#315bff;color:#fff}.cfo-exterior .cx-container{width:min(1200px,calc(100% - 96px));margin-inline:auto}/* G4-WEB3 integration (the Owner 2026-09-25): the platform's legacy main / header rules leaked into the site (a side margin, paddings, a header margin) — reset here; the header lockup smaller and centred */.cfo-exterior main{margin:0!important;padding:0!important;width:auto!important;max-width:none!important}.cfo-exterior .cx-header{margin:0!important}.cfo-exterior .cx-header .cx-brand{width:96px}.cfo-exterior .cx-header-inner{min-height:96px}@media(max-width:1050px){.cfo-exterior .cx-header .cx-brand{width:84px}.cfo-exterior .cx-header-inner{min-height:84px}}@media(max-width:760px){.cfo-exterior .cx-header .cx-brand{width:72px}.cfo-exterior .cx-header-inner{min-height:76px}}.cx-section{position:relative;scroll-margin-top:110px}.cx-progress{position:fixed;inset:0 0 auto;height:2px;transform:scaleX(0);transform-origin:right;background:linear-gradient(90deg,#8b5cf6,#20d5f5);z-index:110}.cx-skip{position:fixed;top:10px;inset-inline-start:20px;transform:translateY(-160%);z-index:150;padding:10px 20px;background:#173bcc;border-radius:6px}.cx-skip:focus{transform:none}
.cx-header{position:sticky;top:0;z-index:100;border-bottom:1px solid transparent;background:rgba(6,12,24,.76);backdrop-filter:blur(20px);transition:background .3s,border-color .3s}.cx-header.is-scrolled{background:rgba(6,12,24,.94);border-color:var(--cx-line)}.cx-header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:112px}.cx-brand{flex:none;display:block;width:116px}.cx-brand img{width:100%;height:auto}.cx-nav{display:flex;align-items:center;gap:34px}.cx-nav>a{color:#aab6cd;font-size:.9rem;position:relative;padding:14px 0;transition:color .2s}.cx-nav>a:hover,.cx-nav>a.is-current{color:#fff}.cx-nav>a::after{content:"";position:absolute;bottom:6px;inset-inline:50%;height:1px;background:var(--cx-cyan);transition:inset-inline .25s}.cx-nav>a.is-current::after,.cx-nav>a:hover::after{inset-inline:10%}.cx-header-actions{display:flex;align-items:center;gap:18px}.cx-language{background:none;border:0;padding:10px 4px;font-size:.8rem;letter-spacing:1px}.cfo-exterior .cx-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:12px 26px;border-radius:8px;border:1px solid transparent;font-size:.97rem;font-weight:600;line-height:1.45;background:none;transition:transform .25s,background .25s,box-shadow .25s,border-color .25s}.cfo-exterior .cx-button-primary{background:linear-gradient(125deg,#078cf9,#2845ff);border-color:#397cff;box-shadow:0 5px 30px #1641db22;color:#fff}.cfo-exterior .cx-button-primary:hover{transform:translateY(-3px);box-shadow:0 8px 32px #2464ff44;background:linear-gradient(125deg,#15adff,#3f4bff)}.cfo-exterior .cx-button-outline{border-color:#304661;color:#e5ebf9;background:rgba(14,25,44,.3)}.cfo-exterior .cx-button-outline:hover{border-color:#20d5f5;background:#102038;transform:translateY(-3px)}.cfo-exterior .cx-button-quiet{min-height:42px;padding:9px 22px;border-color:#305272;border-radius:7px;font-weight:400;font-size:.875rem}.cfo-exterior .cx-button-quiet:hover{border-color:#20d5f5;background:#102038}.cx-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.cx-arrow{font-size:1.35rem;font-weight:400}.cx-menu{display:none;width:44px;height:44px;border:1px solid var(--cx-line);border-radius:7px;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:6px}.cx-menu span{height:1px;width:18px;background:#e7f3ff;transition:transform .2s}.cx-menu[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.cx-menu[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.cx-hero{padding-top:60px;padding-bottom:65px}.cx-hero-top{position:relative;min-height:370px;display:grid;grid-template-columns:1.12fr 1fr;align-items:center}.cx-hero-copy{position:relative;z-index:2;padding-bottom:42px}.cx-eyebrow{font-size:.76rem;letter-spacing:.19em;line-height:1.6;color:var(--cx-cyan);font-weight:500}.cfo-exterior [lang=ar] .cx-eyebrow,html[lang=ar] .cx-eyebrow{letter-spacing:.03em}.cx-hero-copy>.cx-eyebrow{display:flex;align-items:center;gap:10px;justify-content:flex-end;letter-spacing:.22em;font-size:.65rem;margin-bottom:20px}.cx-eyebrow>span:empty{width:22px;height:1px;background:var(--cx-cyan)}.cx-hero h1{font-size:clamp(2.65rem,4.7vw,4.35rem);font-weight:650;line-height:1.5;letter-spacing:-1px}.cx-hero h1 em{background:linear-gradient(100deg,#7a8aff,#36b4ff 55%,#3ee0f5);background-clip:text;-webkit-background-clip:text;color:transparent}.cx-lead{color:#b7c4d9;font-size:1.12rem;max-width:530px;margin-top:22px!important}.cx-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.cx-hero-caption{margin-top:24px;display:flex;gap:15px;align-items:center;font-size:.76rem;color:#788ba7}.cx-hero-caption i{height:3px;width:3px;background:#7185a5;border-radius:50%}.cx-ribbon-stage{position:relative;height:360px;margin-inline-start:-80px;margin-inline-end:-95px;pointer-events:none}.cx-ribbon{width:125%;height:125%;position:absolute;top:-35px;left:-15%;overflow:visible;filter:drop-shadow(0 10px 40px #186cba22);transform:translate3d(var(--ribbon-x,0px),var(--ribbon-y,0px),0);transition:transform 1s cubic-bezier(.2,.7,.2,1)}.cx-orbit-label{position:absolute;bottom:27px;inset-inline-start:75px;display:grid;gap:6px;direction:ltr;color:#677a97}.cx-orbit-label>span{font-size:1.25rem;letter-spacing:8px;font-weight:300}.cx-orbit-label>small{font-size:.6rem;letter-spacing:2px}.cx-orb{position:absolute;pointer-events:none;border-radius:50%;filter:blur(70px);opacity:.35}.cx-orb-one{width:360px;height:280px;top:120px;inset-inline-end:1%;background:#1640a2;z-index:-1}.cx-demo-wrap{position:relative;perspective:1800px;scroll-margin-top:130px}.cx-demo{border:1px solid #264873;border-radius:14px;overflow:hidden;background:linear-gradient(140deg,#111f33,#081322);box-shadow:0 35px 100px #0007,0 -5px 50px #2476e20a;transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .5s ease;position:relative}.cx-demo::before{content:"";position:absolute;top:-1px;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,#73b5ff,transparent)}.cx-demo-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:#091425;border-bottom:1px solid #243850;direction:ltr}.cx-demo-wordmark{font-size:.88rem;font-weight:700;letter-spacing:.06em;color:#eef6ff}.cx-demo-wordmark>span{font-size:.56rem;letter-spacing:.18em;color:#8596b2;font-weight:400;margin-left:8px}.cx-demo-badge{font-size:.7rem;color:#92b7d5;border:1px solid #28425c;border-radius:4px;padding:2px 9px}.cx-window-dots{display:flex;gap:5px}.cx-window-dots>i{border:1px solid #406588;width:6px;height:6px;border-radius:50%}.cx-demo-body{padding:26px}.cx-demo-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.cx-overline{font-size:.71rem;letter-spacing:.025em;color:#7f94b3;margin-bottom:6px!important}.cx-demo-heading h2{font-size:1.35rem}.cx-period{display:flex;align-items:center;gap:10px;font-size:.75rem;color:#94a8c4}.cx-period select{font-size:.79rem;border:1px solid #2d4564;border-radius:6px;background:#101f35;color:#d5e0f2;padding:8px 12px;max-width:190px}.cx-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.cx-kpi{padding:18px 20px 15px;border:1px solid #23364e;background:linear-gradient(145deg,#13243b80,#0c192c);border-radius:8px;min-height:152px;position:relative;overflow:hidden}.cx-kpi>span{display:block;font-size:.8rem;color:#a3b5ce}.cx-kpi>strong{display:block;font-size:clamp(1.5rem,2.1vw,2.1rem);font-weight:600;letter-spacing:-.04em;text-align:start;margin:9px 0 2px}.cx-kpi>small{font-size:.66rem;color:#7b90ae}.cx-spark{position:absolute;bottom:16px;inset-inline-end:18px;width:35%;height:25px;stroke:#2adbd6;fill:none;stroke-width:1.5;opacity:.65}.cx-spark-violet{stroke:#a38cfa}.cx-mini-bars{position:absolute;bottom:15px;inset-inline-end:18px;display:flex;align-items:flex-end;gap:3px;height:25px;opacity:.7}.cx-mini-bars i{width:5px;height:30%;background:#429bf5;border-radius:1px}.cx-mini-bars i:nth-child(2n){height:55%}.cx-mini-bars i:nth-child(3n){height:70%}.cx-mini-bars i:last-child{height:95%}.cx-margin-meter{position:absolute;width:34%;height:3px;background:#26394e;bottom:24px;inset-inline-end:20px}.cx-margin-meter>i{height:100%;width:22.3%;background:linear-gradient(90deg,#7669ff,#3dcffc);display:block;transition:width .6s}.cx-chart-layout{display:grid;grid-template-columns:1.85fr 1fr;gap:14px;margin-top:14px}.cx-chart-card,.cx-insight-card{border:1px solid #23364e;background:#0a1729;border-radius:8px;padding:21px 22px}.cx-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cx-chart-head h3{font-size:.92rem}.cx-chart-modes{display:flex;gap:3px;background:#121f32;border:1px solid #23374e;padding:3px;border-radius:6px}.cx-chart-modes button{border:0;background:none;border-radius:3px;padding:4px 11px;font-size:.67rem;color:#93a4bd;white-space:nowrap}.cx-chart-modes button[aria-pressed=true]{background:#245398;color:#e5f4ff}.cx-chart{position:relative;min-height:186px;margin-top:18px;direction:ltr}.cx-chart-svg{width:100%;height:178px;overflow:visible}.cx-chart-svg text{font-family:"Segoe UI",Tahoma,Arial,sans-serif}.cx-chart-svg .cx-bar{transition:y .55s ease,height .55s ease,opacity .2s;cursor:pointer}.cx-chart-svg .cx-bar:focus-visible{outline:none;stroke:#fff;stroke-width:2px}.cx-chart-svg .cx-bar:hover{filter:brightness(1.3)}.cx-chart-legend{display:flex;justify-content:center;gap:18px;color:#a4b7d1;font-size:.65rem;margin-top:0;direction:rtl}.cx-chart-legend span{display:flex;align-items:center;gap:6px}.cx-chart-legend i{display:inline-block;width:5px;height:5px;border-radius:50%}.cx-chart-hint{color:#8195b0;font-size:.66rem;text-align:center;margin-top:12px!important}.cx-chart-tooltip{position:absolute;inset:auto 10px 30px;background:#1a304a;border:1px solid #4f81b1;border-radius:5px;padding:8px 12px;color:#edf6ff;font-size:.74rem;text-align:center;pointer-events:none;z-index:5;box-shadow:0 8px 20px #0005}.cx-insight-card{display:flex;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at 100% 0,#22275655,transparent 75%),#0c172b}.cx-insight-icon{color:#909afa;font-size:1.8rem;line-height:1;margin-bottom:16px}.cx-insight-card h3{font-size:1.18rem;margin-bottom:14px}.cx-insight-card>p:not(.cx-overline){color:#a3b4ce;font-size:.81rem;line-height:1.85}.cx-insight-footer{display:flex;justify-content:space-between;gap:8px;font-size:.67rem;color:#7085a3;margin-top:20px;border-top:1px solid #283650;padding-top:12px}.cx-demo-note{display:flex;justify-content:center;gap:8px;text-align:center;font-size:.76rem;color:#7e91ad;margin-top:20px!important}.cx-demo-note>span:first-child{color:#5d9ec3}
.cx-platform{padding:68px 0 100px}.cx-section-heading{max-width:680px;margin-inline:auto;text-align:center}.cx-section-heading>.cx-eyebrow{margin-bottom:14px}.cx-section-heading>p:not(.cx-eyebrow){color:var(--cx-muted);margin-top:18px;font-size:1rem}.cx-features{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:52px}.cx-feature{position:relative;padding:26px 26px 22px;border:1px solid transparent;border-top:1px solid #2c3a50;border-radius:2px 2px 10px 10px;transition:background .35s,border-color .35s,transform .35s}.cx-feature:hover{background:#101b2e;border-color:#263c59;transform:translateY(-6px)}.cx-feature-number{position:absolute;top:27px;inset-inline-end:25px;font-family:monospace;font-size:.75rem;color:#465a79}.cx-feature>svg{width:32px;height:32px;fill:none;stroke:#50c2f7;stroke-width:1.4;margin-bottom:27px}.cx-feature h3{font-size:1.23rem;margin-bottom:15px}.cx-feature>p{font-size:.92rem;color:#95a7c3;line-height:2;min-height:92px}.cx-feature>a{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:26px;font-size:.8rem;color:#72bdf0}.cx-feature>a>span:last-child{font-size:1.2rem;transition:transform .25s}.cx-feature>a:hover>span:last-child{transform:translate(3px,-3px)}
.cx-showcase{padding:90px 0 100px;border-block:1px solid #1b2a3f;background:radial-gradient(ellipse at 65% 40%,#10295c33,transparent 60%),linear-gradient(90deg,#080f1d,#081322)}.cx-showcase-grid{display:grid;grid-template-columns:.85fr 1.3fr;gap:68px;align-items:center}.cx-showcase-copy>h2{margin:15px 0 22px;font-size:clamp(2rem,3.1vw,2.7rem)}.cx-showcase-copy>p:not(.cx-eyebrow){color:#9aacc7;font-size:.97rem}.cx-tabs{display:grid;gap:6px;margin-top:30px}.cx-tabs>button{display:flex;align-items:center;gap:16px;text-align:start;width:100%;background:transparent;border:1px solid transparent;border-radius:7px;padding:16px 18px;font-size:.9rem;color:#91a3bf;transition:border-color .25s,background .25s,color .25s}.cx-tabs>button>span:last-child{margin-inline-start:auto;opacity:0}.cx-tabs>button[aria-selected=true]{background:linear-gradient(100deg,#14336655,#142338);border-color:#33598c;color:#e2f4ff}.cx-tabs>button[aria-selected=true]>span:last-child{opacity:1;color:#4acbff}.cx-tabs>button:hover{background:#11223c}.cx-tab-num{font-size:.7rem;direction:ltr;color:#6582aa;font-family:monospace}.cx-showcase-description{min-height:70px;margin-top:20px!important;color:#7e91b0!important;font-size:.8rem!important}.cx-screenshot-area{min-width:0;border:1px solid #284568;border-radius:10px;background:#0d192b;box-shadow:0 30px 70px #0005;overflow:hidden;transform:perspective(1600px) rotateY(3deg);transition:transform .5s}.cx-screenshot-area:hover{transform:perspective(1600px) rotateY(0deg)}.cx-screenshot-top{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;direction:ltr;border-bottom:1px solid #253c56}.cx-screenshot-top>span:last-child{font-size:.65rem;color:#819fbd}.cx-screenshot-button{position:relative;display:block;width:100%;background:#0d192b;border:0;padding:0;text-align:start}.cx-screenshot-crop{height:450px;overflow:hidden;position:relative}.cx-screenshot-crop>img{width:100%;height:auto;max-width:none;position:absolute;top:0;left:0;transition:transform .75s cubic-bezier(.2,.7,.2,1);transform:translateY(0)}.cx-screenshot-crop[data-view=cash]>img{transform:translateY(-62%)}.cx-screenshot-crop[data-view=workspaces]>img{transform:translateY(-2%)}.cx-screenshot-crop::after{content:"";position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#0c172bdd)}.cx-expand{position:absolute;inset-inline-end:16px;bottom:16px;display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:.7rem;border:1px solid #477da8;border-radius:5px;background:#0a1d33eb;color:#a4dfff;backdrop-filter:blur(8px)}.cx-expand>svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}
.cx-workflow{padding:100px 0 90px}.cx-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:62px;margin-top:58px}.cx-step{position:relative;text-align:center}.cx-step>span{display:inline-flex;width:48px;height:48px;border-radius:50%;align-items:center;justify-content:center;border:1px solid #365c89;color:#6cd6ff;font-size:.85rem;font-family:monospace;background:#0b1b2f;box-shadow:0 0 24px #235baa10}.cx-step:not(:last-child)::after{content:"";position:absolute;height:1px;background:linear-gradient(90deg,#3d6d9755,transparent);width:calc(100% - 42px);top:24px;inset-inline-start:calc(50% + 50px)}.cx-step>h3{margin:21px 0 12px;font-size:1.15rem}.cx-step>p{color:#8fa3c0;font-size:.88rem;max-width:270px;margin-inline:auto}.cx-contact{padding:75px 0 90px;background:radial-gradient(ellipse at 50% 120%,#26368355,transparent 65%);border-top:1px solid #1b2a40}.cx-contact::after,.cx-contact::before{content:"";position:absolute;width:40%;height:150px;border-top:1px solid #568ae6;opacity:.28;border-radius:50%;bottom:3px;pointer-events:none}.cx-contact::before{left:-10%;transform:rotate(15deg)}.cx-contact::after{right:-10%;transform:rotate(-15deg);border-color:#8467e9}.cx-contact-inner{text-align:center;position:relative;z-index:1}.cx-contact h2{font-size:clamp(2rem,3.8vw,3.3rem);margin-top:16px}.cx-contact h2 em{color:#70caff}.cx-contact-inner>p:not(.cx-eyebrow){color:#93a8c5;margin-top:18px;font-size:1rem}.cx-contact-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:30px}.cx-email{display:inline-block;color:#7e95b5!important;font-size:.8rem;margin-top:23px;letter-spacing:.06em}.cx-footer{border-top:1px solid #1b2b44;padding:24px 0 0;background:#050b15}.cx-footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px}.cx-footer-brand{width:106px}.cx-footer-main>p{font-size:.88rem;color:#8c9db8}.cx-parent-link{font-size:.61rem;letter-spacing:.13em;color:#93a4c0!important;display:flex;gap:12px;align-items:center}.cx-parent-link>span{color:#62cbf4;font-size:1rem}.cx-footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #14243a;padding-block:18px;margin-top:22px}.cx-footer-bottom small{font-size:.66rem;color:#6c819f}.cx-back-top{display:flex;gap:14px;align-items:center;font-size:.72rem;color:#8da4c4!important}.cx-back-top>span:last-child{border:1px solid #293d58;border-radius:50%;display:grid;place-items:center;width:28px;height:28px}.cx-integrated-plans{padding-block:60px}.cx-integrated-plans>h2{font-size:1.8rem;text-align:center;margin-bottom:25px}
.cfo-exterior .cx-lightbox{color:#e9f2ff;width:min(1100px,calc(100vw - 40px));max-height:90vh;border:1px solid #365d88;border-radius:12px;background:#0b1729;padding:24px;box-shadow:0 30px 100px #0009}.cx-lightbox::backdrop{background:#020711de;backdrop-filter:blur(10px)}.cx-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.cx-lightbox-head h2{font-size:1.25rem}.cx-lightbox-head>button{height:42px;width:42px;border:1px solid #344e6c;border-radius:6px;background:#16263d;font-size:1.5rem;flex:none}.cx-lightbox>p{font-size:.8rem;color:#8da5c6;margin:8px 0 20px}.cx-lightbox>img{width:100%;height:auto}.cx-reveal{opacity:1;transform:none}.cx-motion-ready .cx-reveal:not(.is-visible){opacity:0;transform:translateY(25px)}.cx-motion-ready .cx-reveal{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.cx-features>.cx-reveal:nth-child(2),.cx-steps>.cx-reveal:nth-child(2){transition-delay:.08s}.cx-features>.cx-reveal:nth-child(3),.cx-steps>.cx-reveal:nth-child(3){transition-delay:.16s}.cx-motion-ready .cx-hero-copy{animation:cxEnter .9s ease both}.cx-motion-ready .cx-demo-wrap{animation:cxEnter 1s .15s ease both}@keyframes cxEnter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
html[dir=ltr] .cx-hero-copy>.cx-eyebrow{justify-content:flex-start}html[dir=ltr] .cx-hero h1{line-height:1.2;letter-spacing:-2px}html[dir=ltr] .cx-ribbon-stage{transform:scaleX(-1)}html[dir=ltr] .cx-orbit-label{transform:scaleX(-1)}html[dir=ltr] .cx-kpi>strong{text-align:left}html[dir=ltr] .cx-progress{transform-origin:left}html[dir=ltr] .cx-chart-legend{direction:ltr}html[dir=ltr] .cx-showcase-copy>h2{line-height:1.25}
@media(min-width:1600px){.cfo-exterior .cx-container{width:min(1320px,calc(100% - 120px))}.cx-hero-top{min-height:430px}.cx-hero h1{font-size:4.7rem}.cx-ribbon-stage{height:420px}}
@media(max-width:1050px){.cfo-exterior .cx-container{width:calc(100% - 56px)}.cx-header-inner{gap:20px;min-height:100px}.cx-brand{width:100px}.cx-nav{gap:22px}.cx-nav>a{font-size:.82rem}.cx-header-actions{gap:10px}.cx-hero{padding-top:45px}.cx-hero-top{grid-template-columns:1.1fr 1fr}.cx-hero h1{font-size:3.1rem}.cx-hero-copy>.cx-eyebrow{font-size:.58rem}.cx-lead{font-size:1rem}.cfo-exterior .cx-hero-actions>.cx-button{font-size:.86rem;padding:12px 17px;gap:10px}.cx-kpi{padding:16px 14px}.cx-kpi>strong{font-size:1.7rem}.cx-chart-layout{grid-template-columns:1.65fr 1fr}.cx-chart-head{align-items:flex-start;flex-direction:column;gap:8px}.cx-features{gap:15px}.cx-feature{padding-inline:16px}.cx-showcase-grid{gap:35px;grid-template-columns:.85fr 1.15fr}.cx-screenshot-crop{height:390px}.cx-steps{gap:35px}}
@media(max-width:760px){.cfo-exterior .cx-container{width:calc(100% - 36px)}html:has(.cfo-exterior:not(.hidden)){scroll-padding-top:100px}.cx-header-inner{min-height:90px;gap:16px}.cx-brand{width:87px}.cx-nav{display:none;position:absolute;top:100%;inset-inline:0;background:#091525;border-block:1px solid #284261;flex-direction:column;gap:0;padding:12px 24px 20px;box-shadow:0 18px 20px #0004}.cx-nav.is-open{display:flex}.cx-nav>a{width:100%;padding:13px 5px;font-size:1rem}.cx-nav>a::after{display:none}.cx-header-actions{gap:12px}.cx-menu{display:flex}.cfo-exterior .cx-button-quiet{padding:8px 14px;min-height:40px;font-size:.78rem}.cx-language{font-size:.74rem}.cx-hero{padding-top:38px;padding-bottom:30px}.cx-hero-top{grid-template-columns:1fr;min-height:0}.cx-hero-copy{padding-bottom:25px;z-index:2}.cx-hero-copy>.cx-eyebrow{font-size:.6rem;letter-spacing:.16em;margin-bottom:15px}.cx-hero h1{font-size:clamp(2.4rem,8vw,3.3rem);line-height:1.5;letter-spacing:-.5px}.cx-lead{font-size:1rem;max-width:90%;margin-top:16px!important}.cx-hero-actions{gap:10px;margin-top:24px}.cfo-exterior .cx-hero-actions>.cx-button{font-size:.85rem;min-height:49px;padding:11px 17px}.cx-hero-caption{font-size:.7rem;margin-top:18px}.cx-ribbon-stage{height:158px;margin:-5px -35px -5px;max-width:100vw;opacity:.8}.cx-ribbon{height:350px;width:100%;top:-110px;left:10%;max-width:600px}.cx-orbit-label{display:none}.cx-orb-one{top:100px;inset-inline-end:-120px;width:260px}.cx-demo-wrap{scroll-margin-top:100px}.cx-demo-bar{padding:12px 13px;gap:8px;flex-wrap:wrap}.cx-demo-wordmark{font-size:.76rem}.cx-demo-wordmark>span{font-size:.47rem;margin-left:5px}.cx-demo-badge{font-size:.55rem;padding:2px 6px}.cx-window-dots{display:none}.cx-demo-body{padding:14px}.cx-demo-heading{gap:10px;align-items:flex-start;margin-bottom:16px}.cx-demo-heading h2{font-size:1rem}.cx-overline{font-size:.58rem}.cx-period{flex-direction:column;align-items:flex-end;gap:3px;font-size:.62rem}.cx-period select{padding:5px 7px;font-size:.67rem;max-width:150px}.cx-kpis{grid-template-columns:repeat(2,1fr);gap:9px}.cx-kpi{min-height:119px;padding:12px 13px}.cx-kpi>span{font-size:.73rem}.cx-kpi>strong{font-size:1.7rem;margin:5px 0 0}.cx-kpi>small{font-size:.61rem}.cx-spark{height:19px;bottom:14px;inset-inline-end:10px;width:32%}.cx-mini-bars{height:17px;bottom:12px;gap:2px;inset-inline-end:12px}.cx-mini-bars>i{width:4px}.cx-margin-meter{bottom:20px;inset-inline-end:12px;width:25%}.cx-chart-layout{grid-template-columns:1fr;gap:10px;margin-top:10px}.cx-chart-card{padding:15px 14px}.cx-chart-head{flex-direction:row;align-items:center;gap:8px}.cx-chart-head h3{font-size:.79rem}.cx-chart-modes>button{font-size:.6rem;padding:4px 8px}.cx-chart{min-height:150px;margin-top:10px}.cx-chart-svg{height:150px}.cx-chart-hint{font-size:.59rem}.cx-insight-card{padding:17px;display:grid;grid-template-columns:32px 1fr;column-gap:10px}.cx-insight-icon{grid-row:1/4;margin:5px 0 0;font-size:1.7rem}.cx-insight-card>.cx-overline{margin:0!important;font-size:.6rem}.cx-insight-card h3{font-size:.92rem;margin:2px 0 7px}.cx-insight-card>p:not(.cx-overline){font-size:.74rem;grid-column:2}.cx-insight-footer{display:none}.cx-demo-note{font-size:.7rem;max-width:95%;margin-inline:auto!important;line-height:1.9;margin-top:17px!important}.cx-platform{padding:48px 0 55px}.cx-section-heading{max-width:92%}.cx-section-heading>h2{font-size:1.8rem}.cx-section-heading>p:not(.cx-eyebrow){font-size:.9rem;margin-top:15px}.cx-eyebrow{font-size:.67rem}.cx-features{grid-template-columns:1fr;gap:4px;margin-top:30px}.cx-feature{padding:25px 14px;display:grid;grid-template-columns:40px 1fr;gap:0 16px;border-radius:0}.cx-feature>svg{grid-row:1/3;width:27px;height:27px;margin-top:6px}.cx-feature>h3{font-size:1.12rem;margin-bottom:10px;padding-inline-end:35px}.cx-feature>p{min-height:0;font-size:.88rem;line-height:1.9;grid-column:2}.cx-feature>a{grid-column:2;margin-top:17px;font-size:.76rem}.cx-feature-number{top:30px;inset-inline-end:13px;font-size:.65rem}.cx-showcase{padding:55px 0}.cx-showcase-grid{grid-template-columns:1fr;gap:20px}.cx-showcase-copy>h2{font-size:2rem;margin:10px 0 15px}.cx-showcase-copy>p:not(.cx-eyebrow){font-size:.9rem}.cx-tabs{display:flex;gap:6px;margin-top:23px;flex-wrap:wrap}.cx-tabs>button{width:auto;padding:10px 12px;font-size:.76rem;gap:8px}.cx-tabs>button>span:last-child,.cx-tab-num{display:none}.cx-showcase-description{min-height:48px;margin-top:16px!important;font-size:.8rem!important}.cx-screenshot-area{transform:none}.cx-screenshot-crop{height:390px}.cx-workflow{padding:55px 0}.cx-steps{grid-template-columns:1fr;gap:27px;margin-top:32px}.cx-step{display:grid;grid-template-columns:48px 1fr;text-align:start;column-gap:18px;align-items:start}.cx-step>span{grid-row:1/3;width:42px;height:42px;font-size:.78rem}.cx-step>h3{margin:0 0 5px;font-size:1.08rem}.cx-step>p{font-size:.84rem;max-width:none;margin:0}.cx-step:not(:last-child)::after{width:1px;height:calc(100% - 12px);inset-inline-start:21px;top:51px;background:#2b4b6c}.cx-contact{padding:55px 0 60px}.cx-contact h2{font-size:2rem}.cx-contact-inner>p:not(.cx-eyebrow){font-size:.9rem}.cx-contact-actions{gap:10px;flex-direction:column;margin-top:25px}.cx-contact-actions>.cx-button{width:min(100%,290px);font-size:.9rem}.cx-footer-main{flex-wrap:wrap;gap:18px}.cx-footer-brand{width:100px}.cx-footer-main>p{font-size:.8rem;max-width:180px}.cx-parent-link{width:100%;justify-content:center;margin-top:4px}.cx-footer-bottom{gap:15px;margin-top:20px}.cx-footer-bottom small{font-size:.58rem}.cx-back-top{font-size:.67rem;gap:6px}.cfo-exterior .cx-lightbox{padding:15px;width:calc(100vw - 22px)}.cx-lightbox-head h2{font-size:1.05rem}.cx-lightbox-head>button{width:36px;height:36px}.cx-reveal{transition-delay:0s!important}html[dir=ltr] .cx-hero h1{font-size:clamp(2.4rem,9vw,3.4rem);letter-spacing:-1.5px;line-height:1.18}html[dir=ltr] .cx-hero-copy>.cx-eyebrow{font-size:.56rem}html[dir=ltr] .cx-header-actions{gap:7px}}
@media(max-width:380px){.cfo-exterior .cx-container{width:calc(100% - 26px)}.cx-header-actions{gap:7px}.cx-hero h1{font-size:2.25rem}.cfo-exterior .cx-hero-actions>.cx-button{font-size:.8rem;padding:11px 13px}.cx-demo-body{padding:10px}.cx-demo-badge{font-size:.51rem}.cx-kpi>strong{font-size:1.5rem}.cx-chart-head{flex-direction:column;align-items:flex-start}.cx-screenshot-crop{height:330px}.cx-tabs>button{font-size:.7rem;padding:10px}}
@media(prefers-reduced-motion:reduce){html:has(.cfo-exterior:not(.hidden)){scroll-behavior:auto}.cfo-exterior *,.cfo-exterior *::before,.cfo-exterior *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.cx-motion-ready .cx-reveal:not(.is-visible){opacity:1;transform:none}.cx-demo,.cx-ribbon,.cx-screenshot-area{transform:none!important}}
@media print{.cx-header,.cx-demo,.cx-contact,.cx-lightbox,.cx-back-top{display:none!important}.cfo-exterior{background:white;color:#152033}.cfo-exterior h1,.cfo-exterior h2,.cfo-exterior h3{color:#152033}.cx-reveal{opacity:1!important;transform:none!important}}

/* Interactive storytelling: an active product preview with the pacing of the owner's FamTodo reference. */
.cx-motion-toggle{display:grid;place-items:center;width:30px;height:32px;border:1px solid #223750;border-radius:6px;background:#0b182a;font-size:.8rem;color:#8fb8df!important}.cx-motion-toggle:hover{border-color:#4793ca}.cx-motion-toggle:disabled{opacity:.55;cursor:default}.cx-float-chip{position:absolute;display:flex;align-items:center;gap:9px;background:#0b1d32d9;border:1px solid #395c8566;border-radius:9px;padding:10px 15px;box-shadow:0 14px 34px #0004;backdrop-filter:blur(12px);font-size:.73rem;color:#b7d6ee;animation:cxChipFloat 6s ease-in-out infinite alternate}.cx-float-one{top:22px;inset-inline-end:45px;animation-delay:-2s}.cx-float-two{bottom:53px;inset-inline-start:50px}.cx-float-one>i{height:6px;width:6px;box-shadow:0 0 12px #20d5f5;border-radius:50%;background:#20d5f5}.cx-float-two>svg{width:38px;height:21px;fill:none;stroke:#20d5f5;stroke-width:1.5}.cx-hero h1 em{background-size:200% 100%;animation:cxGradientMove 7s ease-in-out infinite alternate}.cx-story{display:grid;grid-template-columns:.9fr 1.15fr;gap:48px;margin-top:48px;align-items:center}.cx-story-controls{display:grid;gap:14px}.cx-story-step{display:flex;align-items:center;gap:18px;border:1px solid transparent;border-radius:10px;background:transparent;padding:20px;text-align:start;transition:background .3s,border-color .3s,transform .3s}.cx-story-step:hover{background:#0d1b31}.cx-story-step[aria-pressed=true]{background:linear-gradient(120deg,#101d35,#12284366);border-color:#345781;transform:translateX(-5px)}.cx-story-number{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #35516f;border-radius:50%;font-size:.78rem;font-family:monospace;color:#829bbe;transition:color .3s,border-color .3s}.cx-story-step[aria-pressed=true] .cx-story-number{color:#62dcff;border-color:#308acf;box-shadow:0 0 23px #249cec1a}.cx-story-step>span:nth-child(2){display:grid;gap:7px}.cx-story-step strong{font-size:1.08rem;font-weight:600}.cx-story-step small{font-size:.81rem;line-height:1.9;color:#8fa5c2}.cx-story-step>i{width:5px;height:5px;border-radius:50%;background:#2c425e;margin-inline-start:auto;flex:none}.cx-story-step[aria-pressed=true]>i{background:#42cfff;box-shadow:0 0 15px #20d5f5}.cx-story-screen{position:relative;border:1px solid #2c496d;border-radius:12px;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,#13356650,transparent 80%),#0a1628;box-shadow:0 25px 60px #0003}.cx-story-top{padding:16px 19px;border-bottom:1px solid #263b56;display:flex;justify-content:space-between;align-items:center;gap:15px;direction:ltr}.cx-story-top>span{font-size:.59rem;letter-spacing:.13em;color:#7f9bbb}.cx-story-top>button{display:flex;align-items:center;gap:8px;border:1px solid #35567b;border-radius:5px;background:#16345655;padding:6px 10px;font-size:.71rem}.cx-story-top>button>span:first-child{color:#54c4f7}.cx-story-scene{min-height:310px;padding:35px 26px 20px;text-align:center;animation:cxSceneIn .5s ease both}.cx-source-pills{display:flex;justify-content:center;gap:10px;direction:ltr}.cx-source-pills>span{display:flex;align-items:center;gap:7px;padding:9px 12px;background:#13263f;border:1px solid #335573;border-radius:6px;font-size:.65rem;color:#60beec;animation:cxSourceEnter .65s backwards}.cx-source-pills>span:nth-child(2){animation-delay:.1s}.cx-source-pills>span:nth-child(3){animation-delay:.2s}.cx-source-pills b{font-size:.74rem;color:#b4cce5;font-weight:400}.cx-flow-lines{display:flex;justify-content:center;gap:70px;height:60px;position:relative;overflow:hidden}.cx-flow-lines>i{position:relative;width:1px;background:linear-gradient(#377eac,#16426b);height:60px}.cx-flow-lines>i::after{content:"";position:absolute;top:0;left:-1px;width:3px;height:14px;background:#53dfff;box-shadow:0 0 10px #42cfff;animation:cxDataFlow 2s ease-in-out infinite}.cx-flow-lines>i:nth-child(2)::after{animation-delay:.4s}.cx-flow-lines>i:nth-child(3)::after{animation-delay:.8s}.cx-data-core{display:grid;place-content:center;gap:2px;width:190px;min-height:72px;margin:auto;border:1px solid #5084c5;border-radius:10px;background:linear-gradient(130deg,#183b69,#242950);box-shadow:0 0 40px #2b62d122}.cx-data-core>span{font-size:1.5rem;font-weight:650;letter-spacing:.14em;line-height:1.2}.cx-data-core>small{font-size:.63rem;color:#a3c5e9}.cx-story-scene>p{font-size:.83rem;color:#8da6c7;margin-top:23px!important;line-height:1.8}.cx-story-bars{height:145px;display:flex;align-items:flex-end;justify-content:center;gap:15px;direction:ltr;max-width:340px;margin-inline:auto;border-bottom:1px solid #365272;background:repeating-linear-gradient(transparent,transparent 35px,#25426066 36px)}.cx-story-bars>i{width:25px;border-radius:4px 4px 0 0;background:linear-gradient(0deg,#2758d5,#40d6ef);height:var(--bar);transform-origin:bottom;animation:cxBarGrow .8s ease both}.cx-story-bars>i:nth-child(2n){background:linear-gradient(0deg,#443caf,#9b8beb);animation-delay:.1s}.cx-story-bars>i:nth-child(3n){animation-delay:.2s}.cx-story-tags{display:flex;justify-content:center;gap:12px;margin-top:22px}.cx-story-tags>span{font-size:.7rem;color:#a1bfdf;padding:4px 12px;background:#112844;border:1px solid #29415d;border-radius:20px}.cx-decision-ring{width:94px;height:94px;border:1px solid #5368b0;border-radius:50%;margin:0 auto 14px;display:grid;place-items:center;background:radial-gradient(#405bc755,transparent);box-shadow:0 0 45px #4263d51c;position:relative}.cx-decision-ring::before{content:"";position:absolute;inset:-8px;border:1px solid transparent;border-top-color:#39d4f2;border-bottom-color:#7f69e6;border-radius:50%;animation:cxOrbit 8s linear infinite}.cx-decision-ring>span{font-size:2.5rem;color:#7bc4fb}.cx-story-scene>h3{font-size:1.35rem}.cx-story-status{padding:10px 15px;background:#071221;border-top:1px solid #1f3651;font-size:.7rem;text-align:center;color:#657f9f}.cx-motion-paused *,.cx-motion-paused *::before,.cx-motion-paused *::after{animation:none!important;transition:none!important}.cx-motion-paused .cx-demo,.cx-motion-paused .cx-ribbon,.cx-motion-paused .cx-screenshot-area{transform:none!important}.cx-motion-paused .cx-reveal{opacity:1!important;transform:none!important}html:has(.cx-motion-paused:not(.hidden)){scroll-behavior:auto}@keyframes cxChipFloat{from{transform:translateY(0)}to{transform:translateY(-12px)}}@keyframes cxGradientMove{from{background-position:0% 50%}to{background-position:100% 50%}}@keyframes cxDataFlow{from{transform:translateY(-18px);opacity:0}25%{opacity:1}to{transform:translateY(65px);opacity:0}}@keyframes cxSceneIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes cxSourceEnter{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@keyframes cxBarGrow{from{transform:scaleY(.03)}to{transform:scaleY(1)}}@keyframes cxOrbit{to{transform:rotate(360deg)}}
@media(min-width:1060px){.cx-header .cx-brand{width:132px}.cx-header-inner{min-height:120px}}
@media(max-width:1050px){.cx-story{gap:25px;grid-template-columns:1fr 1.1fr}.cx-story-step{padding:15px;gap:12px}.cx-source-pills{gap:5px}.cx-source-pills>span{padding:8px;font-size:.58rem}.cx-source-pills b{font-size:.65rem}.cx-float-one{inset-inline-end:30px;top:25px}.cx-float-two{inset-inline-start:40px;bottom:40px}}
@media(max-width:760px){.cx-motion-toggle{width:25px;height:30px;font-size:.7rem}.cx-header-actions{gap:9px}.cx-float-one{top:5px;inset-inline-end:60px;font-size:.61rem;padding:7px 10px;animation-duration:5s}.cx-float-two{bottom:10px;inset-inline-start:30px;font-size:.6rem;padding:6px 9px}.cx-float-two>svg{width:27px;height:17px}.cx-story{grid-template-columns:1fr;gap:23px;margin-top:28px}.cx-story-controls{gap:7px}.cx-story-step{padding:15px 12px}.cx-story-number{width:35px;height:35px;font-size:.72rem}.cx-story-step strong{font-size:1rem}.cx-story-step small{font-size:.77rem}.cx-story-scene{min-height:300px;padding:30px 18px 18px}.cx-story-top{padding:12px}.cx-story-top>span{font-size:.51rem}.cx-story-top>button{font-size:.66rem;padding:5px 8px}.cx-story-scene>p{font-size:.77rem}.cx-story-bars{max-width:285px;gap:11px}.cx-story-bars>i{width:23px}.cx-story-tags{gap:7px}.cx-story-tags>span{font-size:.64rem}.cx-source-pills>span{padding:8px 10px;font-size:.58rem}.cx-source-pills b{font-size:.68rem}.cx-footer-brand{width:125px}}
@media(max-width:380px){.cx-header-actions{gap:6px}.cx-motion-toggle{width:23px}.cx-brand{width:76px}.cfo-exterior .cx-button-quiet{padding:8px 10px;font-size:.75rem}}
html[dir=ltr] .cx-float-chip{transform:scaleX(-1);animation-name:cxChipFloatFlip}@keyframes cxChipFloatFlip{from{transform:scaleX(-1) translateY(0)}to{transform:scaleX(-1) translateY(-12px)}}
/* Only the approved logo presentation changes on the existing sign-in screen. */
html[data-cfo-integrated] .login-brand .cfo-logo-box:has(img[src="/assets/cfo-official-transparent-v1.png"]){width:108px;height:85px;border:0!important;border-radius:0}
html[data-cfo-integrated] .cfo-logo-box img[src="/assets/cfo-official-transparent-v1.png"]{width:100%;height:100%;object-fit:contain;filter:none}

/* Scroll cards: native sticky positioning, with depth driven by actual scroll position. */
.cx-scroll-cue{display:flex;align-items:center;justify-content:center;gap:13px;color:#91aecb;font-size:.8rem;margin-top:28px}.cx-scroll-mouse{width:19px;height:29px;border:1px solid #4381af;border-radius:11px;display:flex;justify-content:center;padding-top:6px;flex:none}.cx-scroll-mouse>i{width:2px;height:6px;border-radius:2px;background:#5cdcff;animation:cxWheelCue 1.8s ease-in-out infinite}.cx-features{display:block;margin-top:38px;position:relative}.cx-feature-slot{position:relative;margin-bottom:28px;z-index:calc(var(--card-index) + 1)}.cx-feature-slot:last-child{margin-bottom:0}.cx-features .cx-feature{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:48px;min-height:405px;padding:40px;border:1px solid #34587a;border-radius:22px;background:linear-gradient(125deg,#152840,#0b1628 70%);box-shadow:0 25px 65px #0005;transform-origin:50% 0;transform:translateY(var(--card-lift,0px)) scale(var(--card-scale,1));filter:brightness(var(--card-light,1));transition:none;overflow:hidden}.cx-feature-slot:nth-of-type(2) .cx-feature{background:linear-gradient(125deg,#202744,#0d172c 70%);border-color:#464c86}.cx-feature-slot:nth-of-type(3) .cx-feature{background:linear-gradient(125deg,#11313c,#0b1b2e 70%);border-color:#2b6379}.cx-feature-copy{min-width:0;position:relative}.cx-features .cx-feature-number{position:static;display:block;font-size:.74rem;color:#789bc0;letter-spacing:.16em;margin-bottom:32px;direction:ltr;text-align:start}.cx-feature-copy>.cx-eyebrow{margin-bottom:15px;font-size:.72rem}.cx-features .cx-feature h3{font-size:clamp(1.7rem,3vw,2.6rem);margin-bottom:18px;line-height:1.4}.cx-feature-copy>p:not(.cx-eyebrow){font-size:.98rem;line-height:1.95;color:#afc0d8;max-width:460px}.cx-feature-copy>a{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#78d3ff;font-size:.86rem;margin-top:26px;padding-top:18px;border-top:1px solid #35506b}.cx-feature-copy>a>span:last-child{font-size:1.3rem}.cx-feature-copy>a:hover{color:white}.cx-feature-preview{border:1px solid #416080;border-radius:12px;background:#081422;box-shadow:0 20px 45px #0004;overflow:hidden;transform:translateY(var(--preview-shift,0px));transition:none;min-width:0;pointer-events:none}.cx-feature-preview-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 15px;color:#97b1d1;font-size:.6rem;direction:ltr;border-bottom:1px solid #2d4563}.cx-feature-preview-bar>span:first-child{letter-spacing:.12em}.cx-feature-picture{height:290px;position:relative;overflow:hidden;background:#0b1628}.cx-feature-picture>img{width:100%;height:auto;max-width:none}.cx-feature-picture-cash>img{transform:translateY(-62%)}.cx-feature-picture::after{content:"";position:absolute;inset:75% 0 0;background:linear-gradient(transparent,#091525)}
.cx-scroll-depth .cx-demo{transform:rotateX(calc(var(--demo-scroll-tilt,0deg) + var(--tilt-y,0deg))) rotateY(var(--tilt-x,0deg)) scale(var(--demo-scroll-scale,1));transform-origin:50% 0;transition:none}
@keyframes cxWheelCue{0%,100%{transform:translateY(0);opacity:.5}55%{transform:translateY(7px);opacity:1}}
@media(max-width:1050px){.cx-features .cx-feature{gap:26px;padding:30px;min-height:370px}.cx-feature-picture{height:265px}.cx-features .cx-feature h3{font-size:2rem}.cx-feature-copy>p:not(.cx-eyebrow){font-size:.9rem}}
@media(max-width:760px){.cx-scroll-cue{font-size:.72rem;gap:10px;margin-top:22px}.cx-features{margin-top:28px}.cx-features .cx-feature{grid-template-columns:1fr;gap:22px;padding:24px;min-height:0;border-radius:16px}.cx-features .cx-feature-number{font-size:.65rem;margin-bottom:14px}.cx-feature-copy>.cx-eyebrow{font-size:.62rem;margin-bottom:8px}.cx-features .cx-feature h3{font-size:1.7rem;margin-bottom:12px}.cx-feature-copy>p:not(.cx-eyebrow){font-size:.86rem;line-height:1.85}.cx-feature-copy>a{font-size:.77rem;margin-top:16px;padding-top:12px}.cx-feature-preview-bar{padding:9px 12px;font-size:.52rem}.cx-feature-picture{height:165px}}
@media(max-width:380px){.cx-features .cx-feature{padding:19px;gap:18px}.cx-features .cx-feature h3{font-size:1.5rem}.cx-feature-copy>p:not(.cx-eyebrow){font-size:.8rem}.cx-feature-picture{height:140px}.cx-scroll-cue{font-size:.65rem}}
.cx-motion-paused .cx-feature,.cx-motion-paused .cx-feature-preview{transform:none!important;filter:none!important}.cx-motion-paused .cx-feature-slot{position:relative;margin-bottom:28px}.cx-motion-paused .cx-features{padding-bottom:0}.cx-motion-paused .cx-scroll-cue,.cx-motion-paused .cx-features::after{display:none}
@media(prefers-reduced-motion:reduce){.cx-feature-slot{position:relative!important;margin-bottom:28px!important}.cx-features{padding-bottom:0!important}.cx-features .cx-feature,.cx-feature-preview{transform:none!important;filter:none!important}.cx-scroll-cue,.cx-features::after{display:none}}
@media print{.cx-feature-slot{position:relative!important;margin-bottom:20px!important;break-inside:avoid}.cx-features{padding-bottom:0!important}.cx-features .cx-feature,.cx-feature-preview{transform:none!important;filter:none!important}.cx-scroll-cue,.cx-features::after{display:none}}

/* A scroll-scrubbed flight sequence. No wheel capture, timers or scroll locking. */
.cx-flight-stage{position:relative}.cx-flight-atmosphere,.cx-flight-satellites,.cx-flight-rail{display:none}
.cx-flight-active .cx-features{height:calc(var(--flight-stage-height) + var(--flight-travel));padding:0;isolation:isolate}
.cx-flight-active .cx-flight-stage{position:sticky;top:var(--flight-top);height:var(--flight-stage-height);isolation:isolate}
.cx-flight-active .cx-flight-deck{position:absolute;inset:var(--flight-card-top) 0 auto;height:var(--flight-card-height);perspective:1700px;z-index:3}
.cx-flight-active .cx-feature-slot{position:absolute;inset:0 0 auto;margin:0;pointer-events:none;transform-style:preserve-3d}
.cx-flight-active .cx-feature-slot.is-flight-current{pointer-events:auto}
.cx-flight-active .cx-feature{transform-origin:50% 50%;will-change:transform,opacity;backface-visibility:hidden;filter:none;box-shadow:0 16px 32px #0006}
.cx-flight-active .cx-feature-slot:not(.is-flight-current) .cx-feature{pointer-events:none}
.cx-flight-active .cx-flight-atmosphere{display:block;position:absolute;inset:0;pointer-events:none;z-index:0}
.cx-flight-halo{position:absolute;inset:5% 10% 8%;border-radius:50%;background:radial-gradient(ellipse,#265dde36,transparent 65%);filter:blur(35px);transform:rotate(var(--orbit-turn,0deg))}
.cx-flight-orbit{position:absolute;inset:12% -4% 16%;border:1px solid #3875aa30;border-radius:50%;transform:rotate(calc(var(--orbit-turn,0deg) - 24deg)) scaleY(.7)}
.cx-flight-orbit::before,.cx-flight-orbit::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#5ad9ef;box-shadow:0 0 20px #3ccaff;top:25%;left:6%}.cx-flight-orbit::after{top:auto;left:auto;bottom:25%;right:6%;background:#b193ff}
.cx-flight-orbit-two{inset:0 10%;border-color:#9773ed22;transform:rotate(calc(35deg - var(--orbit-turn,0deg))) scaleY(.75)}
.cx-flight-word{position:absolute;top:2%;left:0;right:0;text-align:center;font:650 clamp(70px,15vw,190px)/1 "Segoe UI",sans-serif;letter-spacing:.18em;color:#3863980c;direction:ltr}
.cx-flight-active .cx-flight-satellites{display:block;position:absolute;inset:0;z-index:1;pointer-events:none}
.cx-flight-satellite{position:absolute;width:174px;height:115px;border:1px solid #385879;border-radius:13px;padding:14px 17px;background:linear-gradient(130deg,#122b47ee,#09182dee);box-shadow:0 20px 55px #0005;will-change:transform;overflow:hidden}
.cx-flight-satellite:nth-child(1){top:7%;left:1%;border-color:#30799e}.cx-flight-satellite:nth-child(2){top:2%;right:0;border-color:#6b56a2}.cx-flight-satellite:nth-child(3){bottom:14%;left:5%;border-color:#555d9c}.cx-flight-satellite:nth-child(4){bottom:17%;right:2%;border-color:#2c748b}
.cx-flight-satellite>span{display:block;color:#93b8d5;font-size:.63rem;letter-spacing:.03em;text-align:start;margin-bottom:12px}.cx-flight-satellite>svg{width:100%;height:54px;fill:none;stroke:#43d3f7;stroke-width:2}.cx-flight-satellite>svg circle{fill:#64e1ff}
.cx-flight-mini-bars{display:flex;align-items:flex-end;gap:7px;height:56px;direction:ltr}.cx-flight-mini-bars>i{flex:1;height:36%;border-radius:3px 3px 0 0;background:linear-gradient(#9c8bf9,#5b5ada66)}.cx-flight-mini-bars>i:nth-child(2n){height:65%}.cx-flight-mini-bars>i:nth-child(3n){height:85%}.cx-flight-mini-bars>i:last-child{height:100%}
.cx-flight-mini-orbit{height:56px;display:grid;place-items:center;position:relative}.cx-flight-mini-orbit>i{height:54px;width:54px;border:4px solid #353e70;border-top-color:#9785f8;border-right-color:#5dcafb;border-radius:50%;transform:rotate(-30deg)}.cx-flight-mini-orbit>b{position:absolute;color:#9fbcff;font-size:25px;font-weight:400}
.cx-flight-mini-lines{display:grid;gap:9px;padding-top:3px}.cx-flight-mini-lines>i{height:6px;border-radius:4px;background:linear-gradient(90deg,#235178,#459eae)}.cx-flight-mini-lines>i:nth-child(2){width:70%}.cx-flight-mini-lines>i:nth-child(3){width:86%}.cx-flight-mini-lines>i:nth-child(4){width:52%}
.cx-flight-active .cx-flight-rail{display:flex;position:absolute;bottom:12px;inset-inline:0;margin:auto;max-width:550px;align-items:center;justify-content:center;gap:7px;padding:11px 18px;border:1px solid #2c476b;border-radius:50px;background:#0b182bf0;box-shadow:0 10px 45px #0006;backdrop-filter:blur(15px);z-index:6}
.cx-flight-rail>button{display:flex;align-items:center;gap:8px;position:relative;border:0;border-radius:30px;background:transparent;padding:10px 16px;color:#819cbb;font-size:.76rem;white-space:nowrap;transition:background .2s,color .2s}.cx-flight-rail>button>span{font:10px Consolas,monospace;color:#5f87b2}.cx-flight-rail>button>b{font-weight:500}.cx-flight-rail>button[aria-pressed=true]{background:#1b3760;color:#e2f5ff}.cx-flight-rail>button[aria-pressed=true]>span{color:#59d8ff}.cx-flight-rail>button:hover{background:#142d4d;color:white}
.cx-flight-track{position:absolute;bottom:-1px;inset-inline:24px;height:2px;overflow:hidden;border-radius:2px;background:#23344c}.cx-flight-track>i{display:block;width:100%;height:100%;transform:scaleX(var(--flight-progress,0));transform-origin:right;background:linear-gradient(90deg,#9672f9,#38d5f9)}html[dir=ltr] .cx-flight-track>i{transform-origin:left}
.cx-flight-scroll{display:flex;align-items:center;gap:9px;color:#637c9d;font-size:.54rem;letter-spacing:.17em;direction:ltr;margin-inline-start:12px}.cx-flight-scroll>i{font-style:normal;color:#4fcaed;font-size:17px}
.cfo-exterior:not(.cx-flight-active) .cx-scroll-cue{display:none}
@media(max-width:760px){.cx-flight-active .cx-flight-rail{gap:2px;padding:9px;bottom:8px;max-width:370px}.cx-flight-rail>button{font-size:.69rem;padding:9px 12px;gap:6px}.cx-flight-scroll{display:none}.cx-flight-satellite{width:115px;height:88px;padding:10px 12px;border-radius:9px}.cx-flight-satellite>span{font-size:.54rem;margin-bottom:7px}.cx-flight-satellite>svg,.cx-flight-mini-bars,.cx-flight-mini-orbit{height:39px}.cx-flight-mini-orbit>i{width:38px;height:38px;border-width:3px}.cx-flight-mini-lines{gap:6px}.cx-flight-mini-lines>i{height:4px}.cx-flight-satellite:nth-child(1){top:4%;left:-3%}.cx-flight-satellite:nth-child(2){top:1%;right:-5%}.cx-flight-satellite:nth-child(3){bottom:17%;left:-5%}.cx-flight-satellite:nth-child(4){bottom:13%;right:-4%}.cx-flight-orbit{inset:12% -20% 18%}.cx-flight-word{font-size:75px;top:4%}}
.cx-motion-paused .cx-flight-stage,.cx-motion-paused .cx-flight-deck{position:relative!important;inset:auto!important;height:auto!important}.cx-motion-paused .cx-features{height:auto!important}.cx-motion-paused .cx-feature{opacity:1!important}.cx-motion-paused .cx-flight-atmosphere,.cx-motion-paused .cx-flight-satellites,.cx-motion-paused .cx-flight-rail{display:none!important}
@media(prefers-reduced-motion:reduce){.cx-flight-stage,.cx-flight-deck{position:relative!important;inset:auto!important;height:auto!important}.cx-features{height:auto!important}.cx-feature{opacity:1!important}.cx-flight-atmosphere,.cx-flight-satellites,.cx-flight-rail{display:none!important}}
@media print{.cx-flight-stage,.cx-flight-deck{position:relative!important;inset:auto!important;height:auto!important}.cx-features{height:auto!important}.cx-feature{opacity:1!important}.cx-flight-atmosphere,.cx-flight-satellites,.cx-flight-rail{display:none!important}}

/* v1.3: a brisk entrance and compositor-only scroll transforms. */
.cx-header{backdrop-filter:none;background:#060c18f7}
.cx-ribbon{filter:none;transition:none;will-change:transform}
.cx-demo{transform:none;transition:none}
.cx-demo-wrap{perspective:none}
.cx-orb{filter:none;background:radial-gradient(ellipse,#1640a277,transparent 70%)}
.cx-flight-halo{filter:none;transform:none;background:radial-gradient(ellipse,#265dde28,transparent 65%)}
.cx-flight-active .cx-flight-deck{perspective:none}
.cx-flight-active .cx-feature-slot{transform-style:flat}
.cx-flight-active .cx-feature-preview{transform:none;box-shadow:none}
.cx-feature-picture{contain:paint}
.cx-flight-active .cx-flight-rail{backdrop-filter:none;background:#0b182b;box-shadow:0 8px 20px #0004}
.cx-flight-satellite{box-shadow:0 10px 22px #0004}
.cx-float-chip{backdrop-filter:none;background:#0b1d32}
.cx-hero h1 em{animation:none}
.cx-motion-ready .cx-hero-copy,.cx-motion-ready .cx-demo-wrap{animation:none}
.cx-hero h1>span,.cx-hero h1>em{display:inline-block}
.cx-hero-caption{flex-wrap:wrap}
.cx-replay{display:inline-flex;align-items:center;gap:7px;border:0;border-inline-start:1px solid #304961;padding:2px 13px;background:none;color:#85c8ee!important;font-size:.69rem;line-height:1.7}
.cx-replay>span:first-child{font-size:1.05rem;line-height:1}
.cx-replay:hover{color:white!important}
.cx-replay:disabled{opacity:.35;cursor:default}
.cx-launch-ring{position:absolute;top:4%;left:4%;width:90%;height:88%;border:1px solid #27cef577;border-radius:50%;opacity:0;pointer-events:none;transform:rotate(-22deg) scaleY(.68)}
.cx-launch-ring-two{border-color:#9572ff77;transform:rotate(24deg) scaleY(.7)}
.cx-intro-live .cx-launch-ring{animation:cxLaunchRing 1.9s .06s cubic-bezier(.16,1,.3,1) both}
.cx-intro-live .cx-launch-ring-two{animation-delay:.24s;animation-name:cxLaunchRingTwo}
.cx-intro-live .cx-hero h1>span{animation:cxHeadlineLaunch 1.15s .1s cubic-bezier(.16,1,.3,1) both}
.cx-intro-live .cx-hero h1>em{animation:cxHeadlineLaunch 1.28s .27s cubic-bezier(.16,1,.3,1) both}
.cx-intro-live .cx-hero-copy>.cx-eyebrow,.cx-intro-live .cx-lead,.cx-intro-live .cx-hero-actions,.cx-intro-live .cx-hero-caption{animation:cxCopyLaunch 1.02s .37s cubic-bezier(.16,1,.3,1) both}
.cx-intro-live .cx-hero-actions{animation-delay:.51s}
.cx-intro-live .cx-hero-caption{animation-delay:.61s}
.cx-intro-live .cx-float-one{animation:cxChipLaunchOne 1.36s .19s cubic-bezier(.16,1,.3,1) both}
.cx-intro-live .cx-float-two{animation:cxChipLaunchTwo 1.44s .32s cubic-bezier(.16,1,.3,1) both}
/* Automatic cycles keep the heading and controls steady for reading and clicking. */
.cx-intro-auto .cx-hero h1>span,.cx-intro-auto .cx-hero h1>em,.cx-intro-auto .cx-hero-copy>.cx-eyebrow,.cx-intro-auto .cx-lead,.cx-intro-auto .cx-hero-actions,.cx-intro-auto .cx-hero-caption{animation:none}
html[dir=ltr] .cx-intro-live .cx-float-chip{--chip-flip:-1}
.cx-demo-launch .cx-kpi{animation:cxKpiAssemble 1.22s cubic-bezier(.16,1,.3,1) both;will-change:transform,opacity}
.cx-demo-launch .cx-kpi:nth-child(1){--launch-x:155px;--launch-y:-80px;--launch-angle:12deg}
.cx-demo-launch .cx-kpi:nth-child(2){--launch-x:65px;--launch-y:100px;--launch-angle:-10deg;animation-delay:.088s}
.cx-demo-launch .cx-kpi:nth-child(3){--launch-x:-70px;--launch-y:-110px;--launch-angle:11deg;animation-delay:.176s}
.cx-demo-launch .cx-kpi:nth-child(4){--launch-x:-170px;--launch-y:85px;--launch-angle:-13deg;animation-delay:.264s}
.cx-demo-launch .cx-chart-card{animation:cxPanelAssemble 1.28s .22s cubic-bezier(.16,1,.3,1) both}
.cx-demo-launch .cx-insight-card{animation:cxPanelAssemble 1.28s .37s cubic-bezier(.16,1,.3,1) both}
.cx-demo-launch .cx-mini-bars>i{animation:cxBarGrow 1.12s .56s both;transform-origin:bottom}
.cx-hero-offscreen .cx-float-chip{animation-play-state:paused}
@keyframes cxHeadlineLaunch{from{transform:translate3d(65px,75px,0) rotate(4deg);opacity:0}to{transform:none;opacity:1}}
@keyframes cxCopyLaunch{from{transform:translate3d(0,28px,0);opacity:0}to{transform:none;opacity:1}}
@keyframes cxLaunchRing{0%{transform:rotate(-50deg) scale(.25,.12);opacity:0}20%{opacity:.8}100%{transform:rotate(-22deg) scale(1.25,.8);opacity:0}}
@keyframes cxLaunchRingTwo{0%{transform:rotate(45deg) scale(.3,.15);opacity:0}20%{opacity:.7}100%{transform:rotate(24deg) scale(1.2,.8);opacity:0}}
@keyframes cxChipLaunchOne{from{transform:translate3d(-160px,-95px,0) rotate(-18deg) scaleX(var(--chip-flip,1));opacity:0}to{transform:scaleX(var(--chip-flip,1));opacity:1}}
@keyframes cxChipLaunchTwo{from{transform:translate3d(170px,100px,0) rotate(18deg) scaleX(var(--chip-flip,1));opacity:0}to{transform:scaleX(var(--chip-flip,1));opacity:1}}
@keyframes cxKpiAssemble{0%{transform:translate3d(var(--launch-x),var(--launch-y),0) rotate(var(--launch-angle)) scale(.65);opacity:0}72%{transform:translate3d(0,-5px,0) rotate(0deg) scale(1.025);opacity:1}100%{transform:none;opacity:1}}
@keyframes cxPanelAssemble{from{transform:translate3d(0,75px,0) scale(.92);opacity:0}to{transform:none;opacity:1}}
@media(max-width:760px){.cx-demo-launch .cx-kpi{--launch-x:70px;--launch-y:55px}.cx-replay{font-size:.63rem;padding-inline:9px}.cx-launch-ring{top:-20%;height:150%}}
@media(prefers-reduced-motion:reduce){.cx-launch-ring{display:none}.cx-kpi,.cx-chart-card,.cx-insight-card,.cx-hero h1>span,.cx-hero h1>em{transform:none!important;opacity:1!important}}
.cx-motion-paused .cx-launch-ring{display:none}
.cx-motion-paused .cx-kpi,.cx-motion-paused .cx-chart-card,.cx-motion-paused .cx-insight-card,.cx-motion-paused .cx-hero h1>span,.cx-motion-paused .cx-hero h1>em{transform:none!important;opacity:1!important}
@media print{.cx-replay,.cx-launch-ring{display:none}}

/* G4-WEB1: static values are external for the strict platform CSP. */
.cx-feature-slot:nth-child(1){--card-index:0}.cx-feature-slot:nth-child(2){--card-index:1}.cx-feature-slot:nth-child(3){--card-index:2}
.cx-story-bars>i:nth-child(1){--bar:34%}.cx-story-bars>i:nth-child(2){--bar:48%}.cx-story-bars>i:nth-child(3){--bar:41%}.cx-story-bars>i:nth-child(4){--bar:68%}.cx-story-bars>i:nth-child(5){--bar:61%}.cx-story-bars>i:nth-child(6){--bar:82%}.cx-story-bars>i:nth-child(7){--bar:75%}
.cx-chart-legend i.cx-series-one{background:#42b8f4}.cx-chart-legend i.cx-series-two{background:#8d7bed}

@media(min-width:761px) and (max-width:1050px){.cx-hero h1{font-size:2.65rem}.cx-ribbon-stage{margin-inline:0;height:320px}.cx-ribbon{left:-9%;width:118%;height:118%;top:-10px}.cx-float-one{inset-inline-end:0;top:35px}.cx-float-two{inset-inline-start:0;bottom:35px}}

/* G4-WEB5 — the Owner's layered logo motion (the cfo-logo-motion package, 2026-09-27; the Tasks contract) replaces the single-image motion of
   G4-WEB4: the letters, the ribbons, INTELLIGENCE and the MX / MASOUD X signature enter as their own layers while .cx-intro-live is on the site root;
   .cx-motion-paused and reduced motion show the finished logo; html.cfo-intro-pending hides the layers until the first intro. Never mirrored; the
   chips keep the same physical places in both languages and never cover the logo, the copy or the demo panel (the scene sits a little above the
   middle of the stage so the lower chip rests under the signature); on a phone the logo sits above the text and the chips are hidden. */
.cx-ribbon-stage{height:460px;margin:0;isolation:isolate}
.cx-ribbon-stage::before{content:"";position:absolute;inset:8% -8% 5%;background:radial-gradient(ellipse,#1d53aa19,transparent 66%);pointer-events:none}
.cx-logo-parallax{direction:ltr;inset:auto;left:50%;top:50%;width:min(600px,108%);height:auto;aspect-ratio:1415/1112;translate:-50% -57%;max-width:none;filter:none}
.cx-float-one{inset-inline:auto;left:45px}
.cx-float-two{inset-inline:auto;right:0;bottom:0}
html[dir=ltr] .cx-ribbon-stage{transform:none}
html[dir=ltr] .cx-orbit-label{transform:none}
html[dir=ltr] .cx-float-chip{transform:none;animation-name:cxChipFloat}
html[dir=ltr] .cx-intro-live .cx-float-chip{--chip-flip:1}
.cx-intro-live .cx-launch-ring{animation-duration:4.2s}
.cx-intro-live .cx-float-one,.cx-intro-live .cx-float-two{animation-duration:3.9s;animation-timing-function:cubic-bezier(.2,.72,.22,1)}
.cx-hero-offscreen .cfo-logo-scene *{animation-play-state:paused}
@media(min-width:1600px){.cx-ribbon-stage{height:510px}.cx-logo-parallax{width:min(640px,108%)}}
@media(max-width:1050px){.cx-float-one{left:30px}.cx-float-two{right:0;bottom:0}}
@media(min-width:761px) and (max-width:1050px){.cx-ribbon-stage{height:390px}.cx-float-chip{font-size:.56rem;padding:7px 9px}.cx-float-one{left:2%;top:1%}.cx-float-two{right:-2%;bottom:0}}
@media(max-width:760px){.cx-ribbon-stage{height:clamp(280px,82vw,390px);width:100%;max-width:none;margin:0 0 26px;opacity:1}.cx-logo-parallax{translate:-50% -50%}.cx-float-chip{display:none}.cx-launch-ring{top:8%;height:75%}}
@media(max-width:520px){.cx-hero-top>.cx-ribbon-stage{order:-1}}
/* the delivery's motion (cfo-logo-motion.css) — its rules unchanged, scoped to the stage so the sheet styles only the site */
/* CFO Intelligence — logo intro motion
   Same contract as the Tasks logo scene:
   - add .cx-intro-live on any ancestor to play the intro (the site's motion.js already does this)
   - .cx-motion-paused on an ancestor shows the finished logo with no motion
   - .cfo-intro-pending on <html> hides the layers until the first intro starts */

.cx-ribbon-stage .cfo-logo-scene{display:block;width:100%;height:auto;overflow:visible}
.cx-ribbon-stage .cfo-logo-drift{animation:cfoDrift 12s ease-in-out infinite alternate}
.cx-ribbon-stage .cfo-l,.cx-ribbon-stage .cfo-w,.cx-ribbon-stage .cfo-spark,.cx-ribbon-stage .cfo-rib-move{transform-box:fill-box;transform-origin:50% 50%}
.cx-ribbon-stage .cfo-draw{stroke-dasharray:1 2;stroke-dashoffset:0}
.cx-ribbon-stage .cfo-comet{fill:none;stroke-linecap:round;stroke-dasharray:.05 3;stroke-dashoffset:.16;opacity:0;mix-blend-mode:screen}
.cx-ribbon-stage .cfo-shine{opacity:0}
.cx-ribbon-stage .cfo-bloom{opacity:.55}
.cx-ribbon-stage .cfo-l-xglow{opacity:.3}
.cx-ribbon-stage .cfo-spark{opacity:0}
.cx-ribbon-stage .cfo-spark-a,.cx-ribbon-stage .cfo-spark-c{opacity:.9;animation:cfoTwinkle 3.4s ease-in-out infinite alternate}
.cx-ribbon-stage .cfo-spark-c{animation-delay:-1.7s}

.cfo-intro-pending .cx-ribbon-stage .cfo-l,.cfo-intro-pending .cx-ribbon-stage .cfo-w,.cfo-intro-pending .cx-ribbon-stage .cfo-spark,.cfo-intro-pending .cx-ribbon-stage .cfo-bloom{opacity:0}

/* ---------- intro ---------- */
.cx-intro-live .cfo-logo-drift{animation:none}
.cx-intro-live .cfo-bloom{animation:cfoBloom 1.9s ease-out both}

.cx-intro-live .cfo-l-c,.cx-intro-live .cfo-l-f,.cx-intro-live .cfo-l-o{animation:cfoRise .95s cubic-bezier(.16,1,.3,1) both}
.cx-intro-live .cfo-l-c{animation-delay:.1s}
.cx-intro-live .cfo-l-f{animation-delay:.22s}
.cx-intro-live .cfo-l-o{animation-delay:.34s}

.cx-intro-live .cfo-draw-rib{animation:cfoDraw 1.2s cubic-bezier(.55,.06,.25,1) .45s both}
.cx-intro-live .cfo-comet-rib{animation:cfoCometMove 1.2s cubic-bezier(.55,.06,.25,1) .45s both,cfoCometFade 1.2s linear .45s both}
.cx-intro-live .cfo-rib-move{animation:cfoRibSettle 1.35s cubic-bezier(.16,1,.3,1) .45s both}
.cx-intro-live .cfo-l-ribbon{animation:cfoGlint 1s ease-out 1.5s both}

.cx-intro-live .cfo-draw-band{animation:cfoDraw .75s cubic-bezier(.5,0,.2,1) 1.05s both}
.cx-intro-live .cfo-comet-band{animation:cfoCometMove .75s cubic-bezier(.5,0,.2,1) 1.05s both,cfoCometFade .75s linear 1.05s both}
.cx-intro-live .cfo-l-band{animation:cfoGlint .9s ease-out 1.7s both}

.cx-intro-live .cfo-spark-a{animation:cfoSparkStay .9s cubic-bezier(.2,.8,.2,1) .45s both}
.cx-intro-live .cfo-spark-d{animation:cfoSparkFlash .8s cubic-bezier(.2,.8,.2,1) 1.05s both}
.cx-intro-live .cfo-spark-b{animation:cfoSparkFlash 1s cubic-bezier(.2,.8,.2,1) 1.52s both}
.cx-intro-live .cfo-spark-c{animation:cfoSparkStay .9s cubic-bezier(.2,.8,.2,1) 2.5s both}

.cx-intro-live .cfo-shine{animation:cfoShineMove 1.15s cubic-bezier(.45,0,.2,1) 1.6s both,cfoShineFade 1.15s linear 1.6s both}

.cx-intro-live .cfo-w{animation:cfoTrack .95s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(1.75s + var(--d,0) * 1s)}

.cx-intro-live .cfo-l-mark{animation:cfoMarkIn 1s cubic-bezier(.16,1,.3,1) 2.1s both}
.cx-intro-live .cfo-l-masoud{animation:cfoWipe .85s cubic-bezier(.65,0,.25,1) 2.3s both}
.cx-intro-live .cfo-l-x{animation:cfoXPop .6s cubic-bezier(.2,1.5,.35,1) 2.85s both}
.cx-intro-live .cfo-l-xglow{animation:cfoXGlow .75s ease-out 2.95s both}

/* ---------- still states ---------- */
.cx-motion-paused .cfo-logo-scene *{animation:none!important}
.cx-motion-paused .cfo-l,.cx-motion-paused .cfo-w{opacity:1!important;clip-path:none!important;transform:none!important}
@media (prefers-reduced-motion:reduce){
  .cx-ribbon-stage .cfo-logo-scene *{animation:none!important}
  .cfo-intro-pending .cx-ribbon-stage .cfo-l,.cfo-intro-pending .cx-ribbon-stage .cfo-w,.cfo-intro-pending .cx-ribbon-stage .cfo-bloom{opacity:1}
  .cfo-intro-pending .cx-ribbon-stage .cfo-spark-a,.cfo-intro-pending .cx-ribbon-stage .cfo-spark-c{opacity:.9}
}

/* ---------- keyframes ---------- */
@keyframes cfoDrift{to{transform:translateY(-8px)}}
@keyframes cfoBloom{0%{opacity:0}55%{opacity:1}100%{opacity:.55}}
@keyframes cfoRise{0%{transform:translateY(100%);clip-path:inset(0 0 100% 0)}100%{transform:translateY(0);clip-path:inset(0 0 0 0)}}
@keyframes cfoDraw{0%{stroke-dashoffset:1.12}100%{stroke-dashoffset:0}}
@keyframes cfoCometMove{0%{stroke-dashoffset:.16}100%{stroke-dashoffset:-.97}}
@keyframes cfoCometFade{0%{opacity:0}10%{opacity:1}80%{opacity:1}100%{opacity:0}}
@keyframes cfoRibSettle{0%{transform:translate(-26px,18px) rotate(-1.5deg)}100%{transform:translate(0,0) rotate(0)}}
@keyframes cfoGlint{0%,100%{filter:brightness(1) saturate(1)}35%{filter:brightness(1.4) saturate(1.2)}}
@keyframes cfoSparkStay{0%{opacity:0;transform:scale(.2) rotate(-60deg)}35%{opacity:1;transform:scale(1.35) rotate(0)}100%{opacity:.9;transform:scale(1) rotate(0)}}
@keyframes cfoSparkFlash{0%{opacity:0;transform:scale(.2) rotate(-60deg)}30%{opacity:1;transform:scale(1.2) rotate(0)}100%{opacity:0;transform:scale(.5) rotate(25deg)}}
@keyframes cfoTwinkle{0%{opacity:.55;transform:scale(.82)}100%{opacity:.95;transform:scale(1)}}
@keyframes cfoShineMove{0%{transform:translateX(-260px)}100%{transform:translateX(1780px)}}
@keyframes cfoShineFade{0%{opacity:0}12%{opacity:1}85%{opacity:1}100%{opacity:0}}
@keyframes cfoTrack{0%{opacity:0;transform:translateX(calc(var(--dx,0) * 1px));filter:blur(6px)}60%{opacity:1}100%{opacity:1;transform:translateX(0);filter:blur(0)}}
@keyframes cfoMarkIn{0%{opacity:0;transform:translateX(-30px) rotate(-14deg) scale(.55)}100%{opacity:1;transform:translateX(0) rotate(0) scale(1)}}
@keyframes cfoWipe{0%{clip-path:inset(0 100% 0 0);opacity:.3}100%{clip-path:inset(0 0 0 0);opacity:1}}
@keyframes cfoXPop{0%{opacity:0;transform:scale(.35) rotate(-40deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes cfoXGlow{0%{opacity:0}35%{opacity:1}100%{opacity:.3}}
/* the CSP-safe equivalents of the scene's inline style attributes (the site allows no style attribute) */
.cx-ribbon-stage #cfoMaskLetters{mask-type:alpha}
.cx-ribbon-stage .cfo-w0{--dx:178.3;--d:0.121}.cx-ribbon-stage .cfo-w1{--dx:147.2;--d:0.099}.cx-ribbon-stage .cfo-w2{--dx:112.6;--d:0.077}.cx-ribbon-stage .cfo-w3{--dx:79.8;--d:0.055}.cx-ribbon-stage .cfo-w4{--dx:46.4;--d:0.033}.cx-ribbon-stage .cfo-w5{--dx:15.1;--d:0.011}.cx-ribbon-stage .cfo-w6{--dx:-11.4;--d:0.011}.cx-ribbon-stage .cfo-w7{--dx:-39.9;--d:0.033}.cx-ribbon-stage .cfo-w8{--dx:-74.4;--d:0.055}.cx-ribbon-stage .cfo-w9{--dx:-107.8;--d:0.077}.cx-ribbon-stage .cfo-w10{--dx:-141.3;--d:0.099}.cx-ribbon-stage .cfo-w11{--dx:-173.4;--d:0.121}
/* fail-safe: if the site script never removes html.cfo-intro-pending, the finished logo appears after 3 s */
.cfo-intro-pending .cx-ribbon-stage .cfo-l:not(.cfo-l-xglow),.cfo-intro-pending .cx-ribbon-stage .cfo-w{animation:cfoPendingReveal .4s ease 3s both}
@keyframes cfoPendingReveal{to{opacity:1}}

