@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.block{display:block}}:root{--navy-950:#061326;--navy-900:#091b33;--blue:#1669f2;--cyan:#1ad6e8;--ink:#0c1c30;--slate:#526176;--mist:#f2f6fa;--line:#dce5ee;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--white);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{z-index:10;background:#061326eb;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;height:84px;padding:0 clamp(24px,6vw,96px);display:flex;position:absolute;top:0;left:0;right:0}.brand{align-items:center;gap:12px;display:inline-flex}.logo-frame{width:270px;height:82px;display:block;position:relative;overflow:hidden}.logo-frame img{width:270px;height:auto;position:absolute;top:-36px;left:0}.compact-logo{grid-template-rows:52px 13px;grid-template-columns:112px 1px 118px;align-items:center;width:241px;height:68px;display:grid;position:relative}.compact-logo:after{content:"";background:#ffffff4d;grid-area:1/2;justify-self:center;width:1px;height:38px}.compact-psi{letter-spacing:-.08em;grid-area:1/1;align-items:center;height:52px;display:flex}.compact-psi>b{color:#0f5da8;font-family:Arial Black,Arial Narrow,Arial,sans-serif;font-size:45px;font-style:italic;font-weight:900;line-height:1;position:relative}.compact-psi>b:nth-child(2){color:#a8aaad}.compact-psi .psi-i{color:#0f5da8;margin-left:4px}.compact-psi .psi-i i{background:#ef233c;border-radius:1px;width:13px;height:9px;position:absolute;top:-5px;left:11px}.compact-name{flex-direction:column;grid-area:1/3;justify-content:center;align-items:flex-start;padding-left:13px;display:flex}.compact-name strong{color:#1d6fc3;letter-spacing:.035em;font-size:16px;line-height:1}.compact-name b{color:#ef3340;letter-spacing:.24em;margin-top:6px;font-size:11px;line-height:1}.compact-logo>small{color:#a6bad0;letter-spacing:.15em;text-transform:uppercase;grid-area:2/1/auto/-1;padding-left:4px;font-size:6px;font-weight:700}.brand-mark{gap:3px;width:38px;height:34px;display:inline-flex;transform:skew(-13deg)}.brand-mark span{background:var(--cyan);border-radius:2px;width:10px;display:block}.brand-mark span:first-child{height:18px;margin-top:16px}.brand-mark span:nth-child(2){background:#2480ff;height:26px;margin-top:8px}.brand-mark span:last-child{background:#69e8f4;height:34px}.brand-copy{color:#fff;flex-direction:column;line-height:1;display:flex}.brand-copy strong{letter-spacing:.12em;font-size:22px}.brand-copy small{letter-spacing:.16em;text-transform:uppercase;margin-top:5px;font-size:8px}nav{align-items:center;gap:clamp(22px,3vw,44px);display:flex}nav>a{color:#c6d1df;font-size:13px;font-weight:600}nav>a:hover{color:#fff}.nav-cta{border:1px solid #ffffff4d;border-radius:3px;align-items:center;gap:10px;padding:11px 16px;display:flex}.hero{background-color:var(--navy-950);color:#fff;background-image:url(/psi-hero-physical-intelligence.png);background-position:50%;background-size:cover;min-height:780px;padding:190px clamp(24px,7vw,112px) 92px;position:relative;overflow:hidden}.hero:before{content:"";background:linear-gradient(90deg,#030d1dfa 0%,#030d1de0 36%,#030d1d59 64%,#030d1d14 100%);position:absolute;inset:0}.hero-grid{background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 55%);mask-image:linear-gradient(90deg,#000,#0000 55%)}.hero-glow{display:none}.hero-content{z-index:2;max-width:760px;position:relative}.eyebrow,.kicker{color:#2d73c7;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:800}.eyebrow{color:var(--cyan);align-items:center;gap:12px;display:flex}.eyebrow span{background:var(--cyan);width:30px;height:1px}h1{letter-spacing:-.045em;max-width:900px;margin:28px 0;font-size:clamp(48px,6vw,80px);line-height:1.01}h1 span{color:#8fb9dd;font-weight:400;display:block}.hero-lead{color:#b8c7d8;max-width:670px;font-size:19px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:40px;display:flex}.button{letter-spacing:.02em;border-radius:3px;justify-content:center;align-items:center;gap:14px;min-height:54px;padding:0 24px;font-size:13px;font-weight:800;transition:all .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--blue);box-shadow:0 12px 38px #1669f240}.button.secondary{color:#dce6ef;border:1px solid #ffffff40}.hero-proof{color:#8fa1b6;align-items:center;gap:18px;max-width:460px;margin-top:70px;font-size:12px;display:flex}.hero-proof strong{color:#fff}.proof-line{background:var(--cyan);width:2px;height:34px}.section{padding:110px clamp(24px,7vw,112px)}.section-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:60px;margin-bottom:56px;display:grid}h2{letter-spacing:-.035em;margin:16px 0 0;font-size:clamp(36px,4.2vw,58px);line-height:1.08}.section-heading>p{color:var(--slate);max-width:540px;margin:0;font-size:16px;line-height:1.75}.pillar-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.pillar-card{background:#fff;min-height:510px;position:relative;overflow:hidden}.pillar-image{height:220px;position:relative;overflow:hidden}.pillar-image:after{content:"";background:linear-gradient(#0000 45%,#051427b8);position:absolute;inset:0}.pillar-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.pillar-card:hover .pillar-image img{transform:scale(1.035)}.pillar-number{color:#fff;letter-spacing:.14em;z-index:1;font-size:11px;font-weight:800;position:absolute;bottom:18px;left:28px}.pillar-body{padding:30px 34px 36px}.pillar-icon{width:52px;height:46px;margin:0 0 22px;position:relative}.pillar-icon span{border:2px solid var(--blue);border-radius:50%;width:42px;height:42px;position:absolute;top:0;left:0}.pillar-icon span:last-child{border-color:var(--cyan);width:24px;height:24px;top:22px;left:27px}.pillar-card.violet .pillar-icon span:last-child{border-color:#7667ef}.pillar-card h3{margin:0 0 14px;font-size:29px}.pillar-card p{color:var(--slate);margin:0;font-size:14px;line-height:1.75}.pillar-outcome{border-top:1px solid var(--line);color:#173f68;margin-top:20px;padding-top:16px;font-size:12px;line-height:1.55;display:block}.pillar-card:after{background:var(--blue);content:"";width:0;height:3px;transition:width .35s;position:absolute;bottom:0;left:0}.pillar-card:hover:after{width:100%}.solutions{background:var(--navy-900);color:#fff;grid-template-columns:.82fr 1.18fr;gap:9vw;display:grid}.kicker.light{color:var(--cyan)}.solutions-copy>p:not(.kicker){color:#9fb0c2;margin:28px 0;line-height:1.75}.technology-stack{flex-wrap:wrap;gap:8px;margin:0 0 32px;display:flex}.technology-stack span{color:#a7c8d7;letter-spacing:.05em;border:1px solid #1ad6e83d;border-radius:100px;padding:8px 12px;font-size:10px;font-weight:700}.text-link{color:var(--cyan);align-items:center;gap:10px;font-size:13px;font-weight:800;display:inline-flex}.architecture-label{color:#7189a2;letter-spacing:.16em;text-transform:uppercase;margin:0 0 15px;font-size:10px;font-weight:800}.flow-heading{border-top:1px solid #ffffff21;border-bottom:1px solid #ffffff21;grid-template-columns:repeat(4,1fr);padding:18px 0;display:grid}.flow-heading div{color:var(--cyan);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;font-size:11px;display:flex}.flow-heading svg{color:#48647e;width:14px;height:14px}.capability{border-bottom:1px solid #ffffff21;grid-template-columns:34px 1fr;align-items:start;gap:18px;min-height:118px;padding:22px 0;transition:padding .25s;display:grid}.capability:hover{padding-left:10px}.capability>span{color:var(--cyan);padding-top:5px;font-size:10px}.capability h3{margin:0 0 7px;font-size:18px}.capability p{color:#91a4b8;margin:0;font-size:13px;line-height:1.55}.engineering-stack{border-bottom:1px solid var(--line);background:#f7f9fb}.stack-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:60px;margin-bottom:52px;display:grid}.stack-heading>p{color:var(--slate);margin:0;line-height:1.75}.stack-layout{grid-template-columns:1fr 280px;align-items:start;gap:4vw;display:grid}.stack-layers{border:1px solid var(--line);background:#fff}.stack-layer{grid-template-columns:112px 1fr;min-height:170px;display:grid;position:relative}.stack-layer:not(:last-child){border-bottom:1px solid var(--line)}.layer-index{color:#fff;background:#0b2039;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex}.layer-index span{color:var(--cyan);letter-spacing:.12em;font-size:10px}.layer-index strong{letter-spacing:.12em;text-transform:uppercase;margin-top:10px;font-size:10px}.layer-content{padding:25px 30px}.layer-content h3{letter-spacing:.05em;text-transform:uppercase;margin:0 0 13px;font-size:18px}.layer-terms{flex-wrap:wrap;gap:6px;display:flex}.layer-terms span{color:#496074;border:1px solid #d7e3eb;padding:6px 8px;font-size:9px;font-weight:700}.layer-content code{color:#167896;margin-top:13px;font-size:11px;display:block}.layer-content>p{color:#64778a;margin:15px 0 0;font-size:12px;line-height:1.6}.layer-arrow{background:var(--cyan);color:#072039;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;display:flex;position:absolute;bottom:-13px;left:43px}.mathematical-loop{background:var(--navy-950);color:#fff;padding:28px;position:sticky;top:24px}.math-flow{flex-direction:column;align-items:center;gap:8px;margin:30px 0;display:flex}.math-flow span{letter-spacing:.08em;text-transform:uppercase;border:1px solid #fff3;padding:9px 12px;font-size:10px}.math-flow small{color:#6fbecf;font-size:9px}.math-flow strong{color:#fff;font-family:Georgia,serif;font-size:22px;font-weight:400}.mathematical-loop>code{color:#a9c4d6;text-align:center;border-top:1px solid #ffffff24;padding-top:18px;font-family:Georgia,serif;font-size:12px;display:block}.engineering-statement{border-left:3px solid var(--cyan);color:#27465f;margin:52px 0 0;padding:6px 0 6px 28px;font-size:clamp(22px,2.5vw,34px);font-weight:300}.engineering-statement strong{color:#0f2a44;display:block}.stack-layout{grid-template-columns:1fr 320px}.math-flow{margin:26px 0}.math-flow strong{font-family:Times New Roman,Georgia,serif;font-size:23px}.math-flow sub,.math-flow sup,.equation sub,.equation sup{font-size:.62em}.equation-set{border-top:1px solid #ffffff24;padding-top:18px}.equation-set>div:not(:last-child){border-bottom:1px solid #ffffff17;margin-bottom:14px;padding-bottom:14px}.equation{color:#e8f5fb;text-align:center;margin:0 0 6px;font-family:Times New Roman,Georgia,serif;font-size:14px;line-height:1.5}.equation-set small{color:#8ea9bb;font-size:9px;line-height:1.5;display:block}.physical-core{background:#fff;grid-template-columns:.9fr .62fr 1.28fr .6fr;gap:3vw;display:grid}.core-intro>p:not(.kicker){color:var(--slate);max-width:600px;line-height:1.75}.core-chain{color:#38617f;letter-spacing:.07em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:6px;margin-top:28px;font-size:9px;font-weight:800;display:flex}.core-chain svg{color:#179bb5;width:12px;height:12px}.core-engines{border-left:1px solid var(--line)}.core-engines>div{border-bottom:1px solid var(--line);padding:14px 18px}.core-engines span{color:#1683ae;margin-bottom:5px;font-size:8px;display:block}.core-engines strong{color:#29465e;letter-spacing:.05em;text-transform:uppercase;font-size:10px}.core-capabilities{border-top:1px solid var(--line)}.core-capabilities>article{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr;align-items:start;gap:14px;padding:13px 0;display:grid}.core-capabilities>article>span{color:#1683ae;padding-top:3px;font-size:9px}.core-capabilities h3{margin:0 0 5px;font-size:12px}.core-capabilities p{color:#657789;margin:0;font-size:10px;line-height:1.5}.core-outcome{background:var(--mist);border-left:3px solid var(--cyan);align-self:center;padding:28px}.core-outcome>p{color:#167296;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;font-size:10px;font-weight:900}.core-outcome ul{color:#42546a;gap:14px;margin:0;padding:0;font-size:12px;line-height:1.5;list-style:none;display:grid}.core-outcome li{padding-left:16px;position:relative}.core-outcome li:before{background:var(--cyan);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:7px;left:0}.urbanflow{background:#eaf2f8;grid-template-columns:.78fr 1.22fr;align-items:center;gap:6vw;display:grid;position:relative}.urbanflow:before{background:linear-gradient(180deg,var(--cyan),var(--blue));content:"";width:5px;position:absolute;inset:0 auto 0 0}.urbanflow-content{grid-template-columns:118px 1fr;gap:30px;display:grid}.urbanflow-badge{color:#2168b3;letter-spacing:.12em;text-align:center;text-transform:uppercase;border:1px solid #b9cede;border-radius:50%;justify-content:center;align-items:center;width:118px;height:118px;font-size:10px;font-weight:800;display:flex}.urbanflow-copy h2{font-size:clamp(32px,3.4vw,48px)}.urbanflow-copy>p:last-child{color:var(--slate);max-width:720px;line-height:1.7}.urbanflow-signature{color:#38536e;grid-column:2;gap:12px;font-size:14px;display:flex}.urbanflow-signature strong:nth-child(3),.urbanflow-signature strong:nth-child(4){color:#1265d9}.urbanflow-visual{background:#fff;border:1px solid #cfdae4;transition:transform .3s,box-shadow .3s;display:block;position:relative;overflow:hidden;box-shadow:0 24px 60px #11355724}.urbanflow-visual:hover{transform:translateY(-4px);box-shadow:0 30px 72px #11355733}.urbanflow-visual img{width:100%;height:auto;display:block}.urbanflow-visual span{color:#fff;letter-spacing:.05em;text-transform:uppercase;background:#051b39eb;align-items:center;gap:9px;padding:13px 17px;font-size:11px;font-weight:800;display:flex;position:absolute;bottom:0;right:0}.urbanflow-badge{color:#fff;text-shadow:0 1px 8px #7c2a0059;background:linear-gradient(145deg,#ff9a16,#ff5a00);border-color:#ffb047;font-weight:900;position:relative;box-shadow:0 0 0 8px #ff77001a,0 16px 34px #ff5b0047}.urbanflow-badge:after{content:"";border:1px solid #ffffff8c;border-radius:50%;position:absolute;inset:8px}.urbanflow-architecture{border-top:1px solid #cadbe6;flex-wrap:wrap;align-items:center;gap:7px;margin-top:24px;padding-top:18px;display:flex}.urbanflow-architecture span{color:#274f70;letter-spacing:.04em;text-transform:uppercase;font-size:8px;font-weight:800}.urbanflow-architecture svg{color:#1597b9;width:11px;height:11px}.research{background:#edf3f7;padding-right:0;overflow:hidden}.research-header{grid-template-columns:1.1fr .9fr;align-items:end;gap:7vw;padding-right:clamp(24px,7vw,112px);display:grid}.research-header h2{max-width:820px;margin:14px 0 0;font-size:clamp(34px,4vw,58px)}.research-header>div:last-child>p{color:var(--slate);margin:0 0 20px;line-height:1.75}.research-header small,.research-card-top small,.research-technical>small,.research-problems small{color:#287b9b;letter-spacing:.14em;text-transform:uppercase;font-size:9px;font-weight:900}.research-toolbar{justify-content:space-between;align-items:center;margin:52px 0 20px;padding-right:clamp(24px,7vw,112px);display:flex}.research-toolbar>span{color:#698094;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.research-controls{align-items:center;gap:14px;display:flex}.research-controls button{color:#18557b;cursor:pointer;background:0 0;border:1px solid #b7c9d7;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.research-controls button:disabled{cursor:default;opacity:.32}.research-controls button:focus-visible,.research-track:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.research-controls svg{width:15px;height:15px}.research-controls output{color:#31536d;letter-spacing:.12em;text-align:center;min-width:52px;font-size:10px;font-weight:800}.research-track{overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-color:#8aa9bc transparent;scrollbar-width:thin;gap:24px;padding:0 clamp(24px,7vw,112px) 24px 0;scroll-padding-left:0;display:flex;overflow-x:auto}.research-card{scroll-snap-align:start;background:#fff;border:1px solid #cad8e2;flex:0 0 84%;min-height:710px;padding:42px;box-shadow:0 20px 50px #12375414}.research-card.optimization{background:linear-gradient(135deg,#fff 0%,#f7fafc 70%,#eaf3f7 100%)}.research-card-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:34px;padding-bottom:18px;display:flex}.research-card-top>span{color:#188eb3;font-size:12px;font-weight:900}.research-card.urbanflow .research-card-top small{color:#f06b18}.research-card-grid{grid-template-columns:1.05fr .95fr;gap:5vw;display:grid}.research-name{letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:#176a94!important;font-size:11px!important}.research-copy h3{max-width:680px;margin:18px 0 20px;font-size:clamp(29px,3vw,44px);line-height:1.08}.research-copy>p{color:#53687a;font-size:13px;line-height:1.7}.research-signature{color:#294f6c;flex-wrap:wrap;gap:15px;margin:28px 0 22px;display:flex}.research-signature strong:nth-child(n+3){color:#1265d9}.research-image{border:1px solid #cfdae4;max-width:470px;display:block;position:relative;overflow:hidden}.research-image img{object-fit:cover;object-position:center;width:100%;height:180px;display:block}.research-image span{color:#fff;text-transform:uppercase;background:#051b39eb;align-items:center;gap:8px;padding:9px 12px;font-size:8px;font-weight:800;display:flex;position:absolute;bottom:0;right:0}.research-image svg{width:12px;height:12px}.research-technical{border-left:1px solid var(--line);padding-left:34px}.research-technical ol{counter-reset:stage;margin:20px 0 0;padding:0;list-style:none}.research-technical li{color:#29475d;counter-increment:stage;letter-spacing:.04em;text-transform:uppercase;grid-template-columns:24px 1fr;align-items:center;min-height:38px;font-size:10px;font-weight:800;display:grid}.research-technical li:before{color:#1595b7;content:counter(stage,decimal-leading-zero);font-size:8px}.research-technical li:not(:last-child):after{content:"";background:#9fc6d4;grid-column:1;justify-self:center;width:1px;height:10px}.paradigm-line{color:#fff;text-transform:uppercase;background:#071a30;justify-content:space-between;align-items:center;gap:12px;margin:28px 0 20px;padding:17px 20px;display:flex}.paradigm-line strong{letter-spacing:.1em;font-size:10px}.paradigm-line svg{color:var(--cyan);width:13px;height:13px}.research-caveat{border-left:2px solid var(--cyan);padding-left:14px;font-size:10px!important}.math-evidence{color:#dcecf4;background:#0b2039;grid-template-columns:1.25fr 1fr;gap:7px;margin-top:22px;padding:18px 20px;display:grid}.math-evidence span{color:#86a8b9;letter-spacing:.08em;text-transform:uppercase;font-size:7px}.math-evidence strong{text-align:right;font-family:Georgia,serif;font-size:13px;font-weight:400}.paradigm-grid{border-top:1px solid var(--line);margin-top:22px}.paradigm-grid>div{border-bottom:1px solid var(--line);padding:11px 0}.paradigm-grid strong{color:#176985;letter-spacing:.11em;text-transform:uppercase;font-size:8px}.paradigm-grid p,.research-problems p{color:#617487;margin:5px 0 0;font-size:8px;line-height:1.55}.research-problems{margin-top:16px}.research-principle{border-top:1px solid var(--line);color:#637689;margin-top:28px;padding-top:18px;font-size:8px;line-height:1.6}.research-principle strong{color:#1b5878}.research-principle span{margin-top:7px;font-style:italic;display:inline-block}.sectors{background:var(--mist)}.sectors-intro{grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-bottom:48px;display:grid}.sectors-intro>p{color:var(--slate);max-width:600px;margin:0;line-height:1.75}.domain-grid{grid-template-columns:repeat(6,1fr);gap:14px;display:grid}.domain-card{border:1px solid var(--line);background:#fff;flex-direction:column;grid-column:span 2;min-height:610px;padding:28px;transition:box-shadow .25s,transform .25s;display:flex;position:relative}.domain-card:nth-child(4){grid-column:2/span 2}.domain-card:hover{transform:translateY(-3px);box-shadow:0 18px 44px #143a5c1a}.domain-card header{border-bottom:1px solid var(--line);align-items:center;gap:16px;margin-bottom:22px;padding-bottom:20px;display:flex}.domain-card header span{color:#1696b5;font-size:10px;font-weight:800}.domain-card h3{margin:0;font-size:22px}.domain-card small{color:#7890a4;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:900;display:block}.domain-card p{color:#4d6074;margin:0;font-size:12px;line-height:1.65}.domain-flow,.domain-applications{margin-bottom:20px}.domain-engineering{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:1fr 12px;gap:7px;margin:0 0 20px;padding:14px 0;display:grid}.domain-engineering>div{grid-column:1}.domain-engineering>svg{color:#1597b9;grid-area:auto/2;width:11px;height:11px;transform:rotate(90deg)}.domain-engineering small{color:#1683a2;margin-bottom:2px}.domain-engineering p{font-size:10px;line-height:1.4}.domain-benefit{border-left:2px solid var(--cyan);background:#ecf7fa;margin-top:auto;padding:15px 16px}.domain-benefit small{color:#167790}.domain-benefit p{color:#173f58;font-weight:700}.cta-section{color:#fff;background:#0e5edf;justify-content:space-between;align-items:center;display:flex}.cta-section>div:first-child{max-width:720px}.cta-section h2{font-size:clamp(36px,4vw,56px)}.contact-actions{flex-shrink:0;gap:10px;margin-left:30px;display:flex}.button.bright{color:var(--blue);background:#fff}.button.whatsapp{color:#fff;background:#20c76a;box-shadow:0 12px 28px #044b2638}.button.whatsapp:hover{background:#18b85e}footer{background:var(--navy-950);color:#74879e;grid-template-columns:1fr 1.25fr .72fr;gap:4vw;padding:72px clamp(24px,7vw,112px) 28px;display:grid}.footer-brand .logo-frame{width:300px;height:92px}.footer-brand .logo-frame img{width:300px;top:-40px}.footer-lead>p{color:#8799ac;max-width:340px;margin:18px 0 0;font-size:12px;line-height:1.7}.footer-commercial{border-left:1px solid #ffffff1f;padding-left:4vw}.footer-commercial small,.footer-contact>small{color:var(--cyan);letter-spacing:.15em;text-transform:uppercase;margin-bottom:14px;font-size:9px;font-weight:900;display:block}.footer-commercial h2{color:#fff;max-width:560px;margin:0 0 24px;font-size:clamp(24px,2.6vw,38px)}.footer-action{color:#fff;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:10px;padding-bottom:7px;font-size:11px;font-weight:800;display:inline-flex;position:relative}.footer-action:after{background:var(--cyan);content:"";width:38px;height:1px;transition:width .25s;position:absolute;bottom:0;left:0}.footer-action:hover:after{width:100%}.footer-contact{flex-direction:column;gap:10px;display:flex}.footer-contact a,.footer-contact>span{color:#a8b7c6;font-size:11px;line-height:1.5}.footer-contact a:hover{color:#fff}.footer-contact>span{color:#627991;margin-top:4px}.linkedin-link{align-items:center;gap:8px;margin-top:3px;display:flex}.linkedin-link span{color:#fff;background:#0a66c2;border-radius:2px;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:900;line-height:1;display:inline-flex}.footer-bottom{letter-spacing:.04em;border-top:1px solid #ffffff1a;grid-column:1/-1;justify-content:space-between;margin-top:24px;padding-top:22px;font-size:9px;display:flex}.footer-bottom p{margin:0}@media (max-width:980px){nav>a:not(.nav-cta){display:none}.section-heading,.solutions,.sectors-intro,.stack-heading,.research-header{grid-template-columns:1fr}.section-heading{gap:24px}.pillar-body{padding:28px}.stack-layout{grid-template-columns:1fr 240px}.domain-grid{grid-template-columns:repeat(2,1fr)}.domain-card,.domain-card:nth-child(4){grid-column:auto}.domain-card:last-child{grid-column:1/-1}.physical-core{grid-template-columns:1fr 1fr}.core-outcome{grid-column:1/-1}.urbanflow{grid-template-columns:1fr}.urbanflow-content{max-width:760px}.urbanflow-visual{max-width:720px;margin:0 auto}.research-card{flex-basis:88%}.research-card-grid{grid-template-columns:1fr 1fr;gap:32px}}@media (max-width:700px){.site-header{height:72px}.compact-logo{grid-template-rows:42px 10px;grid-template-columns:80px 1px 84px;width:165px;height:54px}.compact-logo:after{height:30px}.compact-psi{height:42px}.compact-psi>b{font-size:32px}.compact-psi .psi-i{margin-left:3px}.compact-psi .psi-i i{width:9px;height:7px;top:-4px;left:8px}.compact-name{padding-left:8px}.compact-name strong{font-size:11px}.compact-name b{letter-spacing:.2em;margin-top:5px;font-size:8px}.compact-logo>small{padding-left:2px;font-size:4px}.nav-cta{padding:10px 12px}.hero{background-position:62%;min-height:750px;padding-top:150px}.hero:before{background:linear-gradient(90deg,#030d1dfa,#030d1dd1 72%,#030d1d61)}.hero-content{z-index:3;position:relative}.hero-lead{font-size:16px}.section{padding-top:76px;padding-bottom:76px}.pillar-grid{grid-template-columns:1fr}.pillar-card{min-height:320px}.pillar-icon{margin:36px 0 24px}.solutions{gap:58px}.flow-heading{grid-template-columns:repeat(2,1fr);row-gap:14px}.stack-layout{grid-template-columns:1fr}.stack-layer{grid-template-columns:80px 1fr}.layer-index{padding:12px}.layer-content{padding:22px 18px}.layer-arrow{left:27px}.mathematical-loop{position:static}.engineering-statement{padding-left:18px}.physical-core{grid-template-columns:1fr}.core-outcome{grid-column:1}.domain-grid{grid-template-columns:1fr}.domain-card,.domain-card:last-child{grid-column:1}.domain-card{min-height:auto}.cta-section{flex-direction:column;align-items:flex-start;gap:34px}.contact-actions{flex-wrap:wrap;margin-left:0}.urbanflow-content{grid-template-columns:1fr}.urbanflow-badge{width:86px;height:86px}.urbanflow-signature{flex-wrap:wrap;grid-column:1}.urbanflow-architecture{flex-direction:column;align-items:flex-start}.urbanflow-architecture svg{transform:rotate(90deg)}.urbanflow-visual span{padding:10px 12px;font-size:9px}.research{padding-left:20px}.research-header,.research-toolbar{padding-right:20px}.research-toolbar{margin-top:34px}.research-toolbar>span{display:none}.research-card{flex-basis:calc(100vw - 40px);min-height:auto;padding:24px}.research-card-grid{grid-template-columns:1fr}.research-copy h3{font-size:29px}.research-technical{border-left:0;border-top:1px solid var(--line);padding-top:25px;padding-left:0}.research-image img{height:150px}.paradigm-line{gap:7px;padding:14px 10px}.paradigm-line strong{font-size:8px}.math-evidence{grid-template-columns:1fr}.math-evidence strong{text-align:left}.research-track{gap:14px;padding-right:20px}footer{grid-template-columns:1fr;gap:34px;padding-top:58px}.footer-commercial{border-top:1px solid #ffffff1f;border-left:0;padding-top:28px;padding-left:0}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}}
.solutions-sensor{background:radial-gradient(circle at 42% 46%,#1882b033,#0000 48%);align-items:end;height:360px;margin:30px 0 20px;display:grid;position:relative;overflow:hidden}.solutions-sensor img{filter:drop-shadow(0 20px 28px #00000061);object-fit:contain;z-index:2;grid-area:1/1;justify-self:center;height:350px;position:relative}.solutions-sensor figcaption{z-index:3;border-bottom:1px solid #54cde540;flex-direction:column;align-items:flex-end;padding:0 0 10px;display:flex;position:absolute;bottom:0;right:0}.solutions-sensor figcaption span{color:var(--cyan);letter-spacing:.15em;text-transform:uppercase;font-size:7px}.solutions-sensor figcaption strong{color:#a8c0d2;letter-spacing:.08em;text-transform:uppercase;margin-top:5px;font-size:8px}.sensor-scan{grid-area:1/1;justify-self:center;width:430px;height:280px;position:relative}.sensor-scan i{border:1px solid #2bd1e652;border-radius:50%;animation:3.6s ease-out infinite sensorScan;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)scale(.35)}.sensor-scan i:nth-child(2){animation-delay:1.2s}.sensor-scan i:nth-child(3){animation-delay:2.4s}@keyframes sensorScan{0%{opacity:.7;width:80px;height:80px}80%,to{opacity:0;width:430px;height:300px}}@media (prefers-reduced-motion:reduce){.sensor-scan i{opacity:.2;width:360px;height:240px;animation:none}}@media (max-width:700px){.solutions-sensor{height:310px}.solutions-sensor img{height:300px}.sensor-scan{transform:scale(.75)}}.stage-architecture{border-top:1px solid #ffffff1f;gap:8px;margin-top:15px;padding-top:13px;display:grid}.stage-architecture>div{grid-template-columns:58px 1fr;gap:8px;display:grid}.stage-architecture small{color:var(--cyan);letter-spacing:.11em;text-transform:uppercase;padding-top:2px;font-size:7px;font-weight:900}.stage-architecture p{color:#8fa7bb!important;margin:0!important;font-size:8px!important;line-height:1.45!important}.solutions-statement{border-left-color:var(--cyan);color:#b8d0df;grid-column:1/-1;margin-top:18px;margin-bottom:0}.solutions-statement strong{color:#fff}.cad-system{color:#d8edf6;background:#07182b;border:1px solid #24445e;box-shadow:0 24px 60px #0a203329}.cad-titlebar{color:#6fa4bb;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #24445e;grid-template-columns:1fr auto auto;padding:12px 16px;font-family:Consolas,monospace;font-size:8px;display:grid}.cad-titlebar span+span{border-left:1px solid #24445e;margin-left:18px;padding-left:18px}.cad-canvas{background-image:linear-gradient(#46a4c212 1px,#0000 1px),linear-gradient(90deg,#46a4c212 1px,#0000 1px);background-size:28px 28px;min-height:400px;padding:72px 38px 48px;position:relative;overflow:hidden}.cad-canvas:before{content:"";pointer-events:none;border:1px solid #3da4c533;position:absolute;inset:20px}.cad-coordinates{color:#4087a0;font-family:Consolas,monospace;font-size:8px;position:absolute;bottom:30px;left:32px}.cad-coordinates i{background:#2e718a;width:1px;height:44px;margin:2px 0;display:block}.cad-coordinates span:last-child{position:absolute;top:46px;left:46px}.cad-coordinates:after{content:"";background:#2e718a;width:44px;height:1px;position:absolute;bottom:10px;left:0}.cad-flow{z-index:2;justify-content:center;align-items:center;max-width:1250px;margin:auto;display:flex;position:relative}.cad-stage{flex:1 1 0;align-items:center;min-width:0;display:flex}.cad-stage button{aspect-ratio:1/.92;color:#b8d4df;cursor:pointer;background:#071b30db;border:1px solid #35657b;flex-direction:column;flex:auto;justify-content:center;align-items:center;min-width:112px;padding:14px 8px;transition:all .25s;display:flex;position:relative}.cad-stage button:before,.cad-stage button:after{content:"";opacity:0;border-style:solid;border-color:#29c7df;width:8px;height:8px;transition:all .2s;position:absolute}.cad-stage button:before{border-width:1px 0 0 1px;top:-1px;left:-1px}.cad-stage button:after{border-width:0 1px 1px 0;bottom:-1px;right:-1px}.cad-stage button:hover,.cad-stage button.active{color:#fff;background:#0a2d46f5;border-color:#25bfd5;transform:translateY(-3px)}.cad-stage button.active:before,.cad-stage button.active:after{opacity:1;width:18px;height:18px}.cad-stage button:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.cad-stage small{color:#4aa3bd;letter-spacing:.12em;font-family:Consolas,monospace;font-size:7px;position:absolute;top:8px;right:9px}.cad-stage strong{letter-spacing:.06em;text-align:center;text-transform:uppercase;margin-top:10px;font-size:10px}.cad-stage em{color:#4ca1b9;text-transform:uppercase;margin-top:5px;font-size:8px;font-style:normal}.cad-symbol{border:1px solid #3a839b;border-radius:50%;width:38px;height:38px;display:block;position:relative}.cad-symbol:before,.cad-symbol:after{content:"";background:#41c9dd;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cad-symbol:before{width:24px;height:1px}.cad-symbol:after{width:1px;height:24px}.cad-symbol i{border:1px solid #2c667c;border-radius:50%;position:absolute;inset:6px}.cad-symbol i:last-child{background:#45d1e4;border:0;width:4px;height:4px;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.cad-connector{flex:0 0 clamp(18px,2.5vw,40px);height:18px;position:relative;overflow:hidden}.cad-connector:before{content:"";background:#33728a;height:1px;position:absolute;top:9px;left:0;right:0}.cad-connector:after{content:"";border-top:1px solid #4dd3e5;border-right:1px solid #4dd3e5;width:6px;height:6px;position:absolute;top:6px;right:1px;transform:rotate(45deg)}.cad-connector span{background:#5ae2f1;border-radius:50%;width:5px;height:5px;animation:2s linear infinite cadPulse;position:absolute;top:7px;left:-6px;box-shadow:0 0 9px #38d0e2}.cad-feedback{color:#397b93;letter-spacing:.12em;text-align:center;font-family:Consolas,monospace;font-size:7px;position:absolute;bottom:20px;left:18%;right:18%}.cad-feedback i{border:1px dashed #2a6177;border-top:0;height:38px;position:absolute;bottom:15px;left:0;right:0}.cad-feedback i:before{content:"";border-top:1px solid #48b9cf;border-left:1px solid #48b9cf;width:6px;height:6px;position:absolute;top:-3px;left:-1px;transform:rotate(-45deg)}.cad-readout{border-top:1px solid #24445e;grid-template-columns:.75fr 1.5fr .75fr;align-items:center;gap:24px;min-height:105px;padding:20px 28px;display:grid}.cad-readout small{color:#4f91aa;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px;font-family:Consolas,monospace;font-size:7px;display:block}.cad-readout strong{color:#e2f2f7;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.cad-readout p{color:#8eacba;margin:0;font-size:10px;line-height:1.6}.cad-readout code{color:#58d7e7;text-align:center;border-left:1px solid #2c5b70;padding-left:22px;font-family:Georgia,serif;font-size:12px}.cad-legend{color:#527b8f;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #173a4e;align-items:center;gap:24px;padding:10px 16px;font-family:Consolas,monospace;font-size:7px;display:flex}.cad-legend span:last-child{margin-left:auto}.cad-legend i{border:1px solid #3b7890;width:6px;height:6px;margin-right:6px;display:inline-block}.cad-legend i.live{background:#51d7e8;border:0;border-radius:50%;box-shadow:0 0 6px #51d7e8}@keyframes cadPulse{0%{left:-6px}to{left:calc(100% + 6px)}}@media (prefers-reduced-motion:reduce){.cad-connector span{animation:none;left:50%}.cad-stage button{transition:none}}@media (max-width:900px){.cad-flow{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:12px;display:grid}.cad-stage{min-width:0}.cad-stage button{aspect-ratio:auto;width:100%;min-height:140px}.cad-connector,.cad-feedback{display:none}.cad-readout{grid-template-columns:1fr}.cad-readout code{text-align:left;border-top:1px solid #2c5b70;border-left:0;padding:14px 0 0}}@media (max-width:520px){.cad-titlebar{grid-template-columns:1fr;gap:5px}.cad-titlebar span+span{border:0;margin:0;padding:0}.cad-canvas{padding:44px 24px 34px}.cad-flow{grid-template-columns:1fr}.cad-stage button{min-height:120px}.cad-legend{flex-direction:column;align-items:flex-start;gap:7px}.cad-legend span:last-child{margin-left:0}}.pillars.section{padding-top:78px}.pillars .section-heading{grid-template-columns:.95fr 1.05fr;align-items:start;gap:clamp(42px,6vw,88px);margin-bottom:46px}.pillars .section-heading>div:first-child{padding-top:2px}.pillars .section-heading h2{max-width:650px}.psi-definition{color:var(--slate);gap:13px;max-width:650px;display:grid}.psi-definition p{margin:0;line-height:1.72}.psi-definition strong{color:#213e57}.psi-definition .psi-closing{border-left:2px solid var(--cyan);color:#294c65;margin-top:4px;padding-left:15px}@media (max-width:980px){.pillars .section-heading{grid-template-columns:1fr;gap:28px}}.research.section{padding-top:54px;padding-bottom:48px}.research-header{gap:4vw}.research-header h2{font-size:clamp(30px,3.1vw,46px)}.research-toolbar{margin-top:20px;margin-bottom:12px}.research-card{min-height:560px;padding:26px}.research-card.urbanflow .research-card-grid{grid-template-columns:minmax(0,1fr);align-items:start;row-gap:22px}.research-card .research-card-grid{padding-top:6px}.research-initiative-label{letter-spacing:.14em;text-transform:uppercase;margin:0 0 7px;font-weight:900;color:#e96417!important;font-size:9px!important}.research-card.urbanflow .research-name{margin:0 0 13px}.research-card.urbanflow .research-copy h3{margin-top:0}.research-card.urbanflow .research-image{aspect-ratio:1;background:#fff;grid-row:1/3;align-self:center;width:100%;max-width:none;min-height:0;box-shadow:0 18px 48px #1338541f}.research-card.urbanflow .research-image img{object-fit:contain;object-position:center;height:100%}.research-card.urbanflow .research-copy h3{font-size:clamp(27px,2.45vw,40px)}.research-card.urbanflow{min-height:0;padding:clamp(22px,2.4vw,34px)}.research-card.urbanflow .research-copy{max-width:900px}.research-card.urbanflow .research-copy>p:last-of-type{max-width:840px;font-size:14px}.research-card.urbanflow .research-signature{border-top:1px solid var(--line);margin:16px 0 0;padding-top:12px}.research-card.urbanflow .research-technical{border-left:0;border-top:1px solid var(--line);grid-column:1;padding:14px 0 0}.urbanflow-research-visual{background:#071a2d;border:1px solid #c7d9e4;grid-column:1;margin:0;display:grid;position:relative;overflow:hidden}.urbanflow-research-visual img{object-fit:cover;width:100%;height:clamp(280px,30vw,440px);display:block}.urbanflow-research-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#041322db);position:absolute;inset:0}.urbanflow-research-visual figcaption{color:#fff;z-index:2;flex-direction:column;gap:6px;padding:22px 24px;display:flex;position:absolute;bottom:0;left:0}.urbanflow-research-visual figcaption span{color:var(--cyan);letter-spacing:.13em;text-transform:uppercase;font-size:9px;font-weight:900}.urbanflow-research-visual figcaption strong{letter-spacing:.05em;text-transform:uppercase;font-size:11px}.research-card.urbanflow .research-copy>p:last-of-type{font-size:15px;line-height:1.72}.research-card.urbanflow .research-technical>small{font-size:10px}.research-card.urbanflow .research-technical li{font-size:11px;line-height:1.4}.urbanflow-expanded{gap:28px 42px}.urbanflow-expanded small{margin-bottom:11px;font-size:10px}.urbanflow-expanded h4{font-size:15px}.urbanflow-expanded p{font-size:13px;line-height:1.72}.urbanflow-equation span,.urbanflow-equation strong{font-size:11px}.urbanflow-expanded blockquote strong{font-size:12px}.urbanflow-expanded blockquote span{font-size:11px}.urbanflow-data,.urbanflow-control,.urbanflow-equation{grid-column:1/-1}.urbanflow-equation{color:#a9c4d2;background:#0a2138;border:1px solid #234a62;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:16px 18px;display:flex}.urbanflow-equation span,.urbanflow-equation strong{letter-spacing:.06em;text-transform:uppercase;font-family:Consolas,monospace;font-size:9px}.urbanflow-equation strong{border:1px solid var(--cyan);color:#fff;padding:7px 10px}.urbanflow-equation b{color:var(--cyan);font-size:11px}.urbanflow-equation.technical{color:#3d6177;background:#f1f7fa;border-color:#c9dce6}.urbanflow-equation.technical strong{background:#0b2942;border-color:#0b2942}.urbanflow-expanded{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:22px 36px;padding-top:24px;display:grid}.urbanflow-expanded section{border-left:2px solid #d6e6ed;padding-left:18px}.urbanflow-expanded small{color:#177796;letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px;font-size:8px;font-weight:900;display:block}.urbanflow-expanded h4{color:#143b57;letter-spacing:.025em;margin:0 0 10px;font-size:12px;line-height:1.5}.urbanflow-expanded p{color:#5d7082;margin:0;font-size:10px;line-height:1.65}.urbanflow-expanded p+p{margin-top:8px}.urbanflow-optimization{grid-column:1/-1}.optimization-methods{grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.optimization-methods article{background:#f3f7fa;min-height:120px;padding:16px}.optimization-methods strong{color:#174e70;text-transform:uppercase;margin-bottom:8px;font-size:9px;display:block}.urbanflow-applications ul{grid-template-columns:repeat(2,1fr);gap:6px 20px;margin:0;padding:0;list-style:none;display:grid}.urbanflow-applications li{color:#536a7c;padding-left:12px;font-size:9px;line-height:1.45;position:relative}.urbanflow-applications li:before{background:var(--cyan);content:"";width:4px;height:4px;position:absolute;top:5px;left:0}.urbanflow-expanded blockquote{background:var(--navy-950);color:#fff;grid-column:1/-1;justify-content:space-between;align-items:center;margin:0;padding:17px 20px;display:flex}.urbanflow-expanded blockquote strong{letter-spacing:.06em;font-size:10px}.urbanflow-expanded blockquote span{color:#9fc0d5;font-size:9px;font-style:italic}.research-card.urbanflow .research-technical ol{grid-template-columns:repeat(6,1fr);gap:0;margin-top:8px;display:grid}.research-card.urbanflow .research-technical li{border-left:1px solid var(--line);grid-template-columns:1fr;align-content:start;min-height:56px;padding:7px 14px;display:grid}.research-card.urbanflow .research-technical li:first-child{border-left:0;padding-left:0}.research-card.urbanflow .research-technical li:before{margin-bottom:9px}.research-card.urbanflow .research-technical li:after{display:none}@media (max-width:1100px){.research-card.urbanflow .research-card-grid{grid-template-columns:1fr}.research-card.urbanflow .research-technical ol{grid-template-columns:repeat(3,1fr)}.research-card.urbanflow .research-technical li:nth-child(4){border-left:0;padding-left:0}}@media (max-width:700px){.research-card.urbanflow .research-card-grid{grid-template-columns:1fr}.research-card.urbanflow .research-image img{height:auto}.research-card.urbanflow .research-image{grid-row:auto;justify-self:center;max-width:420px;min-height:0}.research-card.urbanflow .research-technical{grid-column:1}.urbanflow-expanded{grid-template-columns:1fr}.urbanflow-expanded section,.urbanflow-optimization,.urbanflow-expanded blockquote{grid-column:1}.optimization-methods,.urbanflow-applications ul{grid-template-columns:1fr}.urbanflow-expanded blockquote{flex-direction:column;align-items:flex-start;gap:8px}.research-card.urbanflow .research-technical ol{grid-template-columns:1fr}.research-card.urbanflow .research-technical li,.research-card.urbanflow .research-technical li:first-child{border-bottom:1px solid var(--line);border-left:0;grid-template-columns:28px 1fr;min-height:45px;padding:12px 0}.research-card.urbanflow .research-technical li:before{margin-bottom:0}}.research.section{padding-right:clamp(24px,7vw,112px)}.research-header,.research-toolbar{padding-right:0}.research-track{gap:20px;padding-right:0}.research-card{flex-basis:100%}@media (max-width:980px){.research-card{flex-basis:100%}}@media (max-width:700px){.research.section{padding-left:20px;padding-right:20px}.research-header,.research-toolbar,.research-track{padding-right:0}.research-card{flex-basis:100%}}.ri2{background:#edf3f7}.ri2-header{grid-template-columns:1.08fr .92fr;align-items:end;gap:7vw;margin-bottom:42px;display:grid}.ri2-header h2{max-width:820px;margin:12px 0 0;font-size:clamp(34px,4vw,58px)}.ri2-header>div:last-child p{color:var(--slate);margin:0 0 16px;line-height:1.75}.ri2-header small,.ri2-block>small,.ri2-architecture>small,.ri2-method>small,.ri2-problems>small,.ri2-math>small{color:#167b9b;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;font-size:9px;font-weight:900;display:block}.ri2-tabs{border-bottom:1px solid #bfcfda;grid-template-columns:1fr 1fr;gap:0;margin-bottom:22px;display:grid}.ri2-tabs button{color:#667c8e;cursor:pointer;text-align:left;background:0 0;border:0;border-top:3px solid #0000;grid-template-columns:38px 1fr;gap:4px;padding:20px 24px;display:grid}.ri2-tabs button+button{border-left:1px solid #cbd9e2}.ri2-tabs button.active{color:#143a55;background:#fff;border-top-color:#18bfd6}.ri2-tabs button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.ri2-tabs span{color:#1685a7;grid-row:1/3;padding-top:2px;font-size:10px}.ri2-tabs strong{letter-spacing:.025em;font-size:12px}.ri2-tabs small{color:#7a8f9e;letter-spacing:.08em;text-transform:uppercase;font-size:8px}.ri2-panel{background:#fff;border:1px solid #c9d8e2;grid-template-columns:1fr 1fr;gap:28px 34px;padding:clamp(28px,4vw,56px);display:grid}.ri2-hero-copy{align-self:center}.ri2-label{color:#eb6819;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:9px;font-weight:900}.ri2-hero-copy h3{color:#102b43;max-width:760px;margin:0 0 22px;font-size:clamp(32px,3.6vw,52px);line-height:1.06}.ri2-hero-copy>p:last-of-type{color:#536a7b;margin:0;font-size:14px;line-height:1.75}.ri2-hero-copy>p strong{color:#294d66}.ri2-signature{border-top:1px solid var(--line);flex-wrap:wrap;gap:15px;margin-top:24px;padding-top:18px;display:flex}.ri2-signature strong{color:#294f6c}.ri2-signature strong:nth-child(n+3){color:#1265d9}.ri2-image{background:#071a2d;min-height:360px;margin:0;position:relative;overflow:hidden}.ri2-image img{object-fit:cover;width:100%;height:100%;display:block}.ri2-image:after{content:"";background:linear-gradient(#0000 58%,#041220e0);position:absolute;inset:0}.ri2-image figcaption{color:#cde5ef;letter-spacing:.07em;text-transform:uppercase;z-index:2;padding:20px;font-size:9px;font-weight:800;position:absolute;bottom:0;left:0}.ri2-block{border-left:2px solid #cce0e8;padding:4px 0 4px 18px}.ri2-block.full,.ri2-architecture.full,.ri2-problems.full{grid-column:1/-1}.ri2-block p{color:#566d7e;margin:0;font-size:13px;line-height:1.72}.ri2-block p strong{color:#284e67}.ri2-flow{align-items:stretch;margin-top:18px;display:flex;overflow:hidden}.ri2-flow span{color:#315c73;text-align:center;text-transform:uppercase;background:#f1f7fa;border:1px solid #d3e2e9;flex:1;justify-content:center;align-items:center;min-height:52px;padding:10px 18px;font-size:9px;font-weight:900;display:flex;position:relative}.ri2-flow span+span{border-left:0}.ri2-flow b{color:#1597b5;z-index:2;font-size:13px;position:absolute;right:-5px}.ri2-flow span.final{color:#fff;background:#0a2943;border-color:#0a2943}.ri2-architecture{border-top:1px solid var(--line);padding-top:22px}.ri2-panel-footer{color:#fff;background:#071a2e;grid-column:1/-1;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.ri2-panel-footer strong{letter-spacing:.05em;text-transform:uppercase;font-size:11px}.ri2-panel-footer span{color:#92b2c4;font-size:10px;font-style:italic}.ri2-math{color:#d9eef5;background:#0a2138;align-self:stretch;gap:8px;padding:30px;display:grid}.ri2-math span{color:#799bae;letter-spacing:.1em;text-transform:uppercase;margin-top:10px;font-size:8px}.ri2-math strong{font-family:Georgia,serif;font-size:20px;font-weight:400}.ri2-paradigm{color:#fff;text-transform:uppercase;background:#071a30;justify-content:space-between;align-items:center;gap:18px;margin-top:26px;padding:17px 20px;display:flex}.ri2-paradigm strong{letter-spacing:.1em;font-size:10px}.ri2-paradigm b{color:var(--cyan)}.ri2-method{background:#f2f7fa;border-top:2px solid #1aa9c3;padding:22px}.ri2-method strong{color:#244b63;margin-bottom:10px;font-size:12px;display:block}.ri2-method p{color:#617687;margin:0;font-size:10px;line-height:1.6}.ri2-panel.optimization{grid-template-columns:repeat(6,1fr)}.ri2-panel.optimization .ri2-hero-copy,.ri2-panel.optimization .ri2-math{grid-column:span 3}.ri2-panel.optimization .ri2-method{grid-column:span 2}.ri2-problems{border-top:1px solid var(--line);padding-top:22px}.ri2-problems div{flex-wrap:wrap;gap:8px;display:flex}.ri2-problems span{color:#3e6277;text-transform:uppercase;border:1px solid #cbdce5;padding:9px 12px;font-size:9px;font-weight:800}@media (max-width:900px){.ri2-header{grid-template-columns:1fr;align-items:start;gap:24px}.ri2-panel,.ri2-panel.optimization{grid-template-columns:1fr}.ri2-panel.optimization .ri2-hero-copy,.ri2-panel.optimization .ri2-math,.ri2-panel.optimization .ri2-method{grid-column:1}.ri2-image{min-height:300px}.ri2-flow{grid-template-columns:repeat(3,1fr);display:grid}.ri2-flow span+span{border-left:1px solid #d3e2e9}.ri2-flow b{display:none}}@media (max-width:600px){.ri2-tabs{grid-template-columns:1fr}.ri2-tabs button+button{border-top:1px solid #cbd9e2;border-left:0}.ri2-panel{gap:24px;padding:22px}.ri2-hero-copy h3{font-size:32px}.ri2-image{min-height:230px}.ri2-flow{grid-template-columns:1fr 1fr}.ri2-panel-footer{flex-direction:column;align-items:flex-start;gap:7px}}.footer-icon-link{align-items:center;gap:10px;display:flex}.footer-icon-link svg{color:var(--cyan);flex:0 0 20px;width:20px;height:20px}.footer-icon-link.github-link svg{color:#fff}.footer-icon-link.whatsapp-footer svg{color:#25d366}.language-switcher{color:#647d96;align-items:center;gap:5px;font-size:10px;display:flex;position:relative}.language-switcher button{color:#8fa4b9;cursor:pointer;letter-spacing:.08em;background:0 0;border:0;padding:8px 2px;font-size:10px;font-weight:800}.language-switcher button.active,.language-switcher button:hover{color:var(--cyan)}.language-switcher button:focus-visible{outline:1px solid var(--cyan);outline-offset:2px}#psi-google-translate,.goog-te-banner-frame,.goog-te-gadget{width:0!important;height:0!important;position:absolute!important;overflow:hidden!important}body{top:0!important}@media (max-width:700px){.language-switcher{display:flex}.site-header nav{gap:8px}.site-header .nav-cta{display:none}}
