/* styles.css */
/* Typography follows the LUOIS application: Arial, Helvetica, sans-serif. */
:root{--ink:#171717;--surface:#222;--paper:#f4f3f2;--red:#d00000;--action-red:#c00000;--red-bright:#ee1717;--line:#ffffff26;--font:Arial,Helvetica,sans-serif;--display:Arial,Helvetica,sans-serif;--header-height:92px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 20px)}body{margin:0;background:var(--ink);color:var(--paper);font:1rem/1.65 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--red-bright);outline-offset:5px}::selection{background:var(--red);color:#fff}img{max-width:100%}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{text-wrap:balance}h1,h2{font-family:var(--display);font-weight:700;line-height:1.06;letter-spacing:-.045em}h2{font-size:clamp(2.1rem,4vw,4rem);margin-bottom:28px}h3{line-height:1.25;letter-spacing:-.025em}p{text-wrap:pretty}.skip{position:fixed;left:20px;top:-90px;z-index:99;background:#fff;color:#111;padding:12px}.skip:focus{top:12px}
.header{height:var(--header-height);padding:0 4%;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:#171717f2;backdrop-filter:blur(20px)}.header-brands{display:flex;align-items:center;gap:16px;flex-shrink:0}.header-product{width:66px;height:66px;display:block}.header-product img{width:100%;height:100%;display:block;border-radius:50%}.company-logo{display:block;width:220px;line-height:0}.company-logo img{display:block;width:100%;height:auto}.header-brands .company-logo{width:180px;border-left:1px solid #ffffff30;padding-left:16px}.header nav{display:flex;align-items:center;gap:23px;font-size:.875rem}.header nav a{padding:12px 0;color:#c8c8c8;white-space:nowrap}.header nav a:hover{color:#fff}.header-cta{font-size:.875rem;display:flex;align-items:center;gap:22px;padding:12px 17px;border:1px solid #777;border-radius:5px;white-space:nowrap;transition:background .2s,color .2s}.header-cta:hover{background:#fff;color:#171717}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.mobile-nav{position:fixed;top:var(--header-height);left:0;right:0;z-index:19;padding:20px 6%;background:#222;border-bottom:1px solid #555;max-height:calc(100dvh - var(--header-height));overflow:auto}.mobile-nav a{display:block;padding:12px 0;font-size:1rem;border-bottom:1px solid #ffffff18}
.section-pad{padding:100px max(6%,calc((100vw - 1320px)/2))}.section-light{background:var(--paper);color:var(--ink)}.section-dark{background:var(--ink);color:var(--paper)}.section-label{display:flex;justify-content:space-between;gap:24px;font-size:.75rem;font-weight:600;letter-spacing:.08em;padding-bottom:24px;margin-bottom:58px;border-bottom:1px solid #0003;color:#626262}.section-dark .section-label{color:#aaa;border-color:var(--line)}.section-label>span:last-child{text-align:right}.eyebrow{font-size:.875rem;line-height:1.5;color:#bbb;margin-bottom:22px}.lead{font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.65;letter-spacing:-.015em}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;padding:15px 22px;min-height:50px;border:0;border-radius:5px;font-size:.9375rem;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:#171717;color:#fff}.button-dark:hover{background:#353535}.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:.9375rem;font-weight:600}.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.intro-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:9%;align-items:center}.product-intro>img{display:block;width:140px;height:140px;border-radius:50%;margin-bottom:30px}.intro-grid p:not(.lead){color:#626262}.principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:60px}.principles>div{padding-top:24px;border-top:1px solid #c7c7c7}.principle-number{color:#b00000;font-size:.875rem;font-weight:600}.principles h3{font-size:1.2rem;margin:20px 0 12px}.principles p{font-size:1rem;color:#626262;margin:0}
.features{background:#202020}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:44px}.section-heading h2{margin:0}.section-heading h2 span{color:#9b9b9b}.section-heading>p{max-width:390px;margin:0;color:#b8b8b8;font-size:1rem}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.feature-card{padding:34px 36px 0;border:1px solid #ffffff20;border-radius:10px;background:#292929;transition:transform .25s,border-color .25s}.feature-card:hover{transform:translateY(-4px);border-color:#ffffff50}.feature-primary{background:linear-gradient(130deg,#382222,#262626 75%);border-color:#93413f}.card-top{display:flex;align-items:center;justify-content:space-between;color:#a6a6a6;font-size:.875rem;margin-bottom:34px}.line-icon{font-size:30px;color:#ee1717;line-height:1}.feature-card h3{font-size:1.65rem;margin-bottom:16px}.feature-card>p{font-size:1rem;color:#bebebe;max-width:480px}.card-tags{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}.card-tags span{font-size:.875rem;line-height:1.4;border:1px solid #ffffff24;border-radius:4px;padding:6px 9px;color:#dedede}details{border-top:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;cursor:pointer;list-style:none;font-size:.9375rem}summary::-webkit-details-marker{display:none}summary span{font-size:25px;font-weight:400;color:#ccc;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{font-size:1rem;color:#bdbdbd;padding:3px 0 20px;margin:0}.features-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:28px;color:#bbb;font-size:.9375rem}.features-footer a{color:white}
.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.field-photo{margin:0;align-self:stretch;min-height:530px;position:relative;overflow:hidden;border-radius:8px;background:#222}.field-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% center}.field-photo figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000d);padding:85px 30px 30px;color:white;line-height:1.5;font-weight:600;font-size:1rem}.field-photo figcaption>span{display:block;font-size:.875rem;color:#ddd;font-weight:400;margin-top:8px}.local-copy>.eyebrow{color:#ad0000}.local-copy h2{font-size:clamp(2rem,3.6vw,3.4rem)}.local-copy>p:not(.eyebrow):not(.lead){color:#626262}.local-copy .button{margin-top:16px}.customization-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;border-top:1px solid #c9c9c9;padding-top:34px;margin-top:60px}.customization-details article>span{color:#a00000;font-size:.75rem;font-weight:600;letter-spacing:.05em}.customization-details h3{font-size:1.2rem;margin:20px 0 15px}.customization-details p{font-size:1rem;color:#626262;margin:0}
.deployment{background:#e8e7e5}.deployment .section-heading>p{color:#5a5a5a;max-width:460px}.deployment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.deployment-grid article{border:1px solid #c9c7c4;border-top:3px solid #c00000;background:#f4f3f2;padding:38px;border-radius:0 0 8px 8px}.deployment-number{font-size:.75rem;font-weight:600;color:#a00000;letter-spacing:.07em}.deployment-grid h3{font-size:2rem;margin:24px 0 20px}.deployment-grid p{font-size:1rem;color:#5b5b5b}.deployment-tag{display:inline-block;border:1px solid #bdbdbd;border-radius:4px;padding:6px 12px;margin-top:12px;font-size:.875rem}.deployment-note{max-width:870px;margin:28px 0 12px;color:#5b5b5b;font-size:.9375rem}
.company-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:9%;align-items:center}.startup-tag{display:inline-block;font-size:.75rem;letter-spacing:.08em;color:#f1c8c8;padding:8px 12px;border:1px solid #733f3f;margin-bottom:26px;border-radius:4px}.company-photo{margin:0;border:1px solid #ffffff25;border-radius:8px;overflow:hidden}.company-photo>img{width:100%;height:auto;display:block;aspect-ratio:1.04;object-fit:cover;object-position:50% 58%}.company-photo figcaption{display:flex;justify-content:space-between;gap:16px;padding:18px 22px;font-size:.875rem;line-height:1.5}.company-photo figcaption span{color:#aaa}.company-feature-logo{display:block;width:100%;max-width:420px;height:auto;margin-bottom:42px}.company-copy h3{font-size:clamp(2rem,3.2vw,3rem);line-height:1.13;letter-spacing:-.04em}.company-copy p{font-size:1rem;color:#b8b8b8}.company-copy .text-link{margin-top:16px}
.contact{background:#c00000;color:#fff}.contact .section-label{color:#ffe1e1;border-color:#ffffff45}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center}.contact h2{font-size:clamp(2.5rem,4.4vw,4.6rem);color:#ffcaca}.contact h2 span{color:white}.contact-grid>div>p{font-size:1.125rem;max-width:480px}.contact-product{display:block;width:114px;height:114px;border-radius:50%;margin-bottom:25px}.contact-index{display:block;font-size:.75rem;color:#ffd3d3;letter-spacing:.12em}.contact-box h3{font-size:1.6rem;line-height:1.3;margin:22px 0}.contact-box ol{list-style:none;margin:0 0 28px;padding:0}.contact-box li{display:flex;align-items:center;gap:18px;font-size:.9375rem;padding:13px 0;border-bottom:1px solid #ffffff40}.contact-box li span{font-size:.75rem;color:#ffcaca}.contact-pending{background:#0002;border:1px solid #ffffff40;border-radius:6px;padding:18px 22px}.contact-pending strong{font-size:.9375rem}.contact-pending p{font-size:.875rem;color:#ffe1e1;margin:6px 0 0}footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:40px 5%}footer p{color:#bbb;font-size:.875rem;margin:0;max-width:360px}footer>div{display:flex;align-items:center;gap:20px;font-size:.75rem;color:#aaa}footer button{padding:10px 0;min-height:44px;background:none;border:0;color:#ccc;font-size:.875rem;white-space:nowrap}footer .company-logo{width:245px}
dialog{width:min(600px,calc(100% - 32px));max-height:85dvh;overflow:auto;background:var(--paper);color:#171717;border:0;border-radius:8px;padding:32px}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.75rem;letter-spacing:.08em;margin-bottom:24px;color:#666}.dialog-top button{min-width:44px;min-height:44px;border:0;background:none;font-size:30px}dialog h2{font-size:2.2rem}dialog p{color:#555}dialog .button{margin-top:12px}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal-ready.revealed{opacity:1;transform:none}}
@media(max-width:1200px){.header{gap:18px}.header-brands .company-logo{width:150px}.header nav{gap:15px}.header-cta{font-size:.8125rem;padding:12px;gap:14px}.header nav a{font-size:.8125rem}.section-pad{padding:80px 6%}.section-heading{gap:36px}.company-grid{gap:6%}.company-photo figcaption{flex-direction:column;gap:5px}.local-grid{gap:6%}}
@media(max-width:1050px){:root{--header-height:80px}.header nav,.header-cta{display:none}.header-product{width:59px;height:59px}.header-brands .company-logo{width:190px}.menu-toggle{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #666;border-radius:5px;background:transparent;flex-shrink:0}.menu-toggle span{width:20px;height:1px;background:white}.section-heading{align-items:flex-start}.section-heading>p{max-width:340px}.field-photo{min-height:540px}.contact-grid{gap:6%}footer{flex-wrap:wrap}footer>div{width:100%;justify-content:space-between}}
@media(max-width:800px){.section-pad{padding:66px 6%}.section-label{margin-bottom:40px;letter-spacing:.03em;gap:20px}.intro-grid,.local-grid,.company-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.intro-grid{gap:18px}.product-intro{display:flex;align-items:center;gap:28px}.product-intro>img{width:110px;height:110px;margin:0 0 20px}.product-intro h2{margin-bottom:20px}.principles{gap:26px;margin-top:30px}.principles h3{font-size:1.1rem}.section-heading{display:block}.section-heading>p{max-width:600px;margin-top:25px}.feature-card{padding:26px 25px 0}.feature-card h3{font-size:1.4rem}.features-footer{align-items:flex-start;flex-direction:column;gap:10px}.field-photo{min-height:450px;aspect-ratio:1.3}.local-copy{max-width:660px}.local-copy h2{font-size:2.7rem}.customization-details{gap:25px}.company-copy{max-width:650px}.company-feature-logo{max-width:400px;margin-bottom:30px}.company-photo>img{aspect-ratio:1.5}.company-photo figcaption{flex-direction:row}.company-copy h3{font-size:2.6rem}.contact-grid>div>p{max-width:580px}.contact h2{font-size:3.2rem;max-width:660px}.contact-box{max-width:580px}.deployment-grid article{padding:28px}.contact-product{width:94px;height:94px}}
@media(max-width:600px){:root{--header-height:76px}.header{padding:0 5%}.header-brands{gap:12px}.header-brands .company-logo{width:167px;padding-left:12px}.header-product{width:55px;height:55px}h2{font-size:2.1rem}.section-pad{padding:52px 6%}.section-label{font-size:.75rem;gap:18px;margin-bottom:32px;padding-bottom:20px}.section-label>span{max-width:55%}.section-label>span:last-child{max-width:45%}.product-intro{display:block}.product-intro>img{width:112px;height:112px;margin-bottom:24px}.principles,.feature-grid,.customization-details,.deployment-grid{grid-template-columns:1fr}.principles{gap:26px}.principles h3{font-size:1.2rem;margin-top:12px}.principles>div{display:grid;grid-template-columns:27px 1fr;gap:0 15px;padding-top:20px}.principle-number{padding-top:13px}.principles p{grid-column:2}.feature-card{padding:27px 25px 0}.feature-card h3{font-size:1.6rem}.card-top{margin-bottom:26px}.field-photo{min-height:350px;aspect-ratio:1}.field-photo figcaption{padding:65px 22px 22px}.local-copy h2{font-size:2.15rem}.local-copy .button{font-size:.875rem;gap:16px;width:100%}.customization-details{margin-top:38px;padding-top:28px}.customization-details article+article{border-top:1px solid #ccc;padding-top:25px}.customization-details h3{margin:12px 0}.company-copy h3{font-size:2.15rem}.company-photo>img{aspect-ratio:1.18}.company-photo figcaption{flex-direction:column;font-size:.8125rem}.startup-tag{letter-spacing:.04em;font-size:.75rem}.contact h2{font-size:2.5rem}.contact-grid>div>p{font-size:1rem}.contact-box h3{font-size:1.5rem}.contact-pending{padding:17px}.contact-box li{font-size:.875rem;gap:14px}footer{padding:32px 6%;gap:22px}footer p{max-width:none;width:100%;font-size:.8125rem}footer .company-logo{max-width:260px;width:80%}}
@media(max-width:360px){.header-brands .company-logo{width:145px}.header-brands{gap:9px}.header-product{width:49px;height:49px}.menu-toggle{width:44px;height:44px}.feature-card{padding:24px 20px 0}.field-photo{min-height:330px}h2{font-size:1.9rem}.local-copy h2{font-size:2rem}.contact h2{font-size:2.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
/* Keep intrinsic photo ratios from widening narrow grid columns. */
.intro-grid>*,.local-grid>*,.company-grid>*,.contact-grid>*{min-width:0}.field-photo{width:100%}

/* experience.css */
.experience{height:220svh;background:#171717;position:relative}.experience-stage{height:calc(100svh - var(--header-height));min-height:570px;position:sticky;top:var(--header-height);overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 76% 55%,#343030 0%,#202020 38%,#171717 72%)}.experience-stage:before{content:"";position:absolute;inset:0;background:url('assets/luois-geometry.png') center / cover no-repeat;opacity:.08;z-index:-1;pointer-events:none}.experience-topline{position:absolute;left:5%;right:5%;top:26px;display:flex;justify-content:space-between;gap:25px;color:#aaa;font-size:.75rem;line-height:1.5;letter-spacing:.07em}.experience-copy{position:absolute;left:6%;top:22%;width:43%;z-index:3;will-change:opacity,transform}.experience-copy .eyebrow{font-size:.875rem;color:#bcbcbc;max-width:390px;margin-bottom:22px}.experience-copy h1{font-size:clamp(3rem,5vw,5.3rem);line-height:1.02;margin:0 0 28px;letter-spacing:-.05em}.experience-copy h1 span{display:block;color:#ee1717}.experience-copy>p:last-of-type{font-size:1.0625rem;line-height:1.7;color:#bcbcbc;max-width:490px;margin-bottom:30px}.experience-start{display:inline-flex;align-items:center;gap:28px;min-height:48px;padding:12px 20px;color:white;background:#c00000;border:1px solid #c00000;border-radius:5px;font-size:.9375rem;transition:background .2s}.experience-start:hover{background:#a00000}.device-scene{position:absolute;left:50%;width:800px;aspect-ratio:1.5;transform:translateX(-50%);z-index:2;pointer-events:none}.device-shell{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain}.device-screen{position:absolute;left:14.19%;top:11.13%;width:71.68%;height:64.45%;overflow:hidden;border-radius:3px;background:#222;box-shadow:0 0 0 1px #131313;container-type:inline-size}.welcome-screen{position:absolute;inset:0;padding:3cqw 4cqw;display:flex;flex-direction:column;color:white;background:#222 url('assets/response-vehicle.jpg') center / cover no-repeat;isolation:isolate;font-family:var(--font)}.welcome-screen:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0a1016e8,#0c121999 60%,#0a10164d),linear-gradient(0deg,#0a1016b8,transparent 70%)}.welcome-top{display:flex;align-items:center;gap:2cqw;border-bottom:1px solid #ffffff33;padding-bottom:1cqw;font-size:1.9cqw;font-weight:600;letter-spacing:.12cqw}.welcome-top>img{width:12cqw;height:12cqw;border-radius:50%;object-fit:contain}.welcome-mode{margin-left:auto;font-size:1.35cqw;color:#ddd}.welcome-main{display:flex;flex:1;flex-direction:column;justify-content:center;padding:1cqw 0}.welcome-eyebrow{font-size:1.5cqw;color:#ddd;letter-spacing:.1cqw;margin-bottom:.4cqw}.welcome-main>p{font-size:4.4cqw;line-height:1.15;font-weight:600;letter-spacing:-.1cqw;margin:1cqw 0 1.5cqw}.welcome-subline{font-size:1.95cqw;line-height:1.6;color:#ddd}.welcome-modules{display:flex;flex-wrap:wrap;gap:1cqw 2cqw;font-size:1.75cqw;line-height:1.5;padding:1.6cqw 0;border-top:1px solid #ffffff44;border-bottom:1px solid #ffffff44}.welcome-modules>span:before{content:"";display:inline-block;width:.6cqw;height:.6cqw;background:#ee1717;margin-right:.8cqw;vertical-align:middle}.welcome-footer{display:flex;align-items:center;justify-content:space-between;gap:2cqw;font-size:1.2cqw;letter-spacing:.08cqw;line-height:1.5;padding-top:1.6cqw;color:#ccc}.welcome-footer img{display:block;width:19cqw;height:auto}.experience-title-in{position:absolute;top:30px;left:6%;right:6%;display:flex;align-items:baseline;justify-content:space-between;gap:30px;opacity:0;pointer-events:none;z-index:3}.experience-title-in h2{font-size:1.75rem;letter-spacing:-.03em;margin:0}.experience-title-in p{font-size:.875rem;color:#aaa;margin:0}.experience-controls{position:absolute;left:50%;bottom:95px;transform:translateX(-50%);display:flex;align-items:center;gap:5px;padding:5px;background:#222e;backdrop-filter:blur(12px);border:1px solid #666;border-radius:6px;opacity:0;visibility:hidden;z-index:6;transition:opacity .2s}.experience-controls a{display:flex;align-items:center;gap:20px;padding:10px 15px;min-height:44px;white-space:nowrap;font-size:.875rem;border-radius:3px}.experience-controls a:first-child{background:#c00000}.experience-controls a:hover{background:#444}.experience.entered .experience-controls{opacity:1;visibility:visible}.experience-note{position:absolute;bottom:24px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:26px;font-size:.75rem;color:#bcbcbc;z-index:5}.experience-note p{margin:0}.experience-scroll{display:flex;align-items:center;gap:12px;font-size:.75rem;white-space:nowrap}.experience-scroll span{display:block;width:19px;height:31px;border:1px solid #777;border-radius:12px;position:relative}.experience-scroll span:after{content:"";position:absolute;top:7px;left:8px;width:2px;height:7px;background:#ee1717;animation:scroll-cue 1.7s ease-in-out infinite}.experience-skip{font-size:.75rem;min-height:44px;display:flex;align-items:center;color:#ccc}.experience-skip:hover{color:white}.experience-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#d00000;transform:scaleX(0);transform-origin:left;z-index:7}@keyframes scroll-cue{50%{transform:translateY(6px)}}
@media(max-width:1050px){.experience-copy{left:6%;right:6%;top:74px;width:auto;text-align:center}.experience-copy .eyebrow{max-width:none;margin-bottom:14px}.experience-copy h1{font-size:clamp(2.7rem,5.2vw,3.7rem);margin-bottom:20px}.experience-copy h1 span{display:inline;margin-left:.18em}.experience-copy>p:last-of-type{margin:0 auto 23px;max-width:640px;font-size:1rem}.experience-topline>span:last-child{display:none}.experience-title-in{display:block}.experience-title-in h2{font-size:1.65rem;margin-bottom:7px}.experience-title-in p{font-size:.875rem}.experience-skip{display:none}.experience-note{font-size:.75rem}.experience-note>p{max-width:360px}.experience-controls{bottom:96px}}
@media(max-width:600px),(max-height:600px){.experience{height:auto}.experience-stage{position:relative;top:0;height:auto;min-height:0;display:flex;flex-direction:column;padding:27px 0 24px;overflow:hidden;background:radial-gradient(ellipse at 50% 65%,#302b2b,#171717 72%)}.experience-topline{position:static;margin:0 6% 32px;display:block;font-size:.75rem;line-height:1.5}.experience-topline>span:last-child{display:none}.experience-copy{position:static;width:auto;text-align:left;margin:0 6%;will-change:auto}.experience-copy .eyebrow{font-size:.875rem;max-width:280px;margin-bottom:20px}.experience-copy h1{font-size:clamp(2.4rem,10.5vw,3.7rem);line-height:1.04;margin-bottom:23px}.experience-copy h1 span{display:block;margin-left:0}.experience-copy>p:last-of-type{font-size:1rem;line-height:1.6;margin:0 0 26px;max-width:500px}.experience-copy>p:last-of-type br{display:none}.experience-start{font-size:.9375rem;min-height:48px}.device-scene{position:relative;left:auto;width:110%;margin:25px -5% 2px;transform:none;aspect-ratio:1.5;flex-shrink:0;will-change:auto}.experience-note{position:static;display:block;margin:8px 6% 0;font-size:.75rem}.experience-note>p{max-width:none}.experience-scroll,.experience-title-in,.experience-controls,.experience-progress{display:none!important}.welcome-mode,.welcome-eyebrow,.welcome-subline,.welcome-modules{display:none}.welcome-screen{padding:4cqw 5cqw}.welcome-top{padding-bottom:2cqw;font-size:3.2cqw;letter-spacing:0}.welcome-top>img{width:16cqw;height:16cqw}.welcome-main>p{font-size:6cqw;line-height:1.18;margin:2cqw 0}.welcome-footer{font-size:2cqw;padding-top:2cqw;line-height:1.4;border-top:1px solid #ffffff44}.welcome-footer>span{max-width:52%}.welcome-footer img{width:28cqw}}
@media(prefers-reduced-motion:reduce){.experience{height:auto}.experience-stage{position:relative;top:0;min-height:0;height:auto;display:flex;flex-direction:column;padding:28px 0}.experience-topline{position:static;margin:0 6% 30px}.experience-copy{position:static;width:auto;margin:0 6%;opacity:1!important;transform:none!important}.device-scene{position:relative;left:auto!important;top:auto!important;width:90%!important;max-width:1000px;margin:25px auto;transform:none!important}.experience-title-in,.experience-controls,.experience-scroll,.experience-progress{display:none!important}.experience-note{position:static;margin:0 6%}.experience-copy>p:last-of-type{margin-left:0}.experience-copy{text-align:left}.experience-start{display:none}}

/* showcase.css */
/* LUOIS identity: original geometry, Arial, anthracite, angular controls. */
:root{--surface:#292929}.feature-card,.button,.header-cta,.menu-toggle,.deployment-grid article,.contact-pending,.startup-tag{border-radius:2px}.feature-card{background:#292929}.feature-primary{background:#292929;border-color:#c00000}.line-icon{display:inline-flex;align-items:center}.line-icon svg{width:37px;height:37px;stroke-width:1.8}.device-formats{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 25px}.device-formats>span{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid #5c5c5c;background:#292929;font-size:.875rem;color:#ddd}.device-formats svg{width:16px;height:16px;stroke-width:1.8}.experience-copy{top:17%;width:39%}.experience-copy h1{font-size:clamp(3rem,4.7vw,5rem)}.experience-copy .eyebrow{max-width:460px}.product-stage{display:contents}.fleet-scene{position:absolute;left:42%;top:11%;width:57%;aspect-ratio:1.5;z-index:1;pointer-events:none;will-change:opacity,transform}.fleet-hardware{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.fleet-screen{position:absolute;container-type:inline-size;overflow:hidden;background:#292929}.board-screen{left:10.742%;top:8.3%;width:53.646%;height:44.727%;clip-path:polygon(0 0,100% 1.75%,99.9% 100%,0 99.8%)}.pc-screen{left:67.188%;top:41.5%;width:26.888%;height:23.828%;clip-path:polygon(.25% .4%,100% 0,100% 100%,0 98%)}.tablet-screen{left:8.008%;top:64.063%;width:18.62%;height:19.531%;clip-path:polygon(0 4.5%,90.9% 0,100% 90%,8% 100%)}
.login-display{position:absolute;inset:0;display:grid;grid-template-columns:75% 25%;background:#292929;color:#fff;font-family:Arial,Helvetica,sans-serif;line-height:1.4;text-align:left;isolation:isolate}.login-brand{position:relative;background:#282828;isolation:isolate;overflow:hidden}.login-brand:before{content:"";position:absolute;inset:0;background:url('assets/response-detail.jpg') center / cover;filter:grayscale(1);z-index:-3}.login-brand:after{content:"";position:absolute;inset:0;background:#0009;z-index:-2}.login-geometry{position:absolute;inset:0;width:133.333%;z-index:-1;background:#d00000;mask:url('assets/auth-geometry-mask.png') 0 0 / 100% 100% no-repeat;-webkit-mask:url('assets/auth-geometry-mask.png') 0 0 / 100% 100% no-repeat}.login-provider{position:absolute;top:8%;right:7%;width:33%;height:auto}.login-copy{position:absolute;left:6%;right:5%;bottom:19%}.login-copy>span{display:block;font-size:1.4cqw;font-weight:900;letter-spacing:.12em}.login-copy>i{display:block;width:6cqw;height:.4cqw;background:#d00000;margin-top:1cqw}.login-copy>p{font-size:1.4cqw;font-weight:700;margin:2.3cqw 0 3cqw;color:#fff}.login-copy>strong{display:block;font-size:3.8cqw;font-weight:900;line-height:.95;letter-spacing:-.045em;text-transform:uppercase}.login-copy>small{display:block;font-size:1.35cqw;color:#d1d1d1;margin-top:2cqw}.login-license{position:absolute;bottom:4%;left:6%;font-size:.85cqw;letter-spacing:.05em;color:#ddd}.login-panel{display:flex;flex-direction:column;justify-content:center;padding:2.2cqw;background:#292929;min-width:0;z-index:2}.login-panel>img{display:block;width:6cqw;height:6cqw;object-fit:contain;align-self:center;margin-bottom:1.1cqw;border-radius:50%}.login-overline{font-size:.75cqw;font-weight:700;color:#ee1717;letter-spacing:.08em;margin-bottom:.4cqw}.login-panel>b{font-size:2.7cqw;line-height:1.15;letter-spacing:-.04em}.login-panel>p{font-size:.95cqw;line-height:1.4;color:#bdbdbd;margin:.65cqw 0 1.1cqw}.login-fields{display:grid;gap:.55cqw}.login-fields>span{font-size:.72cqw;font-weight:700;letter-spacing:.04em;color:#dedede}.login-field{height:3.1cqw;border:1px solid #565656;border-radius:1px;background:#353535;display:flex;justify-content:flex-end;align-items:center;padding:0 .7cqw;color:#bbb;font-size:1cqw}.login-field svg{width:1.3cqw;height:1.3cqw}.login-fields>small{font-size:.72cqw;color:#c9c9c9;line-height:1.3;margin:.45cqw 0}.login-submit{height:3.2cqw;display:grid;place-items:center;background:#d00000;font-size:1cqw;font-weight:700;border-radius:1px}.login-forgot{text-decoration:underline;text-underline-offset:.15cqw}.login-demo-label{font-size:.65cqw;color:#aaa;margin-top:1.5cqw}
.board-preview{position:absolute;inset:0;background:#222;color:white;display:flex;flex-direction:column}.board-heading{height:16%;display:flex;align-items:center;gap:2cqw;padding:1.2cqw 2.2cqw;border-bottom:1px solid #555;background:#292929;font-size:2cqw;font-weight:700}.board-heading img{height:6cqw;width:6cqw;border-radius:50%}.board-heading>small{margin-left:auto;color:#ccc;font-size:1.3cqw;letter-spacing:.04em}.board-map{position:relative;flex:1;overflow:hidden}.board-map svg{display:block;width:100%;height:100%}.map-caption{position:absolute;left:3%;bottom:5%;padding:1cqw 1.6cqw;background:#171717e8;border-left:.4cqw solid #c00000;color:#fff;font-size:2cqw}.tablet-screen .login-display{grid-template-columns:60% 40%}.tablet-screen .login-panel{padding:2cqw}.tablet-screen .login-panel>img{width:9cqw;height:9cqw}.tablet-screen .login-copy>strong{font-size:3cqw}.tablet-screen .login-copy>p{font-size:1.8cqw}.tablet-screen .login-panel>b{font-size:4cqw}.tablet-screen .login-panel>p{font-size:1.4cqw}.tablet-screen .login-fields>span{font-size:1.2cqw}.tablet-screen .login-field{height:4cqw}.tablet-screen .login-submit{height:4.5cqw;font-size:1.5cqw}.tablet-screen .login-fields>small,.tablet-screen .login-demo-label{display:none}
.sector-story{padding-top:0;background:#171717}.sector-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:36px}.sector-heading h2{font-size:clamp(2.1rem,3.5vw,3.4rem);margin:0}.sector-heading p{max-width:380px;color:#bdbdbd;margin:0}.sector-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.sector-card{position:relative;margin:0;aspect-ratio:1.4;overflow:hidden;background:#222;border:1px solid #ffffff25}.sector-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}.sector-card:hover>img{transform:scale(1.035)}.sector-card figcaption{position:absolute;bottom:0;left:0;right:0;padding:70px 30px 28px;background:linear-gradient(transparent,#000e);color:#fff}.sector-card h3{font-size:1.6rem;margin:0 0 10px}.sector-card p{font-size:1rem;line-height:1.5;max-width:460px;margin:0}.sector-caption{font-size:.75rem;color:#999;margin:15px 0 0}.contact-ready{border-top:1px solid #ffffff55;padding-top:22px}.contact-ready .button{background:white;color:#8f0000;width:100%;justify-content:center;margin-bottom:12px}.contact-ready>a:last-child{font-size:1rem;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.contact-ready p{font-size:.875rem;color:#ffdcdc;margin:12px 0 0}.legal-address{font-style:normal;font-size:1rem;margin-bottom:24px}.legal-address a{text-decoration:underline;overflow-wrap:anywhere}dialog h3{font-size:1.1rem;margin:26px 0 10px}dialog p{font-size:1rem}footer>div{flex-wrap:wrap}.experience-note .scene-note{font-size:.75rem;color:#aaa}.device-screen{pointer-events:none}
@media(max-width:1050px){.experience-copy{top:65px;width:auto}.experience-copy h1{font-size:clamp(2.7rem,5.2vw,3.7rem)}.device-formats{justify-content:center;margin-bottom:18px}.experience-copy .eyebrow{max-width:none}.fleet-scene{left:9%;width:82%}.sector-heading{display:block}.sector-heading p{margin-top:24px;max-width:640px}}
@media(max-width:800px){.sector-grid{gap:16px}.sector-card{aspect-ratio:1}.sector-card figcaption{padding:60px 22px 22px}.sector-card h3{font-size:1.3rem}.sector-card p{font-size:.9375rem}}
@media(max-width:600px),(max-height:600px){.experience-copy{width:auto;position:static}.experience-copy h1{font-size:clamp(2.4rem,10.5vw,3.7rem)}.device-formats{justify-content:flex-start;gap:6px;margin-bottom:23px}.device-formats>span{font-size:.8125rem;padding:6px 8px}.device-formats svg{width:15px;height:15px}.product-stage{display:block;position:relative;width:100%;aspect-ratio:1.23;margin:30px 0 8px;overflow:hidden}.fleet-scene{left:0;top:0;width:100%;transform:none!important;opacity:1!important}.device-scene{position:absolute;left:24%;top:auto;bottom:0;width:65%;margin:0;transform:none}.experience-note{margin-top:16px}.sector-grid{grid-template-columns:1fr}.sector-story{padding-top:22px}.sector-card{aspect-ratio:1.15}.sector-card h3{font-size:1.5rem}.sector-card p{font-size:1rem}.sector-heading h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.product-stage{display:block;position:relative;width:min(100%,1000px);aspect-ratio:1.23;margin:20px auto;overflow:hidden}.fleet-scene{position:absolute;left:0;top:0;width:100%;opacity:1!important;transform:none!important}.product-stage .device-scene{position:absolute;left:24%!important;top:auto!important;bottom:0;width:65%!important;margin:0}.experience-copy{width:auto}.device-formats{justify-content:flex-start}}
.header-cta>svg,.button>svg,.text-link>svg{width:18px;height:18px;flex-shrink:0}summary>svg{width:22px;height:22px;flex-shrink:0;transition:transform .2s}details[open] summary>svg{transform:rotate(45deg)}
.fleet-hardware{-webkit-mask-image:radial-gradient(ellipse 75% 80% at 50% 45%,#000 55%,transparent 92%);mask-image:radial-gradient(ellipse 75% 80% at 50% 45%,#000 55%,transparent 92%)}
@keyframes product-arrival{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.experience-copy h1{animation:product-arrival .75s ease both}.experience-copy .device-formats{animation:product-arrival .85s .12s ease both}.fleet-scene>*,.device-scene>*{animation:product-arrival 1s .1s ease both}}
/* Photos merge into the anthracite interface; LUOIS red stays an accent. */
.sector-card,.field-photo,.company-photo{isolation:isolate;border-radius:2px;background:#222}
.sector-card>img,.field-photo>img,.company-photo>img{filter:saturate(.62) brightness(.78)}
.sector-card:after,.field-photo:after,.company-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#17171712 12%,#17171733 42%,#171717ed 100%),linear-gradient(90deg,#17171755,transparent 48%,#17171733);z-index:1}
.sector-card figcaption,.field-photo figcaption,.company-photo figcaption{z-index:2;background:none}
.company-photo{position:relative}
.company-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:32px 24px;color:#fff}
.company-photo figcaption span{color:#ddd}
.sector-card{border-color:#ffffff12}
.field-photo{border:1px solid #ffffff12}
.section-light{background:#222;color:#f4f3f2}
.section-light .section-label{color:#aaa;border-color:#ffffff24}
.local-copy>.eyebrow,.customization-details article>span,.deployment-number{color:#ee1717}
.local-copy>p:not(.eyebrow):not(.lead),.customization-details p{color:#bdbdbd}
.customization-details{border-color:#ffffff24}
.customization-details article+article{border-color:#ffffff24}
.local-copy .button{background:#c00000}
.local-copy .button:hover{background:#a00000}
.deployment{background:#1b1b1b}
.deployment .section-heading>p,.deployment-grid p,.deployment-note{color:#bdbdbd}
.deployment-grid article{background:#292929;border-color:#ffffff24;border-top-color:#c00000}
.deployment-tag{border-color:#666}
.contact{background:radial-gradient(ellipse at 95% 100%,#302222,transparent 65%),#222;border-top:1px solid #ffffff1c}
.contact .section-label{color:#aaa;border-color:#ffffff24}
.contact h2{color:#a6a6a6}
.contact h2 span{color:#fff}
.contact-index,.contact-box li span{color:#aaa}
.contact-box li,.contact-ready{border-color:#ffffff24}
.contact-ready .button{background:#c00000;color:#fff}
.contact-ready .button:hover{background:#a00000}
.contact-ready p{color:#bdbdbd}
@media(max-width:600px){.company-photo figcaption{padding:24px 22px}}

/* product-preview.css */
/* Product-led presentation with supplied photography and LUOIS interface tokens. */
.experience-stage{background:#171717}.experience-stage:before{background:linear-gradient(90deg,#171717fa 5%,#171717e8 40%,#17171791 100%),linear-gradient(0deg,#171717,transparent 70%),url('assets/response-detail.jpg') center/cover;opacity:1}.experience-copy{width:38%;top:20%}.experience-copy h1{font-size:clamp(3rem,4.5vw,4.8rem)}.device-scene{aspect-ratio:auto;background:#222;border:1px solid #626262;border-radius:5px;box-shadow:0 35px 80px #0009;overflow:hidden;transform:translateX(-50%);container-type:inline-size}.product-window-head{height:42px;padding:7px 14px;display:flex;align-items:center;gap:9px;background:#222;border-bottom:1px solid #555;color:#ddd;font-size:13px}.product-window-head img{width:26px;height:26px;border-radius:50%}.product-window-head small{margin-left:auto;font-size:12px;color:#aaa}.device-screen{position:relative;left:auto;top:auto;width:100%;height:auto;aspect-ratio:1.78;border-radius:0;box-shadow:none}.login-brand:before{background-image:url('assets/response-detail.jpg')}.login-copy>strong{font-size:3.5cqw}.experience-title-in h2{font-size:1.65rem}.experience-stage .experience-note{font-size:12px}.experience-start{border-radius:2px}
.product-tour{background:#171717;padding-top:90px}.product-tour .section-label{color:#aaa;border-color:#ffffff24}.tour-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:end;margin-bottom:48px}.tour-heading h2{font-size:clamp(2.2rem,3.7vw,3.6rem);margin-bottom:0}.tour-heading>p{max-width:460px;color:#bbb;margin:0;font-size:1rem}.tour-heading .eyebrow{color:#ee1717;margin-bottom:18px}.tour-layout{display:grid;grid-template-columns:minmax(245px,.36fr) minmax(0,1fr);gap:30px;align-items:start}.tour-options{display:grid;gap:12px}.tour-options button{display:flex;align-items:start;gap:15px;text-align:left;color:#aaa;background:#202020;border:1px solid #ffffff17;border-left:3px solid transparent;padding:25px 20px;transition:background .2s,border-color .2s}.tour-options button[aria-selected=true]{background:#2c2424;border-left-color:#ee1717;color:#fff}.tour-options button:hover{background:#292929}.tour-icon{color:#ee1717;display:flex;padding-top:2px}.tour-options svg{width:24px;height:24px;flex-shrink:0}.tour-options small{display:block;font-size:12px;letter-spacing:.055em;margin-bottom:12px}.tour-options strong{display:block;font-size:1.3rem;line-height:1.25;letter-spacing:-.02em;margin-bottom:14px}.tour-options button>span>span{display:block;font-size:14px;line-height:1.55;color:#bdbdbd}.tour-display{min-width:0;overflow:hidden;border:1px solid #666;background:#222;border-radius:4px;box-shadow:0 20px 60px #0004}.tour-brand{display:flex;align-items:center;gap:10px;padding:12px 20px;min-height:56px;font-size:13px;font-weight:700;letter-spacing:.035em;border-bottom:1px solid #555}.tour-brand img{width:33px;height:33px;border-radius:50%}.tour-brand small{margin-left:auto;color:#bdbdbd;font-size:12px;letter-spacing:.04em}.app-preview{color:#292929;background:#efede9;min-height:570px;animation:preview-in .28s ease}.app-preview[hidden]{display:none}.preview-head{padding:22px 26px;border-left:5px solid #c00000;background:#292929;color:#fff}.preview-head>small{font-size:12px;font-weight:700;color:#ff6565;letter-spacing:.08em}.preview-head h3{font:700 clamp(1.35rem,2vw,1.8rem)/1.2 Arial,sans-serif;letter-spacing:-.025em;margin:6px 0 10px}.preview-head p{font-size:14px;line-height:1.55;margin:0;color:#bbb}.preview-body{padding:24px;display:grid;gap:20px}.preview-body h4{margin:0;font-size:1rem;line-height:1.4}.preview-body h4 small{display:block;font-size:12px;color:#666;font-weight:400;margin-top:4px}.preview-case{background:white;border:1px solid #dcd7d2;padding:17px;display:flex;flex-wrap:wrap;align-items:center;gap:15px 25px}.preview-case>div{display:grid;gap:6px}.preview-case small{font-size:12px;color:#666}.preview-case strong{font-size:14px}.preview-status{margin-left:auto;background:#f9ebd1;color:#775416;font-size:12px;padding:5px 8px;border:1px solid #decba9}.preview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.preview-metrics article{background:#fff;border:1px solid #dcd7d2;border-top:3px solid #c00000;padding:18px 14px;display:grid;gap:10px}.preview-metrics svg{color:#c00000;width:23px;height:23px}.preview-metrics strong{font-size:2rem;line-height:1}.preview-metrics article>span:last-child{font-size:13px;line-height:1.4;color:#555}.preview-flow{background:#fff;border:1px solid #dcd7d2;padding:20px}.preview-flow>small{font-size:12px;letter-spacing:.06em;color:#a00000;font-weight:700}.preview-flow h4{margin:8px 0 20px}.preview-flow>div{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.preview-flow>div>span{display:grid;gap:10px;font-size:13px;font-weight:700}.preview-flow i{font-style:normal;display:flex;color:#c00000}.preview-flow svg{width:25px;height:25px}.preview-benefit{font-size:14px;line-height:1.6;color:#555;margin:0;border-left:2px solid #c00000;padding-left:14px}.preview-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.preview-fields>div{display:grid;gap:5px;min-width:0}.preview-fields span{font-size:12px;color:#555}.preview-fields b{display:block;padding:9px 11px;background:#fff;border:1px solid #b7b2ac;border-radius:3px;font-size:14px;line-height:1.4;font-weight:400}.preview-fields .preview-wide{grid-column:1/-1}.preview-log{border:1px solid #c9c3bc;background:white}.preview-log>div{display:grid;grid-template-columns:50px 95px 1fr;gap:12px;padding:12px;font-size:13px;line-height:1.45}.preview-log>div+div{border-top:1px solid #ddd}.preview-log time{color:#666}.preview-log b{color:#a00000}.preview-table-wrap{overflow-x:auto}.preview-table{border-collapse:collapse;width:100%;font-size:14px;background:white;text-align:left;line-height:1.4}.preview-table th{background:#ddd8d2;padding:12px 10px;font-size:12px;color:#555;font-weight:700}.preview-table td{padding:18px 10px;border-bottom:1px solid #ddd;vertical-align:top}.preview-table small{display:block;font-size:12px;color:#666;margin-top:5px}.fms{display:inline-block;border:1px solid #aaa;padding:2px 8px;font-weight:700}.tour-footnote{display:flex;gap:12px;padding:17px 20px;color:#bbb;font-size:12px;line-height:1.6}.tour-footnote svg{width:18px;height:18px;flex-shrink:0}.tour-closing{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:30px;border-top:1px solid #ffffff24;padding-top:24px}.tour-closing p{max-width:650px;font-size:1rem;color:#bbb;margin:0}.tour-closing a{flex-shrink:0}.tour-closing svg{width:18px;height:18px}.sector-story{padding-top:60px}.sector-card:first-child>img,.field-photo>img{object-position:47% center}.sector-card:nth-child(2)>img{object-position:63% center}.sector-card>img,.field-photo>img{filter:saturate(.62) brightness(.72)}
@keyframes preview-in{from{opacity:.6;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.experience-copy{width:auto;top:70px}.experience-copy h1{font-size:clamp(2.7rem,5.3vw,3.7rem)}.tour-heading{gap:30px;grid-template-columns:1fr}.tour-heading>p{max-width:650px}.tour-layout{grid-template-columns:1fr}.tour-options{grid-template-columns:repeat(3,1fr)}.tour-options button{padding:20px 16px;gap:10px;display:block}.tour-icon{margin-bottom:12px}.tour-options strong{font-size:1.15rem}.tour-options small{font-size:11px;letter-spacing:.02em}.app-preview{min-height:520px}}
@media(max-width:600px),(max-height:600px){.experience-copy{position:static}.experience-stage:before{background:linear-gradient(#171717e8,#171717cd),url('assets/response-detail.jpg') center/cover}.device-scene{position:relative;left:auto!important;top:auto!important;width:94%!important;margin:35px 3% 15px;transform:none!important;aspect-ratio:auto;overflow:hidden}.product-window-head{height:35px;padding:5px 10px;font-size:11px}.product-window-head img{width:23px;height:23px}.product-window-head small{display:none}.device-screen{aspect-ratio:1.5}.login-display{grid-template-columns:65% 35%}.login-panel{padding:2.5cqw}.login-panel>b{font-size:3.5cqw}.login-panel>img{width:10cqw;height:10cqw}.login-panel>p{font-size:1.55cqw}.login-overline,.login-fields>span{font-size:1.1cqw}.login-field{height:4cqw}.login-submit{font-size:1.4cqw;height:4cqw}.login-fields>small,.login-demo-label{display:none}.login-copy>strong{font-size:3.7cqw}.login-copy>span,.login-copy>p{font-size:2cqw}.login-copy>small{font-size:1.7cqw}.login-provider{width:48%}.product-tour{padding-top:52px}.tour-heading{margin-bottom:28px}.tour-options{grid-template-columns:1fr;gap:8px}.tour-options button{display:flex;align-items:center;padding:14px;gap:15px}.tour-icon{margin:0}.tour-options strong{font-size:1rem;margin:0}.tour-options strong br{display:none}.tour-options small{margin-bottom:5px;font-size:11px}.tour-options button>span>span{display:none}.tour-layout{gap:20px}.tour-brand{padding:10px 12px;gap:8px;font-size:11px;flex-wrap:wrap}.tour-brand small{font-size:10px;letter-spacing:0}.tour-brand img{width:27px;height:27px}.preview-head{padding:18px 16px}.preview-head p{font-size:13px}.preview-head>small{font-size:10px}.preview-body{padding:14px;gap:16px}.preview-case{gap:14px;padding:13px}.preview-status{margin-left:0}.preview-metrics{gap:7px}.preview-metrics article{padding:12px 8px}.preview-metrics article>span:last-child{font-size:12px}.preview-metrics strong{font-size:1.5rem}.preview-flow{padding:15px}.preview-flow>div{grid-template-columns:1fr 1fr;gap:20px}.preview-fields{grid-template-columns:1fr}.preview-log>div{grid-template-columns:44px 1fr;gap:6px}.preview-log>div>span{grid-column:2}.preview-table{min-width:490px}.preview-table-wrap{border:1px solid #ccc}.preview-benefit{font-size:13px}.app-preview{min-height:0}.tour-footnote{padding:13px;font-size:11px}.tour-closing{display:block}.tour-closing a{margin-top:15px}.sector-story{padding-top:30px}}
@media(prefers-reduced-motion:reduce){.experience{height:auto}.experience-stage{position:relative;height:auto;min-height:0;padding-top:80px}.experience-copy{position:relative;top:auto;left:auto;width:auto;max-width:1100px;margin:0 auto;padding:0 6%}.device-scene{position:relative;top:auto!important;left:auto!important;width:88%!important;margin:35px auto 110px;transform:none!important}.experience-title-in{display:none}.app-preview{animation:none}}
.screenshot-preview{background:#222;color:#fff;min-height:0}.screenshot-heading{padding:19px 22px;display:flex;justify-content:space-between;gap:20px;align-items:center;border-left:4px solid #c00000}.screenshot-heading h3{font-size:1.2rem;margin:0}.screenshot-heading>span{font-size:12px;color:#aaa}.screenshot-open{display:block;width:100%;padding:0;border:0;background:#171717;position:relative;color:white;text-align:right}.screenshot-open>img{display:block;width:100%;height:auto}.screenshot-open>span{display:inline-flex;align-items:center;gap:10px;margin:12px 18px;font-size:14px}.screenshot-open svg{width:16px;height:16px;display:block}.screenshot-open:hover>span{color:#ff6565}.screenshot-benefit{padding:22px;margin:0;font-size:1rem;line-height:1.6;color:#ddd;border-bottom:1px solid #555}.tour-layout{grid-template-columns:minmax(220px,.29fr) minmax(0,1fr)}.screenshot-dialog{width:min(1600px,96vw);max-height:94dvh;background:#222;color:white;padding:18px;border:1px solid #666}.screenshot-dialog .dialog-top{margin-bottom:14px;color:#ddd}.screenshot-dialog h2{font-size:1.2rem;margin:0}.screenshot-dialog .close-dialog{color:white}.screenshot-dialog p{font-size:12px;color:#bbb;margin:12px 0 0}.full-shot-scroll{overflow:auto;max-height:75dvh}.full-shot-scroll img{display:block;width:100%;height:auto;min-width:800px}.hero-view-tabs{display:flex;gap:0;border-bottom:1px solid #666;background:#292929;pointer-events:auto}.hero-view-tabs button{flex:1;background:none;color:#aaa;border:0;border-bottom:2px solid transparent;padding:9px 15px;font-size:13px}.hero-view-tabs button[aria-pressed=true]{border-color:#ee1717;color:#fff;background:#333}.hero-app-shot{display:block;width:100%;height:100%;object-fit:cover}.device-screen{aspect-ratio:1.59}.hero-login{position:absolute;inset:0}.hero-login[hidden],.hero-app-shot[hidden]{display:none}.device-scene{pointer-events:auto}.experience-copy{z-index:3}.device-scene{z-index:4}
@media(max-width:1050px){.tour-layout{grid-template-columns:1fr}}
@media(max-width:600px){.screenshot-heading{padding:15px;display:block}.screenshot-heading>span{display:block;margin-top:5px}.screenshot-benefit{padding:17px;font-size:14px}.hero-view-tabs button{font-size:12px;padding:9px}.device-screen{aspect-ratio:1.59}.screenshot-dialog{padding:12px}.screenshot-dialog h2{font-size:1rem}.screenshot-open>span{font-size:13px}.tour-brand small{font-size:9px}}
.object-document{display:flex;gap:20px;align-items:center;padding:18px 22px;background:#292929;text-align:left;border-bottom:1px solid #555}.object-document>img{width:150px;height:auto;border:1px solid #666}.object-document>span{display:block;margin:0}.object-document strong{display:block;font-size:15px;line-height:1.5}.object-document small{display:block;color:#aaa;font-size:13px;margin-top:8px}@media(max-width:600px){.object-document{padding:15px;gap:13px}.object-document>img{width:95px}.object-document strong{font-size:13px}.object-document small{font-size:12px}}
/* Equal treatment for every module, with the same LUOIS red on interaction. */
.feature-card{border:1px solid #ffffff24;background:#292929;transition:background .25s,border-color .25s,transform .25s}.feature-card:hover,.feature-card:focus-within{background:#c00000;border-color:#ee1717}.feature-card:hover .line-icon,.feature-card:focus-within .line-icon,.feature-card:hover .card-top,.feature-card:focus-within .card-top{color:#fff}.feature-card:hover>p,.feature-card:focus-within>p,.feature-card:hover .card-tags span,.feature-card:focus-within .card-tags span,.feature-card:hover .module-points,.feature-card:focus-within .module-points{color:#fff}.feature-card:hover .card-tags span,.feature-card:focus-within .card-tags span{border-color:#ffffff66}.module-points{padding:0 0 0 18px;margin:0 0 22px;color:#bdbdbd;font-size:1rem;line-height:1.65}.module-points li+li{margin-top:12px}.module-request{display:block;min-height:48px;padding:13px 0 20px;font-size:14px;text-decoration:underline;text-underline-offset:5px}.feature-card summary i{display:flex}.feature-card summary svg{width:22px;height:22px}.feature-card details[open] summary svg{transform:rotate(45deg)}
.experience-copy .device-context{font-size:14px;line-height:1.5;color:#aaa;margin:0 0 13px;max-width:380px}.device-formats{gap:0;margin-bottom:30px}.device-formats>span{border:0;border-right:1px solid #ffffff35;background:transparent;padding:0 14px;color:#ccc;font-size:13px;gap:7px}.device-formats>span:first-child{padding-left:0}.device-formats>span:last-child{border-right:0}.device-formats svg{width:17px;height:17px}.sector-card:nth-child(2)>img{filter:saturate(.35) brightness(.55)}
@media(max-width:1050px){.experience-copy .device-context{max-width:none}.device-formats{justify-content:center}.experience-copy{top:65px}.experience-copy h1{margin-bottom:20px}.experience-copy>p:last-of-type{margin-bottom:14px}}
@media(max-width:600px){.device-formats{justify-content:flex-start;gap:12px 0}.device-formats>span{font-size:12px;padding:0 10px}.experience-copy .device-context{font-size:14px;margin-bottom:15px}.feature-card .module-points{font-size:15px}}
/* Interactive device views, always preserving the original image proportions. */
.device-formats{display:flex;flex-wrap:wrap;gap:8px 20px}.device-formats button{display:flex;align-items:center;gap:8px;color:#aaa;background:none;border:0;border-bottom:2px solid transparent;padding:8px 0;min-height:44px;font-size:14px}.device-formats button:hover,.device-formats button[aria-pressed=true]{color:#fff;border-bottom-color:#ee1717}.hero-view-caption{display:flex;justify-content:space-between;gap:15px;background:#292929;padding:11px 14px;font-size:12px;border-bottom:1px solid #555;color:#aaa}.hero-view-caption>span:first-child{color:white}.hero-app-shot{object-fit:contain;background:#ddd8d2}.device-scene[data-device-view=tablet] .hero-app-shot{padding:12px;background:#292929}.device-scene[data-device-view=tablet] .device-screen{aspect-ratio:1.414}.device-scene[data-device-view=laptop] .device-screen{aspect-ratio:1.6}.device-scene[data-device-view=board] .device-screen{aspect-ratio:1.59}.device-scene .login-display{grid-template-columns:60% 40%}.device-scene{border-radius:12px;box-shadow:0 30px 90px #0007}.login-brand .login-copy>strong{font-size:3.4cqw}.hero-view-caption{pointer-events:none}
/* Wide photographic stories dissolve into the anthracite page. */
.sector-grid{display:block;margin:0 -6.82%}.sector-card{aspect-ratio:auto;min-height:520px;border:0;border-radius:0;background:#171717;overflow:hidden}.sector-card+ .sector-card{margin-top:0}.sector-card>img{object-position:center 54%;filter:saturate(.62) brightness(.8)}.sector-card:nth-child(2)>img{object-position:center 53%;filter:saturate(.48) brightness(.7)}.sector-card:after{background:linear-gradient(90deg,#171717f5 0%,#171717b0 25%,#17171718 65%),linear-gradient(0deg,#171717 0%,transparent 28%,transparent 75%,#171717 100%)}.sector-card figcaption{left:6%;right:auto;top:50%;bottom:auto;transform:translateY(-50%);padding:45px 0;width:min(420px,40%)}.sector-card h3{font-size:clamp(1.8rem,3.1vw,3rem);line-height:1.08;margin-bottom:22px}.sector-card p{line-height:1.7;color:#ddd}.sector-card:nth-child(2) figcaption{left:auto;right:6%}.sector-card:nth-child(2):after{background:linear-gradient(270deg,#171717f5 0%,#171717bf 27%,#17171718 70%),linear-gradient(0deg,#171717 0%,transparent 30%,transparent 75%,#171717 100%)}.sector-card:nth-child(2)>img{transform:scaleX(-1)}.sector-card:nth-child(2):hover>img{transform:scaleX(-1) scale(1.025)}.field-photo,.company-photo{border:0;border-radius:0;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 94%,transparent)}.field-photo:after,.company-photo:after{background:linear-gradient(0deg,#222 0%,#2228 20%,transparent 45%,#2223 80%,#222 100%)}.contact-ready button{width:100%;justify-content:center}.contact-ready .button{background:#c00000;color:white}.header-cta{background:none;color:white}.text-link[data-contact]{background:none;color:inherit;text-align:left;border:0;padding-left:0}.module-request{background:none;border:0;color:inherit;text-align:left;width:100%}.mobile-nav [data-contact]{background:none;color:white;border:0;text-align:left;padding:12px 0;font-size:16px}
.contact-dialog{width:min(780px,94vw);max-height:92dvh;padding:34px;background:#222;color:#fff;border:1px solid #666;border-radius:14px}.contact-dialog .dialog-top{color:#aaa}.contact-dialog .close-dialog{color:white}.contact-dialog-heading{display:flex;gap:22px;align-items:start;margin:24px 0}.contact-dialog-heading>img{width:68px;height:68px;border-radius:50%;flex-shrink:0}.contact-dialog h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:0 0 14px}.contact-dialog-heading p{font-size:16px;line-height:1.6;color:#bbb;margin:0}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:19px}.contact-fields label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#ddd}.contact-fields label>span{display:inline;color:#999}.contact-fields .wide{grid-column:1/-1}.contact-fields input,.contact-fields select,.contact-fields textarea{font:inherit;font-size:16px;width:100%;border:1px solid #626262;background:#303030;border-radius:4px;color:white;padding:12px;min-height:46px}.contact-fields textarea{resize:vertical;min-height:115px}.contact-fields :is(input,textarea,select):focus{outline:2px solid #ee1717;outline-offset:2px}.contact-dialog .contact-data-note{font-size:13px;line-height:1.6;color:#bbb;margin:22px 0 12px}.contact-data-note button{color:#ddd;text-decoration:underline;background:none;border:0;padding:0;font:inherit}.contact-dialog .contact-status{font-size:13px;line-height:1.6;padding:12px 15px;background:#303030;color:#ccc;border-left:2px solid #999}.contact-send{width:100%;justify-content:center;background:#c00000;color:#fff;border:0}.contact-send:disabled{opacity:.5;cursor:not-allowed}.contact-dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}
@media(max-width:1050px){.device-formats{justify-content:center}.sector-card{min-height:460px}.sector-card figcaption{width:43%}}
@media(max-width:600px){.device-formats{justify-content:flex-start;gap:6px 19px}.device-formats button{font-size:13px}.hero-view-caption{padding:9px 10px;font-size:11px}.hero-view-caption>span:last-child{display:none}.sector-card{min-height:500px}.sector-card>img{object-position:60% center}.sector-card:nth-child(2)>img{object-position:80% center}.sector-card figcaption,.sector-card:nth-child(2) figcaption{top:auto;bottom:35px;transform:none;left:6%;right:6%;width:auto;padding:0}.sector-card:after,.sector-card:nth-child(2):after{background:linear-gradient(0deg,#171717 0%,#171717e8 17%,#17171777 42%,transparent 75%,#171717 100%)}.sector-card h3{font-size:2rem;max-width:330px}.sector-card p{max-width:350px}.contact-dialog{padding:20px;max-height:94dvh}.contact-dialog-heading{gap:12px}.contact-dialog-heading>img{width:46px;height:46px}.contact-fields{grid-template-columns:1fr;gap:16px}.contact-fields .wide{grid-column:auto}.contact-dialog h2{font-size:1.8rem}.contact-dialog-heading p{font-size:14px}.device-scene .login-display{grid-template-columns:60% 40%}}
/* Soft emergency-light reflections; no flashing or rapid light changes. */
.experience-stage:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 86% 27%,#0874f52b,transparent 36%),radial-gradient(ellipse at 58% 80%,#c000001a,transparent 34%);animation:light-reflection 12s ease-in-out infinite alternate}.device-scene{box-shadow:18px -15px 90px #126aff13,-10px 20px 75px #c0000012,0 30px 90px #0007}.product-tour{background:radial-gradient(ellipse at 95% 20%,#174b7415,transparent 42%),#171717}.device-formats button:focus-visible{outline:2px solid #fff;outline-offset:4px}@keyframes light-reflection{from{opacity:.4}to{opacity:1}}@media(prefers-reduced-motion:reduce){.experience-stage:after{animation:none;opacity:.7}}
.module-breakdown{margin:0 0 16px}.module-breakdown>div{padding:15px 0;border-top:1px solid #ffffff24}.module-breakdown dt{font-size:15px;line-height:1.5;font-weight:700;color:white;margin-bottom:7px}.module-breakdown dd{font-size:14px;line-height:1.65;margin:0;color:#bbb}.feature-card:hover dd,.feature-card:focus-within dd{color:#fff}.contact-fields .field-label{color:#ddd}.field-label small{font-size:13px;color:#999}.feature-grid{align-items:start}

.contact-dialog{color-scheme:dark}.contact-dialog .close-dialog{min-width:44px;min-height:44px}

/* refinement.css */
/* Colour, room for photography, and a continuous product journey. */
.device-scene{overflow:visible;background:none;border:0;box-shadow:none}.device-scene>.product-window-head{border:1px solid #666;border-bottom:0;border-radius:12px 12px 0 0}.device-scene>.device-formats{margin:0 0 15px;display:flex;justify-content:flex-end;gap:8px 24px;min-height:45px}.device-formats button{font-size:14px}.hero-view-caption{border-left:1px solid #666;border-right:1px solid #666}.device-screen{border:1px solid #666;border-top:0;border-radius:0 0 12px 12px;box-shadow:0 30px 90px #0008;overflow:hidden}.hero-login{opacity:1;transition:opacity .35s ease,transform .55s ease;z-index:2}.hero-login.is-away{opacity:0;transform:scale(1.045);pointer-events:none}.hero-app-shot{opacity:1;transition:opacity .4s ease}.hero-app-shot.is-covered{opacity:0}.device-scene[data-device-view=tablet] .hero-app-shot{padding:0}.device-scene[data-device-view=tablet] .device-screen{aspect-ratio:1.59}.experience-copy{width:36%}.experience-copy>p:not(.eyebrow){font-size:17px;line-height:1.65}.experience-copy .device-context{margin-top:26px}.device-journey-note{font-size:13px;line-height:1.5;color:#aaa;margin:12px 0 0;text-align:right}.experience-start{margin-top:24px}.tour-options{gap:0;border-top:1px solid #555}.tour-options button{border:0;border-bottom:1px solid #555;border-left:3px solid transparent;background:transparent;padding:26px 18px}.tour-options button[aria-selected=true]{background:#292222;border-left-color:#c00000}.tour-layout{grid-template-columns:minmax(230px,.3fr) minmax(0,1fr);gap:38px}.data-coverage{padding:26px;background:#252525}.data-coverage>span{font-size:12px;letter-spacing:.08em;color:#aaa}.data-coverage>div{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:17px}.data-coverage p{font-size:15px;line-height:1.7;color:#bbb;margin:0}.data-coverage strong{display:block;color:white;font-size:17px;margin-bottom:8px}.data-coverage .coverage-benefit{border-top:1px solid #ffffff25;padding-top:18px;margin-top:22px;color:#eee}.operation-coverage{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;padding:85px 0 30px;margin-top:55px;border-top:1px solid #ffffff24}.operation-heading h3,.incident-connection h3{font-size:clamp(2rem,3.3vw,3.3rem);line-height:1.08;letter-spacing:-.04em;margin:16px 0 24px}.operation-heading>p:last-child,.incident-connection>div>p:last-child{font-size:17px;line-height:1.75;color:#bbb;max-width:420px}.operation-items article{display:flex;align-items:start;gap:22px;padding:0 0 28px}.operation-items article+article{border-top:1px solid #ffffff24;padding-top:28px}.operation-icon{color:#ee1717;display:block;flex-shrink:0;padding-top:4px}.operation-icon svg{width:28px;height:28px}.operation-items h4{font-size:21px;margin:0 0 10px}.operation-items p{font-size:16px;color:#bbb;line-height:1.65;margin:0 0 13px}.operation-benefit{display:block;color:#eee;font-size:14px;line-height:1.6;border-left:2px solid #c00000;padding-left:12px}.incident-connection{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:65px 0;border-top:1px solid #ffffff24;margin-top:35px}.incident-connection ol{list-style:none;margin:0;padding:0}.incident-connection li{display:flex;gap:24px;padding:19px 0;border-bottom:1px solid #ffffff24;color:#aaa;font-size:15px;line-height:1.6}.incident-connection li>b{font-size:14px;color:#ee1717}.incident-connection li strong{display:block;color:white;font-size:20px;margin-bottom:4px}.tour-closing{margin-top:0}.sector-card{min-height:590px}.sector-card>img{width:65%;left:35%;object-fit:cover;object-position:center 62%;filter:none}.sector-card:nth-child(2)>img{width:76%;left:0;object-position:right 65%;filter:none;transform:scaleX(-1) scale(1.16);transform-origin:38% center}.sector-card:nth-child(2):hover>img{transform:scaleX(-1) scale(1.18)}.sector-card:after{background:linear-gradient(90deg,#171717 0%,#171717 29%,#171717aa 40%,transparent 62%),linear-gradient(0deg,#171717 0%,transparent 24%,transparent 83%,#171717 100%)}.sector-card:nth-child(2):after{background:linear-gradient(270deg,#171717 0%,#171717 26%,#17171790 42%,transparent 63%),linear-gradient(0deg,#171717 0%,transparent 23%,transparent 82%,#171717 100%)}.sector-card figcaption{width:35%}.sector-card h3{font-size:clamp(2rem,3vw,3rem)}.field-photo>img,.company-photo>img{filter:none}.field-photo{min-height:620px;mask-image:none;border-radius:0}.field-photo>img{object-position:55% center}.field-photo:after{background:linear-gradient(0deg,#222 0%,#222aa 13%,transparent 38%,transparent 88%,#222 100%)}.company-photo:after{background:linear-gradient(0deg,#222 0%,#22299 15%,transparent 40%,transparent 85%,#222 100%)}.feature-grid{gap:0 32px}.feature-card{border:0;border-top:1px solid #ffffff3b;background:transparent;padding:30px 12px 0}.feature-card:hover,.feature-card:focus-within{background:#a90000;transform:none}.feature-card .card-tags span{background:transparent;border:0;border-left:2px solid #c00000;padding:0 10px}.feature-card:hover .card-tags span,.feature-card:focus-within .card-tags span{border-color:#fff}.feature-card summary{padding:20px 0;font-size:15px}.feature-card .module-breakdown{padding:0 10px}.feature-card .module-request{padding-left:10px}.feature-card>h3{font-size:clamp(1.5rem,2.1vw,2rem)}
@media(max-width:1050px){.tour-layout{grid-template-columns:1fr}.tour-options{grid-template-columns:1fr 1fr}.experience-copy{width:auto}.device-scene>.device-formats{justify-content:center}.operation-coverage,.incident-connection{gap:6%}.sector-card{min-height:500px}.field-photo{min-height:540px}}
@media(max-width:600px),(max-height:600px){.device-scene>.device-formats{justify-content:space-between;gap:6px}.device-formats button{font-size:12px;gap:5px}.device-formats svg{width:17px;height:17px}.device-scene{width:90%!important;margin:30px 5% 15px}.device-journey-note{text-align:left;font-size:12px}.tour-options{grid-template-columns:1fr}.data-coverage{padding:18px}.data-coverage>div{grid-template-columns:1fr;gap:22px}.operation-coverage,.incident-connection{grid-template-columns:1fr;gap:24px;padding:45px 0 20px;margin-top:35px}.operation-items article{gap:17px}.operation-heading h3,.incident-connection h3{font-size:2.2rem}.sector-card{min-height:570px}.sector-card>img{width:100%;left:0;height:77%;object-position:center 65%}.sector-card:nth-child(2)>img{width:120%;left:-20%;height:80%;object-position:80% center;transform:scaleX(-1);transform-origin:center}.sector-card:nth-child(2):hover>img{transform:scaleX(-1)}.sector-card:after,.sector-card:nth-child(2):after{background:linear-gradient(0deg,#171717 0%,#171717 14%,#171717e8 25%,#17171740 50%,transparent 70%,#171717 100%)}.sector-card figcaption,.sector-card:nth-child(2) figcaption{width:auto;bottom:25px;left:6%;right:6%}.sector-card h3{font-size:2rem;max-width:330px}.field-photo{min-height:460px;aspect-ratio:1.1}.field-photo>img{object-position:48% center}.feature-card{padding:25px 12px 0}.experience-copy>p:not(.eyebrow){font-size:16px}.experience-copy .device-context{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.hero-login,.hero-app-shot{transition:none}.device-scene>.device-formats{justify-content:flex-start}}
@media(max-width:1050px),(max-height:650px){.experience{height:auto}.experience-stage{position:relative;top:0;height:auto;min-height:0;padding:35px 0}.experience-topline{position:static;margin:0 6% 38px}.experience-copy{position:relative;left:auto;top:auto;width:auto;margin:0 6%;text-align:left}.experience-copy h1{font-size:clamp(2.7rem,6vw,4rem)}.experience-title-in,.experience-controls,.experience-scroll,.experience-progress{display:none!important}.device-scene{position:relative;left:auto!important;top:auto!important;transform:none!important;width:88%!important;margin:40px auto 24px}.device-scene>.device-formats{justify-content:flex-end}.experience-note{position:static;display:block;margin:20px 6% 0}.experience-start{margin-top:15px}.experience-copy .device-context{margin-top:20px}.experience-note>p{max-width:none}}
@media(max-width:600px){.experience-topline>span:last-child{display:none}.device-scene>.device-formats{justify-content:space-between}.experience-copy h1{font-size:clamp(2.4rem,10vw,3.5rem)}}
.experience-controls{display:none!important}.sector-card:nth-child(2)>img{width:70%;left:0;object-position:center 55%;transform:scaleX(-1);transform-origin:center}.sector-card:nth-child(2):hover>img{transform:scaleX(-1) scale(1.025)}
@media(max-width:600px){.sector-card:nth-child(2)>img{width:100%;left:0;height:78%;object-position:center;transform:scaleX(-1)}}
.sector-card>img{mask-image:linear-gradient(90deg,transparent,#000 9%,#000 89%,transparent)}
@media(max-width:1050px),(max-height:650px){.experience-copy{right:auto}}
/* Readable product views and original, resolution-independent map symbols. */
.tour-layout{grid-template-columns:1fr;gap:25px}.tour-options{grid-template-columns:repeat(3,minmax(0,1fr));border-top:0;gap:24px}.tour-options button{border-top:1px solid #555;border-bottom:3px solid #555;border-left:0;padding:22px 14px}.tour-options button[aria-selected=true]{border-bottom-color:#c00000;background:linear-gradient(0deg,#c000001c,transparent)}.tour-options strong{font-size:1.3rem}.tour-display{overflow:hidden}.map-focus-stage{position:relative}.map-focus-stage>.screenshot-open>img{max-height:590px;object-fit:contain;background:#ddd}.map-callout{position:absolute;pointer-events:none;filter:drop-shadow(0 4px 9px #0006);transform:translate(-12px,-100%)}.object-focus{left:35.25%;top:55.5%}.hydrant-focus{left:46.9%;top:35.7%}.map-key{display:inline-flex;gap:9px;align-items:center;font-size:14px;font-weight:700;white-space:nowrap}.map-key svg{width:34px;height:34px;background:#1976d2;color:#fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);padding:6px;border:2px solid #fff;box-sizing:border-box}.map-key svg path{transform:rotate(45deg);transform-origin:12px 12px}.map-key.object svg{background:#e87514}.map-key.well svg{background:#2e8b57}.map-callout .map-key{background:#fff;color:#222;padding:9px 16px 9px 9px;border-radius:6px;box-shadow:0 0 0 1px #0003}.map-callout .map-key svg{width:40px;height:40px}.map-legend{display:flex;align-items:center;gap:25px;padding:18px 24px;border-top:1px solid #555;border-bottom:1px solid #555;flex-wrap:wrap}.map-legend small{margin-left:auto;color:#aaa;font-size:12px}.legend-hint{color:#bbb;font-size:14px}.object-insight,.rail-insight{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;padding:36px;background:#202020;align-items:center}.object-insight h4,.rail-insight h4{font-size:clamp(1.6rem,2.6vw,2.7rem);line-height:1.1;letter-spacing:-.03em;margin:12px 0 22px}.object-insight p,.rail-insight p,.rail-insight li{font-size:16px;line-height:1.7;color:#bbb}.object-insight dl{margin:25px 0 0}.object-insight dl>div{border-top:1px solid #ffffff25;padding:13px 0}.object-insight dt{font-size:14px;font-weight:700;color:#fff;margin-bottom:4px}.object-insight dd{margin:0;color:#aaa;font-size:14px;line-height:1.5}.object-insight .object-document{display:block;padding:0;border:1px solid #555;background:#292929}.object-insight .object-document>img{width:100%;border:0}.object-insight .object-document>span{padding:18px}.rail-label{display:flex;align-items:center;gap:10px;font-size:12px;color:#ff6464;letter-spacing:.07em}.rail-label i{display:flex}.rail-insight ul{padding-left:20px}.rail-insight li{padding:6px 0}.rail-insight .rail-note{font-size:13px;line-height:1.6;border-left:2px solid #c00000;padding-left:15px}.rail-document{border:1px solid #555;background:#292929}.rail-document>img{width:100%}.sector-card>img{filter:none;image-rendering:auto}.sector-card:first-child>img{object-position:center 65%}.sector-card:nth-child(2)>img{object-position:center 50%}
@media(min-width:1100px){.map-focus-stage>.screenshot-open>img{max-height:none;width:100%}}
@media(max-width:800px){.tour-options{gap:10px}.tour-options button{display:block;padding:17px 10px}.tour-options strong{font-size:1.05rem}.tour-options small{font-size:10px}.tour-options button>span>span{display:none}.object-insight,.rail-insight{grid-template-columns:1fr;gap:25px;padding:24px}.map-legend{padding:15px;gap:16px}.map-legend small{margin-left:0;width:100%}.map-callout .map-key{font-size:11px;padding:4px 8px 4px 4px;gap:5px}.map-callout .map-key svg{width:28px;height:28px;padding:4px}.object-focus{top:53%}.hydrant-focus{top:34%}}
@media(max-width:480px){.tour-options{grid-template-columns:1fr;gap:0}.tour-options button{display:flex;align-items:center;gap:14px;padding:17px 12px;border-bottom-width:1px}.tour-options strong{font-size:1.1rem;margin:0}.tour-options strong br{display:none}.tour-options .tour-icon{margin:0}.tour-options button[aria-selected=true]{border-left:3px solid #c00000}.object-insight,.rail-insight{padding:20px}.legend-hint{font-size:12px}.map-key{font-size:12px}.map-legend .map-key svg{width:28px;height:28px;padding:4px}.map-callout{display:none}}
/* Individually described and selectable product modules. */
.module-choice-intro{max-width:760px;margin:45px 0 30px}.module-choice-intro h3{font-size:clamp(1.8rem,3vw,2.6rem);margin:12px 0 18px;letter-spacing:-.035em}.module-choice-intro>p:last-child{font-size:17px;line-height:1.7;color:#bbb}.module-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.module-choice{display:flex;flex-direction:column;min-width:0;padding:28px 22px 0;border-top:2px solid #666;background:linear-gradient(155deg,#303030,#202020);transition:background .2s,border-color .2s}.module-choice:hover,.module-choice:focus-within,.module-choice.is-selected{background:#9f0000;border-color:#f34242}.module-choice-top{display:flex;justify-content:space-between;align-items:center;color:#ff5555}.module-choice-top svg{width:32px;height:32px}.module-choice-top small{font-size:11px;letter-spacing:.1em;color:#bbb}.module-choice h3{font-size:clamp(1.4rem,2vw,1.85rem);line-height:1.2;margin:25px 0 14px;overflow-wrap:anywhere}.module-choice p{font-size:15px;line-height:1.65;color:#bbb;margin:0 0 18px}.module-choice .module-promise{font-weight:700;color:#fff}.module-choice ul{padding-left:18px;margin:0 0 25px;font-size:14px;line-height:1.7;color:#ccc}.module-choice li+li{margin-top:10px}.module-choice:hover :is(p,ul,small,.module-choice-top),.module-choice:focus-within :is(p,ul,small,.module-choice-top),.module-choice.is-selected :is(p,ul,small,.module-choice-top){color:#fff}.module-toggle{margin-top:auto;border-top:1px solid #ffffff40;padding:20px 0;display:flex;gap:12px;align-items:center;font-size:14px;line-height:1.5;cursor:pointer}.module-toggle input,.contact-module-options input{width:20px;height:20px;flex-shrink:0;accent-color:#c00000;cursor:pointer}.module-selection-bar{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:26px 0;border-bottom:1px solid #555}.module-selection-bar strong{font-size:17px}.module-selection-bar p{font-size:14px;color:#aaa;margin:8px 0 0;line-height:1.6}.module-selection-bar .button{flex-shrink:0;background:#c00000;color:white;border:0}.further-modules{margin:65px 0 30px}.further-modules h3{font-size:1.8rem;margin:0 0 14px}.further-modules p{color:#bbb;line-height:1.6}.contact-module-options{margin:0 0 25px;border:1px solid #555;padding:15px 18px;min-width:0}.contact-module-options legend{font-size:14px;padding:0 6px}.contact-module-options legend small{color:#aaa}.contact-module-options label{display:flex;align-items:center;gap:12px;padding:9px 0;font-size:14px;line-height:1.5;cursor:pointer}.contact-module-options input:focus-visible,.module-toggle input:focus-visible{outline:2px solid white;outline-offset:4px}
@media(max-width:1000px){.module-choice-grid{grid-template-columns:1fr}.module-choice{padding:25px}.module-choice h3{font-size:1.7rem;overflow-wrap:normal}.module-choice ul{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.module-choice li+li{margin-top:0}.module-toggle{padding-bottom:0}.module-selection-bar{align-items:start}}
@media(max-width:600px){.module-choice ul{display:block}.module-choice li+li{margin-top:10px}.module-choice{padding:24px 20px}.module-selection-bar{display:block}.module-selection-bar .button{margin-top:20px;width:100%;justify-content:center}.module-choice-intro{margin-top:25px}.contact-module-options{padding:12px}.contact-module-options legend{max-width:100%;line-height:1.5}}
/* The five letters of LUOIS are picked out in its full name. */
.luois-name{font-family:Arial,sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.045em;color:#ddd;line-height:1.6}.luois-name b{color:#c00000;font-weight:900}.luois-compound{white-space:nowrap}.luois-name-intro{font-size:clamp(11px,1.05vw,15px);margin:22px 0 24px;max-width:100%}.experience-topline>.luois-name{font-size:12px}.luois-name-intro .luois-name{color:#ccc}.luois-name-intro .luois-name b{font-size:1.14em}.experience-topline{gap:20px}
@media(max-width:600px){.experience-topline>.luois-name{font-size:10px;letter-spacing:.025em}.luois-name-intro{font-size:11px;letter-spacing:0}.luois-name{letter-spacing:.025em}}
@media(max-width:800px){.product-intro{display:block}.product-intro>img{margin-bottom:20px}.luois-name-intro{margin:0 0 22px}}

/* structure.css */
/* LUOIS product story: visible hardware, readable maps, a complete module catalogue. */
:root{--signal:#c00000;--surface:#202020;--ink:#eee}.header nav{gap:21px}.header nav a{font-size:13px}.showroom{position:relative;isolation:isolate;min-height:760px;padding:70px 4% 28px 6%;display:grid;grid-template-columns:34% 66%;align-items:center;overflow:hidden;background:#151617;--journey:0}.showroom-aura{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 76% 35%,#0759ac25,transparent 48%),radial-gradient(ellipse at 64% 78%,#c0000029,transparent 45%),linear-gradient(115deg,#171717,#16181b)}.showroom-aura:after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 50%,#2166aa0b 65%,transparent 75%);animation:ambient-shift 9s ease-in-out infinite alternate}.showroom-copy{position:relative;z-index:4;padding-bottom:55px}.showroom .eyebrow{font-size:11px;letter-spacing:.09em;color:#bbb;max-width:290px;line-height:1.6}.showroom h1{font-size:clamp(2.8rem,4.8vw,5rem);line-height:1.04;letter-spacing:-.055em;margin:24px 0}.showroom h1 span{color:#fff}.showroom-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:410px;color:#bbb}.showroom-actions{display:flex;align-items:start;flex-direction:column;gap:22px;margin:30px 0}.showroom-actions .button{background:#c00000;color:#fff;border:0}.showroom-actions .text-link{font-size:14px}.showroom-copy .showroom-audience{font-size:13px;margin:32px 0 19px;max-width:330px}.showroom-deployment{display:flex;gap:8px 16px;flex-wrap:wrap;font-size:11px;color:#aaa}.showroom-deployment span:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#c00000;vertical-align:middle;margin-right:7px}.device-world{position:relative;width:100%;aspect-ratio:1.17;perspective:1300px;transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .4s ease;transform-style:preserve-3d;z-index:2}.device-floor{position:absolute;left:8%;right:0;bottom:2%;height:16%;border-radius:50%;background:radial-gradient(ellipse,#34679632,transparent 70%);filter:blur(20px)}.hardware{position:absolute;margin:0;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.6,.3,1);filter:drop-shadow(0 20px 19px #0007)}.hardware-frame{position:relative;padding:8px;background:linear-gradient(135deg,#51545a,#17191c 20%,#090a0c 80%,#73777e);border:1px solid #777b82;border-radius:12px;box-shadow:inset 0 0 0 2px #202227,0 2px 2px #000;overflow:hidden}.hardware-screen{position:relative;overflow:hidden;background:#222;aspect-ratio:1.59;border-radius:3px}.hardware-screen>img{display:block;width:100%;height:100%;object-fit:contain}.hardware-bar{display:flex;align-items:center;gap:5px;font-size:8px;padding:5px 7px;background:#252525;color:#ddd}.hardware-bar img{width:14px;height:14px;border-radius:50%}.hardware-bar small{margin-left:auto;font-size:7px;color:#aaa}.hardware figcaption{color:#fff;font-size:13px;line-height:1.5;display:flex;flex-direction:column;gap:1px;position:absolute;left:0;right:0;text-align:center}.hardware figcaption span{font-size:10px;color:#9dabb8}.board{width:62%;right:0;top:4%;transform:rotateY(-9deg) rotateX(2deg) translateZ(-30px)}.board figcaption{top:-45px}.board .hardware-frame{border-radius:8px;padding:10px}.board-stand{position:relative;height:75px;width:60%;margin:auto;border-left:5px solid #5b6069;border-right:5px solid #5b6069;transform:perspective(500px) rotateX(14deg)}.board-stand:after{content:'';position:absolute;left:-18%;right:-18%;bottom:0;height:7px;background:linear-gradient(#555,#111);border-radius:5px;box-shadow:0 6px 0 -2px #777}.board-pen{position:absolute;bottom:2px;left:75%;width:32px;height:3px;background:#999;border-radius:3px}.desktop{width:37%;left:0;top:24%;z-index:2;transform:rotateY(13deg)}.desktop figcaption{top:-43px}.desktop-stand{height:46px;width:15%;margin:auto;background:linear-gradient(90deg,#46484c,#888c91,#333);clip-path:polygon(20% 0,80% 0,100% 100%,0 100%)}.desktop:after{content:'';display:block;width:40%;height:8px;margin:-2px auto 0;border-radius:50%;background:linear-gradient(#8b8d91,#28292b)}.hardware-marker{position:absolute;color:#e87514;text-shadow:0 0 2px white;font-size:18px;line-height:1}.hm-one{left:23%;top:32%}.hm-two{left:67%;top:49%}.hm-three{left:52%;top:68%}.laptop{width:59%;left:13%;top:53%;z-index:4;transform:rotateY(5deg) rotateX(-2deg)}.laptop .hardware-frame{padding:10px 7px 7px;border-radius:11px 11px 2px 2px}.hardware-camera{width:3px;height:3px;background:#697080;border-radius:50%;position:absolute;top:3px;left:50%}.laptop-base{height:13px;margin:0 -6%;border-radius:1px 1px 45% 45%;background:linear-gradient(#a5a8ac,#767b82 30%,#25292e 90%);box-shadow:0 3px 0 #15171a;position:relative}.laptop-base:before{content:'';position:absolute;top:0;width:17%;height:4px;left:41.5%;border-radius:0 0 8px 8px;background:#494e55}.laptop figcaption{bottom:-49px}.tablet{width:24%;right:0;top:55%;z-index:5;transform:rotateY(-12deg) rotateZ(5deg)}.tablet .hardware-frame{border-radius:16px;padding:9px 7px}.tablet .hardware-screen{aspect-ratio:.78;background:#eee;display:flex;flex-direction:column}.tablet .hardware-screen>img{height:auto;object-fit:contain;margin:auto 0}.tablet-title{display:flex;gap:5px;align-items:center;padding:7px;background:#252525;color:#fff;font-size:8px}.tablet-title img{width:17px;border-radius:50%}.tablet-note{background:#292929;color:#fff;padding:10px 7px;display:grid;gap:5px}.tablet-note span{font-size:6px;color:#ff5656}.tablet-note b{font-size:9px}.tablet-note small{font-size:7px;color:#bbb}.tablet figcaption{bottom:-49px}.showroom-login{position:absolute;inset:0;display:grid;grid-template-columns:58% 42%;background:#222;transition:opacity .7s,transform .9s;container-type:inline-size}.showroom-login-brand{position:relative;overflow:hidden;background:linear-gradient(135deg,#170b0a88,#171717aa),url('assets/response-detail.jpg') center/cover;display:flex;flex-direction:column;justify-content:space-between;padding:7%}.showroom-login-brand:after{content:'';position:absolute;inset:0;background:#c00000;opacity:.45;clip-path:polygon(65% 0,100% 0,100% 100%,90% 100%,30% 0)}.showroom-login-brand>img{width:95%;position:relative;z-index:1}.showroom-login-brand>div{position:relative;z-index:1;display:grid;gap:10px}.showroom-login-brand small{font-size:2cqw;color:#ddd;letter-spacing:.12em}.showroom-login-brand strong{font-size:4cqw;line-height:1.2;color:#fff}.showroom-login-brand span{font-size:2.4cqw;color:#ddd}.showroom-login-form{padding:9% 12%;display:flex;flex-direction:column;align-items:stretch;justify-content:center}.showroom-login-form>img{width:36%;align-self:center;margin-bottom:6%}.showroom-login-form>b{font-size:4.6cqw;margin:0 0 10%;text-align:center}.showroom-login-form>span{font-size:2cqw;margin-bottom:4%}.showroom-login-form>i{height:4.5cqw;border:1px solid #666;margin-bottom:8%;background:#292929}.showroom-login-form>strong{font-size:2.2cqw;text-align:center;background:#c00000;padding:7%;font-weight:500}.showroom.inside .showroom-login{opacity:0;transform:scale(1.06);pointer-events:none}.showroom.inside .board{transform:rotateY(-3deg) translateY(-8px)}.showroom.inside .laptop{transform:rotateY(0deg) rotateX(0deg) scale(1.025)}.showroom-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:35px;color:#888;font-size:11px}.showroom-footer button{border:0;border-bottom:1px solid #777;background:none;color:#ddd;font-size:13px;padding:10px 0}.showroom-footer>a{color:#ddd;font-size:12px}.brand-story{background:#202020;border-top:1px solid #ffffff16}.brand-story-head{display:flex;justify-content:space-between;align-items:center;gap:30px}.brand-story-head img{width:100px;height:100px}.brand-story-head h2{margin:12px 0 0;font-size:clamp(2rem,3.8vw,3.6rem)}.brand-spelling{display:grid;grid-template-columns:repeat(5,1fr);gap:25px;margin:48px 0 35px}.brand-spelling>span{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid #555;padding-bottom:18px}.brand-spelling b{font-size:clamp(3rem,6vw,5.5rem);line-height:1;color:#c00000;letter-spacing:-.07em}.brand-spelling small{font-size:15px;color:#ccc}.brand-meaning{display:grid;grid-template-columns:1fr 1fr;gap:10%}.brand-meaning h3{font-size:1.4rem;line-height:1.5;margin:0}.brand-meaning p{color:#bbb;line-height:1.7;font-size:16px;margin:0}.benefit-line{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #444;padding-top:30px;margin-top:40px;font-size:13px;color:#aaa}.benefit-line span:before{content:none;margin-right:13px;color:#ee2525}.section-light{color:#eee}.intro-grid p:not(.lead),.local-copy>p:not(.lead),.customization-details p{color:#bbb}.showroom .button,.showroom button{min-height:44px}@keyframes ambient-shift{to{opacity:.3;transform:translateX(5%)}}
@media(max-width:1100px){.header nav{gap:12px}.header nav a{font-size:12px}.showroom{grid-template-columns:1fr;min-height:0;padding:55px 6% 25px}.showroom-copy{padding:0;max-width:700px}.showroom h1{font-size:clamp(3rem,7vw,5rem)}.showroom-actions{flex-direction:row;align-items:center}.showroom-copy>p:not(.eyebrow){max-width:650px}.showroom-copy .showroom-audience{margin:20px 0}.device-world{width:90%;margin:70px auto 55px;max-width:750px}.showroom-footer{padding:0;flex-wrap:wrap}.brand-spelling>span{flex-direction:column;gap:10px}.brand-spelling small{font-size:13px}}
@media(max-width:600px){.showroom{padding-top:35px}.showroom h1{font-size:3.2rem}.showroom-copy>p:not(.eyebrow){font-size:16px}.showroom-actions{gap:18px;align-items:start;flex-direction:column}.device-world{width:100%;margin:75px auto 45px;aspect-ratio:.95}.board{width:66%;top:5%}.desktop{width:43%;top:30%;left:-2%}.laptop{width:65%;left:3%;top:60%}.tablet{width:27%;top:61%;right:-1%}.hardware-frame{padding:5px;border-radius:7px}.board .hardware-frame{padding:5px}.hardware-bar{font-size:5px;padding:3px}.hardware-bar img{width:10px;height:10px}.hardware-bar small{font-size:5px}.board-stand{height:40px;border-width:3px}.desktop-stand{height:28px}.hardware figcaption b{font-size:11px}.hardware figcaption span{font-size:8px}.board figcaption,.desktop figcaption{top:-35px}.laptop figcaption,.tablet figcaption{bottom:-38px}.hardware-marker{font-size:10px}.laptop .hardware-frame{padding:6px 4px 4px}.laptop-base{height:8px}.tablet .hardware-frame{padding:5px 4px;border-radius:10px}.tablet-title{font-size:5px;padding:4px;gap:2px}.tablet-title img{width:10px}.tablet-note{padding:5px;gap:3px}.tablet-note span{font-size:4px}.tablet-note b{font-size:6px}.tablet-note small{font-size:5px}.showroom-footer{gap:13px}.showroom-footer>span{order:3;font-size:10px}.brand-story-head img{width:68px;height:68px}.brand-story-head{align-items:start}.brand-story-head h2{font-size:2rem}.brand-story .eyebrow{font-size:10px}.brand-spelling{gap:8px;margin-top:35px}.brand-spelling b{font-size:3.2rem}.brand-spelling small{font-size:9px}.brand-meaning{grid-template-columns:1fr;gap:15px}.brand-meaning h3{font-size:1.25rem}.benefit-line{flex-direction:column;gap:16px}.showroom-login-brand>div{gap:5px}}
@media(prefers-reduced-motion:reduce){.showroom-aura:after{animation:none}.device-world,.hardware,.showroom-login{transition:none;transform:none!important}}
.module-catalogue{background:#1c1d1f}.catalogue-heading{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}.catalogue-heading h2{font-size:clamp(2.7rem,4.5vw,4.8rem);letter-spacing:-.05em;line-height:1.02;margin:18px 0 0}.catalogue-heading>p{font-size:17px;line-height:1.7;color:#bbb;margin:0}.module-spotlight{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:55px 0 65px}.module-spotlight article{border-top:2px solid #c00000;padding-top:24px}.module-spotlight i{color:#ed3030}.module-spotlight svg{width:30px;height:30px}.module-spotlight h3{font-size:20px;margin:17px 0 13px}.module-spotlight p{font-size:15px;line-height:1.7;color:#aaa;margin:0}.catalogue-tools label{display:block;font-size:13px;color:#ccc}.catalogue-tools input{display:block;width:100%;margin-top:12px;background:#28292c;border:1px solid #555;border-radius:5px;padding:18px;color:#fff;font-size:16px;min-height:55px;outline-offset:3px}.catalogue-tools input:focus{outline:2px solid #c00000}.catalogue-filter{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.catalogue-filter button{padding:10px 13px;background:none;border:1px solid #4a4b4d;color:#bbb;font-size:12px;min-height:42px;border-radius:3px;transition:background .2s}.catalogue-filter button:hover,.catalogue-filter button[aria-pressed=true]{background:#c00000;border-color:#c00000;color:#fff}#catalogue-result{color:#999;font-size:12px;margin:20px 0}.catalogue-group{border-top:1px solid #555}.catalogue-group:last-child{border-bottom:1px solid #555}.catalogue-group summary{list-style:none;display:flex;align-items:center;gap:22px;padding:27px 4px;cursor:pointer}.catalogue-group summary::-webkit-details-marker{display:none}.category-symbol{color:#eee}.category-symbol svg{width:28px;height:28px}.catalogue-group summary small{display:block;color:#93979c;font-size:10px;letter-spacing:.1em;margin-bottom:8px}.catalogue-group summary strong{font-size:clamp(1.35rem,2.3vw,2rem);letter-spacing:-.025em}.category-count{margin-left:auto;font-size:12px;color:#aaa;white-space:nowrap}.catalogue-group summary>i{display:flex;margin-left:15px;color:#bcbcbc}.catalogue-group[open] summary>i{transform:rotate(45deg)}.catalogue-group[open]>summary{color:#fff}.catalogue-group[open] .category-symbol{color:#f13737}.catalogue-rows{padding:0 0 25px 52px}.catalogue-row{display:grid;grid-template-columns:28px 1fr 110px;gap:18px;align-items:start;padding:23px 18px;border-top:1px solid #ffffff17;transition:background .2s}.catalogue-row:hover{background:#242529}.catalogue-row.is-selected{background:#c000001d;border-left:2px solid #c00000}.catalogue-icon{color:#c9c9c9;display:flex;padding-top:3px}.catalogue-icon svg{width:23px;height:23px}.catalogue-row-title{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap}.catalogue-row h3{font-size:18px;margin:0;line-height:1.4}.catalogue-row-title>span{font-size:10px;letter-spacing:.035em;color:#b4b7bb;border:1px solid #4d4e50;padding:3px 6px}.catalogue-row p{font-size:14px;line-height:1.7;color:#bbb;margin:10px 0 0;max-width:800px}.catalogue-choice{display:flex;gap:9px;align-items:center;font-size:12px;min-height:44px;cursor:pointer}.catalogue-choice input{width:18px;height:18px;accent-color:#c00000;flex-shrink:0}.catalogue-disclosure{color:#aaa;font-size:12px;line-height:1.7;max-width:950px}.catalogue-group[hidden],.catalogue-row[hidden],.catalogue-empty[hidden]{display:none}.catalogue-empty{padding:25px;background:#292929;color:#ccc}.module-catalogue .module-selection-bar{position:sticky;bottom:0;background:#1c1d1ff5;backdrop-filter:blur(12px);z-index:5;padding:22px 0;border-top:1px solid #555}.module-catalogue .module-selection-bar p{font-size:12px}.module-catalogue .module-selection-bar strong{font-size:15px}.contact-module-options #contact-module-selection{max-height:190px;overflow:auto}.contact-module-options p{font-size:13px;line-height:1.6;color:#aaa;margin:8px 0}.contact-module-options .text-link{font-size:12px;padding:12px 0 4px;min-height:44px}.catalogue-choice:focus-within{outline:2px solid #c00000;outline-offset:3px}.catalogue-group summary:focus-visible{outline:2px solid #c00000;outline-offset:-2px}
@media(max-width:800px){.catalogue-heading{grid-template-columns:1fr;gap:25px}.module-spotlight{gap:22px;margin:35px 0 45px}.module-spotlight h3{font-size:17px}.catalogue-rows{padding-left:0}.catalogue-row{padding:20px 10px}.catalogue-filter{gap:7px}.catalogue-group summary{gap:15px}.catalogue-group summary>i{margin-left:0}}
@media(max-width:600px){.module-spotlight{grid-template-columns:1fr;gap:28px}.module-spotlight article{display:grid;grid-template-columns:30px 1fr;gap:0 17px;padding-top:17px}.module-spotlight h3{margin:0 0 10px}.module-spotlight p{grid-column:2;font-size:14px}.catalogue-row{grid-template-columns:23px 1fr;gap:13px}.catalogue-choice{grid-column:2;min-height:35px}.catalogue-row h3{font-size:17px}.catalogue-row p{font-size:14px}.category-count{font-size:10px}.category-symbol svg{width:24px;height:24px}.catalogue-group summary{padding:23px 0;gap:12px}.catalogue-group summary strong{font-size:1.3rem}.catalogue-group summary small{font-size:8px}.catalogue-group summary>i svg{width:18px}.catalogue-filter button{font-size:11px;padding:9px 10px}.module-catalogue .module-selection-bar{padding:15px 0;display:flex;gap:15px}.module-catalogue .module-selection-bar p{display:none}.module-catalogue .module-selection-bar strong{font-size:12px;line-height:1.5}.module-catalogue .module-selection-bar .button{margin:0;font-size:12px;min-height:44px;padding:12px;width:auto}.catalogue-tools input{font-size:14px;padding:15px}.catalogue-heading>p{font-size:16px}}
.brand-signature{display:flex;align-items:center;gap:45px;background:#202020;border-top:1px solid #ffffff15;padding-top:55px;padding-bottom:55px}.brand-signature>img{width:105px;height:105px;flex-shrink:0}.brand-signature h2{font-size:clamp(1.5rem,3vw,3rem);font-weight:500;letter-spacing:-.04em;line-height:1.3;margin:0}.brand-signature h2 span{white-space:nowrap}.brand-signature h2 b{color:#ed2929;font-weight:700}.brand-signature p{color:#aaa;font-size:15px;margin:14px 0 0;line-height:1.6}.interactive-demo{position:relative;overflow:hidden;background:#aaa;isolation:isolate}.demo-map-base{width:100%;height:auto;display:block}.demo-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-45%);background:#e87514;color:#fff;border:2px solid #fff;border-radius:50% 50% 50% 0;rotate:-45deg;width:35px;height:35px;box-shadow:0 3px 9px #0007;cursor:pointer;padding:6px;z-index:2}.demo-pin svg{rotate:45deg;display:block;width:100%;height:100%}.demo-pin>span{position:absolute;top:-9px;right:-8px;rotate:45deg;background:#202020;color:#fff;border:1px solid white;border-radius:50%;font-size:9px;width:16px;height:16px;line-height:15px}.demo-pin:hover,.demo-pin[aria-pressed=true]{background:#bd4800;box-shadow:0 0 0 6px #e8751440,0 3px 12px #0007}.demo-info{display:grid;grid-template-columns:1fr 1.5fr;gap:28px;padding:27px;background:#262626;border-bottom:1px solid #444}.demo-info .eyebrow{font-size:9px;color:#aeb2b7;margin:0}.demo-info h4{font-size:22px;margin:12px 0 7px;line-height:1.2}.demo-info p{color:#bbb;font-size:12px;line-height:1.6;margin:0}.demo-info dl{margin:0;display:grid;gap:13px}.demo-info dl>div{display:grid;grid-template-columns:110px 1fr;gap:12px;font-size:12px;line-height:1.5}.demo-info dt{color:#aaa}.demo-info dd{margin:0;color:#eee}.demo-caption{font-size:11px!important;line-height:1.7!important;color:#999!important;padding:13px 20px!important;margin:0!important;background:#222}.demo-rail-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.demo-rail-lines path{fill:none;stroke-linecap:round;stroke-linejoin:round}.rail-casing{stroke:#fff;stroke-width:1.3}.rail-stroke{stroke-width:.7}.rail-stroke.db{stroke:#7b2d82}.rail-stroke.urban{stroke:#0063af}.rail-stroke.harbour{stroke:#f08a18}.rail-demo-point{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:20px;height:20px;border:3px solid white;border-radius:50%;background:#7b2d82;box-shadow:0 1px 5px #222;cursor:pointer;z-index:3;padding:0}.rail-demo-point.urban{background:#0063af}.rail-demo-point.harbour{background:#f08a18}.rail-demo-point span{position:absolute;left:18px;top:-11px;white-space:nowrap;background:#222;color:white;font-size:11px;padding:7px 10px;border:1px solid #666;border-radius:3px}.rail-demo-point[aria-pressed=true] span,.rail-demo-point:hover span{background:#7b2d82;border-color:white}.rail-demo-legend{display:flex;flex-wrap:wrap;gap:14px;padding:17px 20px;background:#292929;color:#ddd;font-size:11px}.rail-demo-legend span:before{content:'';display:inline-block;width:20px;height:4px;margin:0 7px 3px 0;background:#7b2d82}.rail-demo-legend .urban:before{background:#0063af}.rail-demo-legend .harbour:before{background:#f08a18}.hardware-marker{width:16px;height:16px;background:#e87514;color:white;border-radius:50%;border:1px solid white;padding:2px}.hardware-marker svg{width:100%;height:100%;display:block}.rail-insight{padding-top:35px}.demo-pin:focus-visible,.rail-demo-point:focus-visible{outline:3px solid #c00000;outline-offset:6px}
@media(max-width:700px){.brand-signature{gap:22px;align-items:start}.brand-signature>img{width:64px;height:64px}.brand-signature h2{font-size:clamp(1rem,4.1vw,1.6rem)}.brand-signature p{font-size:13px}.demo-info{grid-template-columns:1fr;gap:20px;padding:20px}.demo-info dl>div{grid-template-columns:100px 1fr}.demo-pin{width:29px;height:29px;padding:5px}.demo-pin>span{width:14px;height:14px;line-height:13px;font-size:8px}.rail-demo-point{width:16px;height:16px;border-width:2px}.rail-demo-point span{font-size:8px;padding:5px;left:12px}.rail-demo-point.harbour span{left:auto;right:14px}.rail-demo-point.urban span{left:auto;right:15px}.hardware-marker{width:10px;height:10px;padding:1px}.rail-demo-legend{gap:12px;font-size:10px}}
@media(min-width:1101px){.desktop{top:18%;width:35%;left:2%}.board-stand{width:32%;height:55px}.showroom h1{font-size:clamp(2.8rem,4.55vw,5rem)}}
.demo-rail-lines{clip-path:inset(8% 0 5.5% 0)}.rail-demo-point.urban[aria-pressed=true] span{background:#0063af}.rail-demo-point.harbour[aria-pressed=true] span{background:#a95600}.catalogue-row:hover .catalogue-icon{color:#ff4545}.catalogue-row:hover{background:#c0000018}
.demo-pin{rotate:0deg;transform:translate(-50%,-50%) rotate(-45deg)}
.contact-module-options [data-module-back]{background:transparent;border:0;border-bottom:1px solid #666;color:#eee;text-align:left}.demo-info{scroll-margin-top:100px}
.hardware{transform-style:flat}.showroom-footer{position:relative;z-index:6}

/* cinema.css */
/* Cinematic LUOIS product experience. Original app identity, genuine WebGL hardware. */
:root{--page:#101114;--red:#c00000}.header{background:#101114c9;backdrop-filter:blur(22px);border-bottom:1px solid #ffffff12}.header nav a{color:#c3c5cb}.header-cta{border-radius:40px;border-color:#ffffff42}.header-product img{width:47px;height:47px}.cinema{height:235svh;background:#0d0f13;position:relative}.cinema-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;isolation:isolate}.cinema-light{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 84% 35%,#11438148,transparent 45%),radial-gradient(ellipse at 57% 78%,#820c202e,transparent 42%),linear-gradient(120deg,#131417,#0a0c10)}.cinema-light:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,transparent 30%,#ffffff04 50%,transparent 60%)}.cinema-copy{position:absolute;left:6%;top:13%;z-index:3;max-width:38%;opacity:calc(1 - var(--cinema-p,0)*2.4);transform:translateY(calc(var(--cinema-p,0)*-100px));pointer-events:auto}.cinema-copy .eyebrow{color:#a5aab3;letter-spacing:.12em;font-size:12px;margin-bottom:30px}.cinema h1{font-size:clamp(4rem,6.4vw,7rem);line-height:.99;letter-spacing:-.065em;font-weight:700;margin:0;color:#f5f6f8}.cinema h1 em{font-style:normal;color:#e73236}.cinema-intro{font-size:18px;color:#b4b9c3;line-height:1.6;margin:30px 0}.cinema .button{border-radius:50px;padding:18px 25px;background:#c00000;color:white;font-size:14px;gap:25px;box-shadow:0 5px 40px #c0000020}.cinema .button:hover{background:#e01018;transform:translateY(-3px)}.cinema-audience{font-size:13px;color:#9399a4;line-height:1.65;margin:24px 0}.webgl-stage{position:absolute;left:33%;top:6%;width:69%;height:85%;z-index:2;transition:left .8s,width .8s;touch-action:pan-y}.cinema-deep .webgl-stage{left:9%;width:82%}.cinema-deep .cinema-copy{pointer-events:none}.webgl-stage canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:pan-y;opacity:0;transition:opacity .8s}.webgl-stage canvas:active{cursor:grabbing}.webgl-stage.webgl-ready canvas{opacity:1}.webgl-stage .device-world{position:absolute;inset:10% 0 auto;width:100%;pointer-events:none}.webgl-ready .device-world{display:none}.scene-label{position:absolute;color:#b8c2d3;font-size:12px;letter-spacing:.04em;pointer-events:none;transform:translate(-50%,-50%);display:none;text-shadow:0 2px 8px #000}.webgl-ready .scene-label{display:block}.cinema-controls{position:absolute;left:45%;right:6%;bottom:10%;z-index:5;display:flex;flex-wrap:wrap;gap:14px;justify-content:center;transition:left .7s}.cinema-deep .cinema-controls{left:6%}.scene-selector{display:flex;gap:2px;border:1px solid #ffffff20;padding:5px;border-radius:50px;background:#171a20b8;backdrop-filter:blur(15px)}.scene-selector button{border:0;border-radius:30px;padding:10px 13px;background:transparent;color:#a6adba;font-size:12px;min-height:42px}.scene-selector button:hover{color:#fff;background:#ffffff09}.scene-selector button[aria-pressed=true]{background:#e8ecf3;color:#17191e}.scene-actions{display:flex;gap:15px;align-items:center;justify-content:center;color:#777f8e;font-size:12px}.scene-actions button{background:none;border:0;color:#d6dbe4;padding:8px;min-height:40px;font-size:12px}.scene-actions #scene-motion{font-size:20px;width:38px;border:1px solid #ffffff25;border-radius:50%}.cinema-bottom{position:absolute;bottom:24px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;z-index:5;gap:20px;font-size:12px;color:#969eac}.cinema-bottom p{font-size:12px;margin:0;color:#ddd}.scroll-cue{display:flex;gap:12px;align-items:center}.scroll-cue i{height:28px;width:17px;border:1px solid #637083;border-radius:12px;position:relative}.scroll-cue i:after{content:'';position:absolute;top:6px;left:7px;width:1px;height:7px;background:#ddd;animation:scroll-dot 2s ease infinite}.cinema-progress{position:absolute;bottom:0;height:2px;background:#ffffff0b;left:0;width:100%}.cinema-progress i{display:block;width:calc(var(--cinema-p,0)*100%);background:linear-gradient(90deg,#c00000,#f74747);height:100%}.scene-note{font-size:11px;color:#6e7582}.brand-signature{background:#111317;border:0;border-bottom:1px solid #ffffff16;padding-top:70px;padding-bottom:70px}.brand-signature h2{font-size:clamp(1.5rem,2.8vw,2.8rem)}.brand-signature p{color:#8f97a5}.section-pad{padding-top:110px;padding-bottom:110px}.product-tour{background:#14161b}.section-label{color:#939ba8;font-size:11px;letter-spacing:.1em;border-color:#ffffff14}.tour-heading{margin-bottom:60px}.tour-heading h2,.catalogue-heading h2{font-size:clamp(2.7rem,4.7vw,5.3rem);letter-spacing:-.055em;line-height:1.05}.tour-heading em,.catalogue-heading em{font-style:normal;color:#8c99b0}.tour-heading .eyebrow{color:#c7cad2;font-size:12px}.tour-layout{display:grid;grid-template-columns:27% 1fr;gap:45px;align-items:start}.tour-options{display:flex;flex-direction:column;position:sticky;top:120px;gap:10px}.tour-options>button{border:0;border-left:2px solid #ffffff1f;padding:25px 18px;display:flex;gap:15px;background:none;border-radius:0 10px 10px 0;transition:background .4s,transform .4s}.tour-options>button:hover{background:#20242c;transform:translateX(5px)}.tour-options>button[aria-selected=true]{background:linear-gradient(90deg,#c0000025,#c0000005);border-left-color:#ed3037;border-bottom:0}.tour-options strong{font-size:19px!important;line-height:1.25}.tour-options small{font-size:10px!important}.tour-options button>span>span{font-size:14px;line-height:1.6;color:#9aa2af}.tour-display{border:1px solid #ffffff24;border-radius:16px;overflow:hidden;box-shadow:0 40px 95px #0005;transform:perspective(1800px) rotateY(-2deg)}.tour-brand{background:#20242b}.screenshot-heading{background:#191c22;border-left:0}.screenshot-heading h3{font-size:19px}.screenshot-heading>span{font-size:11px;max-width:44%}.map-focus-stage .screenshot-open>span{border-radius:30px;background:#131820ed;font-size:12px}.screenshot-benefit{font-size:16px!important;padding:25px!important;line-height:1.65!important}.map-legend{background:#1a1e25;border-top:1px solid #ffffff15}.demo-info{background:#1a1e25;grid-template-columns:1fr 1.25fr;gap:20px}.demo-info h4{font-size:22px}.demo-caption{background:#14171c}.demo-info dl>div{grid-template-columns:85px 1fr;font-size:12px}.tour-footnote{background:#111419;font-size:11px}.tour-detail,.coverage-details{border-top:1px solid #ffffff18;background:#171b22}.tour-detail>summary,.coverage-details>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;padding:23px;color:#d2d7e1;font-size:14px;cursor:pointer}.tour-detail>summary::-webkit-details-marker,.coverage-details>summary::-webkit-details-marker{display:none}.tour-detail summary>span,.coverage-details summary>span{font-size:23px;color:#c00000}.object-insight,.rail-insight{display:block!important;padding:25px!important}.object-insight>button,.rail-insight>button{display:block;width:100%;max-width:500px;margin:25px auto 0}.object-insight h4,.rail-insight h4{font-size:24px}.object-insight dl{display:none}.rail-insight ul{font-size:14px}.data-coverage{border:0;padding:25px}.tour-closing{margin-top:45px;border:0}.tour-closing p{font-size:15px;color:#a5acb8}.module-catalogue{background:#101216}.module-spotlight{gap:20px}.module-spotlight article{padding:30px;background:linear-gradient(145deg,#242934,#171b23);border:1px solid #ffffff1c;border-radius:16px;transition:transform .4s,box-shadow .4s}.module-spotlight article:hover{transform:perspective(900px) rotateX(5deg) translateY(-7px);box-shadow:0 25px 40px #0005;border-color:#c0000077}.module-spotlight p{font-size:16px;line-height:1.65}.module-spotlight h3{font-size:21px}.module-spotlight i{color:#ed4047}.catalogue-tools input{background:#1b1f27;border-radius:10px;border-color:#ffffff25}.catalogue-filter button{border-radius:30px;padding:12px 18px;border-color:#ffffff25;font-size:13px}.catalogue-group{border-color:#ffffff1f}.catalogue-group summary{padding:30px 5px}.catalogue-group summary strong{font-size:clamp(1.3rem,2.1vw,2rem)}.catalogue-row p{font-size:15px}.catalogue-row{border-radius:8px}.module-catalogue .module-selection-bar{background:#101216e8;border-top-color:#ffffff20}.module-selection-bar .button{border-radius:35px}.sector-story{background:#14161b;padding-top:95px}.sector-grid{gap:35px}.sector-card{border-radius:22px;aspect-ratio:1.14;border:0;transition:transform .7s}.sector-card:nth-child(2){margin-top:80px}.sector-card>img{filter:saturate(1.1) brightness(.98);transition:transform 1s}.sector-card:hover>img{transform:scale(1.08)}.sector-card:after{background:linear-gradient(180deg,transparent 40%,#0b0d12e8)}.sector-card figcaption{padding:40px}.sector-card h3{font-size:30px;letter-spacing:-.03em}.sector-heading h2{font-size:clamp(2.5rem,4.2vw,4.6rem);letter-spacing:-.05em}.sector-heading p{font-size:17px;line-height:1.7}.section-light{background:#111317}.local-grid{gap:7%}.field-photo{border-radius:20px;border:0}.field-photo>img{filter:saturate(1) brightness(.9)}.customization-details{margin-top:60px}.deployment{background:#171a20}.deployment-grid article{border-radius:20px;padding:45px;background:linear-gradient(145deg,#242932,#191d25);border:1px solid #ffffff20}.deployment-grid h3{font-size:34px;letter-spacing:-.04em}.company{background:#111317}.company-photo{border-radius:20px}.company-photo>img{filter:saturate(1.1) brightness(.96)}.contact{background:radial-gradient(ellipse at 90% 70%,#77112033,transparent 65%),#15171c}.contact .button{border-radius:35px}.contact h2{letter-spacing:-.05em}footer{background:#101216}.button,.text-link{transition:background .25s,transform .25s}button:focus-visible,a:focus-visible{outline:2px solid #ff3b42;outline-offset:5px}.cinema.webgl-failed{height:auto}.cinema.webgl-failed .cinema-controls{display:none}@keyframes scroll-dot{50%{transform:translateY(5px);opacity:.4}}
@media(max-width:1100px){.cinema h1{font-size:clamp(3.8rem,7vw,5.5rem)}.cinema-copy{left:5%;max-width:42%;top:14%}.cinema-copy .eyebrow{font-size:10px}.webgl-stage{left:36%;width:67%;top:13%;height:70%}.cinema-controls{left:39%;right:4%;bottom:11%}.scene-selector button{padding:8px 10px;font-size:11px}.tour-layout{grid-template-columns:1fr;gap:25px}.tour-options{position:static;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tour-options>button{padding:20px 12px;gap:10px;border-left:0;border-bottom:2px solid #ffffff20;border-radius:8px 8px 0 0}.tour-options>button[aria-selected=true]{border-left:0;border-bottom:2px solid #c00000}.tour-options strong{font-size:17px!important}.tour-options button>span>span{font-size:13px}.tour-display{transform:none}.sector-card figcaption{padding:27px}.sector-card h3{font-size:25px}}
@media(max-width:700px){.cinema{height:180svh}.cinema-sticky{min-height:750px}.cinema-copy{top:7%;left:6%;right:6%;max-width:none}.cinema h1{font-size:clamp(3rem,12vw,4.6rem);line-height:1.02}.cinema h1 br:nth-of-type(1){display:none}.cinema h1 br:nth-of-type(1):after{content:' '}.cinema h1 em{display:inline}.cinema-copy .eyebrow{font-size:10px;margin-bottom:18px}.cinema-intro{font-size:16px;margin:18px 0}.cinema-intro br{display:none}.cinema-audience{display:none}.cinema .button{font-size:13px;padding:14px 20px}.webgl-stage{left:0;top:36%;width:100%;height:49%}.cinema-deep .webgl-stage{left:0;width:100%;top:15%;height:66%}.cinema-controls{left:4%;right:4%;bottom:7%;gap:5px}.scene-selector{padding:3px;gap:0}.scene-selector button{font-size:11px;padding:7px 11px;min-height:39px}.scene-actions{gap:13px;font-size:11px}.scene-actions button{font-size:11px;min-height:34px;padding:5px}.scene-actions #scene-motion{height:30px;width:30px;min-height:30px;font-size:16px}.cinema-bottom{bottom:14px;left:6%;right:6%;font-size:10px;gap:15px}.cinema-bottom p{font-size:10px}.scene-note{display:none}.scroll-cue{font-size:10px;gap:7px}.scroll-cue i{width:13px;height:22px}.scroll-cue i:after{left:5px}.scene-label{font-size:10px}.section-pad{padding-top:75px;padding-bottom:75px}.brand-signature{padding-top:40px;padding-bottom:40px;gap:20px}.brand-signature>img{width:55px;height:55px}.brand-signature h2{font-size:clamp(.95rem,4vw,1.6rem)}.brand-signature p{font-size:13px;line-height:1.65}.tour-heading h2,.catalogue-heading h2{font-size:2.8rem}.tour-heading{margin-bottom:30px}.tour-options{display:flex;flex-direction:column;gap:8px}.tour-options>button{padding:18px;border-left:2px solid #ffffff20;border-bottom:0;border-radius:0 8px 8px 0}.tour-options>button[aria-selected=true]{border-left:2px solid #c00000;border-bottom:0}.tour-options button>span>span{display:none}.tour-options strong br{display:none}.tour-options strong{font-size:18px!important;margin-top:7px}.tour-options small{font-size:10px!important}.tour-display{border-radius:12px}.tour-brand{padding:17px 12px}.tour-brand small{font-size:8px}.screenshot-heading{padding:17px 13px}.screenshot-heading h3{font-size:16px}.screenshot-heading>span{font-size:9px}.demo-info{display:block;padding:20px}.demo-info dl{margin-top:20px}.demo-info h4{font-size:22px}.tour-detail>summary,.coverage-details>summary{font-size:14px;padding:19px}.module-spotlight article{padding:24px}.module-spotlight h3{font-size:21px}.catalogue-filter button{font-size:12px;padding:10px 13px}.catalogue-row-title>span{font-size:11px}.catalogue-group summary{padding:24px 0}.sector-grid{gap:24px}.sector-card:nth-child(2){margin:0}.sector-card{aspect-ratio:.95}.sector-card h3{font-size:26px}.sector-card figcaption{padding:25px}.sector-heading h2{font-size:2.6rem}.deployment-grid article{padding:30px}.deployment-grid h3{font-size:29px}.cinema .device-world{margin:0;transform:scale(.85);transform-origin:50% 25%}.catalogue-heading>p{font-size:17px}.tour-closing{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.cinema{height:100svh;min-height:750px}.cinema-copy{opacity:1;transform:none}.cinema-light:after,.scroll-cue i:after{animation:none}.webgl-stage,.cinema-controls{transition:none}.module-spotlight article:hover,.tour-options>button:hover{transform:none}.sector-card>img{transition:none}.cinema-progress{display:none}}
.header{background:#111318!important}.cinema-sticky{height:calc(100svh - 92px);top:92px}.cinema-copy{top:10%}.cinema-controls{bottom:12%}.cinema-bottom{bottom:25px}.cinema-copy .eyebrow{margin-bottom:24px}
@media(max-width:700px){.cinema-sticky{top:72px;height:calc(100svh - 72px);min-height:690px}.cinema-copy{top:5%}.cinema-controls{bottom:8%}.webgl-stage{top:34%;height:51%}.cinema-bottom{bottom:14px}.cinema-copy .eyebrow{margin-bottom:16px}.cinema h1{letter-spacing:-.05em}.cinema h1 br:first-of-type{display:initial}}
.cinema-controls{visibility:hidden}.has-3d .cinema-controls{visibility:visible}.cinema-sticky{top:var(--header-height);height:calc(100svh - var(--header-height))}
.sector-grid{gap:0;margin-left:-6.8%;margin-right:-6.8%}.sector-card{border-radius:0;aspect-ratio:1.13;mask-image:linear-gradient(180deg,transparent,#000 12%,#000 92%,transparent)}.sector-card figcaption{padding:45px 12%}.sector-card:nth-child(2){margin-top:70px}.sector-card:after{background:linear-gradient(180deg,#14161b00 40%,#14161bf5 96%)}.webgl-stage canvas{transition:none}
@media(max-width:700px){.cinema-intro span,.cinema-intro br{display:none}.cinema-intro{font-size:14px;margin:15px 0}.webgl-stage{top:39%;height:47%}.cinema-deep .webgl-stage{top:12%;height:69%}.sector-grid{margin-left:-6.8%;margin-right:-6.8%;gap:15px}.sector-card:nth-child(2){margin-top:0}.sector-card figcaption{padding:35px 10%}.sector-card{aspect-ratio:.98}}
.sector-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sector-card{min-height:0;min-width:0;width:100%}.sector-card>img,.sector-card:nth-child(2)>img{width:100%;height:100%;left:0;mask-image:none}.sector-card figcaption,.sector-card:nth-child(2) figcaption{left:0;right:0;bottom:0;padding:45px 10%}.sector-card h3,.sector-card p{max-width:100%}.sector-card:nth-child(2):after{background:linear-gradient(180deg,#14161b00 40%,#14161bf5 96%)}
@media(max-width:700px){.sector-grid{grid-template-columns:minmax(0,1fr)}.sector-card figcaption,.sector-card:nth-child(2) figcaption{padding:30px 9%}.sector-card h3{font-size:27px}}
.spotlight-open{display:block;border:0;border-bottom:1px solid #ffffff35;background:none;padding:15px 0 8px;margin-top:18px;color:#d4dae5;font-size:14px;text-align:left;cursor:pointer}.spotlight-open:hover{color:#fff;border-color:#e33}
@media(max-width:700px){.spotlight-open{grid-column:2}}
@media(max-height:650px){.cinema{height:auto}.cinema-sticky{position:relative;top:0;min-height:760px}.cinema-copy{opacity:1;transform:none}.cinema-progress{display:none}}
@media(min-width:701px) and (max-width:1100px){.cinema-copy{top:5%;left:6%;max-width:88%}.cinema h1{font-size:4.2rem}.cinema-intro{font-size:17px;margin:20px 0}.cinema-audience{display:none}.webgl-stage{left:3%;width:94%;top:37%;height:49%}.cinema-controls{left:4%;right:4%;bottom:8%}.cinema-deep .webgl-stage{left:3%;width:94%;top:8%;height:78%}.scene-note{display:none}}

/* polish.css */
/* A stable reading rhythm, natural photography and device-specific hardware. */
html{scroll-padding-top:110px}.cinema{height:190svh}.webgl-stage,.cinema-deep .webgl-stage{left:calc(33% - var(--cinema-p,0)*24%);width:calc(69% + var(--cinema-p,0)*13%);transition:none}.cinema-controls,.cinema-deep .cinema-controls{left:calc(42% - var(--cinema-p,0)*36%);transition:none}.cinema-copy{opacity:clamp(0,calc(1 - var(--cinema-p,0)*2.8),1)}.scene-selector button{min-height:44px}.scene-actions button{min-height:44px}.cinema-light{background:radial-gradient(ellipse at 88% 30%,#14416c25,transparent 55%),radial-gradient(ellipse at 53% 83%,#820c201c,transparent 48%),linear-gradient(120deg,#151618,#0c0e11)}
.catalogue-tools{max-width:100%;margin-bottom:30px}.catalogue-tools>label{max-width:680px}.catalogue-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px;align-items:start}.catalogue-workspace .catalogue-filter{display:flex;flex-direction:column;gap:3px;margin:0}.catalogue-filter button{text-align:left;border:0;border-radius:5px;padding:15px 18px;line-height:1.5;min-height:48px;font-size:13px}.catalogue-filter button:hover{background:#c000002b}.catalogue-filter button[aria-pressed=true]{background:#c00000;color:white}.catalogue-stage{min-width:0}.catalogue-stage #catalogue-result{margin:0 0 18px;min-height:18px;color:#bcc1ca}.catalogue-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-height:708px;align-content:start}.catalogue-results .catalogue-row{display:grid;grid-template-columns:26px minmax(0,1fr);grid-template-rows:1fr auto;gap:12px;padding:22px;border:1px solid #ffffff16;border-radius:10px;background:#181b20;min-height:222px;margin:0}.catalogue-results .catalogue-row[hidden]{display:none}.catalogue-results .catalogue-row:hover{border-color:#c00000;background:#20191c}.catalogue-results .catalogue-row.is-selected{border-color:#c00000;background:#261719}.module-category-label{display:block;color:#8d96a4;font-size:10px;margin-bottom:10px;letter-spacing:.02em}.catalogue-results .catalogue-row-title{gap:7px}.catalogue-results .catalogue-row h3{font-size:17px;line-height:1.35}.catalogue-results .catalogue-row-title>span{font-size:9px}.catalogue-results .catalogue-row p{font-size:13px;line-height:1.65;margin:12px 0}.catalogue-results .catalogue-choice{grid-column:2;min-height:44px;align-self:end;font-size:12px}.catalogue-pagination{display:flex;justify-content:center;align-items:center;gap:25px;padding:23px 0;min-height:90px}.catalogue-pagination button{width:48px;height:44px;color:#eee;border:1px solid #ffffff30;border-radius:5px;background:#20242c;font-size:21px}.catalogue-pagination button:hover:enabled{background:#c00000;border-color:#c00000}.catalogue-pagination button:disabled{opacity:.3;cursor:default}.catalogue-pagination span{color:#b5bdc9;font-size:13px;min-width:95px;text-align:center}.catalogue-stage .catalogue-empty{margin-top:-600px;position:relative}.category-heading{display:flex;gap:15px;padding:25px}.catalogue-groups[hidden]{display:none}.module-spotlight article:hover{transform:translateY(-3px)}.module-catalogue .module-selection-bar{position:static}.catalogue-disclosure{margin-top:20px}
.field-stories{background:#121519}.field-stories-heading{max-width:850px;margin-bottom:75px}.field-stories-heading .eyebrow{font-size:11px;letter-spacing:.12em;color:#a4afc0}.field-stories h2{font-size:clamp(2.3rem,4.5vw,4.8rem);line-height:1.08;letter-spacing:-.05em;margin:22px 0}.field-stories-heading>p:last-child{max-width:590px;font-size:17px;line-height:1.7;color:#aeb7c5}.field-story{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center;margin-top:60px}.field-story-photo{position:relative;margin:0;min-width:0;overflow:hidden;border-radius:12px;aspect-ratio:1.28;isolation:isolate;background:#242930}.field-story-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:none;transform:none}.field-story-photo:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#080e17bb);pointer-events:none}.field-story-photo figcaption{position:absolute;left:28px;right:22px;bottom:25px;z-index:1;color:white;font-size:10px;letter-spacing:.1em;line-height:1.5}.field-story-copy{padding:20px 0;min-width:0}.field-story-number{font-size:11px;color:#a6b0be;letter-spacing:.05em}.field-story h3{font-size:clamp(1.8rem,2.7vw,3rem);letter-spacing:-.035em;line-height:1.14;margin:24px 0}.field-story-copy>p{font-size:16px;line-height:1.8;color:#adb6c4}.field-story-copy ul{list-style:none;padding:0;margin:26px 0;color:#d4dae3;font-size:14px}.field-story-copy li{padding:11px 0;border-bottom:1px solid #ffffff12}.field-story-copy li:before{content:none;color:#e42c35;margin-right:12px}.field-story .text-link{background:none;border:0;border-bottom:1px solid #ffffff40;color:white;font-size:13px;text-align:left;min-height:48px;padding:10px 0;line-height:1.5}.field-story .text-link:hover{color:#ff6068;border-color:#c00000}.field-story-reverse{grid-template-columns:1fr 1.2fr;margin-top:100px}.field-story-reverse .field-story-photo{grid-column:2;grid-row:1}.field-story-reverse .field-story-copy{grid-column:1;grid-row:1}.field-story-reverse img{object-position:76% center}.tour-options>button:hover{transform:none}.tour-display{transform:none}.tour-options>button{transition:background .2s}.tour-options>button[aria-selected=true]{border-color:#c00000}.tour-panel{animation:none!important}
@media(min-width:701px) and (max-width:1100px){.webgl-stage,.cinema-deep .webgl-stage{left:3%;width:94%;top:calc(37% - var(--cinema-p,0)*27%);height:calc(49% + var(--cinema-p,0)*26%)}.cinema-controls,.cinema-deep .cinema-controls{left:4%}.catalogue-workspace{grid-template-columns:210px minmax(0,1fr);gap:22px}.catalogue-results .catalogue-row{padding:17px;min-height:250px}.catalogue-results{min-height:778px}.field-story{gap:5%;grid-template-columns:1fr 1fr}.field-story-photo{aspect-ratio:.95}.field-story h3{font-size:29px}}
@media(max-width:900px){.catalogue-workspace{grid-template-columns:1fr;gap:22px}.catalogue-workspace .catalogue-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.catalogue-filter button{border:1px solid #ffffff20;padding:12px;font-size:12px}.catalogue-results{min-height:750px}.catalogue-results .catalogue-row{min-height:240px}.field-stories-heading{margin-bottom:45px}.field-story{gap:28px}.field-story-copy>p{font-size:15px}}
@media(max-width:700px){html{scroll-padding-top:85px}.cinema{height:160svh}.webgl-stage,.cinema-deep .webgl-stage{left:0;width:100%;top:calc(39% - var(--cinema-p,0)*25%);height:calc(47% + var(--cinema-p,0)*21%)}.cinema-controls,.cinema-deep .cinema-controls{left:4%;right:4%}.scene-selector{width:100%;justify-content:center}.scene-selector button{font-size:10px;padding:7px 8px;min-height:44px}.scene-label{font-size:10px}.scene-actions{gap:10px}.field-story,.field-story-reverse{display:flex;flex-direction:column;gap:14px;margin-top:45px;align-items:stretch}.field-story-photo{aspect-ratio:1.35;width:100%;border-radius:8px}.field-story-copy{padding:13px 2px}.field-story h3{font-size:32px;margin:18px 0}.field-story-copy>p{font-size:16px}.field-story-photo figcaption{left:20px;bottom:18px;font-size:9px}.field-stories h2{font-size:2.45rem}.field-stories-heading>p:last-child{font-size:16px}.field-stories{padding-top:70px;padding-bottom:65px}}
@media(max-width:650px){.catalogue-workspace .catalogue-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-filter button{padding:10px;font-size:11px;min-height:48px}.catalogue-results{grid-template-columns:1fr;min-height:720px;gap:12px}.catalogue-results .catalogue-row{min-height:232px;padding:20px;grid-template-columns:24px minmax(0,1fr)}.catalogue-results .catalogue-row p{font-size:14px}.catalogue-results .catalogue-row h3{font-size:18px}.catalogue-results .catalogue-choice{min-height:44px}.catalogue-results .catalogue-icon svg{width:22px}.catalogue-stage .catalogue-empty{margin-top:-680px}.catalogue-heading h2{font-size:2.5rem}.catalogue-pagination{min-height:88px}.module-spotlight{margin-bottom:35px}.module-spotlight article{border-radius:8px}.module-spotlight p{font-size:14px}.module-catalogue .module-selection-bar{gap:12px;flex-wrap:wrap}.module-selection-bar>div{max-width:100%}}
@media(prefers-reduced-motion:reduce){.cinema{height:auto}.cinema-sticky{position:relative;top:0}.webgl-stage,.cinema-deep .webgl-stage{left:33%;width:69%}.cinema-copy{opacity:1;transform:none}.module-spotlight article:hover{transform:none}}
@media(max-width:1100px) and (prefers-reduced-motion:reduce){.webgl-stage,.cinema-deep .webgl-stage{left:0;width:100%;top:39%;height:47%}.cinema-controls{left:4%}}

.catalogue-stage{position:relative}.catalogue-stage .catalogue-empty{position:absolute;top:50px;left:0;right:0;margin:0}.catalogue-results .catalogue-row{height:100%;box-sizing:border-box}.field-stories .text-link:focus-visible{outline:2px solid #ff3b42;outline-offset:5px}

.information-open{width:100%;text-align:left;color:#dce1e9;background:#1c2028;padding:22px;border:0;border-top:1px solid #ffffff1c;font-size:14px;line-height:1.5;min-height:56px;cursor:pointer}.information-open:hover{background:#302027;color:white}.information-dialog{width:min(780px,92vw);max-height:85svh;padding:0;color:#e8edf5;border:1px solid #ffffff30;border-radius:14px;background:#191d24;overflow:auto;box-shadow:0 30px 100px #0008}.information-dialog::backdrop{background:#080c14bd;backdrop-filter:blur(6px)}.information-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px;border-bottom:1px solid #ffffff20}.information-heading h2{font-size:22px;line-height:1.3;margin:0}.information-heading>button{font-size:30px;min-width:44px;min-height:44px;border:0;background:#ffffff0b;border-radius:50%;color:white}.information-dialog .data-coverage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.information-dialog p{line-height:1.7}.information-dialog .object-insight,.information-dialog .rail-insight{background:transparent}.information-dialog img{max-width:100%;height:auto}.tour-display{box-sizing:border-box}.tour-display [hidden]{display:none!important}
@media(max-width:650px){.information-heading{padding:20px;gap:15px}.information-heading h2{font-size:18px}.information-dialog .data-coverage{grid-template-columns:1fr}.information-open{padding:20px;font-size:13px}}

.catalogue-mobile-select{display:none}.scene-actions [hidden]{display:none!important}@media(max-width:650px){.catalogue-workspace .catalogue-filter{display:none}.catalogue-mobile-select{display:block;min-height:52px;width:100%;max-width:100%;font:inherit;font-size:14px;color:#fff;background:#21252c;border:1px solid #5b6370;border-radius:7px;padding:12px;color-scheme:dark}.catalogue-workspace{gap:20px}}
@media(min-width:701px) and (max-width:1100px) and (max-height:900px){.cinema-copy{top:9%;left:5%;max-width:36%}.cinema h1{font-size:clamp(3rem,6vw,4.2rem)}.cinema-copy .eyebrow{font-size:9px}.cinema-intro{font-size:15px;margin:23px 0}.cinema .button{font-size:12px;padding:16px 20px}.webgl-stage,.cinema-deep .webgl-stage{left:calc(35% - var(--cinema-p,0)*30%);width:calc(65% + var(--cinema-p,0)*25%);top:5%;height:80%}.cinema-controls,.cinema-deep .cinema-controls{left:calc(37% - var(--cinema-p,0)*32%);right:3%;bottom:9%;gap:7px}.scene-selector button{padding:8px 10px}.scene-actions{gap:10px}}

/* product-story.css */
/* LUOIS product presentation: real device assets, scoped motion, consistent typography. */
:root{--brand-red:#c00000;--page-black:#090a0c;--text-secondary:#a8adb7;--header-height:92px}
html{scroll-padding-top:calc(var(--header-height) + 20px)}
.launch{--reveal:0;--progress:0;position:relative;min-height:190svh;background:var(--page-black);color:#fff;isolation:isolate}
.launch-sticky{height:calc(100svh - var(--header-height));min-height:650px;max-height:1120px;position:sticky;top:var(--header-height);padding:26px 5vw 16px;display:flex;flex-direction:column;align-items:center;overflow:hidden;background:radial-gradient(ellipse at 82% 64%,#1b578b24,transparent 48%),radial-gradient(ellipse at 17% 70%,#ac101224,transparent 44%),#090a0c}
.launch-heading{text-align:center;position:relative;z-index:2;flex-shrink:0}
.launch-brand{display:flex;align-items:center;justify-content:center;gap:13px;color:#b3b7c0;font-size:12px;letter-spacing:.1em;margin:0 0 16px;line-height:1.5}
.launch-brand img{width:38px;height:38px;object-fit:contain}
.launch h1{font-family:Arial,sans-serif;font-size:clamp(43px,5.2vw,84px);font-weight:700;line-height:1.04;letter-spacing:-.06em;margin:0;text-wrap:balance}
.launch h1 span{color:#969ba6}
.launch-heading>p:last-child{font-size:17px;line-height:1.5;color:#afb4bf;margin:20px 0 0}
.launch-visual{position:relative;width:min(1100px,86vw);flex:1;min-height:0;margin:24px 0 0;transform:translateY(calc(var(--progress)*-8px)) scale(calc(1 + var(--progress)*.08));transform-origin:center;filter:drop-shadow(0 25px 22px #000a)}
.launch-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.launch-map{opacity:var(--reveal)}
.launch-control{display:flex;justify-content:center;gap:35px;align-items:center;position:relative;z-index:3;margin:14px 0 20px;flex-shrink:0}
.launch-steps{display:flex;gap:5px;background:#24262be8;border:1px solid #ffffff15;padding:5px;border-radius:30px;backdrop-filter:blur(15px)}
.launch-steps button{border:0;border-radius:24px;background:transparent;color:#8f97a5;padding:11px 15px;font-size:12px;min-height:44px;cursor:pointer;transition:background .2s,color .2s}
.launch-steps button span{font-size:14px;margin-left:7px}.launch-steps button[aria-pressed=true]{background:#41454d;color:white}.launch-steps button:hover{color:white}
.launch-zoom{font-size:14px;color:#d6d9df;background:none;border:0;min-height:44px;cursor:pointer;padding:10px}
.launch-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;width:100%;font-size:12px;border-top:1px solid #ffffff16;padding-top:14px;flex-shrink:0;color:#8e95a2}
.launch-bottom button{border:0;border-radius:25px;padding:12px 18px;min-height:44px;color:white;background:#c00000;font-size:14px;cursor:pointer}.launch-bottom button:hover{background:#e00000}
.launch-scroll>span{color:#e52b36;margin-left:10px;font-size:18px}.launch-note{font-size:12px}
.launch button:focus-visible,.device-gallery button:focus-visible,.device-gallery a:focus-visible{outline:2px solid white;outline-offset:5px}
#system.brand-signature{background:#15171a;border-top:1px solid #ffffff0d;gap:48px;padding-top:65px;padding-bottom:65px}
#system.brand-signature h2{font-size:clamp(24px,3vw,42px)}#system.brand-signature p{max-width:920px;color:#aeb4bf;font-size:18px;line-height:1.65}#system.brand-signature p strong{color:white;font-weight:500}
.device-gallery{background:#0e1013;color:#fff;overflow:hidden;padding-top:100px;padding-bottom:85px}
.device-gallery-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:8%;margin-bottom:55px}
.device-gallery .eyebrow{font-size:12px;line-height:1.6;letter-spacing:.08em;color:#aaaeb8;margin:0 0 18px}
.device-gallery h2{font-size:clamp(38px,4.2vw,64px);letter-spacing:-.05em;line-height:1.08;margin:0}
.device-gallery-heading>p{max-width:380px;margin:0 0 4px;color:#aab1bd;font-size:18px;line-height:1.65}
.device-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;border-bottom:1px solid #ffffff18;margin-bottom:50px}
.device-picker button{position:relative;min-width:0;background:none;border:0;border-bottom:2px solid transparent;color:#adb4bf;padding:0 10px 26px;cursor:pointer;text-align:center;transition:border-color .2s,color .2s}
.device-picker button:hover,.device-picker button[aria-selected=true]{color:#fff;border-bottom-color:#c00000}
.device-picker :is(img,luois-board){width:100%;height:130px;object-fit:contain;opacity:.72;transition:transform .25s,opacity .25s;display:block;margin:0 auto 20px}
.device-picker button[aria-selected=true] :is(img,luois-board),.device-picker button:hover :is(img,luois-board){opacity:1;transform:translateY(-5px)}
.device-picker strong{display:block;font-size:20px;line-height:1.4;font-weight:600}
.device-picker span{display:block;font-size:14px;line-height:1.45;color:#969eaa;margin-top:6px}
.device-detail{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:7%;align-items:center;min-height:480px;outline-offset:10px}
.device-detail-visual{position:relative;display:flex;flex-direction:column;align-items:center;gap:15px;min-width:0}
.device-detail-visual>:is(img,luois-board){width:100%;height:400px;object-fit:contain;filter:drop-shadow(0 25px 25px #0008);animation:device-entry .35s ease}
.device-detail-visual button{color:#bec5cf;font-size:14px;line-height:1.5;border:0;background:none;cursor:pointer;padding:12px;min-height:44px}
.device-detail-copy>span{font-size:12px;letter-spacing:.07em;color:#ee535b;line-height:1.6}
.device-detail h3{font-size:clamp(27px,2.8vw,42px);line-height:1.15;letter-spacing:-.045em;margin:17px 0 22px}
.device-detail-copy>p{color:#aeb6c2;font-size:17px;line-height:1.75;margin:0}
.device-detail ul{list-style:none;padding:0;margin:24px 0;color:#d1d7df;font-size:15px;line-height:1.65}
.device-detail li{padding:10px 0;border-bottom:1px solid #ffffff16}
.device-detail-copy a{font-size:15px;color:#fff;text-decoration:none;display:inline-block;padding:10px 0;border-bottom:1px solid #777;line-height:1.5}
.device-gallery-note{font-size:12px;color:#858e9c;margin:45px 0 0;line-height:1.7}
@keyframes device-entry{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
/* Large, readable product demonstrations instead of narrow side panels. */
.product-tour{background:#17191d}.tour-layout{display:block}.tour-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:30px}.tour-options button{border:1px solid #ffffff20;border-radius:18px;min-height:175px;padding:24px;gap:17px;align-items:flex-start}.tour-options button[aria-selected=true]{border:1px solid #c00000;background:linear-gradient(135deg,#3b1c22,#242329)}.tour-options button:hover{background:#392026;border-color:#c00000}.tour-options strong{font-size:21px;line-height:1.2}.tour-options button>span>span{font-size:15px;line-height:1.55}.tour-options small{font-size:12px}.tour-display{border-color:#ffffff25;border-radius:22px;box-shadow:0 20px 80px #0003}.tour-brand{padding:18px 26px}.screenshot-heading{padding:22px 26px}.screenshot-heading h3{font-size:22px}.screenshot-benefit{font-size:18px;line-height:1.7;padding:25px 30px}.demo-info{padding:30px;grid-template-columns:.8fr 1.5fr;min-height:235px}.demo-info p{font-size:15px}.demo-info dl>div{grid-template-columns:150px 1fr;font-size:15px}.demo-info h4{font-size:28px}.demo-info .eyebrow{font-size:12px}.demo-caption{font-size:12px!important}.map-legend small{font-size:12px}.information-open{font-size:16px;padding:24px 30px}.information-heading h2{font-size:26px}.information-dialog p,.information-dialog li,.information-dialog dd,.information-dialog dt{font-size:16px;line-height:1.7}.tour-closing{margin-top:30px}.tour-closing p{font-size:17px;line-height:1.7}.rail-demo-point{width:28px;height:28px}.rail-demo-point span{font-size:13px}.rail-demo-legend{font-size:14px;padding:20px 28px;gap:25px}.demo-pin{width:42px;height:42px;padding:8px}.demo-pin>span{font-size:11px;width:19px;height:19px;line-height:18px}
/* Module navigation keeps its position and gives visible feedback. */
.module-catalogue{background:#101215}.catalogue-results .catalogue-row{background:#1b1e23;border-radius:18px;padding:25px;gap:15px;border-color:#ffffff19}.catalogue-results .catalogue-row h3{font-size:21px}.catalogue-results .catalogue-row p{font-size:16px;line-height:1.75}.module-category-label{font-size:12px;color:#a1aab7}.catalogue-results .catalogue-row-title>span{font-size:12px}.catalogue-results .catalogue-choice{font-size:14px}.catalogue-filter button{font-size:14px;line-height:1.5;padding:15px 17px}.catalogue-stage #catalogue-result{font-size:14px}.catalogue-pagination span{font-size:14px}.catalogue-pagination button{border-radius:50%;width:46px;height:46px}.catalogue-tools label{font-size:15px}.catalogue-disclosure{font-size:14px}.module-spotlight{gap:22px}.module-spotlight article{border:1px solid #ffffff1c;border-radius:22px;background:#1b1e23;padding:30px;position:relative;transition:border-color .2s,background .2s}.module-spotlight article:hover{transform:none;background:#2a1b20;border-color:#b9232c}.module-spotlight h3{font-size:23px;line-height:1.3}.module-spotlight p{font-size:16px;line-height:1.7}.module-spotlight .spotlight-open{font-size:15px;min-height:48px;padding:14px 0}.catalogue-empty{font-size:16px;padding:30px}.module-selection-bar p{font-size:14px!important}.module-selection-bar strong{font-size:16px!important}
.field-stories{background:#181b20}.field-story-photo{border-radius:24px;aspect-ratio:1.3}.field-story h3{font-size:clamp(29px,3vw,46px)}.field-story-copy>p{font-size:18px;line-height:1.75}.field-story-copy ul{font-size:16px}.field-story .text-link{font-size:15px}.field-story-photo figcaption{font-size:13px}.field-story-number{font-size:13px}.deployment-grid article{border-radius:20px}.company-photo{border-radius:22px;overflow:hidden}.contact-box{border-radius:22px}.contact-dialog .contact-status{font-size:14px;line-height:1.7}#image-credits p{font-size:16px;line-height:1.75}
@media(min-width:1700px){.launch-visual{width:min(1320px,86vw)}}
@media(max-height:800px) and (min-width:901px){.launch-sticky{min-height:580px;padding-top:16px}.launch h1{font-size:clamp(43px,4.5vw,65px)}.launch-brand{margin-bottom:10px}.launch-heading>p:last-child{margin-top:12px;font-size:16px}.launch-visual{margin-top:16px}.launch-control{margin:8px 0 12px}}
@media(max-width:1100px){.device-detail{gap:4%;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)}.device-detail-visual>:is(img,luois-board){height:320px}.device-picker :is(img,luois-board){height:105px}.device-picker strong{font-size:18px}.device-gallery-heading{gap:6%}.device-gallery-heading>p{font-size:17px;max-width:330px}.tour-options button{padding:20px;gap:12px}.tour-options strong{font-size:19px}.tour-options button>span>span{font-size:14px}.catalogue-workspace{gap:24px}.catalogue-results .catalogue-row{padding:22px}.catalogue-results .catalogue-row h3{font-size:20px}.module-spotlight article{padding:24px}}
@media(max-width:900px){:root{--header-height:80px}.launch{min-height:auto}.launch-sticky{position:relative;top:0;height:auto;min-height:0;max-height:none;padding:40px 5vw 24px}.launch h1{font-size:clamp(34px,7vw,65px)}.launch-brand{font-size:11px;letter-spacing:.06em}.launch-heading>p:last-child{max-width:430px;margin:19px auto 0;font-size:17px}.launch-visual{width:100%;height:auto;flex:none;aspect-ratio:2200/1274;margin:35px 0 16px}.launch-control{margin:8px 0 28px;gap:14px}.launch-bottom{flex-wrap:wrap;justify-content:center;text-align:center}.launch-scroll{display:none}.launch-note{width:100%;order:2;font-size:12px}.launch-bottom button{font-size:15px;padding:13px 22px}.device-gallery{padding-top:70px;padding-bottom:60px}.device-gallery-heading{display:block}.device-gallery-heading>p{max-width:570px;margin-top:25px;font-size:17px}.device-picker{gap:12px;margin-bottom:35px}.device-picker button{padding-left:0;padding-right:0}.device-picker :is(img,luois-board){height:85px}.device-picker span{font-size:12px}.device-detail{grid-template-columns:1fr;gap:30px}.device-detail-visual>:is(img,luois-board){height:350px}.device-detail-copy{max-width:650px}.device-detail-copy h3 br{display:none}.device-detail h3{font-size:36px}.device-detail-copy h3 br:after{content:' '}.device-detail-copy ul{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.device-detail li{font-size:14px;padding:12px 0}.device-gallery-note{margin-top:32px}.tour-options{gap:10px}.tour-options button>span>span{display:none}.tour-options button{min-height:122px}.demo-info{grid-template-columns:1fr;gap:20px}.module-spotlight{grid-template-columns:1fr}.module-spotlight article{display:grid;grid-template-columns:40px 1fr;gap:10px 18px}.module-spotlight h3{margin:0}.module-spotlight p,.module-spotlight button{grid-column:2}.module-spotlight .spotlight-open{justify-self:start;padding:5px 0}.field-story-photo{aspect-ratio:1.3}}
@media(max-width:600px){:root{--header-height:76px}.launch-sticky{padding:29px 20px 22px}.launch-brand{display:block;font-size:10px;letter-spacing:.035em;margin-bottom:17px}.launch-brand img{display:block;width:48px;height:48px;margin:0 auto 13px}.launch h1{font-size:clamp(26px,7.6vw,45px);letter-spacing:-.055em}.launch-heading>p:last-child{font-size:16px;line-height:1.6;max-width:320px;margin-top:18px}.launch-visual{width:calc(100% + 10px);margin-top:30px}.launch-control{flex-direction:column;gap:3px;margin-bottom:14px}.launch-steps button{padding:9px 12px}.launch-steps button span{font-size:14px}.launch-zoom{font-size:14px}.launch-bottom{gap:16px;padding-top:20px}.device-gallery-heading{margin-bottom:30px}.device-gallery h2{font-size:38px}.device-gallery .eyebrow{font-size:11px}.device-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:30px}.device-picker :is(img,luois-board){height:55px;margin-bottom:13px}.device-picker strong{font-size:13px;line-height:1.4}.device-picker span{display:none}.device-picker button{padding-bottom:17px}.device-detail-visual>:is(img,luois-board){height:245px}.device-detail h3{font-size:29px}.device-detail-copy>p{font-size:16px}.device-detail-copy ul{display:block}.device-detail li{font-size:15px}.device-detail-visual button{font-size:14px}.device-gallery-note{font-size:12px}#system.brand-signature{display:block;padding-top:40px;padding-bottom:40px}#system.brand-signature>img{width:60px;height:60px;margin-bottom:20px}#system.brand-signature h2{font-size:clamp(19px,5vw,28px)}#system.brand-signature h2 span{white-space:normal}#system.brand-signature p{font-size:16px}.tour-heading h2{font-size:38px}.tour-options{gap:8px}.tour-options button{display:block;text-align:center;padding:14px 6px;min-height:122px;border-radius:12px}.tour-icon{display:flex;justify-content:center;margin-bottom:10px}.tour-options strong{font-size:14px;line-height:1.4;margin:0}.tour-options small{display:none}.tour-options strong br{display:none}.tour-display{border-radius:16px}.tour-brand{padding:15px}.tour-brand small{display:none}.screenshot-heading{padding:18px}.screenshot-heading h3{font-size:20px}.screenshot-benefit{font-size:16px;padding:20px}.demo-info{padding:20px;min-height:345px}.demo-info dl>div{grid-template-columns:100px 1fr;gap:15px;font-size:14px}.demo-info h4{font-size:24px}.demo-info p{font-size:14px}.demo-pin{width:31px;height:31px;padding:6px}.demo-pin>span{width:17px;height:17px;line-height:16px;font-size:10px}.rail-demo-point{width:24px;height:24px}.rail-demo-point span{font-size:10px;padding:6px}.rail-demo-legend{font-size:12px;padding:17px;gap:15px}.information-open{font-size:15px;padding:20px}.tour-closing p{font-size:16px}.catalogue-results .catalogue-row{padding:22px 20px;border-radius:16px;grid-template-columns:24px minmax(0,1fr)}.catalogue-results .catalogue-row h3{font-size:20px}.catalogue-results .catalogue-row p{font-size:16px}.catalogue-results .catalogue-row-title>span{font-size:12px}.module-category-label{font-size:12px}.catalogue-tools label{font-size:14px}.catalogue-mobile-select{font-size:16px}.module-spotlight article{padding:23px 20px;grid-template-columns:28px 1fr;gap:12px}.module-spotlight h3{font-size:21px}.module-spotlight p{font-size:16px}.module-selection-bar{padding-top:20px!important}.module-selection-bar .button{font-size:14px!important}.module-selection-bar strong{font-size:15px!important}.catalogue-disclosure{font-size:13px}.field-story-photo{aspect-ratio:1.25;border-radius:18px}.field-story-copy>p{font-size:17px}.field-story-photo figcaption{font-size:12px}.field-story .text-link{font-size:15px}.contact-dialog{max-height:90svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.launch{min-height:auto}.launch-sticky{position:relative;top:0}.launch-visual{transform:none}.device-picker :is(img,luois-board),.launch-steps button{transition:none}.device-picker button:hover :is(img,luois-board){transform:none}.device-detail-visual>:is(img,luois-board){animation:none}.launch-scroll{display:none}}
/* The introductory copy scrolls out; the product then owns the viewport. */
.launch>.launch-heading{padding:42px 24px 12px;background:#090a0c}
.launch-sticky{padding-top:8px;min-height:550px}
.launch-visual{width:min(1180px,91vw);margin-top:8px}
.launch-control{margin-top:12px}
.catalogue-results.is-empty{min-height:180px!important;height:180px}
.screenshot-dialog .dialog-top{position:sticky;top:-18px;background:#222;z-index:2;padding:8px 0}
.screenshot-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 12px;color:#aeb6c2;font-size:13px}
.screenshot-fit-toggle{color:white;border:1px solid #60636a;background:#30343a;padding:9px 15px;border-radius:22px;min-height:44px;font-size:14px;cursor:pointer}
.full-shot-scroll img{min-width:0;width:100%;max-height:70dvh;object-fit:contain}
.full-shot-scroll.is-zoomed img{min-width:1200px;width:150%;max-width:none;max-height:none}
.demo-pin:after,.rail-demo-point:after{content:'';position:absolute;inset:-9px}
@media(max-width:900px){.launch>.launch-heading{padding:40px 24px 8px}.launch-sticky{padding-top:0;min-height:0}.launch-visual{width:100%;margin-top:25px}}
@media(max-width:600px){.launch>.launch-heading{padding:28px 20px 8px}.launch-sticky{padding-top:0}.launch-visual{width:calc(100% + 10px);margin-top:18px}.screenshot-toolbar{flex-wrap:wrap;font-size:12px}.screenshot-dialog .dialog-top{top:-12px}.rail-demo-point:not([aria-pressed=true]) span{visibility:hidden}.rail-demo-point:focus-visible span{visibility:visible}}

.tab-label-short{display:none}
@media(max-width:600px){.tour-options .tab-label-full{display:none}.tour-options .tab-label-short{display:block;font-size:clamp(11px,3.3vw,14px);line-height:1.4}.tour-options button{min-width:0;min-height:104px}.launch-sticky{overflow:hidden}}

@media(max-width:650px){.catalogue-results{min-height:0;grid-auto-rows:auto}.catalogue-results .catalogue-row{position:relative;display:flex;flex-direction:column;height:auto;min-height:0;padding:24px}.catalogue-results .catalogue-row>div{width:100%}.catalogue-results .catalogue-icon{position:absolute;top:24px;right:24px}.catalogue-results .module-category-label{padding-right:30px;min-height:24px}.catalogue-results .catalogue-row p{line-height:1.65;margin-bottom:0}.catalogue-results .catalogue-choice{align-self:flex-start;margin-top:5px}.catalogue-results .catalogue-row-title{padding-right:0}}
.tour-options button>span:last-child{min-width:0}.tour-options strong{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:600px){.device-picker strong{font-size:clamp(11px,3.2vw,13px)}}

.demo-rail-lines .rail-casing{stroke-width:5px;vector-effect:non-scaling-stroke}.demo-rail-lines .rail-stroke{stroke-width:3px;vector-effect:non-scaling-stroke}
.map-tools{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:13px 22px;background:#202329;border-top:1px solid #ffffff14;color:#bac1cc;font-size:14px}.map-zoom-buttons{display:flex;gap:7px;align-items:center}.map-zoom-buttons button{border:1px solid #ffffff25;border-radius:7px;background:#30343b;color:white;min-width:44px;min-height:44px;font-size:22px;cursor:pointer}.map-zoom-buttons button:last-child{font-size:13px;padding:8px 14px;margin-left:8px}.map-zoom-buttons button:disabled{opacity:.4;cursor:default}.map-zoom-buttons button:hover:enabled{background:#c00000}.map-zoom-buttons output{font-size:13px;width:52px;text-align:center;font-variant-numeric:tabular-nums}.map-window{overflow:auto;width:100%;scrollbar-color:#707581 #202329;overscroll-behavior:contain;position:relative}.map-window .interactive-demo{min-width:100%}.map-window:focus-visible{outline:2px solid #c00000;outline-offset:-2px}
@media(max-width:600px){.map-tools{display:block;padding:14px}.map-tools>span{display:block;font-size:12px;margin-bottom:10px}.map-zoom-buttons{gap:5px}.map-zoom-buttons button:last-child{padding:7px 9px;margin-left:auto;font-size:12px}.map-zoom-buttons output{width:47px}.demo-rail-lines .rail-casing{stroke-width:4px}.demo-rail-lines .rail-stroke{stroke-width:2px}}
/* Original object symbol with the same internal anchor as the LUOIS map renderer. */
.demo-pin{width:38px;height:50px;rotate:0deg;transform:translate(-50%,-76%);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.demo-pin img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 3px #0007)}
.demo-pin>span{rotate:0deg;top:-4px;right:-6px}.demo-pin:hover,.demo-pin[aria-pressed=true]{background:transparent;box-shadow:none}.demo-pin:hover img,.demo-pin[aria-pressed=true] img{filter:drop-shadow(0 0 5px #ff8015)}
.demo-rail-lines{clip-path:none}
@media(max-width:600px){.demo-pin{width:29px;height:39px}.demo-pin>span{top:-5px;right:-7px}.rail-demo-legend{font-size:11px;gap:10px}.rail-demo-legend span:before{width:13px;margin-right:5px}}
.demo-pin img{object-position:center bottom}
@media(max-width:360px){.map-zoom-buttons{flex-wrap:wrap}.map-zoom-buttons button:last-child{flex-basis:100%;margin-left:0}.map-zoom-buttons output{flex:1}.map-tools{padding:12px}}

/* product-flow.css */
/* Product-led visual narrative. Original local imagery; no external media or trackers. */
.launch{min-height:170svh;background:#0b0d10;--fleet-exit:0}
.launch-sticky{min-height:610px;height:calc(100svh - var(--header-height));max-height:1100px;padding:0 4.5vw;display:flex;isolation:isolate;background:#0b0d10;overflow:hidden}
.launch-atmosphere{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.15;z-index:-3;mask-image:linear-gradient(90deg,transparent 20%,#000 80%);filter:saturate(.85)}
.launch-sticky:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,#0b0d10 1%,transparent 45%),radial-gradient(ellipse at 88% 55%,#224d7245,transparent 58%),radial-gradient(ellipse at 28% 100%,#c000001c,transparent 60%)}
.launch-content{display:grid;grid-template-columns:.88fr 1.35fr;gap:1.5vw;align-items:center;flex:1;min-height:0;width:100%;max-width:1760px;margin:auto}
.launch .launch-heading{padding:40px 0 30px;text-align:left;background:none;z-index:5}
.launch-brand{justify-content:flex-start;gap:17px;margin:0 0 27px;letter-spacing:.08em;font-size:11px;line-height:1.65;color:#c1c5cd}
.launch-brand img{height:66px;width:66px}
.launch h1{font-size:clamp(42px,4.45vw,78px);line-height:1.06;letter-spacing:-.055em;text-wrap:initial}
.launch h1 span{color:#fff;display:block;position:relative;width:fit-content}
.launch h1 span:after{content:'';position:absolute;bottom:-9px;left:2px;height:3px;width:65px;background:#c00000;box-shadow:0 0 25px #c0000060}
.launch .launch-lead{color:#bec2ca;max-width:450px;margin:30px 0 25px;font-size:17px;line-height:1.65}
.launch-actions{display:flex;gap:21px;align-items:center;flex-wrap:wrap}
.launch-actions .button{border-radius:6px;font-size:14px;min-height:49px;padding:15px 20px;background:#c00000;box-shadow:0 7px 30px #0004}
.launch-actions a{font-size:14px;color:#e4e6eb;line-height:1.5;text-decoration:none;min-height:44px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #ffffff35}
.launch-actions a:hover{border-color:#c00000}
.launch .launch-audience{font-size:12px;color:#838d9b;line-height:1.7;margin:25px 0 0}
.launch-product{min-width:0;align-self:center;position:relative;width:100%}
.launch-fleet{position:relative;aspect-ratio:1.35;width:100%;perspective:1400px}
.fleet-device{position:absolute;display:block;text-decoration:none;filter:drop-shadow(0 15px 18px #0007);transition:filter .25s;will-change:transform}
.fleet-device :is(img,luois-board){width:100%;height:auto;display:block;object-fit:contain}
.fleet-device span,.fleet-laptop-label{color:#b5beca;font-size:11px;letter-spacing:.035em;display:flex;gap:16px;align-items:center;justify-content:center;text-decoration:none;line-height:1.5;min-height:34px}
.fleet-device b,.fleet-laptop-label b{font-size:15px;font-weight:400;color:#fff}
.fleet-device:hover{filter:drop-shadow(0 10px 20px #4e7ea644)}
.fleet-device:hover span,.fleet-laptop-label:hover{color:#fff}
.fleet-board{width:48%;top:0;right:0;z-index:1;transform:translateY(calc(var(--reveal)*-15px));opacity:calc(1 - var(--reveal)*.4)}
.fleet-desktop{width:36%;top:2%;left:5%;z-index:2;transform:translateX(calc(var(--reveal)*-16px));opacity:calc(1 - var(--reveal)*.4)}
.launch .launch-visual{position:absolute;inset:auto;left:0;top:31%;width:83%;height:auto;aspect-ratio:2200/1274;margin:0;z-index:3;filter:drop-shadow(0 20px 25px #000a);transform:translateY(calc(var(--reveal)*-4px)) scale(calc(1 + var(--reveal)*.05));transform-origin:center}
.launch-visual>img{object-fit:contain;width:100%;height:100%;inset:0}
.launch-map{transition:opacity .15s linear}
.fleet-laptop-label{position:absolute;left:30%;right:30%;bottom:-30px}
.fleet-tablet{width:37%;bottom:1%;right:-1%;z-index:4;transform:translateY(calc(var(--reveal)*10px))}
.launch-control{margin:24px 0 12px;gap:16px;justify-content:center}
.launch-steps{background:#191d23d9;border-color:#ffffff20;backdrop-filter:blur(10px)}
.launch-steps button{padding:7px 13px;color:#a7b0be;font-size:11px}
.launch-steps button span{font-size:13px}
.launch-steps button[aria-pressed=true]{background:#3c2228;color:#fff;box-shadow:inset 0 0 0 1px #cb222a80}
.launch-zoom{font-size:13px;color:#c8cfd9}
.launch-bottom{max-width:1760px;padding:17px 0 20px;border-top-color:#ffffff18;gap:20px;font-size:11px;margin-top:15px;line-height:1.5}
.launch-phase{font-size:13px;color:#c2c8d2;margin:0;text-align:center}
.launch-note{font-size:11px}
.launch-progress{position:absolute;bottom:0;height:2px;background:#ffffff0b;left:0;right:0}
.launch-progress span{display:block;height:100%;width:100%;background:#c00000;transform:scaleX(var(--progress));transform-origin:left}
.journey-nav{display:flex;justify-content:space-between;gap:20px;padding:26px 5vw;background:#101317;border-bottom:1px solid #ffffff12}
.journey-nav a{display:flex;gap:12px;align-items:center;color:#c2c8d1;font-size:14px;text-decoration:none;min-height:44px}
.journey-nav span{color:#ce3037;font-size:11px;font-variant-numeric:tabular-nums}
.journey-nav b{font-weight:400;margin-left:12px}.journey-nav a:hover{color:white}.journey-nav a:focus-visible{outline:2px solid #fff;outline-offset:4px}
#system.brand-signature{background:#101317;border:0;padding-top:60px;padding-bottom:65px}
#system.brand-signature>img{width:90px;height:90px;flex:none}
#system.brand-signature p{font-size:17px;max-width:1000px}
.device-gallery,.product-tour,.module-catalogue{position:relative}
.device-gallery:before,.product-tour:before,.module-catalogue:before{content:'';position:absolute;top:0;left:5vw;width:46px;height:3px;background:#c00000}
.device-gallery{background:linear-gradient(180deg,#0b0e12,#101318);padding-top:95px}
.device-picker{gap:26px}.device-picker button{border-radius:0}
.device-detail-visual{padding:25px 0;background:radial-gradient(ellipse at 50% 65%,#2c45602d,transparent 65%)}
.device-detail-visual>:is(img,luois-board){height:440px}
.product-tour{background:#12161b}.tour-options button{border-radius:6px}.tour-display{border-radius:10px}
.module-catalogue{background:#0d1014}.module-spotlight article,.catalogue-results .catalogue-row{border-radius:8px}
.field-stories{background:#0e1217}
.field-story-photo{border-radius:6px;aspect-ratio:1.25;box-shadow:0 25px 70px #0005}
.field-story-copy>p{color:#b6c0cb}.field-story-photo img{filter:saturate(1.05)}
.field-story-photo:after{background:linear-gradient(180deg,transparent 60%,#080d15aa)}
.field-story-photo figcaption{font-size:12px}
@media(min-width:1600px){.launch-content{gap:4vw}.launch-control{margin-top:5px}.launch-brand{font-size:12px}.launch .launch-lead{font-size:19px;max-width:490px}}
@media(max-height:760px) and (min-width:901px){.launch-sticky{min-height:560px}.launch .launch-heading{padding-top:20px;padding-bottom:15px}.launch h1{font-size:clamp(39px,4.2vw,65px)}.launch-brand{margin-bottom:18px}.launch-brand img{width:52px;height:52px}.launch .launch-lead{font-size:16px;margin-top:25px;margin-bottom:20px}.launch .launch-audience{margin-top:17px}.launch-fleet{max-width:650px;margin:0 auto}.launch-control{margin-top:8px;margin-bottom:0}.launch-bottom{padding:12px 0 15px;margin-top:5px}}
@media(max-width:1100px) and (min-width:901px){.launch-sticky{padding:0 3vw}.launch-content{grid-template-columns:.95fr 1.15fr;gap:0}.launch h1{font-size:44px}.launch .launch-lead{font-size:16px}.launch-brand{font-size:10px;gap:10px}.launch-brand img{width:54px;height:54px}.launch-actions{gap:10px}.launch-actions .button{padding:13px 15px}.launch-actions a{font-size:12px}.fleet-device span,.fleet-laptop-label{font-size:10px;gap:8px}.launch-control{gap:2px}.launch-steps button{padding:7px 9px}.launch-zoom{font-size:12px}}
@media(max-width:900px){.launch{min-height:0}.launch-sticky{position:relative;top:0;min-height:0;height:auto;max-height:none;padding:0 6vw}.launch-content{grid-template-columns:1fr;gap:0;max-width:720px}.launch .launch-heading{padding:42px 0 0;text-align:center}.launch-brand{justify-content:center;display:flex;font-size:11px;margin-bottom:22px}.launch-brand img{margin:0;width:58px;height:58px}.launch h1{font-size:clamp(43px,7vw,64px)}.launch h1 span{display:inline-block}.launch h1 span:after{left:calc(50% - 32px)}.launch .launch-lead{max-width:520px;margin:28px auto 24px;font-size:17px}.launch-actions{justify-content:center}.launch .launch-audience{margin-top:21px;font-size:12px}.launch-product{max-width:640px;margin:38px auto 0}.launch-fleet{aspect-ratio:1.4}.launch-control{margin:19px 0 26px;flex-direction:row}.launch-bottom{padding:19px 0 21px;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:9px}.launch-scroll{display:none}.launch-phase{width:100%;font-size:13px}.launch-note{width:auto;order:0;font-size:11px}.launch-progress{display:none}.launch-atmosphere{mask-image:linear-gradient(180deg,transparent,#000);opacity:.12}.journey-nav{gap:12px;padding:18px 5vw;flex-wrap:wrap;justify-content:center}.journey-nav a{font-size:12px;gap:7px}.journey-nav b{margin-left:0}.device-detail-visual>:is(img,luois-board){height:350px}}
@media(max-width:600px){.launch-sticky{padding:0 20px}.launch .launch-heading{padding-top:30px}.launch-brand{font-size:9px;letter-spacing:.06em;gap:12px;margin-bottom:22px}.launch-brand img{width:48px;height:48px}.launch h1{font-size:clamp(35px,9.3vw,54px);letter-spacing:-.045em}.launch .launch-lead{font-size:16px;line-height:1.6;margin-top:26px}.launch-actions{gap:12px}.launch-actions .button{font-size:13px;padding:13px 15px}.launch-actions a{font-size:13px;gap:7px}.launch .launch-audience{font-size:11px;line-height:1.6}.launch .launch-audience br{display:none}.launch-product{margin-top:30px}.launch-fleet{aspect-ratio:1.25}.fleet-board{width:50%;top:0}.fleet-desktop{width:38%;left:2%;top:2%}.launch .launch-visual{top:33%;width:88%;left:-3%}.fleet-tablet{width:38%;bottom:3%;right:-1%}.fleet-device span,.fleet-laptop-label{font-size:9px;gap:6px;line-height:1.3;min-height:28px}.fleet-device b,.fleet-laptop-label b{font-size:12px}.fleet-laptop-label{bottom:-25px}.launch-control{margin:15px -5px 20px;gap:4px;flex-wrap:wrap}.launch-steps button{padding:7px 10px}.launch-steps button span{font-size:12px;margin-left:5px}.launch-zoom{font-size:12px;padding:8px}.launch-bottom{padding:16px 0 20px}.launch-phase{font-size:12px}.journey-nav{display:grid;grid-template-columns:1fr 1fr;padding:15px 20px;gap:2px 18px}.journey-nav a{font-size:12px}.journey-nav a:last-child{grid-column:1/-1;border-top:1px solid #ffffff10;padding-top:5px;justify-content:space-between}.journey-nav a:last-child span{margin-right:auto}.journey-nav a:last-child b{margin-left:auto}#system.brand-signature{padding-top:40px;padding-bottom:45px}#system.brand-signature>img{width:64px;height:64px}.device-gallery{padding-top:60px}.device-picker{gap:8px}.device-detail-visual{padding:10px 0}.device-detail-visual>:is(img,luois-board){height:245px}.tour-options button{border-radius:6px}.field-story-photo{aspect-ratio:1.15;border-radius:6px}}
@media(prefers-reduced-motion:reduce){.launch{min-height:0}.launch-sticky{position:relative;top:0}.launch-progress{display:none}.fleet-device,.launch-map{transition:none}.fleet-device,.launch .launch-visual{transform:none!important}.fleet-device{will-change:auto}}
/* Legible labels remain outside the overlapping device silhouettes. */
.fleet-board span,.fleet-desktop span{position:absolute;top:-28px;left:0;right:0}
.launch-actions .button{color:#fff}.launch-actions .button:hover{background:#df111b;color:#fff}
.launch-heading>p.launch-audience{font-size:12px;line-height:1.7;color:#929ba8;margin-top:25px}
.value-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:35px 0 0;gap:30px}
.value-path li{border-top:1px solid #ffffff22;padding-top:18px;min-width:0}.value-path span{display:block;font-size:11px;letter-spacing:.09em;color:#e2474f;margin-bottom:12px}.value-path strong{font-size:18px;font-weight:500;color:#fff;display:block;line-height:1.3}.value-path p{font-size:14px!important;line-height:1.6!important;margin:12px 0 0;color:#aeb6c2!important}
@media(max-width:900px){.fleet-board span,.fleet-desktop span{top:-26px}.launch-heading>p.launch-audience{font-size:12px;margin-top:22px}.launch-product{margin-top:60px}}
@media(max-width:600px){.fleet-board span,.fleet-desktop span{top:-24px}.launch-product{margin-top:52px}.launch-heading>p.launch-audience{font-size:11px;margin-top:20px}.value-path{display:block;margin-top:25px}.value-path li{padding-top:18px;margin-top:20px}.value-path span{font-size:10px}.value-path strong{font-size:18px}.value-path p{font-size:14px!important}}

/* finish.css */
/* Revision 18: a cinematic focus state with explicit motion control. */
html{scrollbar-gutter:stable}html:has(dialog:modal){overflow:hidden}
.launch{--immersion:0;min-height:205svh}
.launch-content{position:relative}
.launch .launch-heading{transform:translateX(calc(var(--immersion)*-38px));opacity:calc(1 - var(--immersion));will-change:transform,opacity}
.launch.is-immersed .launch-heading{visibility:hidden}
.launch .launch-visual{transform:translate(calc(var(--immersion)*-15vw),calc(var(--immersion)*-22px)) scale(calc(1 + var(--immersion)*.42));z-index:5;will-change:transform}
.fleet-board{transform:translate(calc(var(--immersion)*35px),calc(var(--immersion)*-65px));opacity:calc(1 - var(--immersion))}
.fleet-desktop{transform:translate(calc(var(--immersion)*-55px),calc(var(--immersion)*-40px));opacity:calc(1 - var(--immersion))}
.fleet-tablet{transform:translate(calc(var(--immersion)*65px),calc(var(--immersion)*32px));opacity:calc(1 - var(--immersion))}
.launch.is-immersed .fleet-device{visibility:hidden}
.launch-control{transform:translateX(calc(var(--immersion)*-18vw));position:relative;z-index:7}
.launch-atmosphere{opacity:calc(.13 - var(--immersion)*.08)}
.launch-fleet:before{content:'';position:absolute;inset:5% -3% 0 -4%;border-radius:50%;background:radial-gradient(ellipse,#497ca922,transparent 67%);filter:blur(20px);pointer-events:none}
.launch-settings{display:flex;align-items:center;gap:15px}.motion-toggle{border:0;border-left:1px solid #ffffff29;background:transparent;color:#b6c0cd;font:inherit;font-size:12px;min-height:44px;padding:8px 0 8px 15px;cursor:pointer}.motion-toggle:hover{color:#fff}.motion-toggle[aria-pressed=true]{color:#ff737a}
.launch[data-motion=off] .launch-progress,.launch[data-motion=off] .launch-scroll{display:none}
.launch[data-motion=off] .launch-visual,.launch[data-motion=off] .fleet-device,.launch[data-motion=off] .launch-control,.launch[data-motion=off] .launch-heading{transform:none!important;transition:none!important}
.fleet-device span,.fleet-laptop-label{font-size:12px}.launch-note{font-size:12px}.launch-steps button,.launch-brand{font-size:12px}.launch-steps button span,.launch-zoom,.launch-actions a{font-size:14px}.launch-heading>p.launch-audience{font-size:13px}
.journey-nav{padding-top:20px;padding-bottom:20px}.journey-nav a{font-size:14px}.journey-nav a[aria-current=true]{color:white}.journey-nav a[aria-current=true] span{background:#c00000;color:white;padding:5px 6px;border-radius:3px}
.device-gallery-heading{margin-bottom:40px}.device-picker{border-top:1px solid #ffffff12;padding-top:26px}.device-detail{gap:5%}.device-detail-visual{background:radial-gradient(ellipse at 50% 68%,#2d527a30,transparent 62%)}
.device-detail-visual>:is(img,luois-board){filter:drop-shadow(0 30px 30px #0009)}
.device-detail-copy>span{color:#ff626c}.device-detail-copy li{padding:12px 0}
/* Spotlight modules have an editorial hierarchy, not three identical boxes. */
.module-spotlight{display:grid;grid-template-columns:1.08fr 1fr;gap:0 6%;margin:50px 0 55px;padding:40px 0;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25}
.spotlight-intro{grid-column:1;grid-row:1/4;padding:10px 20px 20px 0;align-self:center}
.spotlight-intro>span{font-size:12px;color:#e9545d;letter-spacing:.1em}.spotlight-intro h3{font-size:clamp(38px,4vw,60px);line-height:1.04;letter-spacing:-.05em;margin:24px 0}.spotlight-intro>p{max-width:320px;color:#aeb8c5;font-size:17px;line-height:1.6}
.module-spotlight article{grid-column:2;border:0;border-bottom:1px solid #ffffff1c;border-radius:0;background:none;padding:25px 0;display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:20px;row-gap:10px;transition:background .2s,padding .2s;align-items:start}
.module-spotlight article:last-child{border-bottom:0}.module-spotlight article:hover,.module-spotlight article:focus-within{background:linear-gradient(90deg,#c000001a,transparent);padding-left:15px;border-color:#c0000080;transform:none}
.module-spotlight article>svg{grid-column:1;grid-row:1/4;margin:1px 0 0}.module-spotlight article h3{font-size:23px;line-height:1.2;margin:0;grid-column:2}.module-spotlight article p{grid-column:2;font-size:16px;line-height:1.6;margin:0}.module-spotlight .spotlight-open{grid-column:2;justify-self:start;min-height:44px;margin:0;padding:8px 0;font-size:14px}
.catalogue-tools{margin-bottom:30px}.catalogue-workspace{grid-template-columns:235px minmax(0,1fr);gap:36px}.catalogue-filter{position:sticky;top:112px;align-self:start}.catalogue-filter button{border-radius:5px}.catalogue-filter button[aria-pressed=true]{box-shadow:inset 3px 0 0 #e12b35}
.catalogue-results .catalogue-row{background:#181d24;padding:25px 28px;border-color:#ffffff15;transition:background .18s,border-color .18s;box-shadow:none}.catalogue-results .catalogue-row:hover,.catalogue-results .catalogue-row:focus-within{background:#271b22;border-color:#ad2c35}.catalogue-results .catalogue-row.is-selected{background:#2b191f;border-color:#b72934}
.catalogue-results .catalogue-row h3{font-size:23px;line-height:1.2}.catalogue-choice{min-height:44px;display:flex!important;align-items:center;gap:10px}.catalogue-choice input{width:19px;height:19px;accent-color:#c00000}
.module-selection-bar{background:#1a1e25;border:1px solid #ffffff20;border-radius:8px;padding:24px!important;margin-top:30px}.module-selection-bar p{line-height:1.6!important}.catalogue-clear{font-size:14px;min-height:44px;background:none;border:1px solid #59616e;color:#fff;border-radius:5px;padding:8px 15px;cursor:pointer;margin-top:12px}.catalogue-clear:hover{border-color:#c00000;background:#361b23}
/* Original photos gain space and a clear edge; captions remain readable. */
.field-stories-heading{max-width:none;display:grid;grid-template-columns:1.3fr .8fr;gap:0 8%;align-items:end;margin-bottom:55px}.field-stories-heading .eyebrow{grid-column:1/-1;font-size:12px}.field-stories-heading h2{margin:18px 0 0}.field-stories-heading>p:last-child{font-size:18px;margin:0}
.field-story{gap:7%;margin-top:55px}.field-story-photo{aspect-ratio:1.22;border-radius:4px}.field-story-photo img{transition:transform .7s cubic-bezier(.2,.65,.3,1)}.field-story-photo:hover img{transform:scale(1.035)}.field-story-photo figcaption{font-size:12px;letter-spacing:.055em}.field-story-photo:after{inset:55% 0 0;background:linear-gradient(transparent,#080d15c9)}
.field-story-reverse{margin-top:95px}.field-story h3{font-size:clamp(32px,3.5vw,50px)}.field-story-copy>p{line-height:1.7}.field-story-copy li{padding:14px 0}
.contact-dialog{width:min(740px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:28px}.contact-dialog-heading{margin:20px 0 25px!important;gap:20px!important}.contact-dialog-heading h2{font-size:34px!important;line-height:1.12!important;letter-spacing:-.04em}.contact-dialog-heading p{font-size:16px;line-height:1.6}.contact-module-options{margin-top:0}.contact-dialog .dialog-top{position:sticky;top:-28px;padding:12px 0;background:#222;z-index:3}.contact-fields input,.contact-fields select,.contact-fields textarea{font-size:16px!important}.contact-dialog .contact-status{border-left:3px solid #ce343c;background:#ffffff07;padding:13px 16px}.contact-send:disabled{cursor:not-allowed;opacity:.55}
:where(button,a,input,select,textarea):focus-visible{outline:2px solid #ff7880;outline-offset:4px}
@media(max-width:1100px){.catalogue-workspace{grid-template-columns:210px minmax(0,1fr);gap:22px}.launch-settings{display:block;text-align:right}.motion-toggle{display:block;border-left:0;padding-left:0}.launch-bottom{font-size:12px}.launch-phase{max-width:260px}.launch .launch-visual{transform:translate(calc(var(--immersion)*-12vw),0) scale(calc(1 + var(--immersion)*.28))}}
@media(max-width:900px){.launch{min-height:0}.launch .launch-heading{opacity:1;transform:none;will-change:auto}.launch .launch-visual,.fleet-device,.launch-control{transform:none!important;will-change:auto}.launch-settings{display:flex;text-align:center;gap:10px}.motion-toggle{border-left:1px solid #ffffff29;padding-left:12px}.launch-bottom{gap:12px}.launch-phase{max-width:none}.module-spotlight{grid-template-columns:.85fr 1.2fr;gap:0 6%}.spotlight-intro h3{font-size:42px}.module-spotlight article{padding:22px 0}.field-stories-heading{display:block}.field-stories-heading>p:last-child{margin-top:22px;max-width:650px}.field-story h3{font-size:34px}}
@media(max-width:700px){.catalogue-workspace{display:block}.catalogue-filter{position:static}.module-spotlight{display:block;padding:25px 0;margin:30px 0}.spotlight-intro{padding:0 0 20px}.spotlight-intro h3{font-size:36px;margin:18px 0}.spotlight-intro h3 br{display:initial}.spotlight-intro h3{max-width:440px}.spotlight-intro p{max-width:none}.module-spotlight article{grid-template-columns:26px minmax(0,1fr);gap:10px 15px;padding:23px 0}.module-spotlight article h3{font-size:22px}.module-selection-bar{padding:20px!important}.field-stories-heading h2{font-size:40px}.field-stories-heading>p:last-child{font-size:17px}.field-story-photo{aspect-ratio:1.2}.field-story h3{font-size:32px}.field-story-reverse{margin-top:60px}.field-story-photo figcaption{font-size:12px;left:18px;right:18px;bottom:18px}}
@media(max-width:600px){.launch-brand{font-size:10px}.launch-heading>p.launch-audience{font-size:12px}.fleet-device span,.fleet-laptop-label{font-size:12px}.fleet-device span{gap:4px}.fleet-device b,.fleet-laptop-label b{font-size:12px}.launch-steps button span{font-size:13px}.launch-zoom{font-size:14px}.launch-settings{flex-wrap:wrap;justify-content:center}.launch-note{font-size:12px}.journey-nav a{font-size:14px}.launch-control{gap:4px;margin-bottom:14px}.launch-control .launch-steps{max-width:100%}.launch-control .launch-steps button{padding:7px 9px}.launch-phase{font-size:13px}.device-picker strong{font-size:12px}.value-path span{font-size:12px}.value-path p{font-size:16px!important}.contact-dialog{padding:20px}.contact-dialog .dialog-top{top:-20px}.contact-dialog-heading{display:block!important;margin:12px 0 20px!important}.contact-dialog-heading>img{display:none}.contact-dialog-heading h2{font-size:28px!important;max-width:370px}.contact-dialog-heading p{font-size:15px;line-height:1.5}.contact-module-options{padding:15px!important}.contact-dialog-heading h2+p{margin-top:12px}.contact-fields{gap:17px}.contact-status{font-size:13px!important}}
@media(prefers-reduced-motion:reduce){.launch{min-height:0}.launch .launch-heading{opacity:1;transform:none}.launch .launch-visual,.fleet-device,.launch-control{transform:none!important;will-change:auto}.field-story-photo img,.module-spotlight article,.catalogue-results .catalogue-row{transition:none}.field-story-photo:hover img{transform:none}.motion-toggle{display:none}}
.launch-bottom .motion-toggle{border:0;border-left:1px solid #ffffff29;background:none;color:#b6c0cd;border-radius:0;padding:8px 0 8px 15px;font-size:12px;min-height:44px;box-shadow:none}.launch-bottom .motion-toggle:hover{background:none;color:#fff}.launch-bottom .motion-toggle[aria-pressed=true]{color:#ff737a}
@media(max-width:1100px) and (min-width:901px){.launch-bottom .motion-toggle{border-left:0;padding-left:0}}
@media(prefers-reduced-motion:reduce){.launch-bottom .motion-toggle{display:none}}
.launch .launch-visual{z-index:3}.launch.is-immersed .launch-visual{z-index:5}
/* Revision 19: stable map flow, front-facing devices and the LUOIS document window. */
.product-tour .tour-options{position:static;top:auto;z-index:auto}
.tour-display{position:relative;min-width:0;z-index:0}
.plan-open{display:inline-flex;align-items:center;min-height:44px;margin:20px 0 8px;padding:12px 18px;background:#c00000;border:1px solid #e23d3d;color:white;font:inherit;font-size:14px;cursor:pointer}
.plan-open:hover{background:#a80000}.plan-open[hidden]{display:none}
.plan-dialog{padding:0;border:1px solid #555;border-radius:0;width:min(1220px,calc(100vw - 48px));max-width:none;height:min(920px,calc(100dvh - 64px));max-height:none;color:#262626;background:#e9e6e2;box-shadow:0 24px 90px #0009;overflow:hidden}
.plan-dialog[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}
.plan-dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}
.plan-dialog>header{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:6px solid #c00000;padding:14px 20px;color:white;background:#292929}
.plan-dialog header small{display:block;color:#ff626c;font-size:11px;font-weight:700;letter-spacing:.12em;margin-bottom:7px}
.plan-dialog h2{margin:0!important;font-size:22px!important;letter-spacing:-.02em;line-height:1.25}
.plan-dialog button,.plan-dialog footer a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid #5f5f5f;padding:8px 14px;color:white;background:#3b3b3b;font:inherit;font-size:14px;cursor:pointer;text-decoration:none}
.plan-dialog button:hover{background:#c00000}.plan-dialog button:disabled{opacity:.35;cursor:default;background:#3b3b3b}
.plan-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid #cac6c2;background:#dedbd7}
.plan-toolbar p{font-size:13px;line-height:1.4;margin:0;color:#45413e}.plan-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.plan-controls output{min-width:55px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}
.plan-viewport{overflow:auto;min-height:0;padding:24px;overscroll-behavior:contain;background:#ccc8c3}
.plan-viewport img{display:block;width:100%;height:auto;max-width:none;box-shadow:0 4px 18px #0003;margin:auto;object-fit:contain}
.plan-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;margin:0;border:0;background:#292929;color:#d5d5d5;font-size:12px;line-height:1.4}
.plan-dialog footer a{background:#c00000;border-color:#c00000}
.pricing-dialogue{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;margin-top:60px;padding-top:45px;border-top:1px solid #29292930}
.pricing-dialogue .eyebrow{font-size:12px;color:#a60000}.pricing-dialogue h3{font-size:clamp(32px,3.5vw,50px);line-height:1.08;letter-spacing:-.045em;margin:20px 0 0}
.pricing-dialogue p{font-size:17px;line-height:1.65;margin:0 0 17px;max-width:650px}.pricing-dialogue .text-link{color:#a00000}
.company-grid{position:relative;isolation:isolate;grid-template-columns:1.05fr 1fr;gap:0;min-height:650px;overflow:hidden;border-radius:5px}
.company-grid>.company-photo{grid-column:1/-1;grid-row:1;position:absolute;inset:0;margin:0;border:0;border-radius:0;overflow:hidden}
.company-photo>img{position:absolute;width:76%;height:100%;left:24%;top:0;aspect-ratio:auto;object-fit:cover;object-position:center 54%;filter:none;transform:none}
.company-grid .company-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#171b22 0%,#171b22 27%,#171b22ee 36%,#171b22a8 48%,#171b2210 69%,transparent 100%)}
.company-photo figcaption{position:absolute;right:28px;bottom:25px;left:auto;z-index:1;display:block;padding:8px 12px;background:#121b29cc;border-left:2px solid #c00000;font-size:12px}.company-photo figcaption span{display:block;color:#d7dce5}
.company-grid>.company-copy{position:relative;grid-column:1;grid-row:1;z-index:1;padding:48px 25px 48px 35px;max-width:none;align-self:center}
.company-feature-logo{max-width:300px;margin:5px 0 30px}.company-copy .startup-tag{border:0;padding:0;color:#e7757b;font-size:10px;letter-spacing:.09em;margin-bottom:20px}
.company-copy h3{font-size:clamp(34px,3.5vw,54px);line-height:1.07;margin:0 0 26px}.company-copy p{font-size:16px;line-height:1.7;color:#c3cad4}.company-copy .text-link{font-size:15px}
@media(max-width:900px){.company-grid{display:flex;flex-direction:column;min-height:0;background:#171b22}.company-grid>.company-photo{position:relative;inset:auto;width:100%;aspect-ratio:1.65;order:0}.company-photo>img{width:100%;left:0;object-position:center 54%}.company-grid .company-photo:after{background:linear-gradient(0deg,#171b22 0%,transparent 35%)}.company-grid>.company-copy{order:1;padding:24px 30px 36px;width:100%}.company-photo figcaption{bottom:30px;right:24px}.company-feature-logo{max-width:290px}.company-copy h3{font-size:42px}.pricing-dialogue{gap:5%}}
@media(max-width:600px){.plan-dialog{width:calc(100vw - 16px);height:calc(100dvh - 24px)}.plan-dialog>header{padding:12px;gap:10px}.plan-dialog h2{font-size:18px!important}.plan-dialog header small{font-size:9px}.plan-dialog .plan-back{padding:8px 12px}.plan-toolbar{align-items:flex-start;flex-direction:column;padding:12px;gap:10px}.plan-controls{width:100%;gap:5px}.plan-controls button{padding:8px 11px}.plan-controls output{min-width:48px}.plan-viewport{padding:12px}.plan-dialog>footer{padding:12px;align-items:flex-start;flex-direction:column;gap:8px}.plan-dialog footer a{width:100%}.pricing-dialogue{display:block;margin-top:35px;padding-top:30px}.pricing-dialogue h3{margin-bottom:25px}.pricing-dialogue p{font-size:16px}.company-grid>.company-copy{padding:15px 20px 28px}.company-grid>.company-photo{aspect-ratio:1.28}.company-copy h3{font-size:36px}.company-photo figcaption{font-size:10px;right:15px;bottom:25px}.company-feature-logo{max-width:270px}.company-copy p{font-size:16px}}
.pricing-dialogue{border-top-color:#ffffff26}.pricing-dialogue .eyebrow,.pricing-dialogue .text-link{color:#ff7880}
/* Revision 20: native record fields, neutral product plans, physical hinge. */
.launch .launch-visual{perspective:1600px;perspective-origin:50% 93.2496%;transform-style:preserve-3d}
.launch .launch-login{transform:rotateX(var(--lid-angle,0deg));transform-origin:50% 93.2496%;backface-visibility:hidden;opacity:var(--lid-opacity,1);z-index:2}
.launch .launch-laptop-base{z-index:1;pointer-events:none}
.fleet-laptop-label{z-index:4}.launch-control{justify-content:center}
.water-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-100%);width:44px;height:48px;background:#247ae0;color:#fff;border:2px solid white;border-radius:6px 6px 16px 16px;box-shadow:0 3px 9px #0008;cursor:pointer;display:grid;place-items:center;z-index:2}
.water-pin.well{background:#239164}.water-pin svg{width:30px;height:30px}.water-pin span{position:absolute;top:calc(100% + 5px);left:50%;transform:translateX(-50%);padding:4px 7px;background:#222;color:#fff;font-size:11px;white-space:nowrap;border-radius:3px}
.water-pin:hover,.water-pin:focus-visible{outline:3px solid #fff;outline-offset:4px;filter:brightness(1.15)}
.water-instruction{padding:20px 25px;margin:0;background:#242424;color:#d1d1d1;font-size:15px;line-height:1.65}
.water-dialog{width:min(610px,calc(100vw - 32px));max-width:none;height:min(900px,calc(100dvh - 48px));max-height:none;padding:0;border:1px solid #555;border-radius:3px;background:#222;color:#fff;overflow:hidden;box-shadow:0 30px 100px #000b}
.water-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.water-dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}
.water-dialog header{display:grid;grid-template-columns:42px 1fr 44px;gap:16px;align-items:center;padding:23px;border-bottom:1px solid #3b3b3b;background:#252525}
.water-symbol{display:grid;place-items:center;width:40px;height:40px;background:#247ae0;border-radius:2px}.water-symbol svg{width:28px;height:28px}.water-symbol.is-well{background:#239164}
.water-dialog header p{margin:0 0 7px;color:#aaa;font-size:11px;letter-spacing:.12em}.water-dialog h2{margin:0 0 7px;font-size:22px;line-height:1.3;letter-spacing:-.02em}.water-dialog #water-id{color:#e9953f;font-size:15px;font-weight:700}
.water-close{min-height:44px;min-width:44px;cursor:pointer;border:1px solid #555;background:#343434;color:#fff;font:inherit;padding:8px 14px}.water-close:hover{background:#c00000}.water-dialog header .water-close{border:0;font-size:27px;background:transparent}
.water-content{padding:24px;overflow:auto;overscroll-behavior:contain}.water-status{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:21px}.water-status span{background:#245e42;color:#d8f8e5;padding:6px 9px;font-size:11px;font-weight:700}.water-status small{color:#aaa;font-size:12px}
.water-road{padding:15px;border-left:3px solid #2679e8;background:#2c2c2c;margin-bottom:14px}.water-road small{display:block;font-size:10px;color:#bbb;line-height:1.6;margin-bottom:6px}.water-road strong{font-size:15px;font-weight:500}
#water-fields{margin:0}#water-fields>div{padding:13px 0;border-bottom:1px solid #3b3b3b}#water-fields dt{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#aaa;margin-bottom:6px}#water-fields dd{font-size:16px;line-height:1.5;margin:0;color:#fff}
.water-note{font-size:12px;line-height:1.6;color:#bbb;padding:15px;background:#2b2b2b;border-left:3px solid #c00000;margin:24px 0 0}.water-dialog footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 24px;border-top:1px solid #444;margin:0;color:#aaa;font-size:12px}.water-dialog footer button{font-size:14px}
.worksheet-link{margin:15px 0 0!important;padding:12px 0!important;border:0;border-bottom:1px solid #c00000!important;background:none;color:#ff8a8a;font:inherit;cursor:pointer}
.integration-path{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:25px;padding:22px 0;border-top:1px solid #ffffff25}.integration-path span{padding:12px 16px;border:1px solid #ffffff28;font-size:14px}.integration-path b{color:#e8555e;font-size:20px}
@media(max-width:600px){.water-pin{width:35px;height:41px;min-width:35px}.water-pin svg{width:25px;height:25px}.water-pin span{font-size:10px}.water-instruction{padding:18px;font-size:14px}.water-dialog{width:calc(100vw - 16px);height:calc(100dvh - 24px)}.water-dialog header{padding:17px;gap:10px;grid-template-columns:35px 1fr 40px}.water-symbol{width:35px;height:35px}.water-dialog h2{font-size:18px}.water-content{padding:18px}.water-dialog footer{padding:12px 18px}.water-dialog footer span{max-width:90px}.integration-path{gap:7px}.integration-path span{font-size:12px;padding:10px}}
@media(prefers-reduced-motion:reduce){.launch .launch-login{transform:none}}

.launch .fleet-laptop-label{opacity:calc(1 - var(--immersion));transition:opacity .1s}.launch .launch-control{opacity:calc(1 - var(--closure,0))}
.launch-outcome{position:absolute;z-index:6;left:8%;right:8%;top:24%;text-align:center;opacity:clamp(0,calc((var(--closure,0) - .4)*2),1);transform:translateY(calc((1 - var(--closure,0))*16px));pointer-events:none}
.launch-outcome:not([inert]){pointer-events:auto}.launch-outcome>p{font-size:12px;letter-spacing:.13em;color:#e78389;margin:0 0 24px}.launch-outcome h2{font-size:clamp(34px,4.4vw,64px);line-height:1.1;letter-spacing:-.045em;margin:0 0 24px;color:#fff}.launch-outcome>span{display:block;font-size:17px;color:#b8c2cf}.launch-outcome>a{display:inline-block;margin-top:25px;padding:12px 0;color:#fff;text-decoration:none;border-bottom:1px solid #b3272d;font-size:15px}
.worksheet-link{display:block}.worksheet-link[hidden]{display:none}
@media(max-width:900px),(prefers-reduced-motion:reduce){.launch-outcome{display:none}}

/* Revision 21: native document views and a clean physical hinge. */
.plan-view-switch{display:flex;gap:6px;margin-top:8px}.plan-view-switch[hidden]{display:none}.plan-view-switch button{min-height:36px;padding:6px 13px}.plan-view-switch button[aria-pressed=true]{background:#c00000;border-color:#c00000}.plan-toolbar>div:first-child{min-width:0}.plan-toolbar p{margin:0}.launch-outcome>a{opacity:clamp(0,calc((var(--closure,0) - .94)/.06),1)}
@media(min-width:901px) and (max-height:800px){.launch-fleet{margin-top:32px;transform:scale(.92);transform-origin:50% 60%}.launch-control{margin-top:-6px}}

/* Revision 23: the lid meets the front body; closed edge stays physically attached. */
.launch .launch-login{transform:rotateX(var(--lid-angle,0deg)) scaleX(calc(1 + var(--closure,0)*.025))}
.launch-lid-edge{position:absolute;left:.18%;right:.18%;top:92.12%;height:1.68%;z-index:3;pointer-events:none;border-radius:8px 8px 2px 2px;background:linear-gradient(180deg,#747b83 0%,#c2c7cd 14%,#90969e 27%,#747b84 70%,#505760 89%,#262c33 100%);border-top:1px solid #d5d9df;box-shadow:0 1px 0 #0c1017;opacity:clamp(0,calc((var(--closure,0) - .82)/.16),1);transform-origin:50% 100%;transform:scaleY(calc(.3 + var(--closure,0)*.7))}
.product-context{max-width:1440px;margin:0 auto;padding:28px clamp(20px,5vw,80px);border-top:1px solid #ffffff17;border-bottom:1px solid #ffffff17;color:#aeb8c5;display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:start;font-size:13px;line-height:1.65;background:#171c23}
.product-context strong{color:#dce2e9;font-weight:600}.product-context p{margin:0;max-width:790px}
.water-pin,.water-pin.well{background:transparent;border:0;border-radius:0;box-shadow:none;width:44px;height:48px;padding:0;min-width:44px;color:white}
.water-pin svg{width:35px;height:44px;filter:drop-shadow(0 2px 3px #0007)}
.water-pin:hover,.water-pin:focus-visible{filter:none;outline:0}.water-pin:hover svg,.water-pin:focus-visible svg{filter:drop-shadow(0 0 3px white) drop-shadow(0 2px 4px #0008)}
.water-pin:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:8px}
.water-symbol,.water-symbol.is-well{background:transparent}.water-symbol svg{height:40px;width:32px}
@media(max-width:600px){.product-context{display:block;padding:24px 20px}.product-context strong{display:block;margin-bottom:8px}.water-pin,.water-pin.well{width:44px;height:44px;min-width:44px}.water-pin svg{width:29px;height:36px}}

.map-key.hydrant>svg,.map-key.well>svg{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;width:25px;height:32px}

/* editorial.css */
/* Revision 22 · Product-led typography using the existing LUOIS typeface. */
.launch h1{font-size:clamp(58px,5.55vw,98px);line-height:.99;letter-spacing:-.055em;font-weight:750;margin:0;text-wrap:initial}
.launch h1 span{margin-top:.06em;white-space:nowrap}
.launch h1 span:after{width:38%;height:4px;bottom:-15px;left:3px;background:#c00000;box-shadow:none}
.launch .launch-lead{font-size:clamp(16px,1.3vw,20px);line-height:1.65;max-width:440px;margin:35px 0 26px;color:#c8cbd1}
.launch-brand{letter-spacing:.09em;color:#bdc2ca;margin-bottom:30px}
.launch-actions .button{padding:16px 21px;min-height:54px;font-size:14px;border-radius:4px}
.launch-actions{gap:19px}.launch-actions>a{font-size:14px}
.launch .launch-audience{max-width:390px;color:#a9b0b9;font-size:12px;margin-top:24px}
.launch-sticky:before{background:linear-gradient(0deg,#0b0d10 1%,transparent 45%),radial-gradient(ellipse at 86% 50%,#264d733d,transparent 60%),radial-gradient(ellipse at 22% 95%,#c0000015,transparent 55%)}
.launch-outcome h2{font-size:clamp(44px,5.3vw,76px);font-weight:700;line-height:1.02;letter-spacing:-.05em}
.launch-outcome>p{color:#c4c8d0;font-size:11px;letter-spacing:.15em}.launch-outcome>span{color:#bbc0c9}
#system.brand-signature{background:#17191d;padding-top:60px;padding-bottom:65px;border-bottom:1px solid #ffffff12}
#system.brand-signature>img{width:88px;height:88px}
#system.brand-signature>div>p{max-width:960px;font-size:17px;line-height:1.7;color:#aeb5bf}
#system.brand-signature>div>p>strong{display:block;color:#f0f1f4;font-weight:500;font-size:20px;margin:16px 0 8px}
.value-path{gap:42px;margin-top:34px}.value-path li{border-color:#ffffff20;padding-top:20px}.value-path strong{font-size:19px;font-weight:550}.value-path span{font-size:10px;letter-spacing:.12em}
.device-gallery-heading h2,.tour-heading h2,.catalogue-heading h2,.field-stories-heading h2,.customization h2,.deployment h2,.contact h2{font-size:clamp(42px,4.55vw,74px);line-height:1.04;letter-spacing:-.047em;font-weight:650;text-wrap:balance}
.device-gallery-heading,.catalogue-heading,.field-stories-heading{gap:6%;align-items:end}
.device-gallery-heading>p,.catalogue-heading>p,.field-stories-heading>p:last-child{font-size:17px;line-height:1.7;max-width:420px;color:#b8bec8}
.device-gallery .eyebrow,.catalogue-heading .eyebrow,.field-stories-heading>.eyebrow{font-size:10px;letter-spacing:.14em;color:#adb5c0;margin-bottom:23px}
.section-label{font-size:10px;letter-spacing:.13em;margin-bottom:46px;padding-bottom:20px}
.tour-heading>p.eyebrow{font-size:10px;letter-spacing:.14em}
.device-detail h3,.field-story h3{font-size:clamp(30px,3vw,45px);line-height:1.12;letter-spacing:-.035em;font-weight:600}
.spotlight-intro h3{font-size:clamp(29px,3vw,43px);line-height:1.13;letter-spacing:-.035em;max-width:390px}
.module-spotlight{padding:34px 0 40px;margin-top:40px}.module-spotlight article{border-top:1px solid #ffffff20}
.catalogue-results .catalogue-row{border-radius:6px}.catalogue-results .catalogue-row h3{letter-spacing:-.018em}
.company-copy h3{font-size:clamp(34px,3.6vw,56px);line-height:1.07;letter-spacing:-.04em}.company-copy .startup-tag{color:#bec5d0;font-size:10px;letter-spacing:.13em}
.contact h2{color:#fff;font-size:clamp(48px,5.8vw,88px)}.contact h2 span{color:#fff}.contact-box h3{font-size:clamp(28px,2.7vw,40px);line-height:1.13;letter-spacing:-.035em}.contact-grid>div>p{font-size:18px;line-height:1.7}
@media(min-width:901px) and (max-width:1150px){.launch h1{font-size:clamp(48px,5.4vw,63px)}.launch .launch-lead{font-size:16px}.launch-actions{gap:12px}.launch-actions .button{padding:14px;font-size:13px}.launch-actions>a{font-size:13px}}
@media(max-width:900px){.launch h1{font-size:clamp(52px,8.4vw,78px);line-height:1.02}.launch h1 span{display:inline-block}.launch h1 span:after{left:31%;width:38%;bottom:-14px}.launch .launch-lead{font-size:18px;max-width:520px;margin:32px auto 24px}.launch .launch-audience{margin:22px auto 0;max-width:440px}.device-gallery-heading h2,.tour-heading h2,.catalogue-heading h2,.field-stories-heading h2,.customization h2,.deployment h2{font-size:clamp(40px,6.8vw,60px)}.device-gallery-heading>p,.catalogue-heading>p,.field-stories-heading>p:last-child{max-width:650px;font-size:17px}.company-copy h3{font-size:44px}.contact h2{font-size:64px}.value-path{gap:22px}}
@media(max-width:600px){.launch h1{font-size:clamp(44px,12vw,66px);letter-spacing:-.055em}.launch-brand{margin-bottom:28px}.launch .launch-lead{font-size:17px;line-height:1.65;max-width:355px;margin-top:32px}.launch .launch-audience{font-size:12px;line-height:1.7}.launch-actions{flex-direction:column;gap:13px}.launch-actions .button{font-size:14px;padding:16px 22px}.launch-actions>a{font-size:14px}.launch-product{margin-top:50px}.section-label{font-size:9px;line-height:1.5;gap:20px;margin-bottom:32px}.section-label>span:last-child{max-width:145px}#system.brand-signature{padding-top:42px;padding-bottom:42px}#system.brand-signature>div>p{font-size:16px}#system.brand-signature>div>p>strong{font-size:19px}#system.brand-signature>img{width:66px;height:66px}.device-gallery-heading h2,.tour-heading h2,.catalogue-heading h2,.field-stories-heading h2,.customization h2,.deployment h2{font-size:clamp(34px,9.7vw,48px);line-height:1.07;text-wrap:initial}.device-gallery-heading>p,.catalogue-heading>p,.field-stories-heading>p:last-child{font-size:16px;line-height:1.7}.spotlight-intro h3{font-size:32px}.field-story h3,.device-detail h3{font-size:30px;line-height:1.13}.company-copy h3{font-size:36px}.contact h2{font-size:clamp(43px,12vw,60px)}.contact-box h3{font-size:30px}.contact-grid>div>p{font-size:17px}.value-path{margin-top:25px}.value-path li{padding-top:19px}.module-spotlight{padding:25px 0}.catalogue-results .catalogue-row{border-radius:6px}}

/* precision.css */
/* LUOIS product precision: genuine map backgrounds with functional controls. */
.sample-note{font-size:11px!important;line-height:1.5!important;color:#aaa!important;max-width:410px;margin:16px 0 0!important}
.map-shell{border:1px solid #383b40;border-radius:8px;overflow:hidden;background:#202226}
.map-tools{display:flex;flex-wrap:wrap;gap:8px;padding:12px;background:#252629;align-items:center;justify-content:flex-start}
.map-background-controls,.map-colour-controls{display:flex;gap:3px;padding:0;background:transparent}
.map-tools button{color:#ddd;border:1px solid #47484c;background:#28292d;border-radius:3px;min-height:44px;padding:10px 15px;font:700 12px var(--font-body,Arial),sans-serif;cursor:pointer}
.map-tools button[aria-pressed=true],.map-tools button[aria-expanded=true]{background:#c00000;color:white;border-color:#c00000}
.map-tools button:hover{border-color:#e43d3d}.map-tools .layer-toggle{margin-left:auto}
.map-layer-panel{margin:0;padding:10px 18px 16px;border:0;background:#292b2f;display:flex;gap:24px;flex-wrap:wrap;color:white}
.map-layer-panel[hidden]{display:none}.map-layer-panel legend{font-size:11px;color:#bbb;padding-top:14px}.map-layer-panel label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;min-height:36px}.map-layer-panel input{width:17px;height:17px;accent-color:#c00000}
.map-window{position:relative;overflow:auto;overscroll-behavior:contain}.interactive-demo{min-width:100%;width:100%;aspect-ratio:2720/1710}.interactive-demo>.demo-map-base{width:100%;height:auto;display:block;filter:none!important;opacity:1!important}.interactive-demo>.demo-map-base.is-grayscale{filter:grayscale(1)!important}
.interactive-demo [hidden]{display:none!important}.map-bottom{padding:10px 14px;background:#222428;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.map-bottom small{font-size:10px;color:#c4c4c6}.map-bottom .map-zoom-buttons{display:flex;align-items:center;gap:8px}.map-zoom-buttons button{min-width:38px;min-height:38px;font-size:12px;padding:8px 10px}.map-zoom-buttons output{font-size:11px;min-width:40px;text-align:center}
.map-context{padding:22px 4px 4px;background:transparent;border:0}.map-context strong{display:block;font-size:17px;color:#fff}.map-context p{font-size:14px!important;color:#bfc2c7!important;line-height:1.7;margin:8px 0 0!important;max-width:78ch}
.object-demo .demo-pin{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;width:44px!important;height:44px!important;padding:0;display:grid;place-items:center;min-width:44px;min-height:44px}.object-demo .demo-pin svg{width:26px;height:34px;display:block;filter:drop-shadow(0 2px 2px #0006)}.object-demo .demo-pin span{position:absolute;left:29px;top:3px;color:#fff;background:#28292d;border-radius:3px;padding:2px 4px;font-size:10px}.demo-pin:hover svg{filter:drop-shadow(0 0 4px #ef7d00)}
.record-dialog .record-close{border:1px solid #515259;background:#28292d;color:#fff;border-radius:5px;min-width:44px;min-height:44px;padding:8px 15px;cursor:pointer}.record-dialog #record-plan{margin:24px 0 4px;max-width:100%;text-align:left}.record-dialog #record-fields{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.record-dialog #record-fields>div{padding:14px;background:#282a2e;border:1px solid #3e4147;border-radius:5px}.record-dialog dt{font-size:11px;color:#adb1b7;line-height:1.5}.record-dialog dd{font-size:14px;color:white;line-height:1.55;margin:5px 0 0}.record-dialog #record-fields>div:nth-child(5),.record-dialog #record-fields>div:last-child{grid-column:1/-1}
.plan-viewport{cursor:grab;touch-action:pan-x pan-y}.plan-viewport.is-dragging{cursor:grabbing}.plan-viewport img{user-select:none;-webkit-user-drag:none}.plan-dialog footer span{font-size:11px}
.connection-diagram{padding:72px max(6vw,24px);background:#181a1e;color:#eee;overflow:hidden}.connection-heading{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.12em;color:#bfc2c7;max-width:1160px;margin:0 auto 30px}.connection-body{display:grid;grid-template-columns:230px minmax(100px,1fr) 240px;align-items:center;max-width:1160px;margin:auto;height:330px}.connection-inputs{height:100%;display:grid;grid-template-rows:repeat(5,1fr)}.connection-inputs>div{display:flex;align-items:center;gap:15px;border-bottom:1px solid #393c44;font-size:15px}.connection-inputs b{color:#ee565d;font-size:11px;font-weight:600}.connection-body>svg{width:100%;height:330px;overflow:visible}.connection-body>svg path{fill:none;stroke:#7c444b;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:8 5;animation:connection-flow 15s linear infinite}.connection-destination{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:20px;background:radial-gradient(ellipse,#a52a3122,transparent 72%)}.connection-destination img{width:150px;height:150px;object-fit:contain}.connection-destination strong{font-size:20px}.connection-destination span{font-size:12px;color:#bfc2c7}.connection-diagram>p{font-size:15px;line-height:1.8;color:#bfc2c7;max-width:800px;margin:35px auto 0;text-align:center}@keyframes connection-flow{to{stroke-dashoffset:-130}}
@media(prefers-reduced-motion:reduce){.connection-body>svg path{animation:none}}
@media(max-width:600px){.map-tools{gap:6px;padding:8px}.map-tools button{padding:7px 10px;font-size:11px}.map-tools .layer-toggle{margin-left:0}.map-bottom{padding:8px}.map-bottom small{order:2;font-size:9px}.map-context{padding:16px 0}.map-context p{font-size:13px!important}.map-context strong{font-size:15px}.record-dialog #record-fields{grid-template-columns:1fr}.record-dialog #record-fields>div{grid-column:1!important}.record-dialog header h2{font-size:21px}.connection-body{grid-template-columns:128px minmax(30px,1fr) 126px;height:280px}.connection-body>svg{height:280px}.connection-destination{padding:0;gap:6px}.connection-destination img{width:94px;height:94px}.connection-destination strong{font-size:14px}.connection-destination span{font-size:10px}.connection-inputs>div{font-size:12px;gap:9px}.connection-heading{font-size:9px;letter-spacing:.06em}.connection-diagram{padding:48px 20px}.connection-diagram>p{font-size:13px;text-align:left}.plan-dialog footer span{max-width:150px;font-size:10px}}

.journal-preview{width:min(1100px,94vw);max-height:90dvh;background:#202226;color:#f1f2f3;border:1px solid #555;border-radius:12px;padding:30px;overflow:auto}.journal-preview h2{font-size:clamp(26px,4vw,44px);line-height:1.12;margin:28px 0 20px}.journal-preview p{color:#bfc2c7;line-height:1.7}.journal-table-scroll{overflow:auto;margin:26px 0;border:1px solid #4a4d52;border-radius:5px}.journal-preview table{border-collapse:collapse;width:100%;min-width:720px;font-size:13px;line-height:1.5}.journal-preview th{background:#2e3035;text-align:left;padding:14px;color:#ccc;font-size:11px}.journal-preview td{padding:16px 14px;border-top:1px solid #3e4146}.journal-preview td:nth-child(3){min-width:250px}.journal-invitation{padding-top:6px}.journal-invitation h3{font-size:20px}.journal-invitation .button{margin-top:12px}.journal-preview::backdrop{background:#000b;backdrop-filter:blur(8px)}@media(max-width:600px){.journal-preview{padding:20px}.journal-preview h2{font-size:29px}}
body:has(.launch[data-motion="off"]) .connection-body>svg path{animation:none}
.connection-body>svg path{stroke:#b76c77;stroke-width:1.7}

/* native-preview.css */
/* Source design: LUOIS app/globals.css detail-panel and object-document-dialog;
   app/map-view-controls.tsx. Touch targets enlarged for the public preview. */
.map-tools{gap:8px;background:#252525;border-bottom:1px solid #3b3b3b;border-radius:0}
.map-tools button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:2px;font-size:12px;background:#292929}
.map-tools button svg{flex:none;width:16px;height:16px}
.map-shell{border-radius:2px;background:#222}.map-tools .layer-toggle{margin-left:0}
.map-background-controls,.map-colour-controls{gap:0;border:1px solid #555;border-radius:2px;overflow:hidden}
.map-background-controls button,.map-colour-controls button{border:0;border-radius:0}
.map-background-controls button+button,.map-colour-controls button+button{border-left:1px solid #555}
.screenshot-heading{gap:18px;flex-wrap:wrap}
.object-plan-entry{display:inline-flex;align-items:center;gap:14px;min-height:44px;padding:10px 15px;border:1px solid #b33434;border-radius:2px;background:#c00000;color:#fff;font:700 12px Arial,sans-serif;cursor:pointer;text-align:left}
.object-plan-entry:hover{background:#a60000}.object-plan-entry:focus-visible{outline:3px solid #fff;outline-offset:3px}
.water-dialog{width:min(1120px,calc(100vw - 40px));height:min(790px,calc(100dvh - 48px));background:#222;border-radius:2px}
.water-dialog[open]{display:grid;grid-template-columns:minmax(0,1fr) 390px;grid-template-rows:minmax(0,1fr)}
.native-detail-pane{min-height:0;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#222;color:#fff;border-left:1px solid #3a3a3a}
.native-detail-pane header{min-height:100px;grid-template-columns:40px minmax(0,1fr) 44px;gap:13px;padding:18px 17px;background:#222}
.native-detail-pane header p{font-size:9px;font-weight:800;letter-spacing:.09em;color:#a0a0a0;margin:0 0 4px}
.native-detail-pane header h2{font-size:17px!important;line-height:1.25;letter-spacing:0;margin:0 0 5px!important;overflow-wrap:anywhere}
.native-detail-pane header #water-id,.native-detail-pane header #record-id{font-size:12px;color:#f0a514;font-weight:800}
.native-detail-pane .water-symbol{width:40px;height:40px;border-radius:2px;background:#1976d2;display:grid;place-items:center}
.native-detail-pane .water-symbol.is-well{background:#2e8b57}.native-detail-pane #record-symbol{background:#ef7d00}
.native-detail-pane .water-symbol svg{width:24px;height:29px}
.native-detail-pane header button{background:transparent;border:0;color:#aaa;font-size:23px;padding:0;align-self:start;border-radius:0}
.native-detail-pane .water-content{min-height:0;padding:18px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.native-detail-pane .water-status{margin:0 0 20px;gap:10px}.native-detail-pane .water-status span{font-size:9px;letter-spacing:.06em;padding:6px 8px;color:#7edc89;background:rgba(58,155,68,.15)}.native-detail-pane .water-status small{font-size:9px;color:#aaa}
.native-detail-pane .water-road{padding:14px;margin:0 0 14px;background:#2c2c2c;border-left:3px solid #c00000}.native-detail-pane .water-road small{font-size:8px;letter-spacing:.08em;color:#aaa}.native-detail-pane .water-road strong{font-size:12px;line-height:1.4}
.native-detail-pane #water-fields,.record-dialog .native-detail-pane #record-fields{display:grid;grid-template-columns:1fr;gap:0;margin:0}
.native-detail-pane #water-fields>div,.record-dialog .native-detail-pane #record-fields>div{grid-column:1;padding:11px 0;border:0;border-bottom:1px solid #353535;border-radius:0;background:transparent}
.native-detail-pane dl dt{margin:0 0 4px;color:#aaa;font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.native-detail-pane dl dd{margin:0;color:#fff;font-size:13px;line-height:1.45}
.native-detail-pane .water-note{background:transparent;padding:0;border:0;color:#aaa;font-size:11px}
.native-detail-pane footer{display:flex;flex-direction:column;align-items:stretch;gap:9px;padding:16px;border-top:1px solid #3b3b3b;font-size:10px}
.native-detail-pane footer span{max-width:none;color:#aaa}.native-detail-pane footer button{width:100%;border:1px solid #515151;border-radius:2px;background:#292929;font-size:12px;min-height:44px}.native-detail-pane footer button:hover{background:#c00000}
.record-dialog .native-detail-pane #record-plan{width:100%;margin:0 0 15px;padding:13px;border:1px solid #4b4b4b;background:#292929;border-left:3px solid #ef7d00;color:#fff;font-size:12px;line-height:1.5;border-radius:0;min-height:52px}
.record-dialog .native-detail-pane #record-plan:hover{background:#333;border-color:#ef7d00}
.detail-map-context{position:relative;overflow:hidden;background:#c7cdc5;min-width:0;min-height:0}
.detail-map-canvas{position:absolute;width:1160px;aspect-ratio:2720/1710;left:50%;top:50%;transform:translate(-50%,-50%)}
.detail-map-canvas>img{display:block;width:100%;height:100%;object-fit:cover}.detail-map-canvas>img.is-grayscale{filter:grayscale(1)}
.detail-map-caption{position:absolute;top:20px;left:20px;padding:12px 16px;border-left:3px solid #c00000;background:#252525;color:#fff;font-size:12px;font-weight:700;box-shadow:0 6px 20px #0003}
.detail-map-canvas .context-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);pointer-events:none;display:grid;place-items:center;width:38px;height:44px;min-width:0;padding:0;border:0;background:none;box-shadow:none}
.detail-map-canvas .context-pin svg{width:26px;height:34px;filter:drop-shadow(0 2px 3px #0006)}
.detail-map-canvas .context-pin>span{position:absolute;top:0;left:28px;font-size:10px;color:#fff;background:#252525;padding:2px 4px;border-radius:2px}
.detail-map-canvas .is-selected:before{content:'';position:absolute;inset:-5px;border:2px solid #c00000;border-radius:50%;background:#fff6;box-shadow:0 0 0 7px #fff6}
.plan-dialog[data-plan-kind=object]{width:min(1180px,96vw);height:min(860px,92dvh);background:#f5f4f2;box-shadow:0 28px 90px #0007}
.plan-dialog[data-plan-kind=object]>header{border-left:7px solid #c00000;background:#252525}
.plan-dialog[data-plan-kind=object]>header small{font-size:9px;letter-spacing:.11em;color:#ff5656}
.plan-dialog[data-plan-kind=object]>header h2{font-size:22px!important;letter-spacing:0}
.plan-dialog[data-plan-kind=object] .plan-toolbar{background:#f5f4f2;border-bottom:1px solid #d8d5d1}
.plan-dialog[data-plan-kind=object] .plan-viewport{background:#e6e5e2;padding:18px}
.plan-dialog[data-plan-kind=object]>footer{padding:10px 16px;background:#fff;color:#444;border-top:1px solid #d8d5d1}
.plan-dialog[data-plan-kind=object] .object-plan-back{background:#c00000;border:0;font-size:12px;font-weight:800;border-radius:0;white-space:nowrap}
.plan-dialog [hidden]{display:none!important}
.connection-body>svg path{stroke-width:2}
/* Presentation attributes supply a separate gradient for each incoming line. */
.connection-body>svg path:nth-of-type(1){stroke:url(#connection-0)}.connection-body>svg path:nth-of-type(2){stroke:url(#connection-1)}.connection-body>svg path:nth-of-type(3){stroke:url(#connection-2)}.connection-body>svg path:nth-of-type(4){stroke:url(#connection-3)}.connection-body>svg path:nth-of-type(5){stroke:url(#connection-4)}
.connection-inputs b{color:var(--branch-color)}.connection-inputs>div{border-bottom-color:color-mix(in srgb,var(--branch-color) 30%,#24272c)}
@media(max-width:760px){.water-dialog{width:calc(100vw - 20px);height:calc(100dvh - 30px)}.water-dialog[open]{grid-template-columns:1fr}.detail-map-context{display:none}.native-detail-pane{border-left:0}.native-detail-pane header{padding:16px;min-height:90px}.native-detail-pane footer{padding:12px 16px}.native-detail-pane footer span{display:none}.screenshot-heading .object-plan-entry{font-size:11px;padding:10px}.plan-dialog[data-plan-kind=object]>header h2{font-size:18px!important}.plan-dialog[data-plan-kind=object]>footer{flex-direction:row;align-items:center}.plan-dialog[data-plan-kind=object] .plan-viewport{padding:8px}.plan-dialog[data-plan-kind=object] .object-plan-back{font-size:11px}.map-tools{gap:6px}.map-tools button{font-size:11px;padding:8px}.map-tools button svg{width:14px;height:14px}.map-colour-controls{margin-right:4px}}

.native-detail-pane{font-family:Arial,Helvetica,sans-serif;color-scheme:dark}.plan-dialog[data-plan-kind=object]{font-family:Arial,Helvetica,sans-serif}.detail-map-canvas .context-pin svg{position:relative;z-index:1}

/* clarity.css */
/* Fewer competing messages; product details remain available on request. */
:root{--marketing-red:#ed444a}
.header nav a,#mobile-nav a,body>footer button{transition:color .15s ease,background-color .15s ease}
.header nav a:hover,.header nav a:focus-visible,.header nav a[aria-current=location],#mobile-nav a:hover,#mobile-nav a:focus-visible,#mobile-nav a[aria-current=location],body>footer button:hover,body>footer button:focus-visible{color:var(--marketing-red)!important}
.header nav a[aria-current=location]{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px}
body>footer button:focus-visible,.header nav a:focus-visible{outline:2px solid var(--marketing-red);outline-offset:5px}
.brand-signature{padding-block:42px;gap:28px}.brand-signature>img{width:82px}.brand-signature h2{font-size:clamp(23px,3vw,38px)}.brand-signature p{max-width:70ch;font-size:16px;line-height:1.6;margin-bottom:0}
.device-gallery-heading,.tour-heading,.catalogue-heading{margin-bottom:38px}
.device-gallery-heading>p,.tour-heading>p,.catalogue-heading>p{max-width:40ch;font-size:16px;line-height:1.7}
.product-tour .tour-heading .eyebrow{display:none}.tour-options>button>span>small{display:none}.tour-options>button>span>span:last-child{font-size:14px;line-height:1.5}
.module-spotlight{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.module-spotlight .spotlight-intro{display:none}.module-spotlight article{padding:24px}.module-spotlight article h3{font-size:20px}.module-spotlight article p{font-size:15px}
.catalogue-results{min-height:0!important;grid-auto-rows:minmax(265px,auto)!important}.catalogue-results .catalogue-row{min-height:265px;gap:12px;padding:22px}.catalogue-results .catalogue-row p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.65;margin:12px 0}.catalogue-results .catalogue-row h3{font-size:19px;line-height:1.3}.catalogue-row-title>span{font-size:12px}
.module-detail-link{border:0;background:none;color:#f2656a;padding:8px 0;min-height:44px;text-align:left;cursor:pointer;font:700 14px Arial,sans-serif;text-decoration:underline;text-underline-offset:4px}.module-detail-link:hover{color:#fff}
.catalogue-row .catalogue-choice{padding-top:10px;margin-top:4px;border-top:1px solid #ffffff14}.catalogue-row .catalogue-choice span{font-size:14px}.catalogue-choice input{accent-color:#c00000}
.catalogue-workspace{grid-template-columns:220px minmax(0,1fr);gap:28px}.catalogue-filter button{font-size:14px;padding:12px 14px}.catalogue-pagination{min-height:68px}
.water-feature{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 4px 8px;margin-top:24px;border-top:1px solid #ffffff24}.water-feature .eyebrow{font-size:11px;color:#f5656b;letter-spacing:.08em}.water-feature h4{font-size:clamp(25px,3vw,36px);line-height:1.15;letter-spacing:-.035em;margin:12px 0;color:#fff}.water-feature p{font-size:15px!important;line-height:1.6;max-width:37ch!important;color:#bfc2c7}.feature-link{display:flex;align-items:center;gap:15px;color:#fff;border:1px solid #763137;background:linear-gradient(110deg,#431f24,#211b20);padding:20px;text-align:left;cursor:pointer;border-radius:6px;min-width:280px;font:700 15px Arial,sans-serif}.feature-link:hover{border-color:#f2656a;background:#4a1c22}.feature-link>svg{width:30px;height:30px;color:#f2656a;flex:none}.feature-link small{display:block;font-size:12px;font-weight:400;margin-top:7px;color:#c8bfc2}
.road-feature{display:grid;grid-template-columns:160px 1fr auto;align-items:center;gap:30px;padding:35px 6vw;background:#202125;border-top:1px solid #ffffff16;border-bottom:1px solid #ffffff16;color:#fff}.road-feature>span{font-size:11px;letter-spacing:.08em;color:#aaa}.road-feature h3{font-size:23px;line-height:1.3;margin:0 0 10px}.road-feature p{font-size:15px;line-height:1.65;max-width:64ch;color:#c2c5ca;margin:0}.road-feature .text-link{color:#f2656a;font-size:14px;white-space:nowrap}
.object-info-entry{border:1px solid #555;background:#292929;color:#fff;border-radius:2px;min-height:44px;padding:10px 13px;font:700 12px Arial,sans-serif;cursor:pointer;margin-left:auto}.object-info-entry:hover{background:#c00000;border-color:#c00000}.screenshot-heading .object-plan-entry{margin-left:0}.screenshot-heading{gap:10px}
.water-dialog::backdrop{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#000c}.water-dialog{box-shadow:0 14px 50px #0008}.native-detail-pane{scroll-behavior:auto}
.feature-dialog{width:min(900px,calc(100vw - 32px));max-height:90dvh;border:1px solid #4a4b50;border-radius:8px;background:#1b1d22;color:white;padding:30px;overflow:auto;box-shadow:0 25px 70px #0008}.feature-dialog::backdrop{background:#000c}.feature-dialog h2{font-size:clamp(28px,4vw,44px);letter-spacing:-.04em;line-height:1.12;margin:28px 0}.feature-dialog p{font-size:16px;line-height:1.7;color:#c6c9cf}.feature-dialog .button{margin-top:16px}.feature-dialog .dialog-top{align-items:center}.feature-dialog .close-dialog{min-width:44px;min-height:44px}
.planning-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #48494d;gap:4px}.planning-tabs button{border:0;border-bottom:3px solid transparent;color:#c1c4ca;background:transparent;padding:14px 10px;font:700 14px Arial,sans-serif;min-height:56px;cursor:pointer;text-align:left}.planning-tabs button[aria-selected=true]{color:#fff;border-bottom-color:#ed444a;background:#ffffff08}.planning-tabs button:hover{color:#f2656a}
#planning-panel{min-height:335px;padding:26px 0}#planning-panel h3{font-size:25px;line-height:1.3;max-width:28ch;margin:14px 0}#planning-panel p{max-width:70ch}.planning-symbol{float:right;margin:0 6px 20px 24px;color:#d93640}.planning-symbol svg{width:64px;height:64px}#planning-kicker{font-size:11px;letter-spacing:.07em;color:#e26a70}#planning-step-list{padding-left:20px;font-size:15px;color:#e1e3e7;line-height:1.9}
.feature-dialog-footer{display:flex;gap:25px;align-items:center;justify-content:space-between;border-top:1px solid #48494d;padding-top:22px}.feature-dialog-footer>span{font-size:12px;line-height:1.6;color:#aeb3bc;max-width:40ch}.feature-dialog-footer .button{margin:0;white-space:nowrap}.road-sample{display:flex;align-items:center;gap:15px;border-left:3px solid #c00000;background:#26282e;padding:20px}.road-sample small{font-size:11px;color:#a9adb5}.road-sample h3{margin:7px 0 0;font-size:21px}.road-symbol{color:#ed444a}.road-symbol svg{width:34px;height:34px}.road-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.road-fields>div{padding:14px 0;border-bottom:1px solid #45464b}.road-fields dt{font-size:12px;color:#aaa;margin-bottom:8px}.road-fields dd{margin:0;font-size:15px;line-height:1.6}
.customization-details{gap:24px}.customization-details article p{font-size:16px;line-height:1.6;max-width:30ch}.customization-details h3{font-size:23px;line-height:1.25}
.connection-diagram{padding-block:70px;text-align:center}.connection-intro{max-width:1160px;margin:auto;text-align:left}.connection-intro .eyebrow{color:#e9686f;font-size:12px}.connection-intro h2{font-size:clamp(32px,4vw,55px);line-height:1.07;letter-spacing:-.045em;margin:18px 0 38px}.connection-heading{max-width:1160px;margin-bottom:10px;font-size:12px}.connection-body{grid-template-columns:160px minmax(80px,1fr) 210px minmax(80px,1fr) 160px;height:330px}.connection-inputs>div{gap:10px;text-align:left;font-size:14px}.connection-inputs:last-child>div{padding-left:10px}.connection-destination{gap:12px;padding:16px}.connection-destination img{width:130px;height:130px}.connection-destination span{line-height:1.6;font-size:12px;max-width:18ch}.connection-body>.connection-lines{height:330px}.connection-body>.connection-lines path{stroke-width:1.8;stroke-dasharray:7 7;animation:exchange-flow 3.5s linear infinite}.connection-diagram>p{font-size:15px;max-width:68ch;margin:30px auto 15px}.connection-diagram>.text-link{color:#f2656a;font-size:15px}@keyframes exchange-flow{to{stroke-dashoffset:-56}}
.company-grid>.company-copy{padding:45px;max-width:660px}.company-copy>p{font-size:16px;line-height:1.7}.company-copy h3{font-size:clamp(34px,4vw,54px)}.company-services{list-style:none;margin:26px 0;padding:0;border-top:1px solid #ffffff26}.company-services li{padding:15px 0;border-bottom:1px solid #ffffff26}.company-services strong{display:block;font-size:16px;color:white;margin-bottom:5px}.company-services span{font-size:14px;color:#b8bec7;line-height:1.65;display:block}.company-copy .company-owner{font-size:13px;color:#b8bec7;margin:20px 0}.company-feature-logo{max-width:285px}.company-copy .startup-tag{font-size:11px}
.deployment-grid p{max-width:38ch;font-size:17px;line-height:1.7}.deployment-grid article{padding:30px}.pricing-dialogue{margin-top:36px;padding-top:30px}.pricing-dialogue p{font-size:17px;max-width:42ch}.contact-index,.contact-box>h3,.contact-box>ol{display:none}.contact-box{min-height:0!important;padding:35px!important}.contact-grid{align-items:center}.contact-grid>div>p{max-width:40ch}.contact-ready>p{max-width:32ch;margin-inline:auto}.contact-product{max-width:120px}.contact-module-options[hidden]{display:none}.contact-dialog-heading p{font-size:16px}
.quick-contact{display:none;position:fixed;z-index:65;right:18px;bottom:18px;min-height:46px;border:1px solid #ef6d72;border-radius:5px;color:#fff;background:#ba1019;box-shadow:0 5px 25px #0005;padding:12px 18px;font:700 14px Arial,sans-serif;cursor:pointer}
body>footer{gap:22px}body>footer>p{display:none}body>footer>div{flex-wrap:wrap;gap:20px}body>footer button{font-size:14px}body>footer>div>span{font-size:12px;line-height:1.5}
@media(min-width:1051px){.section-pad:not(.brand-signature){padding-top:90px;padding-bottom:90px}}
@media(max-width:1050px){.quick-contact.is-visible{display:block}.road-feature{grid-template-columns:1fr auto;gap:18px}.road-feature>span{grid-column:1/-1}.connection-body{grid-template-columns:120px minmax(20px,1fr) 155px minmax(20px,1fr) 120px}.connection-destination{padding:8px}.connection-destination img{width:105px;height:105px}.connection-inputs>div{font-size:12px;gap:6px}.company-grid>.company-copy{padding:28px}.catalogue-workspace{grid-template-columns:1fr}.catalogue-workspace .catalogue-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.catalogue-filter button{font-size:13px}}
@media(max-width:700px){.section-pad:not(.brand-signature){padding-top:58px;padding-bottom:58px}.brand-signature{padding-block:30px}.brand-signature>img{width:64px}.brand-signature h2{font-size:23px}.brand-signature p{font-size:14px}.tour-heading h2{font-size:38px}.water-feature{flex-direction:column;align-items:stretch;gap:15px}.water-feature h4 br{display:none}.water-feature h4{font-size:28px}.water-feature p{max-width:100%!important}.feature-link{min-width:0;justify-content:space-between;padding:17px}.road-feature{grid-template-columns:1fr;padding:26px 6vw}.road-feature .text-link{justify-self:start}.module-spotlight{display:grid;grid-template-columns:1fr;gap:0}.module-spotlight article{display:grid;grid-template-columns:28px 1fr;column-gap:14px;padding:22px 0;border:0;border-bottom:1px solid #ffffff26;border-radius:0;background:transparent}.module-spotlight article i{grid-row:1/4;margin:0!important}.module-spotlight article h3{font-size:19px;margin:0 0 8px}.module-spotlight article p{grid-column:2;font-size:14px;margin:0}.module-spotlight article button{grid-column:2;justify-self:start;margin-top:10px}.catalogue-results .catalogue-row{min-height:245px;padding:20px}.catalogue-results{grid-auto-rows:minmax(245px,auto)!important}.company-services li{padding:14px 0}.company-services strong{font-size:16px}.connection-diagram{padding:50px 20px}.connection-body{grid-template-columns:80px minmax(15px,1fr) 94px minmax(15px,1fr) 80px;height:250px}.connection-inputs>div{font-size:10px;gap:3px}.connection-inputs b{display:none}.connection-inputs:last-child>div{padding-left:3px}.connection-destination{padding:0;gap:8px}.connection-destination img{width:78px;height:78px}.connection-destination strong{font-size:15px}.connection-destination span{font-size:10px;line-height:1.4}.connection-body>.connection-lines{height:250px}.connection-heading{font-size:10px;letter-spacing:0}.connection-diagram>p{font-size:14px;text-align:left}.connection-intro h2{font-size:36px}.feature-dialog{padding:20px;max-height:calc(100dvh - 24px);width:calc(100vw - 20px)}.feature-dialog h2{font-size:30px}.planning-tabs button{font-size:12px;padding:10px 6px;line-height:1.5}#planning-panel{min-height:405px}#planning-panel h3{font-size:23px}#planning-kicker{font-size:10px;line-height:1.7;display:block;max-width:25ch}.planning-symbol svg{width:36px;height:36px}.feature-dialog-footer{flex-direction:column;align-items:stretch;gap:15px}.feature-dialog-footer .button{white-space:normal}.road-fields{grid-template-columns:1fr;gap:4px}.contact-box{padding:22px!important}.contact-product{max-width:90px}.screenshot-heading h3{width:100%}.object-info-entry{margin-left:0}.object-info-entry,.screenshot-heading .object-plan-entry{padding:9px;font-size:11px;flex:1}.quick-contact{bottom:max(14px,env(safe-area-inset-bottom));right:14px}.company-grid>.company-copy{padding:25px 20px}.company-copy h3{font-size:36px}body>footer{padding-bottom:95px!important}body>footer>div>span{width:100%}.catalogue-workspace .catalogue-filter{display:none}}
@media(prefers-reduced-motion:reduce){.connection-body>.connection-lines path{animation:none}.header nav a,#mobile-nav a,body>footer button{transition:none}}
body:has(.launch[data-motion=off]) .connection-body>.connection-lines path{animation:none}

.connection-body>.connection-lines path:nth-of-type(n){stroke:var(--edge)}

.road-feature .text-link{border:0;background:transparent;padding:12px 0;min-height:44px;cursor:pointer;font:700 14px Arial,sans-serif}.road-feature .text-link:hover{color:#fff}

.feature-dialog .close-dialog{color:#fff;background:transparent;border:0;cursor:pointer;font-size:26px;flex:none}.feature-dialog .dialog-top{display:flex;justify-content:space-between;gap:12px}.feature-dialog .dialog-top>span{min-width:0;line-height:1.5}.planning-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.planning-tabs button{min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){.planning-tabs button{font-size:11px}.connection-inputs>div{font-size:11px}.connection-destination span{font-size:11px}}

.feature-dialog{color-scheme:dark}.feature-dialog .dialog-top{color:#b1b5bd}@media(max-width:700px){.planning-tabs button{overflow-wrap:normal;font-size:12px}.feature-dialog h2{font-size:28px}}

/* refine-v28.css */
/* Focus the sequence: product, connection, use, selection, operation, people. */
.launch-outcome{opacity:var(--outcome,0);transform:translateY(calc((1 - var(--outcome,0))*16px))}.launch-outcome>a{opacity:1}.launch-outcome>p,.launch-outcome>span{display:none}
.device-detail-copy ul{display:none}.device-detail-copy>p{max-width:32ch;font-size:18px;line-height:1.6}.device-detail-copy{align-self:center}.device-gallery-note{display:none}
.connection-lead{max-width:58ch!important;text-align:left!important;margin:0 0 35px!important;color:#c6c9cf!important;font-size:18px!important;line-height:1.65!important}.connection-intro{max-width:none}.connection-diagram{padding-block:75px}.connection-intro h2{margin-bottom:24px}.connection-diagram>p:not(.connection-lead){max-width:65ch;font-size:14px;margin-top:25px}.connection-heading{font-size:12px}.connection-body{height:280px}.connection-body>.connection-lines{height:280px}
.module-spotlight{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px 0;padding:0;border:0}.module-spotlight article{grid-column:auto;grid-row:auto;display:flex;flex-direction:column;align-items:flex-start;border:1px solid #ffffff24!important;border-radius:8px;padding:22px!important;background:#191c22;gap:14px}.module-spotlight article:hover{transform:none;padding:22px!important;background:#321b21}.module-spotlight article>svg{width:24px;height:24px;color:#ed444a}.module-spotlight article h3{font-size:20px;margin:0;line-height:1.3}.module-spotlight article .spotlight-open{margin-top:auto;font-size:14px}.module-spotlight article p{display:none}
.catalogue-heading{margin-bottom:24px}.catalogue-heading h2{font-size:clamp(36px,4.6vw,60px)}.catalogue-heading>p{max-width:34ch}.catalogue-tools{margin:24px 0 18px}.catalogue-tools input{min-height:54px;font-size:16px}.catalogue-workspace{display:block}.catalogue-filter{display:none!important}.catalogue-mobile-select{display:block!important;width:100%;max-width:360px;border:1px solid #555b65;background:#202329;color:#fff;border-radius:6px;padding:14px;margin-bottom:16px;font-size:16px;min-height:50px}.catalogue-results{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(220px,auto)!important;gap:14px}.catalogue-results .catalogue-row{min-height:220px;padding:22px;display:grid;grid-template-columns:26px minmax(0,1fr);border-radius:8px}.catalogue-row .module-category-label{display:none}.catalogue-results .catalogue-row p{font-size:16px;-webkit-line-clamp:2;line-height:1.55;margin:10px 0}.catalogue-results .catalogue-row h3{font-size:20px}.catalogue-row .catalogue-row-title>span{font-size:12px}.module-selection-bar{margin-top:18px!important;padding:20px!important;min-height:0!important}.catalogue-disclosure{font-size:13px;max-width:75ch;line-height:1.65;margin-top:20px}.catalogue-pagination{min-height:64px}
.field-stories{padding-block:55px!important}.field-stories .section-label{margin-bottom:24px}.field-stories .section-heading{display:none}.field-story-list{display:grid;grid-template-columns:1fr 1fr;gap:25px}.field-story{display:block!important;margin:0!important}.field-story-copy{padding:18px 0!important}.field-story-copy h3{font-size:26px!important;margin:0!important;line-height:1.25}.field-story-copy .eyebrow,.field-story-copy .field-story-number,.field-story-copy>span{display:none}.field-story-photo{aspect-ratio:1.9!important;border-radius:8px}.field-story-photo figcaption{display:none}
.deployment .section-heading{margin-bottom:28px}.deployment .section-heading h2{font-size:clamp(36px,4vw,54px)}.deployment-grid{gap:20px}.deployment-grid article{padding:27px;border-radius:8px}.deployment-grid h3{font-size:30px;margin:15px 0}.deployment-grid p{font-size:17px;line-height:1.7;margin:0}.pricing-compact{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:25px}.pricing-compact p{font-size:18px;line-height:1.6;margin:0}.pricing-compact p span{color:#aeb5c0;font-size:16px}.pricing-compact button{white-space:nowrap}
.company .section-label{margin-bottom:30px}.company-grid>.company-copy{padding:20px 0 20px 35px}.company-copy .startup-tag{display:none}.company-feature-logo{width:250px;margin-bottom:16px}.company-copy h3{font-size:42px;margin:15px 0}.company-services{margin:20px 0}.company-services li{padding:12px 0}.company-services li:first-child span{display:none}.company-photo{border-radius:8px}.company-copy>p{font-size:16px}.company-copy .company-owner{margin:16px 0}.company-copy>.text-link{display:none}
#kontakt{display:grid;grid-template-columns:95px 1fr auto;align-items:center;gap:35px;padding-block:55px;background:#1b1d22}#kontakt>img{width:95px;height:95px;object-fit:contain}#kontakt h2{font-size:clamp(32px,4vw,52px);line-height:1.08;margin:0}#kontakt p{font-size:17px;margin:15px 0 0;color:#b8bec7}#kontakt .button{max-width:300px;white-space:normal}
.phone-link{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;min-height:44px;border-bottom:1px solid #c00000}.phone-link:hover{color:#f56a70}.phone-link svg{width:20px;height:20px;flex:none}.native-detail-pane .phone-link{font-size:17px}
@media(max-width:900px){.connection-body{grid-template-columns:95px minmax(20px,1fr) 120px minmax(20px,1fr) 95px}.connection-inputs>div{font-size:12px}.connection-destination span{font-size:12px}.company-grid>.company-copy{padding:22px 0}.field-story-list{gap:18px}#kontakt{grid-template-columns:70px 1fr;gap:20px}#kontakt>img{width:70px;height:70px}#kontakt>.button{grid-column:2}.module-spotlight article{padding:18px!important}.module-spotlight article:hover{padding:18px!important}.module-spotlight article h3{font-size:18px}}
@media(max-width:600px){.module-spotlight{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.module-spotlight article{padding:14px 9px!important;gap:12px}.module-spotlight article:hover{padding:14px 9px!important}.module-spotlight article h3{font-size:14px;overflow-wrap:anywhere}.module-spotlight article .spotlight-open{font-size:12px;min-height:44px;padding:5px 0;white-space:normal}.module-spotlight article>svg{width:22px;height:22px}.catalogue-results{grid-template-columns:1fr;grid-auto-rows:minmax(165px,auto)!important}.catalogue-results .catalogue-row{min-height:165px;padding:18px}.catalogue-results .catalogue-row p{display:none}.catalogue-results .catalogue-row h3{font-size:20px}.catalogue-pagination{margin-top:12px}.module-selection-bar{display:flex!important;flex-direction:column;align-items:stretch!important;gap:16px}.module-selection-bar .button{justify-content:center}.catalogue-mobile-select{max-width:none}.field-story-list{grid-template-columns:1fr}.field-story-photo{aspect-ratio:2.1!important}.field-story-copy h3{font-size:23px!important}.field-story-copy{padding:13px 0 24px!important}.deployment-grid{grid-template-columns:1fr 1fr!important;gap:10px}.deployment-grid article{padding:19px 14px}.deployment-grid h3{font-size:23px}.deployment-grid p{font-size:16px}.deployment-number{font-size:12px}.pricing-compact{display:block}.pricing-compact button{margin-top:16px;white-space:normal}.company-copy h3{font-size:36px}.connection-diagram{padding-inline:16px}.connection-lead{font-size:16px!important}.connection-heading{font-size:12px;gap:10px}.connection-body{grid-template-columns:86px minmax(8px,1fr) 92px minmax(8px,1fr) 86px}.connection-inputs>div{font-size:12px}.connection-inputs:last-child>div{padding-left:0}.connection-destination img{width:68px;height:68px}.connection-destination span{font-size:12px}.connection-destination strong{font-size:14px}.connection-body,.connection-body>.connection-lines{height:280px}#kontakt{grid-template-columns:1fr;text-align:center;justify-items:center;padding-block:40px}#kontakt>.button{grid-column:1}#kontakt h2{font-size:36px}#kontakt>img{width:70px;height:70px}.device-detail-copy>p{font-size:17px}.device-detail-visual>:is(img,luois-board){max-width:100%;object-fit:contain}}

@media(max-width:600px){.module-spotlight article h3{overflow-wrap:normal;hyphens:auto}.module-spotlight article .spotlight-open{font-size:14px;max-width:100%;overflow-wrap:normal;hyphens:auto}}
.catalogue-results .catalogue-row{display:flex;flex-direction:column;align-items:stretch;gap:12px}.catalogue-results .catalogue-row>div{min-width:0;padding-right:26px}.catalogue-results .catalogue-row>.catalogue-choice{grid-column:auto;width:100%;margin-top:auto;position:static}.catalogue-results .catalogue-row-title{flex-wrap:wrap}.catalogue-results .catalogue-row-title h3{min-width:0}

/* refine-v29.css */
/* The headline stays above the hinge throughout the closing sequence. */
.launch-outcome{top:9%;left:8%;right:8%}.launch-outcome h2{font-size:clamp(36px,4.4vw,66px);line-height:1.04;margin:0}.launch-outcome>a{display:none}
.phone-display{display:inline-flex;align-items:center;gap:9px;line-height:1.5}.phone-display svg{width:19px;height:19px;flex:none}
.tour-options{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}.tour-options button{min-width:0}.tour-options strong{font-size:20px}.demo-pin>span{white-space:nowrap}.object-demo .demo-pin>span{font-size:12px;padding:5px 8px;max-width:180px;white-space:normal;line-height:1.2;text-align:center;background:#222}.object-demo .demo-pin:hover{z-index:9}
.demo-rail-lines{pointer-events:none}.demo-rail-lines .rail-stroke{pointer-events:stroke;cursor:pointer;stroke-width:10}.demo-rail-lines .rail-stroke:hover,.demo-rail-lines .rail-stroke:focus{stroke-width:16;outline:none;filter:drop-shadow(0 0 3px white)}
.information-open{padding:13px 18px!important;min-height:44px!important;font-size:14px!important;width:auto!important;margin:12px 0!important}.information-dialog{max-width:680px}.information-dialog p,.information-dialog li{font-size:16px;line-height:1.6}
.road-route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.road-route path{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:12}.closed-road{stroke:#c00000}.detour-route{stroke:#147ac7;stroke-dasharray:20 10}.road-pin{background:#c00000!important;color:white!important}.road-pin svg{width:28px;height:28px}.road-dialog-map{height:220px;position:relative;overflow:hidden;border:1px solid #555;border-radius:5px}.road-dialog-map>.road-map-canvas{position:absolute;width:200%;max-width:none;aspect-ratio:2720/1710;transform:translate(-25%,-32%)}.road-map-canvas>.demo-map-base{width:100%;height:auto;display:block}.road-map-canvas .road-pin{pointer-events:none}#detour-status{font-size:15px;color:#c8d2df;line-height:1.6}.road-route [hidden]{display:none}
.category-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:32px 0}.category-tile{display:grid;grid-template-columns:1fr auto;gap:20px;padding:24px;background:#1b1f25;color:#f5f5f5;border:1px solid #ffffff26;border-radius:10px;min-height:195px;cursor:pointer;text-align:left;transition:background .2s,border-color .2s,transform .2s;font:inherit}.category-tile:hover,.category-tile:focus-visible{background:#8f141e;border-color:#e0535c;transform:translateY(-3px)}.category-tile>svg{width:26px;height:26px;color:#ef6973}.category-tile>small{font-size:12px;color:#b5bcc6}.category-tile>strong{grid-column:1/-1;font-size:20px;line-height:1.3;align-self:end}.category-tile>span{grid-column:1/-1;display:flex;justify-content:space-between;color:#c6cbd4;font-size:14px}.category-tile i{font-style:normal}.catalogue-filter,.catalogue-empty,#catalogue-result{display:none!important}.catalogue-tools{display:flex;align-items:end;gap:15px;margin:20px 0!important}.catalogue-tools>label{flex:1}.catalogue-tools input{width:100%}.catalogue-search-button{min-height:54px;border:1px solid #59616c;color:#fff;background:#242830;padding:12px 22px;border-radius:5px;font:inherit;cursor:pointer}.catalogue-search-button:hover{background:#951821}.catalogue-heading h2{font-size:clamp(34px,4.2vw,56px)}
.category-dialog{width:min(1020px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid #555d68;background:#171b21;color:white;border-radius:12px;overflow:auto}.category-dialog::backdrop{background:#000c;backdrop-filter:blur(4px)}.category-dialog>header{position:sticky;top:0;z-index:2;background:#20252d;padding:24px 30px;border-bottom:1px solid #ffffff20;display:flex;justify-content:space-between;gap:20px}.category-dialog h2{font-size:30px;margin:8px 0!important;line-height:1.2}.category-dialog header small{color:#fb7c84;letter-spacing:.08em;font-size:11px}.category-dialog header p{font-size:14px;margin:0;color:#bac2cd}.category-close{border:1px solid #626c7a;width:44px;height:44px;flex:none;border-radius:50%;font-size:26px;color:#fff;background:none;cursor:pointer}.category-entries{padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.category-entries .catalogue-row{display:flex;flex-direction:column;padding:23px;gap:13px;border:1px solid #ffffff22;border-radius:7px;background:#20252c;min-width:0}.category-entries .catalogue-row[hidden]{display:none}.category-entries .catalogue-row>svg{width:25px;height:25px}.category-entries .catalogue-row>div{min-width:0}.category-entries .catalogue-row h3{font-size:21px;line-height:1.3;margin:0}.category-entries .catalogue-row p{display:block!important;font-size:16px;line-height:1.6;color:#c8cdd5;-webkit-line-clamp:unset;overflow:visible;margin:12px 0 0}.category-entries .catalogue-choice{position:static!important;width:auto;margin-top:auto;padding-top:14px;border-top:1px solid #ffffff22;display:flex;gap:10px}.category-entries .catalogue-choice input{width:20px;height:20px;flex:none;accent-color:#c00000}.category-entries .module-detail-link{display:none}.category-entries .catalogue-row.is-selected{border-color:#f06670;background:#351e25}.category-dialog>footer{position:sticky;bottom:0;margin:0;padding:18px 25px;background:#20252df5;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff20}.category-selected{font-size:14px;color:#cad0da}.category-empty{padding:25px}.module-example{color:#ffc2c7;border:0;border-bottom:1px solid #80515b;background:none;padding:10px 0;min-height:44px;text-align:left;font:inherit;font-size:14px;cursor:pointer}.deployment-icon{display:block;color:#ef6973;margin-bottom:16px}.deployment-icon svg{width:36px;height:36px}.contact-extras{grid-column:3;font-size:14px;text-align:center;justify-self:center}.company-copy .company-services strong{font-size:17px}
@media(max-width:900px){.category-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tour-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}.contact-extras{grid-column:2}.category-dialog h2{font-size:25px}}
@media(max-width:600px){.category-tiles{gap:9px}.category-tile{padding:18px 14px;gap:16px;min-height:180px}.category-tile>strong{font-size:17px;hyphens:auto}.category-tile>span{font-size:12px}.catalogue-tools{flex-direction:column;align-items:stretch}.catalogue-tools input{font-size:16px}.category-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 20px)}.category-dialog>header{padding:18px 15px}.category-dialog h2{font-size:22px!important}.category-entries{grid-template-columns:1fr;padding:12px}.category-entries .catalogue-row{padding:18px}.category-dialog>footer{padding:14px;gap:10px;flex-wrap:wrap}.category-dialog>footer .button{width:100%}.tour-options button{padding:12px 8px!important;display:flex;gap:8px}.tour-options strong{font-size:15px}.tour-options .tour-icon svg{width:21px;height:21px}.contact-extras{grid-column:1}.road-dialog-map{height:180px}.object-demo .demo-pin>span{font-size:10px;max-width:100px}.detail-map-canvas .demo-pin>span{max-width:190px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.category-tile{transition:none}.category-tile:hover{transform:none}}
.detail-map-canvas .context-pin>span{font-size:13px!important;line-height:1.3!important;padding:6px 9px!important;color:#fff!important;background:#222!important;left:50%!important;top:calc(100% + 8px)!important;transform:translateX(-50%)!important;white-space:nowrap!important;max-width:none!important}.detail-map-canvas .context-pin.is-selected{z-index:4}
#road-preview>.dialog-top{position:sticky;top:-30px;z-index:4;background:#20242b;padding:16px 0}#road-preview h2{font-size:30px;line-height:1.15;margin:16px 0 22px}#road-preview .road-fields{margin:20px 0}#road-preview .road-fields>div{padding:12px 0}.road-pin>span{font-size:12px!important;line-height:1.3!important;padding:5px 8px!important;top:calc(100% + 8px)!important;left:50%!important;transform:translateX(-50%)!important;background:#222!important;color:#fff!important;white-space:nowrap!important;max-width:230px}.road-pin{border-radius:4px!important}#show-detour{background:#a91725;color:#fff}#show-detour:hover{background:#c00000}
.category-dialog{color-scheme:dark;scrollbar-width:thin}.category-dialog>footer{background:#20252d}.category-dialog>footer .button{background:#b21f2b;color:#fff;border:1px solid #d84e58;justify-content:center}.category-dialog>footer .button:hover{background:#c00000}.category-entries .catalogue-row .catalogue-choice{color:#fff}.category-entries .catalogue-row-title{flex-wrap:wrap;gap:8px}

/* refine-v32.css */
/* A quieter opening and a shared downward movement for laptop and message. */
.launch-outcome{top:3%;transform:translateY(calc(var(--closure-travel,0)*65px));opacity:var(--outcome,0)}
.launch-outcome .outcome-logo{display:block;width:64px;height:64px;object-fit:contain;margin:0 auto 15px}
.launch-outcome h2{font-size:clamp(36px,4.1vw,60px);line-height:1.06}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){.launch:not([data-motion=off]) .launch-visual{transform:translate(calc(var(--immersion)*-12vw),calc(var(--closure-travel,0)*65px)) scale(calc(1 + var(--immersion)*.28))}}
.network-globe figcaption{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.connection-hero{margin-bottom:0}.network-globe canvas{outline-offset:-8px}
/* Native upright symbol, with a separate readable nameplate. */
.object-demo .demo-pin,.detail-map-canvas[data-map-kind=object] .context-pin{rotate:0deg!important;transform:translate(-50%,-50%)!important;background:transparent!important;box-shadow:none!important;border:0!important;overflow:visible!important}
.object-demo .demo-pin svg,.detail-map-canvas[data-map-kind=object] .context-pin svg{rotate:0deg!important;transform:none!important;width:30px!important;height:38px!important;filter:drop-shadow(0 1px 2px #0004)}
.object-demo .demo-pin>span,.detail-map-canvas[data-map-kind=object] .context-pin>span{position:absolute!important;left:50%!important;right:auto!important;top:calc(100% + 5px)!important;bottom:auto!important;rotate:0deg!important;transform:translateX(-50%)!important;width:max-content!important;min-width:0!important;height:auto!important;max-width:175px!important;padding:6px 9px!important;border:1px solid #b0b2b7!important;border-left:3px solid #c00000!important;border-radius:4px!important;background:#fff!important;color:#20252a!important;font:600 13px/1.25 Arial,sans-serif!important;white-space:normal!important;text-align:center;box-shadow:0 2px 7px #0002!important}
.detail-map-canvas[data-map-kind=object] .is-selected:before{display:none!important}
.object-demo .demo-pin:hover>span,.object-demo .demo-pin:focus-visible>span{border-color:#c00000!important}
.deployment-grid article{display:grid;grid-template-columns:68px minmax(0,1fr);column-gap:20px;align-content:start}.deployment-grid .deployment-icon{grid-column:1;grid-row:1/4;align-self:center;margin:0}.deployment-icon svg{width:62px;height:62px}.deployment-grid .deployment-number,.deployment-grid h3,.deployment-grid p{grid-column:2}.deployment-grid h3{margin:10px 0 15px;font-size:clamp(25px,2.7vw,34px)}
.elw-field{display:grid;grid-template-columns:.8fr 1.2fr;gap:5%;align-items:center;max-width:1250px;margin:60px auto 20px;padding:0 5%}.elw-field figure{margin:0;position:relative;overflow:hidden;aspect-ratio:1.5}.elw-field img{width:100%;height:100%;object-fit:cover}.elw-field figure:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#101216,transparent 18%),linear-gradient(0deg,#101216,transparent 20%)}.elw-field h3{font-size:clamp(28px,3vw,42px);line-height:1.12;letter-spacing:-.035em;margin:14px 0}.elw-field p{font-size:17px;line-height:1.7;color:#bcc4cf}.elw-field small{font-size:12px;color:#b8bdc5}
@media(max-width:650px){.deployment-grid{grid-template-columns:1fr!important}.deployment-grid article{grid-template-columns:58px minmax(0,1fr);column-gap:17px;padding:24px}.deployment-icon svg{width:52px;height:52px}.object-demo .demo-pin>span{max-width:132px!important;font-size:12px!important;padding:5px 7px!important}.elw-field{grid-template-columns:1fr;gap:20px;padding:0;margin:40px 0 15px}.elw-field figure{aspect-ratio:1.3}.elw-field figure:after{background:linear-gradient(0deg,#101216,transparent 16%)} }
@media(max-width:900px){.launch-outcome .outcome-logo{display:none}}

/* Full-width, real command-vehicle interior; screen content stays uncropped. */
.elw-field{display:block;max-width:1200px;margin:70px auto 20px;padding:0 3%}.elw-copy{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;margin:0 3% 30px}.elw-copy p{max-width:400px}.elw-field figure{aspect-ratio:auto;overflow:visible}.elw-field img{height:auto;display:block;object-fit:contain;mask-image:linear-gradient(0deg,transparent,#000 12%,#000 96%,transparent)}.elw-field figure:after{display:none}.elw-field figcaption{position:static;color:#8d97a2;font-size:11px;text-align:right;padding:8px 0}.elw-field h3{margin-bottom:0}@media(max-width:650px){.elw-field{padding:0;margin-top:45px}.elw-copy{grid-template-columns:1fr;gap:0;margin:0 0 15px}.elw-field figure{aspect-ratio:auto}.elw-copy p{font-size:15px;line-height:1.6}}

/* refine-v33.css */
/* A centered closing message, with the product mark clearly visible. */
.launch-outcome{top:calc(1% + var(--message-travel,0)*17%);transform:none;text-align:center}
.launch-outcome .outcome-logo{width:clamp(112px,10vw,148px);height:clamp(112px,10vw,148px);margin:0 auto 20px}
.launch-outcome h2{font-size:clamp(38px,4.1vw,60px);line-height:1.08}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){.launch:not([data-motion=off]) .launch-visual{transform:translate(calc(var(--immersion)*-12vw - var(--closure-travel,0)*1.6vw),calc(var(--closure-travel,0)*100px)) scale(calc(1 + var(--immersion)*.28))}}
/* The interface diagram is the central visual; no globe is loaded. */
.connection-hero{display:block;max-width:1000px;margin:0 auto 28px;text-align:center}
.connection-hero .connection-intro{text-align:center;margin:0}
.connection-hero h2{font-size:clamp(36px,4.8vw,66px);line-height:1.08;letter-spacing:-.04em}
.connection-hero .connection-lead{max-width:580px;margin:22px auto 0;text-align:center;color:#bdc3ca;font-size:17px;line-height:1.65}
.connection-diagram>p{font-size:1rem;line-height:1.65;max-width:760px!important;margin:22px auto 12px!important;color:#a6afb9!important}
.connection-diagram>.text-link{font-size:14px}
/* Compact maps; page scrolling stays available even in an enlarged map. */
.tour-display{min-height:0!important}
.map-window{overflow:hidden!important;overscroll-behavior:auto!important;touch-action:pan-y;position:relative}
.map-window.is-zoomed{cursor:grab}.map-window.is-dragging{cursor:grabbing}
.map-context{padding:12px 15px!important;margin-top:12px!important;gap:5px!important;font-size:13px!important}
.map-context p{font-size:13px!important;line-height:1.5!important;margin:4px 0 0!important}
.information-open{padding:12px 15px!important;min-height:44px!important;font-size:14px!important;margin-top:10px!important}
.map-bottom{padding:7px 10px!important;gap:8px}.map-bottom small{font-size:10px}
.demo-rail-lines .rail-stroke{stroke-width:2!important;vector-effect:non-scaling-stroke;transition:stroke-width .15s}
.demo-rail-lines .rail-stroke.is-hovered,.demo-rail-lines .rail-stroke:focus-visible{stroke-width:4.5!important}
.demo-rail-lines .rail-casing{stroke-width:3.5!important;vector-effect:non-scaling-stroke}
.demo-rail-lines .rail-hit{fill:none;stroke:transparent;stroke-width:14;vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:pointer}
.road-route .closed-road{stroke-width:5!important;vector-effect:non-scaling-stroke;cursor:pointer}
.road-route .closed-road:hover,.road-route .closed-road:focus-visible{stroke-width:8!important}
.road-demo .road-pin{rotate:0deg!important;transform:translate(-50%,-50%)!important;background:none!important;border:0!important;box-shadow:none!important;overflow:visible!important;width:32px!important;height:42px!important}
.road-demo .road-pin>svg{width:32px!important;height:42px!important;rotate:0deg!important;transform:none!important;filter:drop-shadow(0 1px 2px #0005)}
.road-demo .road-pin>span{top:calc(100% + 4px)!important;left:50%!important;transform:translateX(-50%)!important;rotate:0deg!important;bottom:auto!important;width:max-content!important;max-width:180px!important;padding:5px 8px!important;border:1px solid #ccc!important;border-left:3px solid #c00000!important;border-radius:4px!important;background:#fff!important;color:#23272c!important;font:600 12px/1.25 Arial,sans-serif!important;white-space:normal!important;text-align:center}
.map-shell:has(.road-popup[open]) .map-window{min-height:410px}
.road-popup{position:absolute!important;inset:var(--popup-top,12px) 12px auto auto!important;margin:0!important;transform:none!important;width:min(310px,calc(100% - 24px))!important;max-width:none!important;max-height:calc(100% - 24px);padding:16px!important;border:1px solid #d3d7dc!important;border-top:3px solid #c00000!important;border-radius:10px!important;box-shadow:0 8px 32px #0003!important;background:#fff!important;color:#222!important;z-index:40;overflow:auto}
.road-popup .dialog-top{margin:0 0 7px!important;font-size:10px!important;color:#777;align-items:center}
.road-popup .close-dialog{width:34px!important;height:34px!important;min-height:34px;padding:0!important;font-size:24px!important;color:#333!important;background:#f2f3f5!important;border-radius:50%}
.road-popup h2{font-size:23px!important;line-height:1.2!important;margin:0 0 12px!important;color:#20252b!important}
.road-popup .road-address{font-size:15px;line-height:1.35;font-weight:600;margin:0 0 12px!important}.road-address small{font-weight:400;color:#737981}
.road-popup .road-fields{display:block;margin:0 0 14px!important}.road-popup .road-fields>div{display:block;padding:7px 0;border-top:1px solid #e5e7eb}.road-popup dt{font-size:11px;color:#737981}.road-popup dd{font-size:13px;line-height:1.4;margin:3px 0 0}
.road-popup .button{width:100%;min-height:42px;padding:10px 12px;font-size:13px;background:#c00000;color:#fff}
.road-popup #detour-status{font-size:10px;line-height:1.4;margin:8px 0 0;color:#727780}
.deployment-icon,.deployment-number{color:#c00000!important}
#kontakt{display:flex;flex-direction:column;align-items:center;text-align:center;gap:25px}
#kontakt>img{width:112px;height:112px;object-fit:contain;margin:0}
#kontakt h2{font-size:clamp(38px,5vw,68px);line-height:1.08;margin:0 0 20px}
#kontakt p{max-width:560px;margin:0 auto;line-height:1.6}
.contact-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;width:100%;margin-top:8px}
#kontakt .contact-actions>.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:300px;min-height:58px;margin:0;padding:17px 22px;background:#c00000;color:#fff;border:1px solid #c00000;border-radius:9px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s}
#kontakt .contact-actions>.button:hover{background:#a80000;transform:translateY(-2px);box-shadow:0 8px 24px #c0000033}
#kontakt .contact-actions>.button:focus-visible{outline:3px solid #ed7f85;outline-offset:4px}
@media(max-width:650px){.map-bottom{flex-wrap:wrap}.map-context{display:block!important}.contact-actions{flex-direction:column;align-items:stretch}#kontakt .contact-actions>.button{width:100%}.road-popup{width:min(290px,calc(100% - 20px))!important;inset:var(--popup-top,10px) 10px auto auto!important;padding:12px!important}.connection-hero .connection-lead{font-size:15px}.map-shell:has(.road-popup[open]) .map-window{min-height:390px}}
@media(prefers-reduced-motion:reduce){.contact-actions>.button,.rail-stroke{transition:none!important}}

.map-shell{position:relative}.road-popup p,.road-popup dd{color:#353b43}.road-popup .dialog-top .close-dialog{position:static!important}.road-popup .dialog-top{display:flex;justify-content:space-between}
.road-popup .road-fields>div{padding:7px 0!important;min-height:0!important;margin:0!important;border-bottom:0!important;grid-template-columns:none!important;gap:0!important}.road-popup .road-fields dt{font-size:11px!important;margin:0!important;padding:0!important}.road-popup .road-fields dd{font-size:13px!important;line-height:1.4!important;margin:3px 0 0!important;padding:0!important}
.road-popup .dialog-top{padding:0!important;min-height:34px!important;background:transparent!important;border:0!important;color:#737981!important}.road-popup .button{background:#c00000!important}
.road-demo .road-pin>span{height:auto!important;min-height:0!important;line-height:1.25!important}

.connection-hero .connection-lead{text-align:center!important;margin:22px auto 0!important}.road-popup .button{margin:0!important}.road-popup .road-fields{margin-bottom:10px!important}.road-route .closed-road{pointer-events:stroke!important}


/* Completion symbol: the ring draws first; the check sweeps beyond its edge. */
.launch-outcome .outcome-logo,.launch-outcome .outcome-check{width:clamp(112px,10vw,148px);height:clamp(112px,10vw,148px)}
.outcome-check{display:block;margin:18px auto 0;color:#13be65;opacity:0;visibility:hidden;pointer-events:none}
.outcome-check svg{display:block;width:100%;height:100%;overflow:visible}
.outcome-check .check-disc{fill:currentColor;opacity:0}
.outcome-check .check-ring{fill:none;stroke:currentColor;stroke-width:6.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
.outcome-check .check-mark{fill:currentColor}
.outcome-check .check-reveal{stroke-dasharray:1;stroke-dashoffset:1}
.outcome-check .check-clearance{opacity:0}
.outcome-check.is-complete{visibility:visible;animation:completion-appear .18s ease-out both}
.outcome-check.is-complete .check-ring{animation:completion-draw .45s cubic-bezier(.4,0,.2,1) .02s both}
.outcome-check.is-complete .check-reveal{animation:completion-draw .4s cubic-bezier(.2,.65,.3,1) .46s both}
.outcome-check.is-complete .check-clearance{animation:completion-clear .15s ease-out .62s both}
.outcome-check.is-complete .check-disc{animation:completion-fill .45s ease-out .45s both}
.outcome-check.is-complete svg{animation:completion-settle .35s ease-out .8s both}
@keyframes completion-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes completion-appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes completion-clear{from{opacity:0}to{opacity:1}}
@keyframes completion-fill{0%{opacity:0}55%{opacity:.17}100%{opacity:.045}}
@keyframes completion-settle{0%{transform:scale(1);filter:drop-shadow(0 0 0 #13be6500)}40%{transform:scale(1.045);filter:drop-shadow(0 0 12px #13be6544)}100%{transform:scale(1);filter:drop-shadow(0 0 6px #13be6520)}}
@media(prefers-reduced-motion:reduce){.outcome-check.is-complete,.outcome-check.is-complete *{animation:none!important}.outcome-check.is-complete{opacity:1}.outcome-check.is-complete .check-ring,.outcome-check.is-complete .check-reveal{stroke-dashoffset:0}.outcome-check.is-complete .check-clearance{opacity:1}.outcome-check.is-complete .check-disc{opacity:.045}}

/* Keep the broader headline readable on every screen width. */
#launch-title{font-size:clamp(43px,4.7vw,82px)}
@media(max-width:900px){#launch-title{font-size:clamp(36px,7.4vw,66px)}}
@media(max-width:600px){#launch-title{font-size:clamp(28px,8.4vw,44px)}}

/* refine-v39.css */
/* Closing confirmation follows the actual hinge, on every supported layout. */
.launch-outcome{left:var(--outcome-x,50%);right:auto;top:var(--outcome-y,18%);width:min(84%,800px);transform:translateX(-50%);pointer-events:none!important}
.launch-outcome .outcome-check{margin-top:12px}
.launch-bottom .signal-switch{display:inline-flex;align-items:center;gap:10px;border:0;padding:6px 0;color:#e1e7eb;min-height:44px;font-size:13px}
.switch-track{display:inline-block;position:relative;flex:0 0 48px;width:48px;height:26px;border-radius:20px;background:#4c121c;border:1px solid #e64b62;box-shadow:0 0 12px #e331492c,inset 0 0 8px #a9163533;transition:background .2s,border-color .2s,box-shadow .2s}
.switch-track i{position:absolute;left:4px;top:4px;width:16px;height:16px;border-radius:50%;background:#ff8c9c;box-shadow:0 0 8px #ff465f80;transition:transform .2s,background .2s}
[aria-checked=true]>.switch-track,.layer-switch input:checked+.switch-track{background:#0c3b26;border-color:#27db82;box-shadow:0 0 14px #22d47b35,inset 0 0 9px #13b76833}
[aria-checked=true]>.switch-track i,.layer-switch input:checked+.switch-track i{transform:translateX(22px);background:#77ffb8;box-shadow:0 0 8px #26e38e99}
.switch-state{min-width:24px;text-align:left;font-weight:600;font-size:12px}.signal-switch:disabled{opacity:.55;cursor:default}
.map-layer-panel .layer-switch{display:flex;position:relative;align-items:center;gap:12px;min-height:48px;cursor:pointer;padding:5px 0;font-size:14px}
.layer-switch input{position:absolute;opacity:0;width:48px;height:32px;margin:0;left:0;top:8px}
.layer-switch input:focus-visible+.switch-track{outline:2px solid #fff;outline-offset:4px}
.layer-switch .switch-track:after{content:'AUS';position:absolute;left:56px;font-size:10px;line-height:24px;font-weight:700;color:#ee8694}.layer-switch input:checked+.switch-track:after{content:'AN';color:#53de97}.layer-switch .switch-track{margin-right:26px}
#image-credits{width:min(880px,calc(100vw - 32px))}.credits-intro{max-width:660px;color:#b7c0c9;line-height:1.65}.credits-list{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;margin:25px 0}.credits-list section{padding:20px 0;border-top:1px solid #ffffff24}.credits-list h3{font-size:17px;margin:0 0 12px}.credits-list p{font-size:14px;line-height:1.7;margin:8px 0;color:#c0c6ce}.credits-list a{color:#f07c85;text-underline-offset:3px}.credits-list .credits-status{font-size:12px;color:#d4b080}.elw-field figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px}.elw-detail{background:none;border:0;border-bottom:1px solid #c00000;color:#e6e9ed;font:inherit;font-size:13px;min-height:44px;cursor:pointer}.elw-detail:hover{color:#ff7c85}
@media(max-width:900px) and (prefers-reduced-motion:no-preference){
 .launch:not([data-motion=off]) .launch-sticky{display:block;overflow:visible;height:auto;max-height:none;position:relative;top:0}
 .launch:not([data-motion=off]) .launch-content{display:block;padding-bottom:0;position:relative}
 .launch:not([data-motion=off]) .launch-content:after{content:"";display:block;height:110svh}
 .launch:not([data-motion=off]) .launch-product{position:sticky;top:var(--header-height);height:calc(100svh - var(--header-height));max-width:640px;margin:30px auto 0;display:flex;flex-direction:column;justify-content:center;z-index:4}
 .launch:not([data-motion=off]) .launch-fleet{flex:none;aspect-ratio:1.25;margin:70px 0 0;transform:none}
 .launch:not([data-motion=off]) .launch-visual{left:6%;width:88%;top:33%;transform:translateY(calc(var(--closure-travel,0)*24px))!important}
 .launch:not([data-motion=off]) .launch-outcome{display:block;width:100%;max-width:640px}
 .launch:not([data-motion=off]) .launch-outcome .outcome-logo{display:block;width:92px;height:92px;margin:0 auto 14px}
 .launch:not([data-motion=off]) .outcome-check{width:92px;height:92px}
 .launch:not([data-motion=off]) .launch-outcome h2{font-size:clamp(28px,7vw,44px);line-height:1.1}
 .launch.is-immersed .launch-heading{visibility:visible}
 .launch:not([data-motion=off]) .launch-control{opacity:calc(1 - var(--closure,0));margin-bottom:0}
}
@media(max-width:600px){.credits-list{grid-template-columns:1fr;gap:0}.elw-field figcaption{align-items:flex-start;flex-direction:column;text-align:left}}
@media(prefers-reduced-motion:reduce){.switch-track,.switch-track i{transition:none}.launch-bottom .signal-switch{display:inline-flex}}
.launch[data-motion=off]{min-height:0}.launch[data-motion=off] .launch-sticky{position:relative;top:0}.launch[data-motion=off] .launch-outcome{display:none}

/* refine-v40.css */
/* Compact product story: devices follow the introduction without an empty screen. */
@media(max-width:900px) and (prefers-reduced-motion:no-preference){
 .launch:not([data-motion=off]) .launch-product{height:clamp(460px,calc(80vw + 170px),710px);margin-top:14px;justify-content:flex-start}
 .launch:not([data-motion=off]) .launch-fleet{margin:0;aspect-ratio:1.25;width:100%}
 .launch:not([data-motion=off]) .launch-visual{transform:translateY(calc(var(--closure-travel,0)*clamp(80px,calc(200px - 15vw),140px)))!important}
 .launch:not([data-motion=off]) .launch-content:after{height:calc(58svh + var(--confirmation-reserve,0px))}
 .launch:not([data-motion=off]) .launch-control{margin-top:4px}
 .launch:not([data-motion=off]) .launch-outcome h2{font-size:clamp(28px,6vw,42px)}
 .launch:not([data-motion=off]) .launch-outcome .outcome-logo{width:80px;height:80px;margin-bottom:10px}
 .launch:not([data-motion=off]) .outcome-check{width:80px;height:80px;margin-top:8px}
 .device-gallery.section-pad,.product-tour.section-pad{padding-top:48px;padding-bottom:48px}
 .launch-bottom{padding-top:12px;padding-bottom:12px}
}
.map-action-stage{position:relative}
.map-planning-action{position:absolute;right:16px;top:16px;z-index:4;display:flex;align-items:center;gap:12px;max-width:calc(100% - 32px);padding:13px 16px;background:#b41f29;color:white;border:1px solid #ef6670;border-radius:6px;box-shadow:0 5px 18px #0003;cursor:pointer;text-align:left;font:inherit;font-weight:600;font-size:15px;line-height:1.35}
.map-planning-action:hover{background:#cc2934}.map-planning-action>svg{flex:0 0 24px}.map-planning-action small{display:block;font-size:12px;font-weight:400;margin-top:3px;color:#ffe5e7}.map-planning-action:focus-visible{outline:3px solid #fff;outline-offset:3px}
.catalogue-results .catalogue-row .module-bullets,.category-entries .catalogue-row .module-bullets{display:block;-webkit-line-clamp:unset;overflow:visible;margin:12px 0;font-size:15px;line-height:1.6}
.module-bullets>span{display:list-item;list-style:disc;margin-left:17px;padding-left:2px}.module-bullets>span::marker{color:#cb3e47;font-size:.8em}
.elw-scene{position:relative;aspect-ratio:1672/941;overflow:hidden;border-radius:6px;background:#101216}
.elw-field .elw-scene .elw-cabin{width:100%;height:100%;object-fit:contain;mask-image:none}
.elw-field .elw-scene .elw-screen{position:absolute;top:23.70%;height:25.72%;width:25.72%;object-fit:contain;background:#202226;mask-image:none;display:block;border-radius:0}
.elw-field .elw-scene .screen-left{left:10.52%}.elw-field .elw-scene .screen-center{left:37.26%}.elw-field .elw-scene .screen-right{left:63.94%}
.elw-screens-dialog{width:min(1300px,94vw);max-height:90dvh;overflow:auto}.elw-screens-dialog h2{font-size:clamp(24px,4vw,38px);margin:24px 0}.elw-screen-gallery{display:grid;gap:28px}.elw-screen-gallery figure{margin:0}.elw-screen-gallery figcaption{font-size:16px;margin:0 0 10px;color:#d8dee6}.elw-screen-gallery img{display:block;width:100%;height:auto}
@media(max-width:600px){
 .map-planning-action{top:10px;right:10px;padding:10px 12px;gap:8px;font-size:13px;max-width:calc(100% - 20px)}
 .map-planning-action small{font-size:11px}.map-planning-action>svg{width:20px;flex-basis:20px}
 .elw-field figcaption{font-size:12px}.elw-detail{font-size:14px}.tour-heading{margin-bottom:22px}
}

@media(max-width:600px){.map-planning-action{font-size:0;gap:0;padding:10px 12px}.map-planning-action>svg{display:none}.map-planning-action>span{font-size:12px;line-height:1.3;white-space:nowrap}.map-planning-action small{font-size:11px;margin-top:2px}}

/* Scroll state is the only timing source, including when scrolling backwards. */
.launch .launch-login{transition:none}
.launch-outcome{transition:none}
.launch-outcome[aria-hidden="true"]{opacity:0;visibility:hidden}
.launch-bottom{position:relative;z-index:8;background:#0b0d10}
.launch .launch-heading{opacity:var(--intro-opacity,1);transition:none}
.launch .launch-heading[aria-hidden=true]{visibility:hidden}
.launch .launch-control[aria-hidden=true]{visibility:hidden;opacity:0!important;pointer-events:none}
.device-rotation{display:flex;justify-content:flex-end;margin:0 0 20px}
.device-rotation button{min-height:44px;padding:10px 14px;border:1px solid #626976;border-radius:6px;color:#e2e6eb;background:transparent;font:inherit;font-size:14px;cursor:pointer}
.device-rotation button:hover{border-color:var(--luois-red);color:#fff}
.device-rotation button:disabled{opacity:.55;cursor:default}
.device-detail{position:relative}
.device-detail.device-transition-ghost{position:absolute;inset:0;min-height:0;margin:0;pointer-events:none;z-index:2}
.device-detail-visual>:is(img,luois-board){animation:none;transform-origin:50% 56%;backface-visibility:hidden}
.device-detail-visual{isolation:isolate}
.device-transition-ghost .device-detail-visual{background:none}
.device-transition-ghost .device-detail-visual:before{display:none}
.device-detail-copy{min-height:280px}
@media(max-width:900px){.device-detail-copy{min-height:260px}}
@media(prefers-reduced-motion:reduce){.device-detail-copy{min-height:0}}

/* Responsive spacing in the closed-laptop confirmation. */
.launch .launch-outcome .outcome-logo{margin-bottom:clamp(28px,2.5vw,44px)}
.launch .launch-outcome .outcome-check{margin-top:clamp(26px,2.4vw,42px)}
@media(max-width:900px){
 .launch:not([data-motion=off]) .launch-outcome .outcome-logo{margin-bottom:22px}
 .launch:not([data-motion=off]) .launch-outcome .outcome-check{margin-top:22px}
}
/* Compact, touch-friendly enquiry and company copy. */
.contact-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.contact-dialog-heading h2{font-size:clamp(26px,3.3vw,40px);line-height:1.15;text-wrap:balance}
.contact-status{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
#contact-form[aria-busy=true]{cursor:progress}
.company-copy>p{max-width:44ch;line-height:1.65}
@media(max-width:600px){.contact-dialog-heading{align-items:flex-start}.contact-dialog-heading img{width:48px;height:48px;flex:0 0 48px}.contact-fields{grid-template-columns:minmax(0,1fr)}.contact-fields .wide{grid-column:1}.contact-fields input,.contact-fields select,.contact-fields textarea{min-width:0;width:100%;box-sizing:border-box;font-size:16px}.contact-send{width:100%;min-height:48px}.company-copy>p{font-size:16px}}

.footer-bottom>a{color:inherit;font:inherit;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}.footer-bottom>a:hover{color:var(--luois-red)}.footer-bottom>a:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* The monitor frame and the opaque LUOIS screen share one coordinate system. */
luois-board{display:block;aspect-ratio:1834/1110}
luois-board>svg{display:block;width:100%;height:100%;overflow:hidden}

/* All company services are visible, grouped by the three business areas. */
#unternehmen .company-grid{min-height:440px}
#unternehmen .company-copy{padding-block:36px}
#company-title{font-size:clamp(34px,4vw,54px);line-height:1.1;letter-spacing:-.035em;margin:0 0 24px}
.company-offerings{margin-top:56px}
.company-area-heading{display:flex;align-items:baseline;gap:18px;margin-bottom:30px}
.company-area-heading>span{color:var(--luois-red,#c00000);font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0}
.company-area-heading h3{margin:0;font-size:clamp(25px,2.5vw,34px);line-height:1.2;letter-spacing:-.025em}
.company-offering-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.company-offering-grid>div{min-width:0;padding-top:18px;border-top:2px solid var(--luois-red,#c00000)}
.company-offerings h4{font-size:18px;line-height:1.4;color:#f5f5f5;margin:0 0 14px}
.company-offerings ul{padding-left:19px;margin:0;font-size:16px;line-height:1.6;color:#c3cad4}
.company-offerings li+li{margin-top:9px}
.company-sector-note,.company-qualification{font-size:14px;line-height:1.6;color:#b8bec7;margin:22px 0 0;max-width:95ch}
.company-additional-areas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;margin-top:40px}
.company-additional-areas>.company-service-area{padding-top:28px;border-top:1px solid #ffffff2b;min-width:0}
.company-additional-areas .company-area-heading{margin-bottom:22px}
.company-service-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:28px;margin-top:36px;border-top:1px solid #ffffff2b}
.company-service-contact p{margin:0;color:#c3cad4;line-height:1.6;font-size:16px}
.company-service-contact strong{color:#f5f5f5;font-weight:600}
.company-service-contact .button{flex-shrink:0}
@media(max-width:1000px){.company-offering-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.company-additional-areas{gap:28px}}
@media(max-width:600px){#unternehmen .company-grid{min-height:0}#unternehmen .company-copy{padding:20px}#company-title{font-size:36px}.company-offerings{margin-top:36px}.company-area-heading{gap:12px;margin-bottom:24px}.company-area-heading h3{font-size:25px}.company-area-heading>span{font-size:14px}.company-offering-grid,.company-additional-areas{grid-template-columns:1fr;gap:26px}.company-additional-areas{margin-top:30px}.company-service-contact{align-items:stretch;flex-direction:column;gap:20px}.company-service-contact .button{justify-content:center;white-space:normal}}

/* Three clearly separated areas; retain readable columns on smaller displays. */
@media(min-width:1101px){.company-additional-areas{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.company-additional-areas .company-area-heading h3{font-size:clamp(24px,2.2vw,32px)}}
@media(min-width:601px) and (max-width:1100px){.company-additional-areas>section:last-child{grid-column:1/-1}}

/* brand-controls.css */
/* One brand red for website controls, independent of product/map assets. */
:root{--luois-red:#c00000;--red:var(--luois-red);--red-bright:var(--luois-red);--marketing-red:var(--luois-red)}
.connection-lines .connection-brand-stop{stop-color:var(--luois-red)}
.connection-intro .eyebrow{color:var(--luois-red)}
.brand-filter-defs{position:absolute;overflow:hidden;pointer-events:none}
.brand-red-fill{flood-color:var(--luois-red)}
img[src^="assets/prfs-white.png"],img[src^="assets/prfs-white.webp"],img[src^="assets/prfs-black.png"],img[src^="assets/prfs-icon.png"]{filter:url(#prfs-brand-red)}
.connection-diagram>.text-link,
.connection-diagram>.text-link:hover,
.connection-diagram>.text-link:focus-visible{color:var(--luois-red)}
.device-detail-copy>span,
.device-detail-copy .worksheet-link,
.device-detail-copy .worksheet-link:hover,
.device-detail-copy .worksheet-link:focus-visible{color:var(--luois-red)}
.launch-actions .button,.launch-bottom button,
.category-dialog>footer .button,.module-selection-bar .button,
#kontakt .contact-actions>.button,.contact-ready .button,
.local-copy .button,.map-planning-action,#show-detour{
 background:var(--luois-red);border-color:var(--luois-red);color:#fff;
}
.launch-actions .button:hover,.launch-bottom button:hover,
.category-dialog>footer .button:hover,.module-selection-bar .button:hover,
#kontakt .contact-actions>.button:hover,.contact-ready .button:hover,
.local-copy .button:hover,.map-planning-action:hover,#show-detour:hover{
 background:var(--luois-red);border-color:var(--luois-red);color:#fff;
 box-shadow:0 6px 22px #c0000033;
}
.category-tile:hover,.category-tile:focus-visible,
.catalogue-search-button:hover{
 background:var(--luois-red);border-color:var(--luois-red);
}
.category-tile>svg,.deployment-icon,.deployment-number{
 color:var(--luois-red)!important;
}
.tour-icon,.module-choice-top,.module-spotlight i,
.module-spotlight article>svg,.catalogue-group[open] .category-symbol,
.catalogue-row:hover .catalogue-icon,.module-detail-link{color:var(--luois-red)}
.quick-contact{background:var(--luois-red);border-color:var(--luois-red)}
.contact-fields :is(input,textarea,select):focus,
.contact-dialog .contact-status,
.catalogue-results .catalogue-row:hover,
.catalogue-results .catalogue-row:focus-within{border-color:var(--luois-red)}
.category-tile:is(:hover,:focus-visible)>svg,
.category-tile:is(:hover,:focus-visible)>small,
.category-tile:is(:hover,:focus-visible)>span{color:#fff!important}
.category-dialog header small{color:#d8dee6}
.category-entries .catalogue-row.is-selected,
.catalogue-results .catalogue-row.is-selected{
 border-color:var(--luois-red);background:#c000001a;
}
.catalogue-choice input{accent-color:var(--luois-red)}
.module-bullets>span::marker{color:var(--luois-red)}
.module-example{color:#f2f4f7;border-bottom-color:var(--luois-red)}
.module-example:hover{border-bottom-width:2px}
.planning-tabs button[aria-selected=true],
.device-picker button:hover,.device-picker button[aria-selected=true]{border-bottom-color:var(--luois-red)}
.header nav a:hover,.mobile-nav a:hover,footer a:hover,
footer button:hover{color:var(--luois-red)}

/* Keep the full touch target; show a red X without a surrounding circle. */
.category-dialog .category-close,
.feature-dialog .close-dialog,
.information-dialog .information-heading>button{
 display:grid;place-items:center;min-width:44px;min-height:44px;
 border:0;border-radius:4px;background:transparent;
 color:var(--luois-red);box-shadow:none;font-size:32px;line-height:1;
}
.category-dialog .category-close:hover,
.feature-dialog .close-dialog:hover,
.information-dialog .information-heading>button:hover{
 background:transparent;color:var(--luois-red);box-shadow:none;
}
button:focus-visible,a:focus-visible,
#kontakt .contact-actions>.button:focus-visible{outline-color:var(--luois-red)}
.category-dialog .category-close:focus-visible,
.feature-dialog .close-dialog:focus-visible,
.information-dialog .information-heading>button:focus-visible{
 outline:2px solid #fff;outline-offset:3px;
}

/* Icons in the catalogue use the same token as inquiry buttons. */
.module-catalogue .category-symbol,
.category-dialog .catalogue-icon,
.module-catalogue .catalogue-icon,
.module-catalogue .category-tile>svg,
.product-tour .tour-icon{
 color:var(--luois-red)!important;
 opacity:1;filter:none;
}
.module-catalogue .category-tile:is(:hover,:focus-visible)>svg{color:#fff!important}
.module-catalogue .module-selection-bar .button,
.category-dialog>footer .button{
 background-color:var(--luois-red);background-image:none;opacity:1;filter:none;
}
@media(max-width:600px){
 .product-tour .tour-options button{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;min-height:110px;text-align:center;
 }
 .product-tour .tour-options .tour-icon{
  display:flex;align-items:center;justify-content:center;margin:0;
  width:30px;height:30px;flex:0 0 30px;
 }
 .product-tour .tour-options .tour-icon svg{width:28px;height:28px}
 .product-tour .tour-options button>span:last-child{display:block;width:100%}
 .product-tour .tour-options strong{display:block;margin:0;font-size:15px;line-height:1.3}
 .product-tour .tour-options .tab-label-short{font-size:15px;line-height:1.3}
 .launch:not([data-motion=off]) .launch-outcome h2{font-size:clamp(25px,6.4vw,38px)}
}

/* marketing.css */
/* LUOIS product guidance, offer flow and focused product pages. */
.product-paths{background:#191919;color:#f5f5f5}.product-paths .path-heading{max-width:800px;margin-bottom:36px}.product-paths h2,.offer-heading h2{font-size:clamp(32px,4vw,58px);line-height:1.08;letter-spacing:-.035em;margin:12px 0 20px}.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.path-card{position:relative;border-top:2px solid #c00000;padding:26px 0 12px;min-width:0}.path-card>span{font-size:12px;letter-spacing:.09em;color:#a9a9a9}.path-card h3{font-size:24px;line-height:1.25;margin:16px 0}.path-card p{font-size:16px;line-height:1.65;color:#c4c4c4;margin:0 0 24px;max-width:36ch}.path-card a{display:inline-flex;gap:20px;color:#fff;font-size:15px;font-weight:600;text-decoration:none;padding:10px 0}.path-card a:hover{color:#fff;text-decoration:underline;text-decoration-color:#c00000;text-underline-offset:6px}.path-card a:focus-visible,.offer-faq summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}/* Offer area follows the dark product design, with one clear reading path. */
.offer-section{position:relative;isolation:isolate;background:radial-gradient(ellipse at 92% 0%,#c0000012,transparent 46%),#191b1e;color:#f5f5f5;border-block:1px solid #ffffff12}
.offer-top{display:grid;grid-template-columns:1.12fr 1fr;gap:clamp(36px,6vw,90px);align-items:start}
.offer-heading{max-width:650px;min-width:0}.offer-heading .eyebrow,.offer-faq-heading .eyebrow{color:#b7b9be}
.offer-heading h2{margin-top:18px;overflow-wrap:anywhere;hyphens:auto}.offer-heading .offer-lead{max-width:46ch;color:#c7c9ce;font-size:18px;line-height:1.7;margin:0}
.offer-factors{list-style:none;padding:0;display:grid;grid-template-columns:1fr;gap:0;margin:3px 0 0;min-width:0}
.offer-factors li{display:grid;grid-template-columns:38px 1fr;gap:20px;padding:23px 0;border-top:1px solid #ffffff24;min-width:0}.offer-factors li:last-child{border-bottom:1px solid #ffffff24}
.offer-factors>li>span{font-size:13px;color:#ddd;font-weight:700;padding-top:5px}.offer-factors>li>span:after{content:'';display:block;width:24px;height:2px;background:#c00000;margin-top:12px}
.offer-factors h3{font-size:22px;line-height:1.3;margin:0 0 9px;color:#f5f5f5}.offer-factors p{font-size:16px;line-height:1.65;color:#bfc2c8;margin:0;max-width:44ch}
.offer-actions{display:flex;align-items:flex-start;flex-direction:column;gap:18px;margin-top:30px}.offer-actions .button{background:#c00000!important;color:#fff!important;min-height:54px;transition:box-shadow .2s ease,transform .2s ease}.offer-actions .button:hover{box-shadow:0 8px 30px #c0000033;transform:translateY(-2px)}.offer-actions>a{color:#e1e1e1;text-decoration:none;border-bottom:1px solid #777;padding:4px 0;text-underline-offset:5px;font-size:15px}.offer-actions>a:hover{border-color:#c00000}
.offer-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,90px);margin-top:58px;padding-top:42px;border-top:1px solid #ffffff24}.offer-faq h3{font-size:clamp(25px,3vw,36px);line-height:1.2;letter-spacing:-.025em;margin:14px 0 0}.offer-faq-heading .eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;margin:0}.offer-questions{min-width:0}
.offer-faq details{border-bottom:1px solid #ffffff24;padding:18px 0}.offer-faq details:first-child{padding-top:0}.offer-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-size:16px;font-weight:600;line-height:1.55;list-style:none;color:#eee;min-height:28px}.offer-faq summary::-webkit-details-marker{display:none}.offer-faq summary:after{content:'+';font-size:25px;font-weight:400;line-height:1;flex-shrink:0;color:#ddd}.offer-faq details[open] summary:after{content:'−'}.offer-faq details[open] summary{color:#fff}.offer-faq details[open]{border-bottom-color:#c00000}.offer-faq details p{margin:14px 32px 0 0;line-height:1.7;font-size:15px;color:#bdc0c7;max-width:65ch}.offer-section a:focus-visible,.offer-section button:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:850px){.offer-top,.offer-faq{grid-template-columns:1fr;gap:32px}.offer-heading{max-width:720px}.offer-heading .offer-lead{max-width:60ch}.offer-actions{flex-direction:row;align-items:center;flex-wrap:wrap}.offer-faq{margin-top:38px;padding-top:32px}.offer-faq h3 br{display:none}.offer-faq h3{margin-top:10px}}
@media(max-width:650px){.offer-factors li{grid-template-columns:28px 1fr;gap:14px;padding:21px 0}.offer-factors h3{font-size:21px}.offer-heading .offer-lead{font-size:16px}.offer-faq details p{margin-right:0}.offer-heading h2{font-size:clamp(31px,8vw,42px)}}
.launch-actions .offer-text-link{color:#fff;text-decoration:underline;text-underline-offset:5px;font-size:14px}.launch-actions .offer-text-link:hover{color:#ff7777}
.topic-page{margin:0;background:#171717;color:#f5f5f5;font-family:Arial,Helvetica,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}.topic-page *{box-sizing:border-box}.topic-page a{color:inherit;text-underline-offset:5px}.topic-page a:hover{color:#fff;text-decoration-color:#c00000}.topic-page a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.topic-page .eyebrow,.product-paths .eyebrow,.offer-heading .eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700}.topic-header,.topic-page main,.topic-footer{width:min(1200px,calc(100% - 80px));margin:auto}.topic-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid #ffffff24}.topic-brand{display:flex;align-items:center;gap:15px;text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.08em;line-height:1.5}.topic-brand img{width:60px;height:60px}.topic-cta{display:inline-flex;align-items:center;justify-content:center;padding:15px 23px;background:#c00000;color:#fff!important;border-radius:6px;text-decoration:none;font-size:15px;font-weight:600;min-height:48px}.topic-cta:hover{box-shadow:0 5px 24px #c0000045}.topic-breadcrumb{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#bbb;padding:34px 0}.topic-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:48px;padding:30px 0 80px}.topic-hero h1{font-size:clamp(36px,4.5vw,65px);line-height:1.06;letter-spacing:-.04em;margin:20px 0 25px;text-wrap:balance}.topic-hero p:not(.eyebrow){font-size:18px;color:#c8c8c8;line-height:1.7}.topic-hero figure{margin:0;min-width:0}.topic-hero img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain}.topic-hero figcaption{color:#aaa;font-size:12px;line-height:1.6;margin-top:20px}.topic-text-link{display:inline-block;margin-top:12px;font-size:15px;font-weight:600}.topic-section{display:grid;grid-template-columns:70px 1fr;gap:30px;border-top:1px solid #ffffff30;padding:38px 0}.topic-number{color:#ddd;font-size:15px;padding-top:8px}.topic-section h2,.topic-answer h2{font-size:clamp(25px,3vw,36px);line-height:1.2;letter-spacing:-.025em;margin:0 0 22px}.topic-section p{max-width:76ch;color:#c9c9c9;font-size:17px}.topic-section ul{padding-left:20px;line-height:1.8;color:#ddd}.topic-answer{background:#222;border-left:3px solid #c00000;padding:40px;margin:35px 0 60px}.topic-answer p{max-width:75ch;color:#ccc}.topic-answer .topic-small{font-size:13px;margin-bottom:0}.topic-related{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-bottom:60px}.topic-related>span{color:#aaa;font-size:14px}.topic-related a{font-size:15px}.topic-footer{border-top:1px solid #ffffff24;display:flex;justify-content:space-between;gap:25px;padding:30px 0;font-size:13px;color:#bbb}.topic-footer nav{display:flex;flex-wrap:wrap;gap:20px}.topic-skip{position:absolute;top:-100px;left:15px;background:#fff;color:#111!important;padding:10px;z-index:100}.topic-skip:focus{top:10px}.topic-page .topic-legal{max-width:850px;padding:40px 0 80px;overflow-wrap:anywhere}.topic-legal h1{font-size:clamp(32px,5vw,52px);line-height:1.2}.topic-legal h3{margin-top:32px}.topic-legal address{font-style:normal}
@media(max-width:900px){.path-grid,.offer-factors{gap:24px}.path-card h3{font-size:21px}.topic-hero{gap:28px}.topic-header,.topic-page main,.topic-footer{width:calc(100% - 48px)}}
@media(max-width:650px){.path-grid,.offer-factors{grid-template-columns:1fr;gap:16px}.path-card p{max-width:none;margin-bottom:12px}.path-card{padding-top:20px}.offer-factors{margin:28px 0}.offer-actions{align-items:stretch;flex-direction:column;gap:18px}.offer-actions .button{justify-content:center}.offer-faq{margin-top:34px}.topic-header,.topic-page main,.topic-footer{width:calc(100% - 40px)}.topic-brand span{display:none}.topic-brand img{width:48px;height:48px}.topic-cta{font-size:14px;padding:12px 16px}.topic-hero{grid-template-columns:1fr;padding:8px 0 40px;gap:25px}.topic-hero h1{font-size:39px}.topic-hero img{max-height:310px}.topic-section{grid-template-columns:30px 1fr;gap:12px;padding:28px 0}.topic-section p{font-size:16px}.topic-answer{padding:25px 20px;margin:20px 0 36px}.topic-footer{flex-direction:column;gap:8px}.topic-related{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:40px}.topic-breadcrumb{padding:24px 0}}
@media(prefers-reduced-motion:reduce){.topic-page *{scroll-behavior:auto!important}}

.topic-page h1,.topic-page h2,.path-card h3{overflow-wrap:anywhere;hyphens:auto}

@media(prefers-reduced-motion:reduce){.offer-actions .button{transition:none}.offer-actions .button:hover{transform:none}}

/* Blue beacon reflections: slow, soft pulses behind the product, never a flash. */
.launch-sticky:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 46% 62% at 91% 44%,rgba(13,87,255,.48),transparent 76%),radial-gradient(ellipse 30% 28% at 59% 91%,rgba(24,114,255,.2),transparent 78%);opacity:.8}
.bos-beacon{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;contain:paint;mask-image:linear-gradient(90deg,transparent 30%,#000 60%)}
.bos-beacon:before,.bos-beacon:after{content:'';position:absolute;inset:-14%;transform-origin:84% 48%;pointer-events:none;filter:blur(18px)}
.bos-beacon:before{background:radial-gradient(ellipse 39% 12% at 89% 47%,rgba(82,173,255,.66),rgba(12,93,255,.36) 32%,transparent 74%),radial-gradient(ellipse 19% 39% at 95% 45%,rgba(0,78,255,.62),transparent 76%);animation:bos-beacon-sweep 7s ease-in-out infinite}
.bos-beacon:after{background:radial-gradient(ellipse 39% 9% at 73% 60%,rgba(55,137,255,.5),rgba(16,84,255,.24) 40%,transparent 78%);animation:bos-beacon-return 7s ease-in-out infinite}
@keyframes bos-beacon-sweep{0%,100%{opacity:.24;transform:rotate(-16deg) scale(.94)}45%{opacity:.92;transform:rotate(2deg) scale(1.06)}70%{opacity:.38;transform:rotate(15deg) scale(1)}}
@keyframes bos-beacon-return{0%,100%{opacity:.22;transform:rotate(12deg)}35%{opacity:.28;transform:rotate(3deg)}75%{opacity:.72;transform:rotate(-12deg)}}
.launch[data-motion=off] .bos-beacon:before,.launch[data-motion=off] .bos-beacon:after{animation:none;opacity:.45;transform:none}
.connection-diagram{background-image:radial-gradient(ellipse at 88% 35%,rgba(33,112,255,.085),transparent 58%)}
.offer-section{background-image:radial-gradient(ellipse at 96% 5%,rgba(33,112,255,.13),transparent 48%),radial-gradient(ellipse at 7% 100%,rgba(192,0,0,.055),transparent 46%)}
#unternehmen{background-image:radial-gradient(ellipse at 90% 0%,rgba(33,112,255,.065),transparent 42%)}
.topic-hero{background-image:radial-gradient(ellipse at 83% 50%,rgba(33,112,255,.10),transparent 62%)}
@media(max-width:900px){.launch-sticky:after{inset:0;background:radial-gradient(ellipse 80% 27% at 99% 32%,rgba(13,87,255,.35),transparent 78%)}.bos-beacon{top:260px;bottom:auto;height:650px;mask-image:linear-gradient(180deg,transparent,#000 25%,#000 65%,transparent)}.bos-beacon:before,.bos-beacon:after{inset:-4% -22%;filter:blur(16px)}}
@media(prefers-reduced-motion:reduce){.bos-beacon:before,.bos-beacon:after{animation:none;opacity:.45;transform:none}}

/* Service navigation: consistent outline icons and a concise regional profile. */
.company-area-heading{align-items:flex-start}
.company-area-heading>.service-icon{width:38px;height:38px;flex:0 0 38px;color:#c00000;margin-top:3px}
.company-offering-grid h4{display:flex;align-items:flex-start;gap:12px}
.company-offering-grid h4 .service-icon{width:26px;height:26px;flex:0 0 26px;color:#c00000}
.company-offering-grid h4 span{min-width:0}
.company-location{display:flex;gap:22px;align-items:flex-start;padding:30px 0;margin-top:36px;border-top:1px solid #393b3e}
.company-location>.service-icon{width:36px;height:36px;flex:0 0 36px;color:#c00000;margin-top:3px}
.company-location h3{font-size:clamp(22px,2.3vw,30px);line-height:1.2;margin:0 0 12px;max-width:30ch}
.company-location p{font-size:16px;line-height:1.65;color:#b7b9be;margin:0;max-width:78ch}
@media(max-width:600px){.company-area-heading{gap:12px}.company-area-heading>.service-icon{width:30px;height:30px;flex-basis:30px}.company-location{gap:14px;margin-top:24px;padding:24px 0}.company-location>.service-icon{width:28px;height:28px;flex-basis:28px}.company-location p{font-size:15px}}

/* Product journey: open on arrival; close after the product, before services. */
.launch{min-height:155svh;--closure:.62;--lid-angle:-55.8deg}
.launch .launch-login{opacity:calc(1 - var(--screen-reveal,0))}
.launch .launch-live{z-index:2;clip-path:inset(0 0 7%);opacity:var(--screen-reveal,0);transform:rotateX(var(--lid-angle,0deg)) scaleX(calc(1 + var(--closure,0)*.025));transform-origin:50% 93.2496%;backface-visibility:hidden}
.launch .launch-control{opacity:var(--intro-opacity,1)}
.launch-control[aria-hidden=true]{visibility:hidden;pointer-events:none}
.story-finale{position:relative;min-height:min(155svh,1250px);background:radial-gradient(ellipse at 76% 45%,#1247981a,transparent 60%),#0b0d10;color:#fff;--closure:0;--lid-angle:0deg;--lid-opacity:1;--finale-message:1}
.finale-sticky{height:min(800px,calc(100svh - var(--header-height)));min-height:490px;position:sticky;top:var(--header-height);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;overflow:hidden}
.finale-message{position:relative;z-index:4;text-align:center;opacity:var(--finale-message);transform:translateY(calc((1 - var(--finale-message))*12px))}
.finale-message img{width:76px;height:76px;object-fit:contain;margin:0 auto 16px;display:block}
.finale-message h2{font-size:clamp(38px,5vw,70px);letter-spacing:-.045em;line-height:1.08;margin:0 0 18px}
.finale-message p{font-size:clamp(15px,1.5vw,18px);line-height:1.6;color:#bdc2ca;margin:0}
.finale-device{position:relative;width:min(740px,80vw,calc((100svh - var(--header-height) - 310px)*1.726));aspect-ratio:2200/1274;flex-shrink:0;margin-top:20px;perspective:1600px;perspective-origin:50% 93.2496%;transform:translateY(calc(var(--closure)*-65%));filter:drop-shadow(0 18px 24px #0009)}
.finale-device img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.finale-lid{z-index:2;clip-path:inset(0 0 7%);transform-origin:50% 93.2496%;transform:rotateX(var(--lid-angle)) scaleX(calc(1 + var(--closure)*.025));backface-visibility:hidden;opacity:var(--lid-opacity)}
.finale-base{z-index:1}.finale-device .launch-lid-edge{z-index:3}
.story-finale[data-motion=off]{min-height:0}.story-finale[data-motion=off] .finale-sticky{position:relative;top:0;height:470px;min-height:0}
@media(max-width:900px){
 .launch{min-height:0}
 .launch:not([data-motion=off]) .launch-content:after{height:38svh}
 .launch:not([data-motion=off]) .launch-product{height:clamp(310px,calc(77vw + 20px),640px)}
 .launch:not([data-motion=off]) .launch-visual{transform:translateY(calc(var(--immersion)*-20px)) scale(calc(1 + var(--immersion)*.08))!important}
 .story-finale{min-height:min(145svh,1250px)}.finale-device{width:min(680px,90vw,calc((100svh - var(--header-height) - 300px)*1.726))}
 .finale-message img{width:64px;height:64px}.finale-message h2{font-size:clamp(38px,8vw,60px)}
}
@media(prefers-reduced-motion:reduce){.launch{min-height:0}.launch .launch-live{transform:none}.story-finale{min-height:0;--closure:1;--lid-angle:-90deg;--lid-opacity:0}.finale-sticky{position:relative;top:0;height:470px;min-height:0}}

.story-finale[data-motion=off] .finale-sticky{height:auto;min-height:420px;padding:54px 20px}
.story-finale[data-motion=off] .finale-device{--finale-width:min(640px,85vw);width:var(--finale-width);height:36px;aspect-ratio:auto;transform:none;margin-top:36px}
.story-finale[data-motion=off] .finale-lid{display:none}
.story-finale[data-motion=off] .finale-base{height:auto;top:auto;bottom:0}
.story-finale[data-motion=off] .launch-lid-edge{height:6px;top:calc(36px - var(--finale-width)*.0391 - 4px)}

/* Immediate product overview; the only laptop closing sequence is the finale. */
.launch.product-intro{position:relative;isolation:isolate;min-height:0!important;height:auto!important;overflow:hidden;padding:clamp(44px,5vw,80px) 5vw 20px;background:radial-gradient(ellipse at 89% 27%,#114b9738,transparent 52%),radial-gradient(ellipse at 50% 80%,#172e4924,transparent 64%),#0b0d10;color:#fff}
.product-intro .bos-beacon{inset:0;height:auto;mask-image:linear-gradient(90deg,transparent 26%,#000 75%)}
.intro-shell{display:grid;grid-template-columns:.86fr 1.2fr;align-items:center;gap:3vw;max-width:1680px;margin:0 auto}
.intro-copy{position:relative;z-index:3;min-width:0}
.intro-brand{display:flex;align-items:center;gap:16px;margin-bottom:25px}.intro-brand img{width:64px;height:64px;object-fit:contain}.intro-brand span{font-size:11px;line-height:1.6;letter-spacing:.1em;color:#c6cbd2}
.launch.product-intro h1{font-size:clamp(48px,5.1vw,84px);line-height:1.02;letter-spacing:-.045em;font-weight:650;margin:0 0 26px;max-width:10ch;text-wrap:initial}
.intro-lead{font-size:clamp(16px,1.45vw,20px);line-height:1.65;max-width:36ch;color:#c5cad2;margin:0 0 26px}
.intro-actions{display:flex;align-items:flex-start;flex-direction:column;gap:16px}.intro-actions .button{background:#c00000!important;border:1px solid #c00000;color:#fff;display:inline-flex;justify-content:center;gap:18px;min-height:50px;padding:14px 20px;font-size:14px;border-radius:5px;box-shadow:0 8px 28px #0003}.intro-actions .button:hover{background:#c00000;box-shadow:0 8px 32px #c0000038}.intro-module-link{font-size:14px;color:#e4e6eb;text-underline-offset:5px;text-decoration-color:#6c7077}.intro-module-link:hover{color:#fff;text-decoration-color:#c00000}
.intro-audience{font-size:12px;line-height:1.7;color:#8f99a7;max-width:47ch;margin:26px 0 0}
.intro-product{min-width:0;position:relative}
.intro-stage{position:relative;aspect-ratio:1.13;width:100%;margin:0;isolation:isolate}
.intro-stage:before{content:'';position:absolute;left:8%;right:1%;bottom:7%;height:22%;background:radial-gradient(ellipse,#2d7bf233,transparent 70%);filter:blur(25px);z-index:-1}
.product-intro .intro-device{position:absolute;display:block;line-height:0;filter:drop-shadow(0 18px 16px #0008);transition:filter .25s ease;transform:none;opacity:1;will-change:auto}
.intro-device :is(img,luois-board){display:block;width:100%;height:auto;object-fit:contain}.intro-device svg{width:100%;height:auto;display:block}
.product-intro .intro-device:hover{filter:drop-shadow(0 14px 18px #3a77ae50)}.intro-device:focus-visible{outline:2px solid #fff;outline-offset:8px;border-radius:5px}
.product-intro .intro-desktop{width:34%;left:1%;top:9%;z-index:1}
.product-intro .intro-board{width:58%;right:0;top:0;z-index:2}
.product-intro .intro-laptop{width:82%;left:-4%;top:40%;z-index:3}
.product-intro .intro-tablet{width:38%;right:-2%;bottom:0;z-index:4}
.intro-caption{font-size:12px;color:#aeb9c8;letter-spacing:.025em;text-align:center;margin:22px 0 0}
.intro-usecases{max-width:1680px;margin:clamp(40px,5vw,76px) auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #ffffff29;border-bottom:1px solid #ffffff17}
.intro-usecases>a{display:grid;grid-template-columns:1fr 18px;gap:10px 18px;padding:24px 25px;text-decoration:none;color:#fff;transition:background .2s ease;min-width:0}.intro-usecases>a:first-child{padding-left:0}.intro-usecases>a+ a{border-left:1px solid #ffffff17}.intro-usecases>a>span:first-child{font-size:10px;letter-spacing:.11em;color:#939da9;grid-column:1}.intro-usecases strong{font-size:clamp(14px,1.25vw,18px);font-weight:500;line-height:1.4;grid-column:1}.intro-usecases>a>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:23px;color:#c00000}.intro-usecases>a:hover{background:#ffffff04}.intro-usecases>a:focus-visible{outline:2px solid #fff;outline-offset:4px}
.intro-meta{max-width:1680px;margin:16px auto 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.intro-meta p{font-size:10px;line-height:1.5;color:#86919f;margin:0;max-width:65ch}.intro-meta .motion-toggle{flex:0 0 auto;display:flex;align-items:center;gap:8px;background:transparent;border:0;min-width:0;width:auto;padding:8px 0;color:#b4bcc7;font-size:12px}.intro-meta .switch-track{flex:0 0 40px;width:40px}
@media(prefers-reduced-motion:no-preference){.product-intro:not([data-motion=off]) .intro-stage{animation:intro-product-enter 1s cubic-bezier(.2,.65,.2,1) both}@keyframes intro-product-enter{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}}
@media(min-width:1600px){.intro-stage{max-width:920px;margin-left:auto}}
@media(max-width:1050px){.intro-shell{grid-template-columns:.9fr 1fr;gap:20px}.launch.product-intro h1{font-size:clamp(43px,5.5vw,58px)}.intro-brand img{width:50px;height:50px}.intro-brand span{font-size:10px}.intro-stage{aspect-ratio:1}.product-intro .intro-laptop{top:43%}.intro-usecases>a{padding:22px 16px}}
@media(max-width:760px){.launch.product-intro{padding:34px 6vw 16px}.intro-shell{grid-template-columns:1fr;gap:26px}.intro-brand{gap:13px;margin-bottom:20px}.intro-brand img{width:52px;height:52px}.launch.product-intro h1{font-size:clamp(44px,8.5vw,64px);max-width:none;line-height:1.03;margin-bottom:21px}.intro-lead{font-size:16px;max-width:40ch;margin-bottom:24px}.intro-actions{gap:15px}.intro-actions .button{font-size:13px;min-height:48px;padding:13px 16px}.intro-audience{font-size:11px;margin-top:22px;max-width:46ch}.intro-product{max-width:590px;width:100%;margin:0 auto}.intro-stage{aspect-ratio:1.14}.intro-caption{font-size:11px;margin:16px 0 0}.intro-usecases{grid-template-columns:1fr;margin-top:30px}.intro-usecases>a,.intro-usecases>a:first-child{padding:17px 0;gap:5px 15px}.intro-usecases>a+a{border-left:0;border-top:1px solid #ffffff17}.intro-usecases strong{font-size:16px}.intro-usecases>a>span:first-child{font-size:10px}.intro-meta{align-items:flex-start;gap:15px}.intro-meta p{font-size:10px;flex:1}.intro-meta .motion-toggle{font-size:11px;padding:0;gap:6px}.intro-meta .switch-state{display:none}.intro-meta .switch-track{flex-basis:34px;width:34px}}
@media(prefers-reduced-motion:reduce){.intro-stage,.intro-device{animation:none!important;transition:none!important}.intro-meta .motion-toggle{display:none}}
/* Compact rhythm, with the product examples kept intact. */
main>.section-pad:not(.brand-signature){padding-top:58px;padding-bottom:58px}
main>.connection-diagram{padding-top:54px;padding-bottom:54px}
.launch.product-intro{padding-top:36px}
.intro-shell{gap:2vw}.intro-usecases{margin-top:28px}.intro-usecases>a{padding-top:18px;padding-bottom:18px}
.device-gallery-heading{margin-bottom:24px}.device-rotation{margin-bottom:12px}.device-picker{margin-bottom:24px}.device-gallery-note{margin-top:20px}
.product-paths .path-heading{margin-bottom:24px}.offer-faq{margin-top:36px;padding-top:30px}.company-offerings{margin-top:34px}.company-additional-areas{gap:32px;margin-top:30px}
/* Complete the closing gesture before drawing the green confirmation. */
.story-finale{--finale-height:min(590px,calc(100svh - var(--header-height)));height:calc(var(--finale-height) + 260px);min-height:0}
.finale-sticky{height:var(--finale-height);min-height:0;padding:0 20px;display:block}
.finale-message{position:absolute;top:24px;left:20px;right:20px;z-index:4;transform:none}
.finale-message img{width:52px;height:52px;margin:0 auto 12px}.finale-message h2{font-size:clamp(34px,4.5vw,54px);margin-bottom:12px}.finale-message p{font-size:14px;line-height:1.5}
.finale-check{display:block;width:68px;height:68px;overflow:visible;margin:16px auto 0;color:#10ad60;fill:none;stroke:currentColor;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;opacity:0;filter:drop-shadow(0 0 14px #0eae6030)}
.finale-check circle,.finale-check path{stroke-dasharray:1;stroke-dashoffset:1}.story-finale.is-complete .finale-check{opacity:1}.story-finale.is-complete .finale-check circle{animation:finale-confirm .42s ease-out forwards}.story-finale.is-complete .finale-check path{animation:finale-confirm .28s .32s ease-out forwards}@keyframes finale-confirm{to{stroke-dashoffset:0}}
.finale-device{position:absolute;top:calc(var(--finale-height) - 370px);left:50%;width:min(680px,85vw);margin:0;transform:translateX(-50%) translateY(calc(var(--closure)*-65%))}
.story-finale[data-motion=off]{height:auto;min-height:0}.story-finale[data-motion=off] .finale-sticky{height:auto;min-height:0;padding:35px 20px}.story-finale[data-motion=off] .finale-message{position:relative;inset:auto}.story-finale[data-motion=off] .finale-device{position:relative;top:auto;left:auto;margin:28px auto 0;transform:none}.story-finale[data-motion=off] .finale-check{opacity:1}.story-finale[data-motion=off] .finale-check circle,.story-finale[data-motion=off] .finale-check path{animation:none;stroke-dashoffset:0}
@media(max-width:760px){main>.section-pad:not(.brand-signature){padding-top:38px;padding-bottom:38px}main>.connection-diagram{padding-block:38px}.launch.product-intro{padding-top:26px}.intro-shell{gap:16px}.intro-audience{margin-top:16px}.intro-usecases{margin-top:18px}.dispatch-caption{margin-top:12px}.dispatch-steps{gap:6px}.dispatch-steps button{font-size:12px;padding:11px 7px;gap:6px}.dispatch-steps button>span{font-size:10px}.dispatch-description{font-size:11px;min-height:33px}.intro-brand{margin-bottom:15px}.launch.product-intro h1{margin-bottom:16px}.intro-lead{margin-bottom:20px}.device-detail{gap:20px}.device-detail-copy{min-height:0}.company-additional-areas{gap:26px}.story-finale{--finale-height:510px;height:740px}.finale-message{top:22px}.finale-message img{width:48px;height:48px}.finale-message p{font-size:12px}.finale-check{width:58px;height:58px;margin-top:14px}.finale-device{top:245px;width:90vw}}
@media(max-height:570px) and (min-width:761px){.story-finale{--finale-height:470px}.finale-device{width:470px;top:245px}.finale-message{top:18px}.finale-message img{width:40px;height:40px}.finale-message h2{font-size:32px}.finale-message p{font-size:12px}.finale-check{width:52px;height:52px;margin-top:10px}}
@media(prefers-reduced-motion:reduce){.product-intro .intro-laptop{transform:none!important;transition:none}.dispatch-screen,.dispatch-alert,.dispatch-boot{transition:none}.dispatch-boot i b{animation:none!important}.story-finale .finale-check circle,.story-finale .finale-check path{animation:none;stroke-dashoffset:0}}
.product-intro .intro-stage{aspect-ratio:1.35}
.product-intro .intro-laptop{top:35%}
.finale-device{top:calc(var(--finale-height) - 410px)}
@media(max-width:760px){.product-intro .intro-stage{aspect-ratio:1.3}.finale-device{top:245px}}
@media(max-height:570px) and (min-width:761px){.finale-device{top:190px}}
/* Switch on the presentation. Content remains available without JavaScript. */
.power-gate[hidden]{display:none}
.power-gate{display:flex;min-height:min(570px,calc(100svh - 160px));flex-direction:column;align-items:center;justify-content:center;gap:30px;text-align:center;position:relative;z-index:4}
.power-welcome>img{width:88px;height:88px;object-fit:contain;margin:0 auto 26px;filter:drop-shadow(0 10px 28px #0008)}
.power-welcome .eyebrow{font-size:12px;letter-spacing:.14em;color:#a6b2c5;margin:0 0 16px}
.power-welcome h2{font-size:clamp(42px,5.4vw,78px);line-height:1.05;letter-spacing:-.04em;margin:0 0 20px;color:#fff}
.power-welcome>p:last-child{font-size:18px;line-height:1.5;color:#b9c4d3;margin:0}
.system-power{display:flex;align-items:center;gap:16px;background:transparent;border:0;padding:8px;color:#fff;font:inherit;cursor:pointer;min-height:64px;border-radius:40px}
.power-track{position:relative;display:block;width:104px;height:56px;flex-shrink:0;border:1px solid #f05a5a65;border-radius:40px;background:linear-gradient(180deg,#550b10,#250b0e);box-shadow:inset 0 3px 8px #0008,0 0 25px #c0000020;transition:background .35s,border-color .35s,box-shadow .35s}
.power-knob{position:absolute;display:grid;place-items:center;width:46px;height:46px;left:4px;top:4px;background:linear-gradient(150deg,#4e555e,#20252d);border:1px solid #ffffff40;border-radius:50%;color:#ff8989;box-shadow:0 3px 8px #0009;transition:transform .45s cubic-bezier(.2,.8,.2,1),color .35s}
.power-knob svg{width:24px;height:24px}.power-label{font-size:16px;font-weight:550}.power-state{font-size:11px;letter-spacing:.13em;color:#c0a0a3}
.system-power[aria-checked=true] .power-track{background:linear-gradient(180deg,#085c3d,#093626);border-color:#56d49d99;box-shadow:inset 0 3px 8px #0008,0 0 25px #19c67b30}
.system-power[aria-checked=true] .power-knob{transform:translateX(48px);color:#8cffc5}.system-power[aria-checked=true] .power-state{color:#8cffc5}
.system-power:focus-visible{outline:2px solid #fff;outline-offset:5px}.system-power:hover .power-knob{border-color:#ffffff80}
.product-intro.power-ready:not(.is-powered) :is(.intro-shell,.intro-meta){display:none}
.product-intro.is-powered .power-gate{min-height:0;flex-direction:row;justify-content:flex-end;gap:0;margin:0 auto 12px;max-width:1680px}
.product-intro.is-powered .power-welcome{display:none}
.product-intro.is-powered .system-power{min-height:44px;padding:0 4px;gap:10px}.product-intro.is-powered .power-track{width:64px;height:36px}.product-intro.is-powered .power-knob{width:28px;height:28px;left:3px;top:3px}.product-intro.is-powered .power-knob svg{width:17px;height:17px}.product-intro.is-powered .system-power[aria-checked=true] .power-knob{transform:translateX(28px)}.product-intro.is-powered .power-label{font-size:13px}.product-intro.is-powered .power-state{font-size:10px}
.product-intro .intro-stage{animation:none!important;perspective:1400px}
.product-intro.is-powered .intro-copy{animation:power-copy-in .85s .12s cubic-bezier(.2,.7,.2,1) both}
.product-intro.is-powered .intro-device{animation:power-device-in 1.15s var(--enter-delay,.2s) cubic-bezier(.16,.8,.2,1) both}
.product-intro .intro-desktop{--enter-delay:.18s;--enter-x:40px;--enter-turn:-7deg}.product-intro .intro-board{--enter-delay:.30s;--enter-x:65px;--enter-turn:-9deg}.product-intro .intro-laptop{--enter-delay:.43s;--enter-x:45px;--enter-turn:-5deg}.product-intro .intro-tablet{--enter-delay:.57s;--enter-x:65px;--enter-turn:-8deg}
@keyframes power-copy-in{from{opacity:0;transform:translate3d(-35px,0,0)}to{opacity:1;transform:none}}
@keyframes power-device-in{from{opacity:0;transform:translate3d(var(--enter-x),26px,-55px) rotateY(var(--enter-turn)) scale(.96)}to{opacity:1;transform:translate3d(0,0,0) rotateY(0) scale(1)}}
/* LED double impulses: localized light cores, short rise, deliberate dark intervals. */
.product-intro .bos-beacon{mask-image:linear-gradient(90deg,transparent 20%,#000 72%)}
.product-intro .bos-beacon:before,.product-intro .bos-beacon:after{animation:none;opacity:.16;filter:blur(3px)}
.product-intro.is-powered .bos-beacon:before{animation:led-bokeh-pulse 4.8s .15s linear both}
.product-intro.is-powered .bos-beacon:after{animation:led-bokeh-pulse 4.8s .15s linear both}
@keyframes led-bokeh-pulse{0%,4%,10%,12%,18%,27%,58%,70%,76%,78%,84%,100%{opacity:.07}5%,7%,13%,15%,71%,73%,79%,81%{opacity:.82}35%,47%{opacity:.58}}
.connection-diagram{position:relative;isolation:isolate;overflow:hidden}
.network-beacon{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.network-beacon:before,.network-beacon:after{content:'';position:absolute;inset:0;opacity:.15;filter:blur(24px);background:radial-gradient(ellipse 32% 35% at 98% 35%,#075cff99,transparent 75%);transform-origin:80% 45%}
.network-beacon:after{background:radial-gradient(ellipse 23% 32% at 1% 68%,#258aff70,transparent 76%);transform-origin:20% 50%}
.beacon-visible .network-beacon:before{animation:led-bokeh-pulse 4.8s linear both}.beacon-visible .network-beacon:after{animation:led-bokeh-pulse 4.8s linear both}
#geraete .device-gallery-heading{display:grid;grid-template-columns:1.35fr .65fr;gap:40px;align-items:end;margin-bottom:20px}
#geraete .device-gallery-heading h2{font-size:clamp(34px,3.9vw,62px);line-height:1.07;letter-spacing:-.035em;max-width:18ch}
#geraete .device-gallery-heading>p{font-size:16px;line-height:1.7;max-width:34ch;margin:0;color:#b6c0cf}
#geraete .device-picker{background:linear-gradient(180deg,#ffffff03,transparent);border-top:1px solid #ffffff1c;border-bottom:1px solid #ffffff1c;padding:18px 0;margin-bottom:20px}
#geraete .device-picker button{transition:background .25s,transform .25s;border-radius:8px}#geraete .device-picker button:hover{background:#ffffff06;transform:translateY(-3px)}
@media(max-width:760px){.power-gate{min-height:min(530px,calc(100svh - 140px));gap:24px}.power-welcome>img{width:76px;height:76px;margin-bottom:22px}.power-welcome .eyebrow{font-size:10px;max-width:28ch;margin:0 auto 18px;line-height:1.6}.power-welcome h2{font-size:43px}.power-welcome>p:last-child{font-size:16px}.system-power{gap:12px}.power-label{font-size:14px}.power-state{font-size:10px}.power-track{width:94px;height:52px}.power-knob{width:42px;height:42px}.system-power[aria-checked=true] .power-knob{transform:translateX(42px)}.product-intro.is-powered .power-gate{margin-bottom:18px}.product-intro.is-powered .power-label{font-size:12px}.product-intro.is-powered .system-power[aria-checked=true] .power-knob{transform:translateX(28px)}.product-intro.is-powered .intro-copy{animation-name:power-copy-mobile}@keyframes power-copy-mobile{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}#geraete .device-gallery-heading{grid-template-columns:1fr;gap:16px}#geraete .device-gallery-heading h2{font-size:clamp(32px,8.5vw,46px)}#geraete .device-gallery-heading>p{font-size:15px;max-width:42ch}#geraete .device-picker{padding:12px 0}}
@media(prefers-reduced-motion:reduce){.product-intro.is-powered .intro-copy,.product-intro.is-powered .intro-device,.product-intro .bos-beacon:before,.product-intro .bos-beacon:after,.network-beacon:before,.network-beacon:after{animation:none!important}.power-track,.power-knob{transition:none}#geraete .device-picker button{transition:none}}
.product-intro{overflow-anchor:none}
.network-controls{max-width:1160px;margin:0 auto 12px;text-align:right}.network-flow-toggle{background:none;border:0;color:#abb9cb;font:inherit;font-size:12px;min-height:36px;padding:8px 0;cursor:pointer}.network-flow-toggle:hover{color:#fff}.network-flow-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}.network-flow-toggle:disabled{display:none}
.connection-diagram .connection-body>.connection-lines>path{animation:none;stroke-dasharray:none;stroke-width:1.4;opacity:.36}
.connection-diagram .connection-body>.connection-lines>path.connection-packet{stroke-width:2.8;stroke-dasharray:18 110;stroke-linecap:round;opacity:1;animation:luois-data-flow 3s linear infinite;animation-delay:var(--flow-delay,0s);animation-play-state:paused;filter:drop-shadow(0 0 3px #93bfff55)}
.connection-diagram.flow-running .connection-body>.connection-lines>path.connection-packet{animation-play-state:running}
@keyframes luois-data-flow{to{stroke-dashoffset:-256}}
@media(prefers-reduced-motion:reduce){.connection-diagram .connection-body>.connection-lines>path.connection-packet{display:none}}
/* A deliberate entry screen, before the product or company content is opened. */
.entry-locked body{padding-top:0!important}
.entry-locked body>.header,.entry-locked body>.mobile-nav,.entry-locked body>.quick-contact,.entry-locked body>footer,.entry-locked main>section:not(.launch){display:none!important}
.entry-locked .launch.product-intro{padding:30px 6vw;min-height:100svh!important;display:flex;align-items:center;justify-content:center}
.entry-locked .launch .intro-shell,.entry-locked .launch .intro-meta{display:none}
.entry-locked .power-gate{display:flex;min-height:0;width:100%;gap:22px}
.power-welcome>img{width:140px;height:140px;margin-bottom:18px}.power-welcome h2{font-size:clamp(42px,5vw,68px);margin-bottom:14px}.power-welcome .eyebrow{margin-bottom:14px}.power-welcome>p:last-child{font-size:16px}
.system-power{display:grid;grid-template-columns:32px 112px 32px;justify-content:center;column-gap:14px;row-gap:12px;border-radius:12px;padding:8px 18px;min-height:94px}
.system-power .power-track{width:112px;height:58px}.system-power .power-knob{width:48px;height:48px;left:4px;top:4px;transition:transform .58s cubic-bezier(.2,.8,.2,1),color .4s}
.system-power[aria-checked=true] .power-knob{transform:translateX(54px)}
.power-off,.power-state{font-size:12px;letter-spacing:.1em;transition:color .4s}.power-off{color:#ffb1b1}.power-state{color:#63756c}.system-power[aria-checked=true] .power-off{color:#64706e}.system-power[aria-checked=true] .power-state{color:#91ffcb}
.system-power .power-label{grid-column:1/-1;font-size:15px;line-height:1.3;text-align:center}.system-power:disabled{cursor:wait;opacity:1}
.company-entry{display:flex;align-items:center;justify-content:center;gap:28px;padding:22px 6px 6px;border:0;border-top:1px solid #ffffff22;background:none;color:#c8d0dc;cursor:pointer;margin-top:6px;font-size:14px}
.company-entry>img{width:180px;height:auto}.company-entry>span{display:flex;align-items:center;gap:22px}.company-entry>span>span{color:#fff;font-size:22px}.company-entry:hover{color:#fff}.company-entry:focus-visible{outline:2px solid #fff;outline-offset:5px}
.entry-legal{display:flex;gap:24px;margin-top:8px}.entry-legal button{border:0;background:none;font:inherit;font-size:12px;color:#8e98a8;padding:8px 0;min-height:36px}.entry-legal button:hover{color:#c00000}
.product-intro.is-powered .company-entry,.product-intro.is-powered .entry-legal{display:none}
.product-intro.is-powered .system-power{display:flex;min-height:44px;gap:10px}.product-intro.is-powered .power-off,.product-intro.is-powered .power-state{display:none}.product-intro.is-powered .system-power .power-track{width:64px;height:36px}.product-intro.is-powered .system-power .power-knob{width:28px;height:28px;left:3px;top:3px}.product-intro.is-powered .system-power[aria-checked=true] .power-knob{transform:translateX(28px)}.product-intro.is-powered .system-power .power-label{font-size:12px}
.entry-locked .bos-beacon:before{animation:led-bokeh-pulse 4.8s .4s linear both}.entry-locked .bos-beacon:after{animation:led-bokeh-pulse 4.8s .4s linear both}
/* Original flowing dashed interface lines, with their colour transition intact. */
.connection-diagram .connection-body>.connection-lines>path{opacity:1;stroke-width:1.8;stroke-dasharray:7 7;animation:exchange-flow 3.5s linear infinite;animation-play-state:paused;filter:none}
.connection-diagram.flow-running .connection-body>.connection-lines>path{animation-play-state:running}
/* More breathing room between logo, statement, confirmation and closed device. */
.story-finale{--finale-height:570px;height:calc(var(--finale-height) + 260px)}
.finale-message{top:20px}.finale-message img{width:82px;height:82px;margin-bottom:22px}.finale-message h2{font-size:clamp(36px,4vw,52px);margin-bottom:20px}.finale-message p{font-size:14px;line-height:1.6}.finale-check{width:76px;height:76px;margin-top:26px}
.finale-device{top:calc(130px + var(--closure)*225px);width:min(680px,85vw)}
/* Company: one clear introduction, then four service areas with details on demand. */
#unternehmen{background:radial-gradient(ellipse at 100% 0%,#14305a30,transparent 55%),#11151b;padding-block:60px}
#unternehmen .section-label{margin-bottom:32px}
#unternehmen .company-grid{grid-template-columns:1fr 1fr;gap:6vw;align-items:center}
#unternehmen .company-copy{order:0;padding:0;max-width:none}
#unternehmen .company-photo{order:1;border:0;border-radius:14px;align-self:stretch;min-height:360px;position:relative;background:#172538;overflow:hidden}
#unternehmen .company-photo>img{height:100%;width:100%;aspect-ratio:auto;object-fit:cover;object-position:52% 55%}
#unternehmen .company-feature-logo{width:min(280px,80%);margin:0 0 28px}
#unternehmen .company-copy h2{font-size:clamp(36px,4.2vw,60px);line-height:1.08;margin:0 0 24px}
#unternehmen .company-copy p{font-size:17px;line-height:1.7;max-width:48ch;color:#bbc5d2;margin:0 0 16px}
#unternehmen .company-offerings{margin-top:52px}
.company-service-intro{display:flex;justify-content:space-between;align-items:baseline;gap:28px;margin-bottom:24px}.company-service-intro .eyebrow{font-size:11px;letter-spacing:.12em;color:#aab6c5;margin:0}.company-service-intro h3{font-size:clamp(23px,2.5vw,32px);margin:0}
#unternehmen .company-additional-areas{display:contents}
.company-service-row{border-top:1px solid #ffffff26;padding:0}.company-service-row:last-of-type{border-bottom:1px solid #ffffff26}
.company-service-row>summary{list-style:none;display:grid;grid-template-columns:34px 38px 1fr 30px;gap:22px;align-items:center;padding:26px 0;cursor:pointer}.company-service-row>summary::-webkit-details-marker{display:none}.service-number{font-size:12px;color:#8493a7}.company-service-row>summary>.service-icon{width:32px;height:32px;color:#c00000}.company-service-row h3{font-size:clamp(21px,2vw,28px);line-height:1.3;margin:0 0 7px}.company-service-row h3 br{display:none}.company-service-row summary p{font-size:15px;color:#a7b3c3;line-height:1.5;margin:0}.service-expand{justify-self:end;font-size:27px;color:#b7c0ce;transition:transform .25s,color .25s}.company-service-row[open] .service-expand{transform:rotate(45deg);color:#c00000}.company-service-row>summary:hover h3{color:#fff}.company-service-row>summary:hover .service-expand{color:#c00000}.company-service-row>summary:focus-visible{outline:2px solid #fff;outline-offset:5px}
.service-detail-content{padding:0 0 28px 116px;animation:service-detail-in .35s ease-out}.service-detail-content .company-offering-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 36px}.service-detail-content .company-offering-grid>div{border:0;padding:0;background:none}.service-detail-content h4{font-size:17px;line-height:1.4}.service-detail-content .company-offering-grid ul,.service-detail-content .company-area-list{font-size:15px;line-height:1.8;color:#bac3d0}.service-detail-content .company-area-list{columns:2;column-gap:36px}.service-detail-content .company-area-list li{break-inside:avoid}.service-detail-content .company-sector-note,.service-detail-content .company-qualification{font-size:13px;line-height:1.6;color:#91a0b3;margin-top:22px;max-width:78ch}
@keyframes service-detail-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
#unternehmen .company-location{padding:24px 0;margin-top:22px;gap:20px;border-top:0}#unternehmen .company-location h3{font-size:21px;max-width:none;margin-bottom:10px}#unternehmen .company-location p{font-size:15px;line-height:1.7;max-width:80ch}
#unternehmen .company-service-contact{border-top:1px solid #ffffff25;padding-top:26px;margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:25px}#unternehmen .company-service-contact p{font-size:15px;margin:0;color:#aab7c8}#unternehmen .company-service-contact strong{font-size:20px;color:#fff;font-weight:550}
@media(max-width:760px){.entry-locked .launch.product-intro{padding:28px 22px}.entry-locked .power-gate{gap:19px}.power-welcome>img{width:116px;height:116px}.power-welcome h2{font-size:40px}.power-welcome .eyebrow{font-size:10px}.company-entry{gap:16px;flex-direction:column;padding-top:18px}.company-entry>img{width:168px}.company-entry>span{font-size:13px;gap:14px}.entry-legal{gap:22px;margin-top:0}.entry-legal button{font-size:11px}.story-finale{--finale-height:570px;height:800px}.finale-message{top:24px}.finale-message img{width:76px;height:76px;margin-bottom:22px}.finale-message h2{font-size:35px;margin-bottom:18px}.finale-message p{font-size:13px}.finale-check{width:68px;height:68px;margin-top:24px}.finale-device{top:calc(215px + var(--closure)*185px);width:90vw}#unternehmen .company-grid{grid-template-columns:1fr;gap:24px}#unternehmen .company-photo{min-height:0;aspect-ratio:1.7}#unternehmen .company-copy h2{font-size:36px}#unternehmen .company-copy p{font-size:16px}#unternehmen .company-feature-logo{width:235px;margin-bottom:22px}#unternehmen .company-offerings{margin-top:30px}.company-service-intro{display:block;margin-bottom:20px}.company-service-intro .eyebrow{margin-bottom:12px}.company-service-intro h3{font-size:24px}.company-service-row>summary{grid-template-columns:28px 1fr 22px;gap:14px;padding:22px 0}.service-number{display:none}.company-service-row>summary>.service-icon{width:26px;height:26px}.company-service-row h3{font-size:21px}.company-service-row summary p{font-size:14px}.service-detail-content{padding:0 0 24px 0}.service-detail-content .company-offering-grid{grid-template-columns:1fr;gap:24px}.service-detail-content .company-area-list{columns:1}#unternehmen .company-service-contact{align-items:stretch;flex-direction:column;gap:18px}#unternehmen .company-service-contact .button{justify-content:center}.entry-locked .launch:after{display:none}}
@media(max-height:650px) and (min-width:761px){.entry-locked .power-gate{gap:12px}.power-welcome>img{width:88px;height:88px;margin-bottom:12px}.power-welcome h2{font-size:42px;margin-bottom:8px}.power-welcome .eyebrow{margin-bottom:8px}.entry-locked .launch.product-intro{padding:18px 6vw}.company-entry{padding-top:12px}.story-finale{--finale-height:570px}}
@media(prefers-reduced-motion:reduce){.entry-locked .bos-beacon:before,.entry-locked .bos-beacon:after,.connection-diagram .connection-body>.connection-lines>path,.service-detail-content{animation:none!important}.power-knob{transition:none!important}.story-finale[data-motion=off] .finale-device{top:auto}.story-finale[data-motion=off] .finale-message{top:auto}}
.company-service-row[open]>summary>.service-icon,.company-service-row[open]>summary>.service-number{transform:none}

/* Matched-height, defocused LED clusters behind a frosted-glass surface. */
.product-intro .bos-beacon{mask-image:linear-gradient(90deg,#000 8%,#0005 35%,#0002 50%,#0005 65%,#000 92%)}
.product-intro .bos-beacon:before,.product-intro .bos-beacon:after,.network-beacon:before,.network-beacon:after{inset:0;transform:none;filter:blur(24px);background:radial-gradient(ellipse 10% 15% at var(--beacon-x) 50%,#99d6ff80 0%,#368fff70 38%,#0066ff35 66%,transparent 100%),radial-gradient(ellipse 28% 34% at var(--beacon-x) 50%,#006aff85 0%,#004eff45 44%,transparent 85%);will-change:opacity}
.product-intro .bos-beacon:before,.network-beacon:before{--beacon-x:12%}
.product-intro .bos-beacon:after,.network-beacon:after{--beacon-x:88%}
@media(max-width:760px){.product-intro .bos-beacon{mask-image:linear-gradient(90deg,#000,#0003 38%,#0003 62%,#000)}.product-intro .bos-beacon:before,.product-intro .bos-beacon:after,.network-beacon:before,.network-beacon:after{filter:blur(18px)}}
@media(prefers-reduced-motion:reduce){.product-intro .bos-beacon:before,.product-intro .bos-beacon:after,.network-beacon:before,.network-beacon:after{animation:none!important;opacity:.14;will-change:auto}}

/* Direct product introduction: real display, CSS perspective, no entry gate. */
.network-beacon,.product-intro .bos-beacon{display:none}
.launch.product-intro.direct-intro{background:#191b1f;padding:clamp(44px,5vw,84px) 5vw 25px;overflow:hidden}
.direct-intro .intro-shell{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:4vw;max-width:1560px}
.direct-intro .intro-brand{gap:18px;margin-bottom:28px}.direct-intro .intro-brand img{width:84px;height:84px}.direct-intro .intro-brand span{font-size:11px;color:#c3c6cc}
.direct-intro #launch-title{font-size:clamp(35px,3.45vw,62px);line-height:1.1;letter-spacing:-.04em;max-width:none;margin-bottom:24px;overflow-wrap:normal}
.direct-intro h1 span{color:#aab5c6}.direct-intro .intro-lead{font-size:clamp(16px,1.35vw,19px);max-width:39ch;line-height:1.65;color:#c5c8ce}
.direct-intro .intro-audience{font-size:13px;line-height:1.65;max-width:44ch;margin-top:24px}
.hero-board-stage{min-width:0;width:100%;margin:0;perspective:1300px;position:relative;padding:24px 0;align-self:center}
.hero-board{display:block;position:relative;width:100%;aspect-ratio:1834/1110;padding:0;border:0;background:none;border-radius:3px;cursor:zoom-in;transform-style:preserve-3d;transform:translateY(var(--board-rise,0px)) rotateX(var(--board-x,0deg)) rotateY(var(--board-y,0deg));transition:transform .3s cubic-bezier(.2,.65,.3,1);filter:drop-shadow(0 25px 18px #0007);isolation:isolate}
.hero-board:focus-visible{outline:2px solid #fff;outline-offset:8px}.hero-board-photo{display:block;width:100%;height:100%;object-fit:contain}
.hero-board-screen{position:absolute;left:2.05%;right:2.05%;top:3.1%;bottom:7.1%;overflow:hidden;background:#222;display:block}
.hero-board-screen>img{display:block;width:100%;height:100%;object-fit:contain}
.screen-beacon{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 110% 95% at 50% 50%,#167aff88,#0065ff38 70%,#004fe814);animation:screen-led .4667s steps(1,end) infinite;opacity:.035}
@keyframes screen-led{0%{opacity:.18}28.57%{opacity:.02}42.86%{opacity:.18}64.29%,100%{opacity:.02}}
.beacon-paused .screen-beacon{animation:none;opacity:.02}
.screen-reflection{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--reflection-x,50%) 0%,#ffffff16,transparent 62%);opacity:.55}
.hero-board-stage figcaption{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:27px;font-size:12px;line-height:1.5;color:#a8aeb8}
.hero-board-open{border:0;background:none;color:#fff;font:inherit;cursor:pointer;padding:9px 0;white-space:nowrap}.hero-board-open span{color:#c00000;padding-left:8px}.hero-board-open:hover{color:#e09292}.hero-board-open:focus-visible,.beacon-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
.beacon-toggle{display:block;margin:3px 0 0 auto;padding:6px 0;min-height:32px;background:none;border:0;color:#939ca8;font:inherit;font-size:11px;cursor:pointer}.beacon-toggle:hover{color:#fff}.beacon-toggle[hidden]{display:none}
.direct-intro .intro-meta{max-width:1560px;margin-top:30px}.direct-intro .intro-meta p{max-width:none;color:#8e949e;font-size:11px}
@media(prefers-reduced-motion:no-preference){.direct-intro .intro-copy{animation:direct-copy-in .85s cubic-bezier(.2,.7,.2,1) both}.hero-board-stage{animation:direct-board-in 1.1s .1s cubic-bezier(.2,.7,.2,1) both}@keyframes direct-copy-in{from{opacity:0;translate:-20px 0}to{opacity:1;translate:0 0}}@keyframes direct-board-in{from{opacity:0;translate:30px 18px}to{opacity:1;translate:0 0}}}
@media(max-width:1050px){.direct-intro .intro-shell{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:22px}.direct-intro #launch-title{font-size:clamp(29px,3.4vw,37px)}.direct-intro .intro-brand img{width:70px;height:70px}.hero-board-stage figcaption{flex-direction:column;align-items:flex-start;gap:2px}.beacon-toggle{margin-left:0}.direct-intro .intro-audience{font-size:12px}}
@media(max-width:760px){.launch.product-intro.direct-intro{padding:32px 6vw 22px}.direct-intro .intro-shell{grid-template-columns:1fr;gap:24px}.direct-intro .intro-brand{margin-bottom:24px;gap:15px}.direct-intro .intro-brand img{width:72px;height:72px}.direct-intro .intro-brand span{font-size:10px}.direct-intro #launch-title{font-size:clamp(28px,7.25vw,48px);margin-bottom:20px}.direct-intro .intro-lead{font-size:16px;max-width:36ch;margin-bottom:22px}.direct-intro .intro-audience{font-size:12px;margin-top:20px}.hero-board-stage{padding:6px 0 0;max-width:620px;margin:auto}.hero-board-stage figcaption{flex-direction:row;align-items:center;font-size:11px;margin-top:14px;gap:12px}.hero-board-open{min-height:44px}.beacon-toggle{margin:0 0 0 auto;min-height:36px}.direct-intro .intro-meta{margin-top:12px}.direct-intro .intro-meta p{font-size:10px;max-width:50ch}}
@media(prefers-reduced-motion:reduce){.hero-board{transform:none!important;transition:none}.screen-beacon{animation:none;opacity:.02}.direct-intro .intro-copy,.hero-board-stage{animation:none!important}.beacon-toggle{display:none}}

#unternehmen .company-intro-kicker{font-size:11px;letter-spacing:.1em;color:#aeb9ca;margin-bottom:15px}
#unternehmen .company-copy h2{font-size:clamp(34px,4.2vw,58px);max-width:17ch}
.company-services-link{display:inline-flex;align-items:center;gap:20px;color:#fff;text-decoration:none;font-size:14px;padding:10px 0;margin-top:4px;border-bottom:1px solid #c00000}
.company-services-link span{color:#c00000}.company-services-link:hover{color:#e37b7b}
.company-approach{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:40px 0 10px;padding:30px 0;border-block:1px solid #ffffff20}
.company-approach>div{position:relative;padding-left:35px}.company-approach>div>span{position:absolute;left:0;top:3px;color:#c00000;font-size:13px}
.company-approach h3{font-size:22px;font-weight:550;margin:0 0 10px}.company-approach p{color:#afbbc9;font-size:15px;line-height:1.65;margin:0;max-width:30ch}
#company-services{scroll-margin-top:110px}.service-request{display:inline-flex;align-items:center;gap:22px;margin-top:22px;padding:12px 0;border:0;border-bottom:1px solid #c00000;background:none;color:#fff;font:inherit;font-size:14px;cursor:pointer}.service-request>span{color:#c00000}.service-request:hover{color:#ef9a9a}.service-request:focus-visible,.company-services-link:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:760px){.company-approach{grid-template-columns:1fr;gap:24px;margin-top:28px;padding:25px 0}.company-approach h3{font-size:20px;margin-bottom:6px}.company-approach p{max-width:38ch}.company-approach>div{padding-left:35px}#unternehmen .company-copy h2{font-size:36px}.company-services-link{font-size:14px}.service-request{min-height:44px}}


.direct-intro #launch-title:before,.direct-intro #launch-title:after{display:none}

@media(min-width:901px) and (prefers-reduced-motion:no-preference){.hero-board{animation:hero-board-settle 1.25s .1s cubic-bezier(.18,.7,.2,1) backwards}@keyframes hero-board-settle{from{transform:translateZ(-70px) rotateX(4deg) rotateY(-10deg)}to{transform:translateY(var(--board-rise,0px)) rotateX(var(--board-x,0deg)) rotateY(var(--board-y,0deg))}}}

/* Compact, keyboard-accessible source disclosures. */
.credits-list{display:block;margin:24px 0}.credits-list details{border-top:1px solid #ffffff26;padding:0}.credits-list details:last-child{border-bottom:1px solid #ffffff26}.credits-list summary{min-height:48px;box-sizing:border-box;padding:14px 4px;cursor:pointer;font-size:16px;font-weight:600;color:#fff;line-height:1.4}.credits-list summary::marker{color:#c00000}.credits-list summary:hover{color:#fff;background:#ffffff05}.credits-list summary:focus-visible{outline:2px solid #fff;outline-offset:3px}.credits-list details p{margin:0;padding:0 4px 18px;font-size:14px;line-height:1.65;color:#c3cbd3}.credits-list a{color:#fff;text-underline-offset:3px}.credits-list a:hover{color:#c00000}@media(prefers-reduced-motion:no-preference){.credits-list summary{transition:background .2s}}

#image-credits{background:#191d24;color:#fff;border:1px solid #ffffff20}#image-credits h2,#image-credits .close-dialog{color:#fff}#image-credits .dialog-top>span{color:#b9c3cf}#image-credits .credits-intro{color:#b9c3cf}#image-credits .button-dark{background:#c00000;border-color:#c00000}.credits-list summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none}.credits-list summary::-webkit-details-marker{display:none}.credits-list summary:after{content:'+';font-size:22px;font-weight:400;color:currentColor}.credits-list details[open]>summary:after{content:'−'}

/* layout.css */
/* Shared composition: one colour system, one spacing scale, real product views. */
:root{--surface-base:#191b1f;--surface-raised:#202328;--surface-deep:#14161a;--text-primary:#f4f5f7;--text-secondary:#bec3cc;--hairline:#ffffff1c;--card-blue:linear-gradient(145deg,#263342,#1b222c 70%);--card-blue-hover:linear-gradient(145deg,#30445b,#212c38);--card-edge:#7894b43d;--section-space:clamp(48px,6vw,88px);--page-gutter:max(5vw,calc((100vw - 1480px)/2))}
body{background:var(--surface-base);color:var(--text-primary)}
main>.section-pad:not(.brand-signature),main>#unternehmen,main>.connection-diagram{padding:var(--section-space) var(--page-gutter)}
main>:is(.device-gallery,.product-paths,.connection-diagram,.product-tour,.module-catalogue,.field-stories,.deployment,.offer-section,.company,.contact){border-color:var(--hairline)}
main>:is(.device-gallery,.product-paths,.offer-section),#unternehmen{background:var(--surface-base)}
main>:is(.connection-diagram,.module-catalogue,.deployment,.contact){background:var(--surface-deep)}
main>:is(.field-stories,.product-tour){background:var(--surface-base)}
main h2{letter-spacing:-.035em;text-wrap:balance}
main :is(.device-gallery-heading,.path-heading,.connection-hero,.tour-heading,.catalogue-heading,.offer-heading) h2{font-size:clamp(32px,4vw,56px);line-height:1.12}
main :is(.device-gallery-heading,.path-heading,.connection-hero,.tour-heading,.catalogue-heading)>p{line-height:1.65;max-width:52ch;color:var(--text-secondary)}
main :is(.eyebrow,.section-label){letter-spacing:.1em}
.button{min-height:48px;border-radius:7px}
:where(a,button,input,select,summary):focus-visible{outline:2px solid #fff;outline-offset:5px}
.launch.product-intro.direct-intro{padding:clamp(36px,5vw,70px) var(--page-gutter) 24px;background:var(--surface-base)}
.direct-intro .intro-shell{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:3vw}
.direct-intro #launch-title{font-size:clamp(44px,5.2vw,78px);line-height:1.04;letter-spacing:-.045em;margin:0 0 24px}
.direct-intro #launch-title span{color:#c0c9d7;background:none;border:0;text-decoration:none}
.direct-intro #launch-title span:after,.direct-intro #launch-title span:before{display:none}
.direct-intro .intro-brand img{width:88px;height:88px}.direct-intro .intro-brand{margin-bottom:26px}
.direct-intro .intro-lead{font-size:17px;line-height:1.65;max-width:40ch}
.direct-intro .intro-meta{margin-top:26px;padding-top:16px;border-top:1px solid var(--hairline)}
.hero-fleet-stage{position:relative;min-width:0;margin:0;perspective:1600px;align-self:center}
.hero-fleet{position:relative;aspect-ratio:1.22;pointer-events:none;transform-style:preserve-3d;transform:translateY(var(--board-rise,0px)) rotateX(var(--board-x,0deg)) rotateY(var(--board-y,0deg));transition:transform .35s cubic-bezier(.2,.65,.3,1)}
.hero-fleet:before{content:'';position:absolute;inset:67% 2% 2%;background:radial-gradient(ellipse,#0007,transparent 68%);filter:blur(16px);pointer-events:none}
.fleet-device{display:block;position:absolute;pointer-events:auto;transform:translateZ(var(--depth,0px));transition:translate .35s,filter .35s;filter:drop-shadow(0 18px 14px #0005);border-radius:6px}
.fleet-device img,.fleet-device svg{display:block;width:100%;height:auto}
.fleet-desktop{width:44%;left:0;top:6%;--depth:-10px;z-index:1}
.fleet-board{width:59%;right:0;top:10%;--depth:-25px;z-index:2}
.fleet-laptop{width:67%;left:4%;top:42%;--depth:30px;z-index:3}
.fleet-tablet{width:41%;right:-1%;top:55%;--depth:55px;z-index:4}
.fleet-device:hover,.fleet-device:focus-visible{translate:0 -6px;filter:drop-shadow(0 20px 17px #0008)}
.fleet-light{position:absolute;left:12.1%;right:12.1%;top:4.5%;bottom:12.5%;border-radius:2px;overflow:hidden;pointer-events:none}
.fleet-light .screen-beacon{opacity:.02;background:radial-gradient(ellipse at 50% 0%,#0574ff50,transparent 75%)}
.hero-fleet-stage figcaption{text-align:center;font-size:12px;line-height:1.6;color:#a5aebc;margin:0}
.hero-fleet-stage .beacon-toggle{margin:3px auto 0}
.device-gallery-heading{gap:30px;margin-bottom:26px}.device-gallery-heading>p{font-size:17px}
.device-picker{gap:12px}.device-picker>button{border-radius:10px;transition:background .25s,border-color .25s}
.device-detail{border-radius:14px;background:var(--surface-raised);overflow:hidden}
.device-detail-copy h3{font-size:clamp(25px,2.8vw,38px);line-height:1.15;text-wrap:balance}
.path-grid{gap:30px}.path-card{border-top:1px solid #ffffff30}.path-card>span{color:#b6beca}.path-card a{font-size:14px}
.connection-diagram .connection-core{background:var(--surface-base)}
.catalogue-category{border-radius:10px}.catalogue-category:hover{border-color:var(--luois-red)}
.field-stories .field-story-list{gap:40px}.field-story-photo{border-radius:14px;overflow:hidden}
#betrieb .deployment-grid article{background:var(--surface-raised);border:1px solid var(--hairline);border-radius:12px}
#unternehmen .company-photo{border-radius:14px;background:var(--surface-raised)}
.company-approach{gap:24px}.company-service-row>summary{min-height:112px}
.story-finale{background:var(--surface-deep);--finale-height:560px;height:calc(var(--finale-height) + 320px)}
.finale-message{top:22px}.finale-message img{width:88px;height:88px;margin-bottom:18px}.finale-message h2{margin-bottom:16px}.finale-message p{margin:0}.finale-check{margin-top:22px;width:76px;height:76px}
.finale-device{top:calc(100px + var(--closure)*250px);width:min(650px,85vw)}
@media(prefers-reduced-motion:no-preference){.fleet-device{animation:fleet-arrival 1.1s cubic-bezier(.2,.7,.2,1) backwards}.fleet-desktop{animation-delay:.08s}.fleet-board{animation-delay:.18s}.fleet-laptop{animation-delay:.28s}.fleet-tablet{animation-delay:.38s}@keyframes fleet-arrival{from{opacity:0;translate:0 24px;transform:translateZ(calc(var(--depth) - 45px)) rotateY(-5deg)}to{opacity:1;translate:0 0;transform:translateZ(var(--depth)) rotateY(0)}}}
@media(min-width:1600px){.hero-fleet-stage{max-width:830px;width:100%;justify-self:end}.direct-intro .intro-shell{gap:65px}}
@media(max-width:1050px){.direct-intro #launch-title{font-size:clamp(42px,5.1vw,56px)}.direct-intro .intro-brand img{width:70px;height:70px}.direct-intro .intro-brand span{font-size:10px}.direct-intro .intro-lead{font-size:16px}.direct-intro .intro-shell{gap:24px}.hero-fleet{aspect-ratio:1.12}.fleet-laptop{top:43%}.fleet-tablet{top:55%}}
@media(max-width:760px){:root{--section-space:44px;--page-gutter:6vw}.direct-intro .intro-shell{grid-template-columns:1fr;gap:12px}.launch.product-intro.direct-intro{padding-top:26px}.direct-intro #launch-title{font-size:clamp(43px,11vw,68px);margin-bottom:20px}.direct-intro .intro-brand{margin-bottom:22px}.direct-intro .intro-brand img{width:68px;height:68px}.direct-intro .intro-lead{max-width:43ch}.direct-intro .intro-audience{font-size:12px;margin-top:18px}.hero-fleet-stage{width:100%;max-width:580px;margin:0 auto}.hero-fleet{aspect-ratio:1.3;transform:none}.fleet-desktop{top:8%}.fleet-board{top:12%}.fleet-laptop{top:44%}.fleet-tablet{top:58%;right:0}.hero-fleet-stage figcaption{font-size:11px;margin-top:10px}.direct-intro .intro-meta{margin-top:12px;padding-top:14px}.device-gallery-heading{gap:14px}.device-gallery-heading>p{font-size:16px}.device-detail-copy h3{font-size:27px}.path-grid{gap:22px}.path-card h3{font-size:24px}.field-stories .field-story-list{gap:30px}.company-service-row>summary{min-height:96px}.story-finale{--finale-height:540px;height:820px}.finale-message{top:26px}.finale-message img{width:76px;height:76px}.finale-message h2{font-size:36px}.finale-message p{font-size:12px}.finale-check{width:68px;height:68px;margin-top:22px}.finale-device{top:calc(170px + var(--closure)*190px);width:90vw}}
@media(prefers-reduced-motion:reduce){.hero-fleet,.fleet-device{transform:none!important;animation:none!important;transition:none}.fleet-device:hover{translate:none}.story-finale[data-motion=off]{height:auto}.screen-beacon{animation:none!important;opacity:.02}}
/* Device selection: clear surfaces and readable labels at every size. */
#geraete .device-gallery-heading h2{max-width:22ch;font-size:clamp(34px,3.5vw,54px)}
#geraete .device-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:12px 0 24px;border:0;background:none;margin-bottom:24px}
#geraete .device-picker button{display:grid;grid-template-columns:1fr;justify-items:center;align-content:center;gap:8px;padding:20px 12px;border:1px solid #7894b43d;border-radius:14px;background:var(--card-blue);box-shadow:0 8px 24px #0002;text-align:center;transition:border-color .25s,background .25s,transform .25s}
#geraete .device-picker button:hover{background:var(--card-blue-hover);border-color:#88a7ce80;transform:translateY(-3px)}
#geraete .device-picker button[aria-selected=true]{border-color:var(--luois-red);box-shadow:inset 0 -3px var(--luois-red),0 12px 30px #0003}
#geraete .device-picker :is(img,luois-board){width:100%;height:94px;margin:0;object-fit:contain;opacity:1;transform:none}
#geraete .device-picker strong{font-size:19px;line-height:1.35;color:#f4f5f7}
#geraete .device-picker span{display:block;font-size:13px;line-height:1.4;color:#c3cbd7;margin:0}
#geraete .device-detail{background:radial-gradient(ellipse at 28% 50%,#134b7d33,transparent 65%),#181e26;border:1px solid #6a8aaa26;box-shadow:0 16px 45px #0002}
#geraete .device-detail-copy p,#geraete .device-detail-copy li{font-size:16px;line-height:1.65}
#geraete .device-gallery-note{margin-top:12px;font-size:12px}
main>#geraete{padding-bottom:28px;background:radial-gradient(ellipse at 20% 35%,#174b7e24,transparent 65%),var(--surface-base)}
main>.product-paths{padding-top:28px}
.connection-inputs>div{white-space:nowrap}.connection-inputs:last-child>div{padding-left:0}
.connection-intro .eyebrow{color:var(--text-secondary)}
.connection-diagram>.text-link,.connection-diagram>.text-link:hover,.connection-diagram>.text-link:focus-visible{display:inline-flex;align-items:center;gap:18px;min-height:48px;padding:12px 22px;background:var(--luois-red);color:#fff;border:0;border-radius:7px}
/* Broad, steady blue reflections blend into the anthracite page. */
.launch.product-intro.direct-intro{background:radial-gradient(ellipse at 82% 50%,#15599755,transparent 65%),radial-gradient(ellipse at 62% 72%,#133b672e,transparent 60%),var(--surface-base)}
.hero-fleet-stage{isolation:isolate}
.hero-fleet-stage:before{content:'';position:absolute;inset:-12% -18% -5%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 56% 48%,#2587e65e 0%,#165fa840 36%,transparent 70%);filter:blur(40px)}
.direct-intro .intro-brand img{width:152px;height:152px}.direct-intro .intro-brand{margin-bottom:18px}
.header-product img{width:62px;height:62px;flex-shrink:0}.contact>img{width:160px;height:160px;object-fit:contain}.tour-brand img{width:48px;height:48px}
.connection-destination img{width:164px;height:164px;max-width:100%;object-fit:contain}
/* The complete closing scene always fits below the fixed navigation. */
.finale-holding{scroll-behavior:auto!important;overscroll-behavior-y:none}
.story-finale{--finale-height:min(680px,calc(100svh - var(--header-height)));height:calc(var(--finale-height) + 320px);background:radial-gradient(ellipse at 50% 65%,#18599033,transparent 65%),var(--surface-deep)}
.finale-sticky{height:var(--finale-height);min-height:0}
.finale-message{top:16px;transition:opacity .18s ease-out}
.finale-message img{width:clamp(100px,22svh,160px);height:clamp(100px,22svh,160px);margin-bottom:clamp(12px,3svh,24px)}
.finale-message h2{font-size:clamp(30px,6svh,46px);line-height:1.12;margin-bottom:clamp(12px,2.5svh,20px)}
.finale-message p{font-size:16px;line-height:1.55;margin:0}
.finale-check{width:clamp(64px,12svh,88px);height:clamp(64px,12svh,88px);margin-top:clamp(18px,4svh,32px)}
.finale-device{width:min(650px,85vw);top:calc(50% + var(--closure)*(50% - 130px));transform:translate(-50%,calc(-50% - var(--closure)*45%))}
.story-finale.is-complete .finale-check circle{animation:finale-confirm .45s .18s ease-out forwards}
.story-finale.is-complete .finale-check path{animation:finale-confirm .32s .53s ease-out forwards}
.story-finale[data-confirmation=complete].is-complete .finale-check :is(circle,path){stroke-dashoffset:0}
@media(max-width:1050px){#geraete .device-gallery-heading{grid-template-columns:1fr;gap:16px}#geraete .device-picker{gap:12px}#geraete .device-picker button{padding:16px 8px}#geraete .device-picker :is(img,luois-board){height:76px}#geraete .device-picker strong{font-size:17px}.connection-destination img{width:140px;height:140px}}
@media(max-width:760px){.direct-intro .intro-brand img{width:128px;height:128px}.header-product img{width:54px;height:54px}.direct-intro .intro-lead{font-size:17px}.launch.product-intro.direct-intro{background:radial-gradient(ellipse at 65% 80%,#1669b15c,transparent 58%),var(--surface-base)}.hero-fleet-stage:before{inset:-8% -10%;filter:blur(24px)}.finale-message p{font-size:14px;max-width:32ch;margin-inline:auto}.finale-message img{width:clamp(104px,20svh,152px);height:clamp(104px,20svh,152px)}.story-finale{--finale-height:min(620px,calc(100svh - var(--header-height)))}.finale-device{width:90vw;top:calc(50% + var(--closure)*(50% - 100px))}.connection-destination img{width:110px;height:110px}main>#geraete{padding-bottom:20px}main>.product-paths{padding-top:22px}}
@media(max-width:600px){#geraete .device-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#geraete .device-picker button{padding:14px 8px;gap:6px}#geraete .device-picker :is(img,luois-board){height:70px}#geraete .device-picker strong{font-size:17px}#geraete .device-picker span{font-size:12px}}
@media(max-height:700px){.finale-message{top:12px}.finale-message img{width:132px;height:132px;margin-bottom:16px}.finale-message h2{font-size:34px;margin-bottom:12px}.finale-message p{font-size:14px}.finale-check{width:64px;height:64px;margin-top:18px}.finale-device{top:calc(50% + var(--closure)*(50% - 130px))}}
@media(max-height:560px){.finale-message{display:grid;grid-template-columns:110px auto;justify-content:center;align-items:center;column-gap:24px;top:12px}.finale-message img{grid-row:1/4;width:110px;height:110px;margin:0}.finale-message h2{font-size:30px;margin-bottom:8px}.finale-message p{font-size:14px}.finale-check{width:60px;height:60px;margin:14px auto 0}.finale-device{width:min(500px,70vw)}}
@media(prefers-reduced-motion:reduce){.finale-message{transition:none}.story-finale.is-complete .finale-check circle,.story-finale.is-complete .finale-check path{animation:none;stroke-dashoffset:0}}

/* Only the outgoing image and copy sit above the permanent panel surface. */
.device-transition-layer{position:absolute;inset:0;pointer-events:none;z-index:2;background:none;border:0;box-shadow:none;overflow:hidden;border-radius:inherit}
.device-transition-layer>:is(img,luois-board){object-fit:contain;transform-origin:50% 56%;filter:drop-shadow(0 25px 25px #0008)}
.device-transition-layer>.device-detail-copy{background:none;border:0;box-shadow:none}
@media(prefers-reduced-motion:reduce){.device-transition-layer{display:none}}

/* Keep the complete lead word readable on narrow screens. */
.direct-intro #launch-title{font-size:clamp(40px,4.5vw,68px)}
@media(max-width:1050px){.direct-intro #launch-title{font-size:clamp(32px,4.4vw,47px)}}
@media(max-width:760px){.direct-intro #launch-title{font-size:clamp(32px,9.2vw,62px)}}

/* One family of blue-anthracite surfaces throughout the product story. */
.product-paths .path-heading{text-align:center;max-width:900px;margin:0 auto 36px}
.product-paths .path-intro{font-size:17px;line-height:1.65;color:var(--text-secondary);max-width:60ch;margin:22px auto 0}
.product-paths .path-grid{gap:20px}
.product-paths .path-card,#einblicke .tour-options button,#funktionen .category-tile,#betrieb .deployment-grid article,#unternehmen .company-service-row{background:var(--card-blue);border:1px solid var(--card-edge);border-radius:14px;box-shadow:0 8px 24px #0002}
.product-paths .path-card{padding:28px;display:flex;flex-direction:column;align-items:flex-start}
.product-paths .path-phase{display:inline-block;padding:8px 11px;background:var(--luois-red);color:#fff;border-radius:5px;font-size:12px;letter-spacing:.05em;line-height:1.5}
.product-paths .path-card h3{font-size:clamp(23px,2.15vw,30px);line-height:1.22;letter-spacing:-.025em;margin:24px 0 18px}
.product-paths .path-card p{font-size:16px;line-height:1.7;color:#c3cbd7;margin:0 0 24px}
.product-paths .path-card a{margin-top:auto;line-height:1.5;color:#f3f5f8;font-size:14px;min-height:44px;display:inline-flex;align-items:center;gap:12px}
.product-paths .path-card a span{color:var(--luois-red);font-size:24px}
#einblicke .tour-options button,#funktionen .category-tile,#unternehmen .company-service-row,#betrieb .deployment-grid article{transition:background .35s,border-color .35s,box-shadow .35s}
#einblicke .tour-options button:hover,#funktionen .category-tile:hover,#unternehmen .company-service-row:hover,#betrieb .deployment-grid article:hover{background:var(--card-blue-hover);border-color:#88a7ce80}
#einblicke .tour-options button[aria-selected=true],#funktionen .category-tile[aria-pressed=true],#unternehmen .company-service-row[open]{border-color:var(--luois-red);box-shadow:inset 0 -3px var(--luois-red),0 12px 30px #0003}
#einblicke .tour-options strong,#funktionen .category-tile strong{color:#f4f5f7}
#unternehmen .company-service-row{margin-bottom:14px;padding:0 24px}
#unternehmen .company-service-row>summary{padding:26px 0}
#unternehmen .company-service-row summary p{color:#c3cbd7}
#unternehmen .company-service-intro{text-align:center;margin:36px auto 28px}
#unternehmen .company-service-intro h3{font-size:clamp(28px,3vw,40px);line-height:1.2}
#unternehmen .company-location{border:1px solid var(--card-edge);border-radius:14px;background:var(--card-blue);padding:28px}
@media(max-width:900px){.product-paths .path-grid{grid-template-columns:1fr}.product-paths .path-card{padding:26px}.product-paths .path-card h3{font-size:28px}.product-paths .path-card h3 br{display:none}}
@media(max-width:600px){.product-paths .path-heading{text-align:left}.product-paths .path-intro{font-size:16px}.product-paths .path-card{padding:22px}.product-paths .path-card h3{font-size:25px}#unternehmen .company-service-row{padding:0 16px}#unternehmen .company-service-row>summary{padding:22px 0}#unternehmen .company-location{padding:22px}#unternehmen .company-service-intro{text-align:left}}
#unternehmen .company-service-row>summary>div{min-width:0}
#unternehmen .company-service-row h3{hyphens:auto;overflow-wrap:break-word}
@media(max-width:600px){#unternehmen .company-service-row>summary{grid-template-columns:26px minmax(0,1fr) 20px;gap:10px}#unternehmen .company-service-row h3{font-size:20px}}

/* Keep equal, explicit clearance between interface labels and data paths. */
.connection-body{column-gap:18px;grid-template-columns:max-content minmax(12px,1fr) 210px minmax(12px,1fr) max-content}
.connection-inputs>div{padding-inline:0}
.header-brands .company-logo{display:block;visibility:visible;opacity:1;width:190px;flex-shrink:0}
.header-brands .company-logo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:1100px){.connection-body{grid-template-columns:max-content minmax(12px,1fr) 155px minmax(12px,1fr) max-content;column-gap:14px}}
@media(max-width:600px){.connection-body{grid-template-columns:max-content minmax(8px,1fr) 94px minmax(8px,1fr) max-content;column-gap:8px}.header-brands .company-logo{width:167px}}
@media(max-width:360px){.connection-body{column-gap:6px;grid-template-columns:max-content minmax(4px,1fr) 84px minmax(4px,1fr) max-content}.header-brands .company-logo{width:145px}}
/* Balanced section headings, native map side panes and a quiet brand glow. */
.product-paths .path-heading{display:block;text-align:center;margin-inline:auto;width:100%}
.product-paths .path-heading .eyebrow{display:block;width:100%;margin-inline:auto;text-align:center}
.product-paths .path-heading .path-intro{max-width:64ch;margin-inline:auto;text-align:center}
.connection-destination{position:relative;isolation:isolate}
.connection-destination:before{content:'';position:absolute;width:220px;height:220px;max-width:150%;left:50%;top:42%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#c0000066 0%,#c0000033 38%,transparent 70%);filter:blur(14px);z-index:-1;pointer-events:none}
.finale-check{translate:0 9px;filter:none;border-radius:50%;background:none;box-shadow:none}
.map-shell{position:relative}
.map-shell .map-inline-detail[open]{position:absolute;inset:auto 8px auto auto;margin:0;display:block;width:min(350px,48%);max-width:calc(100% - 16px);max-height:none;min-height:0;padding:0;border:1px solid #51565c;border-radius:3px;background:#222;box-shadow:-8px 5px 25px #0005;z-index:10;overflow:hidden;transform:none;animation:none}
.map-inline-detail .native-detail-pane{height:100%;border:0}
.map-inline-detail .native-detail-pane header{min-height:78px;padding:12px;gap:9px;grid-template-columns:32px minmax(0,1fr) 36px}
.map-inline-detail .native-detail-pane header h2{font-size:16px!important}
.map-inline-detail .native-detail-pane .water-symbol{width:32px;height:36px}
.map-inline-detail .native-detail-pane header button{min-width:36px;min-height:36px}
.map-inline-detail .native-detail-pane .water-content{padding:12px}
.map-inline-detail .native-detail-pane footer{padding:8px 12px;gap:0}
.map-inline-detail .native-detail-pane footer>span{display:none}
.map-shell .road-popup{right:8px;max-width:calc(100% - 16px);width:min(350px,48%);border-radius:3px}
.map-action-stage .map-planning-action{left:12px;right:auto;top:auto;bottom:12px;max-width:calc(100% - 24px);text-align:left}
.contact-fields small{font-size:11px;font-weight:400;color:#b8bdc5}
@media(max-width:600px){.map-shell .map-inline-detail[open],.map-shell .road-popup{width:84%}.map-shell .map-window{min-height:380px}.map-inline-detail .native-detail-pane header{padding:9px}.map-inline-detail .native-detail-pane header h2{font-size:14px!important}.map-action-stage .map-planning-action{left:8px;bottom:8px;font-size:11px;padding:10px}.connection-destination:before{width:145px;height:170px;max-width:180%;filter:blur(10px)}}

/* Keep the halo centered on the logo, independent of the caption height. */
.connection-destination{background:none}
.connection-destination:before{content:none}
.connection-logo-glow{position:relative;isolation:isolate;flex:none;max-width:100%}
.connection-logo-glow img{display:block}
.connection-logo-glow:before{content:"";position:absolute;inset:-90%;background:radial-gradient(ellipse at center,#c0000094 0%,#c0000066 20%,#c0000036 39%,#c0000016 56%,#c0000005 69%,#c0000000 83%);filter:blur(32px);z-index:-1;pointer-events:none}

/* Inline map details never lock page scrolling; scroll chains at panel edges. */
.map-window{max-height:min(560px,65svh)}
.map-inline-detail .native-detail-pane .water-content,.map-shell .road-popup{overscroll-behavior:auto;touch-action:pan-y}
.map-inline-detail .native-detail-pane{grid-template-rows:auto minmax(0,1fr) auto}
@media(max-width:600px){.map-shell .map-window{min-height:300px}.map-shell:has(.road-popup[open]) .map-window{min-height:300px}}

/* One viewport-sized backdrop continues behind every section without seams. */
body.continuous-background{isolation:isolate;background:#191b1f}
body.continuous-background:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 85% 28%,#15599748 0%,#1559971c 38%,#15599700 72%),radial-gradient(ellipse at 12% 85%,#163e622e 0%,#163e6200 70%),#191b1f}
body.continuous-background main>section,body.continuous-background>footer{background:transparent!important;border-top-color:transparent;border-bottom-color:transparent}
body.continuous-background .connection-diagram .connection-core{background:transparent}
body.continuous-background .hero-fleet-stage:before{content:none}

/* Illuminate the drawn confirmation itself, without a background halo. */
.finale-check-wrap{position:relative;isolation:isolate;width:fit-content;margin-inline:auto}
.finale-check-wrap:before{content:none}
.finale-check{color:#57f596;filter:none;overflow:visible;border-radius:0;isolation:auto}
.finale-check :is(circle,path){filter:url(#confirmation-glow)}

/* White caption remains separate from the red logo illumination. */
.connection-destination>strong{position:relative;z-index:1;color:#fff!important;text-shadow:none;mix-blend-mode:normal}
/* Keep the closing laptop slightly higher and shorten the trailing scroll space. */
.story-finale[data-motion=on]{min-height:0;height:calc(var(--finale-height) + 160px)}
.story-finale[data-motion=on] .finale-device{translate:0 -16px}

/* Highlight only the selected symbol without shifting its geographic anchor. */
.interactive-demo :is([data-water],[data-object],[data-rail],[data-road])>svg{transform-origin:50% 94.44%;transition:scale .22s ease-out,filter .22s ease-out}
.interactive-demo :is([data-water],[data-object],[data-rail],[data-road]).is-selected{z-index:30!important}
.interactive-demo :is([data-water],[data-object],[data-rail],[data-road]).is-selected>svg{scale:1.3;filter:drop-shadow(0 0 2px #fff) drop-shadow(0 3px 4px #10243e80)!important}
.interactive-demo :is([data-water],[data-object],[data-rail],[data-road]).is-selected>span{font-weight:700!important;box-shadow:0 0 0 2px #fff,0 2px 8px #10243e40!important}
@media(prefers-reduced-motion:reduce){.interactive-demo :is([data-water],[data-object],[data-rail],[data-road])>svg{transition:none}}
.rail-demo-point{transition:scale .22s ease-out}
.rail-demo-point.is-selected{scale:1.22;box-shadow:0 0 0 3px #fff,0 3px 9px #10243e66!important}
@media(prefers-reduced-motion:reduce){.rail-demo-point{transition:none}}

/* A compact shared sign-off for the product and the company. */
#unternehmen{padding-bottom:28px}
#kontakt{display:flex;flex-direction:column;align-items:center;text-align:center;gap:26px;padding-top:28px}
#kontakt .contact-brands{display:flex;align-items:center;justify-content:center;gap:28px;width:100%;margin:0}
.contact-brands img{display:block;object-fit:contain;height:auto;margin:0}
.contact-brands .contact-product-logo{width:112px}
.contact-brands .contact-company-logo{width:300px;max-width:55vw}
.contact-brand-divider{display:block;flex:0 0 1px;height:64px;background:#ffffff40}
#kontakt .contact-copy{max-width:720px;margin:0}
#kontakt .contact-copy h2{margin:0 0 20px}
#kontakt .contact-copy p{max-width:62ch;margin:0 auto}
#kontakt .contact-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;width:100%;margin:0}
@media(max-width:600px){#unternehmen{padding-bottom:20px}#kontakt{padding-top:20px;gap:22px}#kontakt .contact-brands{gap:16px}.contact-brands .contact-product-logo{width:76px}.contact-brands .contact-company-logo{width:200px;max-width:51vw}.contact-brand-divider{height:46px}#kontakt .contact-actions{flex-direction:column;align-items:center}#kontakt .contact-actions .button{width:100%;max-width:360px}}
/* The object pin tip, rather than its center, marks the building coordinate. */
.object-demo [data-object]{width:44px;height:44px;transform:translate(-50%,-88.38%)}
.object-demo [data-object]>svg{width:30px;height:38px}

/* Three readable menu strokes with an unambiguous open state. */
.menu-toggle{gap:5px}
.menu-toggle span{height:2px;border-radius:2px;transition:transform .22s ease,opacity .22s ease}
.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(prefers-reduced-motion:reduce){.menu-toggle span{transition:none}}

/* Keep supporting copy readable and make the transition to the finale compact. */
.direct-intro .intro-audience{font-size:1rem;line-height:1.6;color:#c3cbd7;max-width:48ch;margin:18px 0 0}
.direct-intro .intro-actions{margin-top:24px}
.direct-intro .intro-brand span{font-size:.875rem;line-height:1.6}
.device-picker strong{font-size:clamp(1rem,1.3vw,1.125rem);line-height:1.4}
.device-picker span{font-size:.875rem;line-height:1.5}
#einblicke .tour-options strong{font-size:clamp(1rem,1.5vw,1.3125rem);line-height:1.35}
.device-gallery-heading>p,.offer-faq details p{font-size:1rem;line-height:1.65}
#angebot{padding-bottom:clamp(40px,5vw,64px)}
.finale-device{top:calc(46% + var(--closure)*(54% - 130px))}
@media(max-width:760px){.finale-device{top:calc(46% + var(--closure)*(54% - 100px))}.direct-intro .intro-audience{font-size:1rem}.direct-intro .intro-brand span{font-size:.8125rem}}
@media(max-height:700px){.finale-device{top:calc(46% + var(--closure)*(54% - 130px))}}
@media(max-width:760px) and (max-height:700px){
 .finale-device{top:calc(46% + var(--closure)*(54% - 60px))}
 .finale-message img{width:104px;height:104px}
}
@media(max-width:480px) and (max-height:560px){
 .finale-message{display:block;top:8px;left:16px;right:16px}
 .finale-message img{width:76px;height:76px;margin:0 auto 12px}
 .finale-message h2{font-size:28px;margin-bottom:10px}
 .finale-message p{font-size:14px;line-height:1.45;max-width:36ch}
 .finale-check{width:52px;height:52px;margin-top:10px;translate:0 0}
}

/* A calm entrance, readable supporting copy and clear hover feedback. */
@media(prefers-reduced-motion:no-preference){
 .fleet-device{animation-name:fleet-arrival-refined;animation-duration:1.35s;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:backwards}
 .fleet-desktop{animation-delay:.12s}.fleet-board{animation-delay:.26s}.fleet-laptop{animation-delay:.4s}.fleet-tablet{animation-delay:.54s}
 @keyframes fleet-arrival-refined{from{opacity:0;translate:0 36px;transform:translateZ(var(--depth)) scale(.96)}to{opacity:1;translate:0 0;transform:translateZ(var(--depth)) scale(1)}}
}
.product-paths .path-card{transition:translate .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease}
@media(hover:hover) and (pointer:fine){.product-paths .path-card:hover{translate:0 -6px;background:var(--card-blue-hover);border-color:#88a7ce80;box-shadow:0 16px 32px #0004}}
.product-paths .path-card:focus-within{border-color:#88a7ce80;box-shadow:0 12px 28px #0003}
#individuell.connection-diagram>p{font-size:1rem;line-height:1.65;max-width:76ch;margin-inline:auto}
.device-gallery .eyebrow,.tour-brand small,.section-label{font-size:.875rem;line-height:1.5}
main>#unternehmen{padding-top:20px;margin-top:-48px;position:relative}
@media(prefers-reduced-motion:reduce){.product-paths .path-card{transition:none}.product-paths .path-card:hover{translate:none}main>#unternehmen{margin-top:0}}

/* Three concise entry points lead to a personal product introduction. */
.product-paths .path-card{padding:34px 30px;min-height:430px}
.product-paths .path-phase{font-size:1rem;line-height:1.5;font-weight:650;color:#f1f3f7;letter-spacing:.04em}
.product-paths .path-card h3{font-size:clamp(25px,2.3vw,32px);margin:24px 0}
.product-paths .path-card ul{padding:0;margin:0 0 30px;list-style:none;width:100%}
.product-paths .path-card li{font-size:1rem;line-height:1.6;color:#c3cbd7;padding:10px 0;border-bottom:1px solid #ffffff14}
.product-paths .path-inquiry{display:flex;align-items:center;justify-content:center;margin-top:auto;width:100%;min-height:78px;padding:15px 18px;font-size:1rem;line-height:1.45;white-space:normal;text-align:center;background:var(--luois-red);color:#fff;border:1px solid var(--luois-red)}
.product-paths .path-inquiry:hover{background:var(--luois-red);color:#fff;box-shadow:0 6px 22px #c0000033}
@media(min-width:901px){.product-paths .path-card h3{min-height:3.66em}}
@media(max-width:900px){.product-paths .path-card{min-height:0;padding:28px}.product-paths .path-card h3{margin:20px 0}.product-paths .path-inquiry{width:auto;max-width:100%}}
@media(max-width:600px){.product-paths .path-card{padding:24px}.product-paths .path-card h3{font-size:26px}.product-paths .path-inquiry{width:100%}}

/* Readable details and reliable touch/keyboard controls at every width. */
.button{display:inline-flex;align-items:center;justify-content:center;text-align:center;white-space:normal;line-height:1.45}
:where(p,li){overflow-wrap:break-word}
.contact-fields small{font-size:.875rem;line-height:1.5}
.contact-fields :is(input,select,textarea){font-size:1rem;min-height:48px}
:is(.close-dialog,.category-close){min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.menu-toggle{min-width:44px;min-height:44px;flex-direction:column}
footer button{min-height:44px;padding-block:10px}
:is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid #f4f5f7;outline-offset:4px}
.offer-faq summary{min-height:56px;line-height:1.5;padding-block:18px}
.offer-faq details p{max-width:62ch;margin-bottom:22px}
.company-copy p:not(.eyebrow){max-width:52ch;line-height:1.7}
.company-approach p{font-size:1rem;line-height:1.6}
@media(max-width:760px){
 .device-picker span{font-size:.875rem}
 .contact-dialog{max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px)}
 .contact-dialog-heading h2{font-size:clamp(25px,7vw,34px);line-height:1.15}
 .contact-fields{gap:18px}
 .offer-actions,.contact-actions{gap:14px}
 .offer-actions .button,.contact-actions .button{width:100%}
}

.direct-intro .intro-brand{min-width:0;gap:20px}
.direct-intro .intro-brand span{min-width:0;overflow-wrap:anywhere;hyphens:manual}
.direct-intro .intro-brand img{flex-shrink:0}
@media(max-width:380px){.direct-intro .intro-brand{gap:14px}.direct-intro .intro-brand img{width:108px;height:108px}}

#device-detail-label{color:var(--text-secondary);border-left:3px solid var(--luois-red);padding-left:10px;font-size:.875rem;line-height:1.5}
.contact-dialog .dialog-top{position:sticky;top:-1px;z-index:5;background:#222;padding-block:12px}

/* Navigation: consistent brand surface, readable links and a dedicated mobile panel. */
:root{--header-height:96px}
.header{padding-inline:clamp(24px,3.2vw,72px);gap:22px;background:linear-gradient(110deg,#14191ff5,#10151bf5);border-bottom:1px solid #809bbb26;box-shadow:0 8px 30px #0000001a;backdrop-filter:blur(20px)}
.header-brands{gap:18px;min-width:0}
.header .header-product,.header .header-product img{width:68px;height:68px;flex-shrink:0}
.header-brands .company-logo{width:195px;padding-left:18px;border-color:#a9c1da30}
.header nav{gap:4px;margin-inline:auto;padding:5px;border:1px solid var(--card-edge);border-radius:12px;background:var(--card-blue);box-shadow:0 5px 18px #0002}
.header nav a{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;color:#e0e5eb;font-size:14px;font-weight:600;border:1px solid transparent;border-radius:8px;background:transparent;box-shadow:none;transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}
.header nav a:hover,.header nav a:focus-visible{color:#fff!important;background:var(--card-blue-hover);border-color:#88a7ce80;box-shadow:0 10px 24px #0003}
.header nav a[aria-current=location]{color:#fff!important;text-decoration:none;box-shadow:inset 0 -2px #c00000}

.header .header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid #c00000;border-radius:9px;background:#c00000;color:#fff;font-size:14px;font-weight:600;box-shadow:0 5px 18px #c0000018;transition:box-shadow .2s ease,transform .2s ease}
.header .header-cta:hover{background:#c00000;color:#fff;box-shadow:0 6px 24px #c0000040;transform:translateY(-1px)}
.header a:focus-visible,.header button:focus-visible,.mobile-nav a:focus-visible,.mobile-nav button:focus-visible{outline:2px solid #fff;outline-offset:4px}
.menu-toggle{display:none}
.mobile-nav[hidden],.nav-backdrop[hidden]{display:none}
.mobile-nav{position:fixed;top:calc(var(--header-height) + 12px);left:auto;right:24px;width:min(620px,calc(100% - 48px));z-index:22;max-height:calc(100dvh - var(--header-height) - 28px);padding:26px;border:1px solid #a5c5ed33;border-radius:18px;background:linear-gradient(145deg,#1c2835,#141a23 75%);box-shadow:0 25px 80px #0008;overflow-y:auto;overscroll-behavior:contain}
.mobile-nav-heading{margin:0 0 16px;color:#b1bdcb;font-size:14px;font-weight:600;letter-spacing:.02em}
.mobile-nav-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mobile-nav a{display:flex;flex-direction:column;justify-content:center;min-height:82px;padding:14px 16px;border:1px solid var(--card-edge);border-radius:10px;background:var(--card-blue);box-shadow:0 4px 12px #0002;line-height:1.35;transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}
.mobile-nav a strong{font-size:17px;font-weight:600;color:#f3f6f9}
.mobile-nav a span{margin-top:5px;font-size:14px;line-height:1.45;color:#b8c4d3}
.mobile-nav a:hover,.mobile-nav a:focus-visible{border-color:#88a7ce80;background:var(--card-blue-hover);box-shadow:0 10px 24px #0003}
.mobile-nav a[aria-current=location]{border-color:#c00000;background:var(--card-blue-hover);box-shadow:inset 0 -2px #c00000,0 5px 14px #0002}
.mobile-nav-contact{margin-top:20px;padding-top:18px;border-top:1px solid #a7c7ec24}
.mobile-nav-contact p{margin:0 0 10px;font-size:15px;color:#d5dee8}
.mobile-nav .mobile-nav-contact [data-contact]{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:12px 20px;background:#c00000;color:white;border:1px solid #c00000;border-radius:9px;text-align:center;font-weight:600;font-size:16px}
.nav-backdrop{position:fixed;inset:var(--header-height) 0 0;z-index:18;background:#060a1266;backdrop-filter:blur(3px)}
@media(max-width:1380px){
 :root{--header-height:88px}
 .header nav{display:none}
 .header .header-cta{margin-left:auto}
 .menu-toggle{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid #9ab8db45;border-radius:9px;background:#a5cfff09;flex-shrink:0}
 .menu-toggle span{width:21px;height:2px;background:#fff}
 .menu-toggle:hover,.menu-toggle[aria-expanded=true]{background:#bedfff14;border-color:#b7cfe375}
}
@media(max-width:600px){
 :root{--header-height:80px}
 .header{padding-inline:18px;gap:12px}
 .header .header-product,.header .header-product img{width:58px;height:58px}
 .header-brands{gap:12px}
 .header-brands .company-logo{width:158px;padding-left:12px}
 .header .header-cta{display:none}
 .mobile-nav{top:calc(var(--header-height) + 8px);left:12px;right:12px;width:auto;padding:20px;border-radius:14px;max-height:calc(100dvh - var(--header-height) - 20px)}
 .mobile-nav-links{grid-template-columns:1fr;gap:6px}
 .mobile-nav a{min-height:69px;padding:11px 14px}
 .mobile-nav-contact{margin-top:16px;padding-top:16px}
}
@media(max-width:360px){
 .header{padding-inline:12px;gap:8px}
 .header-brands{gap:9px}
 .header-brands .company-logo{width:141px;padding-left:10px}
 .header .header-product,.header .header-product img{width:54px;height:54px}
 .mobile-nav{padding:16px}
}
@media(prefers-reduced-motion:no-preference){.mobile-nav:not([hidden]){animation:nav-reveal .22s ease-out both}@keyframes nav-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){.header .header-cta,.header nav a,.mobile-nav a{transition:none}.header .header-cta:hover{transform:none}}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.header nav a:hover,.mobile-nav a:hover{transform:translateY(-3px)}}

/* Stable navigation targets and generous touch layouts. */
.header-brands{flex-shrink:0}
.header-brands a,.header-brands img{opacity:1;visibility:visible;backface-visibility:hidden}
.header-brands{isolation:isolate;transform:translateZ(0)}
:is(.device-gallery-heading,.connection-hero,.tour-heading,.catalogue-heading,.company-copy,#betrieb h2)[tabindex="-1"]:focus{outline:none}
.contact-success[hidden]{display:none}
.contact-dialog.is-success :is(.contact-dialog-heading,#contact-status,#contact-form){display:none}
.contact-success{padding:22px 16px 32px;text-align:center;outline:none}
.contact-success h2{font-size:clamp(27px,5vw,38px);line-height:1.2;margin:28px 0 16px}
.contact-success p{font-size:17px;line-height:1.7;color:#cbd4df;margin:0 0 30px}
.contact-success-check{display:block;width:130px;height:130px;margin:14px auto;color:#57f596;overflow:visible}
.contact-success-check circle,.contact-success-check path{stroke:currentColor;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 5px #57f59688)}
.contact-dialog.is-success .contact-success-check circle{animation:contact-confirm .48s ease-out forwards}
.contact-dialog.is-success .contact-success-check path{animation:contact-confirm .34s .38s ease-out forwards}
@keyframes contact-confirm{to{stroke-dashoffset:0}}
/* Animate the SVG stroke explicitly; the visible diagram controls playback. */
.connection-diagram .connection-body>.connection-lines>path{animation-name:prfs-exchange;animation-duration:3.5s;animation-timing-function:linear;animation-iteration-count:infinite;stroke-dasharray:7 7;stroke-dashoffset:0}
@keyframes prfs-exchange{from{stroke-dashoffset:0}to{stroke-dashoffset:-56}}
@media(max-width:760px){
 :root{--page-gutter:max(20px,5vw)}
 #geraete .device-detail-copy{padding:26px 24px}
 #betrieb .deployment-grid article{padding:28px 24px}
 .catalogue-category{padding:24px 20px}
 .offer-steps>li,.offer-steps>div{padding:24px}
 #unternehmen .company-service-row{padding-inline:22px}
 #unternehmen .service-detail-content{padding-inline:0}
 #unternehmen .company-location{padding:24px}
 .contact-dialog{padding:22px;max-width:calc(100vw - 24px)}
 .contact-fields :is(input,select,textarea){min-width:0;width:100%;font-size:16px;padding:12px 14px}
 .contact-success{padding-inline:0}
 .catalogue-row{padding-inline:18px}
 .mobile-nav a{padding:16px 20px}
}
@media(prefers-reduced-motion:reduce){
 .contact-dialog.is-success .contact-success-check :is(circle,path){animation:none;stroke-dashoffset:0}
 .connection-diagram .connection-body>.connection-lines>path{animation:none}
}
.motion-preference-button{background:transparent;color:#dce8f4;border:1px solid #7894b465;border-radius:7px;padding:12px 16px;font:inherit;font-size:14px;cursor:pointer;justify-self:start}
.motion-preference-button[hidden]{display:none}
.motion-preference-button:hover{background:#9bc8ff16}
html.motion-opt-in .connection-diagram.flow-running .connection-body>.connection-lines>path{animation:prfs-exchange 3.5s linear infinite!important}
html.motion-opt-in .story-finale.is-complete .finale-check circle{stroke-dashoffset:1;animation:finale-confirm .45s .18s ease-out forwards!important}
html.motion-opt-in .story-finale.is-complete .finale-check path{stroke-dashoffset:1;animation:finale-confirm .32s .53s ease-out forwards!important}
html.motion-opt-in .story-finale[data-motion=on]{height:calc(var(--finale-height) + 260px);min-height:0}
html.motion-opt-in .story-finale[data-motion=on] .finale-sticky{position:sticky;top:var(--header-height);height:var(--finale-height)}
#water-planning .planning-tabs button{display:flex;align-items:center;justify-content:center;min-height:64px;text-align:center;line-height:1.5;gap:7px;border-bottom-color:transparent}
#water-planning .planning-tabs button[aria-selected=true]{background:var(--luois-red);border-color:var(--luois-red);color:#fff}
#water-planning .planning-tabs button:hover{color:#fff;border-bottom-color:var(--luois-red)}
#water-planning .planning-symbol{color:var(--luois-red)}
#water-planning #planning-kicker{color:#d5dde7;border-left:3px solid var(--luois-red);padding-left:10px}
#water-planning .button{background:var(--luois-red);border-color:var(--luois-red);color:#fff}

.contact-success .button{background:var(--luois-red);border-color:var(--luois-red);color:#fff}
@media(max-width:760px){
 #funktionen .category-tile{padding:24px 20px;min-width:0}
 #funktionen .category-tile strong{hyphens:auto;overflow-wrap:break-word;line-height:1.4}
 .offer-factors>li{padding:24px}
 #water-planning{padding:24px}
 #water-planning .planning-tabs button{padding:14px 10px;font-size:13px}
}
@media(max-width:360px){.category-tiles{grid-template-columns:1fr}}
.reveal-ready.navigation-visible{transform:none!important;translate:none!important;opacity:1!important;transition:none!important}
