/* The story page keeps its layout and motion separate from article pages. */
.story-page{--story-navy:#0c1b39;--story-cyan:#8cdfff}
.story-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--story-navy);color:#fff;padding:24px 0 0}
.story-hero::before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 88% 24%,#164d894d,transparent 48%),linear-gradient(115deg,transparent 48%,#203c5c17 48.1%,transparent 48.2%)}
.story-hero .breadcrumbs{font-size:11px;color:#97abc7;margin-bottom:28px}.story-hero .breadcrumbs a:hover{color:#fff}
.story-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:60px;padding:26px 0 60px}
.story-eyebrow{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.1px;color:#c1d4ee;margin-bottom:25px}.story-eyebrow>span{width:6px;height:6px;border-radius:50%;background:#8bdcc6;box-shadow:0 0 0 5px #8bdcc610}
.story-hero h1{font-size:clamp(35px,3.65vw,52px);line-height:1.55;letter-spacing:-1.4px;font-weight:650;white-space:nowrap}.story-hero h1>span{color:var(--story-cyan);position:relative}.story-hero h1>span::after{content:'';position:absolute;left:2px;bottom:-8px;width:82px;height:4px;border-radius:50%;background:var(--pink);transform:rotate(-4deg)}
.story-hero-description{font-size:17px;line-height:2;color:#bccce3;margin-top:30px;max-width:455px}.story-hero-description strong{color:#fff;font-weight:600}.story-primary{background:var(--story-cyan);color:#0a2744;margin-top:27px;min-width:192px}.story-primary:hover{background:#b7ebff}.story-signature{display:flex;align-items:center;gap:12px;color:#9cb2cd;font-size:12px;margin-top:26px}.story-signature>span{font-size:27px;line-height:1;color:#f691be}
.story-art-wrap{position:relative;isolation:isolate;padding:16px 22px 0;min-width:0}.story-art{perspective:1000px;transition:transform .25s ease;position:relative;z-index:1}.story-photo{margin:0;background:#fff;padding:12px;border:1px solid #fff;border-radius:24px;box-shadow:0 30px 60px #020a2080,8px 10px 0 #17375c;transform:rotate(-3deg);animation:story-float 8s ease-in-out infinite}.story-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:14px}.story-photo figcaption{display:flex;justify-content:space-between;align-items:center;color:#375375;padding:9px 10px 0;font:9px Arial,sans-serif;letter-spacing:2px}.story-photo figcaption>span:last-child{font-size:23px;color:var(--blue)}
.story-orbit{position:absolute;z-index:-1;pointer-events:none;left:-2%;top:-5%;width:104%;aspect-ratio:1;border:1px solid #6aadd536;border-radius:50%;transform:rotate(-25deg) scaleX(1.08)}.story-orbit-two{left:5%;top:5%;width:89%;border-style:dashed;border-color:#63a6d331;animation:story-orbit 55s linear infinite}.story-floating-code{position:absolute;right:-8px;top:-7px;z-index:3;padding:12px;border:1px solid #688cba5c;border-radius:14px;box-shadow:0 12px 30px #05132b80;background:#17365c;color:#a9e9ff;font:23px monospace;transform:rotate(9deg)}
.story-art-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:25px -5px 0;position:relative;z-index:2}.story-art-caption>span{font:8px Arial,sans-serif;letter-spacing:1.6px;color:#86a7c8}.story-art-caption .motion-toggle{font-size:10px;padding:7px 10px;margin:0;color:#b8cce3;border-color:#506584;background:transparent;min-height:35px}.story-art-caption .motion-toggle:hover{color:white;border-color:#a2c3df}
.story-local-strip{border-top:1px solid #8199bd30;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:24px;padding:24px 0 27px}.story-local-strip>div{display:flex;align-items:center;gap:16px}.story-local-strip p{display:flex;flex-direction:column;gap:2px}.story-local-strip strong{font-size:14px;font-weight:500}.story-local-strip p>span{font-size:11px;color:#96acc8}.story-local-icon{font-size:30px;color:#88bbdf}.story-open-dot{width:8px;height:8px;background:#7ed9ba;border-radius:50%;box-shadow:0 0 0 6px #77d9b610;margin-inline:8px}.story-local-strip>a{font-size:13px;color:#bcd6ed;display:flex;align-items:center;gap:22px}.story-local-strip>a>span{font-size:22px}.story-local-strip a:hover{color:#fff}
.story-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding-block:95px}.story-intro h2,.story-section-heading h2{font-size:36px;line-height:1.6;letter-spacing:-.7px}.story-intro h2>span{color:#68798f}.story-intro-copy{padding-top:30px;font-size:17px;line-height:2.05;color:#5a6a80}.story-intro-copy p+p{margin-top:22px}
.story-expertise{padding:65px 0;background:#f3f6fb;border-block:1px solid #e7edf6}.story-section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:36px}.story-section-heading .text-link{font-size:14px;padding-bottom:6px;color:var(--blue)}.story-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.story-service{border:1px solid #dce5f1;border-radius:20px;padding:35px;overflow:hidden}.story-service-hardware{background:white}.story-service-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.story-service-top>span:last-child{font:9px Arial,sans-serif;letter-spacing:1.3px;color:#6a7d97}.story-service-icon{width:49px;height:49px;display:grid;place-items:center;border:1px solid #dce7f8;border-radius:13px;color:var(--blue);background:#f4f8ff}.story-service-icon svg{width:28px;height:28px}.story-service h3{font-size:29px;line-height:1.6;margin-bottom:17px;letter-spacing:-.4px}.story-service>p{font-size:16px;line-height:1.95;color:#5b6e87;min-height:92px}.story-service-links{display:flex;flex-direction:column;margin-top:25px}.story-service-links a{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e4ebf5;padding:12px 0;font-size:14px}.story-service-links a:last-child{padding-bottom:0}.story-service-links a>span{color:var(--blue)}.story-service-links a:hover{color:var(--blue)}
.story-service-software{background:#e7effc;border-color:#d5e3f7}.story-service-software .story-service-icon{background:#fff;border-color:#c7dcfb}.story-code-note{display:flex;align-items:center;gap:20px;border:1px solid #c9dcf7;background:#f6f9ff;border-radius:10px;margin:28px 0;padding:22px 18px;color:#3066b7;font:10px monospace;letter-spacing:1px}.story-code-note>span:nth-child(2){font-size:25px;color:#829cbd}.story-software-link{display:flex;justify-content:space-between;align-items:center;color:#1455c9;font-size:14px;font-weight:550;padding-top:10px}.story-software-link>span{font-size:22px}.story-more-services{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 18px;font-size:13px;line-height:1.9;color:#6c7b91;margin-top:26px}.story-more-services a{color:#305c9d}.story-more-services a:hover{text-decoration:underline;text-underline-offset:4px}
.story-approach{padding-block:90px}.story-section-heading>p{font-size:16px;line-height:1.95;color:#718097}.story-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.story-step{border-top:1px solid #ccdbec;padding-top:22px}.story-step>div{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;color:#5287ce}.story-step>div>span{font:12px monospace;letter-spacing:1px}.story-step svg{width:32px;height:32px}.story-step h3{font-size:23px;margin-bottom:13px}.story-step p{font-size:16px;line-height:1.95;color:#63748b}
.story-knowledge{position:relative;isolation:isolate;display:grid;grid-template-columns:1.4fr 1fr;gap:35px;background:#174fc8;border-radius:24px;padding:50px 55px;overflow:hidden;color:#fff}.story-knowledge::after{content:'';position:absolute;right:-75px;top:-110px;width:540px;height:540px;border:1px solid #8fb8ff38;border-radius:50%;box-shadow:0 0 0 60px #79a5ff0d,0 0 0 120px #79a5ff08;z-index:-1}.story-knowledge .eyebrow{color:#b2d4ff}.story-knowledge h2{font-size:34px;line-height:1.6;letter-spacing:-.5px}.story-knowledge-copy>p:not(.eyebrow){color:#ccddff;font-size:15px;line-height:2;margin-block:20px 26px}.story-knowledge .button{font-size:14px}.story-knowledge-art{display:grid;place-items:center;perspective:900px}.story-book{width:220px;min-height:275px;padding:27px 25px;display:flex;flex-direction:column;justify-content:space-between;border-radius:4px 14px 14px 4px;background:#dfefff;color:#144a9f;border-left:9px solid #a8cefa;box-shadow:8px 8px 0 #93bbee,22px 28px 35px #062b8759;transform:rotate(-10deg) rotateY(-17deg);animation:story-book-float 9s ease-in-out infinite}.story-book>span:first-child{font:bold 47px Arial,sans-serif;letter-spacing:-2px}.story-book>span:first-child>span{display:block;font:7px Arial,sans-serif;letter-spacing:2px;margin-top:6px}.story-book>span:last-child{font-size:22px;line-height:1.7;font-weight:600}.story-book b{color:#e6659d;font-size:34px;font-weight:400;margin-left:4px}.story-visit{display:flex;align-items:center;justify-content:space-between;gap:45px;padding-block:65px}.story-visit h2{font-size:27px;margin-bottom:15px}.story-visit address,.story-visit>div>p:not(.eyebrow){font-style:normal;color:#66768c;font-size:14px;line-height:1.95}.story-visit .button{flex-shrink:0;font-size:14px}
@keyframes story-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-7px) rotate(-1.5deg)}}@keyframes story-orbit{to{transform:rotate(335deg) scaleX(1.08)}}@keyframes story-book-float{0%,100%{transform:translateY(0) rotate(-10deg) rotateY(-17deg)}50%{transform:translateY(-8px) rotate(-7deg) rotateY(-12deg)}}
@media(max-width:1100px){.story-hero-grid{gap:30px}.story-hero h1{font-size:clamp(30px,3.75vw,42px);letter-spacing:-.9px}.story-hero-description{font-size:16px}.story-art-wrap{padding-inline:12px}.story-intro{gap:50px}.story-intro h2,.story-section-heading h2{font-size:31px}.story-service{padding:27px}.story-service-top{gap:10px}.story-service-top>span:last-child{font-size:8px;letter-spacing:.8px}.story-knowledge{padding:40px}.story-knowledge h2{font-size:30px}.story-book{width:180px;min-height:242px}.story-code-note{gap:13px;font-size:9px}}
@media(max-width:760px){.story-hero{padding-top:23px}.story-hero .breadcrumbs{margin-bottom:22px;font-size:11px}.story-hero-grid{grid-template-columns:1fr;gap:35px;padding:4px 0 31px}.story-eyebrow{font-size:12px;margin-bottom:19px}.story-hero h1{font-size:clamp(27px,7.8vw,42px);letter-spacing:-.9px;line-height:1.65;white-space:normal}.story-hero-description{font-size:16px;line-height:2;margin-top:25px;max-width:490px}.story-wide-break{display:none}.story-primary{font-size:15px;min-width:180px;margin-top:23px}.story-signature{font-size:12px;margin-top:19px}.story-art-wrap{padding:7px 19px 0;width:100%;max-width:470px;margin-inline:auto}.story-photo{padding:9px;border-radius:20px;box-shadow:0 20px 40px #020a2050,5px 7px 0 #17375c;transform:rotate(-2deg)}.story-photo img{border-radius:12px;max-height:none}.story-photo figcaption{font-size:8px;padding:7px 5px 0;letter-spacing:1.6px}.story-floating-code{right:1px;top:-5px;font-size:20px;padding:11px;border-radius:12px}.story-art-caption{margin-top:22px;gap:8px}.story-art-caption>span{font-size:7px;letter-spacing:1.25px}.story-art-caption .motion-toggle{font-size:10px;min-height:40px}.story-local-strip{grid-template-columns:1fr 1fr;gap:23px 18px;padding:25px 0}.story-local-strip>div{gap:10px}.story-local-strip strong{font-size:12px}.story-local-strip p>span{font-size:10px}.story-local-icon{font-size:25px}.story-open-dot{width:6px;height:6px;margin-inline:6px}.story-local-strip>a{grid-column:1/-1;border-top:1px solid #8199bd24;padding-top:16px;justify-content:space-between;font-size:13px}.story-intro{grid-template-columns:1fr;gap:25px;padding-block:50px}.story-intro h2,.story-section-heading h2{font-size:29px;line-height:1.6}.story-intro-copy{padding-top:0;font-size:16px;line-height:2}.story-intro-copy p+p{margin-top:17px}.story-expertise{padding-block:42px}.story-section-heading{align-items:start;flex-direction:column;gap:19px;margin-bottom:27px}.story-section-heading .text-link{font-size:13px;padding:0}.story-service-grid{grid-template-columns:1fr;gap:20px}.story-service{padding:27px 24px;border-radius:18px}.story-service-top{margin-bottom:20px}.story-service-top>span:last-child{font-size:8px;letter-spacing:.6px}.story-service h3{font-size:27px;line-height:1.6}.story-service>p{font-size:16px;line-height:2;min-height:0}.story-service-links a{padding-block:15px;font-size:14px;min-height:48px}.story-service-links{margin-top:20px}.story-code-note{font-size:9px;padding:22px 15px;gap:15px;margin-block:24px}.story-software-link{font-size:14px;min-height:48px;padding:0}.story-more-services{justify-content:start;gap:9px 15px;font-size:13px;margin-top:23px}.story-more-services>span{display:none}.story-more-services a{display:block}.story-approach{padding-block:49px}.story-section-heading>p{font-size:15px;line-height:1.9}.story-steps{grid-template-columns:1fr;gap:28px;margin-top:30px}.story-step{padding-top:20px;display:grid;grid-template-columns:42px 1fr;column-gap:18px}.story-step>div{grid-row:1/3;display:flex;flex-direction:column;align-items:start;justify-content:start;gap:20px;margin:0}.story-step svg{width:27px;height:27px}.story-step h3{font-size:23px;margin-bottom:10px}.story-step p{font-size:16px;line-height:2}.story-knowledge{grid-template-columns:1fr;gap:35px;padding:30px 25px 42px;border-radius:19px}.story-knowledge h2{font-size:27px;line-height:1.65}.story-knowledge-copy>p:not(.eyebrow){font-size:15px;line-height:2;margin-block:18px 22px}.story-knowledge-copy br:not(h2 br){display:none}.story-knowledge .button{font-size:14px}.story-book{width:165px;min-height:207px;padding:22px;border-left-width:7px}.story-book>span:first-child{font-size:37px}.story-book>span:last-child{font-size:18px}.story-book b{font-size:28px}.story-knowledge-art{padding-block:10px}.story-visit{flex-direction:column;align-items:start;gap:25px;padding-block:43px}.story-visit h2{font-size:24px;line-height:1.65}.story-visit address,.story-visit>div>p:not(.eyebrow){font-size:14px;line-height:2}.story-visit .button{font-size:14px}}
@media(prefers-reduced-motion:reduce){.story-photo,.story-orbit,.story-book{animation:none}.story-art{transition:none}}
.story-photo img{aspect-ratio:1.2;padding:28px 14px;object-fit:contain}
.story-book>span:first-child>img{width:96px;height:64px;object-fit:contain;margin-bottom:8px}
@media(max-width:760px){.story-photo img{padding:22px 9px}.story-book>span:first-child>img{width:78px;height:52px}}
