/* Product-led AIS Lab. Shared editorial details; existing hero and product films stay intact. */
#main-nav .mobile-contact{display:none}
.small-label{font-size:10px!important;line-height:1.6!important;letter-spacing:.09em;text-transform:uppercase;color:#6c6c65!important;margin:0 0 16px}
.lab-journal p{color:#646461}.journal-heading .small-label{margin-bottom:14px}.journal-intro{max-width:320px;line-height:1.75}
.lab-status{display:inline-flex;align-items:center;gap:7px;font-size:10px;color:#696961;line-height:1.5}
.lab-status:before{content:'';width:5px;height:5px;border-radius:50%;background:#85877b}
.journal-product .lab-status{margin-bottom:16px}.journal-product .product-icon{transition:transform .25s ease}.journal-product:hover .product-icon{transform:translateY(-4px)}
.lab-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.lab-work-grid article{padding:28px 0;border-top:1px solid #ddddd6;display:flex;flex-direction:column;align-items:start}.lab-work-grid h3{font-size:27px;line-height:1.25;letter-spacing:-.035em;max-width:360px;font-weight:450;margin:0 0 18px}.lab-work-grid article>p:not(.small-label){font-size:14px;line-height:1.8;max-width:430px;margin-bottom:20px}.lab-work-grid .journal-link{margin-top:auto;padding-top:10px;color:#292925}.work-evidence-note{font-size:12px;line-height:1.8;padding-top:25px;max-width:760px}
.research-demo{border:1px solid #d9d9d2;border-radius:6px;background:#fff;color:#20201d;overflow:hidden}
.research-demo-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 28px;border-bottom:1px solid #e6e6df;font-size:11px}
.research-demo-layout{display:grid;grid-template-columns:.8fr 1.2fr}.research-controls{background:#f3f3ee;padding:36px 30px;border-right:1px solid #e1e1da}.research-demo h3{font-size:25px;line-height:1.22;letter-spacing:-.035em;font-weight:450;margin:0 0 18px}.research-controls>p:not(.small-label){font-size:13px;line-height:1.8;margin:0 0 28px}.research-controls label{font-size:11px;margin:0 0 18px;color:#474740}.research-controls select{font-size:12px;border-radius:3px;border-color:#cfcfc6;line-height:1.5;padding:12px 32px 12px 12px;min-height:58px;margin-top:12px}.research-demo .demo-scope{font-size:11px!important;line-height:1.75;margin:18px 0 28px}.research-controls .text-link{font-size:11px;color:#42423b;border-bottom:1px solid #a6a69c;padding-bottom:4px}.research-results{padding:36px}.research-summary{font-size:14px;line-height:1.8;margin-bottom:26px}.research-findings{list-style:none;margin:0;padding:0}.research-findings li{border-top:1px solid #e4e4dc;padding:18px 0}.research-demo h4{font-size:13px;line-height:1.5;letter-spacing:-.01em;font-weight:550;margin:0 0 8px}.research-findings p,.research-next p{font-size:12px;line-height:1.8;margin:0}.research-findings a{display:inline-flex;align-items:center;min-height:36px;font-size:11px;color:#3d5141;text-decoration:underline;text-underline-offset:4px;margin-top:3px}.research-next{background:#f7f7f2;padding:20px;margin-top:10px;border-left:2px solid #a8ad9b}.report-download{background:transparent;border:0;border-bottom:1px solid #a6a69c;font-size:11px;min-height:44px;padding:14px 0 7px;margin-top:16px;color:#33332d;cursor:pointer}
.research-source-list{padding:28px;border-top:1px solid #e1e1da}.research-source-list>.small-label{margin-bottom:10px}.research-source{border-top:1px solid #e4e4dc;scroll-margin-top:90px}.research-source summary{padding:17px 0;font-size:13px;cursor:pointer;min-height:48px}.research-source summary span{font-size:11px;color:#76766e;margin-left:16px}.research-source p{font-size:13px;line-height:1.85;margin:0;padding:0 0 23px;max-width:800px}.research-source:target{background:#f4f5ee;outline:8px solid #f4f5ee}.research-demo :is(a,button,select,summary):focus-visible{outline:2px solid #536950;outline-offset:5px}
.lab-team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.lab-team article{min-width:0}.lab-team img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 25%;border-radius:3px;filter:saturate(.35)}.lab-team article>div{padding-top:23px}.lab-team .small-label{margin-bottom:7px}.lab-team h3{font-size:23px;font-weight:450;letter-spacing:-.035em;margin:0 0 9px}.lab-team a{display:inline-flex;align-items:center;min-height:36px;font-size:12px;color:#57574e;text-decoration:underline;text-underline-offset:4px}
.lab-engagements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px}.lab-engagements article{padding-top:24px;border-top:1px solid #deded6}.lab-engagements h3{font-size:22px;margin:18px 0 12px}.lab-engagements p{font-size:13px;line-height:1.8}.lab-service-links{display:flex;flex-wrap:wrap;gap:16px 32px;border-top:1px solid #e2e2db;margin-top:35px;padding-top:18px}.lab-service-links a{font-size:12px;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:5px}
.product-story-hero{padding-block:65px 55px;display:grid;grid-template-columns:1fr 240px;gap:80px;align-items:center}.product-story-hero h1{font-size:clamp(58px,7vw,96px);line-height:1.05;letter-spacing:-.065em;margin:22px 0}.product-story-hero .lead{font-size:clamp(22px,2.8vw,34px);line-height:1.35;letter-spacing:-.025em;max-width:660px;color:#242421;margin:0 0 22px}.product-story-hero p:not(.lead){font-size:15px;line-height:1.8;max-width:590px}.product-story-hero>img{width:100%;height:auto;object-fit:contain}.product-story-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.product-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-block:1px solid #e4e4df;padding-block:30px}.product-facts p:not(.small-label){font-size:13px;line-height:1.8}.product-facts .small-label{margin-bottom:12px}.lab-example-heading{margin-bottom:35px;scroll-margin-top:90px}.lab-example-heading h2{font-size:clamp(32px,4vw,48px);font-weight:450;letter-spacing:-.045em;margin-bottom:20px}.lab-example-heading>p:not(.small-label){font-size:15px;line-height:1.8;max-width:660px}.aside>.text-link{display:block;width:fit-content;margin-top:22px;font-size:12px}.aside dl a{line-height:1.8}
.lab-report-list>article{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #deded7;padding:38px 0}.lab-report-list h2{font-size:33px;letter-spacing:-.04em;font-weight:450}.lab-report-list p:not(.small-label){font-size:15px;line-height:1.8;margin-bottom:20px}.lab-report-list .text-link{display:inline-flex;min-height:44px;align-items:center;margin-right:24px}
.contact-email{display:inline-block;margin-top:25px;font-size:19px;letter-spacing:-.03em;border-bottom:1px solid #aaa;padding-bottom:4px;overflow-wrap:anywhere}.contact-info .note{margin-top:28px;font-size:12px;line-height:1.8;background:#f6f6f1;border-color:#b9bcac}.optional{color:#74746b;font-size:11px}.contact-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px}.contact-result-actions .button{font-size:12px;margin-top:12px}.enquiry-result .form-note{margin-bottom:0}.form-note a{text-decoration:underline;text-underline-offset:3px}.journal-news .small-label{margin-bottom:14px}
@media(min-width:921px){#main-nav{gap:12px}#main-nav a{padding-inline:8px}.header-inner{gap:20px}}
@media(max-width:920px){#main-nav .mobile-contact{display:block}.research-demo-layout{grid-template-columns:1fr}.research-controls{border-right:0;border-bottom:1px solid #e1e1da}.research-controls label{max-width:520px}.research-controls .demo-scope{max-width:520px}.lab-team{gap:20px}.lab-team h3{font-size:20px}.product-story-hero{grid-template-columns:1fr 160px;gap:35px}.product-facts{gap:25px}.lab-engagements{gap:24px}.lab-report-list>article{gap:35px}}
@media(max-width:600px){.research-demo-bar{align-items:start;padding:18px;gap:15px;font-size:10px}.research-demo-bar>.lab-status{font-size:9px;flex-shrink:0}.research-controls,.research-results{padding:25px 20px}.research-demo h3{font-size:23px}.research-source-list{padding:24px 20px}.research-source summary span{display:block;margin:6px 0 0 17px}.research-demo-layout{display:block}.research-controls select{font-size:12px;width:100%}.lab-work-grid{grid-template-columns:1fr;gap:20px}.lab-work-grid h3{font-size:26px}.lab-team{grid-template-columns:1fr;gap:34px}.lab-team article{display:grid;grid-template-columns:105px 1fr;gap:22px;align-items:center}.lab-team article>div{padding:0}.lab-team h3{font-size:21px}.lab-team .small-label{font-size:9px!important}.lab-engagements{grid-template-columns:1fr;gap:28px}.lab-engagements h3{font-size:23px}.lab-service-links{flex-direction:column;gap:2px}.product-story-hero{grid-template-columns:1fr;gap:30px;padding-block:35px}.product-story-hero>img{grid-row:1;width:92px}.product-story-hero h1{font-size:60px;margin-block:18px}.product-story-hero .lead{font-size:25px}.product-story-actions{gap:10px}.product-story-actions .button{font-size:12px;padding-inline:16px}.product-facts{grid-template-columns:1fr;gap:24px}.lab-report-list>article{grid-template-columns:1fr;gap:20px;padding-block:30px}.lab-report-list h2{font-size:29px}.journal-heading{align-items:start}.journal-heading>.journal-link{flex-shrink:0}.research-controls .demo-scope{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.journal-product .product-icon{transition:none}.journal-product:hover .product-icon{transform:none}}

/* Shared footer invitation and navigation. */
footer.footer.mosaic-footer{width:100%;max-width:none;margin:0;padding:0;background:#08090a;color:#f2f2ef;border-top:1px solid #252628;overflow:hidden}
footer.footer.mosaic-footer .footer-invitation{display:grid;grid-template-columns:1fr;align-items:center;gap:64px;padding:80px 0 64px;border-bottom:1px solid #ffffff24}
.footer-invitation-copy{position:relative;z-index:1}
footer.footer.mosaic-footer .footer-kicker{color:#a6a8ac;font-size:10px;letter-spacing:.16em;margin-bottom:28px}
footer.footer.mosaic-footer .footer-invitation h2{color:#f2f2ef;font-size:clamp(44px,6vw,82px);font-weight:400;line-height:1.03;letter-spacing:-.055em}
footer.footer.mosaic-footer .footer-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;min-height:48px;margin-top:32px;padding:10px 0;border-bottom:1px solid #929395;font-size:15px;color:#f2f2ef}
footer.footer.mosaic-footer .footer-contact span{font-size:24px;font-weight:300}footer.footer.mosaic-footer .footer-contact:hover{color:#fff;border-color:#fff}
footer.footer.mosaic-footer .footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:40px;padding:48px 0 44px;margin:0;border:0}
footer.footer.mosaic-footer .footer-brand{display:block;color:#f2f2ef;font-size:30px;letter-spacing:-.055em;line-height:1.2}footer.footer.mosaic-footer .footer-brand span{color:#aaa}
footer.footer.mosaic-footer .ais-family{color:#a6a8ac;margin-top:12px;font-size:12px}
footer.footer.mosaic-footer .footer-top strong{color:#f2f2ef;font-weight:500;font-size:12px;margin-bottom:16px}
footer.footer.mosaic-footer .footer-top a:not(.footer-brand){color:#a6a8ac;font-size:12px;line-height:1.6;padding:5px 0;overflow-wrap:anywhere}footer.footer.mosaic-footer .footer-top a:hover{color:#fff}
footer.footer.mosaic-footer .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff24;padding:24px 0 30px;margin:0;color:#a6a8ac;font-size:11px}footer.footer.mosaic-footer .footer-bottom a{color:#a6a8ac}footer.footer.mosaic-footer .footer-bottom a:hover{color:#fff}
@media(max-width:800px){footer.footer.mosaic-footer .footer-invitation{gap:28px;padding:56px 0 40px}footer.footer.mosaic-footer .footer-top{grid-template-columns:1fr 1fr;gap:32px}footer.footer.mosaic-footer .footer-invitation h2{font-size:clamp(42px,6vw,60px)}}
@media(max-width:540px){footer.footer.mosaic-footer .footer-invitation{grid-template-columns:1fr;gap:32px;padding-top:48px}footer.footer.mosaic-footer .footer-invitation h2{font-size:clamp(42px,11vw,58px)}footer.footer.mosaic-footer .footer-kicker{font-size:9px;margin-bottom:20px}footer.footer.mosaic-footer .footer-contact{margin-top:24px}footer.footer.mosaic-footer .footer-top{gap:30px 22px;padding:36px 0}footer.footer.mosaic-footer .footer-bottom{font-size:10px;gap:16px;flex-wrap:wrap}}

/* The full-section visuals become compact, unframed product icons. */
.journal-products .product-pair{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;align-items:stretch}
.journal-products .journal-product{min-width:0;flex-direction:column-reverse;align-items:stretch;justify-content:flex-end;gap:24px;padding:0 0 20px}
.journal-products .journal-product+.journal-product{padding-left:0;border-left:0}
.journal-products .journal-product>div:not(.product-animation){display:flex;flex-direction:column;align-items:flex-start;flex:1}
.journal-products .journal-product p{flex:1;max-width:330px;line-height:1.75}
.journal-products .journal-product .lab-status{font-size:10px}
.product-animation{width:112px;min-width:0;flex-shrink:0}
.product-emblem{position:relative;width:112px;height:112px;background:none;border:0;display:grid;place-items:center}
.component-icon-host,.component-icon-surface{width:100%;height:100%;position:relative}
.component-icon-host{filter:invert(1) grayscale(1);mix-blend-mode:multiply;overflow:hidden;border-radius:50%;mask-image:radial-gradient(ellipse,#000 53%,transparent 72%)}
.component-icon-host img,.component-icon-host video,.component-icon-host canvas{display:block;width:100%;height:100%;object-fit:contain}
.component-icon-host>img{object-fit:cover;object-position:100% center}
.component-icon-surface>div{height:100%;width:100%}
.emblem-osmus .osmus-logo{display:block;width:86px;height:86px;object-fit:contain;filter:url(#osmus-light-ink)}
.product-filter-defs{position:absolute;overflow:hidden;pointer-events:none}
.product-motion-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:12px}.product-motion-bar .journal-footnote{margin:0}
.product-motion-toggle{border:0;border-bottom:1px solid #a6aa9f;padding:10px 0;background:none;color:#555e4e;font-size:10px;line-height:1.4;min-height:44px;white-space:nowrap}
.product-animation>.product-motion-toggle{margin-top:8px}.product-motion-toggle[hidden]{display:none}.product-motion-toggle:hover{color:#171d14;border-color:#171d14}
.product-story-hero{grid-template-columns:minmax(0,1fr) 160px;gap:64px}.product-story-hero .product-animation,.product-story-hero .product-emblem{width:160px}.product-story-hero .product-emblem{height:160px}.product-story-hero .osmus-logo{width:128px;height:128px}
@media(prefers-reduced-motion:no-preference){.product-animation.is-visible .osmus-logo{animation:osmus-breathe 5s ease-in-out infinite}.motion-paused .product-emblem *,.motion-backgrounded .product-emblem *{animation-play-state:paused!important}}
@keyframes osmus-breathe{0%,100%{transform:translateY(1px)}50%{transform:translateY(-2px)}}
@media(max-width:760px){.journal-products .product-pair{grid-template-columns:1fr;gap:0}.journal-products .journal-product{flex-direction:row;align-items:flex-start;gap:24px;padding:28px 0;border-top:1px solid var(--refined-rule)}.journal-products .journal-product+.journal-product{border-left:0}.journal-products .product-animation{width:88px;order:-1}.journal-products .product-emblem{width:88px;height:88px}.emblem-osmus .osmus-logo{width:70px;height:70px}.journal-products .journal-product .lab-status{margin-bottom:12px}.journal-products .journal-product h3{font-size:26px}.journal-products .journal-product p{font-size:12px;max-width:470px}.journal-products .journal-product .journal-link{margin-top:16px}.product-story-hero{grid-template-columns:1fr;gap:30px}.product-story-hero .product-animation{grid-row:1}.product-motion-bar{align-items:flex-start;gap:12px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.product-emblem *{animation:none!important}.product-motion-toggle{display:none}}
