/* Homepage visual system. Keep all styling isolated from product/admin pages. */
.lab-home{--lab-blue:#20b7ff;--lab-text:#edf5fc;--lab-muted:#92a4b8;--lab-line:#203145;background:#080c13;color:var(--lab-text);overflow:hidden}
.lab-home *{box-sizing:border-box}.lab-home :is(h1,h2,h3,p){margin:0}.lab-home a{text-decoration:none}.lab-home :is(a,button):focus-visible{outline:2px solid #72d6ff;outline-offset:6px}.lab-home section[id]{scroll-margin-top:30px}
.lab-home .lab-kicker{display:flex;align-items:center;gap:10px;color:#68caff;font:700 10px/1.6 monospace;letter-spacing:1.8px}.lab-kicker>span{width:6px;height:6px;border-radius:50%;background:#47c4ff;box-shadow:0 0 12px #009dff}
.lab-hero{position:relative;background:radial-gradient(ellipse at 76% 50%,#003a6826,transparent 60%),#060a10;border-bottom:1px solid var(--lab-line)}
.lab-gridlines{position:absolute;inset:0;background-image:linear-gradient(#20405b20 1px,transparent 1px),linear-gradient(90deg,#20405b20 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(transparent,#000 45%,transparent);pointer-events:none}
.lab-hero-inner{max-width:1480px;margin:auto;padding:66px 40px 50px;display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:0;position:relative}
.lab-hero-copy{position:relative;z-index:2;padding:20px 0}.lab-home h1{font-size:clamp(42px,4.6vw,72px);letter-spacing:-3px;line-height:1.08;font-weight:800;margin:24px 0}.lab-home em{font-style:normal;color:var(--lab-blue);background:linear-gradient(105deg,#edf9ff 0,#57caff 40%,#0585db 100%);background-clip:text;-webkit-text-fill-color:transparent}
.lab-home .lab-hero-description{max-width:445px;font-size:15px;line-height:1.9;color:var(--lab-muted)}
.lab-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.lab-home .lab-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:15px 21px;font-size:11px;font-weight:800;border:1px solid #2a5875;border-radius:3px;transition:background .2s,border-color .2s,box-shadow .2s;color:#daeffc}.lab-button>span{font-size:18px;font-weight:400}.lab-home .lab-button-primary{background:linear-gradient(110deg,#067bbf,#07a2ec);border-color:#28b4f8;color:white;box-shadow:0 0 28px #048fea18}.lab-home .lab-button-primary:hover{background:#109fe7;box-shadow:0 0 30px #008eff38}.lab-home .lab-button-outline{background:#0c1c2980}.lab-home .lab-button-outline:hover{border-color:#37baff;background:#112e42}
.lab-hero-signature{display:flex;align-items:center;gap:14px;margin-top:42px;font:10px/1.7 monospace;letter-spacing:1.4px;color:#718ba5}.lab-signature-line{height:1px;width:42px;background:linear-gradient(90deg,#32baff,transparent)}
.lab-brand-stage{position:relative;min-width:0;isolation:isolate}.lab-hero-logo{position:relative;display:block;width:100%;height:auto;mix-blend-mode:screen;z-index:1;animation:lab-arrive 1.4s ease-out both}.lab-brand-stage::before{content:"";position:absolute;inset:16%;border-radius:50%;background:#0066bc;filter:blur(90px);opacity:.16}.lab-orbit{position:absolute;inset:10%;border:1px solid #1b78a43b;border-radius:50%;transform:rotate(-30deg) scaleY(.82);z-index:0}.lab-orbit-two{inset:4%;border-style:dashed;border-color:#2683aa25;transform:rotate(32deg) scaleY(.85)}
.lab-stage-corner{position:absolute;width:30px;height:30px;z-index:2}.lab-corner-top{top:10%;left:7%;border-left:1px solid #2b96c4;border-top:1px solid #2b96c4}.lab-corner-bottom{bottom:9%;right:7%;border-right:1px solid #2b96c4;border-bottom:1px solid #2b96c4}.lab-stage-caption{display:flex;justify-content:space-between;position:absolute;bottom:2%;left:10%;right:10%;font:8px monospace;letter-spacing:1.8px;color:#577890}
.lab-hero-bottom{position:relative;max-width:1400px;margin:auto;display:flex;justify-content:space-between;gap:20px;padding:21px 40px;border-top:1px solid #19314880;font:9px/1.6 monospace;letter-spacing:1.6px;color:#7b97b1}.lab-hero-bottom b{padding:0 16px;color:#39bfff;font-weight:400}.lab-hero-bottom a{color:#98d4f8}.lab-hero-bottom a span{margin-left:16px}
.lab-section{max-width:1360px;margin:auto;padding:85px 40px}.lab-section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:30px}.lab-home h2{font-size:clamp(30px,3.4vw,48px);letter-spacing:-1.5px;line-height:1.13;font-weight:750;margin-top:12px}.lab-section-heading>div>p:last-child:not(.lab-kicker){color:var(--lab-muted);font-size:13px;margin-top:14px;line-height:1.8}.lab-home .lab-text-link{color:#b4e4ff;font-size:11px;font-weight:700;white-space:nowrap;padding:10px 0;border-bottom:1px solid #2979a2}.lab-text-link span{margin-left:20px;font-size:18px}.lab-text-link:hover{color:white;border-color:#6dd1ff}
.lab-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.lab-product{min-width:0;background:linear-gradient(150deg,#101b29,#0a121c);border:1px solid #203349;border-radius:5px;overflow:hidden;transition:border-color .2s,transform .2s}.lab-product:hover{border-color:#357198;transform:translateY(-4px)}.lab-product-image{display:block;position:relative;aspect-ratio:1.12;background:radial-gradient(ellipse at center,#192f43,#090f19);overflow:hidden}.lab-product-image img{width:100%;height:100%;object-fit:contain;transition:transform .4s}.lab-product:hover .lab-product-image img{transform:scale(1.035)}.lab-product-index{position:absolute;top:14px;left:14px;font:9px monospace;letter-spacing:1.3px;color:#b0d5ed;background:#08121dd9;padding:6px 8px;border:1px solid #2c465a}.lab-stock{position:absolute;bottom:14px;left:14px;padding:5px 8px;border:1px solid #4f3540;color:#e6a1a8;background:#1e1118e8;font-size:9px}.lab-stock-ready{border-color:#2b584e;color:#84dcc0;background:#0a211ce8}.lab-product-arrow{display:grid;place-items:center;position:absolute;right:14px;bottom:14px;width:31px;height:31px;border:1px solid #355974;color:#9fdcff;background:#071726cc;font-size:20px}.lab-product-copy{padding:20px}.lab-product-category{display:flex;justify-content:space-between;gap:12px;color:#68bde8;font:9px monospace;text-transform:uppercase;letter-spacing:1px}.lab-product-category span{color:#87a0b7;letter-spacing:0}.lab-product h3{font-size:18px;line-height:1.4;margin:12px 0;color:#e3effb;overflow-wrap:anywhere}.lab-product h3 a:hover{color:#62c6ff}.lab-product-description{font-size:12px;line-height:1.8;color:#93a5b8;min-height:44px}.lab-product-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:23px;padding-top:17px;border-top:1px solid #243447}.lab-product-footer strong{font-size:20px;font-weight:650}.lab-product-footer small{font-size:10px;color:#90a9be}.lab-product-footer>a{font-size:11px;color:#72c9f8}.lab-product-footer>a span{margin-left:8px}.lab-product-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.lab-product-placeholder>span{font-size:48px;font-weight:800;letter-spacing:8px;color:#3f88b7}.lab-product-placeholder small{font:8px monospace;letter-spacing:1.5px;color:#7a9eb9}
.lab-product-empty{display:flex;align-items:center;gap:35px;position:relative;overflow:hidden;padding:40px;border:1px solid #20364d;background:repeating-linear-gradient(135deg,transparent,transparent 24px,#15365224 24px,#15365224 25px),#0b1521}.lab-empty-mark{font:bold 80px/1 monospace;color:#446a88;flex:none}.lab-empty-mark>span{color:#1dbaff}.lab-product-empty h3{font-size:25px;margin:9px 0}.lab-product-empty p:last-child{font-size:13px;color:#92a9bd;line-height:1.8}
.lab-capabilities{padding-top:25px}.lab-capabilities h2>span{color:#6c859c}.lab-section-aside{max-width:280px;color:var(--lab-muted);font-size:13px;line-height:1.9}.lab-capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.lab-capability{border:1px solid #25405a;background:linear-gradient(150deg,#102132,#090f18);border-radius:5px;overflow:hidden;min-width:0}.lab-capability-art{height:260px;position:relative;overflow:hidden;border-bottom:1px solid #23415b;background:radial-gradient(ellipse at center,#12416655,transparent 65%)}.lab-art-grid{position:absolute;inset:0;background-image:linear-gradient(#26567c28 1px,transparent 1px),linear-gradient(90deg,#26567c28 1px,transparent 1px);background-size:24px 24px;transform:perspective(400px) rotateX(55deg) scale(1.4);opacity:.6}.lab-part{position:relative;display:block;width:100%;height:225px;filter:drop-shadow(0 0 12px #009dff50);transition:transform .5s}.lab-printing:hover .lab-part{transform:translateY(-5px)}.lab-art-caption{position:absolute;bottom:15px;left:20px;color:#67a9d0;font:8px monospace;letter-spacing:2px}.lab-capability-copy{padding:30px}.lab-capability h3{font-size:34px;line-height:1.13;letter-spacing:-1px;margin:14px 0 17px}.lab-capability-copy>p:not(.lab-kicker){font-size:13px;line-height:1.9;color:#a0b0c3;max-width:440px}.lab-capability-tags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 25px}.lab-capability-tags span{padding:5px 8px;color:#9bb6cc;border:1px solid #2c445b;font:9px monospace;background:#0a1420}.lab-capability .lab-button{width:100%}
.lab-software{background:linear-gradient(150deg,#171d36,#0a101b);border-color:#303b60}.lab-software-art{background:radial-gradient(ellipse at center,#373a8155,transparent 70%);border-color:#2c3654}.lab-software .lab-kicker{color:#a3afff}.lab-software-window{position:relative;width:78%;max-width:410px;height:190px;margin:25px auto 0;border:1px solid #6677bb66;border-radius:7px;background:#0d1524;transform:perspective(700px) rotateY(-8deg) rotateX(5deg);box-shadow:15px 18px 40px #0005}.lab-window-bar{display:flex;align-items:center;gap:5px;padding:10px 12px;border-bottom:1px solid #2c3752;background:#151f33}.lab-window-bar i{width:4px;height:4px;border-radius:50%;background:#6b7c9d}.lab-window-bar>span{margin-left:auto;font:8px monospace;color:#97abd5;letter-spacing:1px}.lab-window-body{display:flex;height:150px}.lab-window-nav{display:flex;flex-direction:column;gap:13px;width:57px;padding:12px;border-right:1px solid #26314b}.lab-window-nav b{color:#78a2ff;font:22px monospace}.lab-window-nav span{height:4px;background:#304360;border-radius:3px}.lab-window-content{flex:1;padding:17px;min-width:0}.lab-window-tiles{display:flex;gap:7px}.lab-window-tiles span{flex:1;border:1px solid #2b4464;padding:9px 3px;color:#839cbd;font:6px monospace;text-align:center}.lab-window-chart{height:70px;display:flex;align-items:end;gap:9px;margin-top:15px;border-bottom:1px solid #385775;background:repeating-linear-gradient(0deg,transparent,transparent 19px,#293c5533 19px,#293c5533 20px)}.lab-window-chart i{flex:1;height:35%;background:linear-gradient(#61b4ff,#20558140);border-top:1px solid #99dbff}.lab-window-chart i:nth-child(2n){height:55%}.lab-window-chart i:nth-child(3n){height:45%}.lab-window-chart i:nth-child(4n){height:80%}.lab-window-chart i:last-child{height:95%}
.lab-contact{position:relative;display:flex;justify-content:space-between;align-items:center;gap:50px;border-top:1px solid #23405c;padding-top:65px;padding-bottom:75px;background:radial-gradient(ellipse at 35% 90%,#006bc016,transparent 65%)}.lab-contact h2{font-size:clamp(38px,4.8vw,65px)}.lab-contact-copy{max-width:340px}.lab-contact-copy p{color:#9eafc2;font-size:14px;line-height:1.9;margin-bottom:23px}.lab-contact-copy .lab-button{min-width:180px}.lab-contact-cross{position:absolute;top:-16px;right:40px;color:#46a0d6;font:25px monospace;background:#080c13;padding:0 8px}
@keyframes lab-arrive{from{opacity:.35;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.lab-hero-inner{min-height:760px}.lab-hero-logo{width:calc(100% + 30px);max-width:none;margin-left:-15px}}
@media(max-width:1050px){.lab-hero-inner{padding:40px 28px;grid-template-columns:1fr 1fr}.lab-home h1{font-size:44px;letter-spacing:-2px}.lab-hero-actions{flex-direction:column;align-items:flex-start}.lab-hero-description{font-size:13px!important}.lab-section{padding:60px 28px}.lab-product-grid{gap:15px}.lab-product-copy{padding:16px}.lab-product h3{font-size:16px}.lab-capability-copy{padding:24px}.lab-capability h3{font-size:30px}.lab-capabilities{padding-top:15px}}
@media(max-width:750px){.lab-hero-inner{grid-template-columns:1fr;padding:28px 22px 15px;gap:0}.lab-hero-copy{padding:10px 0}.lab-home h1{font-size:clamp(37px,7.5vw,58px);letter-spacing:-1.8px;margin:18px 0}.lab-home .lab-kicker{font-size:8px;letter-spacing:1.3px}.lab-hero-description{max-width:500px!important}.lab-hero-actions{flex-direction:row;align-items:stretch;margin-top:24px}.lab-hero-actions .lab-button{font-size:10px;padding:12px 14px;gap:14px}.lab-hero-signature{display:none}.lab-brand-stage{max-width:560px;width:100%;margin:5px auto 0}.lab-stage-caption{font-size:7px}.lab-hero-bottom{padding:16px 22px;font-size:7px;letter-spacing:1px}.lab-hero-bottom b{padding:0 5px}.lab-hero-bottom>a{display:none}.lab-section{padding:50px 22px}.lab-section-heading{flex-wrap:wrap;gap:17px;margin-bottom:23px}.lab-home h2{font-size:32px}.lab-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-product-category{font-size:8px;flex-wrap:wrap;gap:5px}.lab-product-description{font-size:11px}.lab-product-footer strong{font-size:18px}.lab-product-index{font-size:7px;left:8px;top:8px}.lab-stock{left:8px;bottom:8px;font-size:8px}.lab-product-arrow{right:8px;bottom:8px;width:25px;height:25px}.lab-product-placeholder>span{font-size:30px}.lab-product-placeholder small{font-size:6px;letter-spacing:0}.lab-product-empty{padding:28px 22px;gap:20px}.lab-empty-mark{font-size:45px}.lab-product-empty h3{font-size:21px}.lab-capabilities{padding-top:10px}.lab-section-aside{max-width:400px;font-size:12px}.lab-capability-grid{grid-template-columns:1fr;gap:20px}.lab-capability-art{height:235px}.lab-part{height:210px}.lab-software-window{height:175px;margin-top:20px}.lab-window-body{height:135px}.lab-window-chart{height:55px}.lab-contact{flex-direction:column;align-items:flex-start;gap:25px;margin:0 22px;padding:45px 0 55px}.lab-contact h2{font-size:43px}.lab-contact-copy{max-width:430px}.lab-contact-cross{right:0}}
@media(max-width:430px){.lab-product-grid{grid-template-columns:1fr}.lab-hero-actions{flex-direction:column}.lab-hero-actions .lab-button{justify-content:space-between}.lab-home h1{font-size:39px}.lab-product-image{aspect-ratio:1.25}.lab-product-copy{padding:20px}.lab-product-category{font-size:9px}.lab-product-description{font-size:12px}.lab-product h3{font-size:19px}.lab-product-empty{align-items:flex-start}.lab-empty-mark{display:none}}
@media(prefers-reduced-motion:reduce){.lab-home *{animation:none!important;transition:none!important}.lab-home section[id]{scroll-margin-top:15px}}
