.optical-host{position:absolute;inset:0;overflow:hidden;background:#f0f1ef}.optical-host canvas{width:100%;height:100%;display:block;position:absolute;inset:0;opacity:0;transition:opacity .65s}.optical-host[data-ready=true] canvas{opacity:1}.fallback-photo{width:100%;height:100%;object-fit:cover}.optical-host>.fallback-photo{position:absolute;width:58%;height:auto;aspect-ratio:1.6;top:33%;left:36%;object-fit:cover;border-radius:5px}.optical-host[data-ready=true]>.fallback-photo,.optical-host[data-ready=true]>.technical-fallback{visibility:hidden}.home-story{height:580svh;position:relative;--intro:1;--outro:0;--micro:0}.home-sticky{position:sticky;top:0;height:100svh;min-height:560px;overflow:hidden}.home-intro{position:absolute;left:var(--space);top:26%;z-index:3;opacity:var(--intro);transform:translateY(calc((1 - var(--intro))*-25px));pointer-events:none}.home-intro .eyebrow{font-size:14px}.home-intro h1{font-size:clamp(62px,7.4vw,112px);line-height:1.16;letter-spacing:-.065em;margin:0 0 32px}.positioning{font-size:clamp(16px,1.45vw,21px);color:#6b7073;line-height:1.95}.home-outro{position:absolute;inset:14% 0 auto;text-align:center;z-index:3;opacity:var(--outro);pointer-events:none;transform:translateY(calc((1 - var(--outro))*15px))}.home-outro .eyebrow{margin:0 0 18px;max-width:none}.home-outro h2{font-size:clamp(40px,4.4vw,66px)}.home-micro-copy{position:absolute;top:12%;left:var(--space);z-index:3;opacity:var(--micro);pointer-events:none;max-width:410px}.home-micro-copy h2{font-size:clamp(32px,3.1vw,48px);line-height:1.3;margin-bottom:20px}.home-micro-copy p:last-child{font-size:16px;color:#74797d;max-width:22em;line-height:1.9}.home-bottom{position:absolute;bottom:40px;left:var(--space);right:var(--space);display:flex;justify-content:space-between;align-items:center;gap:25px;z-index:4}.scroll-cue{font-size:13px;color:#82888b;display:flex;align-items:center;gap:16px;opacity:var(--intro)}.scroll-cue:before{content:"";height:1px;width:32px;background:#a7abad}.story-progress,.product-progress{display:flex;gap:24px;padding:0;list-style:none;font-size:12px;color:#93999c}.story-progress li,.product-progress li{position:relative;padding-top:13px;white-space:nowrap;transition:color .4s}.story-progress li:before,.product-progress li:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#c6ccce}.story-progress li.active,.product-progress li.active{color:#2f3539}.story-progress li.active:before,.product-progress li.active:before{height:2px;background:#778b47}.home-note{position:absolute;left:var(--space);bottom:38px;opacity:var(--micro);z-index:4}.technical-story{height:450svh;position:relative}.technical-sticky{height:100svh;min-height:600px;position:sticky;top:0;overflow:hidden}.technical-copy{position:absolute;inset:0;z-index:3;pointer-events:none}.technical-step{position:absolute;top:9%;left:var(--space);max-width:440px;opacity:0;transform:translateY(18px);transition:opacity .55s,transform .7s}.technical-step.is-active{opacity:1;transform:none}.technical-step h2{font-size:clamp(34px,3.3vw,50px);line-height:1.3;margin-bottom:20px}.technical-step>p:not(.eyebrow){font-size:16px;color:#6c7377;line-height:1.9;max-width:25em}.technical-step .statement{margin-top:15px;font-size:14px!important;color:#454d50!important}.technical-step:nth-child(2){left:auto;right:var(--space);top:11%;max-width:370px}.technical-step:nth-child(3){top:9%}.scene-bottom{position:absolute;left:var(--space);right:var(--space);bottom:32px;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:5;font-size:13px;color:#697176}.fine-progress{width:120px;height:1px;background:#ccd1d2}.fine-progress i{display:block;height:2px;width:100%;background:#7e8e60;transform-origin:left;transform:scaleX(var(--progress,0))}.technical-fallback{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:30px;color:#737b80;font-size:13px}.technical-fallback img{width:360px;max-width:65%;height:auto}.microscopy-anchor{display:flex;align-items:center;justify-content:center;gap:80px;padding:90px var(--space);background:#e8eae9}.microscopy-anchor figure{width:330px;max-width:45%}.microscopy-anchor img{width:100%;height:auto;filter:grayscale(1);border-radius:2px}.microscopy-anchor figcaption{font-size:12px;color:#777e82;margin-top:16px}.microscopy-anchor>p{font-size:21px;line-height:1.8;color:#697075}.solution-intro{padding-bottom:75px}.solution-intro h1{font-size:clamp(48px,5.8vw,88px)}.intro-note{font-size:16px;line-height:1.9;color:#7b8083;margin-top:30px}.product-story{height:640svh;position:relative}.product-sticky{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden}.product-visual>.fallback-photo{top:35%;left:20%;width:70%}.product-copy{position:absolute;inset:0;z-index:3;pointer-events:none}.product-step{position:absolute;left:var(--space);top:8%;opacity:0;transform:translateY(15px);transition:opacity .45s,transform .65s;max-width:500px}.product-step.is-active{opacity:1;transform:none}.product-step h2{font-size:clamp(36px,3.5vw,54px);line-height:1.3;margin-bottom:20px}.product-step>p:last-child{color:#757d81;font-size:16px;line-height:1.9;max-width:27em}.product-step .eyebrow{margin-bottom:17px}.product-step:nth-child(2){top:7%;max-width:390px}.product-step:nth-child(3),.product-step:nth-child(4){max-width:380px;top:9%}.product-progress{gap:28px;font-size:13px}.product-annotation{position:absolute;inset:0;pointer-events:none;z-index:3}.product-annotation>[data-product-state]{position:absolute;right:var(--space);top:13%;color:#727c82;font-size:13px;letter-spacing:.1em}.detail-label{position:absolute;right:14%;bottom:15%;color:#687279;font-size:12px;opacity:var(--detail,0);transition:opacity .35s}.static-capabilities{display:none}.solution-ending{text-align:center;background:#fff;padding:110px 24px}.solution-ending h2{font-size:clamp(40px,4.5vw,70px);line-height:1.35}.solution-ending>.eyebrow{max-width:none}.solution-ending>p:last-child{font-size:13px;color:#858b8e;max-width:none;margin-top:30px}
@media(max-width:1000px) and (min-width:701px){.home-intro h1{font-size:76px}.home-intro{top:23%}.technical-step,.technical-step:nth-child(2){max-width:330px}.technical-step h2{font-size:35px}.product-step h2{font-size:38px}.product-step{max-width:350px}.product-step>p:last-child{max-width:21em}.home-micro-copy{max-width:330px}}
@media(max-width:700px){.home-story{height:490svh}.home-sticky{min-height:600px}.home-intro{top:15%;left:24px;right:24px}.home-intro .eyebrow{font-size:12px;margin-bottom:17px}.home-intro h1{font-size:clamp(46px,14vw,70px);line-height:1.15;margin-bottom:22px}.positioning{font-size:15px;line-height:1.8}.home-micro-copy{top:9%;left:24px;right:24px;max-width:none}.home-micro-copy h2{font-size:31px;margin-bottom:14px}.home-micro-copy p:last-child{font-size:14px;max-width:22em}.home-micro-copy .eyebrow{margin-bottom:16px}.home-outro{top:13%;left:20px;right:20px}.home-outro h2{font-size:34px}.home-outro .eyebrow{font-size:13px}.home-bottom{bottom:29px;left:24px;right:24px}.scroll-cue{display:none}.story-progress{gap:24px;width:100%;justify-content:space-between;font-size:11px}.home-note{left:24px;bottom:75px;font-size:11px}.optical-host>.fallback-photo{width:86%;left:7%;top:52%}.technical-story{height:420svh}.technical-sticky{min-height:680px}.technical-step,.technical-step:nth-child(2),.technical-step:nth-child(3){left:24px;right:24px;top:6%;max-width:none}.technical-step h2{font-size:32px;line-height:1.3;margin-bottom:15px}.technical-step .eyebrow{margin-bottom:15px}.technical-step>p:not(.eyebrow){font-size:15px;line-height:1.8;max-width:26em}.technical-step .statement{font-size:13px!important}.scene-bottom{left:24px;right:24px;bottom:26px;gap:16px;flex-wrap:wrap;font-size:12px}.scene-bottom>.visual-note{font-size:11px}.fine-progress{width:50px}.microscopy-anchor{padding:58px 24px;gap:32px;flex-direction:column;align-items:flex-start}.microscopy-anchor figure{width:100%;max-width:320px}.microscopy-anchor>p{font-size:19px}.solution-intro{padding-bottom:50px}.solution-intro h1{font-size:44px}.intro-note{font-size:14px;max-width:20em;line-height:2}.product-story{height:590svh}.product-sticky{min-height:700px}.product-step,.product-step:nth-child(2),.product-step:nth-child(3),.product-step:nth-child(4){left:24px;right:24px;top:6%;max-width:none}.product-step h2{font-size:32px;line-height:1.3;margin-bottom:16px}.product-step>p:last-child{font-size:15px;line-height:1.8;max-width:23em}.product-annotation>[data-product-state]{top:auto;bottom:115px;right:24px;font-size:12px}.product-progress{gap:21px;width:100%;justify-content:space-between;font-size:12px}.product-sticky .scene-bottom{bottom:24px;gap:17px}.detail-label{right:28px;bottom:25%;font-size:11px}.product-visual>.fallback-photo{width:88%;left:6%;top:47%}.solution-ending{padding:75px 24px}.solution-ending h2{font-size:38px}}
@media(max-height:650px) and (min-width:701px){.home-sticky,.technical-sticky,.product-sticky{min-height:520px}.home-intro{top:20%}.home-intro h1{font-size:66px;margin-bottom:20px}.home-micro-copy h2,.technical-step h2,.product-step h2{font-size:30px}.home-micro-copy p:last-child,.technical-step>p:not(.eyebrow),.product-step>p:last-child{font-size:14px}.home-micro-copy{top:8%}.product-step{top:7%}}
.has-static-visual .home-story{height:100svh;min-height:700px}.has-static-visual .home-sticky{position:relative;height:100%;min-height:700px}.has-static-visual .home-intro{opacity:1;transform:none}.has-static-visual .home-micro-copy,.has-static-visual .home-outro,.has-static-visual .home-note,.has-static-visual .home-bottom{display:none}.has-static-visual .technical-story{height:auto}.has-static-visual .technical-sticky{height:auto;min-height:0;position:relative;padding:30px var(--space) 70px}.has-static-visual .technical-visual{position:relative;inset:auto;height:340px;background:transparent}.has-static-visual .technical-copy{position:relative;inset:auto}.has-static-visual .technical-step{position:relative;inset:auto!important;max-width:650px;opacity:1;transform:none;padding-top:50px}.has-static-visual .scene-bottom{display:none}.has-static-visual .product-story{display:none}.has-static-visual .static-capabilities{display:block;padding:30px var(--space) 70px}.static-capabilities figure{margin-bottom:60px;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}.static-capabilities .fallback-photo{height:auto;aspect-ratio:1.6;object-fit:cover}.static-capabilities h2{font-size:32px;margin:16px 0}.static-capabilities p{color:#757d81;font-size:16px}.static-capabilities figcaption>span{font-size:13px;color:#82898c}
@media(max-width:700px){.static-capabilities figure{display:block}.static-capabilities figcaption{padding-top:24px}.static-capabilities h2{font-size:29px}.has-static-visual .technical-sticky{padding:0 24px 60px}.has-static-visual .technical-visual{height:270px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:700px) and (max-height:700px){.home-intro h1{font-size:clamp(42px,11.5vw,52px);line-height:1.12;margin-bottom:16px}.home-intro .eyebrow{margin-bottom:12px}.home-intro .positioning{font-size:14px;line-height:1.65}}
/* Keep the closing headline at its former position after removing the eyebrow.
   Reduce the home chapter's total height to 2/3, preserving its type sizes. */
.page-home .home-outro{padding-top:38.8px}
.page-home .home-micro-copy p:last-child{color:#363d41}
/* Move the chapter content up by the removed eyebrow's height, keeping the
   compact white section's outer height and the shared page styles intact. */
.page-home .chapter-link{padding-top:calc(69.2px - clamp(16.2px,2.07vw,32.4px));padding-bottom:calc(114px - clamp(16.2px,2.07vw,32.4px))}
@media(max-width:700px){.page-home .chapter-link{padding-top:18.2px;padding-bottom:57.4px;gap:20px}.page-home .home-note{bottom:29px}}
.technical-description p{font-size:16px;color:#454d51;line-height:1.9;max-width:26em}
.technical-description .statement{margin-top:15px;font-size:14px;color:#363d41}
@media(min-width:701px){
 .page-solutions .product-step,.page-solutions .product-step:nth-child(2),.page-solutions .product-step:nth-child(3),.page-solutions .product-step:nth-child(4){top:max(120px,14svh)}
 .page-solutions .product-step>p:last-child{max-width:12em;text-wrap:pretty}
 .page-solutions .product-annotation>[data-product-state]{left:var(--annotation-x,65%);top:var(--annotation-y,30%);right:auto;transform:translate(-50%,-100%);padding-bottom:16px;white-space:nowrap;color:#596166;letter-spacing:.04em}
 .page-solutions .product-annotation>[data-product-state]:after{content:"";position:absolute;left:50%;bottom:0;width:1px;height:10px;background:#9da6a9}
 .page-solutions .solution-ending{padding:calc(105.2px - clamp(18px,2.025vw,31.5px)) 24px}
 .page-technology .site-header,.page-solutions .site-header{position:fixed;background:#f0f1eff2;backdrop-filter:blur(12px)}
 .page-technology .technical-step,.page-technology .technical-step:nth-child(2),.page-technology .technical-step:nth-child(3){top:max(120px,14svh);left:var(--space);right:var(--space);max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(60px,12vw,180px);align-items:start}
 .page-technology .technical-heading{grid-column:1;grid-row:1;max-width:440px}
 .page-technology .technical-description{grid-column:2;grid-row:1;justify-self:end;width:min(100%,448px);padding-top:60px}
 .page-technology .technical-description p{max-width:28em}
 .page-technology .chapter-link{padding-top:calc(69.2px - clamp(16.2px,2.07vw,32.4px));padding-bottom:calc(114px - clamp(16.2px,2.07vw,32.4px))}
 .has-static-visual.page-technology .technical-step{display:block}
 .has-static-visual.page-technology .technical-description{padding-top:0;max-width:650px;width:auto}
}
@media(min-width:701px) and (max-height:780px){.page-technology .technical-step,.page-technology .technical-step:nth-child(2),.page-technology .technical-step:nth-child(3){top:max(100px,12svh)}}
@media(min-width:701px) and (min-height:651px) and (max-height:780px){.page-solutions .product-step,.page-solutions .product-step:nth-child(2),.page-solutions .product-step:nth-child(3),.page-solutions .product-step:nth-child(4){top:108px}.page-solutions .product-step h2{font-size:38px}}
@media(min-width:701px) and (max-height:650px){.page-technology .technical-description{padding-top:46px}.technical-description p{font-size:14px}}

/* Shared contact footer. Desktop layout; device refinement follows later. */
.site-footer.contact-footer{display:flex;flex-direction:column;justify-content:center;padding:48px var(--space);min-height:calc(210.4px + clamp(108px,12.15vw,189px) - clamp(36px,4.05vw,63px));background:#f8f8f6;color:#252b2e}
.contact-content{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(40px,4vw,80px);align-items:center;width:100%}
.contact-intro p,.contact-company h3{font-size:22px;font-weight:500;line-height:1.8;letter-spacing:0;color:#252b2e}
.contact-intro p{max-width:none}
.contact-company h3{margin:0 0 22px}
.contact-details{display:grid;grid-auto-rows:29px;row-gap:16px;margin:0}
.contact-details>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;align-items:center}
.contact-details dt{font-size:14px;color:#6b7376;line-height:1.8}
.contact-details dd{margin:0;font-size:14px;line-height:1.8;color:#6b7376}
.contact-details a{display:inline-block;font:inherit;color:inherit;letter-spacing:normal}
.contact-details a:hover{color:#526624}



/* Match the existing desktop chapter link layout on the solutions page. */
@media(min-width:701px){.page-solutions .chapter-link{padding-top:calc(69.2px - clamp(16.2px,2.07vw,32.4px));padding-bottom:calc(114px - clamp(16.2px,2.07vw,32.4px))}}

.contact-filing{max-width:none;margin:0;text-align:center;font-size:12px;line-height:1.6;color:#6b7376}
.contact-filing a{display:inline-block;padding:6px 0}
.contact-email a{overflow-wrap:anywhere}
