:root{--story-green:#053d32;--story-ink:#0b2b22;--story-muted:#5d7069;--story-paper:#f3f7f4;--story-line:#d6e2dd;--story-mint:#46d8aa}
.wrap{width:min(1320px,calc(100% - 64px))}
.site-head{background:rgba(255,255,255,.97)}
.head-inner{min-height:84px}
.nav a{font-size:14px}
.nav .nav-book{margin-left:4px}

.story-hero{--pointer-x:78%;--pointer-y:24%;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),rgba(70,216,170,.14),transparent 28%),linear-gradient(120deg,#fff 0 43%,#f3f7f4 43% 100%);overflow:hidden;padding:72px 0 0;transition:background-position .2s ease}
.story-hero>.wrap{align-items:center;display:grid;gap:48px;grid-template-columns:minmax(350px,.8fr) minmax(580px,1.2fr)}
.hero-intro{margin:0;max-width:560px;text-align:left}
.hero-intro h1{color:var(--story-ink);font-size:clamp(38px,3.75vw,56px);letter-spacing:-.062em;line-height:1.01;margin:0}
.hero-intro p{color:var(--story-muted);font-size:18px;line-height:1.7;margin:26px 0 28px;max-width:550px}
.hero-intro .cta-button{min-width:176px}
.film-frame{--tilt-x:0deg;--tilt-y:0deg;background:var(--story-green);border:1px solid #1b5a4b;border-radius:22px;box-shadow:0 34px 90px rgba(4,43,35,.18);margin:0;max-width:none;overflow:hidden;transform:perspective(1200px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transform-style:preserve-3d;transition:box-shadow .32s ease,transform .32s ease}
.film-stage{aspect-ratio:16/9;background:var(--story-green);position:relative}
.film-frame video{aspect-ratio:16/9;background:var(--story-green);display:block;height:auto;width:100%}
.film-launch{align-items:center;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.98);border-radius:13px;bottom:16px;box-shadow:0 8px 32px rgba(3,36,29,.22);color:var(--story-ink);cursor:pointer;display:flex;font:inherit;gap:12px;left:16px;padding:10px 14px 10px 10px;position:absolute;right:16px;text-align:left;transition:background .2s ease,transform .25s ease;z-index:2}
.film-play-icon{align-items:center;background:var(--story-green);border-radius:50%;color:#fff;display:flex;flex:0 0 auto;font-size:11px;height:44px;justify-content:center;padding-left:2px;width:44px}
.film-launch-copy{display:grid;gap:1px;line-height:1.35}.film-launch-copy strong{font-size:15px;letter-spacing:-.02em}.film-launch-copy small{color:var(--story-muted);font-size:11px}.film-launch-arrow{color:#0b8666;font-size:23px;margin-left:auto}
.film-launch:hover{background:#fff;transform:translateY(-2px)}
.film-frame.is-playing-with-sound .film-launch{opacity:0;pointer-events:none;transform:translateY(8px)}
.hero-points{display:grid;gap:24px;grid-column:1/-1;grid-template-columns:repeat(3,1fr);margin:28px auto 0;max-width:1180px;padding:0 12px 38px;width:100%}
.hero-points span{align-items:center;color:#37564c;display:flex;font-size:14px;font-weight:700;gap:10px;justify-content:center;text-align:center}
.hero-points span:before{color:#0b916d;content:'✓';font-weight:900}

.industry-strip{background:#e8f4ef;border-bottom:1px solid #c9ded5;border-top:1px solid #d2e5dd;overflow:hidden;padding:35px 0 30px}
.industry-intro{align-items:end;display:flex;gap:32px;justify-content:space-between;margin-bottom:24px}
.industry-intro h2{color:var(--story-ink);font-size:23px;letter-spacing:-.035em;line-height:1.25;margin:0}
.industry-intro p{color:var(--story-muted);font-size:13px;margin:0;text-align:right}
.industry-marquee{margin-inline:auto;mask-image:linear-gradient(90deg,transparent 0,#000 72px,#000 calc(100% - 72px),transparent 100%);overflow:hidden;width:min(1320px,calc(100% - 64px))}
.industry-track{display:flex;gap:14px;width:max-content;will-change:transform}
.industry-group{display:flex;gap:14px;list-style:none;margin:0;padding:0}
.industry-group li{align-items:center;background:rgba(255,255,255,.78);border:1px solid #c7ddd4;border-radius:14px;color:var(--story-ink);display:flex;font-size:15px;font-weight:750;gap:12px;min-height:62px;padding:10px 20px;white-space:nowrap}
.industry-group svg{fill:none;flex:0 0 auto;height:28px;stroke:#088464;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6;width:28px}
.js-ready .industry-track{animation:industry-scroll 42s linear infinite}.industry-marquee:hover .industry-track{animation-play-state:paused}
@keyframes industry-scroll{to{transform:translateX(calc(-50% - 7px))}}

.connection-section{--pointer-x:50%;--pointer-y:50%;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),rgba(70,216,170,.1),transparent 25%),var(--story-green);color:#fff;padding:104px 0}
.connection-grid{align-items:center;display:grid;gap:88px;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr)}
.connection-copy h2,.product-story-head h2,.impact-head h2,.collab-head h2{letter-spacing:-.052em;line-height:1.04}
.connection-copy h2{font-size:clamp(40px,3.8vw,54px);margin:0 0 26px;max-width:520px}
.connection-copy p{color:#b7ccc5;font-size:17px;line-height:1.75;margin:0 0 15px;max-width:620px}
.model-stages{counter-reset:item;display:grid;list-style:none;margin:0;padding:0}
.model-stages li{align-items:center;border-bottom:1px solid rgba(255,255,255,.16);display:grid;gap:20px;grid-template-columns:58px 1fr;min-height:104px;padding:16px 0;position:relative;transition:background .24s ease,padding .24s ease,transform .24s ease}
.model-stages li:first-child{border-top:1px solid rgba(255,255,255,.16)}
.model-stages b{align-items:center;background:rgba(70,216,170,.12);border:1px solid rgba(70,216,170,.35);border-radius:50%;color:var(--story-mint);display:flex;font-size:11px;height:44px;justify-content:center;width:44px}
.model-stages strong{display:block;font-size:21px;letter-spacing:-.02em}
.model-stages span{color:#a9c1b9;display:block;font-size:13px;margin-top:4px}
.model-stages li:not(:last-child):after{bottom:-8px;color:var(--story-mint);content:'↓';font-size:14px;left:16px;position:absolute;z-index:1}

@media(hover:hover) and (pointer:fine){
  .film-frame:hover{box-shadow:0 42px 105px rgba(4,43,35,.24)}
  .model-stages li:hover{background:rgba(255,255,255,.055);padding-left:14px;transform:translateX(5px)}
}

.product-story{background:#fff;padding:112px 0}
.product-story-lower{padding-top:76px}
.product-story-head{margin:0 auto 62px;max-width:900px;text-align:center}
.product-story-head h2,.impact-head h2{font-size:clamp(42px,4.8vw,66px);margin:0 0 20px}
.product-story-head p,.impact-head p{color:var(--story-muted);font-size:18px;line-height:1.72;margin:0 auto;max-width:800px}
.feature-row{align-items:center;background:var(--story-paper);border:1px solid var(--story-line);border-radius:26px;display:grid;gap:54px;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);margin-top:46px;overflow:hidden;padding:46px 0 46px 46px}
.feature-row.reverse{grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);padding:46px 46px 46px 0}
.feature-row.reverse .feature-copy{order:2}
.feature-row.reverse .feature-media{order:1}
.feature-copy{padding:8px 6px}
.feature-number{align-items:center;border:1px solid #a9c7bb;border-radius:50%;color:#087357;display:flex;font-size:11px;font-weight:800;height:38px;justify-content:center;margin-bottom:25px;width:38px}
.feature-copy h3{font-size:clamp(30px,3vw,44px);letter-spacing:-.045em;line-height:1.08;margin:0 0 20px}
.feature-copy>p{color:var(--story-muted);font-size:16px;line-height:1.75;margin:0}
.feature-copy ul{border-top:1px solid var(--story-line);display:grid;gap:12px;list-style:none;margin:25px 0 0;padding:22px 0 0}
.feature-copy li{color:#345148;font-size:13px;line-height:1.55;padding-left:22px;position:relative}
.feature-copy li:before{color:#078563;content:'✓';font-weight:900;left:0;position:absolute}
.feature-media{background:#dfe9e5;border:1px solid #c9d8d2;border-radius:18px 0 0 18px;box-shadow:0 22px 55px rgba(4,43,35,.12);margin:0;overflow:hidden}
.feature-row.reverse .feature-media{border-radius:0 18px 18px 0}
.feature-media img,.feature-media video{aspect-ratio:16/9;display:block;height:auto;object-fit:cover;width:100%}
.feature-video{position:relative}
.feature-video .loop-toggle{background:rgba(3,36,29,.92);border:1px solid rgba(255,255,255,.35);border-radius:999px;bottom:16px;color:#fff;cursor:pointer;font:750 12px Manrope,system-ui;padding:10px 15px;position:absolute;right:16px}

.impact-section{background:#edf4f0;padding:112px 0}
.impact-head{margin:0 0 54px;max-width:880px}
.impact-head p{margin-left:0}
.impact-section .trace-lab{border-radius:24px;grid-template-columns:330px minmax(0,1fr)}
.impact-section .trace-controls{padding:38px 30px}
.impact-section .trace-controls h3{font-size:27px}
.impact-section .trace-workspace{padding:38px}
.trace-workspace-head>div>span{color:#6fcdb0;display:block;font-size:10px;font-weight:800;letter-spacing:.09em;margin-bottom:7px;text-transform:uppercase}
.impact-section .trace-flow{margin:48px 0 30px}
.impact-section .trace-result{align-items:center;grid-template-columns:minmax(0,1fr) minmax(210px,310px)}
.review-note{border-left:1px solid var(--story-line);color:var(--story-muted);font-size:12px;line-height:1.6;padding-left:24px}

.team-collaboration{--collab-x:72%;--collab-y:35%;--active-role:#46d8aa;background:radial-gradient(circle at var(--collab-x) var(--collab-y),rgba(70,216,170,.14),transparent 29%),linear-gradient(145deg,#021f19,#063c31 72%,#07513f);color:#fff;overflow:hidden;padding:118px 0 104px}
.collab-head{align-items:end;display:grid;gap:70px;grid-template-columns:minmax(0,1.05fr) minmax(390px,.75fr);margin-bottom:58px}
.collab-head h2{font-size:clamp(46px,5.4vw,74px);margin:0;max-width:760px;text-wrap:balance}
.collab-head p{color:#b3cac2;font-size:17px;line-height:1.75;margin:0;max-width:570px}
.collab-stage{background:rgba(1,29,23,.58);border:1px solid rgba(134,213,187,.3);border-radius:28px;box-shadow:0 45px 110px rgba(0,16,12,.34);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);overflow:hidden}
.team-map{background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;min-height:590px;position:relative}
.team-map:after{background:radial-gradient(circle,rgba(70,216,170,.12),transparent 68%);content:'';height:420px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:420px}
.team-lines{inset:0;height:100%;position:absolute;width:100%;z-index:1}.team-lines path{fill:none;stroke:rgba(125,172,157,.28);stroke-dasharray:8 10;stroke-linecap:round;stroke-width:2;transition:stroke .3s ease,stroke-width .3s ease}.team-lines path.active{animation:line-flow 1.1s linear infinite;stroke:var(--active-role);stroke-width:3}
@keyframes line-flow{to{stroke-dashoffset:-36}}
.team-role{--role:#46d8aa;align-items:center;background:rgba(9,69,56,.88);border:1px solid rgba(151,204,186,.32);border-radius:16px;color:#fff;cursor:pointer;display:flex;font:inherit;gap:12px;padding:12px 15px;position:absolute;text-align:left;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease;width:190px;z-index:3}
.team-role i{align-items:center;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:10px;color:var(--role);display:flex;flex:0 0 auto;font-size:13px;font-style:normal;font-weight:850;height:38px;justify-content:center;width:38px}.team-role span{display:grid}.team-role strong{font-size:14px}.team-role small{color:#95b2a8;font-size:10px;margin-top:2px}.team-role[aria-pressed=true]{background:#fff;border-color:#fff;box-shadow:0 16px 38px rgba(0,20,15,.28);color:var(--story-ink);transform:scale(1.04)}.team-role[aria-pressed=true] i{background:#e9f8f2;border-color:#c8e8dc}.team-role[aria-pressed=true] small{color:#63776f}.role-mechanical{left:7%;top:12%}.role-electrical{--role:#55bff0;right:7%;top:12%}.role-software{--role:#9489ff;bottom:12%;left:7%}.role-project{--role:#ffb85c;bottom:12%;right:7%}
.requirement-hub{background:#fff;border:1px solid #bce5d6;border-radius:22px;box-shadow:0 24px 60px rgba(0,20,15,.28),0 0 0 10px rgba(70,216,170,.05);color:var(--story-ink);left:50%;margin:0;padding:28px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);width:min(330px,38%);z-index:4}.requirement-hub>span{align-items:center;color:#08795c;display:flex;font-size:9px;font-weight:800;gap:7px;justify-content:center;letter-spacing:.08em;text-transform:uppercase}.requirement-hub>span i{animation:hub-pulse 1.8s ease infinite;background:#35d6a2;border-radius:50%;box-shadow:0 0 0 5px rgba(53,214,162,.12);height:6px;width:6px}.requirement-hub h3{font-size:24px;letter-spacing:-.035em;margin:20px 0 10px}.requirement-hub>div{align-items:baseline;display:flex;gap:10px;justify-content:center}.requirement-hub s{color:#91a29c;font-size:28px}.requirement-hub>div strong{font-size:52px;letter-spacing:-.06em;line-height:1}.requirement-hub>div strong:before{color:#11a87e;content:'→';font-size:22px;margin-right:10px;vertical-align:8px}.requirement-hub>div small{color:var(--story-muted);font-size:12px}.requirement-hub p{border-top:1px solid var(--story-line);color:var(--story-muted);font-size:11px;line-height:1.55;margin:21px 0 0;padding-top:17px}
@keyframes hub-pulse{50%{box-shadow:0 0 0 10px rgba(53,214,162,0)}}
.team-review{background:rgba(4,42,34,.96);border-left:1px solid rgba(134,213,187,.22);display:flex;flex-direction:column;min-width:0;padding:38px 34px}.review-top{align-items:center;color:#7ea398;display:flex;font-size:10px;font-weight:800;justify-content:space-between;letter-spacing:.08em;text-transform:uppercase}.review-top b{align-items:center;color:#b4d5ca;display:flex;font-size:9px;gap:8px}.review-top b i{background:var(--active-role);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--active-role) 18%,transparent);height:6px;width:6px}.review-role{align-items:center;background:color-mix(in srgb,var(--active-role) 14%,transparent);border:1px solid color-mix(in srgb,var(--active-role) 45%,transparent);border-radius:16px;color:var(--active-role);display:flex;font-size:22px;font-weight:850;height:58px;justify-content:center;margin:56px 0 22px;width:58px}.team-review h3{font-size:34px;letter-spacing:-.045em;margin:0 0 14px}.team-review>p{color:#abc4bb;font-size:14px;line-height:1.7;margin:0}.team-review ul{display:grid;gap:0;list-style:none;margin:28px 0 0;padding:0}.team-review li{border-top:1px solid rgba(255,255,255,.13);font-size:12px;padding:14px 0 14px 22px;position:relative}.team-review li:before{color:var(--active-role);content:'✓';font-weight:900;left:0;position:absolute}.review-shared{align-items:center;border-top:1px solid rgba(255,255,255,.13);color:#8ca9a0;display:flex;font-size:10px;gap:10px;margin-top:auto;padding-top:22px}.review-shared i{background:#46d8aa;border-radius:50%;height:6px;order:-1;width:6px}
.deal-card{align-items:center;background:linear-gradient(120deg,#fff,#e9f8f2);border:1px solid #b9ddcf;border-radius:24px;color:var(--story-ink);display:grid;gap:65px;grid-template-columns:minmax(0,1fr) auto;margin-top:42px;padding:40px 44px}.deal-card h3{font-size:clamp(31px,3.5vw,48px);letter-spacing:-.05em;line-height:1.08;margin:0 0 14px;max-width:740px}.deal-card p{color:var(--story-muted);font-size:14px;line-height:1.7;margin:0;max-width:760px}.deal-action{align-items:flex-end;display:grid;gap:14px;justify-items:end}.deal-action>span{color:#627970;font-size:10px;font-weight:750;text-align:right}.deal-action .cta-button{min-width:190px}

.story-hero :focus-visible,.product-story :focus-visible,.impact-section :focus-visible,.team-collaboration :focus-visible{outline:3px solid var(--story-mint);outline-offset:4px}

@media(max-width:1080px){
  .wrap{width:min(100% - 48px,1320px)}
  .industry-marquee{width:calc(100% - 48px)}
  .nav{gap:14px}.nav a{font-size:12px}
  .connection-grid{gap:52px;grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr)}
  .feature-row,.feature-row.reverse{gap:34px;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)}
  .impact-section .trace-lab{grid-template-columns:1fr}
  .impact-section .trace-controls{border-bottom:1px solid #21584b;border-right:0}
  .impact-section .trace-scenarios{grid-template-columns:repeat(3,1fr)}
  .collab-stage{grid-template-columns:minmax(0,1fr) 330px}.team-role{width:172px}.requirement-hub{width:min(300px,38%)}
}

@media(max-width:940px){
  .story-hero{background:linear-gradient(180deg,#fff 0 46%,#f3f7f4 46% 100%)}
  .story-hero>.wrap{grid-template-columns:1fr}
  .hero-intro{margin:0 auto 8px;max-width:760px;text-align:center}
  .hero-intro p{margin-left:auto;margin-right:auto;max-width:700px}
  .film-frame{margin:0 auto;max-width:780px;width:100%}
  .industry-intro{align-items:flex-start;display:grid;gap:8px}.industry-intro p{text-align:left}
  .collab-head{gap:25px;grid-template-columns:1fr}.collab-stage{grid-template-columns:1fr}.team-review{border-left:0;border-top:1px solid rgba(134,213,187,.22);min-height:440px}.review-role{margin-top:35px}
}

@media(max-width:800px){
  .wrap{width:calc(100% - 36px)}
  .industry-marquee{mask-image:linear-gradient(90deg,transparent 0,#000 44px,#000 calc(100% - 44px),transparent 100%);width:calc(100% - 36px)}
  .head-inner{gap:12px;min-height:76px;padding:12px 0}
  .brand-lock{gap:12px}.brand-lock img{width:146px}.product-lock{gap:8px;padding-left:12px}.product-lock span{display:none}
  .nav{flex-wrap:wrap;gap:12px;justify-content:flex-end}.nav>a:not(.nav-book){display:none}.nav .nav-book{font-size:12px}
  .story-hero{padding-top:58px}.story-hero>.wrap{gap:32px}.hero-intro{margin-bottom:6px}.hero-intro h1{font-size:clamp(44px,10vw,66px)}.hero-intro p{font-size:17px;line-height:1.65}
  .film-frame{border-radius:16px}.film-launch{bottom:10px;left:10px;right:10px}.film-play-icon{height:38px;width:38px}
  .hero-points{gap:11px;grid-template-columns:1fr;padding:24px 0 36px}.hero-points span{justify-content:flex-start;text-align:left}
  .industry-strip{padding:27px 0 24px}.industry-intro{margin-bottom:18px}.industry-intro h2{font-size:20px}.industry-group li{font-size:14px;min-height:56px;padding:9px 16px}.industry-group svg{height:24px;width:24px}.js-ready .industry-track{animation-duration:34s}
  .connection-section,.product-story,.impact-section{padding:76px 0}
  .connection-grid{grid-template-columns:1fr}
  .connection-grid{gap:48px}
  .feature-row,.feature-row.reverse{gap:30px;grid-template-columns:1fr;margin-top:30px;padding:30px 0 0 30px}
  .feature-row.reverse{padding:30px 30px 0 0}.feature-row.reverse .feature-copy{order:0;padding-left:30px}.feature-row.reverse .feature-media{order:1}
  .feature-copy{padding-right:30px}.feature-copy h3{font-size:34px}.feature-media,.feature-row.reverse .feature-media{border-radius:15px 0 0 0}
  .impact-section .trace-scenarios{grid-template-columns:1fr}
  .impact-section .trace-workspace{padding:28px 22px}.impact-section .trace-result{grid-template-columns:1fr}.review-note{border-left:0;border-top:1px solid var(--story-line);padding:18px 0 0}
  .team-collaboration{padding:78px 0 70px}.collab-head{margin-bottom:38px}.collab-head h2{font-size:48px}.team-map{min-height:520px}.team-role{width:150px}.role-mechanical,.role-software{left:4%}.role-electrical,.role-project{right:4%}.requirement-hub{padding:22px;width:280px}.deal-card{gap:30px;grid-template-columns:1fr;padding:30px}.deal-action{justify-items:start}.deal-action>span{text-align:left}
}

@media(max-width:480px){
  .wrap{width:calc(100% - 28px)}
  .industry-marquee{mask-image:linear-gradient(90deg,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);width:100%}
  .brand-lock img{width:132px}.product-lock strong{font-size:20px}.nav .nav-book{font-size:11px}.language button{height:34px;width:36px}.nav .login-trigger{min-height:38px;padding:0 13px}
  .story-hero{padding-top:44px}.hero-intro h1{font-size:clamp(36px,10.5vw,43px)}.hero-intro p{font-size:16px;margin-top:22px}.hero-intro .cta-button{width:100%}
  .film-launch-copy strong{font-size:14px}.film-launch-copy small{font-size:10px}.film-launch-arrow{font-size:19px}
  .connection-copy h2,.product-story-head h2,.impact-head h2,.collab-head h2{font-size:38px}
  .connection-copy p,.product-story-head p,.impact-head p,.collab-head p{font-size:15px}
  .model-stages li{min-height:92px}.model-stages strong{font-size:18px}
  .product-story-head{margin-bottom:38px;text-align:left}
  .feature-row,.feature-row.reverse{border-radius:18px;padding:26px 0 0 22px}.feature-row.reverse .feature-copy{padding-left:0}.feature-copy{padding-right:22px}.feature-copy h3{font-size:29px}.feature-copy>p{font-size:14px}.feature-number{margin-bottom:18px}
  .impact-section .trace-controls{padding:28px 22px}.impact-section .trace-workspace{padding:24px 18px}.trace-workspace-head{display:grid}.impact-section .trace-flow{margin-top:34px}
  .team-map{display:grid;gap:10px;grid-template-columns:1fr 1fr;min-height:0;padding:16px}.team-lines,.team-map:after{display:none}.requirement-hub{grid-column:1/-1;grid-row:1;left:auto;position:relative;top:auto;transform:none;width:100%}.team-role{left:auto!important;position:relative;right:auto!important;top:auto!important;bottom:auto!important;width:100%}.team-role[aria-pressed=true]{transform:none}.team-review{min-height:420px;padding:30px 24px}.deal-card{padding:26px 22px}.deal-action,.deal-action .cta-button{width:100%}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.film-frame{transform:none!important}.film-launch,.model-stages li{transition:none}.js-ready .industry-track,.team-lines path.active,.requirement-hub>span i{animation:none}}
