@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#171525;--paper:#f6f5f2;--muted:#8c8997;--purple:#b78af3;--deep:#100c20;--line:#dcdadf;--cyan:#7bd5dc;--heading:'Manrope',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9670d4;outline-offset:6px}button{border:0}::selection{background:#b78af3;color:#100c20}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:600;line-height:1.14;letter-spacing:-.045em}.skip-link{position:fixed;z-index:100;top:-80px;left:20px;padding:12px 20px;background:white;color:var(--ink)}.skip-link:focus{top:10px}.site-header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--deep);color:#f9f7ff;border-bottom:1px solid #ffffff13;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap;font-family:var(--heading);font-size:20px;font-weight:500;letter-spacing:-.6px}.brand b{font-weight:750}.brand-mark{display:block;width:42px;height:48px;flex:none;background-image:url('assets/gridless-dynamics.png');background-size:166px;background-position:-23px -58px;background-repeat:no-repeat}.site-header nav{display:flex;align-items:center;gap:36px;font-size:13px;font-weight:500}.site-header nav>a:not(.nav-cta){color:#c5c1d1}.site-header nav>a:hover{color:var(--purple)}.nav-cta{border:1px solid #ffffff40;border-radius:5px;padding:11px 17px;margin-left:12px}.nav-cta span{margin-left:25px;font-size:18px}.menu-toggle{display:none}.hero{position:relative;background:var(--deep);color:#f6f2fd;min-height:725px;padding:108px 5% 96px;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:20px}.hero-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.8%,#ffffff05 50%,transparent 50.2%);background-size:120px 120px;mask-image:linear-gradient(90deg,transparent,#000)}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.8px;display:flex;align-items:center;gap:10px;color:#c5bbd8}.status-dot{width:6px;height:6px;border-radius:50%;background:#bc95f4;box-shadow:0 0 14px #a26bf1}.hero h1{font-size:clamp(50px,5.3vw,83px);margin:25px 0 27px;letter-spacing:-.06em;line-height:1.07;white-space:nowrap}.hero h1>span{color:var(--purple)}.hero-intro{font-size:16px;color:#aaa5bc;max-width:470px;line-height:1.85}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:36px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;padding:15px 19px;border-radius:5px;font-size:12px;font-weight:650;line-height:1.5;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:20px;line-height:1}.primary{background:#b995ed;color:#1c1031}.primary:hover{background:#caaaef}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:11px;color:#d2ccdf}.text-link span{font-size:19px}.hero-facts{display:flex;margin-top:53px;gap:25px;color:#8c859e;font-size:10px}.hero-facts>span+span{border-left:1px solid #ffffff20;padding-left:25px}.hero-facts b{color:#dfd9e9;font-weight:550;margin-right:5px}.hero-visual{position:relative;align-self:stretch;min-height:435px;margin-top:-20px;margin-left:5px}.visual-heading{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.4px;color:#6f657f;padding-top:18px}.visual-heading i{display:inline-block;width:5px;height:5px;background:var(--cyan);border-radius:50%;margin-right:7px}#particle-field{width:100%;height:370px;display:block}.visual-bottom{display:flex;align-items:center;justify-content:space-between;padding:0 0 15px;border-bottom:1px solid #ffffff17}.visual-label{font-size:8px;letter-spacing:1.4px;color:#8c809e}.visual-bottom p{font-size:12px;color:#c9c0d7;margin-top:5px}.pause-button{width:29px;height:29px;border-radius:50%;color:#c9b4df;background:transparent;border:1px solid #544164;font-size:10px}.visual-note{font-size:8px;color:#756b83;display:block;margin-top:11px}.visual-axis{position:absolute;left:0;bottom:115px;width:55px;height:55px;color:#6d617e;font-size:8px}.visual-axis svg{position:absolute;inset:0;stroke:#685477;stroke-width:1;fill:none}.visual-axis span{position:absolute}.visual-axis span:nth-child(1){top:-6px;left:21px}.visual-axis span:nth-child(2){bottom:-1px;left:0}.visual-axis span:nth-child(3){right:-2px;bottom:10px}.scroll-hint{position:absolute;left:5%;bottom:24px;display:flex;align-items:center;gap:27px;color:#8a819b;font-size:16px}.scroll-hint span{font-size:8px;letter-spacing:1.8px}.integration-strip{min-height:132px;display:flex;gap:40px;align-items:center;padding:25px 8%;background:#eeede9;border-bottom:1px solid var(--line)}.integration-strip>span:first-child{font-size:9px;letter-spacing:1.1px;color:#817d89;width:165px}.flowsim-logo{width:215px;aspect-ratio:4.15;position:relative;overflow:hidden;flex:none}.flowsim-logo img{position:absolute;width:100%;height:auto;top:50%;transform:translateY(-50%);mix-blend-mode:multiply}.strip-divider{height:40px;width:1px;background:#d0cdd5;margin:0 5px}.integration-strip p{font-size:12px;line-height:1.7;color:#817b88}.integration-strip p b{font-weight:500;color:#45404e}.integration-strip>a{margin-left:auto;font-size:25px}.section,.applications,.integration-section{padding:92px 8%}.section-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:49px}.eyebrow.dark{color:#77707f;font-weight:600}.section-note{font-size:10px;color:#948e9b}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px}h2{font-size:clamp(34px,3.5vw,51px);line-height:1.15;letter-spacing:-.055em}.muted{color:#a6a1ab}.intro-text{padding-top:4px}.large-copy{font-size:19px;line-height:1.6;color:#302b3b;margin-bottom:19px}.intro-text>p:not(.large-copy){font-size:13px;color:#77717f;line-height:1.9}.underlined-link{display:inline-flex;gap:35px;align-items:center;font-size:12px;margin-top:24px;padding-bottom:6px;border-bottom:1px solid #aaa2b9}.underlined-link span{font-size:20px}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid var(--line)}.principles article{padding:28px 30px 0 0}.principles article+article{padding-left:30px;border-left:1px solid var(--line)}.principle-number{font-family:var(--heading);font-size:11px;color:#9e7ebc}.principles h3{font-size:18px;letter-spacing:-.5px;margin:20px 0 13px}.principles p{font-size:12px;color:#807986;line-height:1.9;max-width:300px}.applications{background:#eeede9;padding-top:72px}.application-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:44px}.model-tabs{display:flex;gap:4px;background:#e2e0dd;padding:5px;border-radius:6px}.model-tabs button{padding:12px 18px;background:transparent;border-radius:3px;font-size:11px;color:#7a7381;min-width:145px;display:flex;justify-content:space-between;gap:22px}.model-tabs button[aria-selected=true]{background:var(--deep);color:#f9f4ff;box-shadow:0 3px 8px #100c2010}.model-tabs button span{color:#b49ad2}.application-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.application-panel[hidden]{display:none}.model-illustration{background:#171126;color:#eee4fc;border-radius:8px;position:relative;padding:22px;overflow:hidden;min-height:440px;display:flex;flex-direction:column;justify-content:space-between}.diagram-topline,.diagram-foot{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.4px;color:#8c7c9f}.diagram-topline>span:first-child{color:#baa5d3}.model-illustration svg{width:100%;height:auto;max-height:355px}.room-lines{fill:none;stroke:#7d6f92;stroke-width:1.1}.dashed{stroke-dasharray:4 5;opacity:.5}.air-paths{stroke-width:2;opacity:.8}.diagram-labels{font-family:var(--body);font-size:10px;letter-spacing:1px;fill:#998cae}.diagram-foot{letter-spacing:0;font-size:8px;padding-top:12px;border-top:1px solid #ffffff15;gap:10px}.diagram-foot span:last-child{font-size:7px;letter-spacing:1.2px}.cyan-dot{width:5px;height:5px;display:inline-block;background:var(--cyan);border-radius:50%;margin-right:6px}.model-description .eyebrow{font-size:8px;letter-spacing:1.5px}.model-description h3{font-size:32px;line-height:1.2;margin:16px 0}.model-description>p:not(.eyebrow):not(.model-footnote){font-size:13px;color:#807986;line-height:1.8;max-width:385px}.feature-list{list-style:none;padding:0;margin:22px 0}.feature-list li{display:flex;gap:15px;margin-bottom:18px}.feature-list li>span{color:#a18bbb;font-size:9px;line-height:23px}.feature-list b{font-size:12px;font-weight:550}.feature-list p{font-size:11px;color:#8b8490;margin-top:2px;max-width:355px;line-height:1.6}.model-footnote{font-size:9px;color:#9a919e;border-top:1px solid #d5d0d8;padding-top:14px}.integration-section{background:var(--deep);color:#f7f0ff;padding-top:70px}.integration-section .section-note{color:#786b8b}.integration-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:center}.integration-layout h2{font-size:clamp(38px,3.6vw,54px)}.integration-layout h2 span{color:var(--purple)}.integration-layout>div>p{font-size:13px;line-height:1.9;color:#9c91ae;max-width:390px;margin-top:24px}.integration-layout .text-link{margin-top:25px}.connection-card{border:1px solid #ffffff1b;border-radius:7px;min-height:325px;padding:27px 25px 21px;display:flex;flex-direction:column;align-items:center;background:linear-gradient(135deg,#20162e66,#100c20);box-shadow:0 25px 60px #00000010}.host-logo{padding:19px 30px 15px;display:flex;align-items:center;flex-direction:column;background:#eeede9;border-radius:4px;max-width:100%}.host-logo .flowsim-logo{width:220px}.host-logo>span{font-size:7px;letter-spacing:1.6px;color:#928a97;margin-top:10px}.connection-line{display:flex;align-items:center;flex-direction:column;height:61px}.connection-line span{height:13px;width:1px;background:#776184}.connection-line b{color:#b590d5;font-size:18px;font-weight:400;line-height:30px}.solver-logo{width:270px;height:105px;position:relative;overflow:hidden;max-width:100%}.solver-logo img{position:absolute;width:335px;height:auto;top:-109px;left:-37px}.connection-caption{font-size:7px;letter-spacing:1.6px;color:#9681ac;margin-top:8px}.workflow{display:grid;grid-template-columns:repeat(3,1fr);margin-top:66px;border-top:1px solid #ffffff20;gap:35px}.workflow article{padding-top:25px}.workflow article>span{font-size:8px;letter-spacing:1.5px;color:#ad86d1}.workflow h3{font-size:16px;letter-spacing:-.3px;margin:15px 0 10px}.workflow p{color:#8f829f;font-size:11px;line-height:1.9;max-width:300px}.technical-section{padding-bottom:65px}.technical-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.technical-layout>div>p{font-size:13px;color:#807986;line-height:1.8;max-width:360px;margin-top:24px}.tech-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.tech-tags span{padding:4px 11px;border:1px solid #d7d0df;border-radius:3px;font-size:9px;color:#81728f}.spec-list{margin:0;font-size:11px;align-self:center}.spec-list>div{display:flex;justify-content:space-between;gap:30px;padding:17px 0;border-bottom:1px solid var(--line)}.spec-list>div:first-child{border-top:1px solid var(--line)}.spec-list dt{color:#8c8394;flex-shrink:0}.spec-list dd{margin:0;text-align:right;color:#3e354a;max-width:200px}.faq-section{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;border-top:1px solid var(--line);padding-top:70px}.faq-heading .eyebrow{margin-bottom:26px}.faq-heading h2{font-size:36px}.faq-heading>p:last-child{margin-top:24px;color:#89818f;font-size:12px;max-width:280px}.faq-list{padding-top:9px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:pointer;padding:20px 0;font-size:12px;list-style:none;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:#a98bc1;font-size:20px;transition:transform .2s;font-weight:400}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{font-size:11px;color:#817888;line-height:1.9;padding:0 30px 23px 0}.closing{background:#e5dded;min-height:350px;position:relative;overflow:hidden;padding:58px 8%;display:flex;flex-direction:column;align-items:start}.closing .eyebrow{font-size:8px;color:#917c9f}.closing h2{font-size:51px;margin:22px 0}.closing h2>span{color:#9573af}.closing .button{background:#21122f;color:#e4d0f5;font-size:11px}.closing-orbit{position:absolute;width:360px;height:360px;border:1px dashed #a789bf66;border-radius:50%;right:11%;top:20px;transform:rotate(-30deg) scaleX(.7)}.closing-orbit:before,.closing-orbit:after{content:'';position:absolute;inset:25px;border:8px dotted #aa7bcc60;border-radius:50%}.closing-orbit:after{inset:60px;border-width:5px;border-color:#9775bf66}footer{background:var(--deep);color:#e6daef;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:36px 5% 25px;flex-wrap:wrap}footer .brand{font-size:16px}footer .brand-mark{transform:scale(.8);margin-right:-5px}footer>p{font-size:10px;color:#887994}footer>a:last-of-type{font-size:10px;color:#b3a0c4}.template-note{flex-basis:100%;border-top:1px solid #ffffff12;padding-top:18px;color:#766782;font-size:8px;text-align:right}
@media(min-width:1600px){.hero,.site-header{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}.hero{min-height:800px}#particle-field{height:410px}.section,.applications,.integration-section,.integration-strip,.closing{padding-left:max(8%,calc((100vw - 1280px)/2));padding-right:max(8%,calc((100vw - 1280px)/2))}.scroll-hint{left:max(5%,calc((100vw - 1440px)/2))}}
@media(max-width:1150px){.site-header nav{gap:23px}.hero{padding-top:85px;min-height:650px;grid-template-columns:1.15fr 1fr}.hero h1{font-size:5.4vw}.hero-actions{gap:18px;align-items:start;flex-direction:column}.hero-facts{gap:14px;margin-top:35px;font-size:9px}.hero-facts>span+span{padding-left:14px}.hero-visual{min-height:390px;margin-left:0}#particle-field{height:340px}.integration-strip{gap:25px;padding-left:6%;padding-right:6%}.section,.applications,.integration-section{padding-left:6%;padding-right:6%}.intro-grid{gap:40px}.application-panel{gap:35px}.integration-layout{gap:60px}.model-illustration{min-height:400px}.technical-layout{gap:45px}.faq-section{gap:45px}.model-tabs button{min-width:120px;padding:10px 14px}.model-description h3{font-size:28px}.hero-intro{font-size:14px}.brand{font-size:18px}.site-header{height:85px}}
@media(max-width:800px){.site-header{height:78px;padding:0 6%}.brand{font-size:17px}.brand-mark{transform:scale(.85);margin-right:-6px}.menu-toggle{display:flex;background:transparent;width:36px;height:36px;gap:7px;flex-direction:column;justify-content:center;align-items:center;z-index:12}.menu-toggle span{width:21px;height:1px;background:#e5d8f5;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#171023;padding:25px 6% 30px;border-bottom:1px solid #382944;flex-direction:column;align-items:stretch;gap:20px}.site-header nav.open{display:flex}.nav-cta{margin-left:0;display:flex;justify-content:space-between}.hero{padding:65px 6% 65px;grid-template-columns:1fr;gap:20px}.hero h1{font-size:clamp(43px,7.4vw,65px);margin-top:22px}.hero-intro{max-width:500px;font-size:15px}.hero-actions{flex-direction:row;align-items:center;gap:25px}.hero-facts{font-size:10px;margin-top:32px}.hero-facts>span+span{padding-left:22px}.hero-visual{min-height:330px;width:90%;margin:15px auto 0}.visual-heading{padding-top:0}#particle-field{height:300px}.visual-axis{bottom:90px}.visual-bottom{padding-bottom:10px}.visual-note{margin-top:8px}.scroll-hint{display:none}.integration-strip{flex-wrap:wrap;gap:20px;padding:25px 6%}.integration-strip>span:first-child{width:auto;flex-basis:100%;font-size:8px}.integration-strip .flowsim-logo{width:195px}.strip-divider{margin-left:5px}.integration-strip p{font-size:10px}.integration-strip>a{font-size:20px}.section,.applications,.integration-section{padding:62px 6%}.section-top{margin-bottom:32px}.section-note{font-size:8px}.eyebrow{font-size:9px}.intro-grid{grid-template-columns:1fr;gap:28px}h2{font-size:39px}.intro-text{max-width:560px}.large-copy{font-size:18px}.principles{margin-top:40px}.principles article{padding-right:16px}.principles article+article{padding-left:16px}.principles h3{font-size:16px;line-height:1.3}.principles p{font-size:11px}.application-heading{flex-direction:column;align-items:start;gap:26px;margin-bottom:28px}.model-tabs{width:100%}.model-tabs button{flex:1;padding:12px 15px}.application-panel{grid-template-columns:1fr;gap:30px}.model-illustration{min-height:380px}.model-illustration svg{max-height:350px}.model-description h3{font-size:31px}.feature-list p{max-width:none}.model-description>p:not(.eyebrow):not(.model-footnote){max-width:550px}.integration-layout{grid-template-columns:1fr 1fr;gap:30px}.integration-layout h2{font-size:35px}.connection-card{padding:20px 12px;min-height:305px}.host-logo{padding:16px 15px}.host-logo .flowsim-logo{width:170px}.host-logo>span{font-size:6px}.solver-logo{transform:scale(.8);margin:-7px -30px}.connection-caption{font-size:6px}.workflow{gap:22px;margin-top:40px}.workflow h3{font-size:15px;line-height:1.4}.technical-layout{grid-template-columns:1fr;gap:32px}.technical-layout>div>p{max-width:500px}.spec-list dd{max-width:none}.faq-section{grid-template-columns:1fr;gap:30px}.faq-heading>p:last-child{max-width:none}.faq-heading .eyebrow{margin-bottom:20px}.closing{padding:45px 6%;min-height:320px}.closing h2{font-size:44px}.closing-orbit{right:0;width:300px;height:300px;top:25px}.closing>*:not(.closing-orbit){z-index:1}footer{padding:25px 6% 20px}footer>p{order:3;flex-basis:100%;font-size:9px}.template-note{order:4;text-align:left}footer>a:last-of-type{margin-left:auto}}
@media(max-width:480px){.hero{padding-top:46px}.hero h1{font-size:clamp(35px,9vw,44px)}.hero .eyebrow{font-size:7px;letter-spacing:1.1px}.hero-intro{font-size:13px;line-height:1.85}.hero-actions{flex-direction:column;align-items:start;gap:19px;margin-top:28px}.hero-facts{font-size:8px;gap:10px}.hero-facts>span+span{padding-left:10px}.hero-visual{width:100%;min-height:280px}#particle-field{height:265px}.visual-label{font-size:6px}.visual-bottom p{font-size:10px}.visual-heading{font-size:7px}.visual-axis{bottom:86px}.integration-strip{gap:15px}.integration-strip .flowsim-logo{width:165px}.strip-divider{display:none}.integration-strip p{font-size:9px}.integration-strip>a{display:none}.section-note{max-width:130px;text-align:right;font-size:7px}h2{font-size:33px}.large-copy{font-size:16px}.principles{grid-template-columns:1fr;margin-top:32px}.principles article,.principles article+article{padding:22px 0;border-left:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:22px 1fr;column-gap:15px}.principles h3{margin:0 0 8px;font-size:17px}.principles p{grid-column:2;max-width:none}.principle-number{padding-top:3px}.model-illustration{padding:16px;min-height:310px}.model-illustration svg{max-height:280px}.diagram-foot{font-size:7px}.diagram-foot span:last-child{font-size:6px}.model-description h3{font-size:29px}.integration-layout{grid-template-columns:1fr;gap:35px}.connection-card{max-width:340px;width:100%;justify-self:center;padding:25px}.host-logo .flowsim-logo{width:220px}.solver-logo{transform:none;margin:0}.connection-caption{font-size:7px}.workflow{grid-template-columns:1fr;gap:0}.workflow article{border-bottom:1px solid #ffffff17;padding:21px 0}.workflow h3{font-size:17px;margin:10px 0}.workflow p{max-width:none;font-size:12px}.spec-list{font-size:10px}.spec-list>div{gap:15px}.spec-list dd{max-width:175px}.faq-heading h2{font-size:33px}.faq-list summary{font-size:12px}.closing-orbit{right:-100px;opacity:.6}.closing h2{font-size:43px}.closing .eyebrow{font-size:7px}.section,.applications,.integration-section{padding-top:49px;padding-bottom:49px}}
.hero-copy,.hero-visual,.intro-grid>*,.application-panel>*,.integration-layout>*,.technical-layout>*,.faq-section>*{min-width:0}
@media(max-width:480px){.hero h1{font-size:clamp(26px,8.8vw,42px);white-space:normal}.hero-facts{flex-wrap:wrap;row-gap:8px}.integration-layout{grid-template-columns:minmax(0,1fr)}.connection-card{min-width:0}.host-logo .flowsim-logo{max-width:100%}.solver-logo{min-width:0}.connection-caption{letter-spacing:1.1px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
