:root{--red:#e5202b;--black:#0c0c0c;--white:#fff;--muted:#999;--line:#303030;--pad:clamp(24px,5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--black);color:white;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--red);outline-offset:6px}::selection{background:var(--red);color:white}.square{display:inline-block;width:10px;height:10px;background:var(--red);flex-shrink:0}.red{color:var(--red)}.muted{color:#797979}.skip{position:fixed;top:-60px;left:20px;padding:12px;background:white;color:black;z-index:100}.skip:focus{top:12px}.header{position:fixed;top:0;left:0;right:0;z-index:20;padding:26px var(--pad);display:flex;align-items:center;justify-content:space-between;background:rgba(12,12,12,.94);border-bottom:1px solid #ffffff10;}.brand{display:flex;gap:9px;align-items:center;font-weight:700;font-size:23px;letter-spacing:4px}.brand .square{width:8px;height:8px}.header nav{display:flex;align-items:center;gap:38px;font-size:14px}.header nav a{padding:8px 0}.header nav a:hover{color:#f65c64}.nav-contact{border-bottom:1px solid var(--red)}.nav-contact span{margin-left:22px}.menu-toggle{display:none}.reveal{height:245svh;position:relative}.reveal-sticky{height:100svh;position:sticky;top:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-label{position:absolute;top:155px;left:var(--pad);font-size:12px;letter-spacing:.15em;color:#909090}.logo-wrap{width:100%;text-align:center;}.hero-logo{width:min(90vw,1050px);display:block;margin:auto;overflow:visible}.tagline{font-size:clamp(11px,1.15vw,16px);letter-spacing:.32em;text-transform:uppercase;color:#aaa;margin:14px 20px 0}.tagline span{color:var(--red)}#logo-top{transform-origin:0 50.75px}#logo-bottom{transform-origin:0 64.75px}.hero-bottom{position:absolute;bottom:40px;left:var(--pad);right:var(--pad);display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:.12em;color:#929292}.scroll-prompt{display:flex;gap:22px;align-items:center;letter-spacing:0;font-size:14px;color:white}.scroll-prompt span{font-size:24px}.reveal-progress{height:2px;background:var(--red);position:absolute;bottom:0;left:0;width:100%;transform:scaleX(0);transform-origin:left}.section{padding:115px var(--pad)}.eyebrow{display:flex;gap:14px;align-items:center;font-size:12px;letter-spacing:.15em;font-weight:600;margin-bottom:58px}h1,h2,h3,p{margin:0}h1{font-size:clamp(48px,7.2vw,112px);font-weight:500;line-height:1.04;letter-spacing:-.065em}h2{font-size:clamp(40px,5.3vw,78px);font-weight:500;line-height:1.05;letter-spacing:-.055em}.intro{padding-top:60px}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:72px;padding-top:34px;border-top:1px solid var(--line)}.intro-bottom>p{font-size:24px;line-height:1.45;letter-spacing:-.03em}.intro-bottom>div{max-width:500px}.intro-bottom>div>p{font-size:18px;line-height:1.65;color:#aaa}.text-link{display:inline-flex;gap:45px;margin-top:32px;border-bottom:1px solid #666;padding-bottom:12px;font-size:14px}.text-link:hover{color:var(--red);border-color:var(--red)}@keyframes blink{50%{opacity:0}}
@media(max-width:760px){.header{padding-top:20px;padding-bottom:20px}.menu-toggle{display:flex;gap:18px;border:0;background:none;color:white;padding:8px;font-size:14px}.header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#0c0c0c;padding:24px var(--pad);border-bottom:1px solid #333;flex-direction:column;align-items:stretch;gap:14px}.header nav.open{display:flex}.reveal{height:190svh}.hero-label{top:124px;font-size:11px}.hero-coordinate{display:none}.hero-bottom{bottom:28px}.hero-bottom>span:first-child{font-size:10px;max-width:110px;line-height:1.7}.hero-logo{width:115%;max-width:115%;margin-left:-7.5%}.tagline{font-size:10px;letter-spacing:.16em}.section{padding-top:76px;padding-bottom:76px}.eyebrow{margin-bottom:35px;font-size:11px}.intro{padding-top:32px}.intro-bottom{grid-template-columns:1fr;gap:28px;margin-top:45px}.intro-bottom>p{font-size:22px}.intro-bottom>div>p{font-size:16px}h1{font-size:clamp(38px,9.4vw,70px)}}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:66px}.section-heading>p{color:#999;font-size:16px;line-height:1.6;min-width:240px}.services{border-top:1px solid var(--line)}.service-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:start}.service-list details{border-top:1px solid var(--line)}.service-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;gap:20px;align-items:center;padding:27px 0;cursor:pointer}summary::-webkit-details-marker{display:none}summary:focus-visible{outline:2px solid var(--red);outline-offset:4px}.index{font:12px monospace;color:#888}summary h3{font-size:clamp(19px,2.1vw,29px);font-weight:400;letter-spacing:-.03em}.expand{margin-left:auto;font-size:25px;color:#888;font-weight:300}details[open] .expand{transform:rotate(45deg);color:var(--red)}details[open] h3{color:white}.service-copy{padding:0 26px 32px 36px;font-size:16px;line-height:1.65;color:#aaa}.service-note{font-size:12px!important;color:#888;margin-top:20px}.data-visual{position:relative;top:auto;border:1px solid #333;background:linear-gradient(135deg,#171717,#101010);padding:28px;min-height:452px;overflow:hidden}.visual-top{display:flex;justify-content:space-between;gap:16px;align-items:center;font:10px monospace;letter-spacing:.05em;color:#aaa}.source-nodes{display:flex;justify-content:space-between;gap:10px;margin-top:55px}.source-nodes>span{border:1px solid #444;background:#181818;padding:12px 7px;text-align:center;font-size:12px;flex:1}.connections{height:65px;display:flex;justify-content:space-around;margin:0 14%}.connections i{width:1px;background:#444;position:relative}.connections i:first-child{transform:skewX(42deg)}.connections i:last-child{transform:skewX(-42deg)}.connections i:after{content:'';position:absolute;top:0;width:3px;height:9px;background:var(--red);animation:transfer 3s ease-in-out infinite}.connections i:nth-child(2):after{animation-delay:.7s}.connections i:nth-child(3):after{animation-delay:1.4s}.data-core{display:flex;gap:14px;align-items:center;justify-content:center;border:1px solid var(--red);padding:20px 15px;max-width:290px;margin:auto}.core-square{width:16px;height:16px;background:var(--red);flex-shrink:0}.data-core strong{font-size:14px;font-weight:400;line-height:1.4}.output-line{height:34px;width:1px;background:#555;margin:auto}.output-node{border:1px solid #444;font-size:13px;max-width:230px;text-align:center;margin:auto;padding:13px 10px}.visual-caption{font-size:13px;color:#999;line-height:1.6;margin-top:30px;max-width:300px}.visual-id{font:10px monospace;color:#777;display:block;margin-top:28px}@keyframes transfer{0%{top:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{top:90%;opacity:0}}
.work{background:white;color:#141414}.work .section-heading>p{color:#666}.work-tabs{display:flex;border-bottom:1px solid #d4d4d4;gap:30px}.work-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:18px 0;color:#777;font-size:14px}.work-tabs button[aria-selected=true]{border-color:var(--red);color:#141414}.case-study{display:grid;grid-template-columns:1fr 1.12fr;gap:7vw;align-items:center;padding:65px 0 45px}.case-study[hidden]{display:none}.case-type{color:#777;font:11px monospace;letter-spacing:.1em;margin-bottom:25px}.case-copy h3{font-size:clamp(30px,3.2vw,48px);font-weight:500;line-height:1.12;letter-spacing:-.045em}.case-copy>p{font-size:16px;color:#666;line-height:1.65;margin-top:25px;max-width:460px}.case-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.case-tags span{font-size:11px;border:1px solid #ddd;padding:8px 10px;color:#666}.contract-demo,.location-demo{background:#f3f3f3;border:1px solid #dedede;padding:22px}.demo-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px;padding-bottom:22px}.demo-heading>span:first-child{display:flex;gap:9px;align-items:center}.demo-heading .square{width:7px;height:7px}.demo-label{font-size:9px;color:#777;letter-spacing:.05em}.document{background:white;padding:26px;box-shadow:0 5px 20px #00000006}.doc-header{display:flex;justify-content:space-between;font:10px monospace;color:#777;padding-bottom:22px;border-bottom:1px solid #e8e8e8}.document h4{font-size:16px;margin:23px 0 16px}.document>p{font:15px/1.9 Georgia,serif;color:#555}mark{background:#fbe2e4;color:#65181e;padding:2px 0}.annotation{display:flex;gap:12px;padding:17px 0;margin-top:20px;border-top:1px solid #eee}.annotation .square{width:6px;height:6px;margin-top:5px}.annotation strong{font-size:12px;font-weight:500;color:#b11720}.annotation p{font-size:12px;line-height:1.5;color:#777;margin-top:6px}.review-button{display:flex;justify-content:space-between;width:100%;background:#141414;border:0;color:white;padding:13px 15px;font-size:12px}.review-button:hover{background:#333}#review-note{font-size:13px;line-height:1.65;padding-top:15px;color:#555}.demo-footer{display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#777;padding-top:20px}.work-footnote{display:flex;gap:12px;align-items:center;border-top:1px solid #ddd;padding-top:24px;color:#777;font-size:12px;line-height:1.5}.work-footnote .square{width:6px;height:6px}.location-demo fieldset{border:0;padding:15px 0;margin:0;display:flex;gap:18px;flex-wrap:wrap}.location-demo legend{font-size:12px;color:#666}.location-demo label{font-size:13px;display:flex;align-items:center;gap:5px}.location-demo input{accent-color:var(--red)}.bar-chart{display:grid;gap:28px;margin:28px 0 36px}.bar-chart>div{display:grid;grid-template-columns:48px 1fr 25px;align-items:center;gap:14px;font-size:12px}.bar-chart>div>div{height:22px;background:#e6e6e6}.bar-chart i{display:block;height:100%;width:var(--score);background:var(--red);transition:width .5s ease}.bar-chart strong{font-weight:500}.chart-note{font-size:12px;line-height:1.6;color:#777;max-width:320px}
.approach{border-bottom:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(6,1fr);padding:0;list-style:none;margin:80px 0 0}.steps li{border-top:1px solid #444;padding:20px 20px 0 0;position:relative}.steps li:before{content:'';position:absolute;top:-3px;left:0;width:5px;height:5px;background:var(--red)}.steps li>span{font:12px monospace;color:#888}.steps h3{font-size:20px;font-weight:400;margin:35px 0 15px;letter-spacing:-.02em}.steps p{font-size:14px;color:#999;line-height:1.65;max-width:180px}.approach-statement{display:flex;gap:30px;align-items:flex-start;margin-top:95px;border-top:1px solid #333;padding-top:40px}.approach-statement .square{width:20px;height:20px;margin-top:8px}.approach-statement p{font-size:clamp(22px,3vw,42px);letter-spacing:-.035em;line-height:1.3}.approach-statement p span{color:#777}.contact{position:relative}.contact-kicker{font-size:18px;line-height:1.65;color:#999;margin-bottom:45px}.contact h2{font-size:clamp(60px,10vw,152px);line-height:1;letter-spacing:-.065em}.contact h2>span{color:var(--red)}.contact-link{display:inline-flex;gap:80px;font-size:clamp(24px,3vw,42px);border-bottom:1px solid #777;align-items:center;padding-bottom:17px;margin-top:55px;letter-spacing:-.03em}.contact-link:hover{color:var(--red);border-color:var(--red)}.contact-link>span{font-size:1.3em}.contact-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:65px;font-size:14px;color:#999}.contact-bottom>a:hover{color:white}.contact-bottom>a{overflow-wrap:anywhere}footer{border-top:1px solid #333;display:flex;gap:30px;padding:32px var(--pad);align-items:center;font-size:12px;color:#999}footer .brand{color:white;font-size:19px}footer>a:nth-last-child(2){margin-left:auto}footer>a:hover{color:white}
@media(min-width:1500px){.section,.header,footer{padding-left:max(var(--pad),calc((100vw - 1380px)/2));padding-right:max(var(--pad),calc((100vw - 1380px)/2))}}
@media(max-width:1050px){.service-layout{gap:35px;grid-template-columns:1.1fr 1fr}.data-visual{padding:20px}.source-nodes{gap:5px}.source-nodes>span{font-size:10px;padding:10px 4px}.section-heading>p{min-width:180px}.steps{grid-template-columns:repeat(3,1fr);gap:45px 0}.steps h3{margin-top:22px}.case-study{gap:35px}.contract-demo,.location-demo{padding:16px}.document{padding:18px}.demo-heading{flex-wrap:wrap;gap:8px}}
@media(max-width:760px){.section-heading{display:block;margin-bottom:40px}.section-heading>p{margin-top:25px;font-size:15px}.service-layout{grid-template-columns:1fr;gap:35px}summary{padding:24px 0}summary h3{font-size:23px}.data-visual{position:relative;top:0;min-height:400px;padding:24px}.source-nodes>span{font-size:12px}.visual-top{font-size:10px}.case-study{grid-template-columns:1fr;padding-top:40px;gap:35px}.work-tabs{gap:20px}.work-tabs button{font-size:12px;line-height:1.5;text-align:left}.case-copy h3{font-size:36px}.contract-demo,.location-demo{padding:17px}.demo-heading{flex-wrap:nowrap}.demo-label{font-size:8px}.document{padding:20px}.demo-footer{font-size:9px}.steps{grid-template-columns:repeat(2,1fr);gap:35px 0;margin-top:48px}.steps h3{font-size:20px}.steps p{font-size:14px}.approach-statement{margin-top:55px;gap:18px}.approach-statement .square{width:13px;height:13px;margin-top:5px}.contact-kicker{font-size:16px}.contact h2{font-size:clamp(54px,12vw,88px)}.contact-link{gap:65px;margin-top:35px}.contact-bottom{flex-direction:column;margin-top:40px;gap:15px;font-size:13px}footer{flex-wrap:wrap;gap:20px;justify-content:space-between}footer p{width:calc(100% - 130px);text-align:right;font-size:11px}footer>a:nth-last-child(2){margin-left:0}}
.reveal{display:none;position:fixed;inset:0;height:100dvh;z-index:1000;background:var(--black);opacity:1;transition:opacity .85s ease;pointer-events:none}.reveal-sticky{position:relative;height:100dvh}.intro-active .reveal{display:block}.intro-active{overflow:hidden}.intro-active body{overflow:hidden}.intro-active #site-content{opacity:0;visibility:hidden}.intro-active.intro-exit #site-content{opacity:1;visibility:visible}.intro-exit .reveal{opacity:0}.intro{padding-top:160px}#logo-box{transform:translateX(-214px)}#logo-top,#logo-bottom{transform:scaleY(0)}.tagline{opacity:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{height:100svh}*,*:before,*:after{animation:none!important;transition:none!important}}

.eyebrow{font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;letter-spacing:0;line-height:1.5}.eyebrow .square{width:7px;height:7px}

.work .case-type{font:14px/1.5 Arial,Helvetica,sans-serif;letter-spacing:0;color:#666}.project-proof{border:1px solid #ddd;background:#f5f5f5;padding:clamp(24px,3vw,44px);min-height:370px;display:flex;flex-direction:column;justify-content:center}.proof-label{font-size:14px;line-height:1.5;color:#666;margin-bottom:30px}.proof-number{font-size:clamp(48px,6vw,90px);line-height:1.05;letter-spacing:-.06em;color:var(--red)}.proof-caption{font-size:18px;color:#444;line-height:1.5;margin-top:12px}.proof-factors{display:flex;flex-wrap:wrap;gap:10px;margin-top:35px}.proof-factors span{padding:9px 12px;background:white;border:1px solid #ddd;font-size:12px;line-height:1.4}.proof-note{font-size:13px;line-height:1.6;color:#777;margin-top:30px;border-top:1px solid #ddd;padding-top:20px}.proof-flow{margin:0;padding:0;list-style:none;display:grid;gap:25px}.proof-flow li{display:flex;gap:15px}.proof-flow .square{width:7px;height:7px;margin-top:7px}.proof-flow strong{font-size:16px;font-weight:400}.proof-flow p{font-size:14px;line-height:1.6;color:#666;margin-top:7px}.work-tabs{flex-wrap:wrap;column-gap:28px;row-gap:0}

.hero-logo{width:min(82vw,720px);max-width:82vw;margin:0 auto}#logo-top{transform-origin:0 212.5px;transform-box:view-box}#logo-bottom{transform-origin:0 367.5px;transform-box:view-box}#logo-box{transform:translateX(-2340.65px)}.brand img{display:block;width:132px;height:auto}.logo-wrap .tagline{margin-top:32px}

.founder{border-bottom:1px solid var(--line)}.founder-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.founder-intro h2{font-size:clamp(36px,4.2vw,64px);line-height:1.12}.founder-card{position:relative;width:100%;max-width:500px;justify-self:center;border-radius:20px;overflow:hidden;background:#181818}.founder-card:focus-visible{outline:2px solid var(--red);outline-offset:6px}.founder-photo{position:relative;aspect-ratio:4/5;overflow:hidden}.founder-photo>img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:transform .5s ease}.founder-tint{position:absolute;inset:0;background:var(--red);opacity:.5;mix-blend-mode:multiply;pointer-events:none}.founder-nameplate{position:absolute;inset:auto 0 0;padding:90px 32px 32px;background:linear-gradient(transparent,#0c0c0c);transition:opacity .3s}.founder-card h3{font-size:clamp(24px,2.4vw,34px);font-weight:500;letter-spacing:-.04em;line-height:1.15}.founder-nameplate p,.founder-role{font-size:14px;line-height:1.6;color:#ff737c;margin-top:12px}.founder-bio{position:absolute;inset:0;display:flex;align-items:flex-end;padding:32px;background:rgba(12,12,12,.94);opacity:0;transition:opacity .3s}.founder-rule{display:block;width:48px;height:3px;background:var(--red);margin-bottom:26px}.founder-copy{font-size:16px;line-height:1.7;color:#ddd;margin-top:22px}.founder-card:hover .founder-bio,.founder-card:focus-within .founder-bio{opacity:1}.founder-card:hover .founder-nameplate,.founder-card:focus-within .founder-nameplate{opacity:0}.founder-card:hover .founder-photo>img{transform:scale(1.03)}
@media(max-width:760px){.founder-layout{grid-template-columns:1fr;gap:40px}.founder-intro h2{font-size:40px}.founder-bio{padding:26px}.founder-copy{font-size:16px}.header nav{gap:14px}}
@media(hover:none),(max-width:480px){.founder-bio{position:relative;opacity:1;background:#181818}.founder-nameplate{display:none}.founder-photo{aspect-ratio:4/3}.founder-photo>img{object-position:50% 24%}.founder-card:hover .founder-photo>img{transform:none}}

@media(min-width:761px) and (max-width:1000px){.founder-layout{grid-template-columns:1fr;gap:40px}.founder-intro h2{max-width:650px}}

.journey{position:relative}.journey-track{height:1px;background:#444;position:absolute;top:7px;left:10%;right:10%}.journey-track span{display:block;width:100%;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .6s ease}.journey-tabs{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.journey-tabs button{display:flex;flex-direction:column;align-items:center;gap:20px;border:0;background:none;padding:0 6px 24px;color:#999;font-size:16px;line-height:1.4}.journey-dot{height:15px;width:15px;background:#0c0c0c;border:1px solid #777;transition:background .25s,border-color .25s}.journey-tabs button[aria-selected=true]{color:white}.journey-tabs button[aria-selected=true] .journey-dot{background:var(--red);border-color:var(--red);box-shadow:0 0 0 6px #e5202b1a}.journey-panels{border-top:1px solid #333;border-bottom:1px solid #333;margin-top:18px}.journey-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:7vw;padding:52px 0;min-height:350px;animation:journey-enter .45s ease both}.journey-panel[hidden]{display:none}.journey-phase{font-size:14px;color:#ff737c;margin-bottom:18px}.journey-panel h3{font-size:clamp(28px,3.3vw,46px);line-height:1.12;letter-spacing:-.04em;font-weight:400}.journey-copy{font-size:17px;line-height:1.7;color:#aaa;max-width:590px;margin-top:24px}.journey-output{padding:28px;border-left:2px solid var(--red);background:#161616;align-self:center}.journey-output>p{font-size:13px;line-height:1.5;color:#999;margin-bottom:20px}.journey-output h4{font-size:24px;font-weight:400;line-height:1.3;letter-spacing:-.025em;margin:0}.journey-flow{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.journey-flow span{font-size:12px;border:1px solid #444;padding:9px;color:#bbb}.journey-controls{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:24px}.journey-controls>p{max-width:470px;color:#888;font-size:14px;line-height:1.6}.journey-controls>div{display:flex;gap:12px}.journey-controls button{border:1px solid #555;background:transparent;color:white;padding:12px 16px;white-space:nowrap;font-size:14px}.journey-controls button:hover:not(:disabled){border-color:var(--red)}.journey-controls button:disabled{opacity:.3;cursor:default}@keyframes journey-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.journey-tabs{gap:4px}.journey-tabs button{font-size:12px;padding:0 0 20px;gap:16px}.journey-panel{grid-template-columns:1fr;gap:30px;padding:35px 0;min-height:0}.journey-copy{font-size:16px}.journey-output{padding:24px}.journey-controls{flex-direction:column;align-items:stretch;gap:18px}.journey-controls>div{justify-content:space-between}.journey-controls>p{font-size:13px}}

.project-proof{position:relative;overflow:hidden;min-height:450px;background:#111;color:white;border:1px solid #272727;border-radius:4px;justify-content:flex-start;box-shadow:0 18px 50px #0000000b;transition:border-color .3s,box-shadow .3s}.project-proof:hover{border-color:#666;box-shadow:0 22px 60px #00000017}.project-proof .proof-label{display:flex;align-items:center;gap:12px;color:#bbb;font-size:14px;margin-bottom:30px}.proof-label .square{width:7px;height:7px}.project-proof .proof-caption{color:#bbb;max-width:350px;font-size:17px}.project-proof .proof-note{color:#888;border-color:#333;font-size:12px;line-height:1.6;margin-top:24px}.project-proof .proof-number{font-size:clamp(52px,6.5vw,96px);letter-spacing:-.065em;color:white;line-height:1.05;transform-origin:left}.proof-advisory .proof-number{color:#f3424c;font-size:clamp(80px,9vw,130px)}.proof-insight{font-size:14px;line-height:1.6;color:#ccc;margin-top:20px;min-height:68px}.proof-stages{position:relative;display:grid;gap:10px}.proof-stage{position:relative;display:flex;gap:16px;width:100%;text-align:left;padding:20px 18px;border:1px solid #303030;background:#191919;color:white;transition:background .3s,border-color .3s,transform .3s}.proof-stage:hover{border-color:#777;transform:translateX(3px)}.proof-stage[aria-pressed=true]{background:#291719;border-color:#db3942}.stage-marker{width:9px;height:9px;flex-shrink:0;background:#555;margin-top:5px;transition:background .3s,box-shadow .3s}.proof-stage[aria-pressed=true] .stage-marker{background:#f3424c;box-shadow:0 0 0 5px #e5202b18}.proof-stage strong{font-size:16px;font-weight:400;line-height:1.4}.stage-description{display:block;font-size:13px;line-height:1.6;color:#aaa;margin-top:7px}.proof-stage[aria-pressed=true] .stage-description{color:#e3c8ca}.project-proof .proof-factors{gap:7px;margin-top:25px}.proof-factors button{border:1px solid #444;background:transparent;color:#aaa;font-size:12px;line-height:1.4;padding:10px 12px;transition:background .25s,color .25s,border-color .25s}.proof-factors button:hover{color:white;border-color:#999}.proof-factors button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:white}.data-matrix{display:grid;grid-template-columns:repeat(12,1fr);gap:7px;margin-top:30px;max-width:350px}.data-matrix i{height:6px;background:#3b3b3b;transition:background .35s,transform .35s}.proof-investment[data-active="0"] .data-matrix i[data-group="0"],.proof-investment[data-active="1"] .data-matrix i[data-group="1"],.proof-investment[data-active="2"] .data-matrix i[data-group="2"]{background:#f3424c;transform:scaleY(1.35)}.saving-rule{height:3px;background:#333;margin-top:28px;overflow:hidden}.saving-rule span{display:block;width:100%;height:100%;background:var(--red);transform-origin:left}.is-visible .proof-number{animation:proof-value .8s cubic-bezier(.2,.7,.3,1) both}.is-visible .proof-stage{animation:proof-row .55s both}.is-visible .proof-stage:nth-child(2){animation-delay:.12s}.is-visible .proof-stage:nth-child(3){animation-delay:.24s}.is-visible .data-matrix i{animation:proof-dot .6s both;animation-delay:var(--delay)}.is-visible .saving-rule span{animation:proof-line 1.1s ease both}@keyframes proof-value{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}@keyframes proof-row{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}@keyframes proof-dot{from{opacity:0;scale:.3}to{opacity:1;scale:1}}@keyframes proof-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:760px){.project-proof{min-height:0;padding:25px}.proof-stage{padding:16px 13px;gap:13px}.proof-insight{min-height:0}.data-matrix{gap:6px}.project-proof .proof-number{font-size:64px}.proof-advisory .proof-number{font-size:94px}.proof-stage:hover{transform:none}}

/* Avoid offscreen animation work and layout-driven animation frames. */
.connections i:after{animation-play-state:paused}.motion-visible .connections i:after{animation-play-state:running}
@keyframes transfer{0%{transform:translateY(0);opacity:0}15%,85%{opacity:1}100%{transform:translateY(58px);opacity:0}}

/* Self-playing case-study illustrations; all copy is available without interaction. */
.project-proof:hover{border-color:#272727;box-shadow:0 18px 50px #0000000b}
.proof-stage{cursor:default;padding:16px 18px}
.proof-stage:hover{transform:none;border-color:#303030}
.proof-factors .proof-factor{display:inline-block;border:1px solid #444;padding:10px 12px;color:#ccc;font-size:12px;line-height:1.4}
.contract-preview{display:flex;align-items:center;justify-content:center;gap:24px;margin:0 0 28px;height:110px}
.contract-sheet{position:relative;width:82px;height:104px;border:1px solid #555;background:#1c1c1c;padding:18px 12px;overflow:hidden;transform:rotate(-5deg)}
.contract-sheet i{display:block;height:3px;background:#777;margin-bottom:8px}
.contract-sheet i:nth-child(2){width:65%}.contract-sheet i:nth-child(4){width:80%}
.reviewed-sheet{transform:rotate(5deg);border-color:#a53239}
.reviewed-sheet i:nth-child(2),.reviewed-sheet i:nth-child(4){background:#f3424c}
.review-stamp{position:absolute;bottom:8px;right:8px;color:#f3424c;font-size:20px;background:#1c1c1c;padding:0 4px}
.contract-transfer{height:1px;width:65px;background:#555;overflow:hidden}
.contract-transfer span{display:block;width:100%;height:100%;background:#f3424c;transform-origin:left}
.contract-scan{position:absolute;left:0;right:0;top:0;height:2px;background:#f3424c;opacity:0}
.is-visible .contract-scan{animation:contract-scan 1.3s ease both}
.is-visible .contract-transfer span{animation:proof-line 1s .8s ease both}
.is-visible .review-stamp{animation:proof-row .5s 2.5s both}
.is-visible .proof-stage{animation:stage-highlight 1.2s ease both}
.is-visible .proof-stage:nth-child(2){animation-delay:1s}
.is-visible .proof-stage:nth-child(3){animation-delay:2s}
.proof-investment .data-matrix i[data-group="0"],.proof-investment .data-matrix i[data-group="1"],.proof-investment .data-matrix i[data-group="2"]{background:#f3424c}
.is-visible .proof-factor{animation:factor-highlight 1s ease both}
.is-visible .proof-factor:nth-child(2){animation-delay:.8s}
.is-visible .proof-factor:nth-child(3){animation-delay:1.6s}
.proof-paused *, .proof-paused *:before,.proof-paused *:after{animation-play-state:paused!important}
@keyframes contract-scan{0%{transform:translateY(0);opacity:0}20%,80%{opacity:1}100%{transform:translateY(103px);opacity:0}}
@keyframes stage-highlight{0%,100%{border-color:#303030;background:#191919}30%,70%{border-color:#f3424c;background:#291719}}
@keyframes factor-highlight{0%,100%{border-color:#444;background:transparent}40%,70%{border-color:#f3424c;background:#291719}}
@media(prefers-reduced-motion:reduce){.contract-scan{display:none}.project-proof *{animation:none!important;transition:none!important}}

.site-footer{display:block;font-size:14px;padding-top:40px;padding-bottom:28px}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:32px}.footer-identity{display:flex;align-items:center;gap:24px}.site-footer p{width:auto;text-align:left;font-size:13px;line-height:1.6}.footer-links{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.footer-links a{display:inline-flex;align-items:center;gap:9px;min-height:44px}.footer-links a:hover{color:white}.footer-links svg{flex-shrink:0}.footer-legal{border-top:1px solid #292929;margin-top:30px;padding-top:24px;color:#999}@media(max-width:700px){.footer-main{align-items:flex-start;flex-direction:column;gap:24px}.footer-identity{align-items:flex-start;flex-direction:column;gap:12px}.footer-links{gap:24px}.site-footer p{font-size:12px}.footer-legal{margin-top:24px}}

/* Map-led investment and a subscription review illustration. */
.is-visible .contract-scan{animation-duration:2s}
.is-visible .contract-transfer span{animation-duration:1.7s;animation-delay:1.4s}
.is-visible .review-stamp{animation-duration:.6s;animation-delay:4.2s}
.is-visible .proof-stage{animation-duration:1.7s}
.is-visible .proof-stage:nth-child(2){animation-delay:1.6s}
.is-visible .proof-stage:nth-child(3){animation-delay:3.2s}
.investment-map{position:relative;width:100%;border:1px solid #353535;border-radius:8px;overflow:hidden;background:#181818}
.investment-map svg{display:block;width:100%;height:auto}
.map-layer-label{position:absolute;left:14px;top:12px;display:flex;align-items:center;gap:7px;font-size:10px;color:#bbb;padding:7px 9px;background:#111e;border:1px solid #333;border-radius:4px}
.map-layer-label span{height:5px;width:5px;border-radius:50%;background:#f3424c}
.investment-layers{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0 28px;color:#aaa;font-size:12px}
.investment-layers span{display:flex;align-items:center;gap:7px}
.investment-layers span:before{content:'';width:7px;height:7px;border-radius:50%;background:#f3424c}
.investment-layers span:nth-child(2):before{background:#eee}.investment-layers span:nth-child(3):before{background:#777}
.investment-result .proof-number{font-size:clamp(48px,5.5vw,80px)}
.investment-result .proof-caption{margin-top:8px}
.map-catchment,.map-centre{transform-origin:216px 151px}
.is-visible .map-districts{animation:map-arrive 1.3s ease both}
.is-visible .map-focus{animation:map-focus 2.4s .7s ease both}
.is-visible .map-pins{animation:proof-row 1s 1.5s both}
.is-visible .map-catchment{animation:map-radius 1.6s 2s ease both}
.is-visible .map-centre{animation:map-radius .6s 2.8s ease both}
.subscription-scene{padding:12px 0 24px}
.subscription-stack{position:relative;height:192px;margin:0 12px}
.subscription-card{position:absolute;left:0;right:0;background:#222;border:1px solid #555;border-radius:9px;min-height:86px;display:flex;align-items:center;gap:14px;padding:18px;transform-origin:center}
.subscription-back{top:0;left:25px;right:15px;transform:rotate(-7deg);background:#1b1b1b}
.subscription-middle{top:25px;left:12px;right:5px;transform:rotate(4deg);background:#252525}
.subscription-front{top:60px;border-color:#854047;background:#2b1b1d;transform:rotate(-2deg)}
.app-symbol{display:grid;place-items:center;width:36px;height:36px;border:1px solid #666;border-radius:8px;font-size:24px;color:#ccc;flex-shrink:0}
.subscription-card i{width:25%;height:4px;background:#555}
.subscription-card strong,.subscription-outcome strong{display:block;font-size:14px;font-weight:400;line-height:1.5}
.subscription-card div>span,.subscription-outcome div>span{display:block;color:#aaa;font-size:11px;line-height:1.5;margin-top:4px}

.subscription-outcome{display:flex;gap:14px;align-items:center;padding:18px;border:1px solid #484848;border-radius:8px;background:#1a1a1a}
.outcome-check{display:grid;place-items:center;border:1px solid #e54a53;border-radius:50%;height:28px;width:28px;color:#f3424c;flex-shrink:0}
.advisory-result{display:flex;align-items:center;gap:24px;margin-top:8px}
.advisory-result .proof-number{font-size:clamp(64px,7vw,98px);white-space:nowrap}
.advisory-result .proof-caption{font-size:15px;line-height:1.6;max-width:260px}
.is-visible .subscription-back{animation:subscription-remove-back 2s .6s ease both}
.is-visible .subscription-middle{animation:subscription-remove-middle 2s 1s ease both}

.is-visible .subscription-front{animation:subscription-reviewed 2s 1.6s ease both}
.is-visible .subscription-outcome{animation:proof-row .8s 3.2s ease both}
@keyframes map-arrive{from{opacity:.3;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes map-focus{from{fill:#282828}to{fill:#512026}}
@keyframes map-radius{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}
@keyframes subscription-remove-back{from{opacity:1;transform:rotate(-7deg)}to{opacity:.12;transform:translateY(-9px) rotate(-11deg)}}
@keyframes subscription-remove-middle{from{opacity:1;transform:rotate(4deg)}to{opacity:.18;transform:translateY(-5px) rotate(8deg)}}
@keyframes subscription-reviewed{from{opacity:1;transform:rotate(-2deg)}to{opacity:.45;transform:translateY(8px) rotate(0)}}
@media(max-width:600px){.advisory-result{flex-direction:column;align-items:flex-start;gap:8px}.advisory-result .proof-caption{max-width:100%}.subscription-stack{margin:0;height:185px}.subscription-card{padding:14px;gap:10px}.subscription-card strong{font-size:12px}.subscription-card div>span{font-size:10px}.investment-layers{gap:12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.project-proof *{animation:none!important}.subscription-back{opacity:.12}.subscription-middle{opacity:.18}.subscription-front{opacity:.45}}

/* Softer service diagram surfaces with the same lightweight data flow. */
.service-list .index{font:400 15px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;color:#999;min-width:14px}
.data-visual{border-radius:22px;border-color:#363636;background:radial-gradient(ellipse at 50% 45%,#e5202b0c,transparent 65%),linear-gradient(145deg,#1b1b1b,#111);box-shadow:inset 0 1px 0 #ffffff09,0 16px 38px #0002;padding:34px 28px;min-height:420px}
.source-nodes{margin-top:22px;gap:12px}
.source-nodes>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:82px;border-radius:12px;border-color:#3b3b3b;background:linear-gradient(160deg,#282828,#1b1b1b);box-shadow:inset 0 1px 0 #ffffff08,0 5px 12px #0002;padding:14px 8px;font-size:12px;line-height:1.4}



.connections{height:70px}.connections i{background:linear-gradient(#555,#e5202b55)}
.connections i:after{border-radius:3px;box-shadow:0 0 6px #e5202b55}
.data-core{position:relative;border-radius:14px;border-color:#bc343d;background:linear-gradient(120deg,#351c1f,#201517);box-shadow:0 0 0 5px #e5202b06,inset 0 1px 0 #ffffff08;padding:22px 18px}
.core-square{width:14px;height:14px;border-radius:3px;box-shadow:0 0 0 5px #e5202b12}
.output-line{height:38px;background:linear-gradient(#e5202b99,#555)}
.output-node{border-radius:999px;background:#202020;border-color:#484848;box-shadow:inset 0 1px 0 #ffffff08;padding:14px 18px;line-height:1.4}
.visual-caption{max-width:none;text-align:center;margin-top:30px;line-height:1.65}
@media(max-width:600px){.data-visual{padding:28px 18px;border-radius:18px;min-height:0}.source-nodes{gap:8px}.source-nodes>span{font-size:11px;padding:12px 6px}.data-core{max-width:260px}.visual-caption{font-size:12px}}

/* Vector icons render identically across emoji-capable system fonts. */
.symbol-icon{display:inline-block;vertical-align:-.15em;flex-shrink:0}.app-symbol .symbol-icon{width:21px;height:21px}.review-stamp .symbol-icon{width:20px;height:20px}.outcome-check .symbol-icon{width:17px;height:17px}

/* A clear review-to-savings sequence, completed in under five seconds. */
.proof-advisory .subscription-scene{height:265px;position:relative;overflow:hidden;padding:20px 0 0;isolation:isolate}
.proof-advisory .subscription-stack{margin:8px 16px 0;height:200px}
.proof-advisory .subscription-card{opacity:.12}
.proof-advisory .subscription-outcome{position:absolute;left:5px;right:5px;top:115px;min-height:94px;border-color:#a93d45;background:linear-gradient(125deg,#2b1b1e,#1b1b1b);box-shadow:0 12px 28px #0003;z-index:2}
.proof-advisory .outcome-check{height:40px;width:40px;background:#e5202b14}
.proof-advisory .outcome-check .symbol-icon{width:23px;height:23px}
.proof-advisory .advisory-result{margin-top:0}
.proof-advisory.is-visible .subscription-back{animation:advisory-discard-left 2.3s .3s cubic-bezier(.3,0,.2,1) both}
.proof-advisory.is-visible .subscription-middle{animation:advisory-discard-right 2.3s .65s cubic-bezier(.3,0,.2,1) both}
.proof-advisory.is-visible .subscription-front{animation:advisory-discard-front 2.6s 1s cubic-bezier(.3,0,.2,1) both}
.proof-advisory.is-visible .subscription-outcome{animation:advisory-retain 1.3s 2.5s cubic-bezier(.2,.8,.2,1) both}
.proof-advisory.is-visible .outcome-check{animation:advisory-check .65s 3.1s ease both}
.proof-advisory.is-visible .advisory-result{animation:advisory-saving .9s 3.7s ease both}
.proof-advisory.is-visible .proof-number{animation:none}
@keyframes advisory-discard-left{0%,30%{opacity:1;transform:translate(0,0) rotate(-7deg)}100%{opacity:0;transform:translate(-90%,-30px) rotate(-23deg) scale(.85)}}
@keyframes advisory-discard-right{0%,30%{opacity:1;transform:translate(0,0) rotate(4deg)}100%{opacity:0;transform:translate(90%,-12px) rotate(22deg) scale(.85)}}
@keyframes advisory-discard-front{0%,35%{opacity:1;transform:translateY(0) rotate(-2deg)}100%{opacity:0;transform:translateY(-65px) rotate(-5deg) scale(.8)}}
@keyframes advisory-retain{from{opacity:0;transform:translateY(58px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes advisory-check{from{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes advisory-saving{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.proof-advisory .subscription-scene{height:250px}.proof-advisory .subscription-stack{margin-left:0;margin-right:0}.proof-advisory .subscription-outcome{top:105px;min-height:90px}}
@media(prefers-reduced-motion:reduce){.proof-advisory *{animation:none!important}.proof-advisory .subscription-card{opacity:.12}.proof-advisory .advisory-result{opacity:1;transform:none}}

.source-icon{display:block;color:#c3c3c3;flex-shrink:0;width:24px;height:24px}
