:root{--orange:#f18e00;--grey:#747476;--bg:#111113;--surface:#1c1c1f;--ink:#f5f5f6;--muted:#b6b6bc;--line:#74747650;--header:84px;color-scheme:dark;font-family:Arial,sans-serif;font-size:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,sans-serif;font-size:18px;line-height:1.6;font-weight:400}button,input,a,summary{font-family:Arial,sans-serif}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,input,summary{font-size:16px}button,summary{cursor:pointer}a{color:inherit;text-decoration:none}button{font-weight:700}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:700;letter-spacing:-1px;line-height:1.12;text-wrap:balance}h1{font-size:72px;margin-bottom:24px;letter-spacing:-2px}h2{font-size:48px;margin-bottom:24px}h3{font-size:32px;margin-bottom:12px}p{font-size:18px;line-height:1.65;color:var(--muted);max-width:650px}em{font-style:normal;color:var(--orange)}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.eyebrow{display:block;font-size:14px;font-weight:700;letter-spacing:2px;line-height:1.6;text-transform:uppercase;color:var(--muted);margin-bottom:20px}.fine{font-size:14px;line-height:1.6;color:var(--muted)}.fine a,.source{border-bottom:1px solid var(--line);padding-bottom:4px}.skip{position:fixed;top:10px;left:10px;transform:translateY(-200%);z-index:100;background:var(--orange);color:#171719;padding:12px}.skip:focus{transform:none}.site-header{height:var(--header);position:sticky;top:0;z-index:30;background:#111113ed;backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 48px;border-bottom:1px solid #74747630}.brand{font-size:32px;letter-spacing:-1px;font-weight:700;color:var(--grey);line-height:1;white-space:nowrap}.brand span{color:var(--orange)}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{padding:14px 0;font-size:16px;font-weight:700;color:#c4c4c9;white-space:nowrap}.site-header nav a[aria-current=page]{color:var(--orange)}.header-contact{font-size:16px;font-weight:700;padding:10px 19px;border:1px solid var(--grey);border-radius:30px;white-space:nowrap}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;background:var(--orange);color:#171719;padding:13px 24px;border-radius:28px;font-size:16px;font-weight:700;border:1px solid var(--orange);text-align:center;line-height:1.5}.button:hover{background:#ffa727;border-color:#ffa727}.button.secondary{color:var(--ink);background:#232327;border-color:var(--line)}.button.dark{background:#171719;color:#fff;border-color:#171719}.text-link{display:inline-block;font-size:16px;font-weight:700;padding:8px 0;border-bottom:1px solid var(--orange)}.home-intro{padding-top:52px}.home-intro h1{font-size:64px;margin-bottom:34px}.world-tabs{display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.world-tabs button{border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);padding:19px 24px;font-size:18px;font-weight:700;flex:1}.world-tabs button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--orange);background:linear-gradient(0deg,#f18e0012,transparent)}.world-stage{position:relative;min-height:410px;isolation:isolate;overflow:hidden}.world-image{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-2;inset:0}.world-shade{position:absolute;inset:0;background:linear-gradient(0deg,#101012f5,transparent 85%);z-index:-1}.world-content{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;padding:125px 40px 56px;min-height:410px}.world-content h2{font-size:48px;max-width:680px;margin-bottom:12px}.world-content p{font-size:18px;max-width:520px;color:#d1d1d5;margin-bottom:0}.world-content .eyebrow{color:#e0e0e2;margin-bottom:14px}.world-link{flex-shrink:0}.photo-note{position:absolute;bottom:15px;right:22px;font-size:14px;color:#d0d0d5;z-index:3;text-shadow:0 1px 5px #000}.home-bottom{padding-block:30px 54px;display:flex;justify-content:space-between;align-items:center;gap:22px}.home-bottom p{margin:0;font-size:18px}.site-footer{border-top:1px solid var(--line);padding:34px 48px;display:flex;align-items:center;gap:35px;flex-wrap:wrap}.site-footer .brand{font-size:28px}.site-footer p{margin:0;font-size:16px}.site-footer>div{margin-left:auto;display:flex;gap:24px;font-size:16px}.page-intro{padding-block:64px 34px}.page-intro h1{max-width:1050px}.page-intro p{max-width:660px;font-size:20px}.use-cases{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.use-cases span{font-size:16px;color:#d2d2d7;border:1px solid var(--line);padding:8px 16px;border-radius:25px}.sector-scene{height:490px;position:relative;overflow:hidden;background:#1b1b1e}.sector-scene img{width:100%;height:100%;object-fit:cover;transition:filter 350ms}.scene-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#10101299,transparent 25%)}.scene-status{position:absolute;bottom:30px;left:30px;font-size:24px;font-weight:700}.scene-controls{padding:24px 30px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:35px}.scene-controls label{display:grid;grid-template-columns:1fr auto;font-size:16px;font-weight:700;gap:10px 25px;width:400px;max-width:100%}.scene-controls input{grid-column:1/-1;width:100%;margin:0;accent-color:var(--orange);height:26px}.scene-controls output{color:var(--orange);font-variant-numeric:tabular-nums}.scene-section>.fine{margin-top:12px}.product-selection{padding-block:65px 70px}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.product-card{display:block;background:var(--surface);height:100%;overflow:hidden}.product-card-image{height:280px;overflow:hidden;background:#19191c}.product-card-image img{height:100%;width:100%;object-fit:cover;transition:transform 500ms}.product-card-image.cutout img{object-fit:contain}.product-card:hover .product-card-image img{transform:scale(1.025)}.product-card-copy{padding:30px}.product-card-copy .eyebrow{margin-bottom:10px}.product-card-copy h3{overflow-wrap:anywhere}.product-card-copy p{font-size:18px}.safety-link{display:inline-block;margin-top:32px;border-bottom:1px solid var(--orange);padding-bottom:6px;font-size:16px;font-weight:700}.catalog{padding-bottom:75px}.catalog-filters{display:flex;flex-wrap:wrap;gap:10px;margin:5px 0 35px}.catalog-filters button{background:#202024;border:1px solid var(--line);border-radius:30px;color:var(--muted);padding:11px 20px;min-height:44px}.catalog-filters button[aria-pressed=true]{background:var(--orange);color:#171719;border-color:var(--orange)}.catalog>.fine{margin-top:25px}.cta{position:relative;background:var(--orange);color:#171719;overflow:hidden;padding-block:68px;isolation:isolate}.cta h2{font-size:64px;line-height:1.12;max-width:900px;margin-bottom:30px}.cta .eyebrow{color:#40372b}.cta .wrap{position:relative;z-index:1}.light-streak{position:absolute;width:52%;height:4px;background:#fff2d9;right:-15%;top:55%;transform:rotate(-40deg);box-shadow:0 0 20px #fff2d9;z-index:-1}.journey{height:calc(var(--chapter-count)*580px + 600px);position:relative}.story-stage{position:sticky;top:var(--header);height:calc(100svh - var(--header));min-height:690px;max-height:950px;overflow:hidden;isolation:isolate;background:#111113;--rotation:-7deg;--glow-color:255,239,213}.story-top{display:flex;justify-content:space-between;gap:25px;position:absolute;top:20px;left:48px;right:48px;font-size:14px;font-weight:700;color:var(--muted);z-index:5}.story-top a{border-bottom:1px solid var(--line)}.story-copy{position:absolute;left:48px;right:48px;top:76px;z-index:3;pointer-events:none}.story-copy .eyebrow{margin-bottom:16px}.story-copy h1{font-size:64px;line-height:1.12;letter-spacing:-1px;margin-bottom:20px}.story-copy h1 span,.story-copy h1 em{display:block}.story-copy p{font-size:18px;line-height:1.6;max-width:630px;margin:0;color:#d0d0d4}.story-art{position:absolute;left:0;right:0;top:285px;bottom:118px;isolation:isolate;overflow:hidden}.story-image{width:100%;height:100%;object-fit:cover;opacity:.76;transform:scale(1.04);transition:filter 250ms}.story-art:after{content:'';position:absolute;inset:0;background:linear-gradient(#111113c0,transparent 25%,transparent 70%,#111113);pointer-events:none}.story-art-note{position:absolute;bottom:8px;right:35px;font-size:14px;color:#b8b8be;z-index:4}.blackline-stage .story-art{top:290px;bottom:90px}.blackline-stage .story-art:after{display:none}.blackline-stage .story-image{position:absolute;left:8%;width:84%;object-fit:contain;opacity:1;transform:rotate(var(--rotation));transition:transform 160ms linear,filter 350ms;filter:drop-shadow(0 12px 13px #000)}.story-glow{position:absolute;left:25%;right:25%;top:30%;bottom:0;z-index:-1;background:radial-gradient(ellipse,rgba(var(--glow-color),.13),transparent 65%);filter:blur(20px)}.blackline-stage.backlight-on .story-glow{inset:0 5%;background:radial-gradient(ellipse at 50% 10%,rgba(var(--glow-color),.40),transparent 70%)}.module-extra{display:none;position:absolute;width:40%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 20px #0008);transform:rotate(var(--rotation))}.blackline-stage[data-modules="2"] .story-image{left:7%;width:48%;transform:rotate(var(--rotation))}.blackline-stage[data-modules="2"] .module-extra.right{display:block;left:50%;width:48%}.blackline-stage[data-modules="3"] .story-image{left:33%;width:34%}.blackline-stage[data-modules="3"] .module-extra{display:block;width:34%}.blackline-stage[data-modules="3"] .module-extra.left{left:0}.blackline-stage[data-modules="3"] .module-extra.right{left:66%}.story-options{position:absolute;bottom:91px;left:48px;right:48px;z-index:7;min-height:42px}.story-options>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.story-options>div>span{font-size:16px;font-weight:700;color:#ccc;margin-right:8px}.story-options button{padding:11px 17px;border:1px solid var(--line);border-radius:25px;background:#232327;color:#e8e8eb;min-height:44px}.story-options button[aria-pressed=true]{background:var(--orange);color:#171719;border-color:var(--orange)}.general-dimmer{max-width:330px}.general-dimmer label{font-size:16px;font-weight:700;display:flex;align-items:center;gap:20px}.general-dimmer input{width:160px;accent-color:var(--orange);height:24px}.story-bottom{position:absolute;bottom:22px;left:48px;right:48px;display:flex;justify-content:space-between;align-items:center;gap:20px;z-index:10}.story-bottom>span{font-size:14px;color:var(--muted)}.story-bottom>div{display:flex;gap:6px;flex-wrap:wrap}.story-bottom button{border:0;border-radius:23px;background:#212124;color:#babac0;padding:10px 14px;font-size:14px;min-height:40px}.story-bottom button[aria-pressed=true]{color:var(--orange);background:#f18e0019}.story-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#74747650}.story-progress i{height:100%;width:0;display:block;background:var(--orange)}.specs{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-block:76px}.specs h2{font-size:48px}.specs dl{margin:0}.specs dl>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:17px 0;font-size:16px;line-height:1.6}.specs dt{color:var(--muted);flex:1}.specs dd{font-weight:700;text-align:right;margin:0;flex:1}.specs small{display:block;font-size:14px;color:var(--muted);font-weight:400}.specs .source{grid-column:1/-1;justify-self:start}.case-cover{padding-bottom:75px}.case-cover-photo{position:relative;height:460px;overflow:hidden}.case-cover-photo img{width:100%;height:100%;object-fit:cover}.case-cover-copy{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:32px 0;border-bottom:1px solid var(--line)}.case-cover-copy h2{margin-bottom:0}.case-cover-copy .text-link{flex-shrink:0}.result-section{padding:70px 0;background:#efeff1;color:#242426;text-align:center}.result-section .eyebrow{color:#68686c}.big-result{display:flex;align-items:baseline;justify-content:center;gap:18px;margin-block:25px}.big-result .approx{font-size:24px;color:#747476}.big-result strong{font-size:160px;letter-spacing:-2px;line-height:1;font-weight:700;color:var(--orange)}.big-result .percent{font-size:72px;letter-spacing:0;line-height:1;color:var(--orange);font-weight:700}.result-section h2{font-size:40px;line-height:1.2}.result-section p{margin:0 auto;color:#626267}.comparison-section{padding-block:70px 30px}.comparison{--compare:50%;position:relative;aspect-ratio:2/1;min-height:260px;overflow:hidden;touch-action:pan-y;user-select:none;cursor:ew-resize;background:#222}.comparison>img,.comparison-bright img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;max-width:none;pointer-events:none}.comparison-bright{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--compare)) 0 0)}.compare-handle{position:absolute;top:0;bottom:0;left:var(--compare);width:2px;background:var(--orange);pointer-events:none}.compare-handle span{position:absolute;left:1px;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#171719;font-size:24px;font-weight:700;box-shadow:0 4px 22px #0008}.compare-label{position:absolute;bottom:20px;padding:5px 12px;border-radius:4px;background:#111113b0;color:#fff;font-size:14px;font-weight:700;pointer-events:none}.compare-label.left{left:20px}.compare-label.right{right:20px}.comparison-control{display:flex;align-items:center;gap:20px;font-size:16px;font-weight:700;padding-block:20px 8px}.comparison-control input{min-width:80px;flex:1;accent-color:var(--orange);height:30px}.case-text{padding-block:10px 65px}.case-text article{display:grid;grid-template-columns:1fr 1fr;gap:15px 60px;border-top:1px solid var(--line);padding-block:38px}.case-text article>.eyebrow{grid-column:1/-1;margin-bottom:0}.case-text article p{align-self:center}.case-text article h2{margin:0}.news-page{position:relative;isolation:isolate}.news-atmosphere{position:sticky;top:var(--header);height:0;pointer-events:none;z-index:-1}.news-atmosphere i{position:absolute;left:-70%;top:170px;width:65%;height:2px;opacity:0;background:linear-gradient(90deg,transparent,var(--orange),#fff1cd,transparent);box-shadow:0 0 18px #f18e00;animation:warm-pass 18s linear infinite;transform:rotate(-22deg)}@keyframes warm-pass{0%,10%{opacity:0;transform:translate(0,90px) rotate(-22deg)}12%{opacity:.55}29%{opacity:.55;transform:translate(280%,-110px) rotate(-22deg)}32%,100%{opacity:0;transform:translate(290%,-120px) rotate(-22deg)}}.news-page{overflow:clip}.news-list{padding-bottom:15px}.news-item{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:44px 0;border-top:1px solid var(--line)}.news-meta{font-size:14px;color:var(--muted);font-weight:700;padding-top:8px}.news-meta span{display:block;color:var(--orange);margin-top:12px}.news-item h2{font-size:40px}.news-item details{max-width:680px}.news-item summary{font-size:16px;font-weight:700;list-style:none;display:inline-block;border-bottom:1px solid var(--orange);padding:8px 0}.news-item summary::-webkit-details-marker{display:none}.article-body{border-top:1px solid var(--line);margin-top:22px;padding:22px 0 0}.news-next{padding-block:50px 80px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-block:30px 60px}.contact-grid>a{background:var(--surface);padding:40px}.contact-grid h2{font-size:40px;overflow-wrap:anywhere}.contact-address{padding-block:0 70px}.contact-address p{font-size:18px}
@media(min-width:1600px){.home-intro{padding-top:70px}.world-stage,.world-content{min-height:490px}}
@media(max-width:1100px){:root{--header:78px}.site-header{padding-inline:30px;gap:18px}.site-header nav{gap:20px}.site-header nav a{font-size:14px}.header-contact{font-size:14px;padding:10px 14px}.wrap{width:calc(100% - 60px)}h1{font-size:64px}.home-intro h1{font-size:56px}.world-tabs button{padding:17px 12px;font-size:16px}.world-content{padding:120px 30px 55px}.world-content h2{font-size:36px}.world-content p{max-width:430px}.world-link{padding:12px 18px}.story-copy h1{font-size:56px}.story-copy{left:35px;right:35px}.story-top,.story-bottom{left:35px;right:35px}.story-options{left:35px;right:35px}.story-bottom>span{max-width:100px}.product-card-image{height:230px}.cta h2{font-size:56px}}
@media(max-width:800px){:root{--header:74px}.header-contact{display:none}.site-header{padding-inline:24px}.site-header nav{gap:22px}.site-header nav a{font-size:14px}.wrap{width:calc(100% - 48px)}h1{font-size:56px}h2{font-size:40px}.home-intro{padding-top:35px}.home-intro h1{font-size:56px}.world-tabs button{font-size:16px;padding:16px 8px}.world-content{display:block;min-height:470px;padding-top:175px}.world-content h2{font-size:40px;max-width:550px}.world-content p{max-width:510px}.world-link{margin-top:22px}.home-bottom{display:block}.home-bottom .text-link{margin-top:12px}.site-footer{padding:30px 24px;gap:22px}.site-footer>div{margin-left:0}.page-intro{padding-top:45px}.sector-scene{height:380px}.scene-controls{padding:20px;gap:25px}.product-card-copy{padding:24px}.product-card-copy h3{font-size:28px}.product-card-image{height:210px}.story-stage{min-height:670px}.story-copy h1{font-size:48px}.story-copy p{font-size:18px;max-width:580px}.story-copy{top:76px}.story-art{top:285px;bottom:140px}.blackline-stage .story-art{top:285px;bottom:135px}.story-bottom{left:24px;right:24px}.story-bottom button{padding:10px 12px}.story-options{bottom:99px;left:28px;right:28px}.specs{gap:30px}.specs h2{font-size:36px}.cta h2{font-size:48px}.case-cover-photo{height:350px}.big-result strong{font-size:120px}.big-result .percent{font-size:64px}.contact-grid{gap:24px}.contact-grid>a{padding:28px}.contact-grid h2{font-size:32px}}
@media(max-width:600px){:root{--header:70px}.site-header{padding:0 20px;gap:15px}.brand{font-size:28px}.menu-toggle{display:block;margin-left:auto;padding:9px 15px;border:1px solid var(--line);border-radius:25px;background:transparent;color:#eee;font-size:16px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#17171af7;padding:18px 24px 24px;border-bottom:1px solid var(--line);flex-direction:column;gap:0;align-items:stretch}.site-header nav.open{display:flex}.site-header nav a{font-size:18px;padding:13px 0}.wrap{width:calc(100% - 40px)}h1{font-size:40px;line-height:1.14;letter-spacing:-1px}h2{font-size:36px;line-height:1.17;letter-spacing:-1px}h3{font-size:28px}.eyebrow{font-size:14px;letter-spacing:1px;margin-bottom:16px}.home-intro{padding-top:30px}.home-intro h1{font-size:48px;margin-bottom:28px}.world-tabs{flex-wrap:wrap}.world-tabs button{flex:1 1 30%;font-size:16px;padding:13px 7px}.world-content{min-height:420px;padding:130px 22px 53px}.world-content h2{font-size:32px;line-height:1.16}.world-content p{font-size:18px}.world-content .eyebrow{font-size:14px}.world-image{object-position:50% 50%}.world-link{font-size:16px;margin-top:20px}.world-stage{min-height:420px}.photo-note{font-size:14px;right:15px;bottom:12px;max-width:85%;text-align:right}.home-bottom{padding:22px 0 35px}.home-bottom p{font-size:16px}.site-footer{padding:26px 20px;display:block}.site-footer p{margin-top:18px;margin-bottom:20px}.site-footer>div{gap:22px;flex-wrap:wrap;font-size:14px}.page-intro{padding:35px 0 22px}.page-intro p{font-size:18px}.page-intro h1{overflow-wrap:anywhere}.use-cases{gap:8px}.use-cases span{font-size:14px;padding:7px 12px}.sector-scene{height:320px}.scene-status{left:20px;bottom:35px;font-size:20px}.scene-controls{flex-wrap:wrap;gap:20px;padding:20px}.scene-controls label{width:100%}.scene-controls .button{width:100%}.product-selection{padding:38px 0 45px}.product-grid{grid-template-columns:1fr;gap:22px}.product-card-image{height:245px}.product-card-copy{padding:25px}.catalog{padding-bottom:40px}.catalog-filters{gap:8px;margin-top:0}.catalog-filters button{font-size:14px;padding:9px 15px}.cta{padding-block:42px}.cta h2{font-size:40px;line-height:1.17;letter-spacing:-1px}.cta .light-streak{right:-32%;width:60%}.journey{height:calc(var(--chapter-count)*490px + 610px)}.story-stage{height:calc(100svh - var(--header));min-height:660px;max-height:800px}.story-top{left:20px;right:20px;top:18px;font-size:14px;gap:10px}.story-copy{left:22px;right:22px;top:65px}.story-copy h1{font-size:40px;line-height:1.16;letter-spacing:-1px;overflow-wrap:anywhere}.story-copy p{font-size:16px;line-height:1.6}.story-copy .eyebrow{font-size:14px;margin-bottom:15px}.story-art,.blackline-stage .story-art{top:300px;bottom:172px}.story-art-note{font-size:14px;bottom:6px;right:20px}.story-image{object-position:center}.blackline-stage .story-image{left:0;width:100%}.story-options{bottom:115px;left:22px;right:22px;min-height:42px}.story-options>div{gap:8px}.story-options>div>span{flex-basis:100%;font-size:14px}.story-options button{padding:10px 13px;font-size:14px}.story-bottom{left:20px;right:20px;bottom:18px;display:block}.story-bottom>span{display:block;max-width:none;margin-bottom:7px}.story-bottom>div{gap:4px}.story-bottom button{font-size:14px;padding:9px 9px;min-height:38px}.general-dimmer label{font-size:14px}.specs{grid-template-columns:1fr;gap:25px;padding-block:42px}.specs h2{font-size:36px}.specs dl>div{font-size:16px;gap:20px}.specs dt{flex:1}.specs dd{flex:1.2}.specs .source{font-size:14px}.case-cover{padding-bottom:45px}.case-cover-photo{height:270px}.case-cover-copy{display:block;padding:25px 0}.case-cover-copy h2{font-size:32px;margin-bottom:15px}.result-section{padding-block:42px}.big-result{gap:12px;margin-block:20px}.big-result strong{font-size:96px;letter-spacing:0}.big-result .approx{font-size:20px}.big-result .percent{font-size:48px}.result-section h2{font-size:28px}.comparison-section{padding-block:42px 22px}.comparison{min-height:260px}.comparison-control{font-size:14px;gap:12px}.comparison-control input{min-width:60px}.compare-label{font-size:14px;padding:4px 7px;bottom:12px}.compare-label.left{left:12px}.compare-label.right{right:12px}.compare-handle span{width:42px;height:42px}.case-text{padding-block:0 40px}.case-text article{grid-template-columns:1fr;gap:16px;padding-block:28px}.case-text article h2{font-size:32px}.case-text article p{margin-bottom:0}.news-item{grid-template-columns:1fr;gap:18px;padding:28px 0}.news-item h2{font-size:36px;margin-bottom:18px}.news-meta{font-size:14px;padding-top:0}.news-meta span{display:inline-block;margin:0 0 0 16px}.news-next{padding-block:38px 48px}.news-next h2{font-size:32px}.contact-grid{grid-template-columns:1fr;padding-block:12px 30px;gap:20px}.contact-grid h2{font-size:28px}.contact-address{padding-bottom:45px}}
@media(max-width:360px){h1,.home-intro h1{font-size:40px}.story-copy h1{font-size:32px;line-height:1.17}.story-options button{padding:9px 10px;font-size:14px}.story-bottom button{padding:8px;font-size:14px}.world-content h2{font-size:28px}.big-result strong{font-size:96px}.big-result .percent{font-size:48px}.big-result{gap:10px}.contact-grid h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.story-image,.module-extra{transform:none!important}.news-atmosphere{display:none}}
/* Keep the entire product stage inside short desktop viewports. */
.story-stage{min-height:0}
@media(max-height:800px) and (min-width:601px){.story-copy{top:60px}.story-copy h1{font-size:48px;line-height:1.12;margin-bottom:16px}.story-copy .eyebrow{margin-bottom:12px}.story-art,.blackline-stage .story-art{top:250px;bottom:135px}.story-bottom{bottom:17px}.story-options{bottom:78px}}
@media(max-height:740px) and (max-width:600px){.story-stage{min-height:0}.story-copy{top:54px}.story-copy h1{font-size:32px;line-height:1.14;margin-bottom:12px}.story-copy p{font-size:16px;line-height:1.5}.story-copy .eyebrow{margin-bottom:10px}.story-art,.blackline-stage .story-art{top:250px;bottom:165px}.story-options{bottom:107px}.story-bottom{bottom:13px}.story-options>div>span{display:none}}

/* Reserve space using actual text and control heights, including wrapped labels. */
.story-options{bottom:var(--controls-bottom,115px)}
.story-art,.blackline-stage .story-art{top:var(--art-top,300px);bottom:var(--art-bottom,170px)}

.brand{display:block;line-height:0;flex-shrink:0}.brand img{width:185px;height:auto;max-height:64px;object-fit:contain}.site-footer .brand img{width:175px}
@media(max-width:600px){.brand img{width:164px;max-height:58px}}

.world-hit{position:absolute;inset:0;z-index:4}.world-link{position:relative;z-index:5}.world-hit:hover~.world-content .world-title{color:#f18e00}.emitter-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.emitter-off{transition:opacity 160ms linear}.story-art .emitter-layer{z-index:2}.story-art:not(.blackline-stage .story-art) .story-image{width:100%;height:100%;object-fit:cover;transform:none;left:0;top:0}.story-art-note{z-index:3}.site-header nav{gap:clamp(14px,1.2vw,22px)}
/* Die Schaltfläche passt erst ab rund 1500 px neben Logo, Menü und Sprachschalter. Darunter
   wurde vorher das Logo zusammengedrückt und die Menüleiste aus der Mitte geschoben. */
@media(max-width:1400px){.header-contact{display:none}}

.contact-directory{padding-block:40px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:28px}.directory-grid article{background:var(--surface);padding:28px;min-width:0}.directory-grid .eyebrow{min-height:58px}.directory-grid h3{font-size:28px}.directory-grid a{display:block;font-size:18px;padding-block:5px;overflow-wrap:anywhere}.directory-grid a:hover{color:var(--orange)}.calculator-inputs{display:grid;grid-template-columns:1fr 1fr;gap:24px}.calculator-inputs label{font-size:16px;font-weight:700;display:flex;flex-direction:column;justify-content:space-between;gap:12px}.calculator-inputs input{width:100%;font-size:24px;font-weight:700;background:#222225;color:#fff;border:1px solid #747476;padding:16px;border-radius:8px}.calculator-result{padding:35px;background:linear-gradient(135deg,#f18e0020,#1c1c1f);border:1px solid #f18e0050}.calculator-result h2{font-size:56px;overflow-wrap:anywhere}.calculator-result dl>div{display:flex;justify-content:space-between;gap:20px;margin-block:14px;font-size:18px}.calculator-result dd{margin:0;font-weight:700;white-space:nowrap}.calculator-note{padding-bottom:40px}@media(max-width:800px){.directory-grid{grid-template-columns:1fr}.directory-grid .eyebrow{min-height:0}.calculator-result h2{font-size:40px}}@media(max-width:600px){.calculator-inputs{grid-template-columns:1fr}.calculator-result{padding:24px}.contact-directory{padding-block:25px}}

.sector-scene{height:auto;aspect-ratio:2/1}.sector-scene>img{position:absolute;inset:0;object-fit:contain}.story-art:not(.blackline-stage .story-art) .story-image{object-fit:contain}@media(max-width:600px){.sector-scene{aspect-ratio:2/1}.scene-status{font-size:16px;left:12px;bottom:28px}.sector-scene .photo-note{font-size:14px;bottom:8px}}

@media(min-width:601px) and (max-width:1200px){.menu-toggle{display:block;margin-left:auto;padding:9px 15px;border:1px solid var(--line);border-radius:25px;background:transparent;color:#eee;font-size:16px}.site-header nav{display:none;position:absolute;top:var(--header);left:0;right:0;background:#17171af7;padding:18px 24px;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{font-size:18px;padding:13px 0}}

.comparison{width:100%;min-width:0}@media(max-width:600px){.comparison{aspect-ratio:auto;height:260px}}

.app-selection{padding-block:20px 70px}.sensora-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:linear-gradient(125deg,#222225,#111113);border:1px solid #74747650;padding:40px;gap:30px;overflow:hidden}.sensora-card h3{font-size:48px}.sensora-plan{height:100%;width:100%;padding:20px;min-height:180px}.plan-room{position:relative;width:100%;height:100%;min-height:140px;border:2px solid #747476;background:linear-gradient(90deg,#74747615 1px,transparent 1px),linear-gradient(#74747615 1px,transparent 1px);background-size:28px 28px;overflow:hidden}.plan-wall{position:absolute;background:#747476;width:2px;height:45%;left:36%;top:0}.wall-b{left:70%;top:55%}.sensor-zone{position:absolute;left:var(--x);top:var(--y);width:70px;height:70px;border:1px solid #f18e0090;background:radial-gradient(#f18e0040,transparent);border-radius:50%;transform:translate(-50%,-50%)}.sensor-zone i{position:absolute;inset:calc(50% - 4px);border-radius:50%;background:#f18e00;box-shadow:0 0 18px #f18e00}.plan-label{position:absolute;bottom:10px;left:12px;font-size:14px;color:#aaa}.sensora-art{left:8%;right:8%;overflow:visible}.sensora-art:after{display:none}.sensora-media{height:calc(100% - 30px);min-height:0;background:linear-gradient(135deg,#252528,#161618);border:1px solid #74747670;border-radius:14px;box-shadow:0 0 70px #f18e0010;overflow:hidden}.sensora-media .sensora-plan,.sensora-media .plan-room{min-height:0}.sensora-media-label{display:block;text-align:center;font-size:14px;color:#b6b6bc;padding-top:6px}.sensora-stage[data-sensora-step="1"] .sensor-zone{width:100px;height:100px}.sensora-stage[data-sensora-step="2"] .sensor-zone{opacity:.35}.sensora-playing .sensor-zone{animation:sensora-pulse 2400ms var(--delay) infinite ease-in-out!important}.sensora-photo{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;background:radial-gradient(ellipse at 60% 10%,#f18e0030,transparent 70%)}.sensora-photo>span{font-size:32px;line-height:1.2;font-weight:700}.sensora-photo small{font-size:14px;color:#aaa}@keyframes sensora-pulse{0%,100%{opacity:.25}50%{opacity:1;box-shadow:0 0 40px #f18e0040}}@media(max-width:600px){.sensora-card{grid-template-columns:1fr;padding:25px;gap:20px}.sensora-card h3{font-size:40px}.sensora-art{left:20px;right:20px}.sensora-media .sensora-plan{padding:12px}.sensora-media-label{font-size:14px;line-height:1.3}.sensora-photo>span{font-size:24px}.sensora-photo{gap:10px}.sensor-zone{width:45px;height:45px}.sensora-stage[data-sensora-step="1"] .sensor-zone{width:60px;height:60px}}@media(prefers-reduced-motion:reduce){.sensora-playing .sensor-zone{animation:none!important;opacity:1}}
/* Warm architectural light, behind the working surface. */
body{background:radial-gradient(ellipse at 70% 5%,#f18e0014,transparent 48%),#111113}#app{position:relative;isolation:isolate}.ambient-light{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1}.ambient-light i{position:absolute;width:48vw;height:3px;left:-65vw;top:29%;border-radius:100%;background:linear-gradient(90deg,transparent,#f18e00 40%,#ffd69a 75%,transparent);box-shadow:0 0 14px 5px #f18e0050,0 0 65px 18px #f18e0020;opacity:0;animation:ambient-pass-frequent 9s 1.5s infinite ease-in-out;transform:rotate(-18deg)}.ambient-light i:nth-child(2){top:74%;width:35vw;animation-duration:13s;animation-delay:5.5s;filter:blur(1px)}@keyframes ambient-pass{0%,74%{opacity:0;transform:translateX(0) rotate(-18deg)}78%{opacity:.8}89%{opacity:.55}94%,100%{opacity:0;transform:translateX(190vw) rotate(-18deg)}}.sensora-photo{position:relative;overflow:hidden}.sensora-photo:after{content:'';position:absolute;width:65%;height:3px;left:-70%;top:65%;background:linear-gradient(90deg,transparent,#f18e00,#ffd69a,transparent);box-shadow:0 0 22px 7px #f18e0050;animation:ambient-pass 18s 1s infinite;pointer-events:none}.motion-toggle{border:0;background:transparent;color:#b6b6bc;padding:0;font-size:16px;text-align:left}.motion-paused .ambient-light,.motion-paused .sensora-photo:after,.motion-paused .news-atmosphere{display:none}.motion-paused .light-streak{animation:none}.planner-entry{padding:30px;margin-bottom:40px;border:1px solid #f18e0040;background:linear-gradient(125deg,#f18e0019,#1c1c1f);display:flex;justify-content:space-between;gap:30px;align-items:center}.planner-entry h2{font-size:32px}.planner-entry p{margin-bottom:0}.planner-entry>div:last-child{display:flex;gap:12px;flex-wrap:wrap;min-width:240px}.planner-heading{padding-block:34px 22px}.planner-heading h1{font-size:40px;letter-spacing:-1px;margin-bottom:12px}.planner-heading p{font-size:18px;margin:0}.planner-heading .eyebrow{margin-bottom:10px}.planner-shell{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:28px;align-items:start;padding-bottom:64px}.planner-work{min-width:0;background:#171719e8;border:1px solid #74747640;border-radius:16px;overflow:hidden}.planner-modes{display:flex;padding:14px;gap:10px}.planner-modes button{flex:1;padding:12px;border-radius:24px;border:1px solid #74747670;background:transparent;color:#ccc;font-size:18px}.planner-modes button[aria-pressed=true]{background:#f18e00;color:#171719;border-color:#f18e00}.planner-photo{position:relative;height:135px;overflow:hidden}.planner-photo img{width:100%;height:100%;object-fit:cover}.planner-photo>span{position:absolute;bottom:0;left:0;right:0;padding:7px 14px;background:#111113bb;color:#ddd;font-size:14px}.planner-steps{display:flex;border-bottom:1px solid #74747650;padding-inline:24px;gap:22px}.planner-steps button{padding:16px 0;background:none;color:#b6b6bc;border:0;border-bottom:2px solid transparent;font-size:16px}.planner-steps button[aria-pressed=true]{color:#f18e00;border-color:#f18e00}#planner-form{padding:24px}#planner-form h2{font-size:28px;margin-bottom:10px}.plan-hint{font-size:16px;line-height:1.6;margin-bottom:20px}.plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.plan-field{display:flex;flex-direction:column;gap:9px;font-size:16px;font-weight:700;min-width:0}.plan-field>div{display:flex;align-items:center;background:#222225;border:1px solid #74747680;border-radius:8px;overflow:hidden}.plan-field input{width:100%;min-width:0;border:0;background:transparent;color:#fff;padding:13px 12px;font-size:24px;font-weight:700}.plan-field>div>span{color:#aaa;font-size:16px;padding-right:12px;white-space:nowrap}.plan-field small{font-size:14px;font-weight:400;color:#aaa;line-height:1.5}.has-errors input:invalid{outline:2px solid #f18e00;outline-offset:-2px}.plan-next{margin-top:24px}#plan-error{font-size:16px;color:#ffd39a;margin:20px 0 0}.planner-result{position:sticky;top:108px;padding:30px;background:linear-gradient(145deg,#5d4026a8,#222123ee 65%);border:1px solid #f18e0050;border-radius:16px;min-width:0;overflow:hidden}.planner-result>.eyebrow{font-size:14px;letter-spacing:1px}.plan-money{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;font-variant-numeric:tabular-nums}.plan-money strong{font-size:56px;line-height:1.15;letter-spacing:-1px;overflow-wrap:anywhere;max-width:100%}.plan-money>span{font-size:18px;color:#d5c7b8;font-weight:700}.planner-result p{font-size:16px;margin-top:10px}.planner-result dl{margin-block:28px}.planner-result dl>div{display:flex;justify-content:space-between;gap:20px;margin-block:16px;font-size:16px}.planner-result dd{margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.plan-status{display:block;color:#d3bd9f;font-size:14px;padding-top:14px;border-top:1px solid #74747670}.planner-result .button{display:flex;margin-top:24px}.plan-print{display:block;margin:12px auto 20px;padding:8px;background:none;border:0;color:#ddd;font-size:16px}.planner-result .fine{font-size:14px;margin-bottom:0}.plan-bars>div{display:grid;grid-template-columns:1fr auto;gap:8px 20px;margin-block:25px;font-size:16px}.plan-bars strong{font-variant-numeric:tabular-nums}.plan-bars i{grid-column:1/-1;height:12px;border-radius:6px;overflow:hidden;background:#303033}.plan-bars b{display:block;height:100%;background:#f18e00;border-radius:6px;transition:width 250ms}.plan-bars>div:first-child b{background:#747476}.plan-bars>div:nth-child(2) b{background:#b67625}.plan-method{border-top:1px solid #74747670;padding-top:20px}.plan-method summary{font-size:16px;font-weight:700}.plan-method p{font-size:16px;margin-top:16px}.planner-result a[aria-disabled=true]{opacity:.45;cursor:not-allowed}
@media(max-width:950px){.planner-shell{grid-template-columns:minmax(0,1.2fr) minmax(270px,1fr);gap:18px}.planner-result{padding:24px}.plan-fields{grid-template-columns:1fr}.plan-money strong{font-size:40px}}@media(max-width:700px){.planner-shell{grid-template-columns:1fr}.planner-result{position:static}.planner-heading{padding-top:28px}.planner-heading h1{font-size:36px}.planner-heading h1 em{display:block}.planner-photo{height:115px}.planner-steps{gap:22px;padding-inline:20px}#planner-form{padding:20px}.plan-fields{grid-template-columns:1fr 1fr;gap:16px}.plan-field input{font-size:20px}.planner-entry{display:block;padding:24px}.planner-entry>div:last-child{margin-top:22px}.planner-entry h2{font-size:28px}.plan-bars>div{grid-template-columns:1fr}.plan-bars strong{font-size:16px}.ambient-light i{width:80vw}.planner-result dl>div{gap:14px}}@media(max-width:380px){.plan-fields{grid-template-columns:1fr}.planner-steps{gap:18px}.planner-steps button{font-size:16px}}
@media(prefers-reduced-motion:reduce){.ambient-light,.sensora-photo:after{display:none}.motion-toggle{display:none}}@media print{.site-header,.site-footer,.ambient-light,.planner-photo,.planner-steps,.planner-modes,.plan-next,.plan-print,#plan-inquiry{display:none!important}body{background:#fff;color:#111}.planner-shell{display:block}.planner-work,.planner-result{background:#fff;color:#111;border:1px solid #ccc;overflow:visible;position:static;margin-bottom:20px}.planner-heading,.planner-shell{width:100%}.plan-fields{grid-template-columns:1fr 1fr}[data-plan-panel][hidden]{display:block!important}[data-plan-panel]{margin-bottom:24px}p,.plan-hint,.plan-field small,.plan-status,.planner-result .fine,.plan-money>span{color:#333!important}.plan-field input{color:#111}.plan-field>div{background:#fff}.plan-method{display:none}.plan-bars i{print-color-adjust:exact}.planner-result{break-inside:avoid}.plan-money strong{font-size:36px}}

.plan-method summary{list-style:none}.plan-method summary::-webkit-details-marker{display:none}.plan-method summary:after{content:'';float:right;width:20px;height:20px;margin-top:3px;background:#f18e00;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .4s var(--ease-out)}.plan-method[open] summary:after{transform:rotate(45deg)}.planner-shell{scroll-margin-top:18px}
.vp-heading{padding-block:28px 22px}.vp-heading h1{font-size:40px;letter-spacing:-1px;margin-bottom:12px}.vp-heading p{font-size:18px;margin:0}.vp-heading .eyebrow{margin-bottom:10px}.vp-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}.vp-settings,.vp-work{background:#1b1b1de8;border:1px solid #74747650;border-radius:14px;overflow:hidden}.vp-inputs{padding:0 20px 22px}.vp-control{margin-block:20px}.vp-control label{display:flex;justify-content:space-between;gap:12px;font-size:16px;font-weight:700;margin-bottom:10px}.vp-control output{color:#f18e00;font-variant-numeric:tabular-nums}.vp-control>div{display:flex;align-items:center;gap:12px}.vp-control input{width:100%;min-width:0;accent-color:#f18e00}.vp-control button{width:34px;height:34px;flex-shrink:0;background:#303033;border:1px solid #74747660;color:#fff;border-radius:8px;font-size:24px}.vp-reset{background:none;border:0;border-bottom:1px solid #f18e00;color:#fff;padding:8px 0;font-size:16px}.vp-exact{margin-top:22px;border-top:1px solid #74747650;padding-top:16px}.vp-exact summary{list-style:none;font-size:16px}.vp-exact summary::-webkit-details-marker{display:none}.vp-exact p{font-size:14px;margin-top:12px}#vp-exact-fields{display:grid;gap:12px}#vp-exact-fields label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:16px}#vp-exact-fields input{width:78px;background:#29292c;border:1px solid #747476;color:#fff;padding:8px;font-size:18px}.vp-topline{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px}.vp-topline strong{display:block;font-size:24px;line-height:1.25}.vp-topline span{font-size:16px;color:#aaa}.vp-topline label{display:flex;gap:12px;align-items:center;font-size:16px}.vp-topline input{width:100px;accent-color:#f18e00}.vp-scroll{height:530px;overflow:auto;background:radial-gradient(ellipse at 70% 20%,#f18e0010,transparent),#121416}.vp-canvas{width:100%;min-width:70%;height:100%;min-height:500px;display:flex;align-items:center;justify-content:center}.vp-canvas svg{height:100%;width:100%;display:block;touch-action:none;user-select:none}.vp-canvas svg [data-vp-item]{cursor:grab}.vp-canvas svg [data-vp-item]:active{cursor:grabbing}.vp-canvas svg [data-vp-item]:focus{outline:none;filter:drop-shadow(0 0 1px #f18e00)}.vp-selection{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border-top:1px solid #74747640;font-size:16px}.vp-selection>div{display:flex;gap:6px;flex-wrap:wrap}.vp-selection button{background:#29292c;border:1px solid #74747650;color:#ddd;padding:8px;font-size:14px;border-radius:6px}.vp-selection button:disabled{opacity:.4}.vp-work>.fine{padding:0 20px;margin-bottom:16px}.vp-summary{display:flex;justify-content:space-between;gap:28px;padding-block:28px 54px}.vp-summary p{font-size:18px}.vp-summary p.fine{font-size:14px}.vp-summary>div:last-child{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}.vp-summary .eyebrow{margin-bottom:10px}@media(max-width:850px){.vp-layout{grid-template-columns:230px minmax(0,1fr);gap:16px}.vp-topline{align-items:flex-start;flex-direction:column;gap:12px}.vp-selection{display:block}.vp-selection>div{margin-top:12px}}@media(max-width:600px){.vp-heading h1{font-size:32px}.vp-layout{grid-template-columns:1fr}.vp-inputs{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.vp-control{margin-block:12px}.vp-control label{font-size:16px;flex-wrap:wrap;gap:4px}.vp-reset,.vp-exact{grid-column:1/-1}.vp-topline{flex-direction:row;padding:16px}.vp-topline strong{font-size:24px}.vp-topline label{display:block}.vp-topline input{display:block;width:75px}.vp-scroll{height:430px}.vp-canvas{min-height:430px}.vp-summary{display:block}.vp-summary>div:last-child{margin-top:20px}.vp-selection{padding:16px}.vp-control>div{gap:6px}.vp-control button{width:30px;height:34px}}.emergency-state{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 800ms ease;pointer-events:none}.emergency-active .emergency-state{opacity:1}

.vp-canvas{min-height:0}

.vp-canvas{position:relative}.vp-dim-width,.vp-dim-length{position:absolute;color:#b6b6bc;font-size:16px;font-weight:700;pointer-events:none;background:#121416bb;padding:4px 8px;border-radius:5px;z-index:2}.vp-dim-width{top:3px;left:50%;transform:translateX(-50%)}.vp-dim-length{left:5px;top:50%;writing-mode:vertical-rl;transform:rotate(180deg)}
.catalog-jumps{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:28px}.catalog-jumps a{font-size:16px;font-weight:700;border-bottom:1px solid #f18e00;padding:8px 0}.library-tools{display:flex;gap:24px;align-items:end;margin-bottom:28px;flex-wrap:wrap}.library-tools label{display:flex;flex-direction:column;gap:10px;font-size:16px;font-weight:700;flex:1;min-width:190px}.library-tools input,.library-tools select{font-family:Arial,sans-serif;font-size:18px;color:#eee;background:#222225;border:1px solid #74747680;padding:14px 16px;border-radius:8px;width:100%}.library-tools>span{font-size:16px;color:#b6b6bc;padding:12px 0;white-space:nowrap}.ecosystem{padding-block:45px 70px}.eco-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.eco-grid>a{padding:30px;background:linear-gradient(135deg,#f18e0017,#1c1c1f);border:1px solid #74747650;border-radius:12px;display:flex;flex-direction:column;align-items:start}.eco-grid h3{font-size:28px}.eco-grid p{font-size:18px}.eco-grid .text-link{margin-top:auto}.product-documents{grid-column:1/-1;border-top:1px solid #74747650;padding-top:25px}.product-documents h3{font-size:24px}.product-documents a{display:inline-block;margin:0 20px 10px 0;padding:8px 0;border-bottom:1px solid #f18e00;font-size:16px}.native-product-stage .story-art:after{display:none}.native-product-stage .story-image{opacity:1!important;padding:12px 4%}.case-library,.news-archive{padding-bottom:65px}.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.case-tile{background:#1c1c1f;overflow:hidden;border-radius:12px;border:1px solid #74747630}.case-tile>img{width:100%;height:245px;object-fit:cover;transition:transform 400ms}.case-tile:hover>img{transform:scale(1.025)}.case-tile>div{padding:28px}.case-tile h2{font-size:32px;margin-bottom:22px}.case-tile strong{display:block;font-size:40px;line-height:1.2;color:#f18e00;overflow-wrap:anywhere}.case-tile p{font-size:16px;margin:8px 0 0}.case-tile .eyebrow{margin-bottom:12px}.project-picture{height:480px;position:relative;overflow:hidden;border-radius:12px}.project-picture img{width:100%;height:100%;object-fit:cover}.case-impact{display:flex;gap:65px;padding-block:50px}.case-impact>div{flex:1;min-width:0}.case-impact strong{font-size:72px;line-height:1.1;display:block;color:#f18e00;overflow-wrap:anywhere}.case-impact .roi-value{font-size:48px}.case-impact p{font-size:18px;margin-top:16px}.related-world{padding-block:30px 65px}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.journal-card{padding:28px;border:1px solid #74747650;background:#1b1b1ee8;border-radius:12px;display:flex;flex-direction:column;align-items:start}.journal-card time{font-size:14px;color:#aaa;margin-bottom:14px}.journal-card .eyebrow{font-size:14px;margin-bottom:16px;color:#f18e00}.journal-card h2{font-size:28px;line-height:1.22;letter-spacing:0;overflow-wrap:break-word;hyphens:auto;text-wrap:pretty}.journal-card p{font-size:18px}.journal-card>.text-link{margin-top:auto}#journal-more{margin-top:28px}.journal-detail{max-width:950px;padding-block:55px 70px}.journal-detail>time{font-size:16px;display:block;margin-bottom:20px;color:#aaa}.journal-detail h1{font-size:56px;letter-spacing:-1px;line-height:1.15;text-wrap:pretty}.journal-lead{font-size:24px;max-width:850px}.journal-related{margin-top:65px;border-top:1px solid #74747650;padding-top:35px}.journal-related h2{font-size:36px}.management-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-block:25px 50px}.management-flow article{padding:36px;background:linear-gradient(140deg,#f18e0017,#1a1a1c);border:1px solid #74747640;border-radius:12px}.management-flow h2{font-size:40px}.management-note{padding:40px;background:linear-gradient(120deg,#f18e0025,#1c1c1f);border:1px solid #74747650;margin-bottom:45px;border-radius:12px}.management-note p{font-size:20px;max-width:850px}.management-note .source{display:block;width:fit-content;margin-top:25px}.management-note .text-link{display:block;width:fit-content;margin-top:22px}.about-links{margin-bottom:55px}.document-library{padding-bottom:65px;max-width:1000px}.document-library details{border-top:1px solid #74747660;padding-block:20px}.document-library summary{font-size:24px;font-weight:700;list-style:none}.document-library summary::-webkit-details-marker{display:none}.document-library summary:after{content:'';float:right;width:22px;height:22px;margin-top:4px;background:#f18e00;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .4s var(--ease-out)}.document-library details[open] summary:after{transform:rotate(45deg)}.document-library a{display:block;font-size:18px;padding:12px 0;border-bottom:1px solid #74747630;overflow-wrap:anywhere}.document-library details[open] summary{margin-bottom:18px}.site-footer>div{flex-wrap:wrap}.product-grid.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-grid .product-card-image{height:230px}.catalog-grid .product-card-copy{padding:25px}.catalog-grid h3{font-size:28px}
@media(max-width:1000px){.eco-grid,.journal-grid,.product-grid.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-impact strong{font-size:56px}.case-impact .roi-value{font-size:36px}}@media(max-width:600px){.eco-grid,.journal-grid,.product-grid.catalog-grid,.case-grid,.management-flow{grid-template-columns:1fr}.eco-grid>a,.management-flow article{padding:25px}.library-tools{gap:16px}.library-tools label{min-width:100%}.case-tile>img{height:220px}.case-tile h2{font-size:28px}.case-tile strong{font-size:36px}.project-picture{height:260px}.case-impact{display:block;padding-block:32px}.case-impact>div+div{margin-top:28px}.case-impact strong{font-size:48px}.case-impact .roi-value{font-size:32px}.journal-detail h1{font-size:36px}.journal-lead{font-size:20px}.journal-card{padding:25px}.journal-card h2{font-size:28px}.management-note{padding:25px}.management-note h2,.management-flow h2{font-size:32px}.management-note p{font-size:18px}.document-library summary{font-size:20px;padding-right:12px}.site-footer>div{gap:18px}.native-product-stage .story-image{padding:8px}}

.footer-social{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0}.footer-social a{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border:1px solid #74747680;border-radius:30px;font-size:16px;font-weight:700}.footer-social a:hover,.footer-social a:focus-visible{color:#f18e00;border-color:#f18e00}

.corporate-footer{display:block;padding:56px max(24px,calc((100vw - 1184px)/2)) 28px}.corporate-footer .footer-intro{display:block;margin-bottom:42px}.corporate-footer .footer-intro p{margin:14px 0;color:#b8b8ba;font-size:16px}.corporate-footer .footer-social{gap:12px}.corporate-footer .footer-social a{gap:9px}.footer-social svg{width:20px;height:20px;flex:none}.corporate-footer .footer-sitemap{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;padding-bottom:40px}.footer-sitemap h2{font-size:18px;font-weight:700;margin:0 0 16px;color:#fff}.footer-sitemap ul{list-style:none;padding:0;margin:0}.footer-sitemap li{margin:0}.footer-sitemap a{display:block;padding:8px 0;font-size:16px;font-weight:700;line-height:1.5;color:#b8b8ba;overflow-wrap:anywhere}.footer-sitemap a:hover{color:#f18e00}.corporate-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #74747650;padding-top:24px;font-size:14px;color:#b8b8ba}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:20px}.footer-bottom a,.footer-bottom button{font-size:14px}.contact-directory[id],.directory-grid article[id]{scroll-margin-top:110px}@media(max-width:800px){.corporate-footer .footer-sitemap{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.corporate-footer .footer-bottom{align-items:flex-start;flex-direction:column}}@media(max-width:420px){.corporate-footer .footer-sitemap{grid-template-columns:1fr}.corporate-footer .footer-social{gap:8px}.corporate-footer .footer-social a{padding:10px 12px}}
/* Touch devices: tap targets of at least 44px without changing the desktop look. */
@media (pointer:coarse),(max-width:850px){.menu-toggle{min-height:44px;min-width:72px}.footer-sitemap a{padding:11px 0}.footer-bottom a,.footer-bottom .motion-toggle{display:inline-flex;align-items:center;min-height:44px}.footer-bottom>div{gap:0 24px}.directory-grid a{padding-block:10px}.text-link{padding-block:12px}a.eyebrow{display:inline-flex;align-items:center;min-height:44px;margin-top:-12px;margin-bottom:6px}}
@keyframes ambient-pass-frequent{0%,40%{opacity:0;transform:translateX(0) rotate(-18deg)}51%{opacity:.8}80%{opacity:.55}93%,100%{opacity:0;transform:translateX(190vw) rotate(-18deg)}}
@media (pointer:coarse),(max-width:850px){.product-selection .safety-link{display:inline-flex;align-items:center;min-height:44px}.story-top a{display:inline-block;padding-block:12px;margin-block:-12px}}
/* ==== Premium layer: calm typography and smooth, physical-feeling interactions ==== */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--ease-press:cubic-bezier(.33,1,.68,1)}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
p{line-height:1.6}
.page-intro p{font-size:clamp(20px,1.55vw,24px);line-height:1.5;color:#c6c6cb;max-width:700px}
.page-intro h1{margin-bottom:28px}
@media(max-width:600px){p{font-size:18px}.page-intro p{font-size:20px}}
a,button,summary,input,select,textarea{transition:color .45s var(--ease-out),background-color .45s var(--ease-out),border-color .45s var(--ease-out),box-shadow .6s var(--ease-out),transform .6s var(--ease-out),opacity .45s var(--ease-out)}
::selection{background:#f18e00;color:#171719}
:focus-visible{outline-offset:6px}

/* Buttons: soft lift, light that follows the pointer, gentle press */
.button,.header-contact,.menu-toggle{position:relative;isolation:isolate;overflow:hidden;will-change:transform}
.button::before,.header-contact::before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(140px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.38),transparent 70%);opacity:0;transition:opacity .6s var(--ease-out);pointer-events:none}
.button.secondary::before,.header-contact::before{background:radial-gradient(160px circle at var(--mx,50%) var(--my,50%),rgba(241,142,0,.22),transparent 70%)}
@media(hover:hover){
 .button:hover{transform:translateY(-2px);box-shadow:0 16px 36px -16px rgba(241,142,0,.8)}
 .button.secondary:hover,.button.dark:hover{box-shadow:0 16px 36px -18px rgba(0,0,0,.9)}
 .button:hover::before,.header-contact:hover::before{opacity:1}
 .header-contact:hover{border-color:#f18e00;color:#fff;transform:translateY(-1px)}
}
.button:active,.header-contact:active,.menu-toggle:active{transform:translateY(0) scale(.97);transition-duration:.18s;transition-timing-function:var(--ease-press)}

/* Navigation: underline grows from the left */
.site-header{transition:background-color .6s var(--ease-out),box-shadow .6s var(--ease-out),border-color .6s var(--ease-out)}
.site-header.is-scrolled{background:#111113f7;box-shadow:0 18px 40px -30px #000;border-bottom-color:#74747640}
.site-header nav a{position:relative}
.site-header nav a::after{content:'';position:absolute;left:0;right:0;bottom:8px;height:2px;border-radius:2px;background:#f18e00;transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease-out)}
@media(hover:hover){.site-header nav a:hover{color:#fff}.site-header nav a:hover::after{transform:scaleX(1)}}
.site-header nav a[aria-current=page]::after{transform:scaleX(1)}

/* Text links: the line warms up, an arrow slides in */
.text-link{position:relative;padding-right:0;transition:color .45s var(--ease-out),border-color .45s var(--ease-out),padding .55s var(--ease-out)}
.text-link::after{content:'';width:.9em;height:.9em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12h14M13 6.5l5.5 5.5-5.5 5.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12h14M13 6.5l5.5 5.5-5.5 5.5'/%3E%3C/svg%3E") center/contain no-repeat;position:absolute;right:0;top:50%;opacity:0;transform:translate(-8px,-50%);transition:opacity .45s var(--ease-out),transform .55s var(--ease-out)}
@media(hover:hover){.text-link:hover{color:#fff;border-color:#ffa727;padding-right:1.4em}.text-link:hover::after{opacity:1;transform:translate(0,-50%)}}

/* Cards lift gently; images breathe */
.product-card,.case-tile,.journal-card,.eco-grid>a,.contact-grid>a,.directory-grid article{transition:transform .7s var(--ease-out),box-shadow .7s var(--ease-out),border-color .5s var(--ease-out),background-color .5s var(--ease-out)}
.product-card-image img,.case-tile>img{transition:transform 1.2s var(--ease-out)!important}
@media(hover:hover){
 .product-card:hover,.case-tile:hover,.journal-card:hover,.eco-grid>a:hover,.contact-grid>a:hover{transform:translateY(-6px);box-shadow:0 30px 60px -38px rgba(0,0,0,.95)}
 .product-card:hover .product-card-image img,.case-tile:hover>img{transform:scale(1.045)}
}
.product-card:active,.case-tile:active,.journal-card:active,.eco-grid>a:active,.contact-grid>a:active{transform:translateY(-2px) scale(.99);transition-duration:.2s}

/* Filters and pills */
.catalog-filters button,.story-options button{transition:background-color .45s var(--ease-out),color .45s var(--ease-out),border-color .45s var(--ease-out),transform .5s var(--ease-out)}
.catalog-filters button:active,.story-options button:active{transform:scale(.96)}

/* Content fades in while scrolling (only when motion is welcome) */
@media(prefers-reduced-motion:no-preference){
 #app{animation:page-in .9s var(--ease-out) both}
 .reveal-ready [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease-out),transform 1.2s var(--ease-out);transition-delay:var(--reveal-delay,0ms)}
 .reveal-ready [data-reveal].is-visible{opacity:1;transform:none}
}
@keyframes page-in{from{opacity:0}to{opacity:1}}
@media print{[data-reveal]{opacity:1!important;transform:none!important}}
/* Home: company story timeline */
.home-story{padding-block:clamp(72px,10vw,140px) clamp(80px,11vw,150px);border-top:1px solid #74747630}
.home-story>h2{font-size:clamp(40px,5.2vw,72px);margin-bottom:clamp(44px,6vw,80px)}
.home-timeline{--timeline:1;position:relative;list-style:none;margin:0;padding:0;max-width:980px}
.home-timeline::before,.home-timeline::after{content:'';position:absolute;left:7px;top:14px;bottom:14px;width:2px;border-radius:2px}
.home-timeline::before{background:#74747640}
.home-timeline::after{background:linear-gradient(#ffd69a,#f18e00 30%,#f18e00);box-shadow:0 0 14px #f18e0080;transform-origin:top;transform:scaleY(var(--timeline));transition:transform .25s linear}
.home-timeline li{position:relative;display:grid;grid-template-columns:minmax(150px,230px) minmax(0,1fr);gap:6px 48px;align-items:baseline;padding:0 0 clamp(36px,4.5vw,56px) 52px}
.home-timeline li:last-child{padding-bottom:0}
.home-timeline li::before{content:'';position:absolute;z-index:1;left:0;top:9px;width:16px;height:16px;border-radius:50%;background:#111113;border:2px solid #f18e00;box-shadow:0 0 0 6px #f18e0012}
.timeline-year{font-size:clamp(28px,3.2vw,48px);font-weight:700;line-height:1;letter-spacing:-1.5px;color:#f18e00}
.home-timeline h3{margin:0 0 8px;font-size:clamp(24px,2.3vw,32px);letter-spacing:-.5px}
.home-timeline p{margin:0;font-size:clamp(18px,1.4vw,20px);line-height:1.55;color:var(--muted)}
.home-story-foot{display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px;margin-top:clamp(52px,6vw,80px)}
@media(prefers-reduced-motion:no-preference){
 .home-timeline li.is-visible::before{animation:timeline-dot 1.8s var(--ease-out) both}
}
@keyframes timeline-dot{0%{background:#111113;box-shadow:0 0 0 0 #f18e0000}35%{background:#f18e00;box-shadow:0 0 0 10px #f18e0030,0 0 30px #f18e00}100%{background:#f18e00;box-shadow:0 0 0 6px #f18e0018,0 0 16px #f18e0070}}
@media(max-width:700px){
 .home-timeline li{grid-template-columns:1fr;gap:10px;padding-left:44px}
 .timeline-year{font-size:32px}
 .home-story-foot{flex-direction:column;align-items:flex-start}
 .home-story-foot .button{width:100%}
}
@media print{.home-timeline::after{transform:none}}
.timeline-year.is-label{font-size:clamp(20px,2vw,28px);letter-spacing:-.5px;line-height:1.15}
/* Relighting of scenes: darkens only lit surfaces while dimming, warm pool at full power */
.relight{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.relight-dark{mix-blend-mode:multiply;opacity:calc((1 - var(--level,1)) * .9);transition:opacity .5s var(--ease-out,ease)}
.relight-glow{mix-blend-mode:soft-light;opacity:calc(var(--level,1) * .45);transition:opacity .5s var(--ease-out,ease)}
.story-art .relight{z-index:2}
/* Augmented Reality on product pages */
.product-ar{grid-column:1/-1;border-top:1px solid #74747650;padding-top:28px}
.product-ar h3{font-size:clamp(24px,2.4vw,32px);margin-bottom:10px}
.product-ar p{margin-bottom:20px}
.ar-quicklook{display:inline-block;border-radius:16px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#2b2b30,#161618);border:1px solid #74747650;transition:transform .6s var(--ease-out,ease),box-shadow .6s var(--ease-out,ease)}
.ar-quicklook img{display:block;width:min(360px,100%);height:auto;aspect-ratio:4/3;object-fit:contain;padding:18px}
.ar-quicklook:active{transform:scale(.98)}
/* Soft page transitions between pages (cross-document View Transitions) */
@view-transition{navigation:auto}
.site-header{view-transition-name:site-header}
::view-transition-old(root){animation:vt-out .32s var(--ease-press) both}
::view-transition-new(root){animation:vt-in .7s var(--ease-out) both}
::view-transition-group(site-header){animation-duration:.4s;animation-timing-function:var(--ease-out)}
@keyframes vt-out{to{opacity:0;transform:scale(.985)}}
@keyframes vt-in{from{opacity:0;transform:translateY(16px)}}
.vt-reveal #app{animation:none}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}
/* 3D view on product pages */
.product-ar.product-3d{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:center;padding-top:clamp(36px,5vw,64px)}
.product-ar.product-3d h3{font-size:clamp(32px,3.4vw,48px);margin-bottom:16px}
.viewer-copy p{margin-bottom:14px}
.viewer-stage{position:relative;aspect-ratio:4/3;border-radius:24px;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 42%,#303035,#161618 72%);border:1px solid #74747650}
.viewer-stage model-viewer{position:absolute;inset:0;width:100%;height:100%;background:transparent;--poster-color:transparent;opacity:0;transition:opacity 1.1s var(--ease-out)}
.viewer-stage.is-loaded model-viewer{opacity:1}
.viewer-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:9%;transition:opacity .9s var(--ease-out),transform 1.2s var(--ease-out),filter .9s var(--ease-out)}
.viewer-stage.is-loading .viewer-poster{filter:blur(8px) brightness(.6);transform:scale(.97)}
.viewer-stage.is-loaded .viewer-poster{opacity:0;transform:scale(.92);pointer-events:none}
/* Centred without transform, so the shared button hover lift does not move it sideways */
.viewer-start{position:absolute;left:0;right:0;margin-inline:auto;width:max-content;max-width:calc(100% - 32px);bottom:clamp(20px,4%,36px);z-index:2;white-space:nowrap}
.viewer-progress{position:absolute;left:50%;top:50%;width:min(240px,60%);height:3px;transform:translate(-50%,-50%);border-radius:3px;background:#ffffff24;overflow:hidden;z-index:2}
.viewer-progress i{display:block;height:100%;background:var(--orange);box-shadow:0 0 12px #f18e00;transform-origin:left;transform:scaleX(.04);transition:transform .35s linear}
.viewer-status{position:absolute;left:0;right:0;top:calc(50% + 18px);margin:0 auto;padding:0 24px;max-width:none;text-align:center;font-size:16px;color:#c9c9ce;z-index:2}
.viewer-start:not([hidden])~.viewer-status{top:auto;bottom:calc(clamp(20px,4%,36px) + 60px)}
.viewer-fullscreen{position:absolute;top:16px;right:16px;z-index:3;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;padding:0;border:1px solid var(--line);background:#111113b3;backdrop-filter:blur(12px);color:#fff;transition:transform .4s var(--ease-out),background .4s}
.viewer-fullscreen:hover{background:#2a2a2e;transform:scale(1.06)}
.viewer-fullscreen svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.viewer-stage:fullscreen{border:0;border-radius:0;aspect-ratio:auto;background:radial-gradient(circle at 50% 42%,#303035,#0d0d0f 75%)}
@media(max-width:800px){.product-ar.product-3d{grid-template-columns:1fr}.viewer-stage{border-radius:18px}}
/* Home: key figures */
.home-stats{padding-block:clamp(64px,9vw,130px);border-top:1px solid #74747630}
.stats-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(28px,3.5vw,48px)}
.stats-grid li{position:relative;padding-top:30px}
.stats-grid li::before,.stats-grid li::after{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:#74747650}
.stats-grid li::after{height:2px;top:-.5px;background:linear-gradient(90deg,#f18e00,#ffd69a 60%,transparent);transform-origin:left;transform:scaleX(1)}
.stat-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 10px;font-size:clamp(56px,5.6vw,96px);line-height:1;letter-spacing:-3px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.stat-value small{font-size:clamp(20px,1.9vw,28px);letter-spacing:-.5px;color:var(--orange)}
.stat-label{display:block;margin-top:18px;max-width:280px;font-size:18px;line-height:1.5;color:var(--muted)}
.home-stats>.fine{margin:clamp(32px,4vw,52px) 0 0}
@media(prefers-reduced-motion:no-preference){
 .reveal-ready .stats-grid li[data-reveal]::after{transform:scaleX(0);transition:transform 1.6s var(--ease-out) .2s}
 .reveal-ready .stats-grid li[data-reveal].is-visible::after{transform:scaleX(1)}
}
@media(max-width:1000px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 32px}}
@media(max-width:560px){.stats-grid{grid-template-columns:1fr;gap:36px}.stat-value{font-size:64px}.stat-label{max-width:none}}
/* Reference map */
.reference-map{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);grid-template-areas:"copy figure" "info figure";grid-template-rows:auto 1fr;column-gap:clamp(32px,6vw,96px);padding-block:clamp(72px,10vw,140px);border-top:1px solid #74747630}
.map-copy{grid-area:copy;align-self:end}
.map-copy h2{font-size:clamp(40px,5.2vw,72px)}
.map-copy p{margin-bottom:0}
.map-info{grid-area:info}
.map-figure{grid-area:figure;position:relative;width:100%;max-width:540px;justify-self:center;align-self:center;aspect-ratio:627/810}
.map-figure svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
#map-dots circle{fill:#8a8a90;opacity:.42}
.map-outline{fill:#ffffff06;stroke:#74747638;stroke-width:1.5;stroke-linejoin:round}
.map-detail{min-height:176px;margin-top:clamp(32px,4vw,52px);padding-top:28px;border-top:1px solid #74747650}
.map-detail .eyebrow{margin-bottom:12px}
.map-detail h3{font-size:clamp(28px,2.8vw,36px);margin-bottom:8px}
.map-detail p{margin-bottom:10px}
.map-detail.is-changing>*{animation:map-card .8s var(--ease-out) both}
.map-detail.is-changing>:nth-child(2){animation-delay:.05s}.map-detail.is-changing>:nth-child(3){animation-delay:.1s}.map-detail.is-changing>:nth-child(4){animation-delay:.15s}
@keyframes map-card{from{opacity:0;transform:translateY(12px)}}
.map-nav{display:flex;align-items:center;gap:12px;margin-top:22px}
.map-nav button{width:48px;height:48px;border-radius:50%;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#1c1c1f;color:var(--ink);transition:transform .45s var(--ease-out),background .45s,border-color .45s}
.map-nav button:hover{background:#29292d;border-color:#f18e0080}
.map-nav button:active{transform:scale(.92)}
.map-nav span{min-width:64px;text-align:center;font-size:16px;color:var(--muted);font-variant-numeric:tabular-nums}
.map-legend{list-style:none;display:flex;flex-wrap:wrap;gap:10px 26px;margin:28px 0 0;padding:0;font-size:16px;color:var(--muted)}
.map-legend li{display:flex;align-items:center;gap:10px}
.map-legend li::before{content:'';width:10px;height:10px;border-radius:50%;box-sizing:border-box}
.map-legend .is-project::before{background:var(--orange);box-shadow:0 0 10px #f18e00a0}
.map-legend .is-site::before{border:2px solid #fff;box-shadow:0 0 8px #ffffff60}
.map-pin{position:absolute;z-index:1;width:40px;height:40px;margin:-20px 0 0 -20px;padding:0;border:0;border-radius:50%;background:none;display:grid;place-items:center}
.map-pin span{position:relative;z-index:1;width:12px;height:12px;border-radius:50%;background:var(--orange);box-shadow:0 0 14px #f18e00b0;transition:transform .6s var(--ease-out),box-shadow .6s var(--ease-out)}
.map-pin.is-site span{background:#111113;border:2.5px solid #fff;box-shadow:0 0 12px #ffffff70}
.map-pin:hover span{transform:scale(1.35)}
.map-pin[aria-pressed=true]{z-index:2}
.map-pin[aria-pressed=true] span{transform:scale(1.55);box-shadow:0 0 0 7px #f18e0030,0 0 28px #f18e00}
.map-pin.is-site[aria-pressed=true] span{box-shadow:0 0 0 7px #ffffff1f,0 0 26px #ffffffb0}
.map-pin[aria-pressed=true]::before{content:'';position:absolute;width:12px;height:12px;border-radius:50%;border:2px solid var(--orange)}
.map-pin.is-site[aria-pressed=true]::before{border-color:#fff}
@media(prefers-reduced-motion:no-preference){.map-pin[aria-pressed=true]::before{animation:pin-pulse 2.4s var(--ease-out) infinite}}
@keyframes pin-pulse{from{transform:scale(1);opacity:.9}to{transform:scale(4.6);opacity:0}}
@media(max-width:900px){.reference-map{grid-template-columns:1fr;grid-template-areas:"copy" "figure" "info";grid-template-rows:auto}.map-figure{max-width:460px;margin-top:40px}.map-detail{min-height:0}}
@media(max-width:560px){.map-figure{max-width:none;width:calc(100% + 12px);margin-inline:-6px}.map-pin{width:34px;height:34px;margin:-17px 0 0 -17px}.map-pin span{width:10px;height:10px}}
/* Sensor simulation */
.sensor-sim{padding-block:clamp(56px,8vw,110px) clamp(40px,5vw,70px)}
.sensor-head{max-width:760px;margin-bottom:clamp(28px,4vw,44px)}
.sensor-head h2{font-size:clamp(40px,4.8vw,64px)}
.sensor-head p{margin-bottom:0}
.sensor-stage{position:relative;border-radius:24px;overflow:hidden;border:1px solid #74747640;background:#0b0b0d}
.sensor-stage svg{display:block;width:100%;height:auto;aspect-ratio:640/300}
.sensor-play{position:absolute;top:14px;right:14px;min-height:40px;padding:8px 16px;border-radius:22px;border:1px solid var(--line);background:#111113c0;backdrop-filter:blur(10px);color:var(--ink);font-size:14px;transition:background .4s var(--ease-out),transform .4s var(--ease-out)}
.sensor-play:hover{background:#29292d}
.sensor-play:active{transform:scale(.96)}
.sensor-controls{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:22px}
.sensor-controls>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sensor-controls span{font-size:16px;font-weight:700;color:#c9c9ce;margin-right:4px}
.sensor-controls button{min-height:44px;padding:9px 16px;border-radius:24px;border:1px solid var(--line);background:#232327;color:#e8e8eb;font-size:16px;transition:background .4s var(--ease-out),color .4s,border-color .4s,transform .3s var(--ease-out)}
.sensor-controls button[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#171719}
.sensor-controls button:active{transform:scale(.96)}
.sensor-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 0}
.sensor-stats>div{background:var(--surface);border-radius:16px;padding:16px 20px}
.sensor-stats dt{font-size:14px;color:var(--muted)}
.sensor-stats dd{margin:4px 0 0;font-size:clamp(24px,2.6vw,32px);font-weight:700;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.sensor-stats dd.is-accent{color:var(--orange)}
.sensor-sim>.fine{margin-top:14px}
@media(max-width:700px){.sensor-stats{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sensor-stats>div:last-child{grid-column:1/-1}.sensor-controls{gap:14px}.sensor-stage{border-radius:18px}}
@media(max-width:560px){.sensor-stage svg{aspect-ratio:auto;height:240px}.sensor-play{top:10px;right:10px}}
/* Product finder */
.finder-teaser-wrap{padding-bottom:clamp(24px,3vw,36px)}
.finder-teaser{position:relative;display:grid;gap:6px;padding:clamp(24px,3vw,34px) clamp(24px,3vw,40px);padding-right:90px;border-radius:24px;background:linear-gradient(120deg,#f18e0024,#1c1c1f 60%);border:1px solid #f18e0050;transition:border-color .5s var(--ease-out),transform .6s var(--ease-out)}
.finder-teaser .eyebrow{margin:0;color:var(--orange)}
.finder-teaser strong{font-size:clamp(24px,2.8vw,36px);letter-spacing:-.5px;line-height:1.15}
.finder-teaser>span:not(.eyebrow){color:var(--muted);font-size:18px}
.finder-teaser-arrow{position:absolute;right:clamp(24px,3vw,40px);top:50%;width:56px;height:56px;margin-top:-28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--orange);color:#171719!important;box-shadow:0 12px 30px -14px #f18e00;transition:transform .6s var(--ease-out),box-shadow .6s var(--ease-out)}.finder-teaser-arrow .icon{width:24px;height:24px}
.finder-teaser:hover{border-color:var(--orange);transform:translateY(-2px)}
.finder-teaser:hover .finder-teaser-arrow{transform:translateX(4px) scale(1.04);box-shadow:0 16px 34px -12px #f18e00}
.finder{padding-bottom:clamp(64px,9vw,120px)}
.finder-top{display:flex;align-items:center;gap:20px;min-height:44px;margin-bottom:clamp(20px,3vw,36px)}
.finder-back{background:none;border:0;color:var(--muted);font-size:16px;padding:10px 0;min-height:44px}
.finder-back:hover{color:var(--ink)}
.finder-progress{display:flex;gap:8px;flex:1;max-width:360px;margin-left:auto}
.finder-progress i{flex:1;height:3px;border-radius:3px;background:#74747650;transition:background .6s var(--ease-out)}
.finder-progress i.on{background:var(--orange)}
.finder-step h2{font-size:clamp(36px,4.6vw,56px);margin-bottom:clamp(24px,3vw,36px);outline:none}
.finder-anim{animation:finder-in .7s var(--ease-out) both}
@keyframes finder-in{from{opacity:0;transform:translateY(14px)}}
.finder-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.finder-option{display:grid;gap:4px;text-align:left;padding:22px 24px;min-height:96px;border-radius:20px;border:1px solid var(--line);background:var(--surface);color:var(--ink);transition:border-color .5s var(--ease-out),transform .5s var(--ease-out),background .5s}
.finder-option strong{font-size:20px}
.finder-option span{font-size:16px;font-weight:400;color:var(--muted)}
.finder-option:hover{border-color:var(--orange);transform:translateY(-3px);background:#222226}
.finder-option:active{transform:scale(.98)}
.finder-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}
.finder-result{position:relative;border-radius:4px}
.finder-result.is-best .product-card{outline:2px solid var(--orange);outline-offset:-2px}
.finder-badge{position:absolute;z-index:2;top:16px;left:16px;padding:5px 14px;border-radius:20px;background:var(--orange);color:#171719;font-size:14px;font-weight:700}
.finder-case{display:grid;gap:2px;margin-top:20px;padding:20px 24px;border-radius:20px;background:#f18e0016;border:1px solid #f18e0035;transition:border-color .5s var(--ease-out)}
.finder-case:hover{border-color:var(--orange)}
.finder-case .eyebrow{margin:0 0 4px}
.finder-case strong{font-size:20px}
.finder-case span:last-child{color:var(--muted)}
.finder-form{margin-top:clamp(28px,4vw,44px);padding:clamp(24px,4vw,44px);border-radius:28px;background:var(--orange);color:#171719}
.finder-form h3{font-size:clamp(28px,3.2vw,40px);color:#171719;margin-bottom:8px}
.finder-form p{color:#3a2c18}
.finder-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin-top:22px}
.finder-fields label{display:grid;gap:6px;font-size:16px;font-weight:700;color:#171719}
.finder-fields small{font-weight:400;color:#4a3a22}
.finder-fields input,.finder-fields textarea{width:100%;min-height:50px;padding:12px 14px;border-radius:12px;border:1px solid #1717192e;background:#fff8ec;color:#171719;font:inherit;font-size:16px;font-weight:400}
.finder-fields input:focus,.finder-fields textarea:focus{outline:3px solid #171719;outline-offset:1px}
.finder-wide{grid-column:1/-1}
.finder-trap{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.finder-error{margin:16px 0 0;padding:10px 14px;border-radius:10px;background:#fff8ec;color:#8a1c00!important;font-weight:700;font-size:16px}
.finder-submit{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:20px}
.finder-submit span{font-size:16px}
.finder-submit a{font-weight:700;border-bottom:1px solid #171719}
.finder-form .button.dark:focus-visible,.finder-submit a:focus-visible{outline-color:#171719}
.finder-privacy{margin:16px 0 0;font-size:14px}
.finder-privacy a{border-bottom:1px solid #171719}
.finder-thanks{outline:none}
.finder-restart{margin-top:24px;background:none;border:0;border-bottom:1px solid var(--orange);color:var(--ink)}
@media(max-width:640px){.finder-fields{grid-template-columns:1fr}.finder-submit .button{width:100%}.finder-teaser{padding-right:24px;padding-bottom:84px}.finder-teaser-arrow{top:auto;bottom:22px;margin:0;right:24px}}
/* "Lights on" moment on the home page */
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* Datasheet downloads */
.product-documents{padding-top:clamp(32px,4vw,52px)}
.product-documents .eyebrow{margin-bottom:10px}
.product-documents h3{font-size:clamp(28px,3vw,40px);margin-bottom:clamp(20px,2.5vw,30px)}
.download-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:14px}
.product-documents .download-card,.document-library .download-card,.download-card{position:relative;display:flex;align-items:center;gap:18px;margin:0;padding:18px 18px 18px 20px;border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);overflow:hidden;isolation:isolate;transition:border-color .5s var(--ease-out),transform .5s var(--ease-out),background .5s var(--ease-out)}
.download-card::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 88% 50%,#f18e0026,transparent 55%);opacity:0;transition:opacity .6s var(--ease-out)}
.download-card:hover{border-color:#f18e0090;transform:translateY(-3px);background:#202024}
.download-card:hover::before{opacity:1}
.download-card:active{transform:scale(.985)}
.download-file{position:relative;flex:none;width:44px;height:52px}
.download-file svg{width:100%;height:100%;fill:#2a2a2e;stroke:#74747690;stroke-width:1.5;stroke-linejoin:round}
.download-file b{position:absolute;left:-4px;bottom:9px;padding:2px 6px;border-radius:5px;background:var(--orange);color:#171719;font-size:12px;letter-spacing:.5px;line-height:1.3}
.download-text{display:grid;gap:2px;min-width:0;flex:1}
.download-text strong{font-size:18px;line-height:1.35;overflow-wrap:anywhere}
.download-text small{font-size:14px;color:var(--muted)}
.download-action{position:relative;flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#171719;overflow:hidden;transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
.download-action svg{position:absolute;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .5s var(--ease-out),opacity .4s}
.download-check{opacity:0;transform:scale(.4)}
.download-card:hover .download-action{box-shadow:0 10px 26px -10px #f18e00;transform:scale(1.06)}
.download-card:hover .download-arrow{animation:download-nudge 1.1s var(--ease-out) infinite}
.download-card.is-downloading .download-arrow{animation:download-drop .6s var(--ease-press) forwards}
.download-card.is-downloading .download-check{opacity:1;transform:none;transition-delay:.45s}
.download-card.is-downloading{border-color:var(--orange)}
.download-status{position:absolute;right:78px;bottom:6px;font-size:12px;font-weight:700;color:var(--orange);opacity:0;transition:opacity .4s}
.download-card.is-downloading .download-status{opacity:1}
@keyframes download-nudge{0%,100%{transform:translateY(0)}45%{transform:translateY(3px)}}
@keyframes download-drop{60%{transform:translateY(14px);opacity:1}61%{opacity:0}100%{transform:translateY(14px);opacity:0}}
[data-datasheet-list] details .download-grid{padding:6px 0 18px}
@media(prefers-reduced-motion:reduce){.download-card:hover .download-arrow,.download-card.is-downloading .download-arrow{animation:none}.download-card.is-downloading .download-arrow{opacity:0}}
@media(max-width:560px){.download-card{padding:14px 14px 14px 16px;gap:14px}.download-text strong{font-size:16px}}
/* Longevity: quote and lifetime calculator */
.longevity{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,90px);align-items:center;padding-block:clamp(72px,10vw,140px);border-top:1px solid #74747630}
.longevity-copy h2{font-size:clamp(40px,5.2vw,72px)}
.longevity-copy>p{margin-bottom:0}
.longevity-quote{margin:clamp(28px,4vw,44px) 0 0;padding:4px 0 4px 24px;border-left:3px solid var(--orange)}
.longevity-quote blockquote{margin:0 0 12px;font-size:clamp(24px,2.2vw,28px);line-height:1.4;font-weight:700;letter-spacing:-.3px;color:var(--ink)}
.longevity-quote figcaption{font-size:16px;color:var(--muted)}
.longevity-calc{padding:clamp(24px,3.5vw,40px);border-radius:28px;background:var(--surface);border:1px solid #74747640}
.longevity-calc>.eyebrow{margin-bottom:22px}
.longevity-inputs{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}
.longevity-inputs label{display:grid;gap:10px}
.longevity-inputs label>span{display:flex;justify-content:space-between;gap:12px;font-size:16px;font-weight:700;color:#d6d6da}
.longevity-inputs output{color:var(--orange);font-variant-numeric:tabular-nums}
.longevity-inputs input{width:100%;margin:0;height:28px;accent-color:var(--orange)}
.longevity-result{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:clamp(24px,3vw,34px) 0 0;max-width:none}
.longevity-result strong{font-size:clamp(64px,7vw,96px);line-height:1;letter-spacing:-3px;color:var(--ink);font-variant-numeric:tabular-nums}
.longevity-result span{font-size:18px;color:var(--orange);font-weight:700}
.longevity-track{position:relative;height:10px;margin:48px 0 14px;border-radius:10px;background:#2a2a2e}
.longevity-track i{position:absolute;inset:0;border-radius:10px;background:linear-gradient(90deg,#ffd69a,#f18e00);box-shadow:0 0 18px #f18e0060;transform-origin:left;transform:scaleX(0);transition:transform .7s var(--ease-out)}
.longevity-track b{position:absolute;bottom:18px;transform:translateX(-50%);font-size:14px;color:var(--ink);white-space:nowrap}
.longevity-track b::after{content:'';position:absolute;left:50%;top:22px;width:2px;height:22px;background:var(--ink);transform:translateX(-50%)}
.longevity-ticks{display:flex;justify-content:space-between;font-size:14px;color:var(--muted)}
.longevity-calc>.fine{margin:22px 0 0}
@media(max-width:900px){.longevity{grid-template-columns:1fr}}
@media(max-width:560px){.longevity-inputs{grid-template-columns:1fr}.longevity-calc{border-radius:22px}}
/* Ratgeber */
.guide-overview{padding-bottom:clamp(56px,8vw,100px)}
.guide-group+.guide-group{margin-top:clamp(40px,6vw,72px)}
.guide-group>h2{font-size:clamp(28px,2.6vw,36px);margin-bottom:20px}
.guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:18px}
.guide-card{display:flex;flex-direction:column;gap:6px;padding:clamp(22px,2.6vw,30px);border-radius:24px;background:var(--surface);border:1px solid #74747640;transition:border-color .5s var(--ease-out),transform .5s var(--ease-out)}
.guide-card:hover{border-color:#f18e0090;transform:translateY(-3px)}
.guide-card .eyebrow{margin-bottom:6px}
.guide-card h3{font-size:clamp(24px,2.1vw,28px);margin-bottom:6px}
.guide-card p{font-size:16px;margin-bottom:10px;flex:1}
.guide-card .text-link{align-self:flex-start}
.guide-related{padding-block:clamp(56px,7vw,96px);border-top:1px solid #74747630}
.guide-related h2{font-size:clamp(36px,4vw,48px)}
.guide-hero{padding-block:clamp(36px,5vw,64px) clamp(28px,4vw,48px)}.guide-hero>*{max-width:1040px}
.guide-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--muted);margin-bottom:clamp(20px,3vw,32px)}
.guide-crumbs a{border-bottom:1px solid var(--line)}
.guide-hero h1{font-size:clamp(40px,5.6vw,72px)}
.guide-lead{font-size:clamp(20px,1.8vw,24px);line-height:1.6;color:#d6d6da;max-width:820px}
.guide-meta{font-size:14px;color:var(--muted);margin-top:18px}
.guide-facts{margin-top:clamp(24px,3vw,36px);padding:clamp(20px,2.6vw,30px);border-radius:24px;background:linear-gradient(120deg,#f18e001c,#1c1c1f 65%);border:1px solid #f18e0040;max-width:900px}
.guide-facts>strong{display:block;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.guide-facts ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:10px 28px}
.guide-facts li{position:relative;padding-left:26px;font-size:18px;line-height:1.5}
.guide-facts li::before{content:'';position:absolute;left:0;top:.25em;width:18px;height:18px;background:var(--orange);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat}
.guide-layout{display:grid;grid-template-columns:260px minmax(0,760px);gap:clamp(32px,5vw,80px);align-items:start;padding-bottom:clamp(40px,6vw,80px)}
.guide-toc{position:sticky;top:calc(var(--header) + 24px)}
.guide-toc summary{font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:700;list-style:none;padding:8px 0}
.guide-toc summary::-webkit-details-marker{display:none}
.guide-toc ol{list-style:none;margin:8px 0 0;padding:0;border-left:1px solid #74747650}
.guide-toc a{display:block;padding:7px 0 7px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:16px;line-height:1.4;color:var(--muted);transition:color .3s,border-color .3s}
.guide-toc a:hover{color:var(--ink)}
.guide-toc a[aria-current]{color:var(--ink);border-left-color:var(--orange)}
.guide-body>section{scroll-margin-top:calc(var(--header) + 24px);padding-top:clamp(20px,3vw,32px)}
.guide-body h2{font-size:clamp(28px,3.2vw,40px);margin-bottom:18px}
.guide-body p,.guide-body li{font-size:clamp(18px,1.4vw,20px);line-height:1.75;color:#d0d0d5;max-width:none}
.guide-body ul,.guide-body ol{padding-left:22px;margin:0 0 22px}
.guide-body li{margin-bottom:8px}
.guide-body li::marker{color:var(--orange)}
.guide-body strong{color:var(--ink)}
.inline-link{color:var(--ink);border-bottom:1px solid var(--orange);transition:color .3s}
.inline-link:hover{color:var(--orange)}
.guide-table{overflow-x:auto;margin:6px 0 26px;border-radius:18px;border:1px solid #74747650}
.guide-table table{width:100%;border-collapse:collapse;min-width:520px;font-size:16px}
.guide-table th,.guide-table td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #74747630;line-height:1.5}
.guide-table thead th{background:#1f1f22;font-size:14px;letter-spacing:.5px;color:var(--muted)}
.guide-table tbody th{font-weight:700;color:var(--ink)}
.guide-table td{color:#d0d0d5}
.guide-table tr:last-child th,.guide-table tr:last-child td{border-bottom:0}
.guide-tip{margin:6px 0 26px;padding:18px 22px;border-left:3px solid var(--orange);background:#f18e0012;border-radius:0 16px 16px 0}
.guide-tip strong{display:block;font-size:14px;letter-spacing:1.5px;text-transform:uppercase;color:var(--orange);margin-bottom:6px}
.guide-tip p{margin:0}
.guide-example{margin:6px 0 26px;padding:20px 24px;border-radius:18px;background:var(--surface);border:1px solid #74747640}
.guide-example strong{display:block;margin-bottom:8px}
.guide-example p{margin:0 0 6px;font-variant-numeric:tabular-nums}
.guide-cta{display:grid;gap:4px;margin:10px 0 30px;padding:clamp(20px,2.6vw,28px);border-radius:22px;background:var(--orange);color:#171719;transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
.guide-cta:hover{transform:translateY(-3px);box-shadow:0 22px 40px -24px #f18e00}
.guide-cta .eyebrow{color:#4a3a22;margin:0}
.guide-cta strong{font-size:clamp(24px,2.2vw,28px);line-height:1.2;color:#171719}
.guide-cta>span:not(.eyebrow):not(.guide-cta-button){color:#3a2c18;font-size:16px}
.guide-cta-button{justify-self:start;margin-top:10px;padding:10px 18px;border-radius:24px;background:#171719;color:#fff;font-size:16px;font-weight:700}
.guide-body .longevity-calc{margin:6px 0 26px}
.guide-faq details{border-top:1px solid #74747650;padding:4px 0}
.guide-faq details:last-child{border-bottom:1px solid #74747650}
.guide-faq summary{list-style:none;cursor:pointer;padding:16px 36px 16px 0;position:relative;font-size:clamp(18px,1.6vw,20px);font-weight:700;line-height:1.4}
.guide-faq summary::-webkit-details-marker{display:none}
.guide-faq summary::after{content:'';position:absolute;right:2px;top:50%;width:22px;height:22px;margin-top:-11px;background:var(--orange);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .45s var(--ease-out)}
.guide-faq details[open] summary::after{transform:rotate(45deg)}
.guide-faq details p{margin:0 0 18px}
.guide-products,.guide-cases{padding-block:clamp(48px,6vw,80px);border-top:1px solid #74747630}
.guide-products h2,.guide-cases h2{font-size:clamp(36px,4vw,48px)}
.guide-case-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.guide-case-grid .finder-case{margin:0}
@media(max-width:999px){.guide-layout{grid-template-columns:minmax(0,1fr)}.guide-toc{position:static;padding:4px 18px;border-radius:18px;background:var(--surface)}.guide-toc summary{padding:12px 0;display:flex;justify-content:space-between}.guide-toc summary::after{content:'';width:20px;height:20px;align-self:center;background:var(--orange);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .45s var(--ease-out)}.guide-toc details[open] summary::after{transform:rotate(45deg)}.guide-toc ol{margin-bottom:12px}}
.guide-body .longevity-calc .fine,.guide-body .longevity-calc p.fine{font-size:14px;line-height:1.6;color:var(--muted)}.guide-body .longevity-result span{font-size:18px}
.guide-hero h1,.guide-body h2,.guide-card h3,.guide-related h2,.guide-faq summary{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}@media(max-width:420px){.guide-hero h1{font-size:36px;letter-spacing:-1px}.guide-body h2{font-size:28px}}
/* Footer: all guides as internal links */
.footer-guides{width:100%;padding:28px 0 6px;border-top:1px solid #74747630}
.footer-guides h2{font-size:18px;font-weight:700;margin:0 0 14px;letter-spacing:0}
.footer-guides h2 a{color:#fff}.footer-guides h2 a:hover{color:var(--orange)}
.footer-guides ul{list-style:none;margin:0;padding:0;columns:4 220px;column-gap:28px}
.footer-guides li{break-inside:avoid;margin:0 0 8px}
.footer-guides li a{font-size:14px;line-height:1.45;color:var(--muted);transition:color .3s}
.footer-guides li a:hover{color:var(--orange)}
@media(max-width:560px){.footer-guides ul{columns:2;column-gap:18px}.footer-guides li a{font-size:14px}}

/* Shared line icons */
.icon{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;display:block}
.icon-sm{width:18px;height:18px}
.finder-back{display:inline-flex;align-items:center;gap:6px}
.guide-cta-button{display:inline-flex;align-items:center;gap:10px}
.guide-cta-button .icon{width:18px;height:18px;transition:transform .5s var(--ease-out)}
.guide-cta:hover .guide-cta-button .icon{transform:translateX(4px)}
.map-nav .icon{width:20px;height:20px}
/* Page changes: one calm movement */
::view-transition-old(root){animation:vt-out .3s var(--ease-press) both}
::view-transition-new(root){animation:vt-in .55s var(--ease-out) both}
@keyframes vt-out{to{opacity:0}}
@keyframes vt-in{from{opacity:0;transform:translateY(8px)}}
/* Easter egg */
.easter-egg{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:#0a0a0bee;cursor:pointer;animation:easter-in .5s var(--ease-out) both}
.easter-lamp{position:absolute;top:14vh;left:50%;width:min(30vw,220px);height:6px;border-radius:4px;transform:translateX(-50%);background:#3a3a3e;animation:easter-lamp .3s steps(2) .35s forwards}
.easter-cone{position:absolute;top:calc(14vh + 6px);left:50%;bottom:0;width:min(90vw,760px);transform:translateX(-50%);background:linear-gradient(180deg,rgba(255,236,205,.42),rgba(255,236,205,0) 80%);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);opacity:0;animation:easter-fade 1.2s var(--ease-out) .5s forwards}
.easter-text{position:relative;margin:0;max-width:none;text-align:center;font-size:clamp(48px,9vw,120px);line-height:1.02;font-weight:700;letter-spacing:-3px;color:#f5f5f6;opacity:0;transform:translateY(18px);animation:easter-up 1.1s var(--ease-out) .85s forwards}
.easter-text em{color:var(--orange)}
.easter-egg.is-leaving{animation:easter-out .55s var(--ease-out) forwards}
.easter-egg.is-still *{animation-duration:.01s!important;animation-delay:0s!important}
@keyframes easter-in{from{opacity:0}}
@keyframes easter-out{to{opacity:0}}
@keyframes easter-lamp{50%{background:#fff3dc}100%{background:#fff3dc;box-shadow:0 0 30px 6px rgba(255,236,205,.8)}}
@keyframes easter-fade{to{opacity:1}}
@keyframes easter-up{to{opacity:1;transform:none}}
/* Serie 19 explorer */
.s19{padding-block:clamp(64px,9vw,120px);border-top:1px solid #74747630}
.s19-head{max-width:820px;margin-bottom:clamp(24px,3vw,36px)}
.s19-head h2{font-size:clamp(40px,4.8vw,64px)}
.s19-head p{margin-bottom:0}
.s19-tabs{display:inline-flex;gap:4px;padding:5px;border-radius:32px;background:#1c1c1f;border:1px solid #74747640;margin-bottom:clamp(24px,3vw,36px);max-width:100%;overflow-x:auto;scrollbar-width:none}
.s19-tabs::-webkit-scrollbar{display:none}
.s19-tabs button{flex:none;min-height:46px;padding:10px 20px;border:0;border-radius:26px;background:transparent;color:#c9c9ce;font-size:16px;transition:background .45s var(--ease-out),color .45s}
.s19-tabs button:hover{color:#fff}
.s19-tabs button[aria-selected=true]{background:var(--orange);color:#171719}
.s19-panel{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4vw,64px);align-items:start}
.s19-panel.is-entering{animation:s19-in .6s var(--ease-out) both}
@keyframes s19-in{from{opacity:0;transform:translateY(10px)}}
.s19-stage{position:relative;aspect-ratio:4/3;border-radius:28px;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 38%,#fff 0,#f1f1f3 55%,#e3e3e7 100%)}
.s19-main{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:7%;transition:opacity .45s var(--ease-out),transform .6s var(--ease-out)}
.s19-main.is-swapping{opacity:0;transform:scale(.97)}
.s19-night{position:absolute;inset:0;z-index:2;pointer-events:none;background:rgba(7,7,9,.84);opacity:0;transition:opacity .9s var(--ease-out)}
.s19-glow{position:absolute;inset:0;mix-blend-mode:screen;opacity:0;transition:opacity 1.2s var(--ease-out) .35s}
[data-glow=sign] .s19-glow{background:radial-gradient(ellipse 36% 26% at 50% 62%,rgba(60,220,110,.85),rgba(60,220,110,.25) 55%,transparent 75%)}
[data-glow=down] .s19-glow{background:radial-gradient(ellipse 30% 24% at 50% 48%,rgba(255,250,236,.95),rgba(255,244,220,.28) 55%,transparent 78%),radial-gradient(ellipse 60% 40% at 50% 100%,rgba(255,244,220,.22),transparent 70%)}
.s19-stage.is-emergency .s19-night,.s19-stage.is-emergency .s19-glow{opacity:1}
.s19-status{position:absolute;left:16px;right:16px;bottom:16px;z-index:3;display:flex;align-items:center;gap:10px;width:fit-content;max-width:calc(100% - 32px);padding:9px 16px;border-radius:24px;background:#111113d9;backdrop-filter:blur(10px);color:#f5f5f6;font-size:14px;font-variant-numeric:tabular-nums}
.s19-led{flex:none;width:10px;height:10px;border-radius:50%;background:#35d07f;box-shadow:0 0 10px #35d07f}
@media(prefers-reduced-motion:no-preference){.s19-led{animation:s19-led 1.4s ease-in-out infinite}}
@keyframes s19-led{50%{opacity:.35}}
.s19-thumbs{display:flex;gap:10px;margin-top:14px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:thin}
.s19-thumb{flex:none;width:92px;height:70px;padding:6px;border-radius:14px;border:2px solid transparent;background:#f1f1f3;transition:border-color .4s var(--ease-out),transform .4s var(--ease-out)}
.s19-thumb img{width:100%;height:100%;object-fit:contain}
.s19-thumb:hover{transform:translateY(-2px)}
.s19-thumb[aria-pressed=true]{border-color:var(--orange)}
.s19-info .eyebrow{margin-bottom:12px}
.s19-info h3{font-size:clamp(32px,3.2vw,48px);margin-bottom:14px}
.s19-info>p{margin-bottom:22px}
.s19-options{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px}
.s19-options span{font-size:16px;font-weight:700;color:#c9c9ce;margin-right:4px}
.s19-options button{min-height:42px;padding:8px 16px;border-radius:22px;border:1px solid var(--line);background:#232327;color:#e8e8eb;font-size:16px;transition:background .4s var(--ease-out),color .4s,border-color .4s}
.s19-options button[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#171719}
.s19-lvk figure{margin:0 0 22px}
.s19-lvk-img{border-radius:18px;background:#fff;padding:10px;max-width:360px}
.s19-lvk-img img{width:100%;height:auto;max-height:260px;object-fit:contain}
.s19-lvk figcaption{margin-top:8px;font-size:14px;color:var(--muted)}
.s19-specs{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:0 0 18px}
.s19-specs div{padding:12px 0;border-bottom:1px solid #74747640}
.s19-specs dt{font-size:14px;color:var(--muted)}
.s19-specs dd{margin:2px 0 0;font-size:18px;font-weight:700}
.s19-info>.fine{margin:0 0 18px}
.s19-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-bottom:18px}
.s19-sheets{margin-top:6px}
.s19-features{list-style:none;margin:clamp(40px,5vw,64px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.s19-features li{display:grid;gap:4px;padding:22px;border-radius:22px;background:var(--surface);border:1px solid #74747640}
.s19-icon{width:28px;height:28px;color:var(--orange);margin-bottom:8px}
.s19-features strong{font-size:18px;line-height:1.3}
.s19-features span{font-size:16px;line-height:1.5;color:var(--muted)}
@media(max-width:1000px){.s19-panel{grid-template-columns:minmax(0,1fr)}.s19-features{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.s19-stage{border-radius:20px;aspect-ratio:1/1}.s19-tabs{display:flex}.s19-tabs button{padding:10px 14px;font-size:16px}.s19-specs dd{font-size:16px}.s19-features{grid-template-columns:1fr}.s19-status{font-size:14px}}
.s19-media,.s19-info{min-width:0}
.s19-info h3,.s19-head h2{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}@media(max-width:420px){.s19-info h3{font-size:28px}.s19-head h2{font-size:36px}}.s19-main,.s19-thumb img,.s19-lvk-img img{mix-blend-mode:multiply}
@media(max-width:560px){.s19-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;border-radius:22px;overflow:visible}.s19-tabs button{min-height:52px;padding:8px 6px;font-size:14px;line-height:1.25;white-space:normal;hyphens:manual;border-radius:17px}}
/* Floodlight planner */
.flood-sports{margin:0 0 18px}
.flood-stage svg{aspect-ratio:8/5}
.flood-stage [data-flood-dark],.flood-stage [data-pool],.flood-stage [data-line],.flood-halo,.flood-led{transition:opacity .6s var(--ease-out)}
.flood-label{position:absolute;left:18px;bottom:16px;padding:8px 14px;border-radius:22px;background:#111113c9;backdrop-filter:blur(10px);font-size:14px;font-weight:700;color:#f5f5f6}
.flood-shows{margin-top:10px}
.flood-shows button[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#171719}
.flood-sim>.fine{max-width:760px}
@media(max-width:560px){.flood-stage svg{aspect-ratio:auto;height:auto}.flood-label{left:10px;bottom:10px;font-size:12px}}
.flood-sim.is-show [data-flood-dark],.flood-sim.is-show [data-pool],.flood-sim.is-show [data-line],.flood-sim.is-show .flood-halo,.flood-sim.is-show .flood-led{transition:none}
.sensor-stats dt,.sensor-stats dd{overflow-wrap:anywhere;hyphens:auto}.flood-sim .sensor-stats dd{font-size:clamp(20px,2.4vw,32px)}
/* Pages created in the CMS: design blocks */
.cms-page .cms-block:not(.cta){padding-block:clamp(28px,4vw,52px)}
.cms-page .cms-block>h2,.cms-prose h2{font-size:clamp(28px,3.4vw,48px);margin-bottom:clamp(16px,2vw,24px);hyphens:auto;overflow-wrap:break-word}
.cms-hero{display:grid;gap:clamp(24px,4vw,48px)}
.cms-hero h1{font-size:clamp(40px,5.6vw,72px);hyphens:auto;overflow-wrap:break-word}
.cms-hero-image{margin:0;border-radius:28px;overflow:hidden;background:var(--surface)}
.cms-hero-image img{width:100%;height:auto;max-height:620px;object-fit:cover}
.cms-prose{max-width:780px}
.cms-prose p,.cms-prose li{font-size:clamp(18px,1.4vw,20px);line-height:1.75;color:#d0d0d5;max-width:none}
.cms-prose ul,.cms-prose ol{padding-left:22px;margin:0 0 22px}
.cms-prose li{margin-bottom:8px}.cms-prose li::marker{color:var(--orange)}
.cms-prose strong{color:var(--ink)}
.cms-figure{margin:0;border-radius:24px;overflow:hidden;background:var(--surface)}
.cms-figure img{width:100%;height:auto}
.cms-figure figcaption{padding:12px 18px;font-size:14px;color:var(--muted)}
.cms-b-image:not(.is-wide) .cms-figure{max-width:980px}
.cms-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center}
.cms-split.is-right .cms-figure{order:2}
.cms-stats{margin-top:8px}
.cms-chart{margin:0}
.cms-hbars{display:grid;gap:14px;max-width:980px}
.cms-hbar{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr) auto;gap:16px;align-items:center}
.cms-hbar-label{font-size:16px;color:#d6d6da}
.cms-hbar-track{position:relative;height:14px;border-radius:14px;background:#26262a;overflow:hidden}
.cms-hbar-track i{position:absolute;inset:0 auto 0 0;width:var(--v);border-radius:14px;background:linear-gradient(90deg,#5d5d63,#95959b)}
.cms-hbar.is-highlight .cms-hbar-track i,.cms-compare .cms-hbar.is-highlight i{background:linear-gradient(90deg,#f18e00,#ffc36b);box-shadow:0 0 18px #f18e0066}
.cms-hbar b{font-size:18px;font-variant-numeric:tabular-nums;white-space:nowrap}
.cms-cols{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:clamp(8px,2vw,22px);align-items:end;height:clamp(260px,34vw,380px);max-width:980px}
.cms-col{display:grid;grid-template-rows:auto 1fr auto;gap:8px;height:100%;text-align:center}
.cms-col b{font-size:clamp(14px,1.6vw,18px);font-variant-numeric:tabular-nums}
.cms-col b small{font-size:.75em;color:var(--muted);font-weight:400}
.cms-col-track{position:relative;width:min(100%,96px);justify-self:center;border-radius:12px 12px 4px 4px;background:#1f1f22;overflow:hidden}
.cms-col-track i{position:absolute;left:0;right:0;bottom:0;height:var(--v);border-radius:12px 12px 4px 4px;background:linear-gradient(0deg,#4d4d52,#85858b)}
.cms-col.is-highlight .cms-col-track i{background:linear-gradient(0deg,#f18e00,#ffc36b)}
.cms-col-label{font-size:clamp(12px,1.3vw,16px);color:var(--muted);overflow-wrap:anywhere;hyphens:auto}
.cms-line{max-width:980px}
.cms-line svg{width:100%;height:auto;overflow:visible}
.cms-grid line{stroke:#74747640;stroke-width:1}
.cms-grid text,.cms-axis text{fill:#9d9da3;font-size:14px;font-family:Arial,sans-serif}
.cms-line-area{fill:url(#none);fill:#f18e0014}
.cms-line-path{fill:none;stroke:var(--orange);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px #f18e0080);stroke-dasharray:1;stroke-dashoffset:0}
.cms-line-dots circle{fill:#111113;stroke:var(--orange);stroke-width:2.5}
.cms-line figcaption{margin-top:6px;font-size:14px;color:var(--muted)}
.cms-rings{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:clamp(12px,2vw,20px)}
.cms-rings li{display:grid;justify-items:center;align-content:start;text-align:center;gap:12px;padding:clamp(18px,2.4vw,28px);border-radius:24px;background:var(--surface)}
.cms-ring-dial{position:relative;width:min(160px,100%)}
.cms-rings svg{display:block;width:100%;height:auto;transform:rotate(-90deg)}
.cms-ring-bg{fill:none;stroke:#2a2a2e;stroke-width:10}
.cms-ring-fg{fill:none;stroke:var(--orange);stroke-width:10;stroke-linecap:round;stroke-dasharray:var(--v) 100;filter:drop-shadow(0 0 6px #f18e0066)}
.cms-rings strong{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:clamp(28px,3vw,40px);letter-spacing:-1px;font-variant-numeric:tabular-nums}
.cms-rings strong small{font-size:.5em;color:var(--orange)}
.cms-rings li>span{font-size:clamp(14px,1.3vw,16px);line-height:1.45;color:var(--muted);hyphens:auto;overflow-wrap:break-word}
.cms-compare{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:center;max-width:1100px}
.cms-compare-bars{display:grid;gap:16px}
.cms-compare .cms-hbar-track{height:22px}
.cms-compare .cms-hbar-track i.is-before{background:linear-gradient(90deg,#5a5a60,#8a8a90)}
.cms-compare-result{margin:0;display:grid;justify-items:start}
.cms-compare-result strong{font-size:clamp(56px,7vw,96px);line-height:1;letter-spacing:-3px;color:var(--orange);font-variant-numeric:tabular-nums}
.cms-compare-result small{font-size:.45em}
.cms-compare-result>span{font-size:18px;font-weight:700}
.cms-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px;counter-reset:step}
.cms-steps li{position:relative;display:grid;gap:6px;padding:26px 22px 22px;border-radius:22px;background:var(--surface);border:1px solid #74747640;counter-increment:step}
.cms-steps li::before{content:counter(step,decimal-leading-zero);font-size:14px;font-weight:700;letter-spacing:2px;color:var(--orange)}
.cms-steps strong{font-size:20px;line-height:1.3}
.cms-steps span{font-size:16px;line-height:1.55;color:var(--muted)}
.cms-checklist{max-width:980px}
.cms-quote{max-width:900px}
.cms-cta-text{color:#3a2c18;max-width:640px;margin-bottom:26px}
.cms-divider{height:1px;padding:0!important;margin-block:clamp(16px,3vw,32px);background:#74747640}
@media(prefers-reduced-motion:no-preference){
 .cms-hbar-track i,.cms-col-track i{animation:cms-grow 1.3s var(--ease-out) both}
 .cms-col-track i{animation-name:cms-rise}
 .cms-ring-fg{animation:cms-ring 1.6s var(--ease-out) both}
 .cms-line-path{animation:cms-draw 1.8s var(--ease-out) both}
 .reveal-ready [data-reveal]:not(.is-visible) :is(.cms-hbar-track i,.cms-col-track i,.cms-ring-fg,.cms-line-path){animation-play-state:paused}
}
@keyframes cms-grow{from{width:0}}
@keyframes cms-rise{from{height:0}}
@keyframes cms-ring{from{stroke-dasharray:0 100}}
@keyframes cms-draw{from{stroke-dashoffset:1}}
@media(max-width:800px){.cms-split{grid-template-columns:1fr}.cms-split.is-right .cms-figure{order:0}.cms-compare{grid-template-columns:1fr}}
@media(max-width:560px){.cms-hbar{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.cms-hbar-label{grid-column:1/-1;font-size:16px}.cms-hbar-track{grid-column:1}.cms-cols{height:260px}.cms-hero-image{border-radius:20px}}
/* Live preview in the CMS */
.cms-slot{display:contents}
.cms-preview .cms-slot>*{cursor:pointer}
.cms-preview-focus{outline:2px solid #f18e00b3;outline-offset:6px;border-radius:14px;transition:outline-color .3s}
.cms-preview-note{display:grid;gap:4px;margin-block:12px;padding:18px 22px!important;border:1px dashed #f18e0080;border-radius:16px;background:#f18e000d}
.cms-preview-note strong{font-size:16px;color:var(--orange)}.cms-preview-note span{font-size:16px;color:var(--muted)}
@media(max-width:700px){.cms-grid text,.cms-axis text{font-size:20px}.cms-line-path{stroke-width:4}.cms-line-dots circle{r:6}.cms-axis:has(text:nth-child(6)) text:nth-child(even){display:none}}
/* Language switch and the hint for visitors with a non-German browser */
/* Kopfzeile als Raster. Vorher lag sie auf space-between: fehlte rechts der Sprachschalter oder
   die Schaltfläche, rutschte die Menüleiste mit – auf jeder Seite stand sie woanders. Die beiden
   Aussenspalten sind jetzt gleich breit, die Menüleiste sitzt dadurch immer in der Seitenmitte,
   und der Sprachschalter steht ganz rechts neben der Schaltfläche.
   Nur in der breiten Darstellung: schmaler klappt die Leiste hinter den Menü-Knopf, und dort
   würde justify-self das ausgeklappte Menü auf Textbreite zusammenziehen. */
@media(min-width:1201px){
 .site-header{display:grid;grid-template-columns:1fr auto 1fr}
 .site-header>.brand{grid-column:1;justify-self:start}
 .site-header>nav{grid-column:2;justify-self:center}
 .site-header>.header-side{grid-column:3;justify-self:end}
}
.site-header>.header-side{display:flex;align-items:center;gap:16px}
@media(max-width:1200px){.site-header>.header-side{gap:12px}}
/* Der LED-Einsparrechner bringt eine eigene Regel .brand{width:150px} mit – gleicher
   Klassenname, andere Herkunft. Ohne diese beiden Zeilen ist das Logo dort kleiner als sonst. */
.site-header>.brand{width:auto}
.site-header>.brand img{width:185px}
@media(max-width:600px){.site-header>.brand img{width:164px}}
/* Schmalere Fenster: Menüschrift und Schaltfläche etwas kompakter, damit Logo, Menü und
   Schaltfläche nebeneinander Platz haben und das Menü mittig bleibt. Gilt nur für die
   waagerechte Leiste, nicht für das ausgeklappte Menü. */
@media(min-width:1201px) and (max-width:1600px){
 .site-header>nav a,.site-header>nav .nav-drop summary{font-size:14px}
 .header-contact{font-size:14px;padding:10px 16px}
}
.lang-switch{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid #74747650;border-radius:24px;font-size:14px;font-weight:700;letter-spacing:.5px;color:var(--muted);transition:color .2s,border-color .2s,background .2s}
.lang-switch-platzhalter{visibility:hidden}
.lang-switch:hover{color:var(--ink);border-color:var(--grey);background:#ffffff0a}
.lang-switch .icon{width:16px;height:16px;stroke-width:1.8}
.lang-hint{position:relative;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:12px clamp(16px,4vw,48px);background:#1b1b1ef2;border-bottom:1px solid #74747640;font-size:16px;color:var(--muted);animation:lang-hint-in .5s var(--ease-out) both}
.lang-hint .text-link{color:var(--ink)}
.lang-hint button{margin-left:auto;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted)}
.lang-hint button:hover{background:#ffffff14;color:var(--ink)}
.lang-hint.is-out{animation:lang-hint-out .3s var(--ease-out) forwards}
@keyframes lang-hint-in{from{opacity:0;transform:translateY(-8px)}}
@keyframes lang-hint-out{to{opacity:0;transform:translateY(-8px)}}
/* Auf schmaleren Bildschirmen nur die Weltkugel: das spart in der Kopfzeile Platz für Logo,
   Menü und Schaltfläche. */
@media(max-width:1600px){.lang-switch span{display:none}}
@media(max-width:900px){.lang-switch{padding:8px 12px}.lang-switch .icon{width:18px;height:18px}}
/* Five trades, one contact (Leistungen) */
.one-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:center;padding-block:30px 70px}
.oc-copy h2{font-size:48px;margin-bottom:18px}
.oc-copy p{color:var(--muted)}
.oc-switch{display:inline-flex;padding:4px;margin:12px 0 26px;border-radius:24px;background:#1c1c1f;border:1px solid var(--line)}
.oc-switch button{min-height:40px;padding:8px 18px;border:0;border-radius:20px;background:transparent;color:var(--muted);font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:background .3s,color .3s}
.oc-switch button[aria-pressed="true"]{background:var(--ink);color:#111113}
.oc-switch button[data-oc="one"][aria-pressed="true"]{background:var(--orange)}
.oc-switch button:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.oc-count{display:grid;margin:0}
.oc-count>span{grid-area:1/1;display:flex;align-items:baseline;gap:14px;transition:opacity .45s,transform .45s}
.oc-count strong{font-size:64px;line-height:1;color:var(--ink)}
.one-contact[data-state="one"] .oc-count strong{color:var(--orange)}
.oc-count span span{color:var(--muted);font-size:16px;max-width:30ch}
.one-contact .oc-one,.one-contact[data-state="one"] .oc-many{opacity:0;transform:translateY(6px);pointer-events:none}
.one-contact[data-state="one"] .oc-one{opacity:1;transform:none;pointer-events:auto}
.oc-figure{position:relative;margin:0;width:100%;max-width:600px;justify-self:center;aspect-ratio:600/640;container-type:inline-size}
.oc-figure svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.oc-chaos line{stroke:#8a8a90a0;stroke-width:1.3;stroke-dasharray:3 7;transition:opacity .5s}
.oc-lines-many line{stroke:#b6b6bc;stroke-width:2;stroke-dasharray:6 8;transition:opacity .5s;animation:oc-flow 1.6s linear infinite}
.oc-lines-one line{stroke:var(--orange);stroke-width:2.5;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .8s cubic-bezier(.2,.7,.2,1) .35s}
.oc-lines-one .oc-main{stroke-width:6;stroke-linecap:round;transition-delay:.15s}
.one-contact[data-state="one"] .oc-chaos line,.one-contact[data-state="one"] .oc-lines-many line{opacity:0}
.one-contact[data-state="one"] .oc-lines-one line{stroke-dashoffset:0}
@keyframes oc-flow{to{stroke-dashoffset:-28}}
.oc-node,.oc-hub,.oc-you{position:absolute}
.oc-dot{position:absolute;left:0;top:0;transform:translate(-50%,-50%);display:grid;place-items:center;width:11.5cqw;height:11.5cqw;border-radius:50%;background:#1c1c1f;border:2px solid #b6b6bc;color:var(--ink);font-weight:700;font-size:max(13px,4.2cqw);transition:border-color .5s,background .5s,color .5s;transition-delay:calc(var(--i)*60ms)}
.one-contact[data-state="one"] .oc-dot{border-color:var(--orange);background:#2a1d0c;color:var(--orange)}
.oc-label{position:absolute;left:0;top:7.2cqw;transform:translateX(-50%);width:32cqw;display:grid;gap:2px;text-align:center;line-height:1.2}
.oc-node.is-top .oc-label{top:auto;bottom:7.2cqw}
.oc-label strong{font-size:max(12px,3.4cqw);color:var(--ink)}
.oc-label small{display:grid;font-size:max(10.5px,2.7cqw);color:var(--muted)}
.oc-label small>span{grid-area:1/1;transition:opacity .45s}
.one-contact[data-state="one"] .oc-label small .oc-one{color:var(--orange);font-weight:700}
.oc-hub{transform:translate(-50%,-50%) scale(.2);width:26cqw;height:26cqw;padding:0 2.5cqw;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--orange);color:#111113;box-shadow:0 0 0 0 #f18e0000;opacity:0;transition:transform .7s cubic-bezier(.2,.8,.2,1.2) .25s,opacity .4s .25s,box-shadow .8s .6s}
.oc-hub strong{font-size:max(14px,4.4cqw);letter-spacing:.01em}
.oc-hub small{font-size:max(9px,2.1cqw);font-weight:700;line-height:1.15}
.one-contact[data-state="one"] .oc-hub{opacity:1;transform:translate(-50%,-50%) scale(1);box-shadow:0 0 0 3cqw #f18e001f}
.oc-you{left:50%;top:45.3%;transform:translate(-50%,-50%);transition:top .8s cubic-bezier(.2,.7,.2,1)}
.oc-you span{display:grid;place-items:center;width:15cqw;height:15cqw;border-radius:50%;background:var(--ink);color:#111113;font-weight:700;font-size:max(13px,4cqw);transition:width .6s,height .6s}
.one-contact[data-state="one"] .oc-you{top:93.75%}
.one-contact[data-state="one"] .oc-you span{width:12cqw;height:12cqw}
.one-contact .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:900px){.one-contact{grid-template-columns:1fr;gap:30px;padding-block:10px 50px}.oc-copy h2{font-size:36px}.oc-count strong{font-size:56px}}
@media(prefers-reduced-motion:reduce){.one-contact *{transition:none!important;animation:none!important}}
/* Produktbühne: freigestelltes Produktfoto, das beim Scrollen leicht mitgeht */
.product-stage{--glow-a:.26}
.product-stage .story-art{overflow:visible;isolation:auto}
.product-stage[data-tone="dark"] .story-glow{z-index:0}
.product-stage .story-art:after{display:none}
.product-stage .story-glow{inset:4% 8% 2%;background:radial-gradient(ellipse at 50% 55%,rgba(var(--glow-color),var(--glow-a,.3)),transparent 70%);filter:blur(26px)}
.product-hold{position:absolute;inset:0;display:grid;place-items:center}
/* Bewegung und Freistellen müssen am selben Element liegen: eine Transformation am Elternelement würde das Freistellen aufheben. */
.product-shot{max-width:min(78%,760px);max-height:100%;object-fit:contain;filter:drop-shadow(0 26px 40px rgba(0,0,0,.6)) contrast(1.04);transform:translateY(calc(var(--p,0)*-22px)) rotate(calc(-1.6deg + var(--p,0)*3.2deg)) scale(calc(1 + var(--p,0)*.05));transition:transform .3s linear,filter .3s;animation:product-float 9s ease-in-out infinite alternate}
.product-stage[data-tone="dark"] .product-shot{mix-blend-mode:screen;filter:none;-webkit-mask-image:radial-gradient(ellipse at 50% 52%,#000 46%,rgba(0,0,0,.6) 70%,transparent 86%);mask-image:radial-gradient(ellipse at 50% 52%,#000 46%,rgba(0,0,0,.6) 70%,transparent 86%)}
.product-stage[data-tone="light"] .product-shot,.product-stage[data-tone="scene"] .product-shot{border-radius:16px;box-shadow:0 28px 55px rgba(0,0,0,.55)}
.product-stage[data-tone="light"] .product-shot{max-width:min(62%,560px);max-height:76%}
.product-stage[data-tone="scene"] .product-shot{max-width:min(92%,1040px);box-shadow:0 30px 60px rgba(0,0,0,.55)}
@keyframes product-float{from{translate:0 -9px}to{translate:0 9px}}
body.motion-paused .product-shot{animation:none}
/* Weitere Ansichten */
.product-shots{padding-block:10px 50px}
.product-shots .eyebrow{display:block;margin-bottom:16px}
.shot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,380px));gap:20px}
.shot-grid figure{margin:0;background:linear-gradient(150deg,#1a1a1c,#141416);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.shot-grid img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#0d0d0f}
.shot-grid figcaption{padding:12px 16px 14px;font-size:14px;color:var(--muted)}
@media(max-width:700px){.shot-grid{grid-template-columns:1fr}.product-shot{max-width:86%}}
@media(prefers-reduced-motion:reduce){.product-shot{animation:none}.product-hold{transform:none}}
/* Produktkarten mit Fotos aus den Datenblättern */
.product-card-image.is-photo img{width:100%;height:100%;object-fit:cover}
.product-card-image.is-photo.dark{background:#0a0a0c}
.product-card-image.is-photo.dark img{object-fit:contain;padding:8px;mix-blend-mode:screen}
/* Case-Study-Aufmacher ohne Foto: die Kennzahl trägt die Fläche */
.case-cover-figure{display:grid;justify-items:center;align-content:center;gap:10px;min-height:340px;padding:40px 24px;text-align:center;border-radius:16px;border:1px solid #f18e0038;background:radial-gradient(ellipse at 50% 20%,#f18e0016,#141416 70%)}
.case-cover-figure strong{display:flex;align-items:baseline;gap:6px;font-size:clamp(64px,13vw,120px);line-height:.95;color:var(--orange)}
.case-cover-figure .approx{font-size:.3em;color:var(--muted)}
.case-cover-figure .percent{font-size:.42em}
.case-cover-caption{max-width:34ch;color:var(--muted)}
/* Case-Study-Kachel ohne Foto */
.case-tile.is-figure .case-tile-figure{display:flex;align-items:baseline;justify-content:center;height:245px;background:radial-gradient(ellipse at 50% 25%,#f18e0016,#141416 70%);border-bottom:1px solid #f18e0038;color:var(--orange);font-size:64px;font-weight:700;line-height:1}
.case-tile.is-figure .case-tile-figure small{font-size:.45em;margin-left:4px}
/* Ansichten mit hellem Hintergrund (Renderings) als helle Karte zeigen */
.shot-grid figure.is-light{background:#f4f4f6;border-color:#ffffff1f}
.shot-grid figure.is-light img{background:#fff;object-fit:contain}
.shot-grid figure.is-light figcaption{color:#4a4a50}
/* Hinweis auf den Partnerbereich */
.partner-hint{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:70px;padding:30px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(130deg,#1c1c1f,#141416)}
.partner-hint h2{font-size:32px;margin-bottom:8px}
.partner-hint p{margin:0;font-size:16px}
.footer-partner{opacity:.75}
@media(max-width:600px){.partner-hint{padding:22px;margin-bottom:45px}.partner-hint h2{font-size:28px}}
/* Aufklappmenü in der Kopfzeile */
.nav-drop{position:relative}
.nav-drop summary{display:flex;align-items:center;gap:6px;padding:14px 0;font-size:16px;font-weight:700;color:#c4c4c9;list-style:none;white-space:nowrap}
.nav-drop summary::-webkit-details-marker{display:none}
.nav-drop[data-current="1"] summary{color:var(--orange)}
.nav-drop summary .icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.4;transition:transform .2s}
.nav-drop[open] summary .icon{transform:rotate(180deg)}
.nav-sub{display:none;position:absolute;top:calc(100% + 6px);left:-18px;min-width:210px;padding:8px;border:1px solid var(--line);border-radius:12px;background:#151518;backdrop-filter:blur(18px);box-shadow:0 18px 44px #000b;z-index:40}
.nav-drop[open] .nav-sub,.nav-drop:hover .nav-sub,.nav-drop:focus-within .nav-sub{display:grid}
.nav-sub a{padding:11px 14px;border-radius:8px;font-size:16px;font-weight:700;color:#d6d6da}
.nav-sub a:hover{background:#ffffff0f;color:var(--ink)}
.nav-sub a[aria-current="page"]{color:var(--orange)}
@media(max-width:600px){.nav-drop summary{padding:13px 0;font-size:18px}.nav-sub{position:static;display:none;min-width:0;margin:0 0 8px;padding:4px 0 4px 14px;border:0;border-left:2px solid var(--line);border-radius:0;background:none;box-shadow:none;backdrop-filter:none}.nav-drop:hover .nav-sub{display:none}.nav-drop[open] .nav-sub{display:grid}.nav-sub a{padding:10px 0;font-size:16px}}
/* Kurzfassung „Fünf Gewerke. Ein Ansprechpartner.“ */
.oc-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,300px);align-items:center;gap:36px;margin-bottom:60px;padding:28px 32px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(130deg,#f18e000f,#141416 70%)}
.oc-band h2{font-size:32px;margin-bottom:10px}
.oc-band p{margin-bottom:14px;font-size:16px;max-width:52ch}
.oc-band .eyebrow{margin-bottom:12px}
.oc-band-figure svg{width:100%;height:auto;max-height:132px}
@media(max-width:800px){.oc-band{grid-template-columns:1fr;gap:18px;padding:24px}.oc-band h2{font-size:28px}.oc-band-figure{max-width:260px}}
/* Sicherheitsfrage vor dem Absenden */
.fg-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px;background:#0a0a0bcc;backdrop-filter:blur(6px)}
.fg-card{width:min(430px,100%);padding:28px;border:1px solid var(--line);border-radius:16px;background:#17171a;box-shadow:0 30px 70px #000a}
.fg-card h2{font-size:28px;margin-bottom:10px}
.fg-card p{font-size:16px;margin-bottom:18px}
.fg-field{display:grid;gap:8px;font-size:16px;font-weight:700;margin-bottom:14px}
.fg-field input{padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:#111113;color:var(--ink);font-size:18px}
.fg-error{color:#ffb570;font-size:16px}
.fg-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}

/* Vertrauensleiste unter dem Hero der Startseite */
.trust-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(180deg,#f18e000c,transparent)}
.trust-bar ul{list-style:none;margin-block:0;margin-inline:auto;padding:22px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 30px}
.trust-bar li{display:flex;align-items:flex-start;gap:12px}
.trust-bar .icon{width:20px;height:20px;margin-top:3px;color:var(--orange)}
.trust-bar strong{display:block;font-size:16px;line-height:1.35}
.trust-bar span{display:block;font-size:14px;line-height:1.45;color:var(--muted);margin-top:3px}

/* Kontaktangaben im Footer */
.footer-contact{font-style:normal;font-size:16px;line-height:1.7;color:var(--muted);margin:16px 0 0}
.footer-contact a{display:block;width:fit-content;margin-top:7px;color:var(--ink);font-weight:700;border-bottom:1px solid var(--line);padding-bottom:3px}

/* Kontaktformular auf der Kontaktseite */
.contact-form-wrap{padding-bottom:8px}
.contact-form{margin-top:0}
.contact-form h2{font-size:clamp(32px,3.4vw,40px);color:#171719;margin-bottom:10px}
.contact-form .eyebrow{color:#5c4626}
.contact-form select{width:100%;min-height:50px;padding:12px 14px;border-radius:12px;border:1px solid #1717192e;background:#fff8ec;color:#171719;font:inherit;font-size:16px;font-weight:400}
.contact-form select:focus{outline:3px solid #171719;outline-offset:1px}
.contact-form textarea{resize:vertical}
.contact-form .finder-thanks a{font-weight:700;border-bottom:1px solid #171719}

/* Aktionsleiste am unteren Rand: nur auf kleinen Bildschirmen */
.action-bar{display:none}

/* Hinweise auf KI-Bilder bleiben, treten aber zurück */
.photo-note{font-size:12px;color:#c9c9cf;opacity:.8}
.story-art-note{font-size:12px;opacity:.8}

@media(max-width:700px){
 .action-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#111113f2;backdrop-filter:blur(18px);border-top:1px solid #74747640}
 .action-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:10px 12px;border:1px solid var(--grey);border-radius:28px;font-size:16px;font-weight:700;white-space:nowrap}
 .action-bar .icon{width:19px;height:19px}
 .action-bar-main{flex:1.4;background:var(--orange);color:#171719;border-color:var(--orange)}
 body{padding-bottom:78px}
}
@media(max-width:600px){
 .trust-bar ul{grid-template-columns:1fr;gap:14px;padding:18px 0}
 .photo-note{font-size:12px}
 .story-art-note{font-size:12px}
 .contact-form h2{font-size:28px}
}

/* ---- Bereichsseite Sport: Projektwand ("Lichtwand") ---- */
.floodwall{position:relative;isolation:isolate;padding-block:64px 74px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0e0e10;overflow:hidden}
.floodwall:before{content:'';position:absolute;inset:-30% 10% 40%;z-index:-1;background:radial-gradient(ellipse at 50% 0,#f18e0024,transparent 68%);filter:blur(18px);pointer-events:none}
.floodwall h2{margin-bottom:26px}
.fw-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px 50px;flex-wrap:wrap;margin-bottom:30px}
.fw-head p{margin:0;max-width:520px}
.fw-count{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}
.fw-count strong{font-size:clamp(72px,11vw,160px);line-height:.88;letter-spacing:-4px;color:var(--orange);font-variant-numeric:tabular-nums}
.fw-count span{font-size:16px;font-weight:700;max-width:230px;line-height:1.4}
.fw-types{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0}
.fw-types li{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;color:#d6d6db;background:#1a1a1e;border:1px solid var(--line);border-radius:26px;padding:8px 9px 8px 16px}
.fw-types b{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 7px;border-radius:14px;background:#f18e0021;color:var(--orange);font-size:14px;font-variant-numeric:tabular-nums}
.fw-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:10px}
.fw-tile{position:relative;overflow:hidden;border:1px solid #74747628;border-radius:12px;background:#151518;padding:16px 15px 17px;min-height:104px;transition:border-color .4s var(--ease-out),background .4s var(--ease-out),transform .4s var(--ease-out)}
.fw-tile>a{display:block;color:inherit}
.fw-tile>a:after{content:'';position:absolute;inset:0}
.fw-tile i{position:absolute;left:15px;right:15px;top:0;height:2px;background:linear-gradient(90deg,#ffd79a,var(--orange));opacity:0;transform:scaleX(.15);transform-origin:left;border-radius:2px}
.fw-tile strong{display:block;font-size:16px;line-height:1.3;margin-bottom:5px}
.fw-tile span{display:block;font-size:14px;line-height:1.45;color:var(--muted)}
.fw-tile b{position:absolute;right:15px;bottom:14px;font-size:14px;color:var(--orange);font-variant-numeric:tabular-nums}
.floodwall.is-on .fw-tile{background:#1a1a1f;border-color:#7474603d}
.floodwall.is-on .fw-tile i{opacity:1;transform:scaleX(1);box-shadow:0 0 16px 1px #f18e0088}
.floodwall.is-on .fw-tile,.floodwall.is-on .fw-tile i{transition:opacity .55s var(--ease-out),transform .8s var(--ease-out),background .55s var(--ease-out),border-color .55s var(--ease-out),box-shadow .55s var(--ease-out);transition-delay:calc(var(--i,0)*45ms)}
.fw-tile:hover{border-color:#f18e0066;transform:translateY(-2px)}
.fw-tile.is-extra{display:none}
.floodwall.is-open .fw-tile.is-extra{display:block}
.fw-more{margin-top:22px}
.floodwall .fine{margin:22px 0 0;max-width:720px}

/* ---- Bereichsseite Sport: Normen, Ansprechpartner ---- */
.sport-page .page-intro{padding-bottom:42px}
.sport-norm{display:grid;grid-template-columns:1fr 1fr;gap:40px 60px;padding-block:70px}
.sport-norm h2{font-size:48px}
.norm-table table{width:100%;border-collapse:collapse;font-size:16px}
.norm-table th,.norm-table td{text-align:right;padding:15px 8px;border-bottom:1px solid var(--line)}
.norm-table thead th{font-size:14px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-weight:700;vertical-align:bottom}
.norm-table thead th small{display:block;font-size:12px;letter-spacing:0;text-transform:none;color:#8b8b92;font-weight:400;margin-top:3px}
.norm-table th[scope=row],.norm-table thead th:first-child{text-align:left}
.norm-table tbody th{font-weight:700}
.norm-table td{font-weight:700;font-variant-numeric:tabular-nums}
.norm-table caption{caption-side:bottom;text-align:left;padding-top:14px}
.sport-cases{padding-block:70px 10px}
.sport-cases .text-link{margin-top:30px}
.sport-contact{display:flex;align-items:center;justify-content:space-between;gap:24px 40px;flex-wrap:wrap;background:var(--surface);border-radius:20px;padding:34px 38px;margin-bottom:10px}
.sport-contact h2{font-size:36px;margin-bottom:6px}
.sport-contact p{margin:0;font-size:16px}
.sport-contact-links{display:flex;gap:12px;flex-wrap:wrap}

@media(max-width:900px){
 .sport-norm{grid-template-columns:1fr;gap:28px;padding-block:46px}
 .sport-norm h2{font-size:36px}
}
@media(max-width:600px){
 .floodwall{padding-block:44px 52px}
 .fw-count strong{letter-spacing:-2px}
 .fw-count span{max-width:none}
 .fw-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:8px}
 .fw-tile{min-height:94px;padding:14px 13px 15px}
 .fw-tile strong{font-size:16px}
 .fw-more{width:100%}
 .sport-cases{padding-block:44px 0}
 .sport-contact{padding:26px 22px}
 .sport-contact h2{font-size:28px}
 .sport-contact-links{width:100%}
 .sport-contact-links .button{flex:1}
 .norm-table th,.norm-table td{padding:12px 4px;font-size:16px}
}

/* ---- News: Titelbild auf den Karten der Übersicht ---- */
.journal-card{overflow:hidden}
.journal-media{display:block;align-self:stretch;position:relative;overflow:hidden;height:184px;margin:-28px -28px 22px;background:#141417}
.journal-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.journal-card:hover .journal-media img{transform:scale(1.03)}
.journal-media.is-plain{background:linear-gradient(140deg,#202026,#151518 62%)}
.journal-media.is-plain i{position:absolute;left:-12%;right:-12%;top:calc(34% + var(--k,0)*9%);height:2px;transform:rotate(calc(-20deg + var(--k,0)*5deg));background:linear-gradient(90deg,transparent,#f18e00b0,transparent);box-shadow:0 0 22px #f18e0055}
@media(max-width:600px){
 .journal-media{height:176px;margin:-25px -25px 20px}
}

/* ---- Referenzkarte: viele Punkte werden kleiner gezeichnet ---- */
.map-figure[data-density=mid] .map-pin{width:26px;height:26px;margin:-13px 0 0 -13px}
.map-figure[data-density=mid] .map-pin span{width:9px;height:9px;box-shadow:0 0 11px #f18e0099}
.map-figure[data-density=high] .map-pin{width:18px;height:18px;margin:-9px 0 0 -9px}
.map-figure[data-density=high] .map-pin span{width:7px;height:7px;box-shadow:0 0 8px #f18e0085}
.map-figure[data-density=high] .map-pin[aria-pressed=true] span{transform:scale(2)}
.map-figure[data-density=high] .map-pin[aria-pressed=true]::before,.map-figure[data-density=mid] .map-pin[aria-pressed=true]::before{width:8px;height:8px}

/* ---- Projektwand: Fotoband mit der großen Zahl ---- */
.fw-photo{position:relative;margin:0 0 26px;border-radius:16px;overflow:hidden;background:#0c0c0e;isolation:isolate}
.fw-photo img{width:100%;aspect-ratio:4/1;height:auto;object-fit:cover;filter:saturate(.8) brightness(.78) contrast(1.05)}
.fw-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b0b0df5 0%,#0b0b0de0 38%,#0b0b0d8c 66%,#0b0b0d4d 100%)}
.fw-photo figcaption{position:absolute;left:clamp(20px,3vw,44px);top:50%;transform:translateY(-50%);z-index:1}
.fw-photo .fw-count{gap:20px;align-items:center}
.fw-photo .fw-count strong{font-size:clamp(72px,9.5vw,120px);text-shadow:0 6px 40px #000}
.fw-photo .fw-count span{max-width:210px;color:#f1f1f3}
.fw-photo .photo-note{bottom:12px;right:18px}
.fw-intro{margin:0 0 26px;max-width:620px}
.fw-grid[data-few] {grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.fw-grid[data-few] .fw-tile{min-height:124px;padding:18px 17px 19px}
.fw-grid[data-few] .fw-tile strong{font-size:18px}
@media(max-width:600px){
 .fw-photo img{aspect-ratio:auto;height:230px}
 .fw-photo:before{background:linear-gradient(0deg,#0b0b0df2 22%,#0b0b0d88 58%,transparent 92%)}
 .fw-photo figcaption{top:auto;bottom:16px;transform:none;left:16px;right:16px}
 .fw-photo .fw-count{gap:12px;align-items:baseline}
 .fw-photo .fw-count strong{font-size:64px}
 .fw-photo .fw-count span{font-size:16px;max-width:none;flex:1}
 .fw-grid[data-few]{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}
}

/* Absätze, die über „Seite bearbeiten“ in einen vorhandenen Absatz geschrieben wurden */
.ovr-p{display:block}
.ovr-p+.ovr-p{margin-top:.9em}

/* ---- Projektkarte nach Bundesländern ---- */
.region-map{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:34px 54px;align-items:center;margin-bottom:30px}
.rm-figure{position:relative}
.rm-figure svg{width:100%;height:auto;display:block;overflow:visible}
.rm-outline{fill:none;stroke:#7474764d;stroke-width:1.5}
.rm-land{fill:#74747633}
.rm-dot text{fill:#171719;font-family:Arial,sans-serif;font-weight:700;text-anchor:middle;pointer-events:none}
.rm-dot .rm-disc{fill:var(--orange)}
.rm-dot .rm-glow{fill:#f18e0026}
.rm-dot{opacity:0;transform:scale(.4);transform-origin:center;transform-box:fill-box}
.is-on .rm-dot{opacity:1;transform:scale(1);transition:opacity .5s var(--ease-out),transform .7s cubic-bezier(.2,.9,.25,1.2);transition-delay:calc(var(--i,0)*90ms)}
.rm-dot:hover .rm-glow{fill:#f18e0040}
.rm-side .rm-lead{font-size:18px;margin:0 0 20px;color:var(--ink)}
.rm-side .rm-lead strong{font-size:clamp(48px,6vw,72px);line-height:1;color:var(--orange);display:block;margin-bottom:6px;font-variant-numeric:tabular-nums}
.rm-legend{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:2px 26px}
.rm-legend li{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid #74747626;font-size:16px}
.rm-legend b{color:var(--orange);font-variant-numeric:tabular-nums}
.fw-list{margin-top:4px}
.fw-list summary{display:inline-flex;align-items:center;gap:9px;font-size:16px;font-weight:700;padding:11px 20px;border:1px solid var(--line);border-radius:26px;background:#202024;list-style:none}
.fw-list summary::-webkit-details-marker{display:none}
.fw-list summary:after{content:'';width:8px;height:8px;border-right:2px solid var(--orange);border-bottom:2px solid var(--orange);transform:rotate(45deg) translate(-2px,-2px)}
.fw-list[open] summary{margin-bottom:20px}
.fw-list[open] summary:after{transform:rotate(-135deg) translate(-2px,-2px)}
@media(max-width:900px){
 .region-map{grid-template-columns:1fr;gap:26px}
 .rm-figure{max-width:330px;margin-inline:auto}
}
@media(max-width:600px){
 .rm-legend{grid-template-columns:1fr;gap:0}
 .rm-side .rm-lead{font-size:16px}
}

/* Kachel-Hinweis: Produkt mit 3D-/AR-Modell */
.card-badge{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;background:#111113cc;backdrop-filter:blur(10px);border:1px solid #f18e0059;color:var(--orange);font-size:12px;font-weight:700;letter-spacing:.6px}
.product-card-image{position:relative}

/* ---- Einsparungsbilanz am Ende der Startseite: oranges Band ---- */
.impact{position:relative;isolation:isolate;overflow:hidden;padding-block:66px 72px;background:var(--orange);color:#171719}
.impact-glow{position:absolute;inset:-45% 8% 35%;z-index:-1;background:radial-gradient(ellipse at 50% 0,#ffffff38,transparent 68%);filter:blur(22px)}
.impact-head{max-width:820px;margin-bottom:46px}
.impact-head .eyebrow{color:#5c4626}
.impact-head h2{font-size:clamp(36px,5vw,56px);margin-bottom:16px;color:#171719}
.impact-head h2 em{color:#fff}
.impact-head p{margin:0;color:#3d2f1b;font-size:20px}
.impact-figures{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:34px 26px}
.impact-figures li{position:relative}
.impact-figures strong{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;font-size:clamp(40px,4.6vw,64px);line-height:1;letter-spacing:-2px;color:#171719;font-variant-numeric:tabular-nums}
.impact-figures small{font-size:.42em;letter-spacing:-.5px;font-weight:700}
.impact-label{display:block;margin-top:14px;font-size:14px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;line-height:1.5;color:#4a3922}
.impact-hint{display:block;margin-top:8px;max-width:22em;font-size:14px;line-height:1.5;color:#5c4626;font-variant-numeric:tabular-nums}
.impact .fine{margin:40px 0 0;max-width:820px;color:#4a3922}
.impact-action{margin-top:28px}
.impact .light-streak{top:16%;right:-16%;background:#fff6e4;box-shadow:0 0 22px #fff6e4}
@media(max-width:600px){
 .impact{padding-block:44px 50px}
 .impact-head{margin-bottom:32px}
 .impact-head p{font-size:18px}
 .impact-figures{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:26px 18px}
 .impact-figures strong{font-size:40px;letter-spacing:-1px}
 .impact-label{font-size:12px;letter-spacing:1px;margin-top:10px}
 .impact-hint{font-size:13px;margin-top:6px}
 .impact-action .button{width:100%}
}

/* ---- Über uns: Nachhaltigkeit ---- */
.sustain{padding-block:20px 60px}
.sustain-head{max-width:720px;margin-bottom:38px}
.sustain-head h2{font-size:clamp(36px,4.4vw,48px)}
.sustain-head p{margin:0}
.sustain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sustain-grid article{position:relative;background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:30px 28px 32px}
.sustain-grid article.is-promise{border-color:#f18e0059;background:linear-gradient(160deg,#241a0c,#1a1a1d 62%)}
.sustain-mark{display:block;width:40px;height:4px;border-radius:2px;background:var(--orange);margin-bottom:22px}
.sustain-grid h3{font-size:24px;line-height:1.2;margin-bottom:12px}
.sustain-grid p{font-size:16px;margin:0}
.sustain>.fine{margin:24px 0 0}
@media(max-width:900px){.sustain-grid{grid-template-columns:1fr}}
@media(max-width:600px){.sustain{padding-block:6px 42px}.sustain-grid article{padding:24px 22px 26px}.sustain-grid h3{font-size:24px}}

/* Aufzählungen in den Rechtstexten */
.legal-text ul{margin:0 0 18px;padding-left:22px;color:var(--muted);font-size:18px;line-height:1.65}
.legal-text li{margin-bottom:8px}
.legal-text strong{color:var(--ink)}

/* ---- Nachhaltigkeit: Serviceversprechen und Teaser auf „Über uns“ ---- */
.promise{display:flex;align-items:center;justify-content:space-between;gap:28px 48px;flex-wrap:wrap;background:linear-gradient(160deg,#241a0c,#1a1a1d 62%);border:1px solid #f18e0059;border-radius:20px;padding:40px 42px;margin-bottom:60px}
.promise>div{max-width:720px}
.promise h2{font-size:36px;margin-bottom:16px}
.promise p{margin:0 0 12px}
.promise .fine{margin:0}
.sustain-teaser{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px 56px;align-items:center;padding-block:10px 56px}
.sustain-teaser h2{font-size:40px}
.sustain-teaser p{margin-bottom:22px}
.teaser-points{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.teaser-points li{position:relative;padding:14px 18px 14px 44px;border:1px solid #74747626;border-radius:12px;background:var(--surface);font-size:18px;font-weight:700}
.teaser-points li:before{content:'';position:absolute;left:18px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--orange);box-shadow:0 0 12px #f18e00a0}
@media(max-width:900px){
 .sustain-teaser{grid-template-columns:1fr;gap:26px}
 .promise{padding:30px 26px}
 .promise h2{font-size:32px}
}
@media(max-width:600px){
 .promise{padding:24px 22px;margin-bottom:42px}
 .promise h2{font-size:28px}
 .promise .button{width:100%}
 .sustain-teaser{padding-block:0 40px}
 .sustain-teaser h2{font-size:32px}
}

/* Aufklappmenü: unsichtbare Brücke, damit die Maus den Weg zum Untermenü schafft */
.nav-drop[open]:after{content:'';position:absolute;left:0;right:0;top:100%;height:10px}

/* ---- Schnellrechner auf der Startseite ---- */
.quick{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:stretch;padding-block:20px 72px}
.quick-form{background:var(--surface);border:1px solid #74747626;border-radius:20px;padding:36px 34px 38px}
.quick-form h2{font-size:36px;margin-bottom:12px}
.quick-form>p{margin-bottom:28px}
.quick-form label{display:block;margin-bottom:20px}
.quick-form label>span{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:16px;font-weight:700;margin-bottom:10px}
.quick-form output{color:var(--orange);font-variant-numeric:tabular-nums}
.quick-form input[type=range]{width:100%;margin:0;accent-color:var(--orange);height:24px}
.quick-form select,.quick-form input[type=number]{width:100%;min-height:48px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#141417;color:var(--ink);font:inherit;font-size:16px}
.quick-form select:focus,.quick-form input:focus{outline:3px solid var(--orange);outline-offset:2px}
.quick-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.quick-row label{margin-bottom:20px}
.quick-result{display:flex;flex-direction:column;align-items:flex-start;border-radius:20px;padding:36px 34px 38px;background:linear-gradient(160deg,#2a1e0c,#17171a 68%);border:1px solid #f18e0059}
.quick-result .eyebrow{color:#d9b377}
.quick-result>strong{display:block;font-size:clamp(40px,5.6vw,64px);line-height:1;letter-spacing:-2px;color:var(--orange);font-variant-numeric:tabular-nums}
.quick-cut{display:block;margin-top:14px;font-size:18px;font-weight:700}
.quick-more{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:100%;margin:28px 0;padding-top:24px;border-top:1px solid #74747640}
.quick-more dt{font-size:14px;color:var(--muted);margin-bottom:6px}
.quick-more dd{margin:0;font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}
.quick-result .button{margin-bottom:18px}
.quick-result .fine{margin:auto 0 0}
@media(max-width:900px){
 .quick{grid-template-columns:1fr;padding-block:10px 48px}
 .quick-form,.quick-result{padding:26px 22px 28px}
 .quick-form h2{font-size:32px}
}
@media(max-width:600px){
 .quick-row{grid-template-columns:1fr;gap:0}
 .quick-more{grid-template-columns:1fr;gap:14px}
 .quick-result .button{width:100%}
}

/* ---- Produktbühne mit 3D-Modell ---- */
.product-stage-3d{display:grid;place-items:center}
.product-model{width:100%;height:100%;--poster-color:transparent;background:transparent;pointer-events:none}
.product-stage-3d .story-art-note{z-index:4}
.model-failed .product-model{display:none}
@media(prefers-reduced-motion:reduce){.product-model{--interpolation-decay:1}}
/* Lichtmanagement & Sensorik */
.sensor-why{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 48px;padding-block:20px 50px}
.sensor-why h2{font-size:36px}
.sensor-why p:last-child{margin-bottom:0}
.sensor-levels,.sensor-modes,.sensor-fields,.sensor-faq,.sensor-group,.sensor-detail,.sensor-order,.sensor-apps,.sensor-more{padding-block:20px 50px}
.sensor-level-list{list-style:none;margin:0;padding:0;display:grid;gap:14px;counter-reset:none}
.sensor-level-list li{display:flex;gap:20px;align-items:flex-start;background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:26px 28px}
.sensor-level-mark{flex:none;width:10px;height:10px;margin:14px 8px 0 4px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px #f18e001f}
.sensor-level-list h3{font-size:24px;margin-bottom:8px}
.sensor-level-list p{margin-bottom:12px}
.sensor-level-list p:last-child{margin-bottom:0}
.sensor-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sensor-mode-grid article{background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:28px}
.sensor-mode-grid h3{font-size:24px}
.sensor-mode-grid p{margin-bottom:0;font-size:16px}
.sensor-catalog-teaser{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 48px;align-items:center;padding-block:20px 50px}
.sensor-catalog-teaser .button{margin-top:8px}
.sensor-group-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.sensor-group-list a{display:block;background:var(--surface);border:1px solid #74747626;border-radius:14px;padding:18px 22px;transition:border-color .2s ease}
.sensor-group-list a:hover{border-color:#f18e0080}
.sensor-group-list strong{display:block;font-size:18px;margin-bottom:4px}
.sensor-group-list span{font-size:14px;color:var(--muted)}
.sensor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:18px}
.sensor-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:26px 26px 28px;transition:border-color .2s ease,transform .2s ease}
.sensor-card:hover{border-color:#f18e0080;transform:translateY(-2px)}
.sensor-card .eyebrow{margin-bottom:12px}
.sensor-card h3{font-size:28px;margin-bottom:4px}
.sensor-card strong{display:block;font-size:16px;margin-bottom:12px}
.sensor-card p{font-size:16px;margin-bottom:18px;flex:1}
.sensor-detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:28px}
.sensor-sheet{display:inline-flex;align-items:center;gap:12px;background:var(--surface);border:1px solid #f18e0059;border-radius:14px;padding:14px 20px;min-height:52px}
.sensor-sheet:hover{border-color:var(--orange)}
.sensor-sheet .icon{width:20px;height:20px;fill:none;stroke:var(--orange);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sensor-sheet span{font-weight:700;font-size:16px}
.sensor-sheet small{font-size:14px;color:var(--muted)}
.sensor-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px 48px;align-items:start}
.sensor-features{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px}
.sensor-features li{position:relative;padding-left:26px;font-size:16px;color:var(--muted);line-height:1.6}
.sensor-features li:before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;border-radius:50%;background:var(--orange)}
.sensor-detail-specs dl{margin:0;background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:12px 26px}
.sensor-detail-specs dl div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #74747626}
.sensor-detail-specs dl div:last-child{border-bottom:0}
.sensor-detail-specs dt{font-size:16px;color:var(--muted)}
.sensor-detail-specs dd{margin:0;font-size:16px;font-weight:700;text-align:right}
.sensor-order-list{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
.sensor-order-list li{background:var(--surface);border:1px solid #74747626;border-radius:14px;padding:18px 22px}
.sensor-order-list strong{display:block;font-size:18px;color:var(--orange);margin-bottom:4px}
.sensor-order-list span{font-size:14px;color:var(--muted)}
.sensor-app-links{display:flex;flex-wrap:wrap;gap:12px 28px}
.sensor-field-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:10px}
.sensor-field-list li{background:var(--surface);border:1px solid #74747626;border-radius:12px;padding:14px 20px;font-size:16px;color:var(--muted)}
.sensor-faq .faq-list{display:grid;gap:10px;max-width:920px}
.sensor-faq details{background:var(--surface);border:1px solid #74747626;border-radius:14px;padding:0 26px}
.sensor-faq summary{list-style:none;font-size:18px;font-weight:700;padding:20px 0;display:flex;justify-content:space-between;gap:20px;align-items:center}
.sensor-faq summary::-webkit-details-marker{display:none}
.sensor-faq summary:after{content:"+";color:var(--orange);font-size:24px;line-height:1}
.sensor-faq details[open] summary:after{content:"–"}
.sensor-faq details p{margin:0;padding-bottom:22px;font-size:16px}
.sensor-note{padding-block:0 50px}
.sensor-note p{font-size:14px;line-height:1.6;color:var(--muted);max-width:900px;margin-bottom:12px}
.eco-grid-wrap{padding-block:20px 50px}
@media(max-width:900px){
 .sensor-why,.sensor-catalog-teaser,.sensor-detail{grid-template-columns:minmax(0,1fr)}
 .sensor-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
 .sensor-mode-grid{grid-template-columns:minmax(0,1fr)}
 .sensor-level-list li{gap:14px;padding:22px 20px}
 .sensor-why h2{font-size:28px}
 .sensor-detail-specs dl div{flex-direction:column;gap:4px}
 .sensor-detail-specs dd{text-align:left}
}
/* Augmented Reality: eigener, deutlich sichtbarer Block */
.product-ar.ar-panel{border-top:0;background:linear-gradient(160deg,#241a0c,#1a1a1d 62%);border:1px solid #f18e0059;border-radius:20px;padding:clamp(24px,3vw,40px);scroll-margin-top:110px}
.ar-panel .eyebrow{color:var(--orange)}
.ar-cta{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px}
.ar-cta .ar-quicklook{flex:0 0 auto;position:relative;width:min(340px,100%)}
.ar-cta .ar-quicklook img{width:100%}
.ar-cta .ar-quicklook:after{content:"";position:absolute;right:12px;bottom:12px;width:44px;height:44px;border-radius:50%;background:var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171719' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8V4h4M21 8V4h-4M3 16v4h4M21 16v4h-4'/%3E%3Cpath d='M12 7.6 7.6 10v4.8L12 17.2l4.4-2.4V10L12 7.6Z'/%3E%3Cpath d='m7.6 10 4.4 2.4L16.4 10M12 12.4v4.8'/%3E%3C/svg%3E") center/24px no-repeat;box-shadow:0 6px 18px #00000059}
.ar-button{gap:10px;min-height:56px;font-size:18px;padding:15px 28px;box-shadow:0 12px 34px #f18e0038}
.ar-button .icon{width:22px;height:22px;stroke-width:2}
.ar-jump{display:inline-flex;gap:8px;min-height:44px;padding:10px 20px;font-size:16px;box-shadow:0 10px 26px #00000066}
.ar-jump .icon{width:20px;height:20px;stroke-width:2}
@media(max-width:700px){
 .ar-cta{gap:18px}
 .ar-cta .ar-quicklook,.ar-cta .ar-button{width:100%}
 .ar-cta .ar-quicklook img{width:100%}
 .ar-button{font-size:18px}
}
/* Gepflegte Projektzahlen (zum Beispiel „75+ Sportplätze“) statt der gezählten Einträge */
.fw-claims{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 40px}
.fw-claims>div{display:flex;flex-direction:column}
.fw-claims strong{display:flex;align-items:baseline;font-size:clamp(56px,7.5vw,96px);line-height:.9;letter-spacing:-3px;color:var(--orange);font-variant-numeric:tabular-nums;text-shadow:0 6px 40px #000}
.fw-claims strong small{font-size:.5em;letter-spacing:-1px}
.fw-claims>div>span{font-size:18px;font-weight:700;color:#f1f1f3;margin-top:4px}
.fw-claims-note{flex-basis:100%;font-size:14px;color:var(--muted);max-width:420px}
@media(max-width:700px){
 .fw-claims{gap:12px 28px}
 .fw-claims strong{font-size:52px;letter-spacing:-2px}
 .fw-claims>div>span{font-size:16px}
 .fw-claims-note{font-size:13px}
}
/* Rechengrundlage unter dem Einsparbanner */
.impact-basis{display:inline-block;font-size:16px;font-weight:700;color:#f7f7f8;background:#171719;border-radius:24px;padding:10px 22px;margin:34px 0 16px}
/* Produktfinder: was mit der Anfrage mitgeschickt wird, steht sichtbar im Formular */
.finder-summary{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0}
.finder-summary li{background:#17171914;border:1px solid #17171933;border-radius:20px;padding:7px 14px;font-size:14px;font-weight:700;color:#171719}
.finder-form-copy h3{font-size:28px;margin-bottom:8px}
.finder-form-copy p{color:#171719cc;margin-bottom:0;max-width:640px}
/* 3D-Bühne: eingeblendete Maße wechseln beim Scrollen, ohne das Layout zu verschieben */
.product-stage-3d .stage-facts{position:absolute;left:0;right:0;bottom:2px;display:grid;justify-items:center;pointer-events:none;z-index:4}
.product-stage-3d .stage-fact{grid-area:1/1;display:flex;align-items:baseline;gap:12px;font-size:20px;font-weight:700;color:#f1f1f3;white-space:nowrap;background:#111113d9;border:1px solid #74747640;border-radius:24px;padding:8px 20px;opacity:0;transform:translateY(8px);transition:opacity .55s var(--ease-out,ease),transform .55s var(--ease-out,ease)}
.product-stage-3d .stage-fact b{font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
.product-stage-3d .stage-fact.is-on{opacity:1;transform:none}
@media(max-width:700px){
 .product-stage-3d .stage-fact{font-size:16px;gap:8px;padding:7px 16px}
 .product-stage-3d .stage-fact b{font-size:12px;letter-spacing:1px}
}
@media(prefers-reduced-motion:reduce){.product-stage-3d .stage-fact{transition:none}}
/* Dunkle Leuchten brauchen einen helleren Grund, sonst verschwinden sie im schwarzen Hintergrund */
.product-stage-3d .story-glow{inset:6% 10% 4%;z-index:0;background:radial-gradient(ellipse at 50% 48%,#41414a 0%,#25252b 42%,transparent 72%);filter:blur(30px);opacity:.9}
.product-stage-3d model-viewer.product-model{position:relative;z-index:1}
/* 3D-Visualisierung „Wärmeschichtung“ (eigene Seite im Rahmen) */
.heat-viz{padding-block:20px 60px}
.heat-viz p{margin-bottom:28px}
.heat-viz iframe{display:block;width:100%;height:780px;border:0;border-radius:24px;background:#111113;overflow:hidden}
@media(max-width:700px){.heat-viz iframe{border-radius:18px}}
/* Notbeleuchtung: eigener Bereich */
.not-terms,.not-lux,.not-systems,.emergency-demo,.pruefplan{padding-block:20px 50px}
.not-term-grid,.not-system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.not-term-grid article,.not-system-grid article{background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:28px}
.not-term-grid h3,.not-system-grid h3{font-size:24px}
.not-term-grid p,.not-system-grid p{font-size:16px;margin-bottom:10px}
.not-term-grid p:last-child,.not-system-grid p:last-child{margin-bottom:0}
.not-system-lead{color:#f1f1f3!important;font-weight:700}
.not-lux{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 48px;align-items:center}
.lux-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lux-list li{display:flex;align-items:baseline;gap:20px;background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:20px 24px}
.lux-list strong{font-size:36px;line-height:1;color:var(--orange);letter-spacing:-1px;min-width:86px;font-variant-numeric:tabular-nums}
.lux-list span{font-size:16px;color:var(--muted)}
.emergency-demo .ed-scene{margin-top:8px}
.emergency-demo .scene-controls{margin-top:18px}
.pruefplan{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 48px;align-items:start;background:var(--surface);border:1px solid #74747626;border-radius:24px;padding:clamp(24px,3vw,40px);margin-bottom:60px}
.pp-range{display:block;margin-bottom:18px}
.pp-range span,.pruefplan label>span{display:flex;justify-content:space-between;gap:16px;font-size:16px;font-weight:700;margin-bottom:8px}
.pruefplan input[type=range]{width:100%}
.pruefplan select{width:100%;min-height:48px;background:#202024;color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:0 14px;font-size:16px}
.pp-plan ul{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:10px}
.pp-plan li{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;background:#1a1a1e;border:1px solid #74747626;border-radius:14px;padding:16px 20px}
.pp-plan b{font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--orange)}
.pp-plan span{font-size:16px;color:var(--muted);grid-column:1/-1}
.pp-plan i{font-style:normal;font-weight:700;font-size:16px;grid-column:1/-1}
.pp-total{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:18px;margin-bottom:16px}
.pp-total strong{font-size:40px;color:var(--orange);letter-spacing:-1px;font-variant-numeric:tabular-nums}
.pp-auto{font-size:16px;margin-bottom:18px}
@media(max-width:900px){
 .not-term-grid,.not-system-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .not-lux,.pruefplan{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:600px){
 .not-term-grid,.not-system-grid{grid-template-columns:minmax(0,1fr)}
 .lux-list li{flex-direction:column;gap:6px}
 .lux-list strong{font-size:32px}
 .pp-total strong{font-size:32px}
}
/* Notbeleuchtung: Argumente, Hersteller, Vergleich manuell gegen App */
.not-why,.not-maker{padding-block:20px 50px}
.not-why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.not-why-grid article{background:linear-gradient(160deg,#241a0c,#1a1a1d 62%);border:1px solid #f18e0040;border-radius:16px;padding:26px}
.not-why-tag{display:block;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--orange);margin-bottom:14px}
.not-why-grid h3{font-size:22px;margin-bottom:10px}
.not-why-grid p{font-size:16px;margin-bottom:0}
.not-maker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 48px;align-items:center}
.maker-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.maker-list li{background:var(--surface);border:1px solid #74747626;border-radius:16px;padding:20px 22px}
.maker-list strong{display:block;font-size:18px;color:var(--orange);margin-bottom:4px}
.maker-list span{font-size:14px;color:var(--muted)}
.pp-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 16px}
.pp-compare>div{background:#1a1a1e;border:1px solid #74747626;border-radius:16px;padding:18px 20px}
.pp-compare>div.is-ours{background:linear-gradient(160deg,#241a0c,#1a1a1d 62%);border-color:#f18e0059}
.pp-compare span{display:block;font-size:14px;font-weight:700;color:var(--muted);margin-bottom:6px}
.pp-compare strong{display:block;font-size:36px;line-height:1;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.pp-compare .is-ours strong{color:var(--orange)}
.pp-compare small{display:block;font-size:14px;color:var(--muted);margin-top:6px}
@media(max-width:1000px){.not-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.not-maker{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){
 .not-why-grid,.maker-list,.pp-compare{grid-template-columns:minmax(0,1fr)}
 .pp-compare strong{font-size:30px}
}
/* Notbeleuchtung: rechtliche Absicherung */
.not-proof{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px 48px;align-items:start;padding-block:20px 50px}
.not-proof .button{margin-top:6px}
.proof-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.proof-list li{background:var(--surface);border:1px solid #74747626;border-left:3px solid var(--orange);border-radius:14px;padding:20px 24px}
.proof-list strong{display:block;font-size:18px;margin-bottom:6px}
.proof-list span{font-size:16px;color:var(--muted)}
.not-proof .fine{grid-column:1/-1;margin:0}
@media(max-width:900px){.not-proof{grid-template-columns:minmax(0,1fr)}}
/* Handy: Der Text auf dem Bühnenbild braucht mehr Grund unter sich, sonst verschwimmt er im Foto */
@media(max-width:700px){
 .world-shade{background:linear-gradient(0deg,#0e0e10 0%,#0e0e10f7 34%,#0e0e10d6 54%,#0e0e1080 72%,#0e0e1026 86%,transparent 96%)}
 .world-image{object-position:50% 34%}
 .world-content h2,.world-content .eyebrow{text-shadow:0 2px 18px #0e0e1099}
}

/* ---- Produktseite: Trennstrich und Sensorik unter den Leuchten ---- */
.catalog-divider{width:min(1320px,100% - 40px);margin:16px auto 0;border:0;border-top:1px solid var(--line)}
.catalog-sensors{padding-top:34px}
.catalog-sensors-head{max-width:720px;margin-bottom:34px}
.catalog-sensors-head h2{font-size:clamp(30px,3.6vw,42px);margin:6px 0 14px}
.catalog-sensors-head p{margin:0;color:var(--muted)}
.catalog-sensors .sensor-empty{color:var(--muted)}
.catalog-sensors>.text-link{display:inline-block;margin-top:26px}
@media(max-width:600px){
 .catalog-divider{width:calc(100% - 32px)}
 .catalog-sensors-head{margin-bottom:26px}
}

/* ---- Sensora: Bilder und Film aus der App ---- */
.sensora-media img{width:100%;height:100%;object-fit:contain;display:block;background:#0e0e10}
.sensora-film{padding-block:20px 10px;max-width:1000px}
.sensora-film h2{font-size:clamp(30px,3.8vw,46px);margin:6px 0 16px}
.sensora-film>p{color:var(--muted);max-width:720px;margin:0 0 30px}
.sensora-video{margin:0}
.sensora-video video{width:100%;height:auto;display:block;border-radius:16px;border:1px solid var(--line);background:#0e0e10}
.sensora-video figcaption{margin-top:14px;font-size:14px;color:var(--muted)}
.sensora-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-block:60px 30px}
.sensora-fact{padding:30px;background:var(--surface);border:1px solid var(--line);border-radius:16px}
.sensora-fact h3{font-size:26px;margin:8px 0 12px}
.sensora-fact p{margin:0;color:var(--muted);font-size:17px}
.sensora-fact .text-link{display:inline-block;margin-top:18px}
.sensora-platform{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-block:50px 20px}
.sensora-platform h2{font-size:clamp(30px,3.8vw,46px);margin:6px 0 16px}
.sensora-platform p{color:var(--muted);margin-bottom:26px}
.sensora-platform-art img,.sensora-card-art img{width:100%;height:auto;display:block;border-radius:14px;border:1px solid var(--line)}
@media(max-width:820px){
 .sensora-facts{grid-template-columns:1fr;padding-block:40px 20px;gap:18px}
 .sensora-platform{grid-template-columns:1fr;gap:26px}
 .sensora-fact{padding:24px}
}

/* ---- Zeilenumbrüche: lange deutsche Wörter dürfen nirgends herauslaufen ---- */
h1,h2,h3{text-wrap:balance}
main p{text-wrap:pretty}
/* Auf schmalen Geräten trennen statt überstehen – die Seite ist auf Deutsch ausgezeichnet. */
@media(max-width:700px){
 h1,h2,h3{hyphens:auto;overflow-wrap:break-word}
 .use-cases span,.chips button,.stage-fact,.card-badge{overflow-wrap:break-word;hyphens:auto}
}

/* ---- Simulationen: Übersicht mit einer Zeichnung je Bereich ---- */
.sim-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;padding-bottom:20px}
.sim-tile{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:border-color .2s ease,transform .2s ease}
a.sim-tile:hover{border-color:#f18e0080;transform:translateY(-2px)}
.sim-art{display:block;background:linear-gradient(160deg,#f18e0014,#111113);padding:22px 24px 10px}
.sim-art svg{width:100%;height:auto;display:block}
.sim-art .l{stroke:var(--orange);stroke-width:4;stroke-linecap:round}
.sim-art .g{stroke:#8a8a90;stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.sim-art .b{fill:#2a2a2e;stroke:#8a8a90;stroke-width:2}
.sim-art .d{fill:#f18e0055}
.sim-art .d2{fill:var(--orange)}
.sim-copy{padding:20px 24px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.sim-copy strong{font-size:22px;line-height:1.25}
.sim-copy .text-link{margin-top:auto}
.sim-tile.is-soon{opacity:.6}
.sim-soon{margin-top:auto;font-size:14px;font-weight:700;color:var(--muted)}

/* ---- Einsparrechner: Auswahlfelder im Stil der Seite statt Systemoptik ---- */
.quick-form select{
 width:100%;min-height:48px;padding:12px 44px 12px 14px;border-radius:12px;border:1px solid var(--line);
 background:#141417 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f18e00' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/18px;
 color:var(--ink);font:inherit;font-size:16px;appearance:none;-webkit-appearance:none;cursor:pointer}
.quick-form select:hover,.quick-form input[type=number]:hover{border-color:#f18e0080}
.quick-form select:focus-visible,.quick-form input:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.quick-form input[type=number]{font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}
.quick-form input[type=number]::-webkit-outer-spin-button,
.quick-form input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* Die Notlicht-Demo zeigt einen dunklen Flur. Füllt sie den ganzen Bildschirm, wirkt das beim
   Scrollen wie ein Schwarzbild – deshalb bleibt immer Umgebung sichtbar. */
.emergency-demo .sector-scene{max-height:min(52vh,460px)}
.emergency-demo .sector-scene img{object-fit:cover}
