:root{--ink:#10151b;--ink-soft:#202b31;--paper:#f1f0e9;--paper-deep:#e6e8df;--acid:#d9ff55;--blue:#283cda;--orange:#ff7159;--muted:#a8b2b5;--line:rgba(16,21,27,.17);--line-light:rgba(255,255,255,.18);--font-display:'Space Grotesk','Segoe UI',Arial,sans-serif;--font-body:'DM Sans','Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--font-body);font-size:16px;line-height:1.5;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}svg{display:block}::selection{background:var(--acid);color:var(--ink)}:focus-visible{outline:2px solid var(--acid);outline-offset:4px}.shell{width:min(100% - 88px,1440px);margin-inline:auto}.section-pad{padding:130px 0}.skip-link{position:fixed;z-index:100;top:-100px;left:20px;background:var(--acid);color:var(--ink);padding:12px 18px}.skip-link:focus{top:14px}.site-progress{position:fixed;z-index:100;top:0;left:0;width:100%;height:3px;pointer-events:none}.site-progress span{display:block;height:100%;width:100%;background:var(--acid);transform:scaleX(0);transform-origin:left}.site-header{position:absolute;z-index:30;top:0;left:0;right:0;border-bottom:1px solid var(--line-light)}.nav-shell{height:88px;display:flex;align-items:center;gap:52px}.brand{display:inline-flex;align-items:center;gap:11px;min-width:max-content}.brand-rule{display:block;width:5px;height:37px;background:var(--acid);flex:none;box-shadow:9px 0 0 rgba(217,255,85,.16)}.brand-word{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:-.075em;line-height:1}.brand-word span{font-size:9px;letter-spacing:.22em;display:block;margin-top:5px;font-weight:700}.desktop-nav{display:flex;align-items:center;gap:34px;margin-left:auto}.desktop-nav a{font-size:13px;font-weight:600;color:#d0d4d1;transition:color .2s}.desktop-nav a:hover{color:var(--acid)}.nav-cta{display:inline-flex;align-items:center;gap:24px;min-height:45px;background:var(--acid);color:var(--ink);padding:0 17px;font-weight:700;font-size:13px;white-space:nowrap;transition:background .2s,transform .25s}.nav-cta:hover{background:#ecff9e}.arrow{font-size:20px;line-height:1}.menu-toggle{display:none;border:0;background:none;color:var(--paper);width:44px;height:44px;margin-left:auto;padding:10px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:currentColor;margin:7px 0;transition:transform .3s}.mobile-nav{display:none}
.hero{position:relative;min-height:780px;height:100svh;max-height:1020px;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 78% 44%,#253141 0,#151d26 24%,#10151b 55%)}.hero-grid{position:absolute;inset:0;opacity:.25;background-image:linear-gradient(rgba(219,255,182,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(219,255,182,.08) 1px,transparent 1px);background-size:78px 78px;mask-image:linear-gradient(to right,transparent,#000 40%,#000)}.hero-grid:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0,transparent 56%)}.hero-noise{position:absolute;inset:0;opacity:.17;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E")}.hero-inner{position:relative;z-index:2;height:100%;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(400px,.8fr);align-items:center}.hero-copy{padding-top:100px;position:relative;z-index:4}.eyebrow{font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.2em}.hero-eyebrow{display:flex;align-items:center;gap:14px;color:#dce2db;white-space:nowrap}.status-dot{height:7px;width:7px;background:var(--acid);border-radius:50%;box-shadow:0 0 15px var(--acid);animation:blink 2.3s infinite}.eyebrow-rule{height:1px;width:24px;background:#7d8c83}.hero-title{font-family:var(--font-display);font-size:clamp(75px,8.65vw,155px);line-height:.85;letter-spacing:-.092em;margin:48px 0 48px;font-weight:700;position:relative;z-index:3}.line-mask{display:block;overflow:hidden;padding:0 .08em .11em 0;margin-bottom:-.11em}.line-mask>span{display:block;transform:translateY(108%);animation:hero-rise 1s cubic-bezier(.16,1,.3,1) forwards}.line-mask:nth-child(2)>span{animation-delay:.14s}.line-mask:nth-child(3)>span{animation-delay:.28s}.accent-line{color:var(--acid);white-space:nowrap}.period{color:var(--orange)}.hero-bottom{max-width:590px;display:flex;align-items:end;gap:36px}.hero-bottom p{font-size:21px;line-height:1.4;margin:0;color:#c4ced0;max-width:430px}.round-link{width:66px;height:66px;border:1px solid var(--acid);border-radius:50%;display:grid;place-items:center;flex:none;color:var(--acid);transition:background .25s,color .25s}.round-link:hover{background:var(--acid);color:var(--ink)}.round-link svg{width:27px;fill:none;stroke:currentColor;stroke-width:1.5}.hero-art{height:min(680px,72vh);width:100%;position:relative;transform:translate(-3%,5%);filter:drop-shadow(0 0 35px rgba(95,142,171,.16))}.orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(183,216,218,.22);border-radius:50%;transform:translate(-50%,-50%) rotate(-25deg)}.orbit-one{width:88%;aspect-ratio:1.25;animation:orbit-wobble 18s linear infinite}.orbit-two{width:115%;aspect-ratio:1.15;transform:translate(-50%,-50%) rotate(35deg);animation:orbit-wobble-reverse 24s linear infinite}.orbit-three{width:78%;aspect-ratio:1;border-style:dashed;opacity:.5;animation:spin 45s linear infinite}.planet-core{position:absolute;width:64%;aspect-ratio:1;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 27% 30%,#b8f878 0,#5ca278 19%,#2d566c 38%,#14293b 68%,#0a111c 78%);box-shadow:inset -30px -30px 44px rgba(0,0,0,.64),inset 14px 10px 33px rgba(214,255,190,.28),0 0 100px rgba(72,149,172,.19);overflow:hidden;animation:float 7s ease-in-out infinite}.planet-core:before{content:'';position:absolute;inset:-20%;background:repeating-radial-gradient(ellipse at 20% 50%,transparent 0 19px,rgba(206,255,220,.19) 20px 21px,transparent 22px 43px);transform:rotate(-22deg);opacity:.5}.planet-grid{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 29px,rgba(187,252,214,.18) 30px 31px,transparent 32px 61px),repeating-linear-gradient(90deg,transparent 0 29px,rgba(187,252,214,.13) 30px 31px,transparent 32px 61px);border-radius:50%;transform:rotate(-20deg);mask-image:radial-gradient(circle,#000 45%,transparent 76%)}.planet-core:after{content:'';position:absolute;inset:7%;border:1px solid rgba(219,255,219,.25);border-radius:50%}.core-cross{position:absolute;color:var(--acid);font-size:23px;font-weight:300}.cross-one{left:24%;top:27%}.cross-two{right:25%;top:48%}.cross-three{left:42%;bottom:19%}.art-chip{position:absolute;z-index:3;display:flex;align-items:center;gap:11px;color:#e9f3e8;border:1px solid rgba(218,255,224,.28);background:rgba(18,29,35,.78);backdrop-filter:blur(18px);box-shadow:0 16px 40px rgba(0,0,0,.22);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.09em}.chip-top{top:13%;left:8%;padding:12px 15px}.chip-top i{height:6px;width:6px;background:var(--acid);border-radius:50%}.chip-icon{color:var(--acid);font-size:20px;line-height:1}.chip-right{right:-1%;top:42%;padding:14px 17px}.chip-right strong{color:var(--acid);font-size:11px}.mini-bars{display:flex;align-items:end;gap:3px;height:25px}.mini-bars b{width:4px;background:var(--acid);height:30%;animation:bar-bounce 1.1s ease-in-out infinite}.mini-bars b:nth-child(2){height:80%;animation-delay:.13s}.mini-bars b:nth-child(3){height:48%;animation-delay:.26s}.mini-bars b:nth-child(4){height:100%;animation-delay:.4s}.chip-bottom{bottom:11%;left:14%;padding:12px 15px}.chip-bottom>span:last-child{font-size:18px;color:var(--acid)}.chip-dot{width:9px;height:9px;border:1px solid var(--acid);border-radius:50%}.art-coordinate{position:absolute;font:10px var(--font-display);letter-spacing:.12em;color:#8da2a4}.coord-one{top:5%;right:17%}.coord-two{bottom:2%;right:6%}.hero-foot{position:absolute;z-index:3;bottom:30px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;color:#9aa9a9;font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.17em}.scroll-indicator{height:33px;width:20px;border:1px solid #9aa9a9;border-radius:20px;display:grid;justify-content:center;padding-top:6px}.scroll-indicator span{height:6px;width:2px;background:var(--acid);animation:scroll 1.8s infinite}
.capability-strip{height:76px;display:flex;align-items:center;background:var(--acid);color:var(--ink);overflow:hidden}.strip-track{width:max-content;display:flex;align-items:center;gap:48px;white-space:nowrap;animation:marquee 30s linear infinite}.strip-track span{font:700 19px var(--font-display);letter-spacing:-.03em}.strip-track b{font-size:19px;font-weight:400}
.intro-section{background:var(--paper);color:var(--ink)}.section-top{display:flex;align-items:center;gap:22px;margin-bottom:70px;color:#404a4a}.section-index,.section-side{font:700 11px var(--font-display);letter-spacing:.18em;white-space:nowrap}.section-line{height:1px;background:var(--line);flex:1}.section-top.light{color:#bcc9c8}.section-top.light .section-line{background:var(--line-light)}.intro-grid{display:grid;grid-template-columns:1.55fr .45fr;gap:80px;align-items:end;margin-bottom:82px}.display-heading{font-family:var(--font-display);font-size:clamp(53px,6.4vw,112px);font-weight:600;line-height:.96;letter-spacing:-.082em;margin:0}.display-heading em{font-weight:400;font-style:normal;color:var(--blue)}.intro-aside{max-width:350px;padding-bottom:6px}.asterisk{font-size:39px;color:var(--blue);line-height:1}.intro-aside p{font-size:17px;line-height:1.55;margin:25px 0}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:10px;border-bottom:1px solid currentColor;font-size:13px;font-weight:700;transition:gap .25s,color .25s}.text-link:hover{gap:44px;color:var(--blue)}.text-link span{font-size:20px;line-height:1}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service-card{min-height:520px;padding:29px 31px 26px;position:relative;overflow:hidden;transition:background .3s,transform .3s}.service-card+ .service-card{border-left:1px solid var(--line)}.service-card:hover{background:#e7e9e0}.card-number,.card-tail{display:flex;align-items:center;justify-content:space-between;font:700 10px var(--font-display);letter-spacing:.18em}.card-number{color:#606d68}.card-tail{position:absolute;left:31px;right:31px;bottom:27px;padding-top:20px;border-top:1px solid var(--line)}.card-tail span{font-size:19px}.service-card h3{font:600 clamp(30px,2.7vw,44px)/1.03 var(--font-display);letter-spacing:-.06em;margin:0 0 14px}.service-card p{font-size:15px;max-width:360px;color:#4e5856;margin:0;line-height:1.55}.service-visual{height:225px;position:relative;margin:10px 0 22px;display:grid;place-items:center}.visual-window{position:relative;display:block;width:194px;height:138px;border:2px solid var(--ink);box-shadow:14px 14px 0 #c7d4b3;transform:rotate(-7deg);padding:34px 17px 17px;transition:transform .5s}.service-card:hover .visual-window{transform:rotate(1deg) translateY(-9px)}.visual-window:before{content:'';position:absolute;top:0;left:0;right:0;height:24px;border-bottom:2px solid var(--ink)}.visual-window i{position:absolute;top:8px;width:5px;height:5px;border-radius:50%;background:var(--ink)}.visual-window i:nth-child(1){left:10px}.visual-window i:nth-child(2){left:20px}.visual-window i:nth-child(3){left:30px}.visual-line{display:block;width:53%;height:6px;background:var(--ink);margin:0 0 9px}.visual-line.wide{width:80%;background:var(--blue);height:10px}.visual-modules{display:flex;gap:7px;margin-top:13px}.visual-modules b{height:28px;width:33%;background:#d2d9cd;border:1px solid var(--ink)}.visual-modules b:first-child{background:var(--acid)}.cloud-ring{position:absolute;border:1.5px solid var(--blue);border-radius:50%;width:175px;aspect-ratio:1;animation:spin 20s linear infinite}.cloud-ring.r2{width:135px;border-style:dashed;animation-direction:reverse}.cloud-ring.r3{width:95px;opacity:.4}.cloud-center{font:700 34px var(--font-display);letter-spacing:-.1em;color:var(--blue)}.cloud-node{position:absolute;width:12px;height:12px;background:var(--blue);border-radius:50%}.cloud-node.n1{transform:translate(80px,-69px)}.cloud-node.n2{transform:translate(-80px,68px);background:var(--orange)}.cloud-node.n3{transform:translate(62px,70px);background:var(--acid);border:1px solid var(--blue)}.ai-lattice{display:grid;grid-template-columns:repeat(3,40px);grid-template-rows:repeat(3,40px);gap:12px;transform:rotate(45deg)}.ai-lattice span{border:1px solid var(--ink);background:#d9dfd3;animation:lattice 3s ease-in-out infinite}.ai-lattice span:nth-child(2),.ai-lattice span:nth-child(4),.ai-lattice span:nth-child(9){background:var(--blue)}.ai-lattice span:nth-child(5){background:var(--acid)}.ai-lattice span:nth-child(even){animation-delay:.3s}.ai-center{position:absolute;display:grid;place-items:center;width:62px;height:62px;background:var(--ink);border-radius:50%;color:var(--acid);font:700 23px var(--font-display)}
.banking-section{background:var(--blue);color:white;overflow:hidden}.banking-layout{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;min-height:700px}.banking-copy{position:relative;z-index:2}.banking-copy .section-top{margin-bottom:78px}.banking-copy .eyebrow{color:var(--acid);margin:0 0 26px}.banking-copy .display-heading em{color:var(--acid)}.banking-desc{font-size:18px;line-height:1.55;max-width:490px;color:#d5ddff;margin:32px 0}.pill-link{display:inline-flex;align-items:center;gap:45px;background:var(--acid);color:var(--ink);padding:17px 21px;font-weight:700;font-size:13px;transition:background .2s}.pill-link:hover{background:#f0ffab}.pill-link span{font-size:21px;line-height:1}.banking-art{height:660px;position:relative;display:grid;place-items:center}.banking-circle{position:absolute;border:1px solid rgba(220,236,255,.28);border-radius:50%;aspect-ratio:1}.circle-a{width:77%}.circle-b{width:100%}.circle-c{width:125%;border-style:dashed;animation:spin 45s linear infinite}.banking-phone{z-index:2;width:276px;height:525px;border:2px solid var(--ink);border-radius:26px;background:var(--paper);color:var(--ink);box-shadow:24px 28px 0 rgba(7,16,108,.47),0 35px 85px rgba(0,0,0,.25);padding:20px;transform:rotate(7deg);animation:phone-float 7s ease-in-out infinite}.phone-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;font:700 8px var(--font-display);letter-spacing:.14em}.phone-top span:first-child{font-size:8px;letter-spacing:0}.phone-top span:last-child{font-size:15px}.phone-logo{margin:32px auto 28px;width:87px;height:87px;border-radius:50%;background:var(--blue);color:white;display:grid;place-items:center;font:700 46px var(--font-display);position:relative}.phone-logo span{position:absolute;font-size:26px;right:-14px;bottom:0;background:var(--acid);color:var(--ink);width:32px;height:32px;border-radius:50%;display:grid;place-items:center}.message{position:relative;background:#dce1db;border-radius:12px;padding:17px 15px;margin:13px 0;width:83%}.message span{display:block;height:7px;background:#9fa9a4;margin:6px 0;width:80%;border-radius:20px}.message span:nth-of-type(2){width:56%}.message i{position:absolute;width:20px;height:20px;background:var(--blue);border-radius:50%;top:14px;right:14px}.msg-two{margin-left:auto;background:var(--acid)}.msg-two span{background:#82943d}.msg-two i{left:14px;right:auto;background:var(--ink);width:12px;height:12px}.phone-bottom{position:absolute;bottom:18px;left:20px;right:20px;border:1px solid var(--line);padding:11px;display:flex;gap:9px;align-items:center;font:700 8px var(--font-display);letter-spacing:.14em}.phone-bottom b{height:7px;width:7px;background:#38a66e;border-radius:50%}.banking-tag{position:absolute;z-index:3;background:var(--acid);color:var(--ink);padding:12px 17px;font:700 10px var(--font-display);letter-spacing:.12em;box-shadow:9px 9px 0 rgba(8,18,87,.3)}.tag-one{left:4%;top:25%;transform:rotate(-7deg)}.tag-two{right:0;top:53%;transform:rotate(4deg)}.tag-three{left:13%;bottom:15%;transform:rotate(5deg)}
.work-section{background:var(--paper);color:var(--ink)}.work-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:65px}.work-heading p{max-width:330px;font-size:17px;color:#586360;margin:0}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.product-card{min-height:550px;padding:24px;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:transform .35s,box-shadow .35s}.product-card:hover{transform:translateY(-9px);box-shadow:0 25px 45px rgba(23,28,28,.16)}.product-sendloop{background:var(--orange)}.product-strike{background:var(--ink);color:white}.product-loan{background:var(--acid)}.product-head{display:flex;justify-content:space-between;align-items:center;font:700 10px var(--font-display);letter-spacing:.15em}.product-head span:last-child{font-size:23px;line-height:1}.product-graphic{flex:1;position:relative;display:grid;place-items:center;min-height:330px}.product-bottom{border-top:1px solid currentColor;padding-top:15px;display:flex;align-items:end;justify-content:space-between;gap:20px}.product-bottom h3{font:600 clamp(34px,3.3vw,54px)/1 var(--font-display);letter-spacing:-.085em;margin:0}.product-bottom p{font:600 11px var(--font-display);letter-spacing:.07em;margin:0;white-space:nowrap}.loop{position:absolute;border:3px solid var(--ink);border-radius:50%;width:225px;aspect-ratio:1}.loop-a{transform:rotate(-35deg) scaleX(.48);animation:loop-a 12s ease-in-out infinite}.loop-b{transform:rotate(35deg) scaleX(.48);animation:loop-b 12s ease-in-out infinite}.loop-c{width:170px;opacity:.25}.graphic-core{position:relative;z-index:2;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--orange);font:700 70px var(--font-display);letter-spacing:-.1em}.radar-ring{position:absolute;border:1px solid #95a19e;border-radius:50%;aspect-ratio:1}.radar-one{width:250px}.radar-two{width:180px}.radar-three{width:95px}.radar-sweep{position:absolute;width:250px;height:250px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg,transparent 280deg,rgba(217,255,85,.45) 357deg,transparent 360deg);animation:spin 5s linear infinite}.radar-center{position:relative;font:700 41px var(--font-display);letter-spacing:-.1em;color:var(--acid)}.radar-point{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--acid);box-shadow:0 0 14px var(--acid)}.radar-point.p1{transform:translate(92px,-52px)}.radar-point.p2{transform:translate(-73px,84px)}.loan-sheet{position:absolute;width:185px;height:235px;border:2px solid var(--ink);background:var(--paper);box-shadow:12px 12px 0 var(--ink)}.loan-sheet.back{transform:rotate(11deg) translate(16px,-8px);background:var(--orange)}.loan-sheet.front{transform:rotate(-8deg) translate(-16px,9px);padding:32px 19px}.loan-sheet.front span{display:block;background:var(--ink);height:7px;margin-bottom:15px;width:80%}.loan-sheet.front span:nth-child(2){width:58%;height:5px;background:#8a9383}.loan-sheet.front span:nth-child(3){width:67%;height:5px;background:#8a9383}.loan-sheet.front b{display:block;height:32px;background:var(--blue);margin-top:15px}.loan-sheet.front b:last-child{height:12px;width:75%;background:#c7d0c4}.loan-arrow{position:relative;z-index:4;align-self:end;justify-self:end;margin:0 40px 44px 0;width:75px;height:75px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:45px}.portfolio-note{font-size:12px;color:#62706c;margin:22px 0 0}
.infrastructure-section{background:var(--ink-soft);color:var(--paper);overflow:hidden}.infrastructure-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.infra-visual{height:600px;position:relative;display:grid;place-items:center;border:1px solid var(--line-light);overflow:hidden;background:radial-gradient(circle at 50% 50%,#2e4a52 0,#1d303a 40%,#16232b 75%)}.infra-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(217,255,85,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(217,255,85,.1) 1px,transparent 1px);background-size:43px 43px;mask-image:radial-gradient(circle,#000 20%,transparent 80%)}.infra-center{position:relative;width:240px;height:240px;display:grid;place-items:center}.infra-center svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--acid);stroke-width:1.5;animation:float 6s ease-in-out infinite}.infra-center span{font:700 48px var(--font-display);color:var(--acid);letter-spacing:-.07em}.infra-node{position:absolute;border:1px solid rgba(217,255,85,.45);background:rgba(16,21,27,.8);backdrop-filter:blur(8px);padding:10px 12px;color:var(--acid);font:700 10px var(--font-display);letter-spacing:.1em;display:flex;gap:13px}.infra-node b{color:white}.node-a{top:16%;left:9%}.node-b{top:28%;right:9%}.node-c{bottom:26%;left:7%}.node-d{bottom:13%;right:13%}.infra-pulse{position:absolute;border:1px solid rgba(217,255,85,.3);border-radius:50%;width:380px;aspect-ratio:1;animation:pulse 5s ease-out infinite}.pulse-b{animation-delay:2.5s}.infra-copy .section-top{margin-bottom:88px}.infra-copy .display-heading em{color:var(--acid)}.infra-copy>p{font-size:18px;color:#c4d0d0;max-width:520px;line-height:1.6;margin:32px 0 36px}.infra-facts{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:42px}.infra-facts span{border:1px solid rgba(217,255,85,.36);color:var(--acid);padding:8px 10px;font:700 9px var(--font-display);letter-spacing:.1em}.light-link:hover{color:var(--acid)}
.approach-section{background:var(--paper);color:var(--ink)}.approach-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:84px}.approach-heading p{max-width:340px;margin:0;font-size:17px;color:#586360}.steps{border-top:1px solid var(--line)}.step{position:relative;display:grid;grid-template-columns:100px 1fr 1fr 30px;gap:20px;align-items:center;padding:31px 10px;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}.step:hover{padding-left:23px;background:#e8ebdf}.step>span{font:600 14px var(--font-display);color:var(--blue)}.step h3{font:600 clamp(28px,3.2vw,48px)/1 var(--font-display);letter-spacing:-.07em;margin:0}.step p{max-width:310px;font-size:15px;color:#586360;margin:0}.step b{font-size:22px;font-weight:400}
.about-section{background:var(--acid);color:var(--ink)}.about-layout{display:grid;grid-template-columns:.38fr .62fr;gap:10%}.about-side{display:flex;flex-direction:column;justify-content:space-between;align-items:start;font:700 11px var(--font-display);letter-spacing:.14em}.about-mark{width:280px;height:280px;display:grid;place-items:center;background:var(--ink);color:var(--acid);font:700 70px/1 var(--font-display);letter-spacing:-.09em;transform:rotate(-7deg);box-shadow:18px 18px 0 rgba(16,21,27,.16)}.about-mark span{display:block}.about-main .display-heading em{color:var(--blue)}.about-main>p{max-width:730px;font:400 clamp(23px,2.3vw,34px)/1.35 var(--font-display);letter-spacing:-.04em;margin:53px 0 80px}.about-footer{display:grid;grid-template-columns:190px 1fr;gap:20px;border-top:1px solid var(--ink);padding-top:22px}.about-footer span{font:700 10px var(--font-display);letter-spacing:.15em}.about-footer p{margin:0;max-width:390px;font-size:14px}
.contact-section{background:var(--orange);color:var(--ink);padding-bottom:150px}.contact-section .section-top{margin-bottom:100px}.contact-kicker{font:700 11px var(--font-display);letter-spacing:.18em;margin:0 0 30px}.contact-heading{font:600 clamp(55px,8.6vw,143px)/.91 var(--font-display);letter-spacing:-.092em;margin:0 0 88px}.contact-heading em{font-style:normal;color:var(--paper)}.contact-row{border-top:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:40px;padding-top:30px}.contact-row p{max-width:390px;font-size:18px;line-height:1.45;margin:0}.contact-action{min-width:340px;display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:var(--paper);padding:24px 26px;font:700 17px var(--font-display);transition:background .25s,transform .25s}.contact-action:hover{background:var(--blue)}.contact-action span:last-child{font-size:26px;font-weight:400}.site-footer{background:var(--ink);color:var(--paper);padding:70px 0 24px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:30px;padding-bottom:90px}.footer-top p{font-size:16px;color:#aab7b9;max-width:220px;margin:0}.back-top{border-bottom:1px solid var(--paper);padding-bottom:7px;font:700 12px var(--font-display)}.footer-bottom{border-top:1px solid var(--line-light);padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#96a2a3;font:700 10px var(--font-display);letter-spacing:.14em}
.js .reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.js .reveal.in-view{opacity:1;transform:translateY(0)}.service-card:nth-child(2),.product-card:nth-child(2),.step:nth-child(2){transition-delay:.08s}.service-card:nth-child(3),.product-card:nth-child(3),.step:nth-child(3){transition-delay:.16s}.step:nth-child(4){transition-delay:.24s}
@keyframes hero-rise{to{transform:translateY(0)}}@keyframes blink{50%{opacity:.4;box-shadow:0 0 4px var(--acid)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translate(-50%,-52%)}}@keyframes phone-float{50%{transform:rotate(5deg) translateY(-13px)}}@keyframes scroll{to{transform:translateY(8px);opacity:0}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes orbit-wobble{50%{transform:translate(-50%,-50%) rotate(155deg)}}@keyframes orbit-wobble-reverse{50%{transform:translate(-50%,-50%) rotate(-145deg)}}@keyframes bar-bounce{50%{transform:scaleY(.5)}}@keyframes lattice{50%{opacity:.35;transform:scale(.82)}}@keyframes loop-a{50%{transform:rotate(145deg) scaleX(.48)}}@keyframes loop-b{50%{transform:rotate(-145deg) scaleX(.48)}}@keyframes pulse{0%{transform:scale(.4);opacity:.8}100%{transform:scale(1.4);opacity:0}}
@media(max-width:1180px){.shell{width:min(100% - 60px,1440px)}.desktop-nav{gap:20px}.nav-shell{gap:25px}.hero-title{font-size:clamp(68px,8.5vw,112px)}.hero-art{transform:translate(-12%,5%)}.intro-grid{gap:35px}.service-card{padding-inline:22px}.card-tail{left:22px;right:22px}.product-bottom{display:block}.product-bottom p{margin-top:8px}.about-mark{width:220px;height:220px;font-size:55px}}
@media(max-width:900px){.shell{width:min(100% - 40px,1440px)}.section-pad{padding:90px 0}.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block}.mobile-nav{position:fixed;z-index:29;top:0;right:0;bottom:0;width:min(100%,520px);padding:110px 26px 40px;background:var(--acid);color:var(--ink);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .55s cubic-bezier(.16,1,.3,1);box-shadow:-30px 0 50px rgba(0,0,0,.25)}.mobile-nav.open{transform:translateX(0)}.mobile-nav a{border-bottom:1px solid rgba(16,21,27,.25);display:flex;justify-content:space-between;align-items:center;min-height:74px;font:600 33px var(--font-display);letter-spacing:-.06em}.mobile-nav a span{font:700 11px var(--font-display)}.site-header{position:absolute}.site-header.menu-active{position:fixed;border-color:rgba(16,21,27,.25)}.site-header.menu-active .brand,.site-header.menu-active .menu-toggle{color:var(--ink)}.site-header.menu-active .brand-rule{background:var(--ink);box-shadow:9px 0 0 rgba(16,21,27,.16)}.site-header.menu-active .menu-toggle span{background:var(--ink)}.site-header.menu-active .menu-toggle span:first-child{transform:translateY(4.5px) rotate(45deg)}.site-header.menu-active .menu-toggle span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.hero{min-height:850px;height:auto;max-height:none}.hero-inner{min-height:850px;grid-template-columns:1fr;align-items:start}.hero-copy{padding-top:190px}.hero-title{font-size:clamp(64px,12vw,120px);margin:44px 0}.hero-art{position:absolute;right:-9%;bottom:50px;width:52%;height:420px;opacity:.75;transform:none}.hero-bottom{max-width:460px}.hero-bottom p{font-size:18px}.intro-grid{grid-template-columns:1fr;gap:30px}.intro-aside{max-width:600px}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(3){grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}.service-card{min-height:500px}.service-card:nth-child(3){display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto auto;gap:0 20px}.service-card:nth-child(3) .card-number{grid-column:1/-1}.service-card:nth-child(3) .service-visual{grid-column:1;grid-row:2/4}.service-card:nth-child(3) h3{align-self:end}.service-card:nth-child(3) p{grid-column:2}.service-card:nth-child(3) .card-tail{grid-column:1/-1}.banking-layout,.infrastructure-layout{grid-template-columns:1fr}.banking-art{height:550px;margin-top:40px}.banking-copy .section-top,.infra-copy .section-top{margin-bottom:60px}.infrastructure-layout{gap:50px}.infra-visual{height:500px}.product-grid{grid-template-columns:1fr 1fr}.product-card:last-child{grid-column:1/-1}.product-card{min-height:480px}.product-card:last-child{min-height:440px}.product-card:last-child .product-graphic{min-height:270px}.about-layout{gap:6%}.about-mark{width:170px;height:170px;font-size:42px}.about-main>p{margin:40px 0 60px}.contact-heading{font-size:clamp(58px,9vw,105px)}}
@media(max-width:650px){.shell{width:min(100% - 36px,1440px)}.section-pad{padding:75px 0}.nav-shell{height:70px}.brand-rule{width:4px;height:32px}.brand-word{font-size:17px}.brand-word span{font-size:8px}.hero{min-height:780px}.hero-inner{min-height:780px}.hero-copy{padding-top:167px}.hero-eyebrow{font-size:9px;letter-spacing:.1em;gap:8px}.eyebrow-rule{width:14px}.hero-title{font-size:clamp(53px,12.3vw,81px);margin:39px 0 33px}.hero-bottom{align-items:center;gap:22px}.hero-bottom p{font-size:16px;max-width:245px}.round-link{width:52px;height:52px}.hero-art{width:70%;height:350px;right:-18%;bottom:30px;opacity:.65}.chip-top{left:2%}.chip-right{right:4%;top:47%}.chip-bottom{left:3%}.art-chip{font-size:7px;padding:8px}.art-coordinate{display:none}.hero-foot{font-size:8px;bottom:23px}.hero-foot>span:last-child{display:none}.capability-strip{height:58px}.strip-track{gap:30px}.strip-track span{font-size:14px}.section-top{margin-bottom:43px;gap:11px}.section-index,.section-side{font-size:9px;letter-spacing:.12em}.section-side{display:none}.display-heading{font-size:clamp(48px,11vw,75px)}.intro-grid{margin-bottom:50px}.intro-aside p{font-size:16px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(3){display:block;min-height:480px;border-left:0!important}.service-card+.service-card{border-top:1px solid var(--line)}.service-visual{height:200px}.banking-layout{min-height:0}.banking-copy .section-top{margin-bottom:55px}.banking-desc{font-size:16px}.banking-art{height:430px;margin-top:55px}.banking-phone{transform:rotate(7deg) scale(.75);animation:none}.banking-circle.circle-a{width:85%}.circle-b{width:115%}.circle-c{width:140%}.banking-tag{font-size:8px;padding:8px}.tag-one{left:0;top:12%}.tag-two{right:0}.tag-three{left:4%;bottom:10%}.work-heading,.approach-heading{display:block;margin-bottom:48px}.work-heading p,.approach-heading p{margin-top:25px;font-size:16px}.product-grid{grid-template-columns:1fr}.product-card,.product-card:last-child{grid-column:auto;min-height:480px}.product-card:last-child .product-graphic{min-height:330px}.product-bottom{display:flex}.product-bottom p{font-size:10px}.infra-visual{height:420px}.infra-center{width:180px;height:180px}.infra-center span{font-size:35px}.infra-node{font-size:8px;padding:7px}.infra-copy .section-top{margin-bottom:55px}.infra-copy>p{font-size:16px}.step{grid-template-columns:44px 1fr 28px;gap:10px;padding:24px 0}.step h3{font-size:31px}.step p{grid-column:2;grid-row:2}.step b{grid-column:3;grid-row:1}.about-layout{grid-template-columns:1fr}.about-side{display:flex;flex-direction:row;align-items:start;gap:30px;margin-bottom:53px}.about-side>span:last-child{display:none}.about-mark{width:100px;height:100px;font-size:27px;margin-left:auto;box-shadow:8px 8px 0 rgba(16,21,27,.16)}.about-main>p{font-size:22px;margin:40px 0 55px}.about-footer{grid-template-columns:1fr;gap:11px}.contact-section{padding-bottom:90px}.contact-section .section-top{margin-bottom:65px}.contact-heading{font-size:clamp(51px,10.5vw,75px);margin-bottom:55px}.contact-row{display:block}.contact-row p{font-size:16px;margin-bottom:28px}.contact-action{min-width:0;width:100%}.site-footer{padding:55px 0 24px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:25px;padding-bottom:65px}.footer-top p{grid-column:1/-1;grid-row:2}.footer-bottom{display:grid;gap:9px;font-size:9px}.footer-bottom span:nth-child(2){display:none}}
@media(max-width:390px){.hero-title{font-size:49px}.hero-art{right:-23%}.product-bottom h3{font-size:32px}.product-bottom p{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}.line-mask>span{transform:none!important}.strip-track{animation:none!important}}
.hero-cursor-glow{position:absolute;z-index:1;width:520px;height:520px;left:50%;top:50%;border-radius:50%;pointer-events:none;opacity:0;background:radial-gradient(circle,rgba(217,255,85,.20) 0,rgba(96,179,172,.11) 32%,transparent 68%);filter:blur(9px);transform:translate3d(-50%,-50%,0);transition:opacity .35s ease}.hero.pointer-active .hero-cursor-glow{opacity:1}
.contact-copy{max-width:390px}.contact-email{display:inline-block;margin-top:14px;padding-bottom:4px;border-bottom:1px solid currentColor;font:700 14px var(--font-display);letter-spacing:.01em;overflow-wrap:anywhere}.contact-email:hover{color:var(--paper)}.contact-action span:first-child{min-width:0}.contact-action span:last-child{flex:none}
.contact-phone{display:block;width:max-content;margin-top:10px;padding-bottom:3px;border-bottom:1px solid currentColor;font:700 14px var(--font-display)}.contact-phone:hover{color:var(--paper)}.footer-phone{border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:3px}.footer-phone:hover{color:var(--acid)}
@media(max-width:390px){.product-bottom{display:block}.product-bottom p{margin-top:8px}.contact-email{font-size:13px}}
@media(pointer:coarse),(prefers-reduced-motion:reduce){.hero-cursor-glow{display:none}.hero-art{translate:none!important}}

/* Brand lockup */
.brand-symbol{width:44px;height:44px;display:block;flex:none;color:var(--acid)}
.brand-symbol svg,.about-mark svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:3.5;stroke-linejoin:round}
.brand-symbol .inner,.about-mark .inner{stroke-width:4.5;stroke-linecap:square}
.site-header.menu-active .brand-symbol{color:var(--ink)}
.about-mark svg{width:66%;height:66%}

/* Service-card content stays in flow so footers cannot overlap descriptions. */
.service-card{display:flex;flex-direction:column}
.service-card .service-visual{flex:none}
.service-card p{margin-bottom:28px}
.service-card .card-tail{position:static;left:auto;right:auto;bottom:auto;min-height:46px;margin-top:auto;gap:12px}

/* Solution catalogue */
.solutions-section{background:#dce7df;color:var(--ink)}
.solutions-section .section-top.light{color:#465452}
.solutions-section .section-top.light .section-line{background:var(--line)}
.solutions-heading{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:78px}
.solutions-heading .display-heading em{color:var(--blue)}
.solutions-heading p{font-size:18px;max-width:350px;margin:0;color:#4d5e5a;line-height:1.55}
.solution-list{border-top:1px solid var(--line)}
.solution-row{display:grid;grid-template-columns:58px minmax(230px,.85fr) minmax(0,1.15fr) 32px;align-items:start;gap:25px;padding:34px 12px;border-bottom:1px solid var(--line);transition:background .3s,padding .3s}
.solution-row:hover{background:rgba(255,255,255,.35);padding-left:24px}
.solution-number{font:700 13px var(--font-display);color:var(--blue);padding-top:7px}
.solution-title h3{font:600 clamp(31px,3.1vw,48px)/.98 var(--font-display);letter-spacing:-.07em;margin:0 0 14px}
.solution-title p{font-size:14px;color:#56645e;max-width:270px;margin:0}
.solution-tags{list-style:none;display:flex;flex-wrap:wrap;gap:9px;margin:3px 0 0;padding:0}
.solution-tags li{border:1px solid rgba(16,21,27,.35);padding:10px 13px;font:700 12px/1.3 var(--font-display);letter-spacing:.005em;background:rgba(255,255,255,.22)}
.solution-glyph{font:400 26px/1 var(--font-display);color:var(--blue);text-align:right}
.solutions-cta{margin-top:35px}

@media(max-width:900px){
  .service-card:nth-child(3){display:flex;grid-template-columns:none;grid-template-rows:none}
  .service-card:nth-child(3) h3{align-self:auto}
  .solutions-heading{display:block;margin-bottom:55px}
  .solutions-heading p{margin-top:25px;max-width:530px}
  .solution-row{grid-template-columns:42px minmax(160px,.8fr) minmax(0,1.2fr) 24px;gap:15px}
  .mobile-nav{overflow-y:auto}
}
@media(max-width:650px){
  .brand-symbol{width:38px;height:38px}
  .contact-copy{margin-bottom:26px}
  .service-card,.service-card:nth-child(3){display:flex;min-height:0}
  .solution-row{grid-template-columns:28px 1fr 22px;gap:10px 14px;padding:26px 2px}
  .solution-row:hover{padding-left:2px}
  .solution-number{grid-column:1;grid-row:1}
  .solution-title{grid-column:2;grid-row:1}
  .solution-title h3{font-size:34px}
  .solution-title p{font-size:14px}
  .solution-tags{grid-column:2/4;grid-row:2;margin-top:10px}
  .solution-tags li{font-size:11px;padding:8px 10px}
  .solution-glyph{grid-column:3;grid-row:1;font-size:21px}
  .solutions-heading p{font-size:16px}
  .mobile-nav a{min-height:67px;font-size:29px}
}
@media(max-width:650px){
  .solution-title,.solution-tags{min-width:0}
  .solution-title h3{font-size:clamp(25px,8vw,34px);overflow-wrap:anywhere}
  .solution-tags li{max-width:100%;overflow-wrap:anywhere}
}

/* Linked portfolio work */
.live-sites{margin-top:58px;border-top:1px solid var(--line);padding-top:24px}
.live-sites-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:20px}
.live-sites-heading span{font:700 11px var(--font-display);letter-spacing:.15em;color:var(--blue)}
.live-sites-heading p{font-size:14px;color:#586360;margin:0}
.live-sites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.live-sites-grid a{position:relative;display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:125px;padding:22px 52px 22px 22px;background:#e6e8df;border:1px solid var(--line);transition:background .25s,transform .25s}
.live-sites-grid a:hover{background:var(--acid);transform:translateY(-4px)}
.live-sites-grid strong{font:600 26px/1 var(--font-display);letter-spacing:-.055em}
.live-sites-grid span{font-size:13px;color:#56645e}
.live-sites-grid b{position:absolute;right:20px;top:18px;font:400 23px/1 var(--font-display);color:var(--blue)}
@media(max-width:900px){.live-sites-grid{grid-template-columns:1fr 1fr}.live-sites-grid a:last-child{grid-column:1/-1}}
@media(max-width:650px){.live-sites{margin-top:42px}.live-sites-grid{grid-template-columns:1fr}.live-sites-grid a:last-child{grid-column:auto}.live-sites-heading{display:block}.live-sites-heading p{margin-top:7px}}

/* Training: spotlight grid adapted to the site's existing visual language. */
.training-section{background:var(--blue);color:var(--paper);overflow:hidden}
.training-section .section-top{color:rgba(255,255,255,.8)}
.training-section .section-line{background:rgba(255,255,255,.28)}
.training-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin:0 0 55px}
.training-kicker{font:700 11px var(--font-display);letter-spacing:.17em;color:var(--acid);margin:0 0 22px}
.training-heading .display-heading{margin:0}
.training-heading .display-heading em{color:var(--acid)}
.training-intro{font-size:18px;line-height:1.6;max-width:360px;margin:0 0 8px;color:#e0e6ff}
.training-method{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}
.training-method span{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.38);padding:10px 13px;font:700 10px var(--font-display);letter-spacing:.1em}
.training-method b{color:var(--acid);font-size:12px}
.training-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.training-card{--pointer-x:50%;--pointer-y:50%;position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:345px;padding:27px;background:#18206f;border:1px solid rgba(255,255,255,.24);overflow:hidden;transition:border-color .3s,box-shadow .3s,opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.training-card::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(360px circle at var(--pointer-x) var(--pointer-y),rgba(217,255,85,.22),transparent 68%);opacity:0;transition:opacity .25s}
.training-card:hover,.training-card:focus-visible{border-color:var(--acid);box-shadow:0 20px 45px rgba(4,10,59,.28)}
.training-card:hover::before,.training-card:focus-visible::before{opacity:1}
.training-card-top{display:flex;align-items:start;justify-content:space-between;gap:14px;color:var(--acid);font:700 10px var(--font-display);letter-spacing:.13em}
.training-card-top b{font-size:12px}
.training-card h3{font:600 clamp(28px,2.7vw,42px)/1 var(--font-display);letter-spacing:-.075em;margin:70px 0 15px;overflow-wrap:anywhere}
.training-card p{font-size:14px;line-height:1.55;color:#d6dfff;margin:0 0 30px;max-width:320px}
.training-card-action{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.28);font:700 11px var(--font-display);letter-spacing:.06em}
.training-card-action b{font:400 23px/1 var(--font-display);color:var(--acid);transition:translate .25s}
.training-card:hover .training-card-action b{translate:3px -3px}
.training-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:45px;padding-top:25px;border-top:1px solid rgba(255,255,255,.32)}
.training-footer p{font-size:17px;max-width:540px;margin:0;color:#e0e6ff}
.training-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-width:225px;padding:16px 19px;background:var(--acid);color:var(--ink);font:700 13px var(--font-display);transition:background .25s,translate .25s}
.training-cta:hover{background:var(--paper)}
.training-cta span:last-child{font-size:23px;font-weight:400}
@media(max-width:1180px){.desktop-nav{gap:17px}.nav-shell{gap:20px}}
@media(max-width:900px){.training-heading{display:block}.training-intro{max-width:550px;margin-top:30px}.training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.training-card{min-height:325px}.training-card h3{margin-top:55px}}
@media(max-width:650px){.training-heading{margin-bottom:38px}.training-intro{font-size:16px}.training-method{gap:7px}.training-method span{font-size:9px;padding:8px 9px}.training-grid{grid-template-columns:1fr}.training-card{min-height:0;padding:22px}.training-card h3{font-size:34px;margin:54px 0 14px}.training-card p{margin-bottom:35px}.training-footer{display:block}.training-footer p{font-size:15px;margin-bottom:25px}.training-cta{width:100%}}
@media(pointer:coarse),(prefers-reduced-motion:reduce){.training-card::before{display:none}.training-card:hover,.training-card:focus-visible{box-shadow:none}.training-card-action b{transition:none}}

/* Dedicated training page */
.training-hero{position:relative;min-height:790px;background:var(--ink);color:var(--paper);overflow:hidden;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:65px 65px}
.training-hero-inner{position:relative;z-index:1;min-height:790px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);align-items:center;gap:30px;padding-top:100px;padding-bottom:80px}
.training-hero-copy{position:relative;z-index:2}
.training-hero-eyebrow{display:flex;align-items:center;gap:12px;color:var(--acid);font:700 11px var(--font-display);letter-spacing:.14em;margin:0 0 45px}
.training-hero-title{font:700 clamp(64px,7.3vw,112px)/.9 var(--font-display);letter-spacing:-.095em;margin:0 0 36px}
.training-hero-title span{color:var(--acid)}
.training-hero-desc{font-size:19px;line-height:1.55;color:#c8d3d3;max-width:540px;margin:0 0 35px}
.training-hero-art{position:relative;width:min(100%,480px);aspect-ratio:1;justify-self:center;display:grid;place-items:center}
.training-hero-art::before{content:"";position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(217,255,85,.38),rgba(40,60,218,.6) 40%,rgba(19,31,44,.9) 72%);box-shadow:0 0 90px rgba(40,60,218,.4),inset -30px -35px 65px rgba(2,8,20,.6);animation:phone-float 8s ease-in-out infinite}
.training-orbit{position:absolute;border:1px solid rgba(217,255,85,.5);border-radius:50%;width:100%;aspect-ratio:1;transform:rotate(-18deg) scaleY(.57);animation:training-orbit 14s linear infinite}
.training-orbit.orbit-b{width:88%;border-style:dashed;border-color:rgba(255,255,255,.42);transform:rotate(58deg) scaleY(.68);animation-direction:reverse;animation-duration:18s}
.training-orbit.orbit-c{width:67%;border-color:rgba(217,255,85,.65);transform:rotate(-62deg) scaleY(.84);animation-duration:22s}
.training-hero-core{position:relative;z-index:2;display:flex;align-items:center;gap:10px;color:var(--paper);font:700 13px var(--font-display);letter-spacing:.13em}
.training-hero-core b{font-size:21px;color:var(--acid)}
.training-art-tag{position:absolute;z-index:3;padding:11px 14px;background:var(--acid);color:var(--ink);font:700 10px var(--font-display);letter-spacing:.11em;box-shadow:10px 10px 0 rgba(40,60,218,.4)}
.training-art-tag.tag-aws{left:0;top:19%;transform:rotate(-5deg)}
.training-art-tag.tag-ai{right:-2%;bottom:19%;transform:rotate(5deg)}
.training-art-dot{position:absolute;z-index:3;right:9%;top:13%;width:15px;height:15px;border-radius:50%;background:var(--orange);box-shadow:0 0 20px var(--orange)}
.training-hero-foot{position:absolute;z-index:2;left:0;right:0;bottom:28px;display:flex;justify-content:space-between;gap:20px;font:700 10px var(--font-display);letter-spacing:.13em;color:#a9b7b8}
@keyframes training-orbit{to{rotate:360deg}}
.training-process{background:var(--paper);color:var(--ink)}
.training-process-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:65px}
.training-process-heading .display-heading em{color:var(--blue)}
.training-process-heading p{font-size:18px;line-height:1.55;max-width:400px;color:#56645e;margin:0}
.training-process-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.training-process-steps article{min-height:260px;padding:30px 30px 30px 0;display:flex;flex-direction:column}
.training-process-steps article+article{border-left:1px solid var(--line);padding-left:30px}
.training-process-steps article>span{font:700 11px var(--font-display);letter-spacing:.13em;color:var(--blue)}
.training-process-steps h3{font:600 clamp(28px,3vw,42px)/1 var(--font-display);letter-spacing:-.07em;margin:auto 0 15px}
.training-process-steps p{font-size:15px;line-height:1.5;color:#56645e;margin:0;max-width:300px}
.training-contact{background:var(--orange);color:var(--ink)}
.training-contact .display-heading{margin:0 0 70px}
.training-contact .display-heading em{color:var(--paper)}
.training-contact-row{display:flex;align-items:end;justify-content:space-between;gap:40px;border-top:1px solid var(--ink);padding-top:28px}
.training-contact-row>p{font-size:18px;line-height:1.5;max-width:530px;margin:0}
.training-contact-row>div{display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.training-contact .training-cta{background:var(--ink);color:var(--paper)}
.training-contact .training-cta:hover{background:var(--blue)}
.training-contact-phone{font:700 13px var(--font-display);border-bottom:1px solid currentColor;padding-bottom:4px}
@media(max-width:900px){.training-hero-inner{grid-template-columns:1fr;min-height:760px}.training-hero-art{position:absolute;right:-70px;bottom:30px;width:370px;opacity:.55}.training-hero-copy{max-width:680px}.training-hero-title{font-size:clamp(65px,9vw,100px)}.training-process-heading{display:block}.training-process-heading p{margin-top:25px}.training-process-steps article{padding-right:20px}.training-process-steps article+article{padding-left:20px}}
@media(max-width:650px){.training-hero,.training-hero-inner{min-height:740px}.training-hero-inner{padding-top:145px;padding-bottom:105px;align-items:start}.training-hero-title{font-size:clamp(36px,10vw,62px);line-height:.96;margin-bottom:30px}.training-hero-eyebrow{font-size:9px;margin-bottom:35px}.training-hero-desc{font-size:16px;max-width:350px}.training-hero-art{width:260px;right:-80px;bottom:48px;opacity:.38}.training-art-tag{font-size:8px;padding:7px}.training-hero-foot{font-size:8px}.training-hero-foot span:last-child{display:none}.training-process-heading{margin-bottom:45px}.training-process-heading p{font-size:16px}.training-process-steps{grid-template-columns:1fr}.training-process-steps article,.training-process-steps article+article{min-height:0;border-left:0;padding:25px 0}.training-process-steps article+article{border-top:1px solid var(--line)}.training-process-steps h3{font-size:30px;margin:25px 0 12px}.training-contact .display-heading{margin-bottom:45px}.training-contact-row{display:block}.training-contact-row>p{font-size:16px;margin-bottom:25px}.training-contact-row>div{align-items:stretch}.training-contact-phone{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){.training-hero-art::before,.training-orbit{animation:none}}

/* Dedicated selected-work page */
.footer-work{display:block;width:max-content;max-width:100%;margin-top:14px;padding-bottom:3px;border-bottom:1px solid rgba(217,255,85,.6);color:var(--acid);font:700 11px var(--font-display)}
.footer-work:hover{color:var(--paper)}
.work-hero{position:relative;min-height:720px;background:var(--ink);color:var(--paper);overflow:hidden;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px}
.work-hero-inner{position:relative;z-index:1;min-height:720px;display:flex;flex-direction:column;align-items:start;justify-content:center;padding-top:120px;padding-bottom:95px}
.work-hero .eyebrow{display:flex;align-items:center;gap:12px;color:var(--acid);font:700 11px var(--font-display);letter-spacing:.14em;margin:0 0 45px}
.work-hero-title{position:relative;z-index:2;font:700 clamp(68px,8.8vw,136px)/.89 var(--font-display);letter-spacing:-.095em;margin:0 0 32px}
.work-hero-title span{color:var(--acid)}
.work-hero-copy{position:relative;z-index:2;max-width:570px;color:#c8d3d3;font-size:19px;line-height:1.55;margin:0 0 34px}
.work-hero .pill-link{position:relative;z-index:2}
.work-hero-art{position:absolute;right:4%;top:23%;width:400px;aspect-ratio:1;border:1px solid rgba(217,255,85,.45);border-radius:50%;display:grid;place-items:center;transform:rotate(-18deg);background:radial-gradient(circle at 38% 30%,rgba(40,60,218,.8),rgba(20,32,55,.85) 55%,transparent 70%);box-shadow:0 0 90px rgba(40,60,218,.22)}
.work-hero-art::before,.work-hero-art::after{content:"";position:absolute;inset:10%;border:1px dashed rgba(217,255,85,.45);border-radius:50%;animation:spin 24s linear infinite}
.work-hero-art::after{inset:22%;border-style:solid;border-color:rgba(255,255,255,.35);animation-direction:reverse}
.work-hero-art span{font:700 140px var(--font-display);color:var(--acid);line-height:1}
.work-hero-art i,.work-hero-art b{position:absolute;width:14px;height:14px;border-radius:50%;background:var(--orange);top:10%;right:17%;box-shadow:0 0 20px var(--orange)}
.work-hero-art b{background:var(--acid);top:auto;right:auto;bottom:18%;left:5%;box-shadow:0 0 20px var(--acid)}
.work-hero-foot{position:absolute;left:0;right:0;bottom:28px;display:flex;justify-content:space-between;gap:20px;font:700 10px var(--font-display);letter-spacing:.12em;color:#a9b7b8}
.work-contact{background:var(--orange);color:var(--ink)}
.work-contact .display-heading{margin:0 0 75px}
.work-contact .display-heading em{color:var(--paper)}
.work-contact-row{border-top:1px solid var(--ink);padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.work-contact-row p{font-size:18px;line-height:1.5;max-width:500px;margin:0}
.work-contact .training-cta{background:var(--ink);color:var(--paper)}
.work-contact .training-cta:hover{background:var(--blue)}
@media(max-width:900px){.work-hero-art{right:-110px;opacity:.55}.work-hero-copy{max-width:520px}}
@media(max-width:650px){.work-hero,.work-hero-inner{min-height:700px}.work-hero-inner{padding-top:145px;padding-bottom:105px}.work-hero .eyebrow{font-size:8px;gap:7px;margin-bottom:32px}.work-hero-title{font-size:clamp(47px,11vw,76px)}.work-hero-copy{font-size:16px}.work-hero-art{width:260px;top:auto;bottom:60px;right:-100px;opacity:.32}.work-hero-foot{font-size:8px}.work-hero-foot span:last-child{display:none}.work-contact .display-heading{margin-bottom:50px}.work-contact-row{display:block}.work-contact-row p{font-size:16px;margin-bottom:25px}.work-contact-row .training-cta{width:100%}}
@media(prefers-reduced-motion:reduce){.work-hero-art::before,.work-hero-art::after{animation:none}}

/* Portfolio branding uses the marks and wordmarks shown on the live project sites. */
.brand-graphic{padding:22px;min-width:0}
.portfolio-brand{width:min(100%,320px);min-height:235px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}
.portfolio-brand img{display:block;object-fit:contain;flex:none}
.scentloop-brand{background:#f8f7f2;color:#182a22;border-radius:22px;box-shadow:0 24px 45px rgba(24,42,34,.14)}
.scentloop-brand img{width:48px;height:48px}
.scentloop-brand span{font:600 clamp(32px,3vw,46px)/1.1 Georgia,serif;letter-spacing:-.055em;white-space:nowrap}
.scentloop-brand em{font-style:normal;color:#145f51}
.scentloop-brand sup{font:700 10px Arial,sans-serif;vertical-align:top;margin-left:3px;letter-spacing:0}
.scentloop-brand small{font:700 9px var(--font-display);letter-spacing:.16em;color:#65736b}
.strikewatch-brand{color:#edf1fa}
.strikewatch-brand img{width:88px;height:88px;filter:drop-shadow(0 16px 25px rgba(143,125,255,.3))}
.strikewatch-brand span{font:700 clamp(29px,3vw,42px)/1 var(--font-display);letter-spacing:-.07em;white-space:nowrap}
.strikewatch-brand small{font:700 9px var(--font-display);letter-spacing:.16em;color:#aab2cb}
.live-sites-grid .live-logo{display:block;width:36px;height:36px;object-fit:contain;margin-bottom:6px}
.portfolio-more{display:inline-flex;margin-top:27px}
@media(max-width:390px){.brand-graphic{padding:10px}.portfolio-brand{min-height:220px}.scentloop-brand span{font-size:33px}}


