/* Celsius BI: exact navy and white from the supplied brand, with the orange accent from the supplied website reference. */
:root{--navy:#0a3042;--navy-deep:#082a3a;--navy-soft:#123d4e;--ink:#113241;--muted:#5f7078;--white:#fff;--paper:#f4f7f7;--line:#dce4e5;--accent:#f27626;--mono:'IBM Plex Mono',monospace;--sans:'Manrope',Arial,sans-serif;--max:1248px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body,button,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{font:inherit}button,a{outline-offset:6px}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #f27626}img{max-width:100%}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}button{cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:600;line-height:1.14;letter-spacing:-.045em}h2{font-size:clamp(36px,4vw,54px)}h3{font-size:24px;letter-spacing:-.035em}.container{width:calc(100% - 96px);max-width:var(--max);margin-inline:auto}.section{padding:108px 0}.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.075em;line-height:1.5;margin-bottom:24px;color:#48626b}.eyebrow.light{color:#b4cad1}.eyebrow-line{width:23px;height:1px;background:var(--accent)}.mono{font-family:var(--mono);font-size:12px;letter-spacing:.03em}.muted{color:var(--muted)}.button{display:inline-flex;justify-content:center;align-items:center;gap:24px;min-height:56px;padding:16px 23px;font-size:14px;line-height:1.4;font-weight:600;border:1px solid transparent;border-radius:3px;transition:background .2s,border-color .2s,transform .2s}.button svg{width:19px;height:19px;transition:transform .2s}.button:hover svg,.text-link:hover svg{transform:translate(3px,-2px)}.button:hover{transform:translateY(-2px)}.button-accent{background:var(--accent);color:var(--navy)}.button-accent:hover{background:#ff8c45}.button-dark{background:var(--navy);color:white}.button-dark:hover{background:#16495e}.button-outline{border-color:#67818c;color:#fff;background:transparent}.button-outline:hover{border-color:var(--accent);background:#ffffff07}.button-small{min-height:43px;padding:11px 17px;font-size:13px;gap:16px}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:14px;font-weight:600;line-height:1.5}.text-link svg{width:18px;height:18px;transition:transform .2s}.light-link{color:#eef6f7}.skip-link{position:fixed;top:10px;left:10px;background:var(--accent);padding:10px 20px;z-index:100;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;background:var(--navy);color:#fff;z-index:30;border-bottom:1px solid #ffffff16}.nav-shell{height:92px;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{position:relative;display:block;flex-shrink:0;width:200px;height:44px;overflow:hidden;background:var(--navy)}.brand img{position:absolute;max-width:none;width:282px;height:282px;left:-40px;top:-120px}.desktop-nav{display:flex;align-items:center;gap:34px;margin-left:auto;margin-right:36px}.desktop-nav a{font-size:14px;color:#d3e0e5;position:relative;padding:10px 0;transition:color .2s}.desktop-nav a:hover{color:var(--accent)}.desktop-nav a:after{content:'';height:1px;position:absolute;left:0;right:100%;bottom:5px;background:var(--accent);transition:right .2s}.desktop-nav a:hover:after{right:0}.menu-toggle{display:none;color:white;width:44px;height:44px;background:none;border:1px solid #ffffff40;border-radius:2px;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{display:block;width:19px;height:1px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{position:absolute;top:100%;left:0;width:100%;background:var(--navy);border-bottom:1px solid #ffffff40;padding:12px 28px 24px;box-shadow:0 15px 24px #00131c20}.mobile-nav a{display:flex;justify-content:space-between;padding:13px 0;color:white;border-bottom:1px solid #ffffff20}.mobile-nav a:last-child{color:var(--accent)}[hidden]{display:none!important}
.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:36px;min-height:632px;padding-top:73px;padding-bottom:80px}.hero-copy{position:relative;z-index:2}.hero .eyebrow{margin-bottom:27px}.hero h1{font-size:clamp(50px,5.7vw,82px);line-height:1.055;letter-spacing:-.052em;font-weight:500}.hero h1 span{color:var(--accent)}.hero-description{font-size:17px;line-height:1.8;color:#c1d2d9;max-width:490px;margin-top:28px}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:34px;flex-wrap:wrap}.hero-footnote{font-size:12px;color:#93adb9;margin-top:25px}.hero-visual{align-self:center;position:relative;min-width:0;padding-top:0;margin-top:6px}.visual-caption,.visual-footer{display:flex;align-items:center;justify-content:space-between;color:#97b1bd;font-family:var(--mono);font-size:10px;letter-spacing:.08em}.visual-caption{padding-bottom:18px;border-bottom:1px solid #ffffff20}.visual-caption span:last-child{color:#8daab7}.flow-canvas{position:relative;aspect-ratio:540/410;width:100%;background-image:radial-gradient(#a4c2cc2e .65px,transparent .65px);background-size:22px 22px}.hero-connections{width:100%;height:100%;position:absolute;inset:0;stroke-width:1;stroke-linecap:round}.wire{stroke:#658a98;stroke-opacity:.65}.wire-dashed{stroke-dasharray:3 5;stroke-opacity:.45}.moving-wire{stroke:var(--accent);stroke-opacity:.8}.pulse-dot{fill:var(--accent);stroke:none}.flow-canvas .source-node,.output-node{position:absolute;display:flex;gap:10px;align-items:center;border:1px solid #7794a05c;border-radius:3px;background:var(--navy);color:#d3e4ea;font-size:clamp(9px,.82vw,12px);letter-spacing:-.025em}.source-node{left:0;width:23%;height:12%;padding:0 10px}.source-node svg{width:17px;height:17px;color:#9dbbc9}.source-one{top:23%}.source-two{top:44%}.source-three{top:65%}.foundation-node{position:absolute;left:35.2%;top:37.5%;height:24%;width:29.7%;display:flex;align-items:center;flex-direction:column;justify-content:center;border:1px solid #f2762699;border-radius:4px;background:var(--navy-soft);box-shadow:0 0 0 7px #abc5ca05}.node-mark{display:flex;align-items:center;justify-content:center;color:var(--accent);margin-bottom:8px}.node-mark svg{width:22px;height:22px}.foundation-node strong{font-size:clamp(12px,1.1vw,16px);font-weight:500;line-height:1.3}.foundation-node>span{font-size:7px;letter-spacing:.025em;color:#adc1c9;margin-top:6px}.foundation-ticks{display:flex;gap:4px;margin-top:9px}.foundation-ticks i{width:12px;height:2px;background:#f2762655}.foundation-ticks i:nth-child(-n+5){background:var(--accent)}.output-node{left:75.9%;width:24%;height:12.7%;padding:0 12px}.output-node svg{width:19px;height:19px}.output-one{top:15.2%}.output-two{top:43.6%}.output-three{top:70.2%;color:var(--navy);background:var(--accent);border-color:var(--accent);font-weight:600}.human-control{position:absolute;top:88.5%;left:48%;font-size:8px;letter-spacing:.035em;color:#8eabb9;background:var(--navy);padding:2px 6px}.diagram-index{position:absolute;top:5%;font-family:var(--mono);font-size:8px;letter-spacing:.07em;color:#71939f}.index-source{left:0}.index-foundation{left:35.2%}.index-action{left:75.9%}.visual-footer{padding-top:10px;border-top:1px solid #ffffff20;font-size:9px;letter-spacing:.08em}.mini-cross{font-size:20px;color:#a7c1c8;line-height:1}.hero-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:22px;border-top:1px solid #ffffff20;color:#91adbb;font-size:12px}.hero-bottom a{display:flex;gap:35px;align-items:center}.hero-bottom a span{font-size:17px;color:var(--accent)}
.trust-strip{border-bottom:1px solid var(--line);padding:28px 0;background:#fff}.trust-inner{display:flex;gap:60px;align-items:center;justify-content:space-between}.trust-inner>p{font-size:13px;white-space:nowrap;color:var(--muted)}.client-logos{display:flex;align-items:center;justify-content:space-between;width:75%;gap:44px}.client-logos img{object-fit:contain;max-width:130px;width:auto;height:43px;filter:grayscale(1);opacity:.7;mix-blend-mode:multiply}.client-logos img:first-child{height:46px;max-width:152px}.client-wordmark{font-size:19px;font-weight:700;letter-spacing:-.065em;white-space:nowrap;color:#42575f}.wordmark-dot{color:#f27626}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:64px;margin-bottom:55px}.section-heading>div{flex-shrink:0}.section-heading>p{max-width:390px;font-size:16px;line-height:1.85;color:var(--muted);padding-bottom:4px}.section-heading .eyebrow{margin-bottom:19px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service{padding:34px 30px 31px;display:flex;flex-direction:column;transition:background .25s}.service:first-child{padding-left:0;padding-right:35px}.service:last-child{padding-right:0;padding-left:35px}.service+.service{border-left:1px solid var(--line)}.service:hover{background:#f5f8f844}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.service-top .mono{color:#7d9098}.service-icon{width:35px;height:35px;stroke-width:1.2}.service h3{font-size:clamp(20px,1.8vw,25px);white-space:nowrap;margin-bottom:12px}.service .service-lead{font-size:14px;color:var(--ink);font-weight:600;margin-bottom:20px}.service>p:not(.service-lead){font-size:15px;line-height:1.8;color:var(--muted)}.service ul{padding:0;margin:25px 0 32px;list-style:none;color:#395561}.service li{font-size:13px;padding:6px 0 6px 17px;position:relative;line-height:1.6}.service li:before{content:'+';position:absolute;left:0;font-family:var(--mono);color:#b9521e}.service-link{font-size:12px;font-weight:600;margin-top:auto;gap:12px;padding-top:10px}.service-link svg{margin-left:auto;width:17px;height:17px}.expertise-note{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:28px}.expertise-note>span{font-family:var(--mono);font-size:10px;color:#6e828c;letter-spacing:.025em}.expertise-note p{font-size:12px;color:#516c76}.expertise-note i{font-style:normal;color:#bdc9cd;margin:0 11px}
.chain-section{background:var(--paper)}.chain-demo{border:1px solid #d1dddf;background:#fff;border-radius:4px;padding:26px 32px 0}.chain-intro{display:flex;justify-content:space-between;gap:24px;padding-bottom:32px}.chain-intro .mono{font-size:10px;color:#5b757f}.chain-intro .muted{color:#899aa0}.chain-path{display:flex;align-items:center;gap:20px;padding:13px 0 40px}.chain-origin{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:158px;flex:0 0 17%;text-align:center;color:#59737c}.chain-origin>svg{width:27px;height:27px;margin-bottom:20px}.chain-origin strong{font-size:15px;line-height:1.4;font-weight:500}.chain-origin>span{font-size:11px;margin-top:6px;color:#7d9299}.chain-arrow{color:#92a5ac;font-size:23px}.stage-tabs{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:1;min-width:0}.stage-tab{position:relative;display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;justify-content:center;padding:22px 8px 19px;min-height:168px;border:1px solid #d4e1e3;border-radius:3px;background:white;transition:background .2s,border-color .2s,transform .2s;color:var(--ink)}.stage-tab:hover{background:var(--paper);border-color:#8ea6af;transform:translateY(-2px)}.stage-tab.is-active{background:var(--navy);color:white;border-color:var(--navy)}.stage-tab.is-active svg{color:var(--accent)}.stage-tab>svg{width:27px;height:27px;margin-bottom:20px}.stage-tab strong{font-size:15px;line-height:1.4;font-weight:500}.stage-tab>span:last-child{font-size:10px;margin-top:6px;color:#667f88}.stage-tab.is-active>span:last-child{color:#b4cbd3}.stage-number{position:absolute;top:11px;right:12px;font:9px var(--mono);color:#7c969f}.stage-panel{display:grid;grid-template-columns:.95fr 1fr;column-gap:65px;row-gap:12px;padding:28px 0 30px;border-top:1px solid var(--line);min-height:170px}.panel-label{font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:#a45125}.stage-panel h3{font-size:24px;letter-spacing:-.035em;max-width:330px;line-height:1.3;margin-top:9px}.stage-panel>p{font-size:14px;color:var(--muted);line-height:1.8;align-self:center}.panel-example{grid-column:2;font-size:12px;color:#647e88}.chain-guardrail{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 18px;margin:0 -32px;background:#fff2e9;border-top:1px solid #f1d5c3;color:#80583f;font-size:11px;border-radius:0 0 3px 3px}.chain-guardrail svg{width:15px;height:15px}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.case-art{position:relative;padding:24px 26px;background:var(--navy);border-radius:4px;min-height:300px;overflow:hidden;color:#e3eef0;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:24px 24px}.case-art-top{display:flex;justify-content:space-between;gap:12px;align-items:center;position:relative;z-index:1}.case-art-top>span:first-child{font-size:23px;letter-spacing:-.04em;font-weight:700}.case-art-top>.mono{font-size:9px;color:#98b6bd}.data-illustration{display:flex;justify-content:center;align-items:center;gap:0;min-height:185px}.data-stack{display:flex;flex-direction:column;gap:8px}.data-stack>span{padding:8px 9px;background:#0b3041;border:1px solid #6b959757;border-radius:3px;font:10px var(--mono);white-space:nowrap;color:#d2e3e7;min-width:130px}.data-stack i{display:inline-block;width:4px;height:4px;background:#9fbac3;margin-right:7px;vertical-align:middle}.case-connect{height:144px;width:54px;color:#f27626;flex-shrink:1;min-width:28px;stroke-width:1}.data-cube{width:100px;height:94px;flex-shrink:0;border:1px solid #f27626;color:#ffb98f;background:#323d42;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;font-size:12px;border-radius:3px}.data-cube>svg{width:28px;height:28px}.case-simple-arrow{font-size:19px;color:#7d9ea7;margin:0 13px;flex-shrink:0}.report-tile{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;width:72px;height:86px;border:1px solid #76949d;border-radius:3px;font-size:11px;color:#ccdde1;background:var(--navy)}.report-tile>svg{width:28px;height:28px}.case-art-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:8px;border-top:1px solid #ffffff20;font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:#98b6bd}.case-art-bottom>span:last-child{font:10px var(--sans);letter-spacing:0}.case-art-workflow{background-color:#f0f3f4;background-image:radial-gradient(#63798033 .7px,transparent .7px);background-size:16px 16px;color:var(--ink)}.case-art-workflow .case-art-top>.mono{color:#65757e}.case-art-workflow .case-art-bottom{border-color:#acbdc55c;color:#617781}.workflow-illustration{display:flex;align-items:center;justify-content:center;position:relative;min-height:185px;padding-bottom:29px}.workflow-mini{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;width:103px;height:86px;border:1px solid #bccbd0;border-radius:3px;background:#fafbfc;color:#415e6c;font-size:12px}.workflow-mini>svg{width:25px;height:25px}.workflow-mini.main-mini{background:var(--navy);border-color:var(--navy);color:var(--accent)}.control-mini{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:6px;font-size:9px;color:#617a86;white-space:nowrap}.control-mini:before{content:'';position:absolute;height:14px;border-left:1px dashed #99adb7;left:50%;bottom:24px}.control-mini>svg{width:12px;height:12px}.case-body{padding:25px 0 0}.case-category{display:flex;justify-content:space-between;font:10px var(--mono);color:#6e838b;letter-spacing:.06em;margin-bottom:12px}.case-body h3{font-size:28px;margin-bottom:15px}.case-body p{font-size:15px;line-height:1.85;color:var(--muted);max-width:525px}.tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.tags span{border:1px solid #dce4e3;border-radius:2px;padding:3px 8px;font-size:10px;line-height:1.7;color:#617780}
.approach-section{background:var(--navy);color:white}.approach-layout{display:grid;grid-template-columns:1fr 1fr;gap:120px}.approach-intro h2{font-size:clamp(42px,4.2vw,58px);line-height:1.13}.approach-intro h2 span{color:var(--accent)}.approach-intro>p:not(.eyebrow){max-width:395px;font-size:16px;line-height:1.85;color:#afc6d0;margin-top:27px}.approach-intro>.text-link{margin-top:27px}.location-note{margin-top:55px;border-left:1px solid #f27626;padding-left:18px;max-width:365px}.location-note>span{font:10px var(--mono);letter-spacing:.05em;color:#ffb88b}.location-note i{font-style:normal;padding:0 15px;color:#89a7b4}.location-note p{font-size:12px;color:#95afbc;line-height:1.75;margin-top:7px}.approach-steps{list-style:none;padding:0;margin:0}.approach-steps>li{display:flex;gap:28px;padding:30px 0;border-top:1px solid #ffffff28}.approach-steps>li:first-child{padding-top:15px;border-top:0}.approach-steps>li:last-child{padding-bottom:0}.step-index{font:13px var(--mono);color:#ffa367;padding-top:5px;flex-shrink:0}.approach-steps h3{font-size:24px;font-weight:500;margin-bottom:13px;letter-spacing:-.02em}.approach-steps p{font-size:15px;line-height:1.8;color:#abc3ce}.step-deliverable{display:block;margin-top:15px;font-size:11px;color:#ffd3b6}
.testimonials-section{padding-top:100px;padding-bottom:100px}.testimonials-section .section-heading{margin-bottom:43px}.testimonials-section h2{font-size:46px}.source-link{display:flex;align-items:center;gap:12px;font-size:12px;color:#5f7882;padding-bottom:5px}.source-link svg{width:15px;height:15px}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.quote{border-top:1px solid var(--line);padding-top:25px;display:flex;flex-direction:column}.quote-mark{font-size:59px;line-height:1;letter-spacing:-.06em;color:#f27626;font-family:Georgia,serif;height:43px}.quote blockquote{margin:0 0 30px;font-size:23px;line-height:1.5;font-weight:500;letter-spacing:-.03em;max-width:510px}.quote figcaption{display:flex;align-items:center;gap:23px;margin-top:auto}.quote figcaption img{width:auto;max-width:114px;height:40px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply;opacity:.8}.quote figcaption span{font-size:11px;color:#7b8d94;border-left:1px solid var(--line);padding-left:23px}
.contact-section{background:#fff3ea;padding:74px 0}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:55px}.contact-section .eyebrow{font-size:10px;color:#80583f;margin-bottom:20px}.contact-section h2{font-size:clamp(45px,4.6vw,64px);line-height:1.08}.contact-section p:not(.eyebrow){font-size:15px;line-height:1.8;color:#405965;margin-top:23px}.contact-actions{display:flex;flex-direction:column;align-items:center;flex-shrink:0;min-width:310px;padding-top:16px}.contact-actions .button{min-height:62px;width:100%;gap:36px;padding:20px 25px;font-size:15px}.contact-duration{font-size:11px;color:#637782;margin-top:13px}.email-link{margin-top:25px;font-size:12px;color:#405c69}.email-link strong{font-weight:500;text-decoration:underline;text-underline-offset:4px;color:var(--navy)}
.site-footer{background:var(--navy);color:#b4cad4;padding-top:63px}.footer-top{display:grid;grid-template-columns:1.5fr 1fr .8fr 1fr;gap:55px;padding-bottom:61px}.footer-brand-block .brand{width:182px;height:36px}.footer-brand-block .brand img{width:254px;height:254px;top:-109px;left:-36px}.footer-brand-block p{font-size:15px;line-height:1.75;margin-top:20px;letter-spacing:-.01em;color:#9bb6c3}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-col>span{font:10px var(--mono);color:#7f9ba8;letter-spacing:.05em;margin-bottom:12px}.footer-col a,.footer-col p{font-size:12px;line-height:1.65}.footer-col a{transition:color .2s}.footer-col a:hover{color:var(--accent)}.footer-col a span{padding-left:12px}.footer-col p{color:#829eac;margin-top:2px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #ffffff20;padding:20px 0 25px;font-size:10px;color:#7d9caa}.footer-bottom a{white-space:nowrap}.reveal{opacity:1;transform:none}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(17px)}.motion-ready .reveal{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
@media(min-width:1500px){.hero-grid{min-height:685px;padding-top:100px;padding-bottom:104px}.hero h1{font-size:84px}.hero-visual{margin-top:3px}.source-node,.output-node{font-size:12px!important}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.nav-shell{gap:20px}.desktop-nav{gap:25px;margin-right:10px}.brand{width:182px;height:40px}.brand img{width:256px;height:256px;left:-37px;top:-109px}.hero-grid{gap:25px;min-height:590px}.hero h1{font-size:clamp(49px,5.6vw,64px)}.hero-description{font-size:16px}.hero-actions{gap:20px;align-items:flex-start;flex-direction:column}.hero-footnote{margin-top:20px}.hero-visual{margin-top:5px}.hero .button{min-height:51px;padding:14px 20px}.source-node{padding:0 6px;gap:5px!important}.source-node svg{width:14px;height:14px}.output-node{padding:0 7px;gap:5px!important}.output-node svg{width:16px;height:16px}.foundation-node>span{font-size:6px}.visual-caption{font-size:8px}.visual-footer{font-size:8px}.client-logos{gap:20px;width:73%}.client-logos img{max-width:99px;height:36px}.client-logos img:first-child{max-width:110px;height:40px}.client-wordmark{font-size:17px}.section-heading{gap:50px}.section-heading>p{max-width:345px}.service{padding:27px 23px}.service:first-child{padding-right:24px}.service:last-child{padding-left:24px}.service .service-lead{font-size:13px}.service>p:not(.service-lead){font-size:14px}.service li{font-size:12px}.service-link{font-size:11px;gap:8px}.expertise-note p{font-size:10px}.expertise-note i{margin:0 6px}.chain-path,.stage-tabs{gap:12px}.chain-demo{padding:24px 24px 0}.chain-guardrail{margin:0 -24px}.stage-tab strong{font-size:14px}.stage-tab>span:last-child{font-size:9px}.case-art{padding:23px 21px;min-height:280px}.data-stack>span{font-size:8px;min-width:110px}.data-cube{width:79px;height:82px;font-size:11px}.case-simple-arrow{margin:0 8px}.report-tile{width:63px;height:76px}.case-connect{min-width:22px;width:42px}.case-art-bottom{font-size:6px}.workflow-mini{width:86px;height:82px}.case-art-top>.mono{font-size:7px}.case-art-top>span:first-child{font-size:22px}.case-body h3{font-size:25px}.approach-layout{gap:65px}.footer-top{gap:28px}.footer-bottom{font-size:9px}}
@media(max-width:850px){html{scroll-padding-top:84px}.container{width:calc(100% - 48px)}.nav-shell{height:78px}.desktop-nav{gap:20px;margin-right:0}.nav-cta{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:25px;padding-top:66px;padding-bottom:58px;min-height:535px}.hero h1{font-size:47px}.hero .eyebrow{font-size:9px;margin-bottom:24px}.hero-description{font-size:15px;line-height:1.8}.hero-footnote{font-size:10px;max-width:290px}.hero-actions{margin-top:25px}.hero-actions .text-link{font-size:12px}.hero-visual{align-self:center;margin-top:40px}.source-node span{font-size:7px}.source-node svg{width:12px;height:12px}.source-node{gap:4px!important;padding:0 4px}.output-node{padding:0 4px;gap:5px!important}.output-node span{font-size:8px}.output-node svg{width:13px;height:13px}.foundation-node{height:27%;top:35.5%}.foundation-node strong{font-size:10px}.node-mark{margin-bottom:4px}.node-mark svg{width:16px;height:16px}.foundation-node>span{font-size:4.5px;margin-top:3px}.foundation-ticks{gap:3px;margin-top:6px}.foundation-ticks i{width:6px;height:1px}.diagram-index{font-size:6px}.human-control{font-size:6px;left:43%}.visual-caption{font-size:6px;gap:10px}.visual-footer{font-size:6px}.mini-cross{font-size:15px}.hero-bottom{font-size:10px}.trust-inner{gap:35px}.trust-inner>p{font-size:11px}.client-logos{gap:18px;width:auto;flex:1}.client-logos img{max-width:73px;height:29px}.client-logos img:first-child{max-width:87px;height:34px}.client-wordmark{font-size:14px}.section{padding:78px 0}.section-heading{gap:35px;margin-bottom:38px}.section-heading>p{font-size:14px;max-width:290px}.section-heading h2{font-size:38px}.eyebrow{font-size:10px}.service{padding:25px 18px}.service:first-child{padding-right:19px}.service:last-child{padding-left:19px}.service h3{white-space:normal;font-size:21px;min-height:48px}.service .service-lead{font-size:12px;min-height:43px;margin-bottom:13px}.service>p:not(.service-lead){font-size:13px}.service li{font-size:10px}.service-link{font-size:10px}.service-top{margin-bottom:19px}.service-icon{width:28px;height:28px}.service ul{margin:20px 0 24px}.expertise-note{flex-direction:column;align-items:flex-start;gap:10px;margin-top:24px}.expertise-note p{font-size:12px}.expertise-note i{margin:0 9px}.chain-demo{padding:22px 20px 0}.chain-path{gap:10px;padding-top:6px;padding-bottom:27px}.chain-origin{flex-basis:16%}.chain-origin strong{font-size:12px}.chain-origin>span{font-size:9px}.stage-tabs{gap:10px}.chain-arrow{font-size:18px}.stage-tab{min-height:145px;padding:23px 5px 18px}.stage-tab strong{font-size:12px}.stage-tab>span:last-child{font-size:8px}.stage-panel{column-gap:30px}.stage-panel h3{font-size:22px}.stage-panel>p{font-size:13px}.panel-example{font-size:11px}.chain-guardrail{font-size:10px;margin:0 -20px;padding:14px 15px}.case-grid{gap:23px}.case-art{padding:19px 16px;min-height:254px}.case-art-top{align-items:flex-start;gap:4px}.case-art-top>span:first-child{font-size:19px}.case-art-top>.mono{font-size:6px;text-align:right;max-width:86px;margin-top:7px}.data-illustration{min-height:171px}.data-stack>span{min-width:82px;font-size:6px;padding:8px 5px}.data-stack i{width:3px;height:3px;margin-right:3px}.case-connect{min-width:16px;width:28px}.data-cube{width:57px;height:70px;gap:10px;font-size:9px}.data-cube svg{width:24px;height:24px}.case-simple-arrow{font-size:15px;margin:0 6px}.report-tile{width:48px;height:63px;font-size:9px;gap:8px}.report-tile svg{width:24px;height:24px}.case-art-bottom{font-size:5px}.case-art-bottom>span:last-child{font-size:8px}.workflow-illustration{min-height:171px}.workflow-mini{width:70px;height:73px;font-size:10px;gap:10px}.workflow-mini svg{width:21px;height:21px}.control-mini{font-size:8px;bottom:14px}.case-body h3{font-size:22px}.case-body p{font-size:14px}.tags span{font-size:8px}.approach-layout{gap:50px}.approach-intro h2{font-size:40px}.approach-intro>p:not(.eyebrow){font-size:14px}.approach-steps>li{gap:20px;padding:26px 0}.approach-steps h3{font-size:21px}.approach-steps p{font-size:13px}.step-deliverable{font-size:10px}.location-note p{font-size:11px}.quote-grid{gap:37px}.quote blockquote{font-size:21px}.quote figcaption img{max-width:94px;height:34px}.quote figcaption{gap:15px}.quote figcaption span{font-size:9px;padding-left:15px}.source-link{font-size:10px}.contact-inner{gap:35px}.contact-section h2{font-size:46px}.contact-section p:not(.eyebrow){font-size:13px}.contact-actions{min-width:258px}.contact-actions .button{font-size:13px;gap:24px;padding:17px 19px;min-height:57px}.contact-duration{font-size:10px}.email-link{font-size:10px}.footer-top{grid-template-columns:1.3fr 1fr .8fr;gap:35px}.footer-col:last-child{grid-column:2/4;flex-direction:row;align-items:center;flex-wrap:wrap;gap:20px}.footer-col:last-child>span{margin-bottom:0;width:100%}.footer-col:last-child p{margin-top:0}.footer-brand-block{grid-row:span 2}.footer-bottom{flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:620px){html{scroll-padding-top:87px}.container{width:calc(100% - 44px)}.section{padding:67px 0}.nav-shell{height:76px;gap:20px}.brand{width:172px;height:38px}.brand img{width:242px;height:242px;top:-103px;left:-34px}.desktop-nav{display:none}.menu-toggle{display:flex}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;padding-top:48px;padding-bottom:35px}.hero .eyebrow{font-size:10px;margin-bottom:23px}.hero h1{font-size:clamp(43px,10.7vw,64px);line-height:1.09;letter-spacing:-.052em}.hero-description{font-size:16px;margin-top:24px;max-width:420px;line-height:1.8}.hero-actions{flex-direction:row;align-items:center;gap:22px;margin-top:28px}.hero .button{padding:16px 19px;min-height:53px;font-size:13px;gap:25px}.hero-actions .text-link{font-size:12px;padding:4px 0}.hero-footnote{font-size:11px;max-width:100%;line-height:1.6;margin-top:21px}.hero-visual{align-self:stretch;margin-top:41px;width:100%;max-width:470px;margin-inline:auto}.visual-caption{font-size:8px;padding-bottom:14px}.visual-footer{font-size:7px;padding-top:9px}.flow-canvas{margin-top:2px}.source-node span{font-size:clamp(7px,2vw,10px)}.source-node{padding:0 7px;gap:5px!important}.source-node svg{width:14px;height:14px}.output-node{padding:0 7px;gap:7px!important}.output-node span{font-size:clamp(8px,2.5vw,12px)}.output-node svg{width:17px;height:17px}.foundation-node{height:26%;top:36.5%}.foundation-node strong{font-size:clamp(11px,3vw,14px)}.node-mark svg{width:21px;height:21px}.node-mark{margin-bottom:6px}.foundation-node>span{font-size:clamp(4.5px,1.3vw,6px)}.foundation-ticks{margin-top:8px;gap:3px}.foundation-ticks i{width:8px;height:2px}.diagram-index{font-size:7px}.human-control{font-size:7px;left:45%}.hero-bottom{font-size:9px;padding-top:18px;padding-bottom:18px;gap:20px}.hero-bottom a{gap:14px;white-space:nowrap}.trust-strip{padding:26px 0}.trust-inner{flex-direction:column;align-items:stretch;gap:18px}.trust-inner>p{font-size:11px}.client-logos{width:100%;gap:20px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}.client-logos img{width:auto;height:31px;max-width:85px;justify-self:center}.client-logos img:first-child{height:37px;max-width:105px;justify-self:start}.client-wordmark{display:none}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:38px;line-height:1.12}.section-heading .eyebrow{font-size:10px;margin-bottom:20px}.section-heading>p{font-size:15px;max-width:100%;margin-top:22px;padding:0;line-height:1.8}.service-grid{display:block;border-bottom:0}.service,.service:first-child,.service:last-child{padding:28px 0 30px;border-left:0;border-bottom:1px solid var(--line)}.service-top{margin-bottom:23px}.service-icon{width:33px;height:33px}.service-top .mono{font-size:12px}.service h3{min-height:0;font-size:25px;white-space:normal;margin-bottom:11px}.service .service-lead{min-height:0;font-size:14px;margin-bottom:16px}.service>p:not(.service-lead){font-size:15px;line-height:1.8}.service li{font-size:13px;padding-top:5px;padding-bottom:5px}.service ul{margin:21px 0 22px}.service-link{font-size:13px;justify-content:space-between;padding-top:4px}.service-link svg{width:19px;height:19px}.expertise-note{margin-top:23px;gap:10px}.expertise-note>span{font-size:9px}.expertise-note p{font-size:11px;line-height:2}.expertise-note i{margin:0 6px}.chain-demo{padding:21px 19px 0}.chain-intro{padding-bottom:25px;gap:12px;flex-wrap:wrap}.chain-intro .mono{font-size:8px}.chain-path{display:block;padding-top:0;padding-bottom:25px}.chain-origin{display:flex;flex-direction:row;min-height:40px;justify-content:flex-start;gap:11px;margin-bottom:23px;text-align:left;padding-left:2px}.chain-origin>svg{width:22px;height:22px;margin-bottom:0}.chain-origin strong{font-size:12px}.chain-origin>span{font-size:9px;margin-top:0;margin-left:auto}.chain-path>.chain-arrow{display:none}.stage-tabs{gap:7px}.stage-tabs>.chain-arrow{font-size:13px}.stage-tab{min-height:137px;padding:25px 4px 13px}.stage-tab>svg{width:24px;height:24px;margin-bottom:14px}.stage-tab strong{font-size:11px;letter-spacing:-.035em}.stage-tab>span:last-child{font-size:8px;line-height:1.5;max-width:83px;margin-top:7px}.stage-number{font-size:8px;top:8px;right:8px}.stage-panel{display:block;min-height:0;padding:23px 0 26px}.stage-panel h3{font-size:25px;max-width:280px;margin-top:10px}.panel-label{font-size:9px}.stage-panel>p{font-size:14px;line-height:1.8;margin-top:16px}.panel-example{display:block;margin-top:14px;font-size:11px;line-height:1.7}.chain-guardrail{margin:0 -19px;align-items:flex-start;padding:14px 15px;line-height:1.7;font-size:10px}.chain-guardrail svg{margin-top:2px}.case-grid{display:block}.case+.case{margin-top:38px}.case-art{padding:22px 19px;min-height:273px}.case-art-top>span:first-child{font-size:23px}.case-art-top>.mono{font-size:7px;max-width:none}.data-illustration{min-height:183px}.data-stack>span{font-size:8px;padding:8px;min-width:101px}.data-stack i{width:4px;height:4px;margin-right:6px}.case-connect{width:34px;min-width:20px}.data-cube{width:71px;height:84px;font-size:10px;gap:11px}.data-cube svg{width:27px;height:27px}.case-simple-arrow{font-size:18px;margin:0 10px}.report-tile{width:59px;height:75px;font-size:10px;gap:12px}.case-art-bottom{font-size:6px}.case-art-bottom>span:last-child{font-size:9px}.workflow-illustration{min-height:183px}.workflow-mini{width:84px;height:80px;font-size:11px;gap:12px}.workflow-mini svg{width:23px;height:23px}.control-mini{font-size:9px;bottom:12px}.case-body{padding-top:23px}.case-category{font-size:10px;margin-bottom:11px}.case-body h3{font-size:27px;margin-bottom:14px}.case-body p{font-size:15px;line-height:1.85}.tags{gap:8px;margin-top:19px}.tags span{font-size:10px}.approach-layout{display:block}.approach-intro h2{font-size:43px}.approach-intro>p:not(.eyebrow){font-size:15px;line-height:1.85;margin-top:24px}.approach-intro>.text-link{font-size:14px;margin-top:24px}.location-note{margin-top:29px;max-width:315px}.location-note>span{font-size:10px}.location-note p{font-size:12px}.approach-steps{margin-top:41px}.approach-steps>li,.approach-steps>li:first-child{border-top:1px solid #ffffff28;padding:26px 0;gap:23px}.approach-steps h3{font-size:23px;margin-bottom:12px}.approach-steps p{font-size:14px;line-height:1.8}.step-index{font-size:12px}.step-deliverable{font-size:11px;margin-top:13px}.testimonials-section .section-heading{margin-bottom:30px}.testimonials-section .section-heading h2{font-size:36px}.source-link{font-size:11px;margin-top:20px;display:inline-flex}.quote-grid{display:block}.quote{padding-top:23px}.quote+.quote{margin-top:31px}.quote blockquote{font-size:23px;line-height:1.5;margin-bottom:25px}.quote figcaption img{max-width:110px;height:39px}.quote figcaption{gap:22px}.quote figcaption span{font-size:11px;padding-left:22px}.contact-section{padding:59px 0}.contact-inner{display:block}.contact-section .eyebrow{font-size:9px;margin-bottom:21px}.contact-section h2{font-size:50px}.contact-section p:not(.eyebrow){font-size:15px;line-height:1.85;margin-top:21px}.desktop-break{display:none}.contact-actions{min-width:0;align-items:flex-start;padding-top:0;margin-top:29px;max-width:340px}.contact-actions .button{font-size:14px;min-height:59px;padding:18px 21px;justify-content:space-between}.contact-duration{font-size:11px;align-self:center;margin-top:12px}.email-link{font-size:12px;margin-top:23px;align-self:center}.site-footer{padding-top:43px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:32px 27px;padding-bottom:33px}.footer-brand-block{grid-column:1/-1;grid-row:auto}.footer-brand-block p{font-size:14px;margin-top:15px}.footer-col{gap:10px}.footer-col>span{font-size:9px;margin-bottom:8px}.footer-col a,.footer-col p{font-size:12px}.footer-col:last-child{grid-column:1/-1;flex-direction:column;align-items:flex-start;gap:10px}.footer-col:last-child>span{margin-bottom:7px}.footer-col:last-child p{margin-top:3px}.footer-bottom{padding:20px 0 23px;font-size:10px;gap:15px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:370px){.container{width:calc(100% - 36px)}.hero h1{font-size:40px}.hero-description{font-size:15px}.hero-actions{gap:19px}.hero-footnote{font-size:10px}.source-node{padding:0 4px;gap:4px!important}.source-node svg{width:12px;height:12px}.visual-caption{font-size:7px}.visual-footer{font-size:6px}.human-control{font-size:6px}.foundation-ticks i{width:6px}.client-logos{gap:15px}.client-logos img{max-width:74px}.client-logos img:first-child{max-width:91px}.section-heading h2{font-size:35px}.chain-demo{padding:20px 14px 0}.chain-guardrail{margin:0 -14px}.chain-origin>span{font-size:8px}.stage-tabs{gap:5px}.stage-tab strong{font-size:10px}.stage-tab>span:last-child{font-size:7px}.stage-tab{min-height:131px}.data-stack>span{min-width:91px;font-size:7px}.data-cube{width:58px;height:75px}.case-art{padding:21px 16px}.case-connect{width:22px;min-width:16px}.case-simple-arrow{margin:0 7px}.report-tile{width:49px;height:66px;font-size:9px}.case-art-top>span:first-child{font-size:21px}.case-art-top>.mono{font-size:6px}.case-art-bottom{font-size:5px}.workflow-mini{width:71px}.case-body h3{font-size:24px}}
/* Readable content sizes and compact secondary labels across viewports. */
.service>p:not(.service-lead),.case-body p,.approach-intro>p:not(.eyebrow),.approach-steps p,.stage-panel>p,.contact-section p:not(.eyebrow),.section-heading>p{font-size:16px}
.service .service-lead,.service li,.service-link,.footer-col a,.footer-col p,.source-link{font-size:14px}
.eyebrow,.mono,.hero-footnote,.hero-bottom,.trust-inner>p,.expertise-note>span,.expertise-note p,.chain-intro .mono,.stage-number,.panel-label,.panel-example,.chain-guardrail,.case-category,.tags span,.step-deliverable,.location-note>span,.location-note p,.quote figcaption span,.contact-section .eyebrow,.contact-duration,.email-link,.footer-col>span,.footer-bottom{font-size:12px}
.client-name{display:flex;align-items:center;gap:9px}.client-name strong{font-size:19px;letter-spacing:-.03em;font-weight:600;color:#566a73}.client-name img,.client-logos .client-name img:first-child{width:46px;height:46px;object-fit:contain;opacity:.75;flex-shrink:0}
.quote figcaption img{width:50px;height:50px;object-fit:contain}.quote figcaption span{border-left:0;padding-left:0}.quote figcaption strong{display:block;font-size:14px;font-weight:600;color:var(--ink);line-height:1.5;margin-bottom:3px}
.visual-caption,.visual-footer{font-size:10px}.diagram-index{font-size:10px}.human-control{font-size:10px;left:44%}.source-node span,.output-node span{font-size:12px}.foundation-node strong{font-size:15px}.foundation-node>span{display:none}.foundation-node .node-mark{margin-bottom:8px}.case-art-bottom{font-size:8px}.case-art-bottom>span:last-child{font-size:10px}
.stage-tab>span:last-child{font-size:12px}.stage-tab strong,.chain-origin strong{font-size:16px}.chain-origin>span{font-size:12px}.stage-tab{padding:25px 9px 20px;min-height:178px}.chain-origin{min-height:178px}.service h3{min-height:58px;display:flex;align-items:flex-start;white-space:normal}.service .service-lead{min-height:50px}
@media(min-width:1101px){.service h3{min-height:30px;font-size:24px}}
@media(max-width:1100px) and (min-width:621px){.hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:57px}.hero-visual{margin-top:20px}.visual-caption,.visual-footer{font-size:8px}.source-node svg{display:none}.foundation-node strong{font-size:12px}.output-node svg{width:14px}.diagram-index{font-size:8px}.human-control{font-size:8px}.client-name img,.client-logos .client-name img:first-child{width:35px;height:35px}.client-name strong{font-size:16px}.client-logos{gap:22px}.client-wordmark{font-size:16px}.trust-inner{gap:25px}.service li,.service-link{font-size:13px}.expertise-note{flex-direction:column;align-items:flex-start;gap:10px}.service h3{font-size:23px}.stage-tab strong{font-size:14px}.stage-tab>span:last-child,.chain-origin>span{font-size:11px}.stage-panel{column-gap:30px}.stage-panel>p{font-size:15px}.case-art-top>.mono{font-size:9px}.case-art-bottom>span:first-child{font-size:7px}.footer-top{gap:30px}.footer-col a,.footer-col p{font-size:13px}}
@media(max-width:850px) and (min-width:621px){.hero-grid{grid-template-columns:1fr;gap:36px;padding-top:62px;padding-bottom:45px}.hero-copy{max-width:650px}.hero h1{font-size:68px}.hero-description{max-width:580px}.hero-actions{flex-direction:row;align-items:center;gap:26px}.hero-footnote{max-width:none}.hero-visual{width:100%;max-width:560px;justify-self:center;margin-top:0}.visual-caption,.visual-footer,.diagram-index{font-size:10px}.human-control{font-size:10px}.source-node svg{display:block;width:18px;height:18px}.source-node{padding-inline:12px;gap:8px!important}.output-node{padding-inline:12px;gap:8px!important}.foundation-node strong{font-size:15px}.node-mark svg{width:23px;height:23px}.client-wordmark{display:none}.client-logos{width:auto;justify-content:space-around}.section-heading{display:block}.section-heading>p{max-width:550px;margin-top:22px}.service-grid{display:block}.service,.service:first-child,.service:last-child{padding:30px 0;border-left:0;border-bottom:1px solid var(--line)}.service-grid{border-bottom:0}.service h3,.service .service-lead{min-height:0}.service h3{font-size:26px}.service .service-lead{font-size:15px;margin-bottom:20px}.service li{font-size:14px}.service-link{font-size:14px;max-width:400px}.service ul{margin-top:22px}.service>p:not(.service-lead){max-width:610px}.case-grid{grid-template-columns:1fr;gap:38px}.case-art{min-height:290px}.case-art-top>span:first-child{font-size:26px}.case-art-top>.mono{font-size:12px;max-width:none}.data-illustration,.workflow-illustration{min-height:210px}.data-stack>span{min-width:135px;font-size:11px;padding:10px 12px}.case-connect{width:65px;min-width:40px}.data-cube{width:108px;height:100px;font-size:14px}.report-tile{width:86px;height:85px;font-size:12px}.case-simple-arrow{margin:0 18px}.workflow-mini{width:120px;height:100px;font-size:14px}.control-mini{font-size:11px}.case-art-bottom>span:first-child{font-size:9px}.case-body h3{font-size:28px}.approach-layout{gap:40px}.approach-intro h2{font-size:39px}.contact-inner{align-items:flex-start}.contact-actions{margin-top:40px;min-width:245px}.contact-section .eyebrow{font-size:11px}.contact-duration,.email-link{font-size:11px}}
@media(max-width:620px){.visual-caption,.visual-footer,.diagram-index{font-size:9px}.human-control{font-size:9px;left:43%}.source-node svg{display:none}.source-node{justify-content:center;padding-inline:3px}.output-node{padding-inline:6px;gap:5px!important}.output-node span{font-size:11px}.source-node span{font-size:11px}.foundation-node strong{font-size:12px}.hero-footnote{font-size:12px}.hero-bottom{font-size:10px}.client-logos{display:flex;justify-content:space-between;gap:15px}.client-name{gap:6px}.client-name img,.client-logos .client-name img:first-child{width:32px;height:36px}.client-name strong{font-size:15px}.section-heading>p{font-size:16px}.service h3{font-size:26px;min-height:0}.service .service-lead{min-height:0;font-size:15px}.service-link{font-size:13px}.chain-intro .mono{font-size:10px}.chain-path{display:flex;align-items:stretch;flex-direction:column;gap:0}.chain-origin{margin-bottom:23px;min-height:40px;gap:10px;flex-basis:auto}.chain-origin strong{font-size:14px}.chain-origin>span{font-size:11px}.stage-tabs{display:flex;flex-direction:column;align-items:stretch;gap:10px}.stage-tabs>.chain-arrow{display:none}.stage-tab{display:grid;grid-template-columns:24px 1fr 24px;gap:3px 14px;min-height:82px;padding:17px 16px;text-align:left}.stage-tab>svg{grid-column:1;grid-row:1/3;width:24px;height:24px;margin-bottom:0}.stage-tab strong{grid-column:2;grid-row:1;font-size:16px;letter-spacing:-.03em}.stage-tab>span:last-child{grid-column:2;grid-row:2;font-size:12px;max-width:none;margin-top:0}.stage-number{grid-column:3;grid-row:1/3;position:static;font-size:12px;justify-self:end;align-self:center}.panel-label{font-size:11px}.panel-example,.chain-guardrail{font-size:12px}.stage-panel h3{font-size:26px}.case-art-top>.mono{font-size:8px}.case-art-bottom>span:first-child{font-size:7px}.case-art-bottom>span:last-child{font-size:10px}.case-body h3{font-size:27px}.case-category{font-size:11px}.tags span{font-size:11px}.approach-steps p,.approach-intro>p:not(.eyebrow){font-size:16px}.step-deliverable{font-size:12px}.location-note>span{font-size:11px}.location-note p{font-size:12px}.source-link{font-size:12px}.contact-section .eyebrow{font-size:10px}.footer-col>span{font-size:11px}.footer-bottom{font-size:11px}}
@media(max-width:370px){.hero h1{font-size:40px}.source-node span{font-size:10px}.output-node svg{display:none}.output-node{justify-content:center}.human-control{font-size:8px}.foundation-node strong{font-size:11px}.visual-caption,.visual-footer{font-size:8px}.client-name img,.client-logos .client-name img:first-child{width:25px}.client-name strong{font-size:14px}.contact-section .eyebrow{font-size:9px}.chain-origin>span{font-size:10px}.case-art-bottom>span:first-child{font-size:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.pulse-dot{display:none}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}.button:hover,.stage-tab:hover{transform:none}.software-logos{overflow-x:auto}.software-logo-group[aria-hidden="true"]{display:none}}
/* Three reserved portrait positions, ready for the owner's photographs. */
.portrait-placeholder{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border:1px solid #d6dfe2;border-radius:3px;background:#edf1f3;color:#607985;gap:8px}
.photo-placeholder-index{position:absolute;top:8px;left:9px;font:10px var(--mono);color:#8296a0}
.photo-placeholder-mark{font-size:28px;font-weight:500;line-height:1;letter-spacing:-.06em;color:#738a95}
.photo-placeholder-caption{font-size:12px;line-height:1.4}
.hero-person{display:flex;gap:17px;align-items:center;margin-top:28px}
.portrait-placeholder--hero{width:72px;height:84px;background:#123b4e;border-color:#577a8b66;color:#b9cdd6;gap:6px}
.portrait-placeholder--hero .photo-placeholder-mark{font-size:22px;color:#a2bdca}
.portrait-placeholder--hero .photo-placeholder-index{top:5px;left:6px;font-size:9px;color:#759aaa}
.portrait-placeholder--hero .photo-placeholder-caption{font-size:11px}
.hero-person-copy{display:flex;flex-direction:column;gap:3px}
.hero-person-copy strong{font-size:14px;font-weight:600;color:#e1ecf1}
.hero-person-copy>span{font-size:12px;color:#a7c0cd}
.hero-person-copy a{display:flex;align-items:center;gap:10px;font-size:12px;color:#f4a572;margin-top:4px}
.hero-person-copy svg{width:15px;height:15px;transition:transform .2s}
.hero-person-copy a:hover svg{transform:translateX(3px)}
.about-section{background:#f4f7f8;border-top:1px solid #e2e9ec}
.about-layout{display:grid;grid-template-columns:1fr 1.03fr;gap:78px;align-items:center}
.about-copy h2{font-size:clamp(34px,3.6vw,49px);line-height:1.16;margin-bottom:26px;letter-spacing:-.045em}
.about-copy h2 span{display:inline;background:linear-gradient(var(--accent),var(--accent)) 0 100%/100% 2px no-repeat;padding-bottom:4px}
.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.85;color:var(--muted);margin-top:17px;max-width:510px}
.about-person{display:flex;align-items:center;gap:23px;margin-top:29px}
.portrait-placeholder--about{width:118px;height:145px;background:#e6ecef;gap:12px}
.portrait-placeholder--about .photo-placeholder-mark{font-size:37px}
.about-person>div:last-child{display:flex;flex-direction:column;gap:4px}
.about-person strong{font-size:16px;color:var(--ink);font-weight:600}
.about-person>div:last-child>span{font-size:13px;color:var(--muted)}
.about-person p{font-size:13px;line-height:1.8;color:#627b87;margin-top:8px}
.office-photo{width:100%;min-width:0}
.office-photo>img{display:block;width:100%;height:auto;aspect-ratio:579/374;object-fit:contain}
.office-photo figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #d3dee2;padding:19px 0;color:#69808b;font-size:12px;line-height:1.7}
.office-photo figcaption>span:first-child{font:12px var(--mono);color:#617885;white-space:nowrap}
.contact-section{border-top:1px solid #f5d6c1}
.contact-person{display:flex;align-items:center;gap:20px;margin-bottom:25px;width:100%}
.portrait-placeholder--contact{width:96px;height:112px;background:#fae6d9;border-color:#e6c5af;color:#8b634c}
.portrait-placeholder--contact .photo-placeholder-mark{color:#a5785e;font-size:29px}
.portrait-placeholder--contact .photo-placeholder-index{color:#aa866f}
.contact-person>div:last-child{display:flex;flex-direction:column;gap:7px}
.contact-person strong{font-size:15px;line-height:1.5;font-weight:600;letter-spacing:-.02em}
.contact-person>div:last-child>span{font-size:13px;line-height:1.8;color:#6f716e}
.contact-actions .button-dark{background:var(--accent);color:var(--navy)}
.contact-actions .button-dark:hover{background:#ff8c45}
@media(max-width:1100px){.about-layout{gap:43px;grid-template-columns:1fr 1fr}.about-copy h2{font-size:36px}.about-person{gap:17px}.portrait-placeholder--about{width:101px;height:131px}.about-person>div:last-child>span,.about-person p{font-size:12px}.office-photo figcaption{flex-wrap:wrap;gap:6px}}
@media(max-width:850px){.about-layout{grid-template-columns:1fr;gap:40px}.about-copy h2{font-size:44px}.about-copy>p:not(.eyebrow){max-width:660px}.office-photo{max-width:579px;margin:0 auto}.office-photo figcaption{justify-content:space-between;gap:15px}.about-person{gap:23px}.portrait-placeholder--about{width:118px;height:145px}.contact-person{gap:15px}.portrait-placeholder--contact{width:80px;height:102px}.contact-person strong{font-size:14px}.contact-person>div:last-child>span{font-size:12px}}
@media(max-width:620px){.hero-person{margin-top:25px;gap:16px}.hero-bottom>span{max-width:210px;font-size:11px;line-height:1.7}.portrait-placeholder--hero{width:68px;height:82px}.hero-person-copy>span{font-size:12px}.hero-person-copy a{font-size:12px}.about-copy h2{font-size:37px;margin-bottom:25px}.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.85}.about-layout{gap:33px}.about-person{gap:18px;margin-top:27px}.portrait-placeholder--about{width:107px;height:138px}.about-person strong{font-size:15px}.about-person>div:last-child>span{font-size:12px}.about-person p{font-size:12px;line-height:1.75}.office-photo figcaption{font-size:11px;align-items:flex-start;gap:12px;padding:15px 0}.office-photo figcaption>span:first-child{font-size:11px}.office-photo figcaption>span:last-child{max-width:205px;text-align:right}.contact-person{margin-bottom:23px;gap:20px}.portrait-placeholder--contact{width:94px;height:114px}.contact-person strong{font-size:15px}.contact-person>div:last-child>span{font-size:13px}.contact-actions{margin-top:32px}.contact-section{padding-top:56px}}
@media(max-width:370px){.hero-bottom>span{max-width:188px;font-size:10px}.about-copy h2{font-size:33px}.about-person{gap:14px}.portrait-placeholder--about{width:95px;height:125px}.about-person p{font-size:11px}.office-photo figcaption{font-size:10px}.contact-person{gap:16px}}
.desktop-nav{gap:25px;margin-right:20px}.desktop-nav a{white-space:nowrap}
.about-copy>p.about-statement{color:var(--ink);font-size:18px;line-height:1.6;font-weight:600;margin-top:23px;padding-left:15px;border-left:2px solid var(--accent);letter-spacing:-.025em}
.fit-section{background:#fff;border-bottom:1px solid var(--line)}
.fit-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:92px;align-items:start}
.fit-intro h2{font-size:clamp(35px,3.7vw,50px);line-height:1.15}
.fit-intro h2>span{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:9px}
.fit-intro>p:not(.eyebrow){font-size:16px;line-height:1.85;color:var(--muted);margin-top:29px;max-width:390px}
.fit-intro>.text-link{margin-top:28px;font-size:14px;gap:14px}
.fit-intro>.text-link svg{color:#b75520}
.fit-points{min-width:0}
.fit-point{display:flex;gap:24px;padding:26px 0;border-top:1px solid var(--line)}
.fit-point:first-child{padding-top:0;border-top:0}.fit-point:last-child{padding-bottom:0}
.fit-index{font:12px var(--mono);color:#ac5728;padding-top:5px}
.fit-point h3{font-size:23px;line-height:1.3;letter-spacing:-.035em;font-weight:600;margin-bottom:12px}
.fit-point p{font-size:16px;line-height:1.8;color:var(--muted);max-width:495px}
.fit-signoff{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-top:28px;margin-top:44px;border-top:1px solid var(--line)}
.fit-signoff>span:first-child{font-size:18px;letter-spacing:-.025em;font-weight:500}
.fit-signoff>span:last-child{font-size:13px;color:#70838d}.fit-signoff strong{font-weight:500;color:var(--ink)}
@media(max-width:1100px){.desktop-nav{gap:19px;margin-right:0}.fit-layout{gap:48px;grid-template-columns:1fr 1.15fr}.fit-intro h2{font-size:39px}.fit-point{gap:19px}.fit-point h3{font-size:21px}}
@media(min-width:851px) and (max-width:1000px){.nav-cta{display:none}.desktop-nav{gap:30px}}
@media(max-width:850px){.fit-layout{grid-template-columns:1fr;gap:39px}.fit-intro>p:not(.eyebrow){max-width:600px}.fit-intro h2{font-size:44px}.fit-intro>.text-link{margin-top:21px}.fit-point:first-child{border-top:1px solid var(--line);padding-top:26px}.fit-point p{max-width:none}.fit-point h3{font-size:24px}.fit-signoff{gap:20px;margin-top:33px}.fit-signoff>span:first-child{font-size:17px}}
@media(max-width:620px){.fit-layout{gap:30px}.fit-intro h2{font-size:37px}.fit-intro h2>span{text-underline-offset:7px}.fit-intro>p:not(.eyebrow){margin-top:25px;font-size:16px}.fit-intro>.text-link{font-size:13px;gap:12px}.fit-point{gap:17px;padding:25px 0}.fit-point h3{font-size:22px;line-height:1.3}.fit-point p{font-size:16px}.fit-index{font-size:11px}.fit-signoff{flex-direction:column;align-items:flex-start;gap:10px;padding-top:23px;margin-top:29px}.fit-signoff>span:first-child{font-size:17px}.fit-signoff>span:last-child{font-size:12px}.about-copy>p.about-statement{font-size:17px}}
@media(max-width:370px){.fit-intro h2{font-size:33px}.fit-intro>.text-link{font-size:12px}.fit-point h3{font-size:21px}}
/* Customer references are visible near the introduction; software has its own context. */
.trust-strip{border-bottom:0;padding:35px 0 16px}
.trust-inner>p{font-size:14px;line-height:1.7;max-width:160px;white-space:normal}
.client-name{gap:12px}.client-name strong{font-size:22px;color:var(--ink)}
.client-name img,.client-logos .client-name img:first-child{width:56px;height:60px;filter:none;opacity:1;mix-blend-mode:normal}
.client-wordmark{color:var(--ink);font-size:21px}
.testimonials-section{padding:26px 0 67px;border-bottom:1px solid var(--line)}
.testimonials-section .section-heading{margin-bottom:26px;align-items:center}
.testimonials-section .section-heading h2{font-size:30px;letter-spacing:-.035em}
.testimonials-section .source-link{font-size:12px;padding:0;margin-top:0}
.quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.quote{padding-top:20px}.quote+.quote{margin-top:0}
.quote-mark{height:34px;font-size:46px}
.quote blockquote{font-size:21px;line-height:1.5;margin-bottom:24px;min-height:95px;letter-spacing:-.025em}
.quote figcaption{gap:13px}.quote figcaption img{filter:none;opacity:1;width:48px;height:48px}
.quote figcaption strong{font-size:14px}.quote figcaption span{font-size:12px}
.software-section{padding:69px 0 60px;border-top:1px solid var(--line);background:#fbfcfd}
.software-intro{text-align:center;max-width:940px;margin:0 auto}
.software-intro h2{font-size:clamp(35px,3.7vw,49px);line-height:1.2;letter-spacing:-.04em}
.software-intro h2>span{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:9px;text-decoration-thickness:2px}
.software-intro p{max-width:635px;font-size:16px;line-height:1.85;color:var(--muted);margin:26px auto 0}
.software-logos{overflow:hidden;margin-top:43px;padding:28px 0;border-top:1px solid #e5eaed;border-bottom:1px solid #e5eaed}
.software-logo-track{display:flex;width:max-content;animation:software-marquee 32s linear infinite;will-change:transform}
.software-logo-group{display:flex;align-items:center;gap:52px;padding-right:52px}
.software-logo{display:flex;align-items:center;justify-content:center;width:190px;height:100px;flex:0 0 190px;overflow:hidden;border-radius:3px;transition:opacity .2s,background .2s}
.software-logo:hover{opacity:.72;background:var(--white)}
.software-logo img{display:block;width:100%;height:100%;object-fit:contain;flex-shrink:0}
.software-logos:hover .software-logo-track,.software-logos:focus-within .software-logo-track{animation-play-state:paused}
@keyframes software-marquee{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.software-note{text-align:center;margin-top:20px;font-size:13px;color:#71858f}
@media(max-width:1100px){.client-name strong{font-size:19px}.client-wordmark{font-size:18px}.client-name{gap:8px}.client-name img,.client-logos .client-name img:first-child{width:43px;height:47px}.client-logos{gap:22px}.trust-inner>p{max-width:145px;font-size:13px}.quote-grid{gap:25px}.quote blockquote{font-size:20px;min-height:120px}.software-logo-group{gap:38px;padding-right:38px}.software-logo{width:170px;flex-basis:170px;height:92px}}
@media(max-width:850px){.client-logos{gap:22px}.client-wordmark{display:none}.trust-inner>p{font-size:13px}.quote-grid{gap:22px}.quote blockquote{font-size:19px;min-height:140px}.quote figcaption{gap:10px}.quote figcaption img{width:40px;height:44px}.quote figcaption span{font-size:11px}.testimonials-section .section-heading{display:flex;gap:25px}.testimonials-section .section-heading h2{font-size:29px}.testimonials-section .source-link{font-size:11px;white-space:nowrap}.software-intro h2{font-size:39px}.software-logos{padding:24px 0}.software-logo-group{gap:30px;padding-right:30px}.software-logo{width:155px;flex-basis:155px;height:86px}}
@media(max-width:620px){.trust-strip{padding:28px 0 14px}.trust-inner{gap:15px}.trust-inner>p{max-width:none;font-size:13px}.client-logos{gap:15px}.client-name{gap:7px}.client-name strong{font-size:16px}.client-name img,.client-logos .client-name img:first-child{width:33px;height:40px}.testimonials-section{padding:24px 0 54px}.testimonials-section .section-heading{display:block;margin-bottom:22px}.testimonials-section .section-heading h2{font-size:31px}.testimonials-section .source-link{display:inline-flex;font-size:12px;margin-top:14px}.quote-grid{grid-template-columns:1fr;gap:26px}.quote{padding-top:19px}.quote blockquote{font-size:22px;min-height:0;max-width:none;margin-bottom:21px}.quote figcaption img{width:46px;height:46px}.quote figcaption{gap:14px}.quote figcaption span{font-size:12px}.software-section{padding:56px 0 43px}.software-intro{text-align:left}.software-intro h2{font-size:33px;line-height:1.23}.software-intro h2>span{text-underline-offset:6px}.software-intro p{margin-top:24px;font-size:16px}.software-logos{margin-top:27px;padding:22px 0}.software-logo-track{animation-duration:25s}.software-logo-group{gap:25px;padding-right:25px}.software-logo{width:145px;flex-basis:145px;height:82px}.software-note{font-size:12px;margin-top:18px}}
@media(max-width:370px){.client-name strong{font-size:14px}.client-name img,.client-logos .client-name img:first-child{width:27px;height:35px}.client-logos{gap:12px}.software-intro h2{font-size:30px}.quote blockquote{font-size:21px}.software-logos{gap:18px 23px}}
/* Personal photographs in the approach and contact sections. */
.about-person{border-left:2px solid var(--accent);padding-left:20px}
.floris-photo{min-width:0;margin:0}
.floris-photo>img{display:block;width:100%;height:auto;aspect-ratio:2048/1365;object-fit:cover}
.approach-story,.approach-details{min-width:0}
.approach-details .location-note{margin-top:40px}
.contact-inner{display:grid;grid-template-columns:1fr 1.03fr;gap:78px;align-items:center}
.contact-copy{min-width:0}
.contact-copy>p:not(.eyebrow){max-width:470px}
.contact-copy .contact-actions{min-width:0;max-width:340px;align-items:flex-start;padding:0;margin:29px 0 0}
.contact-copy .contact-duration{align-self:center}
.floris-photo--contact>img{object-position:44% 32%}
.floris-photo--contact figcaption{display:flex;flex-direction:column;gap:5px;padding:20px 0 0;border-bottom:0;color:var(--ink)}
.floris-photo--contact figcaption strong{font-size:16px;font-weight:600;line-height:1.5}
.floris-photo--contact figcaption span{font-size:13px;line-height:1.8;color:#637782}
@media(max-width:1100px){.contact-inner{grid-template-columns:1fr 1fr;gap:43px}.contact-section h2{font-size:48px}}
@media(max-width:850px){.contact-inner{grid-template-columns:1fr;gap:42px}.contact-copy{max-width:579px;width:100%;margin-inline:auto}.floris-photo--contact{width:100%;max-width:579px;margin-inline:auto}.contact-section h2{font-size:52px}}
@media(max-width:620px){.approach-details .location-note{margin-top:30px}.contact-inner{display:grid;gap:34px}.contact-section h2{font-size:46px}.contact-copy .contact-actions{max-width:340px}.floris-photo--contact figcaption{padding-top:16px}}
/* Personal motivation, halfway through the homepage. */
.why-section{background:var(--navy);color:#fff}
.why-layout{display:grid;grid-template-columns:1fr 1.03fr;align-items:center;gap:78px}
.why-copy{min-width:0}.why-copy h2{font-size:clamp(36px,3.6vw,49px);line-height:1.15;letter-spacing:-.045em}
.why-copy>p:not(.eyebrow){font-size:16px;line-height:1.85;color:#afc6d0;margin-top:20px;max-width:520px}
.why-copy>p.why-lead{font-size:21px;font-weight:500;line-height:1.5;color:#fff;margin-top:24px;letter-spacing:-.025em}
.why-copy>p.why-principle{border-left:2px solid var(--accent);padding-left:18px;color:#fff;font-size:19px;line-height:1.6;margin-top:25px}
.why-copy>.text-link{margin-top:27px}
.floris-photo--why>img{object-position:28% 35%}
.floris-photo--why figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:19px;margin-top:0;border-top:2px solid var(--accent);font-size:13px;line-height:1.7;color:#afc6d0}
.floris-photo--why figcaption strong{color:#fff;font-weight:600}
@media(max-width:1100px){.why-layout{gap:43px;grid-template-columns:1fr 1fr}.why-copy h2{font-size:38px}}
@media(max-width:850px){.why-layout{grid-template-columns:1fr;gap:38px}.why-copy>p:not(.eyebrow){max-width:660px}.floris-photo--why{max-width:579px;width:100%;margin-inline:auto}}
@media(max-width:620px){.why-copy h2{font-size:36px}.why-copy>p.why-lead{font-size:20px}.why-copy>p.why-principle{font-size:18px}.floris-photo--why figcaption{flex-wrap:wrap;gap:4px 16px;font-size:12px}}
@media print{.site-header{position:static}.hero,.approach-section,.site-footer{print-color-adjust:exact;-webkit-print-color-adjust:exact}.menu-toggle,.hero-visual,.source-link{display:none}.hero-grid{display:block;min-height:0}.section{padding:30px 0}.reveal{opacity:1!important;transform:none!important}}

/* Shared navigation to the full expertise and company pages. */
.nav-expertise{position:relative}.nav-expertise summary{list-style:none;cursor:pointer;display:flex;gap:8px;align-items:center;font-size:14px;color:#fff;white-space:nowrap;padding:12px 0}.nav-expertise summary::-webkit-details-marker{display:none}.nav-expertise summary>span{font-size:16px;color:#f6a06a;transition:transform .2s}.nav-expertise[open] summary>span{transform:rotate(180deg)}
.expertise-menu{position:absolute;top:100%;left:-20px;min-width:250px;padding:10px;background:var(--navy-deep);border:1px solid #3c5966;box-shadow:0 16px 30px #001b2833;z-index:30}
.desktop-nav .expertise-menu a{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;font-size:14px;line-height:1.5;color:#e6eff3;white-space:normal}
.desktop-nav .expertise-menu a:hover,.desktop-nav .expertise-menu a[aria-current="page"]{background:#173f51;color:#ffad79}.desktop-nav .expertise-menu a:after{display:none}.desktop-nav .expertise-menu .expertise-overview{border-top:1px solid #3c5966;margin-top:6px;color:#afc6d0}
.nav-expertise summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.mobile-nav{max-height:calc(100dvh - 80px);overflow-y:auto}.mobile-nav .mobile-expertise{font-size:14px;padding-left:18px;color:#e5be9f}.about-detail-link{margin-top:25px}.desktop-nav>a[aria-current="page"]{color:#ffad79}

.case-detail-link{margin-top:25px;font-size:14px}.method-detail-link{margin-top:25px;font-size:14px}

/* A page-preserving language link, available at every viewport size. */
.language-switch{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:54px;min-height:44px;color:#fff;font-size:13px;line-height:1;flex-shrink:0;border:1px solid #607b8866;padding:9px;border-radius:2px;transition:border-color .2s,background .2s}.language-flag{display:block;width:22px;height:16px;object-fit:cover}.language-switch:hover{background:#173f51;border-color:var(--accent)}
@media(min-width:1101px){.nav-shell{gap:22px}.desktop-nav{margin-right:0;gap:22px}.nav-cta{font-size:12px}}
@media(max-width:620px){.nav-shell{gap:10px}.language-switch{margin-left:auto;min-width:52px}.menu-toggle{flex-shrink:0}}
@media(max-width:370px){.nav-shell>.brand{width:150px}.nav-shell>.brand img{width:211px;height:211px;left:-30px;top:-90px}.nav-shell{gap:8px}.language-switch{gap:5px;min-width:48px;padding-inline:6px}}

@media(min-width:621px) and (max-width:1100px){.nav-cta{display:none}}
@media(max-width:850px){.desktop-nav{display:none}.menu-toggle{display:flex;flex-shrink:0}.language-switch{margin-left:auto}.nav-shell{gap:12px}}
@media(max-width:370px){.nav-shell{gap:8px}}

/* Technology as a working business asset. */
.technology-section{background:var(--navy);color:#fff;border-top:1px solid #365463}
.technology-heading{max-width:850px;margin-bottom:48px}.technology-heading h2{font-size:clamp(36px,4.6vw,64px);line-height:1.12;letter-spacing:-.045em;font-weight:500;color:#fff}.technology-heading>p:last-child{max-width:630px;font-size:18px;line-height:1.85;color:#b7cdd7;margin-top:25px}
.technology-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:80px;align-items:start}.technology-tools article{padding:26px 0;border-top:1px solid #426170}.technology-tools .mono{font-size:12px;letter-spacing:.045em;color:#ffa669}.technology-tools h3{font-size:32px;line-height:1.3;letter-spacing:-.035em;font-weight:500;margin-top:12px}.technology-tools p{font-size:16px;line-height:1.85;color:#b7cdd7;margin-top:14px}.technology-tools .text-link{font-size:14px;margin-top:18px}.technology-result{min-width:0}.technology-result figure{margin:0}.technology-result img{display:block;width:100%;height:auto}.technology-result figcaption{font-size:12px;line-height:1.8;color:#a9c0cb;padding:16px 0;border-bottom:1px solid #426170}.asset-statement{margin-top:30px;border-left:2px solid var(--accent);padding-left:24px}.asset-statement h3{font-size:27px;line-height:1.35;font-weight:500;letter-spacing:-.025em}.asset-statement p{font-size:16px;line-height:1.9;margin-top:15px;color:#b7cdd7}
@media(max-width:1100px){.technology-layout{gap:42px}.technology-tools h3{font-size:29px}.asset-statement h3{font-size:24px}}
@media(max-width:850px){.technology-layout{grid-template-columns:1fr;gap:30px}.technology-heading{margin-bottom:34px}.technology-result{max-width:600px;margin-inline:auto;width:100%}.technology-tools article{padding-block:24px}.technology-tools p{max-width:650px}}
@media(max-width:620px){.technology-heading>p:last-child{font-size:16px;margin-top:21px}.technology-tools h3{font-size:28px}.asset-statement{padding-left:20px}.technology-result figcaption{font-size:12px}.technology-tools .mono{font-size:12px}}
@media(min-width:851px){
  .technology-section{padding-block:76px}
  .technology-section>.container{display:grid;grid-template-columns:1fr 1.12fr;column-gap:clamp(42px,5.5vw,80px);row-gap:28px;align-items:start}
  .technology-heading{grid-column:1;grid-row:1;margin-bottom:0;max-width:none}
  .technology-heading h2{font-size:clamp(36px,4.2vw,56px)}
  .technology-layout{display:contents}
  .technology-tools{grid-column:1;grid-row:2}
  .technology-tools article{padding-block:20px}.technology-tools h3{margin-top:8px}.technology-tools p{line-height:1.75;margin-top:10px}.technology-tools .text-link{margin-top:13px}
  .technology-result{grid-column:2;grid-row:1 / span 2}.asset-statement{margin-top:24px}
}

/* Original wide Blokaansluiting.nl logo, without recolouring. */
.client-logo-wide{display:inline-flex;align-items:center;flex-shrink:0;width:220px}.client-logos .client-logo-wide img,.client-logos .client-logo-wide img:first-child{width:100%;max-width:none;height:auto;object-fit:contain;filter:none;opacity:1;mix-blend-mode:normal}.case-art-top>.case-brand-logo{display:block;width:235px;max-width:60%;height:auto;object-fit:contain;background:#fff;padding:5px}
@media(max-width:1100px){.client-logo-wide{width:190px}.client-logos{flex-wrap:wrap}}
@media(max-width:620px){.client-logo-wide{flex-basis:100%;justify-content:center;margin-top:5px}.client-logos .client-logo-wide img,.client-logos .client-logo-wide img:first-child{width:220px;max-width:100%}.case-art-top>.case-brand-logo{max-width:62%;padding:4px}}

/* Unbranded schematic case visuals. */
.case-art-top.case-art-top-neutral{justify-content:flex-end;min-height:32px}.case-art-top.case-art-top-neutral>.mono{font:10px var(--mono);letter-spacing:.04em;max-width:none;margin:0}.case-category.case-category-neutral{justify-content:flex-end}

/* Trace one complete route at a time, sharing attention across every node. */
.hero-connections .route-wire{stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;opacity:0;transition:opacity .2s}
.hero-connections .route-wire.is-active{opacity:1;stroke-dashoffset:0;transition:stroke-dashoffset .9s ease,opacity .2s}
.flow-canvas .source-node,.flow-canvas .output-node,.flow-canvas .foundation-node{transition:background-color .35s,border-color .35s,color .35s}
.flow-canvas .output-three{background:var(--navy);border-color:#7794a05c;color:#d3e4ea;font-weight:400}
.flow-canvas .source-node.is-active{border-color:var(--accent);background:#234351;color:#fff}.flow-canvas .source-node.is-active svg{color:var(--accent)}
.flow-canvas .foundation-node.is-active{border-color:var(--accent);background:#31474c}.flow-canvas .foundation-node.is-active .foundation-ticks i{background:var(--accent)}
.flow-canvas .output-node.is-active{background:var(--accent);border-color:var(--accent);color:var(--navy);font-weight:600}

@media(prefers-reduced-motion:reduce){.hero-connections .route-wire{display:none}}

/* Legal links stay visible at every screen size. */
.footer-bottom{flex-wrap:wrap}.footer-legal{display:flex;gap:24px;flex-wrap:wrap}.footer-legal a:hover{color:var(--orange,#f27626)}
@media(max-width:620px){.footer-legal{order:3;width:100%;gap:12px 24px}.footer-bottom>a{margin-left:auto}}

.case-reporting{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.case-reporting .case-body{padding-top:0}.case-art-reporting{background:var(--navy);color:#c1d2d9}.reporting-layers{padding:25px 12px;display:flex;flex-direction:column;align-items:stretch}.reporting-layer{display:flex;align-items:center;gap:16px;border:1px solid #7895a257;padding:17px 22px}.reporting-layer svg{width:25px;height:25px;flex-shrink:0;fill:none;stroke:currentColor}.reporting-layer strong{font-size:16px;font-weight:500;display:block}.reporting-layer span{display:block;font-size:13px;margin-top:5px;color:#a9c1cc}.reporting-layer-built{border-color:var(--accent);background:#f2762612}.reporting-layer-built svg{color:var(--accent)}.reporting-layer-built strong{color:#fff}.reporting-connector{text-align:center;font-size:25px;line-height:35px;color:var(--accent)}
@media(max-width:850px){.case-reporting{display:block}.case-reporting .case-body{padding-top:23px}.reporting-layers{padding-inline:0}.reporting-layer{padding:15px}.reporting-layer strong{font-size:15px}}

/* Four areas of expertise, with room for each service. */
@media(min-width:851px){.expertise .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expertise .service{padding:36px 34px;border-left:0;border-bottom:1px solid var(--line)}.expertise .service:nth-child(odd){padding-left:0}.expertise .service:nth-child(even){border-left:1px solid var(--line)}.expertise .service:nth-last-child(-n+2){border-bottom:0}.expertise .service h3,.expertise .service .service-lead{min-height:0}.expertise .service h3{font-size:30px;white-space:normal}}

/* ===== ADDED (not in original celsiusbi.com): contact form ===== */
.contact-form-section{background:var(--paper);padding:80px 0;border-top:1px solid var(--line)}
.contact-form-inner{display:flex;justify-content:center}
.contact-form-card{width:100%;max-width:640px;background:#fff;border:1px solid var(--line);border-radius:4px;padding:48px 44px}
.contact-form-card .eyebrow{margin-bottom:16px}
.contact-form-card h2{font-size:clamp(28px,3vw,36px);line-height:1.16}
.contact-form-intro{margin-top:14px;color:var(--muted);font-size:15px;line-height:1.75}
.contact-form{display:flex;flex-direction:column;gap:22px;margin-top:32px}
.contact-form-field{display:flex;flex-direction:column;gap:8px}
.contact-form-field label{font:600 13px var(--sans);color:var(--navy)}
.contact-form-field input,.contact-form-field textarea{font:15px/1.5 var(--sans);padding:14px 16px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);width:100%}
.contact-form-field textarea{resize:vertical;min-height:120px}
.contact-form-field input:focus-visible,.contact-form-field textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(242,118,38,.16)}
.contact-form-field input[aria-invalid="true"],.contact-form-field textarea[aria-invalid="true"]{border-color:#b3261e}
.contact-form-error{font-size:12px;color:#b3261e}
.contact-form-status--error{font-size:13px;line-height:1.6;color:#8c1d13;background:#fdecea;border:1px solid #f3c1ba;border-radius:3px;padding:13px 15px}
.contact-form button[type="submit"]{align-self:flex-start}
.contact-form button[type="submit"]:disabled{opacity:.6;cursor:not-allowed;transform:none}
.contact-form-card--status{text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;padding:12px 0}
.contact-form-status-icon{width:46px;height:46px;color:var(--accent);stroke-width:1.75}
.contact-form-card--status h2{font-size:clamp(26px,2.8vw,32px)}
.contact-form-card--status p{color:var(--muted);font-size:15px;max-width:420px}
.contact-form-card--status .button{margin-top:10px}
@media(max-width:620px){
  .contact-form-section{padding:52px 0}
  .contact-form-card{padding:30px 22px}
  .contact-form button[type="submit"]{align-self:stretch}
}
/* ===== END ADDED ===== */
@media(prefers-reduced-motion:reduce){.software-logos{overflow-x:auto}.software-logo-track{transform:none}.software-logo-group[aria-hidden="true"]{display:none}}
/* Hide the wide Blokaansluiting.nl logo on tablet and mobile */
@media(max-width:850px){.client-logo-wide{display:none}}
