/* Produkte / weitere Webseiten */
.prod-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:18px; margin-top:22px}
.prod{display:flex; flex-direction:column; color:inherit; text-decoration:none; overflow:hidden; transition:border-color .15s, transform .08s}
.prod:hover{border-color:var(--accent)}
.prod:active{transform:translateY(1px)}
.prod .vis{aspect-ratio:16/10; background:var(--surface-2); display:flex; align-items:center; justify-content:center; border-bottom:1px solid var(--line); overflow:hidden}
.prod .vis img{width:100%; height:100%; object-fit:cover; display:block}
.prod .body{padding:16px 18px 18px; display:flex; flex-direction:column; gap:6px; flex:1}
.prod .top{display:flex; align-items:center; gap:10px}
.prod h2{font-size:19px; line-height:1.2}
.prod .typ{margin-inline-start:auto; font-family:var(--mono); font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--fg-muted); border:1px solid var(--line-strong); border-radius:999px; padding:3px 8px; white-space:nowrap}
.prod .kurz{font-size:14.5px; line-height:1.5; color:var(--fg)}
.prod .cta{margin-top:auto; padding-top:8px; font-family:var(--mono); font-size:12px; color:var(--accent)}
.prod-hero{margin-top:18px; border-radius:var(--r-l); overflow:hidden; border:1px solid var(--line); background:var(--surface-2); aspect-ratio:16/9; display:flex; align-items:center; justify-content:center}
.prod-hero img{width:100%; height:100%; object-fit:cover; display:block}
.prod-links{display:flex; flex-wrap:wrap; gap:10px; margin:22px 0 6px}
.prod-links a{display:inline-flex; align-items:center; gap:8px; padding:11px 16px; border-radius:10px; border:1px solid var(--line-strong); background:var(--surface); color:inherit; text-decoration:none; font-size:14.5px}
.prod-links a.primary{background:var(--ink); color:var(--bg); border-color:var(--ink)}
.prod-links a:hover{border-color:var(--accent)}
.prod-links .sub{font-family:var(--mono); font-size:11px; opacity:.75}
.prod-status{font-family:var(--mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--fg-muted)}
.prod-status.live{color:var(--accent)}
.prod-long{font-size:16px; line-height:1.65; max-width:70ch; margin-top:18px}
.prod-long p{margin:0 0 12px}
.prod-more{margin-top:40px}
.prod-more h2{font-size:20px; border-top:1.5px solid var(--ink); padding-top:14px; margin-bottom:14px}
.prod-gal{display:flex; gap:14px; overflow-x:auto; padding:6px 2px 14px; margin-top:22px; scroll-snap-type:x mandatory}
.prod-gal img{flex:0 0 auto; width:min(260px,70vw); border-radius:14px; border:1px solid var(--line); box-shadow:var(--shadow); scroll-snap-align:start}
.prod-feats{margin:4px 0 0; padding-inline-start:20px; font-size:15px; line-height:1.55}
.prod-feats li{margin:4px 0}
.prod-group{margin-top:26px}
.prod-group-h{font-size:22px; border-top:1.5px solid var(--ink); padding-top:14px; margin-bottom:4px}
.prod-group-h .n{font-family:var(--mono); font-size:12px; color:var(--fg-muted); margin-inline-start:8px}
.prod .top .ico{width:28px; height:28px; border-radius:7px; flex:0 0 auto; object-fit:cover}
.prod-status.arbeit{color:var(--fg-muted)}
.prod-rel{margin-top:30px}
.prod-rel h2{font-size:20px; border-top:1.5px solid var(--ink); padding-top:14px; margin-bottom:12px}
.rel-row{display:flex; flex-wrap:wrap; gap:8px}
.rel-row .rel{display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid var(--line-strong); border-radius:999px; color:inherit; text-decoration:none; font-size:14px}
.rel-row .rel img{width:20px; height:20px; border-radius:5px}
.rel-row .rel .sub{font-family:var(--mono); font-size:10.5px; color:var(--fg-muted)}
.rel-row .rel:hover{border-color:var(--accent)}
