@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#101110;--surface:#171917;--surface-2:#1d201e;--surface-3:#252925;--text:#f1f0eb;--muted:#a5a59f;--line:#363a36;--purple:#a444ff;--purple-2:#762bdf;--orange:#ff623b;--green:#a9d96f;--shadow:0 24px 80px #0008;--header:rgba(16,17,16,.88);--map:#d9dfd7;font-family:Manrope,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}html[data-theme="light"]{color-scheme:light;--bg:#f1f0ec;--surface:#fffefa;--surface-2:#f6f4ef;--surface-3:#e9e6e0;--text:#181918;--muted:#5f625e;--line:#d3d1cb;--purple:#7025c9;--purple-2:#5d1cb6;--orange:#e34d2c;--green:#5c8e38;--shadow:0 20px 70px #28231c1c;--header:rgba(241,240,236,.9)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh;transition:background .25s,color .25s}button,a,input{font:inherit}button,a{color:inherit}a{text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.skip-link{position:absolute;top:-80px;left:16px;z-index:100;background:var(--orange);color:#fff;padding:12px}.skip-link:focus{top:10px}.site-header{height:74px;position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:28px;padding:0 max(30px,calc((100vw - 1520px)/2));background:var(--header);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:10px;flex:0 0 194px}.brand img{image-rendering:pixelated;object-fit:contain}.brand strong,.brand small{display:block}.brand strong{font:800 18px/.9 'Barlow Condensed',sans-serif;letter-spacing:.08em}.brand small{font:9px/1.4 'DM Mono',monospace;letter-spacing:.14em;color:var(--muted);margin-top:5px}.main-nav{display:flex;align-items:center;justify-content:center;gap:clamp(10px,1.25vw,24px);flex:1;height:100%}.main-nav a{height:100%;display:flex;align-items:center;position:relative;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--text)}.main-nav a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:16px;height:2px;background:var(--orange);box-shadow:0 0 13px var(--orange)}.header-actions{display:flex;align-items:center;gap:9px}.icon-button,.menu-toggle{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--surface);font-size:20px;display:grid;place-items:center}.icon-button:hover,.menu-toggle:hover{border-color:var(--purple)}.mode-switch{display:flex;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface);gap:2px}.mode-switch button{border:0;background:transparent;border-radius:6px;padding:6px 9px;color:var(--muted);font:10px 'DM Mono',monospace;text-transform:uppercase}.mode-switch button[aria-pressed="true"]{background:var(--surface-3);color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}.mode-switch [data-theme-choice="dark"][aria-pressed="true"]{color:#d5a6ff}.mode-switch [data-theme-choice="light"][aria-pressed="true"]{color:#ff764e}.discovery-switch [data-mode-choice="discover"][aria-pressed="true"]{color:#d5a6ff;background:color-mix(in srgb,var(--purple) 20%,var(--surface))}.mode-switch span{margin-left:4px}.menu-toggle{display:none}.mobile-nav{display:none}.site-footer{max-width:1520px;margin:70px auto 0;padding:24px 30px 28px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font:9px 'DM Mono',monospace;letter-spacing:.08em}.small-brand{flex:0}.small-brand strong{font-size:14px}.small-brand small{font-size:8px}.nodes-rail{position:fixed;right:16px;top:36%;z-index:25}.nodes-tab{width:52px;min-height:136px;border:1px solid var(--purple);background:var(--surface);box-shadow:0 0 22px color-mix(in srgb,var(--purple) 20%,transparent);border-radius:9px;display:flex;align-items:center;justify-content:center;gap:13px;flex-direction:column}.nodes-tab>span:last-child{writing-mode:vertical-rl;font:11px 'DM Mono',monospace;letter-spacing:.16em}.node-lights{display:grid;gap:7px}.node-lights i,.node-dot{width:10px;height:10px;border-radius:50%;display:block;background:var(--purple);box-shadow:0 0 10px currentColor}.node-lights i:nth-child(2){background:#a9a9a0;box-shadow:none}.node-lights i:nth-child(3){background:var(--orange)}.nodes-panel{position:fixed;right:78px;top:36%;z-index:40;width:330px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.nodes-head,.search-title{display:flex;align-items:center;justify-content:space-between}.eyebrow{font:10px 'DM Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}.node-link{display:grid;grid-template-columns:12px 1fr 16px;gap:12px;align-items:center;padding:15px 9px;border-bottom:1px solid var(--line);font-size:12px}.node-link:hover,.node-link.active{background:var(--surface-2)}.node-link b,.node-link small{display:block}.node-link small{color:var(--muted);font-size:10px;margin-top:4px}.node-dot{background:var(--green);width:8px;height:8px}.node-dot.purple{background:var(--purple)}.node-dot.orange{background:var(--orange)}.nodes-panel>p{color:var(--muted);font-size:10px;line-height:1.6;margin:14px 4px 2px}.search-overlay{position:fixed;inset:0;z-index:70;background:#050606b8;display:grid;place-items:start center;padding:13vh 16px 30px;backdrop-filter:blur(8px)}.search-dialog{width:min(620px,100%);padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.search-dialog input{width:100%;margin:18px 0 8px;padding:14px 15px;background:var(--bg);border:1px solid var(--line);border-radius:9px;color:var(--text)}.search-results{display:grid;gap:5px}.search-results a{padding:11px 12px;border-radius:8px;display:flex;justify-content:space-between;background:var(--surface-2);font-size:12px}.search-results a:hover{box-shadow:inset 0 0 0 1px var(--purple)}.search-hint{color:var(--muted);font:9px 'DM Mono',monospace;margin:15px 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}main{overflow:hidden}.page-shell{max-width:1520px;margin:0 auto;padding:0 30px}.section-kicker{display:flex;align-items:center;gap:10px;color:var(--orange);font:10px 'DM Mono',monospace;letter-spacing:.18em;text-transform:uppercase}.section-kicker:before{content:"";width:8px;height:8px;background:var(--orange);display:block}.display-title{font:800 clamp(43px,7vw,104px)/.86 'Barlow Condensed',sans-serif;letter-spacing:-.035em;text-transform:uppercase;margin:18px 0 20px;max-width:850px}.display-title em{font-style:normal;color:var(--purple)}.lead{max-width:630px;color:var(--muted);font-size:clamp(14px,1.3vw,18px);line-height:1.65}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 17px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:700 10px 'DM Mono',monospace;letter-spacing:.07em;text-transform:uppercase;transition:transform .18s,border .18s,background .18s}.button:hover{transform:translateY(-2px);border-color:var(--purple)}.button.primary{background:linear-gradient(115deg,var(--purple-2),var(--purple));color:#fff;border-color:transparent;box-shadow:0 7px 25px color-mix(in srgb,var(--purple) 22%,transparent)}.button.signal{border-color:var(--orange);color:var(--orange)}.button.small{min-height:34px;padding:0 12px;font-size:9px}.section{padding:72px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.section-heading h2,.content-title{font:700 clamp(28px,4vw,48px)/.98 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:10px 0 0;letter-spacing:-.02em}.section-heading p{max-width:460px;color:var(--muted);font-size:12px;line-height:1.65;margin:0}.hero{min-height:650px;padding-top:34px;display:grid;grid-template-columns:minmax(330px,.75fr) minmax(520px,1.25fr);gap:28px;align-items:center;position:relative}.hero:before{content:"";position:absolute;inset:0 -8vw;background-image:linear-gradient(90deg,var(--bg) 4%,transparent 60%),url("data:image/svg+xml,%3Csvg width='160' height='160' viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23772bbb' stroke-opacity='.22' stroke-width='1'%3E%3Cpath d='M-10 38c35 0 29-23 62-23s24 38 58 38 26-30 65-30M-10 74c32 0 31-19 62-19s25 31 58 31 32-26 65-26M-10 112c36 0 27-19 61-19s28 37 59 37 29-22 66-22M32-10c0 32 23 30 23 61s-24 32-24 63 16 25 16 58M104-10c0 27-21 32-21 60s29 29 29 64-18 28-18 56'/%3E%3C/g%3E%3C/svg%3E");opacity:.7;pointer-events:none;mask-image:linear-gradient(90deg,#000 0,transparent 95%)}.hero-copy,.hero-art{position:relative;z-index:1}.hero-copy{padding:44px 0 48px}.hero .display-title{font-size:clamp(62px,8.7vw,128px);max-width:700px;margin:22px 0}.hero .lead{max-width:510px}.hero .stat-row{display:flex;gap:0;margin-top:34px;max-width:500px}.stat{padding:0 22px;border-left:1px solid var(--line)}.stat:first-child{padding-left:0;border:0}.stat b{display:block;font:700 31px/.9 'Barlow Condensed',sans-serif}.stat small{display:block;color:var(--muted);font:9px 'DM Mono',monospace;letter-spacing:.13em;margin-top:8px;text-transform:uppercase}.hero-art{min-height:500px;display:grid;place-items:center;perspective:1200px}.terrain-lines{position:absolute;inset:5% 0;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--purple) 13%,transparent),transparent 64%);border:1px solid color-mix(in srgb,var(--purple) 26%,transparent);border-radius:50%;transform:rotate(-12deg) scaleX(1.2)}.terrain-lines:before,.terrain-lines:after{content:"";position:absolute;inset:10% 4%;border:1px solid color-mix(in srgb,var(--purple) 18%,transparent);border-radius:50%}.terrain-lines:after{inset:20% 9%}.device-hero{width:min(400px,74%);aspect-ratio:.7;border-radius:34px;padding:15px;background:linear-gradient(145deg,#545b54,#111412 35%,#252a26 72%,#060706);border:1px solid #777d72;box-shadow:28px 40px 90px #000a,inset 0 2px 2px #fff4;transform:rotate(5deg) rotateY(-14deg);position:relative}.device-hero:before{content:"";position:absolute;top:15px;left:50%;width:54px;height:6px;background:#080909;border-radius:9px;transform:translateX(-50%)}.device-hero-screen{position:absolute;inset:34px 17px 116px;border:6px solid #080a09;border-radius:8px;background:linear-gradient(145deg,#dedfc8,#aab7a1 48%,#d9d8bd);overflow:hidden;display:grid;place-items:center}.device-hero-screen:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(28deg,transparent 0 28px,#fffffb4b 29px 30px,transparent 31px 52px),repeating-linear-gradient(112deg,transparent 0 44px,#84947c4c 45px 47px,transparent 48px 72px)}.map-labels{position:absolute;inset:8px;display:flex;align-items:center;justify-content:space-around;flex-direction:column;font:700 11px 'DM Mono',monospace;color:#253029;text-shadow:0 1px #fff}.device-hero-screen img{z-index:1;width:51px;height:auto;image-rendering:pixelated;filter:drop-shadow(0 2px 3px #0008)}.device-hero-buttons{position:absolute;top:calc(100% - 107px);left:27px;right:27px;display:flex;gap:8px}.device-hero-buttons i{height:17px;flex:1;border-radius:4px;background:linear-gradient(#3b2419,#110e0c);border:1px solid #76452a;box-shadow:inset 0 1px #ff9b5638}.device-hero-ball{position:absolute;bottom:59px;left:50%;width:34px;height:34px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle at 35% 25%,#ffad69,#412211 60%,#0d0d0c 70%);border:2px solid #5d3925}.device-keyboard{position:absolute;bottom:13px;left:24px;right:24px;height:49px;display:grid;grid-template-columns:repeat(10,1fr);gap:3px}.device-keyboard i{border-radius:3px;border:1px solid #3e4140;background:linear-gradient(#2b2e2d,#101211);box-shadow:0 2px 2px #000;font-size:0}.floating-label{position:absolute;border:1px solid var(--line);background:var(--surface);padding:9px 11px;border-radius:7px;font:10px 'DM Mono',monospace;box-shadow:var(--shadow)}.floating-label.a{left:0;top:18%;color:var(--green)}.floating-label.b{right:-1%;bottom:18%;color:var(--orange)}.orbit-mark{position:absolute;width:42px;height:50px;image-rendering:pixelated;filter:drop-shadow(0 0 14px var(--purple))}.orbit-mark.one{top:16%;right:14%;transform:rotate(12deg)}.orbit-mark.two{bottom:14%;left:8%;width:26px;height:28px;opacity:.72}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.feature-card,.resource-card,.story-card,.fact-card,.tool-card,.hotspot-card,.model-card{border:1px solid var(--line);background:var(--surface);border-radius:11px;overflow:hidden;transition:transform .2s,border .2s,box-shadow .2s}.feature-card:hover,.resource-card:hover,.story-card:hover,.tool-card:hover,.model-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--purple) 70%,var(--line));box-shadow:0 14px 34px #0003}.card-art{height:145px;position:relative;overflow:hidden;background:linear-gradient(135deg,#302b38,#121614)}.card-art::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 25%,color-mix(in srgb,var(--purple) 55%,transparent),transparent 35%),linear-gradient(145deg,transparent 35%,#0008)}.card-art.map-art{background:linear-gradient(135deg,#ced4c4,#9ca995 70%,#687464)}.card-art.mesh-art{background:radial-gradient(circle at 50% 55%,#ff6b39 0 2px,transparent 3px),radial-gradient(circle at 34% 28%,#ad4dff 0 3px,transparent 4px),radial-gradient(circle at 72% 23%,#ad4dff 0 3px,transparent 4px),linear-gradient(30deg,transparent 48%,#a444ff 49% 49.5%,transparent 50%),linear-gradient(150deg,transparent 48%,#a444ff 49% 49.5%,transparent 50%),#19191b;background-size:auto,auto,auto,80px 80px,120px 120px,auto}.card-art.device-art{background:radial-gradient(ellipse at 50% 70%,#522f29,transparent 48%),linear-gradient(145deg,#322c2a,#111)}.card-art.note-art{background:repeating-linear-gradient(30deg,#b39a70 0 1px,#302b22 1px 9px),linear-gradient(#211e18,#33291b)}.card-art img{position:absolute;width:35px;right:16px;top:15px;image-rendering:pixelated}.card-art .art-stamp{position:absolute;left:17px;bottom:13px;font:10px 'DM Mono',monospace;letter-spacing:.1em;color:#fff}.feature-copy{padding:15px}.feature-copy h3,.card-title{font:700 21px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0 0 7px}.feature-copy p,.card-copy{margin:0;color:var(--muted);font-size:11px;line-height:1.65}.feature-copy .arrow{display:flex;justify-content:space-between;margin-top:18px;color:var(--purple);font:10px 'DM Mono',monospace;text-transform:uppercase}.split-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:22px}.panel h3{margin:0 0 10px;font:700 25px 'Barlow Condensed',sans-serif;text-transform:uppercase}.panel p,.panel li{font-size:12px;line-height:1.75;color:var(--muted)}.panel ul{padding-left:18px}.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.fact-card{padding:17px}.fact-card strong{display:block;font:700 27px 'Barlow Condensed',sans-serif}.fact-card span{font:9px 'DM Mono',monospace;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.status-tag{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:6px 9px;font:9px 'DM Mono',monospace;color:var(--muted)}.status-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green)}.status-tag.pending:before{background:var(--orange)}.page-hero{padding:74px 0 38px;position:relative}.page-hero:after{content:"";position:absolute;right:0;top:28px;width:35%;height:220px;background:radial-gradient(ellipse,color-mix(in srgb,var(--purple) 17%,transparent),transparent 65%);pointer-events:none}.page-hero>*{position:relative;z-index:1}.page-hero .display-title{font-size:clamp(54px,8vw,106px)}.map-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:15px;padding-bottom:35px}.map-frame{height:590px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#d8dfd5;position:relative}.map-topbar{position:absolute;top:12px;left:12px;right:12px;z-index:500;display:flex;justify-content:space-between;gap:8px;pointer-events:none}.map-topbar>*{pointer-events:auto}.map-topbar .map-chip{padding:9px 11px;border-radius:7px;border:1px solid #26302b;background:#171d1bdc;color:#fff;font:9px 'DM Mono',monospace;backdrop-filter:blur(5px)}.map-topbar button{cursor:pointer}.map-legend{position:absolute;z-index:500;left:12px;bottom:12px;padding:11px 13px;border:1px solid #26302b;border-radius:8px;background:#171d1be8;color:#fff;font:9px 'DM Mono',monospace}.map-legend span{display:flex;align-items:center;gap:7px;margin:4px}.map-legend img{width:16px;height:18px;image-rendering:pixelated}.map-sidebar{display:flex;flex-direction:column;gap:12px}.map-sidebar .panel{padding:18px}.observation-count{font:700 42px/.9 'Barlow Condensed',sans-serif;color:var(--purple)}.observation-list{display:grid;gap:8px;margin-top:12px}.observation-empty{padding:16px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:11px;line-height:1.6}.explore-mode-banner{display:flex;gap:12px;align-items:center;padding:13px;border-radius:9px;background:color-mix(in srgb,var(--purple) 13%,var(--surface));border:1px solid color-mix(in srgb,var(--purple) 38%,var(--line));font-size:11px;line-height:1.6}.explore-mode-banner img{width:27px;height:32px;image-rendering:pixelated}.leaflet-container{font-family:Manrope,system-ui,sans-serif}#exploreMap{position:absolute;inset:0;z-index:1}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#171d1b;color:#f1f0eb}.leaflet-control-attribution{font:9px 'DM Mono',monospace}.map-note-icon{image-rendering:pixelated}.pack-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);gap:26px;align-items:center}.pack-stage{min-height:600px;position:relative;display:grid;place-items:center;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--purple) 12%,var(--surface)),var(--bg) 68%)}.pack-stage:before{content:"";position:absolute;inset:-20%;opacity:.55;background-image:radial-gradient(ellipse at center,transparent 25%,var(--line) 25.2%,transparent 25.5%,transparent 33%,var(--line) 33.2%,transparent 33.5%,transparent 42%,var(--line) 42.2%,transparent 42.5%);transform:rotate(-16deg)}.pack-illustration{width:min(430px,67%);height:470px;position:relative;z-index:1;filter:drop-shadow(18px 24px 24px #0009)}.pack-body{position:absolute;inset:4% 13% 0;border-radius:29% 29% 17% 17% / 16% 16% 11% 11%;background:linear-gradient(95deg,#111513,#343a34 22%,#1b201c 52%,#3a3f39 76%,#101310);border:2px solid #55594f;box-shadow:inset 0 0 0 10px #1113,inset 18px 0 18px #fff1}.pack-flap{position:absolute;left:18%;right:18%;top:4%;height:24%;border-radius:38% 38% 15% 15%;background:linear-gradient(130deg,#303630,#111512 50%,#42473e);border:2px solid #4a5048}.pack-pocket{position:absolute;left:25%;right:25%;top:35%;height:31%;border-radius:16px;background:linear-gradient(130deg,#343a34,#171b18);border:1px solid #50554d}.pack-pocket:before{content:"FIELD KIT";position:absolute;left:0;right:0;top:24px;text-align:center;color:#b9a8cc;font:14px 'DM Mono',monospace;letter-spacing:.12em}.pack-straps{position:absolute;top:17%;bottom:8%;width:8%;background:linear-gradient(90deg,#161a17,#51564e,#191d1a);border:1px solid #65685d;border-radius:8px}.pack-straps.left{left:23%}.pack-straps.right{right:23%}.pack-pouch{position:absolute;bottom:6%;width:23%;height:23%;border-radius:10px;background:linear-gradient(125deg,#353a34,#111512);border:1px solid #585e54}.pack-pouch.left{left:6%}.pack-pouch.right{right:6%}.pack-anchor{position:absolute;z-index:3;width:26px;height:26px;border-radius:50%;border:2px solid var(--purple);background:#141016;color:#fff;box-shadow:0 0 0 5px color-mix(in srgb,var(--purple) 28%,transparent),0 0 17px var(--purple);display:grid;place-items:center;font:12px 'DM Mono',monospace}.pack-anchor:hover,.pack-anchor[aria-pressed="true"]{background:var(--purple);transform:scale(1.1)}.pack-anchor[data-gear="tdeck"]{left:50%;top:44%}.pack-anchor[data-gear="heltec"]{left:70%;top:60%}.pack-anchor[data-gear="sd"]{left:34%;top:67%}.pack-anchor[data-gear="notes"]{left:46%;top:81%}.hotspot-label{position:absolute;z-index:2;padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);font:9px 'DM Mono',monospace;color:var(--text)}.hotspot-label.one{left:2%;top:37%}.hotspot-label.two{right:3%;top:55%}.hotspot-label.three{left:4%;bottom:20%}.hotspot-label.four{right:2%;bottom:17%}.hotspot-card{padding:24px;min-height:258px}.hotspot-card .eyebrow{display:block;margin-bottom:12px}.hotspot-card h2{font:700 37px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0 0 12px}.hotspot-card p{font-size:12px;line-height:1.75;color:var(--muted)}.hotspot-card .detail-note{padding-top:13px;border-top:1px solid var(--line);font:9px 'DM Mono',monospace;color:var(--green)}.model-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:20px}.model-stage{min-height:500px;border:1px solid var(--line);border-radius:14px;background:radial-gradient(ellipse at 50% 55%,#573e2855,transparent 45%),linear-gradient(145deg,var(--surface-3),var(--bg));display:grid;place-items:center;perspective:900px;overflow:hidden;position:relative}.model-grid{position:absolute;bottom:-22%;width:120%;height:52%;background:linear-gradient(transparent,#a444ff17),repeating-linear-gradient(90deg,transparent 0 39px,#a444ff27 40px),repeating-linear-gradient(0deg,transparent 0 39px,#a444ff27 40px);transform:rotateX(68deg)}.case-model{width:210px;height:340px;border-radius:29px;padding:13px;position:relative;transform-style:preserve-3d;transform:rotateX(-11deg) rotateY(-18deg);transition:transform .15s ease-out;cursor:grab;background:linear-gradient(90deg,#111513,#495044 18%,#262c25 45%,#141815);border:2px solid #757563;box-shadow:23px 28px 38px #0008,inset 4px 0 #c3c49b22}.case-model:active{cursor:grabbing}.case-screen{position:absolute;left:12%;right:12%;top:11%;height:38%;border:8px solid #090b0a;border-radius:6px;background:linear-gradient(150deg,#d9dfc9,#a6b69f);display:grid;place-items:center;color:#26372c;font:10px 'DM Mono',monospace}.case-screen img{width:26px;image-rendering:pixelated}.case-keys{position:absolute;left:13%;right:13%;bottom:9%;display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.case-keys i{height:16px;border:1px solid #74766a;border-radius:3px;background:linear-gradient(#454940,#171b18);box-shadow:0 2px #090b0a}.case-model:before{content:"T-DECK / CASE STUDY";position:absolute;left:0;right:0;bottom:-27px;text-align:center;font:9px 'DM Mono',monospace;letter-spacing:.1em;color:var(--muted)}.model-options{display:grid;gap:11px}.model-card{padding:18px}.model-card h3{font:700 24px 'Barlow Condensed',sans-serif;margin:0 0 8px;text-transform:uppercase}.model-card p{color:var(--muted);font-size:11px;line-height:1.6;margin:0}.simulator-wrap{display:grid;grid-template-columns:1fr minmax(250px,.52fr);gap:14px;padding-bottom:48px}.simulator-frame{height:760px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#080a0a}.simulator-frame iframe{width:100%;height:100%;border:0;background:#080a0a}.sim-note{align-self:start;padding:22px;border:1px solid var(--line);background:var(--surface);border-radius:12px}.sim-note h2{font:700 29px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0 0 12px}.sim-note p,.sim-note li{font-size:11px;line-height:1.75;color:var(--muted)}.download-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.download-row b,.download-row small{display:block}.download-row b{font-size:12px}.download-row small{font:9px 'DM Mono',monospace;color:var(--muted);margin-top:4px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;counter-reset:step}.step{padding:19px;border:1px solid var(--line);border-radius:10px;background:var(--surface);counter-increment:step}.step:before{content:"0" counter(step);font:700 28px 'Barlow Condensed',sans-serif;color:var(--purple)}.step h3{font:700 20px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:10px 0 6px}.step p{font-size:11px;line-height:1.65;color:var(--muted)}.file-samples{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.sample{padding:15px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.sample code{color:#d5a6ff;font:11px 'DM Mono',monospace}.sample p{color:var(--muted);font-size:10px;line-height:1.55}.sample button{margin-top:5px}.terminal-block{padding:15px;border:1px solid var(--line);border-radius:8px;background:#080a09;color:#b8f1c7;font:11px/1.8 'DM Mono',monospace;overflow:auto}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.story-card{padding:19px}.story-card time{font:10px 'DM Mono',monospace;color:var(--orange)}.story-card h3{font:700 24px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:12px 0}.story-card p{font-size:11px;line-height:1.7;color:var(--muted)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.resource-card{padding:18px}.resource-card .resource-type{font:9px 'DM Mono',monospace;color:var(--orange);letter-spacing:.12em;text-transform:uppercase}.resource-card h3{font:700 22px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:10px 0}.resource-card p{font-size:11px;line-height:1.65;color:var(--muted)}.resource-card>a:last-child{display:inline-flex;margin-top:14px;color:var(--purple);font:10px 'DM Mono',monospace}.callout{padding:18px 20px;border-left:3px solid var(--orange);background:color-mix(in srgb,var(--orange) 8%,var(--surface));font-size:11px;line-height:1.7;color:var(--muted)}body[data-mode="discover"] .main-nav a{color:var(--text)}body[data-mode="discover"] .feature-card,body[data-mode="discover"] .hotspot-card,body[data-mode="discover"] .button,body[data-mode="discover"] .pack-anchor{box-shadow:0 0 0 1px color-mix(in srgb,var(--purple) 30%,transparent),0 7px 20px color-mix(in srgb,var(--purple) 15%,transparent)}body[data-mode="discover"] .section:not(.hero) .section-heading p{opacity:.57}body[data-mode="discover"] .feature-card:hover,body[data-mode="discover"] .button:hover{box-shadow:0 0 0 2px var(--purple),0 0 28px color-mix(in srgb,var(--purple) 34%,transparent)}.mobile-nav[hidden],.nodes-panel[hidden],.search-overlay[hidden]{display:none}@media(max-width:1260px){.site-header{gap:14px;padding:0 20px}.brand{flex-basis:150px}.main-nav{gap:10px}.main-nav a{font-size:9px}.header-actions{gap:5px}.mode-switch button{padding:6px}.card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:980px){.site-header{height:66px}.main-nav,.header-actions>.mode-switch{display:none}.header-actions{margin-left:auto}.menu-toggle{display:grid}.hero{grid-template-columns:1fr 1fr;min-height:550px}.hero .display-title{font-size:clamp(56px,8vw,90px)}.hero-art{min-height:430px}.map-layout,.pack-layout,.model-layout,.simulator-wrap{grid-template-columns:1fr}.map-frame{height:520px}.map-sidebar{display:grid;grid-template-columns:1fr 1fr}.simulator-wrap{grid-template-columns:1fr}.simulator-frame{height:700px}.mobile-nav:not([hidden]){display:grid;position:fixed;top:66px;left:0;right:0;z-index:29;padding:8px 20px 17px;background:var(--surface);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:5px}.mobile-nav a{padding:12px;border-radius:6px;background:var(--surface-2);font-size:11px}.site-header .mode-switch{display:flex}.site-header .header-actions>.mode-switch{display:none}.site-header .header-actions>.discovery-switch{display:none}.header-actions .search-trigger{display:none}}@media(max-width:680px){.site-header{padding:0 13px}.brand{flex-basis:auto}.brand strong{font-size:16px}.site-header .mode-switch{display:none}.page-shell{padding:0 16px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:10px;gap:0;min-height:0}.hero-copy{padding:44px 0 12px}.hero .display-title{font-size:clamp(61px,17vw,98px)}.hero-art{min-height:420px;margin:0 -8px}.device-hero{width:230px}.floating-label.a{left:3%;top:12%}.floating-label.b{right:2%;bottom:11%}.orbit-mark.one{right:10%;top:10%}.hero .stat-row{margin-top:27px}.stat{padding:0 14px}.stat b{font-size:27px}.section{padding:49px 0}.section-heading{display:block}.section-heading p{margin-top:13px}.card-grid{grid-template-columns:1fr 1fr;gap:8px}.card-art{height:112px}.feature-copy{padding:12px}.feature-copy h3{font-size:18px}.feature-copy p{font-size:10px}.page-hero{padding:48px 0 24px}.page-hero .display-title{font-size:clamp(53px,15vw,82px)}.display-title{font-size:clamp(48px,13vw,74px)}.split-panel,.story-grid,.resource-grid,.fact-grid,.file-samples,.steps{grid-template-columns:1fr 1fr}.map-layout{display:flex;flex-direction:column}.map-frame{height:420px}.map-sidebar{display:flex}.pack-stage{min-height:510px}.pack-illustration{width:73%;height:400px}.hotspot-label{font-size:8px}.model-stage{min-height:430px}.simulator-frame{height:680px}.simulator-frame iframe{width:900px;transform:scale(.68);transform-origin:top left;height:1000px}.site-footer{margin-top:38px;padding:20px 16px;flex-wrap:wrap;gap:14px}.site-footer>span:nth-child(2){display:none}.nodes-rail{right:7px;top:auto;bottom:16px}.nodes-tab{width:43px;min-height:90px;gap:6px}.nodes-tab>span:last-child{font-size:9px}.nodes-panel{right:58px;top:auto;bottom:15px;width:min(320px,calc(100vw - 72px))}.mobile-nav:not([hidden]){grid-template-columns:repeat(2,1fr);padding-left:13px;padding-right:13px}.button{min-height:42px;padding:0 12px}.search-overlay{padding-top:9vh}}@media(max-width:400px){.card-grid,.split-panel,.story-grid,.resource-grid,.fact-grid,.file-samples,.steps{grid-template-columns:1fr}.card-art{height:145px}.pack-stage{min-height:450px}.pack-illustration{height:365px}.stat small{font-size:8px}.device-hero{width:205px}}

#exploreMap{position:absolute;inset:0;z-index:1;overflow:hidden;background:#e6e3d7;touch-action:none;cursor:grab}#exploreMap.placing{cursor:crosshair}.offline-map-canvas{position:absolute;left:50%;top:50%;width:512px;height:512px;display:grid;grid-template-columns:256px 256px;grid-template-rows:256px 256px;transform-origin:center;will-change:transform;touch-action:none;user-select:none}.offline-map-canvas>img{width:256px;height:256px;display:block;pointer-events:none}.map-markers{position:absolute;inset:0;pointer-events:none}.local-map-pin{position:absolute;width:30px;height:34px;transform:translate(-50%,-75%);padding:3px;background:#171d1be8;border:1px solid #d8a9ff;border-radius:50% 50% 50% 8px;box-shadow:0 0 0 4px #a444ff40,0 3px 9px #0007;pointer-events:auto;cursor:pointer}.local-map-pin img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.map-attribution{position:absolute;right:8px;bottom:5px;z-index:510;padding:4px 7px;background:#fffE;color:#343a34;border:1px solid #9996;border-radius:3px;font:8px 'DM Mono',monospace}.map-control-group{display:flex;gap:5px}.map-chip[disabled]{opacity:.45;cursor:default}.map-legend{pointer-events:none}

/* Operator-Ausbau: genuine project map assets now, replaceable photo slots later. */
html[data-theme="dark"]{--bg:#0b0d13;--surface:#11151e;--surface-2:#171c27;--surface-3:#202637;--text:#f8f5ef;--muted:#adb0bb;--line:#343b4d;--purple:#8c16fa;--purple-2:#5700d9;--orange:#ff5426;--header:rgba(10,12,19,.91)}
html[data-theme="light"]{--bg:#f2f0eb;--surface:#fffefa;--surface-2:#f7f3ed;--surface-3:#ebe5dd;--text:#11151b;--muted:#606671;--line:#cdd0d5;--purple:#7120d2;--purple-2:#5515b5;--orange:#e64721;--header:rgba(249,247,242,.94)}
.site-header{height:72px}.brand img{width:48px;height:48px}.brand strong{font-size:22px;letter-spacing:.07em}.brand small{letter-spacing:.23em}.main-nav a{font:600 12px 'Barlow Condensed',sans-serif;letter-spacing:.05em}.button,.mode-switch,.icon-button,.menu-toggle,.panel,.feature-card,.map-frame,.nodes-tab{border-radius:3px}.button{min-height:48px;font-size:12px;letter-spacing:.11em}.button.primary{background:linear-gradient(105deg,#7500ed,#951bff);box-shadow:0 8px 30px #7000ed44}.button:hover,.feature-card:hover{transform:translateY(-3px)}.button:focus-visible,.feature-card:focus-visible,.pack-anchor:focus-visible,.map-chip:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.hero{min-height:520px;grid-template-columns:minmax(430px,.88fr) minmax(450px,1.12fr);gap:10px;padding:24px 0 8px}.hero:before{inset:0 -30px;background-image:linear-gradient(90deg,var(--bg) 8%,transparent 90%),url("data:image/svg+xml,%3Csvg width='180' height='180' viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%238c16fa' stroke-opacity='.32' stroke-width='1'%3E%3Cpath d='M-10 38c35 0 29-23 62-23s24 38 58 38 26-30 75-30M-10 74c32 0 31-19 62-19s25 31 58 31 32-26 75-26M-10 112c36 0 27-19 61-19s28 37 59 37 29-22 76-22M32-10c0 32 23 30 23 61s-24 32-24 63 16 25 16 68M104-10c0 27-21 32-21 60s29 29 29 64-18 28-18 66'/%3E%3C/g%3E%3C/svg%3E");opacity:.65;mask-image:none}.hero-copy{padding:24px 0 24px}.hero .display-title{font-size:clamp(69px,8.2vw,132px);letter-spacing:-.035em;line-height:.76;max-width:760px;margin:24px 0 24px;text-shadow:0 3px 15px #0006}.hero .display-title em{color:var(--text)}.hero .lead{max-width:485px;color:var(--text);font-size:17px;line-height:1.52}.hero .button-row{margin-top:22px}.hero .stat-row{margin-top:25px}.hero-art{min-height:500px;overflow:visible;background:radial-gradient(circle at 45% 55%,#7214f624,transparent 52%)}.hero-art:before{content:"";position:absolute;inset:8% 0 8% 11%;background:linear-gradient(90deg,var(--bg),transparent 20%,transparent 90%,var(--bg)),linear-gradient(0deg,var(--bg),transparent 18%,transparent 85%,var(--bg)),url('/tdeck-simulator/assets/maps/16-35223-21489.png') center/380px;opacity:.24;filter:grayscale(1) invert(1) hue-rotate(230deg);mask-image:radial-gradient(ellipse,#000 34%,transparent 74%)}.visual-note{position:absolute;z-index:5;right:2%;bottom:5%;padding:8px 10px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:9px 'DM Mono',monospace;letter-spacing:.06em}.device-hero{width:min(330px,57%);aspect-ratio:.66;transform:rotate(8deg) rotateY(-15deg);border:2px solid #5e6672;box-shadow:35px 40px 70px #000b,inset 0 2px 2px #fff3}.device-hero-screen{background:url('/tdeck-simulator/assets/maps/16-35223-21489.png') center/cover}.device-hero-screen:before{background:linear-gradient(90deg,#0c132288 0 19%,transparent 19%)}.device-hero-screen:after{content:'⌂\a ◉\a ♧\a ⚙';white-space:pre;position:absolute;left:2px;top:15%;width:18%;height:70%;display:flex;align-items:center;justify-content:center;background:#0b1019ed;color:#fff;font:28px/2 'Barlow Condensed',sans-serif;text-align:center}.device-hero-screen img{left:48%;top:40%;position:absolute;width:40px}.map-labels{z-index:1;left:24%;font-size:10px}.floating-label{border-color:var(--line);background:#0b0d13e8}.terrain-lines{opacity:.55}.hero + .section{padding:10px 0 45px}.hero + .section .section-heading{margin-bottom:15px}.hero + .section .section-heading h2{font-size:31px}.hero + .section .card-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.feature-card{min-width:0;overflow:hidden;background:var(--surface);border:1px solid var(--line);transition:transform .2s,border-color .2s,box-shadow .2s}.feature-card:hover{border-color:var(--purple);box-shadow:0 10px 30px #0007}.hero + .section .card-art{height:110px}.hero + .section .feature-copy{padding:10px}.hero + .section .feature-copy h3{font-size:19px}.hero + .section .feature-copy p{font-size:10px;min-height:64px}.hero + .section .feature-copy .arrow{margin-top:10px}.card-art.map-art{background:url('/tdeck-simulator/assets/maps/16-35223-21489.png') center/cover}.card-art.device-art{background:linear-gradient(135deg,#16191955,#05050577),radial-gradient(circle at 65% 55%,#ff632655,transparent 35%),linear-gradient(125deg,#050608,#33302c 60%,#121319)}.card-art.mesh-art{background:linear-gradient(120deg,#10111dcc,#131d22bb),repeating-linear-gradient(34deg,#7e2aff 0 1px,transparent 1px 30px)}.card-art.note-art{background:linear-gradient(120deg,#10121bb5,#1c151abb),repeating-linear-gradient(-45deg,#534535 0 1px,#11131a 1px 25px)}.card-art .art-stamp{background:#090b12d9;padding:4px 6px}.section-heading h2,.content-title{font-weight:800;letter-spacing:-.015em}.panel h3,.hotspot-card h2,.model-card h3{letter-spacing:.01em}.nodes-tab{background:#090c15;border-color:#8b13f7;box-shadow:0 0 18px #790bff7e}.nodes-tab>span:last-child{color:#fff}
.page-hero{padding-top:62px}.page-hero .display-title{max-width:1100px}.map-layout{grid-template-columns:minmax(0,1.55fr) minmax(310px,.68fr);gap:14px}.map-frame{height:min(70vh,680px);min-height:520px;border-color:#7637a5;background:#e2dfd4;box-shadow:0 15px 50px #0004}.map-frame:after{content:"";position:absolute;inset:0;border:7px solid #6914a727;pointer-events:none;z-index:400}.map-topbar{z-index:800}.map-chip{box-shadow:0 3px 12px #0004}.map-legend{z-index:800;bottom:30px}.leaflet-container{font-family:Manrope,system-ui,sans-serif!important}.leaflet-control-attribution{font:10px 'DM Mono',monospace!important;background:#fffe!important;padding:3px 6px!important}.map-note-icon{image-rendering:pixelated}.leaflet-popup-content-wrapper{border-radius:4px}.map-entry[hidden]{display:none}.map-entry form{display:grid;gap:7px;margin-top:12px}.map-entry label{font:10px 'DM Mono',monospace;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}.map-entry input,.map-entry select,.map-entry textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:3px;background:var(--bg);color:var(--text);font:12px Manrope,sans-serif}.map-entry textarea{resize:vertical}.map-entry .button-row{margin-top:9px}.note-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;border:1px solid var(--line);background:var(--surface-2)}.note-row>button:first-child{min-width:0;display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:7px;color:var(--text);text-align:left}.note-row img{width:19px;image-rendering:pixelated}.note-row span:nth-child(2){flex:1;min-width:0}.note-row b,.note-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-row b{font-size:11px}.note-row small{font-size:9px;color:var(--muted)}.note-delete{border:0;border-left:1px solid var(--line);background:transparent;color:var(--muted);font-size:18px}.note-delete:hover{color:var(--orange)}#exploreMap.placing{cursor:crosshair}.map-legend img{object-fit:contain}
.pack-stage{background:radial-gradient(ellipse at 50% 45%,#6d489328,#151924 75%)}.pack-anchor{transition:transform .18s,background .18s,box-shadow .18s}.pack-anchor:hover{box-shadow:0 0 0 7px #a444ff33,0 0 24px var(--purple)}.hotspot-label{border-color:#8c16fa55}.model-stage{border-color:#8c16fa77}.model-card{border-radius:3px}
.mobile-controls{display:none}
@media(max-width:1450px){.hero + .section .card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hero + .section .card-art{height:130px}.hero + .section .feature-copy p{min-height:0}}
@media(max-width:1080px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero .display-title{font-size:clamp(58px,7.5vw,95px)}.hero-art{min-height:430px}.device-hero{width:min(320px,64%)}.main-nav a{font-size:10px}.site-header{gap:10px}}
@media(max-width:980px){.main-nav{display:none}.menu-toggle{display:grid}.hero + .section .card-grid{grid-template-columns:repeat(4,1fr)}.mobile-nav:not([hidden]){max-height:calc(100vh - 66px);overflow:auto}.mobile-controls{display:grid;grid-column:1/-1;grid-template-columns:repeat(5,1fr);gap:5px}.mobile-controls button{border:1px solid var(--line);background:var(--surface-2);padding:9px 4px;color:var(--text);font:9px 'DM Mono',monospace}.mobile-controls button[aria-pressed="true"]{border-color:var(--purple);color:var(--purple)}.map-frame{min-height:470px;height:60vh}}
@media(max-width:680px){.hero{display:flex;flex-direction:column;min-height:auto}.hero-copy{padding:28px 0 0}.hero .display-title{font-size:clamp(55px,14vw,88px);max-width:95%;line-height:.83}.hero .lead{font-size:14px}.hero-art{min-height:400px;margin:0 -16px}.device-hero{width:230px}.hero + .section .card-grid{grid-template-columns:repeat(2,1fr)}.hero + .section .card-art{height:120px}.hero + .section .feature-copy p{font-size:10px}.hero + .section .section-heading h2{font-size:27px}.map-frame{min-height:420px;height:53vh}.mobile-controls{grid-template-columns:repeat(3,1fr)}.map-legend{font-size:8px}.map-layout{padding-bottom:0}}
@media(max-width:400px){.hero + .section .card-grid{grid-template-columns:repeat(2,1fr)}.hero + .section .feature-copy h3{font-size:16px}.hero + .section .card-art{height:90px}}

/* Equipment composition follows the approved layout; real photography replaces art slots. */
.gear-composition{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(175px,.66fr) minmax(300px,1.3fr) minmax(175px,.66fr);gap:14px;align-items:center;padding-top:42px}.gear-intro{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-bottom:22px}.gear-intro .display-title{font-size:clamp(68px,7.2vw,118px);line-height:.75;margin:20px 0 20px;max-width:none}.gear-intro .lead{font-size:15px;line-height:1.56;margin:0 0 20px}.gear-intro>.button{align-self:flex-start;min-width:190px}.gear-facts{display:flex;gap:18px;margin-top:28px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gear-facts div+div{border-left:1px solid var(--line);padding-left:18px}.gear-facts strong,.gear-facts span{display:block}.gear-facts strong{font:800 35px/.85 'Barlow Condensed',sans-serif}.gear-facts span{margin-top:6px;color:var(--muted);font:9px 'DM Mono',monospace;text-transform:uppercase}.gear-intro-foot{margin-top:auto;padding-top:27px}.gear-intro-foot p{font-size:11px;line-height:1.65;color:var(--muted)}.gear-side{display:flex;flex-direction:column;gap:16px;z-index:3}.gear-tile{width:100%;padding:0;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--text);text-align:left;position:relative;transition:transform .18s,border-color .18s,box-shadow .18s}.gear-tile:hover,.gear-tile[aria-pressed="true"]{transform:translateY(-3px);border-color:var(--purple);box-shadow:0 0 0 1px #8c16fa55,0 13px 24px #0005}.gear-side-left .gear-tile:after,.gear-side-right .gear-tile:after{content:"";position:absolute;top:32%;width:15px;border-top:1px solid var(--purple);opacity:.7}.gear-side-left .gear-tile:after{left:100%}.gear-side-right .gear-tile:after{right:100%}.gear-tile-art{display:block;height:168px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.gear-tile-number{position:absolute;top:10px;left:10px;z-index:2;padding:5px 6px;background:var(--purple);color:#fff;font:11px 'DM Mono',monospace}.gear-tile-art.tile-device{background:radial-gradient(circle at 65% 45%,#ff6c2a38,transparent 34%),linear-gradient(120deg,#41392f,#090b0c)}.gear-tile-art.tile-device:after{content:"";position:absolute;width:80px;height:128px;left:50%;top:55%;transform:translate(-50%,-50%) rotate(-9deg);border:6px solid #141719;border-radius:11px;background:linear-gradient(#24384a 0 15%,#a5a994 15% 54%,#131516 54%);box-shadow:12px 13px 14px #0009,inset 0 0 0 2px #555}.gear-tile-art.tile-mesh{background:radial-gradient(circle at 45% 50%,#6327a966,transparent 47%),linear-gradient(120deg,#28324c,#080b12)}.gear-tile-art.tile-mesh:after{content:"⌁";position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);font:800 100px 'Barlow Condensed',sans-serif;color:#b870ff;text-shadow:0 0 32px #8c16fa}.gear-tile-art.tile-map{background:url('/tdeck-simulator/assets/maps/16-35223-21489.png') center/cover}.gear-tile-art.tile-map:after{content:"";position:absolute;left:48%;top:35%;width:35px;height:45px;background:url('/assets/markers/raven.png') center/contain no-repeat;filter:drop-shadow(0 4px 3px #0008)}.gear-tile-art.tile-notes{background:linear-gradient(115deg,#251b15aa,#111115aa),repeating-linear-gradient(0deg,#b6a075 0 1px,#3d3224 1px 24px)}.gear-tile-art.tile-notes:after{content:"FIELD\A NOTES";white-space:pre;position:absolute;left:50%;top:52%;transform:translate(-50%,-50%) rotate(-6deg);padding:22px 18px;background:#d5c7a7;color:#1d1b18;box-shadow:7px 12px 16px #0008;font:800 25px/.95 'Barlow Condensed',sans-serif}.gear-tile-body{display:block;min-height:128px;padding:12px 14px 16px;position:relative}.gear-tile-body strong,.gear-tile-body b,.gear-tile-body small{display:block}.gear-tile-body strong{color:var(--purple);font:9px 'DM Mono',monospace;letter-spacing:.08em}.gear-tile-body b{margin:7px 0 4px;font:800 23px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}.gear-tile-body small{padding-right:12px;color:var(--muted);font-size:10px;line-height:1.4}.gear-tile-arrow{position:absolute;right:12px;bottom:11px;font-size:20px}.gear-center{min-width:0;position:relative}.gear-center .pack-stage{min-height:610px;border:0;background:radial-gradient(ellipse at center,#6f5d7840,transparent 60%);overflow:visible}.gear-center .pack-stage:before{opacity:.28}.gear-center .pack-illustration{width:95%;height:590px}.gear-center .pack-body{inset:5% 7% 0;border-radius:27% 27% 13% 13% / 15% 15% 11% 11%;background:linear-gradient(95deg,#090b0d,#343739 19%,#161a1d 51%,#3a3d3e 78%,#080a0b);border-color:#5a5d60;box-shadow:inset 0 0 0 8px #080b0f55,18px 25px 35px #0008}.gear-center .pack-flap{left:12%;right:12%}.gear-center .pack-pocket{left:18%;right:18%}.gear-center .pack-pocket:before{content:"OFF-GRID / FIELD KIT"}.gear-center .pack-straps.left{left:16%}.gear-center .pack-straps.right{right:16%}.gear-center .pack-pouch.left{left:1%}.gear-center .pack-pouch.right{right:1%}.gear-center .pack-anchor[data-gear="tdeck"]{left:46%;top:43%}.gear-center .pack-anchor[data-gear="heltec"]{left:73%;top:64%}.gear-center .pack-anchor[data-gear="sd"]{left:30%;top:67%}.gear-center .pack-anchor[data-gear="notes"]{left:50%;top:83%}.gear-stage-label,.gear-stage-note{position:absolute;z-index:4;color:var(--muted);font:9px 'DM Mono',monospace;letter-spacing:.12em}.gear-stage-label{top:4%;left:4%}.gear-stage-note{right:4%;bottom:4%;padding:6px;background:var(--surface);border:1px solid var(--line)}.gear-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch;margin-top:16px}.gear-bottom .hotspot-card{min-height:172px;border:1px solid var(--purple);background:var(--surface);box-shadow:0 0 25px #8c16fa1d}.gear-bottom .hotspot-card h2{font-size:34px}.gear-bottom .hotspot-card p{margin:0 0 13px}.gear-loadout{border:1px solid var(--line);background:var(--surface);padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:16px}.gear-loadout>div{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gear-loadout b{padding:10px 0;border-top:1px solid var(--line);font:700 12px 'Barlow Condensed',sans-serif}.gear-loadout .button{align-self:flex-end}
@media(max-width:1300px){.gear-composition{grid-template-columns:minmax(200px,.9fr) minmax(160px,.7fr) minmax(260px,1.2fr) minmax(160px,.7fr)}.gear-intro .display-title{font-size:clamp(60px,6.6vw,100px)}.gear-tile-art{height:130px}.gear-tile-body{min-height:112px}.gear-tile-body b{font-size:19px}.gear-center .pack-stage{min-height:550px}.gear-center .pack-illustration{height:530px}}
@media(max-width:980px){.gear-composition{grid-template-columns:1fr 1fr;gap:14px}.gear-intro{grid-column:1/-1;display:block;padding:20px 0}.gear-intro .display-title{font-size:clamp(70px,11vw,110px)}.gear-intro .lead{max-width:580px}.gear-intro-foot{max-width:580px}.gear-side-left{grid-column:1}.gear-center{grid-column:2;grid-row:2/4}.gear-side-right{grid-column:1}.gear-center .pack-stage{min-height:600px}.gear-center .pack-illustration{height:580px}.gear-tile-art{height:120px}.gear-bottom{grid-template-columns:1fr}}
@media(max-width:680px){.gear-composition{display:flex;flex-direction:column;align-items:stretch;padding-top:20px}.gear-intro .display-title{font-size:clamp(65px,17vw,100px)}.gear-intro-foot{margin-top:25px}.gear-center{order:2}.gear-side-left{order:3}.gear-side-right{order:4}.gear-side{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.gear-center .pack-stage{min-height:460px}.gear-center .pack-illustration{height:440px;max-width:380px}.gear-tile-art{height:105px}.gear-tile-body{min-height:122px;padding:9px}.gear-tile-body b{font-size:17px}.gear-tile-body small{font-size:9px}.gear-side .gear-tile:after{display:none}.gear-loadout>div{grid-template-columns:repeat(2,1fr)}.gear-bottom .hotspot-card{padding:19px}}

/* Entdecken: eigener Einstieg, Bildflächen bleiben für echte Projektfotos frei. */
.discover-landing{position:relative;isolation:isolate;min-height:calc(100vh - 74px);padding-top:35px;padding-bottom:30px;overflow:hidden;background:radial-gradient(ellipse 65% 80% at 49% 46%,#253138 0%,#111622 65%,#0b0d14 100%);color:#fff}
.discover-landing:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.62;background:repeating-radial-gradient(ellipse at 10% 60%,transparent 0 36px,#8e39e826 37px 38px,transparent 39px 54px),radial-gradient(circle at 87% 24%,#ff621421,transparent 29%),linear-gradient(130deg,transparent 5%,#581b9630 47%,transparent 84%);pointer-events:none}
.discover-landing:after{content:"52.5200° N  /  13.4050° E";position:absolute;right:32px;top:28px;font:9px 'DM Mono',monospace;letter-spacing:.15em;color:#ad9fc0}
.discover-heading{display:flex;align-items:center;justify-content:center;gap:19px;text-align:center;margin:6px auto 30px}
.discover-heading .section-kicker{justify-content:center;color:#f9764b;letter-spacing:.22em}
.discover-heading h1{margin:5px 0 3px;font:900 clamp(42px,5vw,72px)/.91 'Barlow Condensed',sans-serif;letter-spacing:.015em;text-transform:uppercase;text-shadow:0 5px 22px #0009}
.discover-heading p{margin:9px 0 0;color:#c6c0cb;font:10px/1.6 'DM Mono',monospace;letter-spacing:.14em;text-transform:uppercase}
.discover-mark{width:68px;height:78px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 0 15px #a437ff);transform:rotate(-9deg)}
.journey-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,3.6vw,56px);max-width:1450px;margin:0 auto}
.journey-column{position:relative;display:grid;gap:25px;align-content:start;min-width:0}
.journey-column:before{content:"";position:absolute;top:27px;bottom:30px;left:50%;border-left:1px dashed #a23cff77;z-index:-1}
.journey-column:not(:last-child):after{content:"⟶";position:absolute;top:72px;right:calc(-1 * clamp(12px,3.3vw,49px));color:#fff;font:700 clamp(22px,3vw,37px)/1 'Barlow Condensed',sans-serif;text-shadow:0 0 13px #a525ff,0 0 22px #ec4aef;pointer-events:none}
.journey-column:nth-child(2):after{color:#ff7b3f;text-shadow:0 0 15px #ff5a19}
.journey-card{display:block;position:relative;min-width:0;border:2px solid #a837ff;border-radius:8px;background:#f7f5f1;color:#101018;overflow:hidden;box-shadow:0 0 0 1px #ffffff80,0 0 20px #9618f4a8,0 13px 25px #03040b99;transition:transform .2s ease,box-shadow .2s ease}
.journey-column:nth-child(2) .journey-card{border-color:#ff6b27;box-shadow:0 0 0 1px #ffffff80,0 0 20px #ff5b23ac,0 13px 25px #03040b99}
.journey-card:hover,.journey-card:focus-visible{transform:translateY(-5px) scale(1.014);box-shadow:0 0 0 2px #fff,0 0 30px #a530ff,0 20px 35px #000b}
.journey-column:nth-child(2) .journey-card:hover,.journey-column:nth-child(2) .journey-card:focus-visible{box-shadow:0 0 0 2px #fff,0 0 30px #ff6527,0 20px 35px #000b}
.journey-art{height:112px;display:block;position:relative;overflow:hidden;border-bottom:1px solid #d7d2d0;background-color:#171b23}
.journey-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#02030a78,transparent 55%);pointer-events:none}
.journey-number{position:absolute;top:8px;right:8px;z-index:2;padding:3px 6px;background:#0b0a13c9;border:1px solid #ffffff55;color:#fff;font:10px 'DM Mono',monospace;letter-spacing:.12em}
.journey-content{position:relative;display:block;min-height:81px;padding:11px 36px 11px 14px}
.journey-content b{display:block;font:800 23px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.02em}
.journey-content small{display:block;margin-top:5px;color:#62626b;font:9px/1.35 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.025em}
.journey-content>span{position:absolute;right:11px;top:13px;color:#16141d;font:26px/.8 'Barlow Condensed',sans-serif}
.journey-map .journey-art{background:linear-gradient(108deg,transparent 48%,#a4c5d2 49% 53%,transparent 54%),repeating-linear-gradient(32deg,transparent 0 15px,#eef1dfcc 16px 20px,transparent 21px 42px),repeating-linear-gradient(118deg,#a9bda4 0 28px,#c8cbad 29px 32px,#8fae9f 33px 65px)}
.journey-map .journey-art:before{content:"";position:absolute;z-index:1;left:46%;top:19%;width:31px;height:37px;background:url('/assets/markers/feather.png') center/contain no-repeat;filter:drop-shadow(0 2px 3px #0009)}
.journey-notes .journey-art{background:radial-gradient(circle at 50% 80%,#f8c66a52,transparent 30%),repeating-linear-gradient(12deg,#2c2723 0 7px,#1f1d1c 8px 15px)}
.journey-notes .journey-art:before{content:"FIELD\A NOTES";white-space:pre;position:absolute;z-index:1;left:30%;top:18%;transform:rotate(-9deg);width:48%;height:65%;padding:12px 10px;background:#d6c5a2;color:#181710;box-shadow:6px 7px 11px #000a;font:700 18px/.9 'Barlow Condensed',sans-serif}
.journey-device .journey-art,.journey-software .journey-art{background:radial-gradient(circle at 54% 35%,#bb5b2a48,transparent 45%),linear-gradient(135deg,#121e2b,#07080e)}
.journey-device .journey-art:before,.journey-software .journey-art:before{content:"MAP  •  MESH  •  NOTES";position:absolute;left:25%;top:12%;width:48%;height:75%;display:flex;align-items:center;justify-content:center;text-align:center;border:8px solid #07090e;border-radius:11px;background:radial-gradient(circle at 40% 28%,#5d33a6,transparent 35%),repeating-linear-gradient(125deg,#172332 0 8px,#293b48 9px 10px);color:#e7e6ef;font:8px/1.4 'DM Mono',monospace;box-shadow:0 0 0 1px #5e5d62,8px 7px 15px #000b}
.journey-software .journey-art:before{content:"T-UI  >  READY";background:repeating-linear-gradient(0deg,#121b1d 0 14px,#263c36 15px 16px);color:#b9e6bb}
.journey-kit .journey-art{background:radial-gradient(ellipse at 50% 87%,#463b37,transparent 70%),linear-gradient(145deg,#4a4240,#0e1012 65%)}
.journey-kit .journey-art:before{content:"OFF-GRID";position:absolute;left:34%;top:4%;width:35%;height:106%;display:grid;place-items:center;border:3px solid #171819;border-radius:28% 28% 12% 12%;background:repeating-linear-gradient(90deg,#0a0c0f 0 12px,#25282b 13px 19px);color:#a333f2;font:700 12px 'Barlow Condensed',sans-serif;box-shadow:12px 4px 16px #0009}
.journey-print .journey-art{background:repeating-linear-gradient(32deg,#302721 0 8px,#49382b 9px 16px)}
.journey-print .journey-art:before{content:"3D / T-DECK";position:absolute;left:25%;top:23%;width:50%;height:57%;display:grid;place-items:center;border:6px solid #23302b;border-radius:19px;background:#68735b;color:#f6d9a7;font:12px 'DM Mono',monospace;box-shadow:10px 9px 9px #0008;transform:rotate(-13deg)}
.journey-knowledge .journey-art,.journey-community .journey-art{background:radial-gradient(circle at 60% 90%,#ef983d9c,transparent 40%),linear-gradient(120deg,#142432,#554a3f 60%,#181927)}
.journey-knowledge .journey-art:before{content:"PLANEN   LERNEN   VERBINDEN";position:absolute;left:18%;top:22%;width:65%;padding:10px;background:#dfcfaa;color:#171921;transform:rotate(-4deg);font:11px/1.5 'Barlow Condensed',sans-serif;text-align:center;box-shadow:6px 7px 12px #0009}
.journey-community .journey-art:before{content:"◉  ◉  ◉";position:absolute;left:22%;bottom:8%;color:#181d28;font-size:54px;letter-spacing:-.2em;text-shadow:0 3px 0 #f3a86a}
.discover-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:30px;border-top:1px solid #ffffff3d;padding-top:16px;color:#c5bed0;font:9px 'DM Mono',monospace;letter-spacing:.1em}
.discover-foot button{border:1px solid #a83aff;background:#7b16d9;color:#fff;padding:9px 14px;text-transform:uppercase;font:10px 'DM Mono',monospace}
.discover-foot button:hover{background:#a83aff}
html[data-theme="light"] .discover-landing{background:radial-gradient(ellipse at 52% 40%,#d7d1e0 0%,#f0eae0 69%,#fbf9f5);color:#17121f}
html[data-theme="light"] .discover-landing:before{opacity:.5}
html[data-theme="light"] .discover-heading h1{text-shadow:none}
html[data-theme="light"] .discover-heading p,html[data-theme="light"] .discover-foot{color:#57515c}
html[data-theme="light"] .journey-column:not(:last-child):after{color:#7522ba}
html[data-theme="light"] .journey-column:nth-child(2):after{color:#db521c}
html[data-theme="light"] .discover-foot{border-color:#7b708755}
@media(max-width:1050px){.journey-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:740px;row-gap:25px}.journey-column:nth-child(2):after{display:none}.journey-column:not(:last-child):after{right:-31px}.journey-column:nth-child(3):after{right:-31px}.discover-landing{padding-top:30px}}
@media(max-width:600px){.discover-landing{padding-top:30px;padding-bottom:24px}.discover-landing:after{display:none}.discover-heading{gap:6px;margin-bottom:25px}.discover-mark{width:39px;height:48px}.discover-heading h1{font-size:clamp(36px,9vw,55px)}.discover-heading p{font-size:8px;letter-spacing:.05em}.journey-grid{gap:12px}.journey-column{gap:15px}.journey-column:before,.journey-column:after{display:none!important}.journey-art{height:86px}.journey-content{padding:9px 20px 10px 9px;min-height:84px}.journey-content b{font-size:19px}.journey-content small{font-size:8px}.journey-content>span{right:5px;top:9px;font-size:19px}.discover-foot{font-size:8px}}

/* Software: großzügige Vorschau und belegte Funktionsblöcke. */
.software-showcase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,70px);align-items:center;padding-top:30px;padding-bottom:10px}
.software-preview{position:relative;min-width:0;border:1px solid var(--line);background:var(--surface);padding:16px;box-shadow:var(--shadow)}
.software-preview:before{content:"";position:absolute;inset:12px -12px -12px 12px;border:1px solid var(--purple);z-index:-1;opacity:.55}
.software-preview-top,.software-preview-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;font:9px 'DM Mono',monospace;letter-spacing:.1em;color:var(--muted)}
.software-preview-top{padding:1px 2px 13px}.software-preview-top .section-kicker{font-size:9px}
.software-preview-foot{padding:12px 2px 1px}.software-preview-foot a{color:var(--purple);font-weight:700}
.software-sim-frame{height:600px;overflow:hidden;background:#05070a;border:10px solid #101113;border-radius:13px;box-shadow:inset 0 0 0 1px #4e5360,0 12px 24px #0004}
.software-sim-frame iframe{width:100%;height:100%;border:0}
.software-story .display-title{font-size:clamp(70px,6.8vw,122px);max-width:none}
.software-story .lead{font-size:clamp(14px,1.15vw,18px);line-height:1.55}
.software-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:32px 0 28px}
.software-steps article{display:flex;gap:10px;align-items:flex-start;min-width:0}
.software-steps article>span{display:grid;place-items:center;flex:0 0 35px;height:35px;border:2px solid var(--purple);border-radius:50%;color:var(--purple);font:700 18px 'Barlow Condensed',sans-serif}
.software-steps b{display:block;font:800 20px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.software-steps p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
.software-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.software-module{min-width:0;padding:20px;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--purple)}
.software-module:nth-child(2){border-top-color:var(--orange)}
.software-module>span{color:var(--orange);font:9px 'DM Mono',monospace;letter-spacing:.12em}
.software-module h3{margin:8px 0;font:800 25px 'Barlow Condensed',sans-serif;text-transform:uppercase}
.software-module p{font-size:11px;line-height:1.65;color:var(--muted)}
.software-module a{display:inline-block;margin-top:10px;color:var(--purple);font:700 10px 'DM Mono',monospace}

/* 3D-Druck: Katalog und drehbare Konzeptansicht, ohne erfundene Modelle. */
.print-hero{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.6fr);gap:22px;align-items:stretch;padding-top:28px}
.print-intro{display:flex;flex-direction:column;justify-content:center;padding:25px 5px 25px 0}
.print-intro .display-title{font-size:clamp(72px,7.1vw,126px);max-width:none}
.print-intro .lead{font-size:clamp(14px,1.15vw,18px);line-height:1.48}
.print-hero-meta{display:flex;gap:24px;margin-top:34px;padding-top:17px;border-top:1px solid var(--line)}
.print-hero-meta>span{display:block;padding-right:20px;border-right:1px solid var(--line)}
.print-hero-meta b,.print-hero-meta small{display:block}
.print-hero-meta b{font:900 35px/.9 'Barlow Condensed',sans-serif}
.print-hero-meta small{margin-top:6px;color:var(--muted);font:9px 'DM Mono',monospace;text-transform:uppercase}
.print-visual{min-width:0;position:relative;border:1px solid var(--line);background:radial-gradient(ellipse at 45% 45%,#746b5d,#272521 58%,#111417);overflow:hidden}
.print-visual .model-stage{height:510px;min-height:510px;border:0;background:transparent}
.print-visual .case-model{transform:rotateX(-11deg) rotateY(-18deg) scale(1.18)}
.print-visual-label{position:absolute;z-index:3;left:19px;top:18px;padding:7px 9px;border:1px solid #ffffff88;background:#101117be;color:#fff;font:9px 'DM Mono',monospace;letter-spacing:.1em}
.print-visual-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-height:64px;padding:10px 14px;background:var(--surface)}
.print-visual-actions>span{margin-right:auto;color:var(--muted);font:9px 'DM Mono',monospace}
.print-catalog-heading{display:flex;justify-content:space-between;gap:25px;align-items:end}
.print-catalog-heading .section-heading{flex:1}
.print-search{display:grid;gap:5px;width:min(280px,100%);margin-bottom:19px}
.print-search label{color:var(--muted);font:9px 'DM Mono',monospace;text-transform:uppercase}
.print-search input{width:100%;padding:11px 12px;background:var(--surface);border:1px solid var(--line);color:var(--text);border-radius:3px;font-size:11px}
.print-filterbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:11px}
.print-filterbar button{padding:9px 14px;border:1px solid transparent;background:transparent;text-transform:uppercase;font:10px 'DM Mono',monospace;color:var(--muted)}
.print-filterbar button:hover,.print-filterbar button[aria-pressed="true"]{color:var(--text);border-color:var(--purple);background:color-mix(in srgb,var(--purple) 11%,var(--surface))}
.print-filterbar>span{margin-left:auto;color:var(--muted);font:9px 'DM Mono',monospace;text-transform:uppercase}
.print-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.print-slot{display:block;width:100%;padding:0;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--text)}
.print-slot:hover,.print-slot[aria-pressed="true"]{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple),0 0 20px color-mix(in srgb,var(--purple) 20%,transparent)}
.print-slot[hidden],.print-empty[hidden]{display:none}
.print-slot-art{height:140px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 65%,#8b6d5778,transparent 45%),repeating-linear-gradient(30deg,#292722 0 13px,#35332e 14px 16px);color:#c098ff}
.print-slot-art b{display:grid;place-items:center;width:115px;height:90px;border:8px solid #435148;border-radius:17px;background:#18201d;box-shadow:11px 12px 17px #0008;font:70px/.8 'Barlow Condensed',sans-serif;transform:rotate(-11deg)}
.print-slot-art.mount b{border-radius:40%;width:120px;height:65px;border-color:#ad612d;color:#ff8846}
.print-slot-art.accessory b{width:80px;height:80px;border-color:#4c435b;color:#d3a5ff}
.print-slot-body{display:block;padding:13px 15px 16px}
.print-slot-body small,.print-slot-body strong,.print-slot-body em,.print-slot-body>span{display:block}
.print-slot-body small{color:var(--orange);font:8px 'DM Mono',monospace;letter-spacing:.08em}
.print-slot-body strong{margin:6px 0;font:800 25px 'Barlow Condensed',sans-serif;text-transform:uppercase}
.print-slot-body em{font-style:normal;font-size:10px;line-height:1.5;color:var(--muted)}
.print-slot-body>span{margin-top:12px;color:var(--purple);font:700 10px 'DM Mono',monospace}
.print-empty{padding:30px;border:1px dashed var(--line);color:var(--muted);font-size:12px;text-align:center}
.print-detail{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:14px;padding:20px 23px;border:1px solid var(--line);background:var(--surface)}
.print-detail h3{margin:10px 0 5px;font:800 30px 'Barlow Condensed',sans-serif;text-transform:uppercase}
.print-detail p{max-width:700px;margin:0;color:var(--muted);font-size:11px;line-height:1.6}
.print-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:14px;scroll-margin-top:90px}
.print-model-card{display:flex;flex-direction:column;min-height:215px;padding:20px;border:1px solid #30313a;background:#090a0e;color:#fff}
.print-model-card[hidden]{display:none}
.print-model-platform{align-self:flex-start;color:#c596ff;font:700 9px 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}
.print-model-card h3{margin:11px 0 7px;font:800 26px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.print-model-card p{margin:0 0 20px;color:#dedee4;font-size:11px;line-height:1.65}
.print-model-foot{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-top:auto;padding-top:12px;border-top:1px solid #3a3b44}
.print-model-foot small{color:#acacb7;font:8px 'DM Mono',monospace;text-transform:uppercase}
.print-model-foot a{color:#d7aaff;font:700 10px 'DM Mono',monospace;white-space:nowrap}
.print-model-foot a:hover{text-decoration:underline}
@media(max-width:780px){.print-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.print-model-grid{grid-template-columns:1fr}.print-model-card{min-height:0}}
@media(max-width:1100px){.software-showcase{grid-template-columns:1fr 1fr;gap:20px}.software-sim-frame{height:520px}.software-story .display-title{font-size:clamp(60px,6.5vw,90px)}.software-steps{grid-template-columns:1fr;gap:10px}.software-steps article>span{flex-basis:30px;height:30px}.software-steps p{font-size:10px}.print-hero{grid-template-columns:1fr 1.3fr}.print-intro .display-title{font-size:clamp(65px,7vw,95px)}}
@media(max-width:780px){.software-showcase,.print-hero{grid-template-columns:1fr}.software-showcase{padding-top:12px}.software-preview{order:2}.software-story{order:1;padding:25px 0}.software-story .display-title{font-size:clamp(70px,10vw,108px)}.software-steps{grid-template-columns:repeat(3,1fr)}.print-intro{padding-bottom:10px}.print-visual .model-stage{height:430px;min-height:430px}.print-slot-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.software-steps{grid-template-columns:1fr}.software-module-grid{grid-template-columns:1fr}.software-sim-frame{height:520px}.software-preview-foot{font-size:8px}.print-intro .display-title{font-size:clamp(70px,16vw,98px)}.print-visual .model-stage{height:355px;min-height:355px}.print-visual-actions{flex-wrap:wrap}.print-visual-actions>span{width:100%}.print-catalog-heading{display:block}.print-search{margin-bottom:12px}.print-slot-grid{grid-template-columns:1fr 1fr;gap:7px}.print-slot-art{height:105px}.print-slot-body{padding:10px}.print-slot-body strong{font-size:20px}.print-slot-body em{font-size:9px}.print-filterbar button{padding:7px 8px}.print-detail{display:block}.print-detail>.status-tag{display:inline-block;margin-top:15px}}

/* Hardware: zwei Gerätefelder mit klar ersetzbaren Bildflächen. */
.hardware-showcase{display:grid;grid-template-columns:minmax(220px,.7fr) repeat(2,minmax(0,1fr));gap:12px;padding-top:25px}
.hardware-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:15px 12px 20px 0}
.hardware-intro .display-title{font-size:clamp(67px,6.5vw,112px);max-width:none}
.hardware-intro .lead{font-size:clamp(14px,1.05vw,18px);line-height:1.47}
.hardware-intro .button{margin-top:13px}
.hardware-device{display:flex;min-width:0;flex-direction:column;border:1px solid var(--line);background:var(--surface);transition:transform .2s,border-color .2s}
.hardware-device:hover{transform:translateY(-5px);border-color:var(--purple)}
.hardware-device-art{height:390px;position:relative;overflow:hidden;background:radial-gradient(circle at 53% 63%,#c98d5870,transparent 32%),linear-gradient(0deg,#211d20,#6d7073 62%,#949ea6)}
.hardware-device-art:after{content:"";position:absolute;inset:0;background:repeating-radial-gradient(circle at 70% 70%,transparent 0 34px,#683db02a 35px 36px,transparent 37px 52px);pointer-events:none}
.hardware-device-art.heltec{background:radial-gradient(circle at 73% 47%,#ffc17172,transparent 35%),linear-gradient(150deg,#737a82,#333c48 58%,#21252c)}
.hardware-art-label{position:absolute;z-index:3;top:11px;left:11px;padding:6px 8px;color:#fff;background:#0b1015a6;border:1px solid #ffffff6e;font:8px 'DM Mono',monospace;letter-spacing:.06em}
.hardware-tdeck{position:absolute;z-index:2;width:210px;height:326px;left:50%;top:54%;transform:translate(-50%,-50%) rotate(-9deg);padding:16px 16px 12px;border:12px solid #101215;border-radius:22px;background:#101317;box-shadow:14px 21px 24px #000b,inset 0 0 0 2px #62605b}
.hardware-tdeck>div:first-child{height:144px;border:2px solid #68717a;border-radius:6px;background:repeating-linear-gradient(140deg,#b1bd9d 0 18px,#c7c7a9 19px 22px,#9faeb0 23px 45px);position:relative}
.hardware-tdeck>div:first-child span{display:block;padding:5px;background:#121823df;color:#fff;font:8px 'DM Mono',monospace}
.hardware-tdeck img{width:32px;position:absolute;left:47%;top:40%;image-rendering:pixelated}
.hardware-tdeck>i{display:block;width:28px;height:15px;border:3px solid #f16522;border-radius:5px;margin:11px auto 9px;box-shadow:0 0 10px #ed642b}
.hardware-keys{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.hardware-keys b{height:13px;background:#22272b;border:1px solid #686b69;border-radius:2px;box-shadow:inset 0 -2px 0 #f77328}
.hardware-heltec{position:absolute;z-index:2;width:245px;height:178px;left:50%;top:54%;transform:translate(-50%,-50%) rotate(9deg);padding:18px;border:7px solid #d2c9b4;border-radius:12px;background:linear-gradient(120deg,#c4ad89a8,#eee4c3a8 30%,#534c44a6);box-shadow:15px 24px 22px #0009,inset 0 0 0 2px #354354}
.hardware-heltec:before{content:"";position:absolute;left:50%;bottom:calc(100% + 1px);width:11px;height:130px;background:linear-gradient(90deg,#0c1119,#495362,#121821);border-radius:7px;transform:translateX(-50%)}
.hardware-heltec>div{height:100%;padding:18px;background:#081018;border:2px solid #535e66;border-radius:6px;color:#ace6c1}
.hardware-heltec span,.hardware-heltec strong,.hardware-heltec small{display:block;font-family:'DM Mono',monospace}
.hardware-heltec span{font-size:10px}.hardware-heltec strong{font-size:20px;margin:13px 0}.hardware-heltec small{font-size:9px}
.hardware-device-caption{display:flex;align-items:center;gap:16px;min-height:79px;padding:10px 15px;background:#0d0d11;color:#fff}
.hardware-device-caption>span{font:40px 'Barlow Condensed',sans-serif;color:#ae39ff;line-height:1}
.hardware-device-caption>div{flex:1;min-width:0}.hardware-device-caption b,.hardware-device-caption small{display:block}
.hardware-device-caption b{font:800 24px/.95 'Barlow Condensed',sans-serif}
.hardware-device-caption small{margin-top:4px;color:#c8c4cb;font:9px/1.35 'DM Mono',monospace}
.hardware-device-caption em{font-style:normal;color:#c578ff;font:9px 'DM Mono',monospace;white-space:nowrap}
.hardware-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:13px;padding-top:12px;padding-bottom:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hardware-facts>div{padding:7px 20px;border-right:1px solid var(--line)}
.hardware-facts>div:first-child{padding-left:0}.hardware-facts>div:last-child{border-right:0}
.hardware-facts b,.hardware-facts small{display:block}.hardware-facts b{font:900 28px/.9 'Barlow Condensed',sans-serif}.hardware-facts small{margin-top:6px;color:var(--muted);font:9px 'DM Mono',monospace;text-transform:uppercase}
.hardware-setup-heading h2{font:900 clamp(45px,5vw,78px)/.9 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:11px 0}
.hardware-setup-heading p{color:var(--muted);font-size:12px}
.hardware-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:18px}
.hardware-setup-grid .panel{padding:28px}.hardware-setup-grid .panel h3{font-size:37px}.hardware-setup-grid .panel p,.hardware-setup-grid .panel li{font-size:12px;line-height:1.65}.hardware-setup-grid .panel .button{margin-top:12px}
@media(max-width:1150px){.hardware-showcase{grid-template-columns:minmax(200px,.8fr) repeat(2,minmax(0,1fr))}.hardware-intro .display-title{font-size:clamp(62px,6vw,90px)}.hardware-device-art{height:340px}.hardware-tdeck{transform:translate(-50%,-50%) rotate(-9deg) scale(.86)}.hardware-heltec{transform:translate(-50%,-50%) rotate(9deg) scale(.83)}}
@media(max-width:840px){.hardware-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}.hardware-intro{grid-column:1/-1;padding:20px 0}.hardware-intro .display-title{font-size:clamp(70px,11vw,110px)}.hardware-intro .lead{max-width:640px}.hardware-facts{grid-template-columns:repeat(3,1fr)}.hardware-facts>div{border-bottom:1px solid var(--line)}}
@media(max-width:570px){.hardware-showcase{grid-template-columns:1fr}.hardware-device-art{height:340px}.hardware-facts{grid-template-columns:repeat(2,1fr)}.hardware-facts>div{padding:10px}.hardware-setup-grid{grid-template-columns:1fr}}
.hardware-intro .display-title{font-size:clamp(61px,5.2vw,86px)}
.hardware-device-art{flex:1;min-height:390px;height:auto}
.print-visual{display:flex;flex-direction:column}
.print-visual .model-stage{flex:1;height:auto;min-height:510px}
@media(max-width:1150px){.hardware-intro .display-title{font-size:clamp(58px,5vw,78px)}.hardware-device-art{min-height:340px}}
@media(max-width:840px){.hardware-intro .display-title{font-size:clamp(68px,10vw,100px)}}
@media(max-width:570px){.hardware-intro .display-title{font-size:clamp(63px,13vw,92px)}.hardware-device-art{min-height:340px}}
#hardwareSetup,#heltecSetup,#modelCatalog{scroll-margin-top:90px}

/* Zweite 3D-Druck-Ansicht: Entdecken als interaktive Detailstudie. */
.print-explore{display:grid;grid-template-columns:minmax(220px,.67fr) minmax(0,1.25fr) minmax(235px,.72fr);gap:14px;align-items:stretch;padding-top:28px}
.print-explore-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:25px 9px 28px 0}
.print-explore-intro .display-title{font-size:clamp(62px,5.4vw,99px);max-width:none}
.print-explore-intro .lead{font-size:clamp(14px,1.05vw,17px);line-height:1.5}
.print-explore-tags{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 16px}
.print-explore-tags span{padding:5px 8px;background:var(--surface-3);color:var(--muted);font:9px 'DM Mono',monospace}
.print-explore-aside{padding:16px 0;margin:0 0 14px;border-top:1px solid var(--line);color:var(--muted);font:11px/1.6 'DM Mono',monospace}
.print-explore-view{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);background:var(--surface)}
.print-explore-view .model-stage{flex:1;min-height:625px;height:auto;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 38%,#926b486a,transparent 40%),linear-gradient(145deg,#606159,#252a2b 65%,#13191c)}
.print-explore-view .model-grid{opacity:.42}
.print-explore-view .case-model{transform:rotateX(-11deg) rotateY(-18deg) scale(1.18)}
.print-explore-actions{display:flex;align-items:center;gap:6px;padding:11px;background:var(--surface)}
.print-explore-actions>span{flex:1;color:var(--muted);font:8px 'DM Mono',monospace}
.print-explore-actions .button{font-size:9px}
.print-explore-options{padding:20px;background:var(--surface);border:1px solid var(--line)}
.print-explore-options h2{margin:7px 0 18px;font:800 30px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.print-option-group{padding:16px 0;border-top:1px solid var(--line)}
.print-option-group h3{margin:0 0 12px;font:800 17px 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.04em}
.print-option-group h3 small{font:9px 'DM Mono',monospace;color:var(--muted);text-transform:uppercase}
.print-angle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.print-angle-grid button{min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);background:var(--surface-2);font:10px 'DM Mono',monospace}
.print-angle-grid button>span{font-size:27px;color:var(--purple)}
.print-angle-grid button[aria-pressed="true"],.print-angle-grid button:hover{border-color:var(--purple);box-shadow:inset 0 0 0 1px var(--purple)}
.print-color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.print-color-grid button{min-width:0;padding:7px 2px;border:1px solid transparent;background:transparent;font:8px 'DM Mono',monospace;text-align:center}
.print-color-grid button[aria-pressed="true"],.print-color-grid button:hover{border-color:var(--purple)}
.print-color-grid i{display:block;width:32px;height:32px;margin:0 auto 6px;border-radius:50%;background:#59634b;border:1px solid #ffffff8a}
.print-color-grid button[data-case-color="black"] i{background:#1b1d20}.print-color-grid button[data-case-color="orange"] i{background:#ed6a1f}.print-color-grid button[data-case-color="sand"] i{background:#bba788}
.print-explore-status p{font-size:11px;line-height:1.6;color:var(--muted)}
.print-explore-status .status-tag{display:inline-block;margin-top:7px}
.print-explore .case-model[data-case-color="black"]{background:linear-gradient(90deg,#070809,#44484b 18%,#1d2226 45%,#070809);border-color:#7b7e83}
.print-explore .case-model[data-case-color="orange"]{background:linear-gradient(90deg,#603017,#ff8b3b 18%,#be541c 45%,#49200e);border-color:#ffa562}
.print-explore .case-model[data-case-color="sand"]{background:linear-gradient(90deg,#5a4d3b,#dac3a0 18%,#ac9270 45%,#4a3d30);border-color:#d8c7a6}
.print-explore-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-top:0;background:var(--surface)}
.print-explore-specs>div{padding:18px 20px;border-right:1px solid var(--line)}.print-explore-specs>div:last-child{border:0}
.print-explore-specs span,.print-explore-specs b{display:block}.print-explore-specs span{color:var(--orange);font:9px 'DM Mono',monospace}.print-explore-specs b{margin-top:7px;font:800 20px 'Barlow Condensed',sans-serif;text-transform:uppercase}.print-explore-specs p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.45}
html[data-theme="light"] .print-explore-view .model-stage{background:radial-gradient(ellipse at 50% 38%,#fff0ce,transparent 48%),linear-gradient(145deg,#a79e8e,#696d68 70%,#333a39)}
@media(max-width:1220px){.print-explore{grid-template-columns:minmax(180px,.65fr) minmax(0,1.15fr) minmax(210px,.7fr)}.print-explore-intro .display-title{font-size:clamp(56px,5.1vw,78px)}.print-explore-view .model-stage{min-height:570px}.print-explore-actions{flex-wrap:wrap}.print-explore-actions>span{flex:0 0 100%}}
@media(max-width:900px){.print-explore{grid-template-columns:minmax(0,1fr) minmax(210px,.65fr)}.print-explore-intro{grid-column:1/-1;padding:10px 0 12px}.print-explore-intro .display-title{font-size:clamp(65px,10vw,110px)}.print-explore-intro .lead{max-width:690px}.print-explore-view .model-stage{min-height:560px}}
@media(max-width:640px){.print-explore{grid-template-columns:1fr}.print-explore-intro .display-title{font-size:clamp(66px,15vw,95px)}.print-explore-view .model-stage{min-height:430px}.print-explore-options{padding:18px}.print-explore-specs{grid-template-columns:1fr}.print-explore-specs>div{border-right:0;border-bottom:1px solid var(--line)}}
.print-explore-intro .display-title{font-size:clamp(59px,4vw,75px)}
@media(max-width:1220px){.print-explore-intro .display-title{font-size:clamp(55px,4.8vw,70px)}}
@media(max-width:900px){.print-explore-intro .display-title{font-size:clamp(65px,10vw,100px)}}
@media(max-width:640px){.print-explore-intro .display-title{font-size:clamp(62px,14vw,90px)}}

/* Vom Nutzer gelieferte Stadtgrafiken: reine Dekoration, nicht die interaktive Karte. */
body[data-page="start"]{--page-art:url('/assets/backgrounds/01-stadt-rechts.webp')}
body[data-page="hardware"],body[data-page="off-grid"]{--page-art:url('/assets/backgrounds/03-stadt-ost.webp')}
body[data-page="software"],body[data-page="3d-druck"],body[data-page="flasher"]{--page-art:url('/assets/backgrounds/04-stadt-links.webp')}
body[data-page="meshgame"],body[data-page="blog"]{--page-art:url('/assets/backgrounds/05-stadt-mitte.webp')}
body[data-page="wissen"]{--page-art:url('/assets/backgrounds/02-stadt-rand.webp')}
html[data-theme="dark"] body{background-color:var(--bg);background-image:linear-gradient(#0d0f16ed,#0d0f16e5),var(--page-art);background-position:center;background-size:cover;background-attachment:fixed}
html[data-theme="dark"] .hero:before{inset:0 -30px;background-image:linear-gradient(90deg,#0d0f16f5 4%,#0d0f16d6 35%,#0d0f1666 66%,#0d0f1633),linear-gradient(0deg,#0d0f16 0,transparent 25%,transparent 84%,#0d0f16),url('/assets/backgrounds/01-stadt-rechts.webp');background-position:center;background-size:cover;opacity:1;mask-image:none}
html[data-theme="dark"] .discover-landing{background-image:linear-gradient(180deg,#0d1019b8,#10121ad9),url('/assets/backgrounds/02-stadt-rand.webp');background-position:center;background-size:cover}
html[data-theme="dark"] .hardware-showcase{background-image:linear-gradient(90deg,#0d0f16d8,#0d0f1640),url('/assets/backgrounds/03-stadt-ost.webp');background-position:center;background-size:cover}
html[data-theme="dark"] .software-showcase,html[data-theme="dark"] .print-hero,html[data-theme="dark"] .print-explore{background-image:linear-gradient(90deg,#0d0f16de,#0d0f1688 60%,#0d0f166b),url('/assets/backgrounds/04-stadt-links.webp');background-position:center;background-size:cover}
html[data-theme="dark"] .gear-composition{background-image:linear-gradient(90deg,#0d0f16d5,#0d0f1677),url('/assets/backgrounds/03-stadt-ost.webp');background-position:center;background-size:cover}
html[data-theme="dark"] .page-hero{background-image:linear-gradient(90deg,#0d0f16e8,#0d0f16c7 52%,#0d0f166b),var(--page-art);background-position:center;background-size:cover;border-bottom:1px solid #a13afa3d}
@media(max-width:680px){html[data-theme="dark"] body{background-attachment:scroll}html[data-theme="dark"] .hero:before{inset:0 -16px;background-position:55% center}html[data-theme="dark"] .hardware-showcase,html[data-theme="dark"] .software-showcase,html[data-theme="dark"] .print-hero,html[data-theme="dark"] .print-explore{background-position:45% center}}

/* Bereitgestellte T-Deck-Motive als durchscheinende Ebenen über den Stadt-Blueprints. */
.hero-art{overflow:hidden;border:1px solid #8c16fa4f;background:url('/assets/backgrounds/01-stadt-rechts.webp') center/cover}
.hero-art:before{display:none}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% 43%;opacity:.77;mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 94%,transparent 100%)}
.hero-art .floating-label{z-index:3}
.hero-art .visual-note{background:#0b0d13df;color:#f4edf9;border-color:#a13afa70}
.hardware-device-art.tdeck{background:url('/assets/backgrounds/03-stadt-ost.webp') center/cover}
.hardware-device-art.tdeck:after{background:linear-gradient(0deg,#0a0c15a6,transparent 40%,#0a0c1544)}
.hardware-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:36% center;opacity:.82}
.software-photo-feature{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:0;margin-top:18px}
.software-photo-frame{position:relative;min-height:265px;overflow:hidden;border:1px solid var(--line);background:url('/assets/backgrounds/04-stadt-links.webp') center/cover}
.software-photo-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 47%;opacity:.78}
.software-photo-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#0b0d1394)}
.software-photo-feature figcaption{display:flex;flex-direction:column;justify-content:center;margin:0;padding:25px 33px;border:1px solid var(--line);border-left:0;background:var(--surface)}
.software-photo-feature strong{font:800 clamp(28px,3vw,44px)/.95 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:15px 0 9px}
.software-photo-feature p{color:var(--muted);font-size:12px;line-height:1.6;max-width:410px}
.software-photo-feature a{align-self:flex-start;color:var(--purple);font:10px 'DM Mono',monospace;text-transform:uppercase;margin-top:9px}
body[data-page="meshgame"] .page-hero,body[data-page="flasher"] .page-hero{position:relative;overflow:hidden}
body[data-page="meshgame"] .page-hero:before,body[data-page="flasher"] .page-hero:before{content:"";position:absolute;z-index:0;inset:0 0 0 43%;background-size:cover;background-repeat:no-repeat;opacity:.65;mask-image:linear-gradient(90deg,transparent,#000 25%,#000 87%,transparent)}
body[data-page="meshgame"] .page-hero:before{background-image:url('/assets/photos/04-tdeck-map.webp');background-position:28% 44%}
body[data-page="flasher"] .page-hero:before{background-image:url('/assets/photos/02-tdeck-hand.webp');background-position:38% 48%}
.photo-label{display:block;margin-top:16px;color:var(--muted);font:9px 'DM Mono',monospace;letter-spacing:.13em;text-transform:uppercase}
html[data-theme="light"] .hero-art,html[data-theme="light"] .hardware-device-art.tdeck,html[data-theme="light"] .software-photo-frame{border-color:#8c16fa77}
html[data-theme="light"] body[data-page="meshgame"] .page-hero:before,html[data-theme="light"] body[data-page="flasher"] .page-hero:before{opacity:.31}
@media(max-width:850px){.software-photo-feature{grid-template-columns:1fr}.software-photo-frame{min-height:245px}.software-photo-feature figcaption{border-left:1px solid var(--line);border-top:0}}
@media(max-width:680px){.hero-art{margin:0 -16px;min-height:400px}.hero-photo{object-position:44% center;opacity:.78}.software-photo-frame{min-height:185px}.software-photo-feature figcaption{padding:20px}body[data-page="meshgame"] .page-hero:before,body[data-page="flasher"] .page-hero:before{inset:0 0 0 28%;opacity:.4}}

/* Bildreiche Einstiegskarten mit sichtbarem Blueprint unter den Motiven. */
.hero + .section .feature-card:nth-child(1) .card-art,
.hero + .section .feature-card:nth-child(2) .card-art,
.hero + .section .feature-card:nth-child(3) .card-art,
.hero + .section .feature-card:nth-child(5) .card-art{background:url('/assets/backgrounds/01-stadt-rechts.webp') center/cover}
.hero + .section .feature-card:nth-child(1) .card-art:before,
.hero + .section .feature-card:nth-child(2) .card-art:before,
.hero + .section .feature-card:nth-child(3) .card-art:before,
.hero + .section .feature-card:nth-child(5) .card-art:before{content:"";position:absolute;inset:0;background-size:cover;background-position:center;opacity:.79}
.hero + .section .feature-card:nth-child(1) .card-art:before{background-image:url('/assets/photos/04-tdeck-map.webp')}
.hero + .section .feature-card:nth-child(2) .card-art:before{background-image:url('/assets/photos/03-tdeck-front.webp')}
.hero + .section .feature-card:nth-child(3) .card-art:before{background-image:url('/assets/photos/01-tdeck-detail.webp')}
.hero + .section .feature-card:nth-child(5) .card-art:before{background-image:url('/assets/photos/02-tdeck-hand.webp')}
.hero + .section .card-art img,.hero + .section .card-art .art-stamp{z-index:2}
.hardware-photo{filter:brightness(1.16) contrast(1.03)}
body[data-page="flasher"] .page-hero .display-title{max-width:750px}
@media(max-width:680px){body[data-page="flasher"] .page-hero .display-title{max-width:90%}}

/* Neues Startmotiv ohne sichtbaren Bildrahmen: die Ränder laufen in den Blueprint aus. */
.hero-art{border:0;background:transparent;overflow:visible}
.hero-photo{inset:-5% -10%;width:120%;height:110%;object-position:48% 49%;opacity:.86;mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 49%,#000c 66%,transparent 100%);pointer-events:none}
.hero-art .visual-note{right:1%;bottom:3%}
.workshop-feature{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);min-height:220px;margin-top:19px;border:1px solid var(--line);background:var(--surface)}
.workshop-image{position:relative;min-height:220px;overflow:hidden;background:url('/assets/backgrounds/03-stadt-ost.webp') center/cover}
.print-workshop .workshop-image{background-image:url('/assets/backgrounds/04-stadt-links.webp')}
.workshop-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%;opacity:.79;mask-image:linear-gradient(90deg,#000 66%,transparent)}
.workshop-feature figcaption{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:24px 28px;margin:0}
.workshop-feature strong{font:800 clamp(28px,2.8vw,43px)/.93 'Barlow Condensed',sans-serif;text-transform:uppercase}
.workshop-feature p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}
@media(max-width:850px){.workshop-feature{grid-template-columns:1fr}.workshop-image{min-height:220px}.workshop-image img{mask-image:linear-gradient(0deg,transparent,#000 26%)}.workshop-feature figcaption{padding:20px}}
@media(max-width:680px){.hero-photo{inset:-4% -8%;width:116%;height:108%;object-position:47% 50%;mask-image:radial-gradient(ellipse 76% 77% at 50% 50%,#000 55%,transparent 100%)}.workshop-image{min-height:175px}}
.hero-photo{mask-image:radial-gradient(ellipse closest-side at 50% 50%,#000 62%,transparent 100%)}
@media(max-width:680px){.hero-photo{mask-image:radial-gradient(ellipse closest-side at 50% 50%,#000 62%,transparent 100%)}}

/* Einheitliche 3D-Hoverbewegung für klickbare Flächen auf allen Seiten. */
@media(hover:hover) and (pointer:fine){
 .motion-surface{transform-origin:center center;backface-visibility:hidden;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,filter .28s ease,border-color .28s ease;transform-style:preserve-3d}
 .motion-surface:is(:hover,:focus-visible){transform:perspective(850px) translate3d(0,-5px,16px) rotateX(var(--motion-rx,0deg)) rotateY(var(--motion-ry,0deg)) scale(1.025);box-shadow:0 18px 36px #0007,0 0 0 1px color-mix(in srgb,var(--purple) 55%,transparent);filter:brightness(1.08);z-index:2}
 .main-nav a.motion-surface:is(:hover,:focus-visible),.resource-card a.motion-surface:is(:hover,:focus-visible),.software-module a.motion-surface:is(:hover,:focus-visible),.node-link.motion-surface:is(:hover,:focus-visible){box-shadow:none;filter:brightness(1.18)}
 .pack-anchor.motion-surface:is(:hover,:focus-visible){transform:perspective(850px) translate3d(0,-5px,18px) rotateX(var(--motion-rx,0deg)) rotateY(var(--motion-ry,0deg)) scale(1.14)}
 html[data-theme="light"] .motion-surface:is(:hover,:focus-visible){box-shadow:0 16px 28px #17142924,0 0 0 1px color-mix(in srgb,var(--purple) 48%,transparent);filter:brightness(1.035)}
}
@media(prefers-reduced-motion:reduce){.motion-surface,.motion-surface:is(:hover,:focus-visible){transition:none!important;transform:none!important;filter:none!important}}

/* Transparente Neon-Straßen erscheinen nur als kurze, schmale Welle am Mausweg. */
body[data-page="start"],body[data-page="wissen"]{--neon-map:url('/assets/overlays/neon-01.webp')}
body[data-page="hardware"],body[data-page="off-grid"]{--neon-map:url('/assets/overlays/neon-02.webp')}
body[data-page="meshgame"]{--neon-map:url('/assets/overlays/neon-03.webp')}
body[data-page="software"],body[data-page="3d-druck"]{--neon-map:url('/assets/overlays/neon-04.webp')}
body[data-page="flasher"],body[data-page="blog"]{--neon-map:url('/assets/overlays/neon-05.webp')}
@property --neon-radius{syntax:'<length>';inherits:false;initial-value:0px}
.neon-trace{position:fixed;inset:0;z-index:300;overflow:hidden;pointer-events:none;isolation:isolate;contain:layout paint}
.neon-wave{position:absolute;inset:0;display:block;opacity:0;background-image:var(--neon-map);background-repeat:no-repeat;background-position:center;background-size:cover;--neon-radius:0px;-webkit-mask-image:radial-gradient(circle at var(--neon-x) var(--neon-y),transparent calc(var(--neon-radius) - 25px),#0008 calc(var(--neon-radius) - 11px),#000 calc(var(--neon-radius) + 3px),transparent calc(var(--neon-radius) + 31px));mask-image:radial-gradient(circle at var(--neon-x) var(--neon-y),transparent calc(var(--neon-radius) - 25px),#0008 calc(var(--neon-radius) - 11px),#000 calc(var(--neon-radius) + 3px),transparent calc(var(--neon-radius) + 31px));will-change:opacity,mask-image}
.neon-wave.is-rippling{animation:neon-trace-ripple 1.35s ease-out both}
@keyframes neon-trace-ripple{0%{--neon-radius:0px;opacity:0}18%{opacity:.12}48%{opacity:.15}100%{--neon-radius:235px;opacity:0}}
html[data-theme="light"] .neon-wave.is-rippling{animation-name:neon-trace-ripple-light}
@keyframes neon-trace-ripple-light{0%{--neon-radius:0px;opacity:0}18%{opacity:.055}48%{opacity:.075}100%{--neon-radius:235px;opacity:0}}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.neon-trace{display:none}}

/* Die Farbschicht der PNGs wird weggefiltert: sichtbar bleiben nur lichte Straßenadern. */
.neon-filter-defs{position:absolute;overflow:hidden;pointer-events:none}
.neon-wave{filter:url('#neon-line-filter') drop-shadow(0 0 5px #ad5cff);mix-blend-mode:screen;-webkit-mask-image:radial-gradient(circle at var(--neon-x) var(--neon-y),transparent calc(var(--neon-radius) - 16px),#000 calc(var(--neon-radius) - 7px),#000 calc(var(--neon-radius) + 5px),transparent calc(var(--neon-radius) + 23px));mask-image:radial-gradient(circle at var(--neon-x) var(--neon-y),transparent calc(var(--neon-radius) - 16px),#000 calc(var(--neon-radius) - 7px),#000 calc(var(--neon-radius) + 5px),transparent calc(var(--neon-radius) + 23px))}
@keyframes neon-trace-ripple{0%{--neon-radius:0px;opacity:0}10%{opacity:.62}34%{opacity:.68}65%{opacity:.46}100%{--neon-radius:310px;opacity:0}}
html[data-theme="light"] .neon-wave{mix-blend-mode:multiply}
@keyframes neon-trace-ripple-light{0%{--neon-radius:0px;opacity:0}10%{opacity:.23}34%{opacity:.27}65%{opacity:.15}100%{--neon-radius:310px;opacity:0}}
.neon-current{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen}
html[data-theme="light"] .neon-current{mix-blend-mode:multiply}

/* Wissen / Entdecken: Bildstrecke und fünf kuratierte Themenfelder. */
.knowledge-editorial{display:grid;grid-template-columns:minmax(310px,.85fr) minmax(0,1.15fr);min-height:355px;padding-top:22px;gap:0}
.knowledge-editorial-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:32px 42px 34px 0;position:relative;z-index:1}
.knowledge-editorial-copy .display-title{font-size:clamp(70px,7.8vw,126px);line-height:.76;margin:19px 0 23px;max-width:none}
.knowledge-editorial-copy>p{max-width:510px;color:var(--muted);font-size:clamp(13px,1.2vw,18px);line-height:1.55;margin:0}
.knowledge-editorial-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:530px;margin-top:25px;border-top:1px solid var(--line);padding-top:15px}
.knowledge-editorial-stats>div{padding:2px 13px;border-right:1px solid var(--line)}.knowledge-editorial-stats>div:first-child{padding-left:0}.knowledge-editorial-stats>div:last-child{border:0}
.knowledge-editorial-stats b,.knowledge-editorial-stats span{display:block}.knowledge-editorial-stats b{font:900 34px/.86 'Barlow Condensed',sans-serif}.knowledge-editorial-stats span{font:9px/1.3 'DM Mono',monospace;color:var(--muted);margin-top:6px}
.knowledge-editorial-image{position:relative;overflow:hidden;margin:0;min-height:355px;background:url('/assets/backgrounds/02-stadt-rand.webp') center/cover}
.knowledge-editorial-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 49%;opacity:.77;mask-image:linear-gradient(90deg,transparent,#000 22%,#000 84%,transparent)}
.knowledge-editorial-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0a0c12aa,transparent 44%);pointer-events:none}
.knowledge-editorial-image figcaption{position:absolute;z-index:1;left:22px;bottom:15px;color:#fff;font:9px 'DM Mono',monospace;letter-spacing:.1em}
.knowledge-groups{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:10px}
.knowledge-group{display:flex;min-width:0;flex-direction:column;border:1px solid var(--line);background:var(--surface);transition:border-color .25s ease}
.knowledge-group:hover{border-color:var(--purple)}
.knowledge-group-art{height:145px;position:relative;overflow:hidden;background:var(--surface-3)}
.knowledge-group-art img{width:100%;height:100%;object-fit:cover;opacity:.82;transition:transform .4s ease,opacity .4s ease}
.knowledge-group:hover .knowledge-group-art img{transform:scale(1.045);opacity:.96}
.knowledge-group-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0a0c1288,transparent 50%)}
.knowledge-group-art>span{position:absolute;z-index:1;left:12px;bottom:10px;color:#fff;font:9px 'DM Mono',monospace;letter-spacing:.08em}
.knowledge-group-head{position:relative;padding:22px 17px 12px;min-height:141px}
.knowledge-group-icon{position:absolute;top:-23px;left:17px;width:37px;height:37px;display:grid;place-items:center;background:var(--purple-2);color:#fff;border:2px solid var(--surface);font:21px 'Barlow Condensed',sans-serif;box-shadow:0 5px 18px #4a137754}
.knowledge-group h2{font:800 clamp(19px,1.7vw,27px)/.94 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0 0 9px}
.knowledge-group p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}
.knowledge-group-links{margin-top:auto;padding:0 12px 8px}
.knowledge-link{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:54px;padding:9px 5px;border-top:1px solid var(--line)}
.knowledge-link b,.knowledge-link small{display:block}.knowledge-link b{font:700 12px/1.25 'Barlow Condensed',sans-serif}.knowledge-link small{font:8px/1.25 'DM Mono',monospace;color:var(--purple);margin-top:4px}.knowledge-link>span:last-child{font-size:17px;flex:none;color:var(--orange)}
.knowledge-link:hover b{color:var(--purple)}
.knowledge-editorial-note{display:flex;align-items:center;gap:24px;padding-top:19px;padding-bottom:12px}.knowledge-editorial-note p{max-width:800px;color:var(--muted);font-size:10px;line-height:1.6}.knowledge-editorial-note .button{margin-left:auto;white-space:nowrap}
html[data-theme="light"] .knowledge-editorial-image{background-color:#ede7e4}
@media(max-width:1150px){.knowledge-groups{grid-template-columns:repeat(3,minmax(0,1fr))}.knowledge-editorial-copy .display-title{font-size:clamp(65px,8vw,105px)}.knowledge-editorial-image{min-height:335px}}
@media(max-width:760px){.knowledge-editorial{grid-template-columns:1fr}.knowledge-editorial-copy{padding:35px 0 25px}.knowledge-editorial-image{min-height:260px}.knowledge-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-editorial-note{display:block}.knowledge-editorial-note .button{margin-top:10px}}
@media(max-width:480px){.knowledge-editorial-copy .display-title{font-size:clamp(68px,18vw,95px)}.knowledge-groups{grid-template-columns:1fr}.knowledge-group-art{height:175px}.knowledge-group-head{min-height:0}.knowledge-editorial-stats b{font-size:28px}}

/* Weitere bereitgestellte Bildmotive: die Blaupause bleibt unter den Fotos sichtbar. */
.hero + .section .feature-card:nth-child(4) .card-art,
.hero + .section .feature-card:nth-child(6) .card-art,
.hero + .section .feature-card:nth-child(7) .card-art,
.hero + .section .feature-card:nth-child(8) .card-art{background:url('/assets/backgrounds/01-stadt-rechts.webp') center/cover}
.hero + .section .feature-card:nth-child(4) .card-art:before,
.hero + .section .feature-card:nth-child(6) .card-art:before,
.hero + .section .feature-card:nth-child(7) .card-art:before,
.hero + .section .feature-card:nth-child(8) .card-art:before{content:"";position:absolute;inset:0;background-size:cover;background-position:center;opacity:.78}
.hero + .section .feature-card:nth-child(4) .card-art:before{background-image:url('/assets/photos/18-window-node-night.webp')}
.hero + .section .feature-card:nth-child(6) .card-art:before{background-image:url('/assets/photos/14-workbench-close.webp')}
.hero + .section .feature-card:nth-child(7) .card-art:before{background-image:url('/assets/photos/10-street-tdeck-node.webp')}
.hero + .section .feature-card:nth-child(8) .card-art:before{background-image:url('/assets/photos/13-workbench-wide.webp')}
.hero + .section .feature-card:nth-child(4) .card-art .art-stamp,
.hero + .section .feature-card:nth-child(6) .card-art .art-stamp,
.hero + .section .feature-card:nth-child(7) .card-art .art-stamp,
.hero + .section .feature-card:nth-child(8) .card-art .art-stamp{position:relative;z-index:2}
.hardware-photo{object-position:center 46%}
.hero-photo{object-position:51% 50%}
body[data-page="meshgame"] .page-hero:before{background-image:url('/assets/photos/11-city-node.webp');background-position:50% 50%}
body[data-page="flasher"] .page-hero:before{background-image:url('/assets/photos/09-tdeck-between-laptops.webp');background-position:50% 38%}
.knowledge-editorial-image img{object-position:50% 56%}
.journey-map .journey-art{background:url('/assets/photos/11-city-node.webp') center 49%/cover}
.journey-notes .journey-art{background:url('/assets/photos/17-workbench-overhead-alt.webp') center 50%/cover}
.journey-device .journey-art{background:url('/assets/photos/09-tdeck-between-laptops.webp') center 41%/cover}
.journey-software .journey-art{background:url('/assets/photos/16-workbench-overhead.webp') center 50%/cover}
.journey-kit .journey-art{background:url('/assets/photos/18-window-node-night.webp') center 49%/cover}
.journey-print .journey-art{background:url('/assets/photos/15-workbench-angle.webp') center 50%/cover}
.journey-knowledge .journey-art{background:url('/assets/photos/10-street-tdeck-node.webp') center 50%/cover}
.journey-community .journey-art{background:url('/assets/photos/19-neon-feathers.webp') center 55%/cover}
.journey-map .journey-art:before,.journey-notes .journey-art:before,
.journey-device .journey-art:before,.journey-software .journey-art:before,
.journey-kit .journey-art:before,.journey-print .journey-art:before,
.journey-knowledge .journey-art:before,.journey-community .journey-art:before{display:none}
.journey-art:after{background:linear-gradient(0deg,#02030a6b,transparent 70%);opacity:.9}
.journey-column:nth-child(1) .journey-card:nth-child(3) .journey-art{background:url('/assets/photos/04-tdeck-map.webp') center 45%/cover}
.journey-column:nth-child(2) .journey-card:nth-child(3) .journey-art{background:url('/assets/photos/02-tdeck-hand.webp') center 48%/cover}
.journey-column:nth-child(3) .journey-card:nth-child(2) .journey-art{background:url('/assets/photos/07-workbench-overhead.webp') center 50%/cover}
.journey-column:nth-child(4) .journey-card:nth-child(3) .journey-art{background:url('/assets/photos/01-tdeck-detail.webp') center 50%/cover}
.knowledge-group:nth-child(3) .knowledge-group-art img{object-position:50% 84%}
.journal-visual{position:relative;min-height:255px;overflow:hidden;margin-top:22px;border:1px solid var(--line);background:url('/assets/backgrounds/05-stadt-fluss.webp') center/cover}
.journal-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:.74;mask-image:linear-gradient(90deg,#000,transparent 97%)}
.journal-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 28%,var(--bg) 100%)}
.journal-visual figcaption{position:absolute;z-index:1;right:5%;top:50%;transform:translateY(-50%);max-width:290px;display:grid;gap:8px;text-align:right}
.journal-visual figcaption span{color:var(--orange);font:10px 'DM Mono',monospace;letter-spacing:.12em}
.journal-visual figcaption strong{font:800 clamp(28px,3vw,45px)/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.journal-visual figcaption small{color:var(--muted);font:10px/1.5 'DM Mono',monospace}
@media(max-width:650px){.journal-visual{min-height:220px}.journal-visual img{opacity:.5}.journal-visual figcaption{right:16px;max-width:210px}}

/* Eigenständige Entdecken-Layouts für die übrigen Projektseiten. */
.explore-layout{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);gap:20px;min-height:525px;padding-top:24px;padding-bottom:15px}
.explore-lead{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:38px 18px 42px 0}
.explore-lead .display-title{font-size:clamp(68px,7.4vw,120px);line-height:.76;margin:20px 0 22px;max-width:730px}
.explore-lead p{max-width:500px;color:var(--muted);font-size:15px;line-height:1.65;margin:0 0 25px}
.explore-main-photo{position:relative;margin:0;overflow:hidden;min-height:500px;background:url('/assets/backgrounds/03-stadt-ost.webp') center/cover}
.explore-main-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;opacity:.84;mask-image:linear-gradient(90deg,transparent,#000 17%,#000 86%,transparent)}
.explore-main-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0b0d1390,transparent 40%);pointer-events:none}
.explore-main-photo figcaption{position:absolute;z-index:1;left:18px;bottom:15px;color:#fff;font:9px 'DM Mono',monospace;letter-spacing:.08em}
.explore-software{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}
.explore-software .explore-lead{padding:38px 0 42px 25px}
.explore-flasher .explore-main-photo img{object-position:center 28%}
.explore-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding-top:15px;padding-bottom:22px}
.explore-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);background:var(--surface);transition:border-color .25s,box-shadow .25s,transform .25s}
.explore-card:hover{border-color:var(--purple);box-shadow:0 16px 32px #0004}
.explore-card-image{height:190px;position:relative;display:block;overflow:hidden;background:url('/assets/backgrounds/04-stadt-links.webp') center/cover}
.explore-card-image img{width:100%;height:100%;object-fit:cover;opacity:.8;transition:transform .4s,opacity .4s}
.explore-card:hover .explore-card-image img{transform:scale(1.045);opacity:.96}
.explore-card-body{display:flex;flex-direction:column;gap:8px;min-height:160px;padding:18px}
.explore-card-body small{color:var(--orange);font:9px 'DM Mono',monospace;letter-spacing:.09em}
.explore-card-body strong{font:800 clamp(25px,2.6vw,39px)/.91 'Barlow Condensed',sans-serif;text-transform:uppercase}
.explore-card-body>span{color:var(--muted);font-size:11px;line-height:1.5}
.explore-card-body em{margin-top:auto;padding-top:8px;color:var(--purple);font:10px 'DM Mono',monospace;font-style:normal;text-transform:uppercase}
.explore-image-hero{position:relative;isolation:isolate;min-height:550px;display:flex;align-items:center;overflow:hidden;background:url('/assets/backgrounds/01-stadt-rechts.webp') center/cover}
.explore-image-hero>img{position:absolute;z-index:-1;inset:0 0 0 auto;width:72%;height:100%;object-fit:cover;object-position:center 73%;opacity:.8;mask-image:linear-gradient(90deg,transparent,#000 19%,#000 89%,transparent)}
.explore-image-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bg) 1%,transparent 56%);pointer-events:none}
.explore-image-hero>div{max-width:570px;position:relative;z-index:1;padding:45px 0}
.explore-image-hero .display-title{font-size:clamp(75px,8vw,132px);line-height:.77;margin:22px 0}
.explore-image-hero p{max-width:470px;color:var(--text);font-size:15px;line-height:1.65;margin:0 0 25px}
.explore-image-hero>small{position:absolute;right:18px;bottom:15px;z-index:1;padding:6px 8px;background:#0b0d13b8;color:#fff;font:9px 'DM Mono',monospace}
.explore-gear>img{object-position:center 55%}
.explore-journal>img{object-position:center 55%}
.explore-journal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.explore-journal-grid .explore-card-image{height:160px}
.explore-simulator{display:grid;grid-template-columns:minmax(260px,.6fr) minmax(0,1.4fr);gap:22px;align-items:center;margin-top:24px;margin-bottom:24px;padding-top:24px;padding-bottom:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.explore-simulator>div{padding:18px 20px 18px 0}
.explore-simulator h2{font:800 clamp(39px,4vw,60px)/.85 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:16px 0}
.explore-simulator p{color:var(--muted);font-size:12px;line-height:1.6;max-width:350px}
.explore-simulator .button{display:inline-flex;margin-top:12px}
.explore-simulator iframe{width:100%;height:540px;border:1px solid var(--purple);border-radius:4px;background:#0b0d13}
html[data-theme="light"] .explore-image-hero:after{background:linear-gradient(90deg,var(--bg) 0%,#f2f0eb52 53%,transparent)}
@media(max-width:1100px){.explore-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-layout{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr)}}
@media(max-width:760px){.explore-layout,.explore-software{grid-template-columns:1fr;gap:0}.explore-lead,.explore-software .explore-lead{padding:25px 0}.explore-software .explore-main-photo{order:2}.explore-main-photo{min-height:350px}.explore-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-image-hero{min-height:590px;align-items:flex-start}.explore-image-hero>img{width:100%;height:80%;top:20%;opacity:.55;mask-image:linear-gradient(0deg,#000,transparent 96%)}.explore-image-hero:after{background:linear-gradient(0deg,transparent,var(--bg) 95%)}.explore-image-hero>div{padding-top:45px}.explore-simulator{grid-template-columns:1fr}.explore-simulator iframe{height:480px}}
@media(max-width:520px){.explore-lead .display-title,.explore-image-hero .display-title{font-size:clamp(68px,16vw,98px)}.explore-card-grid,.explore-journal-grid{grid-template-columns:1fr}.explore-card-image{height:180px}.explore-image-hero>small{left:12px;right:auto;max-width:90%}.explore-simulator iframe{height:420px}}
.site-header .brand{flex-basis:250px}
.site-header .brand .meshtastic-mark{width:48px;height:48px;flex:none;margin-left:2px;image-rendering:auto;filter:drop-shadow(0 0 8px #5ee99a55)}
@media(max-width:1180px){.site-header .brand{flex-basis:250px}.site-header .brand .meshtastic-mark{width:48px;height:48px}}
@media(max-width:480px){.site-header .brand{flex-basis:auto;gap:6px}.site-header .brand .meshtastic-mark{width:48px;height:48px;margin-left:0}}
.discover-mark{width:75px;height:88px;image-rendering:pixelated}
.knowledge-editorial{position:relative}
.knowledge-pixel{position:absolute;z-index:2;left:43%;top:10%;width:58px;height:66px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 0 10px #a127ff88);pointer-events:none}
.explore-map:before,.explore-gear:before,.explore-journal:before{content:"";position:absolute;z-index:2;right:4%;top:6%;width:125px;height:155px;background:url('/assets/characters/pixel-raven-pin.webp') center/contain no-repeat;image-rendering:pixelated;filter:drop-shadow(0 0 15px #8c16fa8a);pointer-events:none}
.explore-gear:before{background-image:url('/assets/characters/pixel-raven-avatar.webp');top:auto;bottom:5%;width:150px;height:195px}
.explore-journal:before{background-image:url('/assets/characters/pixel-feather.webp');width:120px;height:130px}
.explore-hardware .explore-lead:after{content:"";position:absolute;right:0;bottom:20px;width:115px;height:145px;background:url('/assets/characters/pixel-feather.webp') center/contain no-repeat;image-rendering:pixelated;opacity:.75;pointer-events:none}
@media(max-width:760px){.knowledge-pixel{left:auto;right:16px;top:20px;width:45px;height:55px}.explore-map:before,.explore-gear:before,.explore-journal:before{width:80px;height:105px;top:auto;bottom:6%;right:4%}.explore-hardware .explore-lead:after{width:70px;height:90px;bottom:0}}

/* Vorbereiteter Software-Modulplan nach der bereitgestellten Strukturreferenz. */
.software-architecture{padding-top:36px;padding-bottom:42px}
.software-architecture-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);column-gap:35px;align-items:end;margin-bottom:20px}
.software-architecture-heading .section-kicker{grid-column:1/-1}
.software-architecture-heading h2,.software-journey-heading h2{font:900 clamp(35px,4.4vw,68px)/.88 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:15px 0 0}
.software-architecture-heading p{color:var(--muted);font-size:12px;line-height:1.65;margin:0}
.software-map{display:grid;grid-template-columns:minmax(230px,.9fr) minmax(280px,1.1fr) minmax(230px,.9fr);gap:13px;min-height:590px}
.software-map-side{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:13px}
.software-map-node{display:flex;flex-direction:column;justify-content:space-between;gap:10px;min-width:0;padding:13px;background:var(--surface);border:1px solid var(--line);transition:border-color .2s,box-shadow .2s}
.software-map-node-content{display:flex;gap:12px;min-width:0}
.software-map-node:hover{border-color:var(--purple);box-shadow:0 10px 28px #0003}
.software-map-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;background:var(--purple-2);color:#fff;font:700 25px 'Barlow Condensed',sans-serif}
.software-map-node small{color:var(--orange);font:9px 'DM Mono',monospace;letter-spacing:.08em}
.software-map-node h3{margin:7px 0 5px;font:800 clamp(20px,1.8vw,29px)/.9 'Barlow Condensed',sans-serif;text-transform:uppercase}
.software-map-node p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}
.software-map-node em{display:block;margin-top:10px;color:var(--purple);font:8px 'DM Mono',monospace;font-style:normal}
.software-map-media{display:grid;place-items:center;min-height:37px;border:1px dashed color-mix(in srgb,var(--purple) 50%,var(--line));background:linear-gradient(120deg,#3b11781a,#0987cc13);color:var(--muted);font:8px 'DM Mono',monospace;letter-spacing:.11em}
.software-map-center{position:relative;overflow:hidden;margin:0;border:1px solid var(--purple);background:url('/assets/backgrounds/03-stadt-ost.webp') center/cover}
.software-map-center img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:.81;mask-image:radial-gradient(ellipse 78% 85% at 50% 50%,#000 58%,transparent)}
.software-map-center:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0b0d1390,transparent 40%);pointer-events:none}
.software-map-center figcaption{position:absolute;z-index:1;left:14px;bottom:12px;color:#fff;font:9px 'DM Mono',monospace}
.software-journey-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin:38px 0 18px}
.software-journey-heading h2{font-size:clamp(34px,4vw,56px)}
.software-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.software-journey-step{min-width:0;border:1px solid var(--line);background:var(--surface)}
.software-journey-placeholder{height:155px;display:grid;place-items:center;position:relative;overflow:hidden;background:url('/assets/backgrounds/05-stadt-fluss.webp') center/cover}
.software-journey-placeholder:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#10121acc,#42137255)}
.software-journey-placeholder b{position:relative;z-index:1;padding:8px 11px;border:1px dashed #d6b1ffb0;background:#0c0e14a3;color:#e6d5ff;font:10px 'DM Mono',monospace;letter-spacing:.12em}
.software-journey-step>div{padding:17px;min-height:145px}
.software-journey-step small{color:var(--orange);font:9px 'DM Mono',monospace}
.software-journey-step h3{margin:9px 0 6px;font:800 27px/.9 'Barlow Condensed',sans-serif}
.software-journey-step p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}
@media(max-width:1100px){.software-map{grid-template-columns:repeat(2,minmax(0,1fr))}.software-map-center{grid-column:1/-1;grid-row:1;min-height:400px}.software-map-side{grid-template-rows:none}.software-journey{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.software-architecture-heading{display:block}.software-architecture-heading p{margin-top:12px}.software-map{grid-template-columns:1fr}.software-map-center{grid-column:1;min-height:360px}.software-map-side{grid-template-rows:none}.software-journey-heading{align-items:start;flex-direction:column}.software-journey{grid-template-columns:1fr}.software-journey-placeholder{height:125px}}

/* The light start view uses the supplied workbench photo across the whole hero. */
html[data-theme="light"] body[data-page="start"] .hero{min-height:650px;isolation:isolate}
html[data-theme="light"] body[data-page="start"] .hero:before{inset:0 calc(50% - 50vw);z-index:-1;opacity:1;mask-image:none;background:linear-gradient(90deg,rgba(8,10,22,.90) 0%,rgba(8,10,22,.78) 27%,rgba(8,10,22,.41) 51%,rgba(8,10,22,.13) 75%,rgba(8,10,22,.22) 100%),linear-gradient(0deg,rgba(8,10,22,.34),transparent 28%),url('/assets/photos/12-workbench-tdeck.webp') center 54%/cover no-repeat}
html[data-theme="light"] body[data-page="start"] .hero-photo{display:none}
html[data-theme="light"] body[data-page="start"] .hero-art{background:transparent}
html[data-theme="light"] body[data-page="start"] .hero-copy,html[data-theme="light"] body[data-page="start"] .hero .display-title,html[data-theme="light"] body[data-page="start"] .hero .display-title em,html[data-theme="light"] body[data-page="start"] .hero .lead,html[data-theme="light"] body[data-page="start"] .hero .stat b{color:#fff}
html[data-theme="light"] body[data-page="start"] .hero .display-title{text-shadow:0 3px 20px #0009}
html[data-theme="light"] body[data-page="start"] .hero .section-kicker,html[data-theme="light"] body[data-page="start"] .hero .stat small{color:#f0e9fb}
html[data-theme="light"] body[data-page="start"] .hero .stat{border-color:#ffffff70}
html[data-theme="light"] body[data-page="start"] .hero .button:not(.primary){background:#f8f6f0e9;color:#181918;border-color:#fff}
@media(max-width:680px){html[data-theme="light"] body[data-page="start"] .hero:before{background-position:center,center,58% center;background-size:auto,auto,cover}html[data-theme="light"] body[data-page="start"] .hero-art{min-height:300px}}

/* T-Deck wordmark with the Meshtastic and MeshGame app icons. */
.brand-cluster{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.site-header .brand{flex:0 0 auto;width:auto}
.site-header .brand .tdeck-wordmark{display:block;width:230px;height:60px;flex:none;object-fit:contain;image-rendering:auto}
html[data-theme="light"] .site-header .brand .tdeck-wordmark{filter:brightness(0)}
.brand-app-marks{display:flex;align-items:center;gap:6px}
.brand-app-marks .meshtastic-mark{display:block;width:46px;height:46px;object-fit:contain}
.meshgame-mark{display:grid;place-items:center;width:44px;height:44px;overflow:hidden;border:1px solid #d6d5d8;border-radius:14px;background:#fff;box-shadow:0 5px 16px #16052c26;transition:transform .18s,border-color .18s}
.meshgame-mark:hover{transform:translateY(-2px) scale(1.04);border-color:var(--purple)}
.meshgame-mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:13px}
@media(max-width:1350px){.site-header .brand .tdeck-wordmark{width:185px;height:55px}.brand-app-marks .meshtastic-mark{width:42px;height:42px}.meshgame-mark{width:40px;height:40px;border-radius:13px}.meshgame-mark img{border-radius:12px}}
@media(max-width:1180px){.site-header .brand .tdeck-wordmark{width:153px;height:52px}.brand-cluster{gap:8px}.brand-app-marks{gap:4px}.brand-app-marks .meshtastic-mark{width:38px;height:38px}.meshgame-mark{width:36px;height:36px;border-radius:11px}.meshgame-mark img{border-radius:10px}}
@media(max-width:680px){.site-header .brand .tdeck-wordmark{width:126px;height:46px}.brand-cluster{gap:7px}.brand-app-marks .meshtastic-mark{width:36px;height:36px}.meshgame-mark{width:34px;height:34px;border-radius:10px}.meshgame-mark img{border-radius:9px}}
@media(max-width:360px){.site-header .brand .tdeck-wordmark{width:100px;height:42px}.brand-app-marks .meshtastic-mark{width:32px;height:32px}.meshgame-mark{width:30px;height:30px}}
.hero-feather{position:absolute;z-index:4;right:4%;top:6%;width:clamp(130px,11vw,185px);height:auto;image-rendering:pixelated;filter:drop-shadow(0 13px 18px #090716aa) drop-shadow(0 0 17px #8c16fa88);pointer-events:none;transform:rotate(7deg)}
@media(max-width:680px){.hero-feather{right:5%;top:3%;width:115px}}
.hardware-device-art.heltec{background:url('/assets/backgrounds/03-stadt-ost.webp') center/cover}
.hardware-device-art.heltec .hardware-photo{object-fit:contain;object-position:center;opacity:.93}
.explore-hardware .explore-main-photo img{object-position:center 53%}
.explore-hardware .explore-card:nth-child(2) .explore-card-image img{object-position:center 70%}

/* Hardware setup cards stay dark in the light theme. */
html[data-theme="light"] body[data-page="hardware"] .hardware-setup-grid .panel{background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="hardware"] .hardware-setup-grid .panel :is(p,li,.section-kicker){color:#fff}
html[data-theme="light"] body[data-page="hardware"] .hardware-setup-grid .panel .button{background:#14151b;color:#fff;border-color:#6a6b73}
html[data-theme="light"] body[data-page="hardware"] .hardware-setup-grid .panel .button:hover{background:#252631;border-color:#fff}

/* Keep software description cards easy on the eyes in the light theme. */
html[data-theme="light"] body[data-page="software"] :is(.software-map-node,.software-module,.split-panel .panel){background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="software"] .software-module{border-top-color:#a444ff}
html[data-theme="light"] body[data-page="software"] .software-module:nth-child(2){border-top-color:#ff623b}
html[data-theme="light"] body[data-page="software"] :is(.software-map-node,.software-module,.split-panel .panel) :is(p,small,em,.section-kicker,a,.software-module>span){color:#fff}
html[data-theme="light"] body[data-page="software"] .software-map-media{background:#171821;color:#fff;border-color:#6d4d95}
html[data-theme="light"] body[data-page="software"] .split-panel .panel .button{background:#14151b;color:#fff;border-color:#6a6b73}
html[data-theme="light"] body[data-page="software"] .split-panel .panel .button:hover{background:#252631;border-color:#fff}

/* Map notes, map status, and footer stay dark in the light map view. */
html[data-theme="light"] body[data-page="meshgame"] .map-sidebar .panel:not(.map-entry){background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="meshgame"] .map-sidebar .panel:not(.map-entry) :is(.eyebrow,.observation-count,.card-copy,p,.observation-empty){color:#fff}
html[data-theme="light"] body[data-page="meshgame"] .map-sidebar .observation-empty{background:#171821;border-color:#4d4e58}
html[data-theme="light"] body[data-page="meshgame"] .map-sidebar .note-row{background:#171821;border-color:#4d4e58}
html[data-theme="light"] body[data-page="meshgame"] .map-sidebar .note-row :is(button,small){color:#fff}
html[data-theme="light"] body[data-page="meshgame"] .site-footer{background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="meshgame"] .site-footer .small-brand small{color:#fff}
html[data-theme="light"] .site-footer{background:#090a0e;color:#fff;border:1px solid #30313a}
html[data-theme="light"] .site-footer :is(strong,small,span,a){color:#fff}
html[data-theme="light"] body[data-page="start"] .split-panel .panel,
html[data-theme="light"] body[data-page="blog"] :is(.story-card,.panel){background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="start"] .split-panel .panel :is(p,.section-kicker,code),
html[data-theme="light"] body[data-page="blog"] :is(.story-card,.panel) :is(p,time,.section-kicker){color:#fff}
html[data-theme="light"] body[data-page="start"] .split-panel .panel .button{background:#14151b;color:#fff;border-color:#6a6b73}
html[data-theme="light"] body[data-page="blog"] .story-card .status-tag{background:#171821;color:#fff;border-color:#4d4e58}
html[data-theme="light"] body[data-page="flasher"] :is(.sim-note,.steps .step,.file-samples .sample){background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="flasher"] :is(.sim-note,.steps .step,.file-samples .sample) :is(p,li,small,code,.eyebrow,h2,h3,b){color:#fff}
html[data-theme="light"] body[data-page="flasher"] .step:before{color:#fff}
html[data-theme="light"] body[data-page="flasher"] .sim-note .download-row{border-color:#4d4e58}
html[data-theme="light"] body[data-page="flasher"] .sim-note .status-tag{background:#171821;color:#fff;border-color:#4d4e58}
html[data-theme="light"] body[data-page="flasher"] .file-samples .sample .button{background:#14151b;color:#fff;border-color:#6a6b73}
html[data-theme="light"] body[data-page="flasher"] .file-samples .sample .button:hover{background:#252631;border-color:#fff}
html[data-theme="light"] body[data-page="wissen"] .resource-grid .resource-card{background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="wissen"] .resource-grid .resource-card :is(.resource-type,h3,p,a){color:#fff}
html[data-theme="light"] body[data-page="wissen"] .resource-grid .resource-card a:hover{text-decoration:underline}
.hero-art .hero-emblem{position:absolute;z-index:3;top:clamp(16px,3.5vw,52px);right:clamp(16px,3.5vw,52px);width:clamp(112px,14vw,190px);height:auto;image-rendering:pixelated;filter:drop-shadow(0 10px 22px #16052caa);transform:rotate(7deg);pointer-events:none}
@media(max-width:680px){.hero-art .hero-emblem{top:16px;right:22px;width:clamp(96px,17vw,138px)}}

/* MeshGame companion section and dark cartography on the Berlin map page. */
#exploreMap .leaflet-tile-pane{filter:invert(.88) hue-rotate(180deg) saturate(.76) brightness(.82) contrast(.92)}
.meshgame-overview{padding-top:42px;border-top:1px solid var(--line)}
.meshgame-heading{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:24px}
.meshgame-heading>img{width:72px;height:72px;object-fit:cover;border:1px solid #d6d5d8;border-radius:20px;background:#fff;box-shadow:0 8px 24px #16052c24}
.meshgame-heading h2,.voice-input-guide h2{margin:7px 0 8px;font:800 clamp(30px,4vw,54px)/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.meshgame-heading p,.voice-guide-lead{max-width:790px;margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.meshgame-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0 28px}
.meshgame-stats article{display:flex;flex-direction:column;gap:7px;padding:17px;background:var(--surface);border:1px solid var(--line)}
.meshgame-stats strong{font:800 30px/.95 'Barlow Condensed',sans-serif;color:var(--purple)}
.meshgame-stats span{font-size:13px;font-weight:800;text-transform:uppercase}
.meshgame-stats small{color:var(--muted);font-size:11px;line-height:1.5}
.meshgame-boundary,.voice-guide-status{margin-top:16px;padding:16px 18px;border-left:3px solid var(--orange);background:color-mix(in srgb,var(--orange) 8%,var(--surface));color:var(--muted);font-size:12px;line-height:1.7}
.meshgame-boundary{padding-right:82px}
.meshgame-boundary b,.voice-guide-status b{color:var(--text)}
.voice-input-guide{padding-top:44px;border-top:1px solid var(--line)}
.voice-guide-lead{max-width:900px}
.voice-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.voice-guide-grid article{padding:20px;background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--purple)}
.voice-guide-grid h3{margin:0 0 9px;font:800 22px 'Barlow Condensed',sans-serif;text-transform:uppercase}
.voice-guide-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.voice-guide-grid code{color:var(--purple);font-family:'DM Mono',monospace}
.voice-input-guide .button-row{margin-top:14px}
html[data-theme="light"] body[data-page="meshgame"] .meshgame-overview .meshgame-stats article{background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="meshgame"] .meshgame-stats small{color:#e0e0e5}
html[data-theme="light"] body[data-page="software"] .voice-guide-grid article{background:#090a0e;color:#fff;border-color:#30313a;border-top-color:var(--purple)}
html[data-theme="light"] body[data-page="software"] .voice-guide-grid p{color:#e0e0e5}
@media(max-width:820px){.meshgame-heading{grid-template-columns:60px minmax(0,1fr)}.meshgame-heading>img{width:58px;height:58px;border-radius:16px}.meshgame-heading>.button{grid-column:2;justify-self:start}.voice-guide-grid{grid-template-columns:1fr 1fr}}
.explore-map>img{width:76%;object-fit:contain;object-position:right center;opacity:.98;mask-image:linear-gradient(90deg,transparent,#000 17%,#000 100%)}.explore-map:before{display:none}@media(max-width:760px){.explore-map>img{width:100%;height:76%;top:24%;object-fit:contain;object-position:center bottom;opacity:1;mask-image:linear-gradient(0deg,#000 12%,#000 82%,transparent 100%)}}
@media(max-width:560px){.meshgame-stats{grid-template-columns:1fr}.meshgame-heading{grid-template-columns:48px minmax(0,1fr);gap:12px}.meshgame-heading>img{width:48px;height:48px;border-radius:14px}.voice-guide-grid{grid-template-columns:1fr}.meshgame-boundary{padding-right:18px;padding-bottom:80px}.meshgame-overview,.voice-input-guide{padding-top:32px}}

/* Full-color Berlin T-Deck photo beside the map introduction. */
body[data-page="meshgame"] .page-hero:before{inset:0 0 0 43%;background-image:url('/assets/photos/22-tdeck-berlin-sunlight.png');background-position:50% 50%;background-size:cover;opacity:.88;mask-image:linear-gradient(90deg,transparent 0%,#000 24%)}
body[data-page="meshgame"] .page-hero:after{display:none}
html[data-theme="light"] body[data-page="meshgame"] .page-hero:before{opacity:.88}
html[data-theme="dark"] body[data-page="meshgame"] .page-hero{background-image:none}
@media(max-width:800px){body[data-page="meshgame"] .page-hero{padding-bottom:280px}body[data-page="meshgame"] .page-hero:before{inset:auto 0 0;height:245px;background-position:50% 45%;mask-image:linear-gradient(180deg,transparent 0%,#000 28%)}}

/* MeshGame header prompt and device-confirmed map settings. */
.brand-app-marks{position:relative}
.meshgame-prompt{position:absolute;top:calc(100% + 9px);right:-10px;z-index:60;width:max-content;max-width:min(220px,70vw);pointer-events:none}
.meshgame-prompt span{position:absolute;top:0;right:0;display:block;padding:9px 12px;border:1px solid #c98eff;border-radius:10px;background:#130a20;color:#fff;box-shadow:0 8px 24px #16052c55;font:800 10px/1.25 'DM Mono',monospace;letter-spacing:.04em;white-space:nowrap;opacity:0;transform:translateY(-8px) scale(.96);animation:meshgamePromptCycle 12s ease-in-out infinite}
.meshgame-prompt span:before{content:"";position:absolute;right:14px;bottom:100%;border:7px solid transparent;border-bottom-color:#c98eff}
.meshgame-prompt span:after{content:"";position:absolute;right:15px;bottom:100%;border:6px solid transparent;border-bottom-color:#130a20}
.meshgame-prompt span:nth-child(2){animation-delay:-3s}
.meshgame-prompt span:nth-child(3){animation-delay:-6s}
.meshgame-prompt span:nth-child(4){animation-delay:-9s}
@keyframes meshgamePromptCycle{0%,24%{opacity:1;transform:translateY(0) scale(1)}25%,100%{opacity:0;transform:translateY(7px) scale(.98)}}
.meshgame-mark:is(:hover,:focus-visible)+.meshgame-prompt span{animation-play-state:paused}
.meshgame-mark:is(:hover,:focus-visible)+.meshgame-prompt span:first-child{opacity:1;transform:translateY(0) scale(1)}
.device-map-pills{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 13px}
.device-map-pills span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--text);font:9px 'DM Mono',monospace}
.build-hash{display:block;margin:10px 0 14px;padding:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font:10px/1.5 'DM Mono',monospace;overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){.meshgame-prompt span{animation:none;opacity:0}.meshgame-prompt span:first-child{opacity:1;transform:none}}

/* MeshGame header prompt and device-confirmed map settings. */
.brand-app-marks{position:relative}
.meshgame-prompt{position:absolute;top:calc(100% + 9px);right:-10px;z-index:60;width:max-content;max-width:min(220px,70vw);pointer-events:none}
.meshgame-prompt span{position:absolute;top:0;right:0;display:block;padding:9px 12px;border:1px solid #c98eff;border-radius:10px;background:#130a20;color:#fff;box-shadow:0 8px 24px #16052c55;font:800 10px/1.25 'DM Mono',monospace;letter-spacing:.04em;white-space:nowrap;opacity:0;transform:translateY(-8px) scale(.96);animation:meshgamePromptCycle 12s ease-in-out infinite}
.meshgame-prompt span:before{content:"";position:absolute;right:14px;bottom:100%;border:7px solid transparent;border-bottom-color:#c98eff}
.meshgame-prompt span:after{content:"";position:absolute;right:15px;bottom:100%;border:6px solid transparent;border-bottom-color:#130a20}
.meshgame-prompt span:nth-child(2){animation-delay:-3s}
.meshgame-prompt span:nth-child(3){animation-delay:-6s}
.meshgame-prompt span:nth-child(4){animation-delay:-9s}
@keyframes meshgamePromptCycle{0%,2%{opacity:0;transform:translateY(-8px) scale(.96)}5%,21%{opacity:1;transform:translateY(0) scale(1)}25%,100%{opacity:0;transform:translateY(7px) scale(.98)}}
.meshgame-mark:is(:hover,:focus-visible)+.meshgame-prompt span{animation-play-state:paused}
.meshgame-mark:is(:hover,:focus-visible)+.meshgame-prompt span:first-child{opacity:1;transform:translateY(0) scale(1)}
.device-map-pills{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 13px}
.device-map-pills span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--text);font:9px 'DM Mono',monospace}
.build-hash{display:block;margin:10px 0 14px;padding:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font:10px/1.5 'DM Mono',monospace;overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){.meshgame-prompt span{animation:none;opacity:0}.meshgame-prompt span:first-child{opacity:1;transform:none}}
body.has-scrolled .meshgame-prompt{display:none}
.meshgame-mark:is(:hover,:focus-visible)+.meshgame-prompt span:not(:first-child){visibility:hidden}
body:not([data-page="start"]) .meshgame-prompt{display:none}
body:not([data-page="start"]) .meshgame-mark:is(:hover,:focus-visible)+.meshgame-prompt{display:block}
.has-scrolled .meshgame-mark:is(:hover,:focus-visible)+.meshgame-prompt{display:block}

/* App catalogue: consistent tiles, technical detail and direct site links. */
.tdeck-app-catalog{padding-top:44px;border-top:1px solid var(--line)}
.tdeck-app-catalog>.section-heading{align-items:end;margin-bottom:16px}
.tdeck-app-catalog>.section-heading h2{font:800 clamp(36px,4.8vw,64px)/.9 'Barlow Condensed',sans-serif;text-transform:uppercase;max-width:650px;margin:9px 0}
.tdeck-app-catalog>.section-heading p{max-width:440px;color:var(--muted);font-size:13px;line-height:1.65}
.app-catalog-intro{margin:0 0 18px;padding:14px 17px;border-left:3px solid var(--purple);background:color-mix(in srgb,var(--purple) 7%,var(--surface));color:var(--muted);font-size:12px;line-height:1.65}
.app-catalog-intro b{color:var(--text)}
.tdeck-app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;align-items:stretch}
.tdeck-app-card{display:flex;flex-direction:column;min-width:0;min-height:280px;padding:17px 17px 15px;background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--purple);box-shadow:0 8px 24px #00000008;transition:transform .16s,border-color .16s,box-shadow .16s}
.tdeck-app-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--purple) 60%,var(--line));box-shadow:0 12px 28px #00000012}
.app-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.app-card-number{color:var(--purple);font:11px 'DM Mono',monospace}
.app-card-group{padding:4px 7px;border:1px solid var(--line);color:var(--muted);font:9px 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.tdeck-app-card h3{margin:12px 0 6px;font:800 25px/.98 'Barlow Condensed',sans-serif;text-transform:uppercase}
.tdeck-app-card .app-card-summary{min-height:52px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.tdeck-app-card details{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.tdeck-app-card summary{color:var(--text);font-size:11px;font-weight:750;cursor:pointer;list-style:none}
.tdeck-app-card summary::-webkit-details-marker{display:none}
.tdeck-app-card summary:after{content:"＋";float:right;color:var(--purple);font-size:14px;line-height:10px}
.tdeck-app-card details[open] summary:after{content:"−"}
.tdeck-app-card details p{margin:9px 0 0;color:var(--muted);font-size:11px;line-height:1.65}
.tdeck-app-card .app-card-link{align-self:flex-start;margin-top:auto;padding-top:13px;color:var(--purple);font-size:10px;font-weight:750;text-decoration:none}
.tdeck-app-card .app-card-link:hover{text-decoration:underline}
.voice-workflow{display:grid;grid-template-columns:minmax(200px,.55fr) minmax(0,1.45fr);gap:22px;margin-top:22px;padding:21px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--orange)}
.voice-workflow h3{margin:7px 0 0;font:800 28px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.voice-workflow p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.voice-workflow code{color:var(--purple);font-family:'DM Mono',monospace}
.voice-workflow a{color:var(--purple);font-weight:700;text-decoration:none}
.voice-workflow a:hover{text-decoration:underline}
.note-actions{justify-content:flex-start;gap:5px;flex-wrap:wrap}.note-actions .muted{font-size:8px;margin-left:auto}
#tdeck-app-documentation,#tdeck-config-templates,#tdeck-microphone{scroll-margin-top:90px}
@media(max-width:980px){.tdeck-app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tdeck-app-card{min-height:255px}}
@media(max-width:650px){.tdeck-app-grid{grid-template-columns:1fr}.tdeck-app-card{min-height:0}.tdeck-app-card .app-card-summary{min-height:0}.voice-workflow{grid-template-columns:1fr;gap:12px}.tdeck-app-catalog>.section-heading{display:block}}

.tdeck-app-card[id]{scroll-margin-top:90px}

/* Developer invitation and spotlight search */
.search-promo{position:relative;z-index:36;flex:0 0 auto}
.spotlight-search{width:auto;min-width:86px;padding:0 10px;display:flex;grid-auto-flow:column;grid-template-columns:auto auto;gap:6px;font-size:18px;animation:searchPulse 2.8s ease-in-out infinite}
.search-label{font:9px 'DM Mono',monospace;letter-spacing:.04em}
@keyframes searchPulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--purple) 0%,transparent);border-color:var(--line)}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--purple) 22%,transparent);border-color:var(--purple)}}
.search-speech{position:absolute;top:calc(100% + 13px);right:-5px;width:min(260px,calc(100vw - 28px));min-height:64px;padding:13px 15px;border:1px solid var(--purple);border-radius:12px;background:var(--surface);box-shadow:0 12px 32px #0007,0 0 22px color-mix(in srgb,var(--purple) 28%,transparent);font-size:12px;font-weight:700;line-height:1.45;color:var(--text);opacity:0;transform:translateY(-9px) scale(.96);transform-origin:top right;pointer-events:none;animation:searchBubble 15s ease-in-out infinite;z-index:40}
.search-speech:before{content:"";position:absolute;right:24px;top:-7px;width:12px;height:12px;background:var(--surface);border-left:1px solid var(--purple);border-top:1px solid var(--purple);transform:rotate(45deg)}
.search-speech span{position:absolute;inset:13px 15px;display:flex;align-items:center;opacity:0;animation:searchBubbleMessage 15s ease-in-out infinite}
.search-speech span:nth-child(2){animation-delay:5s}.search-speech span:nth-child(3){animation-delay:10s}
@keyframes searchBubble{0%,4%,100%{opacity:0;transform:translateY(-9px) scale(.96)}8%,31%{opacity:1;transform:translateY(0) scale(1)}36%{opacity:0;transform:translateY(-5px) scale(.98)}}
@keyframes searchBubbleMessage{0%,5%,100%{opacity:0}9%,30%{opacity:1}}
.developer-ribbon{position:relative;z-index:29;min-height:58px;padding:9px max(30px,calc((100vw - 1520px)/2));display:flex;align-items:center;justify-content:center;gap:14px;background:linear-gradient(100deg,color-mix(in srgb,var(--purple) 13%,var(--surface)),color-mix(in srgb,var(--orange) 9%,var(--surface)) 54%,color-mix(in srgb,var(--purple) 13%,var(--surface)));border-bottom:1px solid color-mix(in srgb,var(--purple) 32%,var(--line))}
.developer-ribbon-pulse{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 0 color-mix(in srgb,var(--orange) 50%,transparent);animation:ribbonPulse 1.8s ease-out infinite}
@keyframes ribbonPulse{70%{box-shadow:0 0 0 9px transparent}100%{box-shadow:0 0 0 0 transparent}}
.developer-ribbon-copy{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--muted)}.developer-ribbon-copy strong{font:700 10px 'DM Mono',monospace;letter-spacing:.11em;color:var(--orange)}
.developer-ribbon>a{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--purple) 55%,var(--line));border-radius:7px;background:var(--surface);font:10px 'DM Mono',monospace;color:var(--text);white-space:nowrap;transition:background .2s,border-color .2s}.developer-ribbon>a:hover{background:var(--purple);border-color:var(--purple);color:white}
.contribute-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:start;padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.contribute-intro h2,.contribute-next h2{margin:10px 0 0;font:700 clamp(34px,4vw,54px)/.98 'Barlow Condensed',sans-serif;text-transform:uppercase}.contribute-intro p,.contribute-next p{margin:0;color:var(--muted);font-size:13px;line-height:1.8}
.contributor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.contributor-grid article{min-height:190px;padding:23px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.contributor-grid article>span{color:var(--orange);font:10px 'DM Mono',monospace;letter-spacing:.1em}.contributor-grid h3{margin:20px 0 9px;font:700 27px 'Barlow Condensed',sans-serif;text-transform:uppercase}.contributor-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.contribute-next{margin-top:14px;padding:28px;display:flex;justify-content:space-between;align-items:center;gap:26px;border:1px solid color-mix(in srgb,var(--purple) 45%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--purple) 7%,var(--surface))}.contribute-next>div{max-width:760px}.contribute-next h2{font-size:clamp(30px,3.4vw,44px)}.contribute-next p{margin-top:14px}
@media(max-width:980px){.site-header .header-actions .search-promo{display:block}.site-header .header-actions .search-trigger{display:flex}.site-header .header-actions{gap:9px}.search-label{display:none}.spotlight-search{min-width:38px;width:38px;padding:0}.search-speech{right:0}}
@media(max-width:680px){.developer-ribbon{min-height:68px;padding:9px 12px;gap:9px;justify-content:flex-start}.developer-ribbon-copy{display:grid;gap:3px;font-size:10px;line-height:1.35}.developer-ribbon-copy strong{font-size:9px}.developer-ribbon>a{font-size:9px;padding:8px;max-width:126px;white-space:normal;line-height:1.35}.search-speech{right:-39px;width:min(250px,calc(100vw - 24px))}.contribute-intro{grid-template-columns:1fr;gap:13px;padding:20px}.contribute-intro h2{font-size:37px}.contributor-grid{grid-template-columns:1fr}.contributor-grid article{min-height:0;padding:19px}.contributor-grid h3{margin-top:12px}.contribute-next{align-items:flex-start;flex-direction:column;padding:21px}.contribute-next h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.spotlight-search,.developer-ribbon-pulse,.search-speech,.search-speech span{animation:none}.search-speech{opacity:1;transform:none;pointer-events:auto}.search-speech span{opacity:1}.search-speech span:nth-child(n+2){display:none}}
.contact-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:min(100%,390px)}
@media(max-width:680px){.contact-links{justify-content:flex-start;min-width:0}}
.community-hub{margin-top:14px;padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.community-hub-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;align-items:end}.community-hub-heading .section-kicker{grid-column:1/-1}.community-hub-heading h2{margin:9px 0 0;font:700 clamp(40px,5vw,62px)/.9 'Barlow Condensed',sans-serif;text-transform:uppercase}.community-hub-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}.community-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:23px}.community-channel{min-height:202px;padding:20px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);border-radius:9px;background:var(--surface);transition:transform .2s,border-color .2s,box-shadow .2s}.community-channel:hover{transform:translateY(-3px);border-color:var(--purple);box-shadow:0 10px 28px #0003}.community-channel>span{font:9px 'DM Mono',monospace;letter-spacing:.12em;color:var(--orange)}.community-channel h3{margin:17px 0 7px;font:700 27px 'Barlow Condensed',sans-serif;text-transform:uppercase}.community-channel p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}.community-channel strong{margin-top:auto;padding-top:18px;color:var(--purple);font:10px 'DM Mono',monospace}.telegram-channel:hover{border-color:#2aabee}.discord-channel:hover{border-color:#5865f2}.github-channel:hover{border-color:var(--green)}
@media(max-width:680px){.community-hub{padding:20px}.community-hub-heading{grid-template-columns:1fr;gap:9px}.community-hub-heading .section-kicker{grid-column:auto}.community-hub-heading h2{font-size:46px}.community-channel-grid{grid-template-columns:1fr;margin-top:16px}.community-channel{min-height:170px}}

/* Two-level navigation with a dedicated developer invitation */
@media(min-width:981px){.site-header{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;grid-template-rows:46px 30px;column-gap:clamp(12px,1.7vw,27px);row-gap:0;height:88px;padding-top:6px;padding-bottom:6px}.brand-cluster{grid-column:1;grid-row:1/3}.main-nav{grid-column:2;grid-row:1;justify-content:center;gap:clamp(9px,1.15vw,19px);height:100%;min-width:0}.main-nav a{font-size:10px}.main-nav a[aria-current="page"]:after{bottom:5px}.secondary-nav{grid-column:2;grid-row:2;display:flex;align-items:center;justify-content:center;gap:clamp(14px,2vw,30px);min-width:0}.secondary-nav>a{display:inline-flex;align-items:center;height:100%;color:var(--muted);font:9px 'DM Mono',monospace;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}.secondary-nav>a:hover,.secondary-nav>a[aria-current="page"]{color:var(--text)}.developer-nav-promo{position:relative;z-index:38;display:inline-flex;align-items:center;height:100%}.developer-nav-cta{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--orange) 58%,var(--line));border-radius:7px;background:color-mix(in srgb,var(--orange) 9%,var(--surface));color:var(--text);font:700 9px 'DM Mono',monospace;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;animation:developerNavPulse 2.8s ease-in-out infinite}.developer-nav-cta:hover{border-color:var(--orange);background:color-mix(in srgb,var(--orange) 17%,var(--surface))}.developer-nav-cta i{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 0 color-mix(in srgb,var(--orange) 55%,transparent);animation:ribbonPulse 1.8s ease-out infinite}@keyframes developerNavPulse{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--orange) 14%,transparent)}}.developer-nav-speech{position:absolute;top:calc(100% + 10px);right:0;width:260px;min-height:62px;padding:13px 15px;border:1px solid var(--orange);border-radius:11px;background:var(--surface);box-shadow:0 12px 32px #0007,0 0 20px color-mix(in srgb,var(--orange) 22%,transparent);color:var(--text);font-size:11px;font-weight:700;line-height:1.5;opacity:0;transform:translateY(-8px) scale(.97);transform-origin:top right;pointer-events:none;animation:developerSpeechCycle 15s ease-in-out infinite;z-index:41}.developer-nav-speech:before{content:"";position:absolute;top:-7px;right:24px;width:12px;height:12px;background:var(--surface);border-left:1px solid var(--orange);border-top:1px solid var(--orange);transform:rotate(45deg)}.developer-nav-speech span{position:absolute;inset:13px 15px;display:flex;align-items:center;opacity:0;animation:developerSpeechMessage 15s ease-in-out infinite}.developer-nav-speech span:nth-child(2){animation-delay:5s}.developer-nav-speech span:nth-child(3){animation-delay:10s}@keyframes developerSpeechCycle{0%,4%,100%{opacity:0;transform:translateY(-8px) scale(.97)}8%,31%{opacity:1;transform:translateY(0) scale(1)}36%{opacity:0;transform:translateY(-5px) scale(.98)}}@keyframes developerSpeechMessage{0%,5%,100%{opacity:0}9%,30%{opacity:1}}.developer-nav-promo:focus-within .developer-nav-speech{opacity:1;transform:none;pointer-events:auto}.developer-nav-promo:focus-within .developer-nav-speech span{opacity:0}.developer-nav-promo:focus-within .developer-nav-speech span:first-child{opacity:1}}
@media(max-width:1080px) and (min-width:981px){.site-header{column-gap:12px}.main-nav{gap:8px}.main-nav a{font-size:9px}.secondary-nav{gap:12px}.site-header .header-actions>.mode-switch{display:none}.menu-toggle{display:grid}}
@media(max-width:980px){.site-header{display:flex;height:66px;padding-top:0;padding-bottom:0}.secondary-nav{display:none}}
@media(prefers-reduced-motion:reduce){.developer-nav-cta,.developer-nav-cta i,.developer-nav-speech,.developer-nav-speech span{animation:none}.developer-nav-speech{opacity:1;transform:none;pointer-events:auto}.developer-nav-speech span{opacity:1}.developer-nav-speech span:nth-child(n+2){display:none}}
@media(min-width:981px){.developer-nav-promo:focus-within .developer-nav-speech{animation:none;opacity:1;transform:none;pointer-events:auto}.developer-nav-promo:focus-within .developer-nav-speech span{animation:none;opacity:0}.developer-nav-promo:focus-within .developer-nav-speech span:first-child{opacity:1}}
.community-join-note{margin-top:14px;padding:21px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:3px solid var(--orange);background:color-mix(in srgb,var(--orange) 7%,var(--surface))}.community-join-note p{max-width:760px;margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
@media(max-width:680px){.community-join-note{align-items:flex-start;flex-direction:column;padding:18px}}

/* Full-width, readable navigation bars */
@media(min-width:1081px){
  .site-header{display:grid;grid-template-columns:minmax(0,1fr) max-content;grid-template-rows:62px 44px 44px;column-gap:22px;row-gap:0;height:150px;padding-top:0;padding-bottom:0}
  .brand-cluster{grid-column:1;grid-row:1;align-self:center}
  .site-header .header-actions{grid-column:2;grid-row:1;align-self:center}
  .main-nav{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;align-items:stretch;gap:20px;width:100%;height:100%;padding:0 26px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 30%,transparent)}
  .main-nav a{height:100%;font-size:13px;letter-spacing:.055em}
  .main-nav a[aria-current="page"]:after{bottom:7px;height:3px}
  .secondary-nav{grid-column:1/-1;grid-row:3;display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;height:100%;padding:0 26px;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-2) 53%,transparent)}
  .secondary-nav>a{font:600 12px 'Manrope',system-ui,sans-serif;letter-spacing:.035em;text-transform:none}
  .developer-nav-promo{height:100%}
  .developer-nav-cta{padding:9px 15px;font:800 12px 'Manrope',system-ui,sans-serif;letter-spacing:.025em;text-transform:none}
}
@media(max-width:1080px){.site-header{display:flex;height:66px;padding-top:0;padding-bottom:0}.main-nav,.secondary-nav{display:none}.header-actions>.mode-switch{display:none}.menu-toggle{display:grid}.mobile-nav:not([hidden]){top:66px}}

/* Keep both menu rows in the original header gap between the brand and controls. */
@media(min-width:1081px){
  .site-header{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;grid-template-rows:44px 44px;column-gap:clamp(12px,1.7vw,24px);row-gap:0;height:92px;padding-top:2px;padding-bottom:2px}
  .brand-cluster{grid-column:1;grid-row:1/3;align-self:center}
  .site-header .header-actions{grid-column:3;grid-row:1/3;align-self:center}
  .main-nav{grid-column:2;grid-row:1;display:flex;justify-content:space-between;align-items:stretch;gap:clamp(8px,.9vw,15px);width:100%;height:100%;padding:0;border:0;background:transparent}
  .main-nav a{height:100%;font-size:12px;letter-spacing:.04em}
  .main-nav a[aria-current="page"]:after{bottom:5px;height:3px}
  .secondary-nav{grid-column:2;grid-row:2;display:flex;justify-content:space-between;align-items:center;gap:clamp(8px,.9vw,15px);width:100%;height:100%;padding:0;border:0;background:transparent}
  .secondary-nav>a{font:600 11.5px 'Manrope',system-ui,sans-serif;letter-spacing:.02em;text-transform:none}
  .developer-nav-promo{height:100%}
  .developer-nav-cta{padding:8px 11px;font-size:11.5px}
}
@media(min-width:1081px){
  .site-header{grid-template-rows:32px 32px;height:64px;padding-top:0;padding-bottom:0}
  .main-nav a{font-size:13px;letter-spacing:.035em}
  .main-nav a[aria-current="page"]:after{bottom:3px;height:2px}
  .secondary-nav>a{font-size:12.5px}
  .developer-nav-cta{padding:5px 10px;font-size:12px}
}
@media(min-width:1081px){.developer-nav-cta{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--orange);font-size:12px}.developer-nav-cta:hover{border:0;background:transparent;color:var(--text)}}
@media(min-width:1081px){.developer-nav-speech span{position:static;inset:auto;display:block;opacity:1;animation:none}}

/* MeshGame imagery: supplied raven artwork on the discover card and the real device capture on the game page. */
.journey-meshgame .journey-art{background:url('/assets/photos/meshgame-raven-banner.webp') 66% 48%/cover no-repeat}
.journey-meshgame .journey-art:before{display:none}
.journey-meshgame .journey-art:after{background:linear-gradient(0deg,#02030a30,transparent 60%);opacity:1}
.meshgame-device-proof{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(24px,4vw,56px);margin-top:38px;margin-bottom:38px;padding:clamp(20px,3vw,38px);border:1px solid color-mix(in srgb,var(--purple) 55%,var(--line));border-radius:14px;background:linear-gradient(120deg,color-mix(in srgb,var(--purple) 11%,var(--surface)),var(--surface) 62%);box-shadow:0 14px 42px #0003}
.meshgame-device-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.meshgame-end-notes{padding-top:6px;padding-bottom:52px}
.meshgame-end-notes .meshgame-boundary{margin:0 0 14px}
.meshgame-device-copy h2{margin:10px 0 12px;font:800 clamp(32px,4vw,52px)/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.meshgame-device-copy p{max-width:680px;margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.meshgame-device-copy small{display:block;margin-top:16px;color:var(--purple);font:10px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.meshgame-device-figure{margin:0;justify-self:center;width:min(100%,420px);padding:9px;border:1px solid #8830dd;border-radius:12px;background:#05060a;box-shadow:0 0 26px #922aff38}
.meshgame-device-figure img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;image-rendering:pixelated;background:#05060a;border-radius:6px}
.meshgame-device-figure figcaption{padding:8px 2px 1px;color:#c9b5e6;text-align:center;font:9px 'DM Mono',monospace;letter-spacing:.09em;text-transform:uppercase}
@media(max-width:900px){.meshgame-device-proof{grid-template-columns:1fr;gap:22px}.meshgame-device-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.meshgame-device-figure{width:100%}}
@media(max-width:560px){.meshgame-device-proof{padding:18px}.meshgame-device-gallery{grid-template-columns:1fr}.meshgame-device-figure{width:min(100%,420px)}.meshgame-end-notes .meshgame-boundary{padding-bottom:16px}}

/* MeshGame symbol catalogue: one clear, responsive tile per marker. */
.meshgame-symbol-guide{padding-top:38px;padding-bottom:30px;border-top:1px solid var(--line)}
.meshgame-symbol-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px}
.meshgame-symbol-heading h2{margin:7px 0 8px;font:800 clamp(30px,4vw,48px)/.98 'Barlow Condensed',sans-serif;text-transform:uppercase}
.meshgame-symbol-heading p{max-width:780px;margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.meshgame-symbol-count{flex:0 0 auto;padding:8px 11px;border:1px solid color-mix(in srgb,var(--purple) 55%,var(--line));border-radius:999px;color:var(--purple);font:700 10px 'DM Mono',monospace;letter-spacing:.1em}
.meshgame-symbol-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.meshgame-symbol-card{display:flex;flex-direction:column;align-items:flex-start;gap:15px;min-height:380px;padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--surface);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.meshgame-symbol-card:hover,.meshgame-symbol-card:focus-within{transform:translateY(-4px);border-color:color-mix(in srgb,var(--purple) 75%,var(--line));box-shadow:0 14px 34px color-mix(in srgb,var(--purple) 22%,transparent)}
.meshgame-symbol-card.is-extra{border-style:dashed;border-color:color-mix(in srgb,var(--orange) 55%,var(--line))}
.meshgame-symbol-art{display:grid;place-items:center;align-self:center;width:min(100%,184px);height:184px;border:1px solid color-mix(in srgb,var(--purple) 45%,var(--line));border-radius:16px;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--purple) 24%,var(--surface)),var(--surface) 72%);box-shadow:inset 0 0 32px color-mix(in srgb,var(--purple) 10%,transparent)}
.meshgame-symbol-card.is-extra .meshgame-symbol-art{border-color:color-mix(in srgb,var(--orange) 55%,var(--line));background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--orange) 15%,var(--surface)),var(--surface) 72%)}
.meshgame-symbol-art img{display:block;width:min(160px,88%);height:min(160px,88%);object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 8px 16px #0008)}
.meshgame-symbol-card:hover .meshgame-symbol-art img,.meshgame-symbol-card:focus-within .meshgame-symbol-art img{animation:meshgame-pixel-hop .42s steps(5,end) both;filter:drop-shadow(0 10px 18px #7a24ff99)}
@keyframes meshgame-pixel-hop{0%{transform:translate(0,0) scale(1)}20%{transform:translate(-3px,-9px) scale(1.04)}40%{transform:translate(3px,-15px) scale(1.07)}60%{transform:translate(-2px,-9px) scale(1.05)}80%{transform:translate(1px,-3px) scale(1.02)}100%{transform:translate(0,0) scale(1)}}
.meshgame-symbol-copy{min-width:0;width:100%}
.meshgame-symbol-type{display:inline-block;margin-bottom:5px;color:var(--purple);font:700 9px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.meshgame-symbol-card.is-extra .meshgame-symbol-type{color:var(--orange)}
.meshgame-symbol-copy h3{margin:0 0 8px;font:800 25px/1 'Barlow Condensed',sans-serif;text-transform:uppercase}
.meshgame-symbol-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.68}
.meshgame-symbol-family{display:inline-block;margin-top:10px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--text);font:9px 'DM Mono',monospace;letter-spacing:.03em}
.meshgame-pathways{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:18px;padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--surface) 86%,transparent)}
.meshgame-pathways .section-kicker{margin-right:auto}
.meshgame-pathways a,.meshgame-pathways button{padding:0;border:0;background:none;color:var(--purple);font:700 10px 'DM Mono',monospace;text-decoration:none;cursor:pointer}
.meshgame-pathways a:hover,.meshgame-pathways button:hover{text-decoration:underline;text-underline-offset:3px}
html[data-theme="light"] body[data-page="meshgame"] .meshgame-symbol-card{background:#090a0e;color:#fff;border-color:#30313a}
html[data-theme="light"] body[data-page="meshgame"] .meshgame-symbol-copy p{color:#e0e0e5}
html[data-theme="light"] body[data-page="meshgame"] .meshgame-symbol-family{color:#fff;border-color:#4a4b55}
@media(max-width:900px){.meshgame-symbol-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meshgame-symbol-card{min-height:350px}.meshgame-symbol-art{height:160px}.meshgame-symbol-art img{width:min(140px,88%);height:min(140px,88%)}}
@media(max-width:560px){.meshgame-symbol-guide{padding-top:30px}.meshgame-symbol-heading{align-items:start}.meshgame-symbol-count{font-size:8px;padding:7px 8px}.meshgame-symbol-grid{grid-template-columns:1fr}.meshgame-symbol-card{min-height:0}.meshgame-symbol-art{height:180px}.meshgame-symbol-art img{width:min(156px,88%);height:min(156px,88%)}.meshgame-pathways{align-items:flex-start;flex-direction:column}.meshgame-pathways .section-kicker{margin:0}}
@media(prefers-reduced-motion:reduce){.meshgame-symbol-card,.meshgame-symbol-card:hover{transition:none;transform:none}.meshgame-symbol-card:hover .meshgame-symbol-art img,.meshgame-symbol-card:focus-within .meshgame-symbol-art img{animation:none}}


/* Manufacturer CAD viewer for the original LilyGO T-Deck. */
.model-stage model-viewer{display:block;width:100%;height:100%;min-height:inherit;background:transparent;--poster-color:transparent;--progress-bar-color:var(--purple);--progress-bar-height:2px}
.print-visual .model-stage model-viewer{min-height:510px}
.print-explore-view .model-stage model-viewer{min-height:625px}
.print-visual-label{pointer-events:none}
@media(max-width:780px){.print-visual .model-stage model-viewer{min-height:430px}.print-explore-view .model-stage model-viewer{min-height:560px}}
@media(max-width:560px){.print-visual .model-stage model-viewer{min-height:355px}.print-explore-view .model-stage model-viewer{min-height:430px}}
.model-load-fallback{position:absolute;z-index:4;left:12px;right:12px;top:54px;padding:8px;background:#101117d9;color:#fff;font:11px/1.5 'DM Mono',monospace}
.model-load-fallback[hidden]{display:none}
.model-load-fallback a{color:#d5a6ff}
.article-page{max-width:920px;padding-top:clamp(3rem,8vw,7rem);padding-bottom:5rem}.article-page .page-hero{padding-left:0;padding-right:0}.article-page .page-hero>p:last-child{color:var(--muted,#a8adb7);font-size:.9rem}.article-content{max-width:72ch;margin:0 auto;padding:clamp(1.5rem,5vw,3rem);border:1px solid var(--line,#30343e);background:rgba(17,18,24,.82);font-size:1.05rem;line-height:1.8}.article-content h2{margin:2.2em 0 .65em;font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.2}.article-content h2:first-child{margin-top:0}.article-content p,.article-content ul,.article-content blockquote{margin:0 0 1.25em}.article-content ul{padding-left:1.4em}.article-content li+li{margin-top:.45em}.article-content a{color:var(--accent,#c35dff);text-decoration:underline;text-underline-offset:.18em}.article-content code{padding:.1em .35em;border:1px solid var(--line,#30343e);border-radius:4px;background:#0d0e12;font-size:.9em}.article-content pre{overflow:auto;padding:1rem;background:#0d0e12}.article-content blockquote{padding-left:1rem;border-left:3px solid var(--accent,#c35dff);color:var(--muted,#a8adb7)}.article-footer{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.5rem 0}.story-card h3 a{color:inherit;text-decoration:none}.story-card h3 a:hover{text-decoration:underline;text-underline-offset:.18em}
