.ctg-v2{--bg:#fbfcfe;--bg-2:#eef2f8;--card:#fff;--card-2:#f3f6fb;--ink:#0e1320;--blue:#3054d4;--green:#a5d270;--green-d:#5f9e27;--cyan:#0792be;--text:#0e1320;--muted:#59647a;--muted-2:#8b96a9;--grad:linear-gradient(90deg,#3054d4 8%,#5f9e27 92%);--grad-banner:linear-gradient(135deg,#3054d4,#a5d270 120%);--rule:rgba(14,19,32,.1);--bd:rgba(14,19,32,.09);--bd-2:rgba(14,19,32,.06);--shadow:0 1px 2px rgba(14,19,32,.04),0 14px 34px rgba(14,19,32,.06);--shadow-hi:0 4px 10px rgba(14,19,32,.06),0 26px 60px rgba(48,84,212,.12);--sec-pad:128px;--r:18px;--maxw:1280px;--ease:cubic-bezier(0.22,0.61,0.36,1);--cta-dark:#06210f;background:var(--bg);color:var(--text);font-family:Satoshi,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}.ctg-v2 .mono{font-family:Space Mono,ui-monospace,monospace}.ctg-v2 .wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px}.ctg-v2 section{position:relative}.ctg-v2 img{max-width:100%;display:block}.ctg-v2 .grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.ctg-v2 h1,.ctg-v2 h2,.ctg-v2 h3,.ctg-v2 h4{line-height:1.04;letter-spacing:-.02em;font-weight:700;color:var(--ink)}.ctg-v2 .h-xxl{font-size:clamp(40px,6.4vw,84px);font-weight:900}.ctg-v2 .h-xl{font-size:clamp(32px,4.6vw,60px);font-weight:900}.ctg-v2 .h-lg{font-size:clamp(26px,3vw,40px)}.ctg-v2 .lede{font-size:clamp(17px,1.4vw,21px);color:var(--muted);max-width:54ch;line-height:1.7}.ctg-v2 .btn-codiste{display:inline-flex;align-items:center;gap:16px;background:var(--ink);color:#fff;border-radius:999px;padding:9px 11px 9px 28px;font-weight:700;font-size:16px;line-height:1.2;white-space:nowrap;text-decoration:none;border:none;cursor:pointer;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}.ctg-v2 .btn-codiste:hover{transform:translateY(-2px);box-shadow:0 16px 44px rgba(48,84,212,.26)}.ctg-v2 .btn-codiste .circ{width:44px;height:44px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none;transition:transform .45s cubic-bezier(.34,1.4,.5,1)}.ctg-v2 .btn-codiste .circ img{width:18px;height:18px;display:block;transform:rotate(0);transition:transform .45s cubic-bezier(.34,1.4,.5,1)}.ctg-v2 .btn-codiste:hover .circ img{transform:rotate(-45deg)}.ctg-v2 .reveal{opacity:0;transform:translateY(16px);filter:blur(10px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}.ctg-v2 .reveal.in{opacity:1;transform:none;filter:blur(0)}.ctg-v2 .reveal.d1{transition-delay:.08s}.ctg-v2 .reveal.d2{transition-delay:.16s}.ctg-v2 .reveal.d3{transition-delay:.24s}.ctg-v2 .contours{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;pointer-events:none;z-index:0;opacity:.7}.ctg-v2 .hero{position:relative;overflow:hidden;padding-top:160px;padding-bottom:100px;background:linear-gradient(180deg,#f4f8fe 0,var(--bg) 78%)}.ctg-v2 .hero:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(680px 480px at 88% 18%,rgba(48,84,212,.12),transparent 60%),radial-gradient(620px 520px at 70% 88%,hsla(88,52%,63%,.18),transparent 60%),radial-gradient(900px 600px at 6% 0,rgba(2,198,255,.08),transparent 55%)}.ctg-v2 .hero h1{margin-bottom:28px}.ctg-v2 .hero .lede{margin-bottom:40px}.ctg-v2 .hero-cta{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-bottom:56px}.ctg-v2 .hero-cta .btn-codiste{font-size:14.5px;padding:6px 7px 6px 22px;gap:12px}.ctg-v2 .hero-cta .btn-codiste .circ{width:38px;height:38px}.ctg-v2 .hero-cta .btn-codiste .circ img{width:16px;height:16px}.ctg-v2 .hero-head{position:relative;z-index:2;max-width:1040px;margin:0 auto;text-align:left}.ctg-v2 .hero-head h1{max-width:16ch;margin-bottom:26px}.ctg-v2 .hero-head .lede{margin-bottom:40px}.ctg-v2 .hero-head .hero-cta{margin-bottom:48px}.ctg-v2 .hero-frame{position:relative;z-index:2;max-width:1080px;margin:66px auto 0;padding:8px;border-radius:26px;background:linear-gradient(180deg,hsla(0,0%,100%,.75),hsla(0,0%,100%,.35));border:1px solid var(--bd);box-shadow:0 6px 16px rgba(14,19,32,.05),0 54px 100px -28px rgba(48,84,212,.32)}.ctg-v2 .hero-frame img{display:block;width:100%;height:auto;aspect-ratio:1600/1044;-o-object-fit:contain;object-fit:contain;border-radius:18px;border:1px solid var(--bd)}.ctg-v2 .hero-frame .frame-fade{position:absolute;left:8px;right:8px;bottom:8px;height:18%;border-radius:0 0 18px 18px;background:linear-gradient(to bottom,transparent,var(--bg));pointer-events:none;z-index:6}.ctg-v2 .sec{padding:var(--sec-pad) 0;position:relative;z-index:1}.ctg-v2 .sec-head{max-width:760px;margin-bottom:64px}.ctg-v2 .intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.ctg-v2 .intro-meta{margin-top:32px;border-top:1px solid var(--rule)}.ctg-v2 .intro-meta>div{display:grid;grid-template-columns:108px 1fr;gap:18px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--rule)}.ctg-v2 .intro-meta dt{font-family:Space Mono,monospace;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2)}.ctg-v2 .intro-meta dd{font-size:15.5px;font-weight:500;color:var(--ink);line-height:1.5}.ctg-v2 .intro-meta dd b{color:var(--green-d);font-weight:700}.ctg-v2 .intro p.body{font-size:clamp(19px,1.7vw,25px);line-height:1.6;color:var(--ink);font-weight:500;margin-bottom:32px}.ctg-v2 .chal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ctg-v2 .chal{position:relative;background:var(--card);border-radius:var(--r);padding:30px 28px 32px;border:1px solid var(--bd);overflow:hidden;box-shadow:var(--shadow);transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}.ctg-v2 .chal:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--blue);transition:background .5s}.ctg-v2 .chal:hover{transform:translateY(-4px);border-color:rgba(48,84,212,.32);box-shadow:var(--shadow-hi)}.ctg-v2 .chal:hover:before{background:linear-gradient(180deg,var(--blue),var(--green-d))}.ctg-v2 .chal .hzn{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.ctg-v2 .chal .pin{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--blue);display:grid;place-items:center;color:var(--blue);font-family:Space Mono,monospace;font-size:12px;font-weight:700}.ctg-v2 .chal h3{font-size:21px;margin-bottom:12px}.ctg-v2 .chal p{font-size:15px;color:var(--muted);line-height:1.62}.ctg-v2 .feat-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:1fr;gap:20px}.ctg-v2 .fcard{position:relative;background:var(--card);border-radius:var(--r);overflow:hidden;border:1px solid var(--bd);padding:48px 28px 30px;box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:268px;transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}.ctg-v2 .fcard:hover{transform:translateY(-4px);border-color:rgba(48,84,212,.3);box-shadow:var(--shadow-hi)}.ctg-v2 .f-span3{grid-column:span 3}.ctg-v2 .f-span2{grid-column:span 2}.ctg-v2 .fcard h3{font-size:21px;margin-bottom:9px;position:relative;z-index:3}.ctg-v2 .fcard p{font-size:14.5px;color:var(--muted);line-height:1.6;position:relative;z-index:3;max-width:46ch}.ctg-v2 .fcard .viz{position:relative;width:auto;height:204px;flex:0 0 auto;margin:-48px -28px 26px;z-index:1;overflow:hidden;border-bottom:1px solid var(--bd-2);background:linear-gradient(135deg,#eef4ff,#eaf6ee)}.ctg-v2 .fcard .viz img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .6s var(--ease)}.ctg-v2 .fcard:hover .viz img{transform:scale(1.04)}.ctg-v2 .impl{position:relative;z-index:1}.ctg-v2 .impl-intro{max-width:60ch;color:var(--muted);font-size:18px;margin-bottom:54px}.ctg-v2 .phases{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ctg-v2 .phase{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:34px 34px 40px;box-shadow:var(--shadow);transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .45s}.ctg-v2 .phase:hover{transform:translateY(-4px);box-shadow:var(--shadow-hi);border-color:rgba(48,84,212,.35)}.ctg-v2 .phase:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}.ctg-v2 .phase:hover:before{transform:scaleX(1)}.ctg-v2 .phase .ph-n{position:absolute;right:18px;bottom:-22px;font-family:Space Mono,monospace;font-weight:700;font-size:140px;line-height:1;letter-spacing:-.04em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.1;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:opacity .45s}.ctg-v2 .phase:hover .ph-n{opacity:.18}.ctg-v2 .phase .ph-tag{font-family:Space Mono,monospace;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);margin-bottom:16px}.ctg-v2 .phase h3{position:relative;font-size:22px;margin-bottom:11px}.ctg-v2 .phase p{position:relative;font-size:15px;color:var(--muted);line-height:1.65;max-width:42ch}.ctg-v2 .aud-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ctg-v2 .aud{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:30px 28px;box-shadow:var(--shadow);transition:transform .4s var(--ease),background .4s,box-shadow .4s}.ctg-v2 .aud:hover{transform:translateY(-4px);background:var(--card-2);box-shadow:var(--shadow-hi)}.ctg-v2 .aud .icon{width:46px;height:46px;border-radius:12px;background:rgba(7,146,190,.1);display:grid;place-items:center;margin-bottom:22px}.ctg-v2 .aud .icon img{width:22px;height:22px;display:block}.ctg-v2 .aud h3{font-size:18.5px;margin-bottom:10px}.ctg-v2 .aud p{font-size:14.5px;color:var(--muted);line-height:1.6}.ctg-v2 .outcomes{background:var(--bg-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.ctg-v2 .out-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}.ctg-v2 .out{background:var(--bg);padding:42px 34px;min-height:218px;display:flex;flex-direction:column;justify-content:space-between}.ctg-v2 .out .fig{font-family:Space Mono,monospace;font-weight:700;font-size:clamp(40px,5vw,62px);line-height:1}.ctg-v2 .out .fig .u{font-size:.5em;color:var(--muted-2)}.ctg-v2 .out p{font-size:15px;color:var(--muted);line-height:1.6;margin-top:18px}.ctg-v2 .out .barline{height:5px;border-radius:99px;background:rgba(14,19,32,.08);overflow:hidden;margin-top:24px}.ctg-v2 .out .barline .fill{display:block;height:100%;width:0;background:var(--grad);transition:width 1.5s var(--ease)}.ctg-v2 .out.in .barline .fill{width:var(--w,100%)}.ctg-v2 .stack-rail{display:grid;grid-template-columns:repeat(7,1fr);background:var(--card);border:1px solid var(--bd);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.ctg-v2 .trail{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px;padding:42px 16px 34px;box-shadow:1px 0 0 0 var(--rule),0 1px 0 0 var(--rule);transition:background .35s var(--ease)}.ctg-v2 .trail:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:center;transition:transform .4s var(--ease)}.ctg-v2 .trail:hover{background:var(--card-2)}.ctg-v2 .trail:hover:after{transform:scaleX(1)}.ctg-v2 .trail .logo-wrap{height:54px;display:grid;place-items:center}.ctg-v2 .trail img{max-height:54px;width:auto;-o-object-fit:contain;object-fit:contain;filter:saturate(.9);transition:filter .4s,transform .45s var(--ease)}.ctg-v2 .trail:hover img{filter:saturate(1.12);transform:translateY(-5px) scale(1.04)}.ctg-v2 .trail .t-name{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:center;font-weight:700;transition:color .35s}.ctg-v2 .trail:hover .t-name{color:var(--ink)}.ctg-v2 .roadmap{display:grid;grid-template-columns:repeat(4,1fr)}.ctg-v2 .rnode{position:relative;padding-right:34px}.ctg-v2 .rnode .rmark{position:relative;z-index:2;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-family:Space Mono,monospace;font-weight:700;font-size:14px;color:#fff;background:var(--grad);margin-bottom:28px;box-shadow:0 8px 20px rgba(48,84,212,.26);transition:transform .4s var(--ease),box-shadow .4s}.ctg-v2 .rnode:after{content:"";position:absolute;z-index:1;top:20px;left:50px;right:6px;height:2px;background-image:linear-gradient(90deg,var(--green-d) 55%,transparent 0);background-size:9px 2px;background-repeat:repeat-x;opacity:.45}.ctg-v2 .rnode:last-child:after{display:none}.ctg-v2 .rnode:hover .rmark{transform:scale(1.09);box-shadow:0 10px 26px rgba(48,84,212,.34)}.ctg-v2 .rnode .rlabel{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--green-d);font-weight:700;margin-bottom:13px}.ctg-v2 .rnode h3{font-size:19px;margin-bottom:11px}.ctg-v2 .rnode p{font-size:14.5px;color:var(--muted);line-height:1.6;max-width:32ch}.ctg-v2 .results{position:relative;overflow:hidden;background:var(--bg-2);border-top:1px solid var(--rule)}.ctg-v2 .results .inner{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:start}.ctg-v2 .results .lead{position:relative;padding-top:26px;font-size:clamp(23px,2.1vw,29px);line-height:1.42;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.ctg-v2 .results .lead:before{content:"";position:absolute;top:0;left:0;width:54px;height:4px;border-radius:99px;background:var(--grad)}.ctg-v2 .results .rbody p{font-size:16.5px;line-height:1.8;color:var(--muted)}.ctg-v2 .results .rbody p+p{margin-top:22px}.ctg-v2 .results .rbody b{font-weight:700}.ctg-v2 .final{padding:var(--sec-pad) 0}.ctg-v2 .cta-banner{position:relative;overflow:hidden;border-radius:30px;background:var(--grad-banner);display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:40px;padding:84px 64px;box-shadow:0 30px 80px rgba(48,84,212,.22)}.ctg-v2 .cta-banner:after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(120% 140% at 0 0,rgba(4,20,10,0),rgba(4,20,10,.16));pointer-events:none}.ctg-v2 .cta-copy{position:relative;z-index:2}.ctg-v2 .cta-copy h2{font-size:clamp(34px,4.6vw,60px);font-weight:900;color:#fff;letter-spacing:-.02em;line-height:1.04;margin-bottom:20px}.ctg-v2 .cta-copy p{font-size:clamp(16px,1.4vw,19px);line-height:1.6;color:hsla(0,0%,100%,.82);max-width:42ch;margin-bottom:36px}.ctg-v2 .cta-banner .btn-codiste{background:var(--cta-dark);color:#fff;transition:transform .25s var(--ease),box-shadow .35s var(--ease)}.ctg-v2 .cta-banner .btn-codiste:hover{box-shadow:0 16px 44px rgba(4,20,10,.4)}.ctg-v2 .cta-banner .btn-codiste .circ{background:#fff}.ctg-v2 .cta-art{position:relative;z-index:2;display:grid;place-items:center}.ctg-v2 .cta-art img{width:100%;max-width:360px;height:auto;display:block;filter:drop-shadow(0 26px 40px rgba(4,20,10,.32));animation:ctgCtaFloat 6s ease-in-out infinite}@keyframes ctgCtaFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@media (max-width:1024px){.ctg-v2{--sec-pad:96px}.ctg-v2 .wrap{padding:0 32px}.ctg-v2 .intro{grid-template-columns:1fr;gap:32px}.ctg-v2 .f-span2,.ctg-v2 .f-span3{grid-column:span 3}.ctg-v2 .stack-rail{grid-template-columns:repeat(4,1fr)}}@media (max-width:768px){.ctg-v2{--sec-pad:80px}.ctg-v2 .wrap{padding:0 24px}.ctg-v2 .chal-grid,.ctg-v2 .feat-grid{grid-template-columns:repeat(2,1fr)}.ctg-v2 .fcard{grid-column:span 2!important}.ctg-v2 .aud-grid{grid-template-columns:repeat(2,1fr)}.ctg-v2 .out-grid{grid-template-columns:1fr}.ctg-v2 .roadmap{grid-template-columns:repeat(2,1fr);row-gap:40px}.ctg-v2 .rnode:after{display:none}.ctg-v2 .results .inner{grid-template-columns:1fr;gap:30px}.ctg-v2 .phases{grid-template-columns:1fr;gap:16px}.ctg-v2 .phase{padding:28px 26px 34px}.ctg-v2 .phase .ph-n{font-size:110px}.ctg-v2 .stack-rail{grid-template-columns:repeat(3,1fr)}.ctg-v2 .cta-banner{grid-template-columns:1fr;text-align:center;gap:24px;padding-bottom:64px}.ctg-v2 .cta-copy p{max-width:none}.ctg-v2 .cta-copy .btn-codiste{display:inline-flex}.ctg-v2 .cta-art{order:-1}.ctg-v2 .cta-art img{max-width:240px}}@media (max-width:480px){.ctg-v2{--sec-pad:64px}.ctg-v2 .wrap{padding:0 18px}.ctg-v2 .hero{padding-top:84px;padding-bottom:64px}.ctg-v2 .hero-frame{margin-top:44px}.ctg-v2 .hero-cta{flex-direction:column;align-items:stretch;gap:16px}.ctg-v2 .hero-cta .btn-codiste{width:100%;justify-content:space-between}.ctg-v2 .hero-head h1{max-width:none}.ctg-v2 .sec-head{margin-bottom:40px}.ctg-v2 .aud-grid,.ctg-v2 .chal-grid,.ctg-v2 .feat-grid,.ctg-v2 .roadmap{grid-template-columns:1fr}.ctg-v2 .roadmap{row-gap:34px}.ctg-v2 .stack-rail{grid-template-columns:repeat(2,1fr)}.ctg-v2 .trail:last-child{grid-column:1/-1}.ctg-v2 .fcard{grid-column:span 1!important}.ctg-v2 .cta-banner{padding:60px 26px}}