/* TEE Portal v2 — konsolidiert aus dem Gründer-Entwurf (2026-08) */

:root{--ink:#182430;--mut:#5C6C7D;--paper:#F6F8FA;--card:#fff;--line:#DFE6EC;--blue:#1E3A5F;--blue-d:#162C49;--blue-t:#EAF1FA;--copper:#1D8FA5;--gelb:#F28C28;--gruen:#3E9B4F;--r:12px;--shadow:0 1px 2px rgba(24,36,48,.05),0 10px 28px -14px rgba(24,36,48,.16)}
*{margin:0;padding:0;box-sizing:border-box}
body{font:16px/1.62 "IBM Plex Sans",system-ui,sans-serif;color:var(--ink);background:var(--paper)}
h1,h2,h3{font-family:"Archivo",sans-serif;line-height:1.1;letter-spacing:-.012em}
h1{font-size:clamp(2.1rem,4.8vw,3.5rem);font-weight:800}
h2{font-size:clamp(1.45rem,3vw,2.05rem);font-weight:800}
h3{font-size:1.07rem;font-weight:700;font-family:"IBM Plex Sans"}
p{color:var(--mut)} a{color:var(--blue);text-decoration:none} a:hover{text-decoration:underline}
svg{display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
.mono{font-family:"IBM Plex Mono",monospace;font-size:.82rem}
.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--copper);font-weight:500}
.leiter{display:flex;height:4px;border-radius:99px;overflow:hidden}
.leiter i{flex:1}
.leiter i:nth-child(1){background:var(--copper)}
.leiter i:nth-child(2){background:var(--blue)}
.leiter i:nth-child(3){background:var(--gelb)}
.leiter.mini{width:56px;height:4px;margin:14px 0 10px}
.skip{position:absolute;left:-9999px;top:0;background:var(--gelb);color:var(--ink);padding:12px 18px;z-index:100;font-weight:600;border-radius:0 0 10px 0}
.skip:focus{left:0}
:focus-visible{outline:3px solid var(--gelb);outline-offset:2px;border-radius:4px}
/* Header */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.topbar{display:flex;align-items:center;justify-content:space-between;height:66px;gap:16px}
.logo{display:flex;align-items:center;gap:10px;font-family:"Archivo";font-weight:800;font-size:1.05rem;color:var(--ink);letter-spacing:-.01em}
.logo:hover{text-decoration:none}
.logo .dot{color:var(--copper)}
nav.main{display:flex;gap:26px;align-items:center}
nav.main a{color:var(--ink);font-weight:500;font-size:.94rem;padding:10px 2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:.95rem;padding:12px 22px;border-radius:10px;border:0;cursor:pointer;transition:transform .15s,box-shadow .15s;font-family:"IBM Plex Sans"}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn.blue{background:var(--blue);color:#fff}.btn.blue:hover{background:var(--blue-d)}
.btn.gelb{background:var(--gelb);color:var(--ink)}.btn.gelb:hover{box-shadow:0 6px 16px -6px rgba(242,140,40,.7)}
.btn.ghost{background:transparent;color:var(--blue);border:1.5px solid var(--line)}
.btn.ghost:hover{border-color:var(--blue)}
/* Topbanner */
.topbanner{background:#fff;border-bottom:1px solid var(--line)}
.tb{max-width:1120px;margin:0 auto;padding:26px 22px 30px;display:grid;grid-template-columns:1fr 400px;gap:18px;align-items:center;position:relative;overflow:hidden}
.tb-word{font-family:"Archivo",sans-serif;font-weight:800;font-size:clamp(1.7rem,3.6vw,2.6rem);line-height:1.04;letter-spacing:.015em}
.tb-word .w-top{color:#1E3A5F}.tb-word .w-elektro{color:#F28C28}.tb-word .w-experten{color:#1D8FA5}
.tb-seal{position:absolute;left:-16px;bottom:4px;height:120px;width:auto;transform:rotate(-6deg);border-radius:8px;filter:drop-shadow(0 10px 18px rgba(24,36,48,.3));z-index:2}
.tb-claim{font-family:"IBM Plex Mono",monospace;letter-spacing:.26em;font-size:.8rem;font-weight:600;color:var(--ink);margin:12px 0 0}
.tb-usps{display:flex;flex-wrap:wrap;row-gap:12px;position:relative;z-index:2;margin-top:30px}
.tb-usps .usp{display:flex;align-items:center;gap:10px;font-size:.88rem;font-weight:600;color:var(--ink);line-height:1.25;padding-right:22px;margin-right:22px;border-right:2px solid #B9C8D6}
.tb-usps .usp:last-child{border-right:0 !important;margin-right:0;padding-right:0}
.tb-usps .usp svg{flex:none}
.tb-map{position:relative;z-index:1}
.tb-map svg{width:100%;height:auto;display:block}
.tb-swoosh{position:absolute;right:-22px;bottom:0;width:52%;height:74px;z-index:0;pointer-events:none}
.tb-swoosh svg{width:100%;height:100%;display:block}
@media(max-width:900px){.tb{grid-template-columns:1fr}.tb-map{max-width:270px;margin:18px auto 0}.tb-swoosh{width:70%}.tb-usps .usp{width:calc(50% - 22px)}}
/* Hero */
.hero{position:relative;padding:64px 0 92px;overflow:hidden;background:linear-gradient(180deg,#fff 0%,var(--paper) 100%)}
.hero .schaltplan{position:absolute;inset:0;opacity:.55;pointer-events:none}
.hero .heroGrid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;position:relative}
.hero .inner{position:relative;max-width:720px}
.heroImg img{width:100%;height:auto;border-radius:16px;border:1px solid var(--line);box-shadow:var(--shadow)}
@media(max-width:900px){.hero .heroGrid{grid-template-columns:1fr}.heroImg{max-width:520px}}
.hero h1{margin:14px 0 16px}
.hero h1 em{font-style:normal;color:var(--blue)}
.hero .sub{font-size:1.12rem;max-width:560px}
.search{display:flex;gap:10px;margin:30px 0 14px;max-width:560px;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:8px;box-shadow:var(--shadow)}
.search input{flex:1;border:0;background:transparent;font:1rem "IBM Plex Sans";padding:8px 12px;color:var(--ink);min-width:0}
.search input:focus{outline:none}
.stats{display:flex;gap:22px;flex-wrap:wrap;margin-top:22px}
.stats .s b{font-family:"Archivo";font-size:1.25rem;font-weight:800;display:block;line-height:1.2}
.stats .s span{font-size:.82rem;color:var(--mut)}
/* Sections */
section{padding:74px 0}
.sec-head{max-width:640px;margin-bottom:38px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px;box-shadow:var(--shadow)}
.split .card{padding:34px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.split .card p{flex:1}
.pfad{background:#fff}
.step .num{font-family:"IBM Plex Mono";font-size:.78rem;color:var(--copper);letter-spacing:.1em}
.trust{background:var(--ink);color:#fff}
.trust h2,.trust h3{color:#fff}
.trust p{color:#AEBBCA}
.trust .card{background:#1F2E3D;border-color:#2C3E50;box-shadow:none}
.badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:99px;padding:7px 14px 7px 9px;font-size:.85rem;font-weight:600;color:var(--ink)}
.badge .bk{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:#fff;flex:none}
.badge .bk.g{background:var(--gruen)}.badge .bk.b{background:var(--blue)}.badge .bk.c{background:var(--copper)}
.badgerow{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
/* Regionen */
.region{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 18px;color:var(--ink);font-weight:600;transition:border-color .15s,transform .15s}
.region:hover{border-color:var(--blue);transform:translateY(-2px);text-decoration:none}
.region .mono{color:var(--mut)}
/* FAQ */
details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 22px;margin-bottom:12px}
details summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center}
details summary::after{content:"+";font-family:"Archivo";font-size:1.2rem;color:var(--blue)}
details[open] summary::after{content:"–"}
details p{margin-top:10px;font-size:.95rem}
/* Footer */
footer{background:var(--ink);color:#AEBBCA;padding:54px 0 30px;font-size:.9rem}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px;margin-bottom:36px}
footer a{color:#D5DEE8}
footer h3{color:#fff;font-size:.95rem;margin-bottom:12px}
footer ul{list-style:none}footer li{margin-bottom:8px}
footer .legal{border-top:1px solid #2C3E50;padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.8rem;color:#7E8FA1}
html.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .5s,transform .5s}
html.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.btn:hover,.region:hover{transform:none}}
@media(max-width:900px){.grid3,.grid4{grid-template-columns:1fr 1fr}footer .cols{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.grid2,.grid3,.grid4{grid-template-columns:1fr}nav.main a.hide-m{display:none}.search{flex-direction:column}.search .btn{width:100%}section{padding:56px 0}}


/* ---- aus verzeichnis.html ---- */
h1,h2{font-family:"Archivo",sans-serif;line-height:1.1;letter-spacing:-.012em;font-weight:800}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.btn.sm{padding:9px 16px;font-size:.88rem}
.crumbs{padding:20px 0 0;font-size:.85rem;color:var(--mut)}
.crumbs a{color:var(--mut)}
.head{padding:16px 0 26px}
.head p{margin-top:8px;max-width:640px}
.searchbox{background:#fff;border:1.5px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px;margin-bottom:20px}
.searchbox .rows{display:grid;grid-template-columns:1.4fr 1fr auto;gap:12px}
.searchbox label{display:block;font:600 .78rem "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);margin-bottom:6px}
.searchbox input{width:100%;font:1rem "IBM Plex Sans";padding:13px 14px;border:1.5px solid var(--line);border-radius:10px;color:var(--ink);background:var(--paper)}
.searchbox input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-t)}
.searchbox .go{align-self:end}
.qks{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;align-items:center}
.qks .lbl{font-size:.8rem;color:var(--mut);margin-right:4px}
.qk{font:500 .82rem "IBM Plex Sans";padding:8px 14px;min-height:38px;border-radius:99px;border:1.5px solid var(--line);background:var(--paper);color:var(--blue-d);cursor:pointer}
.qk:hover{border-color:var(--blue)}
.searchbox .go .btn{width:100%}
.filters{display:flex;gap:10px;flex-wrap:wrap;padding:0 0 24px}
.chip{font:500 .88rem "IBM Plex Sans";padding:11px 18px;min-height:44px;border-radius:99px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s}
.chip:hover{border-color:var(--blue)}
.chip[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.layout{display:grid;grid-template-columns:1fr 380px;gap:26px;align-items:start;padding-bottom:70px}
.list{display:flex;flex-direction:column;gap:16px}
.co{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:var(--shadow);position:relative;overflow:hidden;transition:border-color .15s}
.co::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--copper) 0 33%,var(--blue) 33% 66%,var(--gruen) 66%);opacity:0;transition:opacity .15s}
.co:hover{border-color:var(--blue)}
.co:hover::before{opacity:1}
.co .row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}
.co h2{font-size:1.15rem}
.vbadge{display:inline-flex;align-items:center;gap:6px;font:600 .75rem "IBM Plex Sans";color:var(--gruen);background:#EAF6EC;border-radius:99px;padding:4px 10px;vertical-align:2px;margin-left:8px}
.stars{color:var(--gelb);letter-spacing:2px;font-size:.95rem}
.rating{display:flex;align-items:center;gap:8px;margin:6px 0 2px;flex-wrap:wrap}
.rating b{font-family:"Archivo"}
.ext{font-size:.78rem;color:var(--mut)}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.tag{font:500 .78rem "IBM Plex Mono";background:var(--blue-t);color:var(--blue-d);border-radius:6px;padding:4px 9px}
.meta{display:flex;gap:18px;flex-wrap:wrap;font-size:.88rem;color:var(--mut);margin-bottom:16px}
.meta .open{color:var(--gruen);font-weight:600}
.meta .closed{color:#B4552D;font-weight:600}
.map{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);position:sticky;top:86px;overflow:hidden}
.map .cap{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.map .cap b{font-family:"Archivo";font-size:.95rem}
.map .attr{padding:10px 18px;font-size:.72rem;color:var(--mut)}
.pager{display:flex;gap:8px;justify-content:center;padding-top:10px}
.pg{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font-weight:600;font-size:.9rem;color:var(--ink)}
.pg:hover{border-color:var(--blue);text-decoration:none}
.pg.on{background:var(--blue);border-color:var(--blue);color:#fff}
.seo{background:#fff;border-top:1px solid var(--line);padding:54px 0 70px}
.seo .wrap{max-width:820px}
.seo h2{font-size:1.4rem;margin-bottom:12px}
.seo p{margin-bottom:12px;font-size:.95rem}
footer{background:var(--ink);color:#AEBBCA;padding:44px 0 28px;font-size:.9rem}
@media(max-width:760px){.searchbox .rows{grid-template-columns:1fr}.searchbox .go .btn{width:100%}}
@media(max-width:960px){.layout{grid-template-columns:1fr}.map{position:static;order:-1}}
@media(max-width:640px){nav.main a.hide-m{display:none}}

/* ---- aus betrieb.html ---- */
.phead{background:#fff;border-bottom:1px solid var(--line);padding:26px 0 34px;margin-top:14px}
.phead .top{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:flex-start}
.cta{display:flex;gap:10px;flex-wrap:wrap}
.grid{display:grid;grid-template-columns:1fr 380px;gap:26px;align-items:start;padding:34px 0 70px}
.card h2{margin-bottom:6px}
dl.kv{display:grid;grid-template-columns:120px 1fr;row-gap:10px;font-size:.94rem}
dl.kv dt{color:var(--mut)}
dl.kv dd{font-weight:500}
table.oz{width:100%;border-collapse:collapse;font-family:"IBM Plex Mono";font-size:.85rem}
table.oz td{padding:7px 0;border-bottom:1px dashed var(--line)}
table.oz tr:last-child td{border:0}
table.oz td:last-child{text-align:right}
table.oz .today td{font-weight:600;color:var(--blue-d)}
.review{border-top:1px solid var(--line);padding:18px 0}
.review:first-of-type{border-top:0}
.review .who{display:flex;justify-content:space-between;font-size:.85rem;color:var(--mut);margin-bottom:6px;gap:10px;flex-wrap:wrap}
.review .who b{color:var(--ink)}
.review p{font-size:.95rem;color:var(--ink)}
.extbox{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin-top:18px;font-size:.9rem}
.extbox b{font-family:"Archivo"}
.notice{background:#FDF6E3;border:1px solid #F0E2B6;border-radius:10px;padding:16px 18px;font-size:.88rem;color:#6B5A20}
.notice a{color:#6B5A20;text-decoration:underline}
.mapbox{border-radius:10px;overflow:hidden;border:1px solid var(--line)}
.owner{background:var(--ink);border-radius:var(--r);padding:26px;color:#fff}
.owner h2{color:#fff;font-size:1.15rem}
.owner p{color:#AEBBCA;font-size:.92rem;margin:8px 0 16px}
form .frow{margin-bottom:16px}
form label{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px}
input[type=text],input[type=email],select,textarea{width:100%;font:1rem "IBM Plex Sans";padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
textarea{min-height:110px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-t)}
.cbrow{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;color:var(--mut)}
.cbrow input{margin-top:4px;accent-color:var(--blue)}
.success{background:#EAF6EC;border:1px solid #BFE3C6;border-radius:12px;padding:24px;text-align:center}
.success h3{color:var(--gruen)}
.frm2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:960px){.grid{grid-template-columns:1fr}}
@media(max-width:640px){.frm2{grid-template-columns:1fr}}

/* ---- aus fuer-elektriker.html ---- */
.ba{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);user-select:none}
.ba svg{display:block;width:100%;height:auto}
.ba .after{position:absolute;inset:0;clip-path:inset(0 0 0 50%)}
.ba .grip{position:absolute;top:0;bottom:0;left:50%;width:3px;background:var(--gelb);transform:translateX(-50%);pointer-events:none}
.ba .grip::after{content:"\2194";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:var(--gelb);color:var(--ink);display:grid;place-items:center;font-size:1.2rem;font-weight:700;box-shadow:0 6px 16px rgba(24,36,48,.3)}
.ba input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.ba .grip .gl,.ba .grip .gr{position:absolute;top:50%;transform:translateY(-50%);font:600 .62rem "IBM Plex Mono",monospace;letter-spacing:.1em;padding:5px 10px;border-radius:99px;white-space:nowrap}
.ba .grip .gl{right:32px;background:#fff;color:var(--mut);border:1px solid var(--line)}
.ba .grip .gr{left:32px;background:var(--gelb);color:var(--ink)}
.plx{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;perspective:1600px}
.plc{position:relative}
.plin{display:grid;height:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.3,1)}
.plc.flipped .plin{transform:rotateY(180deg)}
.face{grid-area:1/1;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.face.back{transform:rotateY(180deg);background:#20303F;border-color:#20303F}
.zone-top{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:26px 22px 24px;position:relative}
.face.front .zone-top{background:linear-gradient(140deg,#C05A2E 0%,#DA7A45 100%)}
.face.back .zone-top{background:linear-gradient(140deg,#1D8FA5 0%,#3E9B4F 100%)}
.zone-top::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:14px;background:inherit;clip-path:polygon(0 0,100% 0,50% 100%)}
.chipst{font:600 .66rem "IBM Plex Mono",monospace;letter-spacing:.16em;padding:6px 14px;border-radius:99px;background:rgba(255,255,255,.2);color:#fff}
.itile{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);border:1.5px solid rgba(255,255,255,.4)}
.zone-top h3{font-family:"Archivo",sans-serif;font-weight:800;font-size:1.14rem;color:#fff;margin:0;letter-spacing:-.01em}
.zone-mid{flex:1;display:flex;flex-direction:column;gap:14px;padding:28px 26px 8px;text-align:center}
.zone-mid p{font-size:.94rem;margin:0}
.face.back .zone-mid p{color:#AEBBCA}
.glueck{font-size:.9rem;font-weight:600;color:#7ED991;background:rgba(126,217,145,.12);border:1px solid rgba(126,217,145,.35);border-radius:10px;padding:12px 14px}
.zone-bot{padding:20px 24px 24px;margin-top:auto}
.flipbtn{width:100%;justify-content:center;margin:0}
.face.back .flipbtn{background:transparent;color:#fff;border:1.5px solid #45596E}
.face.back .flipbtn:hover{border-color:#fff}
.glfig{margin:46px 0 0;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}
.glfig img{display:block;width:100%;height:auto}
.glfig figcaption{padding:16px 22px;font-size:.95rem;color:var(--mut)}
.glfig figcaption b{color:var(--ink);font-family:"Archivo"}
.hero{background:var(--ink);color:#fff;padding:84px 0;position:relative;overflow:hidden}
.hero p{color:#AEBBCA;font-size:1.1rem;max-width:580px}
.hero .cta{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.hero .hgrid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;position:relative}
.hero .himg img{width:100%;max-width:430px;height:auto;border-radius:16px;display:block;margin-left:auto;box-shadow:0 18px 44px -18px rgba(0,0,0,.5)}
.prob{border-left:4px solid #C77341;padding-left:22px}
.loes{border-left:4px solid var(--gruen);padding-left:22px}
.pl h3{margin-bottom:8px}
.pl p{font-size:.95rem}
.pl+.pl{margin-top:22px}
.white{background:#fff}
ul.feat{list-style:none;columns:2;gap:40px;max-width:860px}
ul.feat li{margin-bottom:12px;padding-left:28px;position:relative;break-inside:avoid;font-weight:500}
ul.feat li::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:var(--gruen) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 12 12"><path d="M3 6.5 5.2 8.7 9 3.6" stroke="white" stroke-width="1.8" fill="none"/></svg>') center/12px no-repeat}
.refempty{border:1.5px dashed var(--line);border-radius:var(--r);background:#fff;padding:44px 28px;text-align:center;max-width:720px;margin:0 auto}
.ref{position:relative;padding-top:20px}
.ref .shot{width:100%;border-radius:8px;margin-bottom:16px}
.ref h3{margin-bottom:6px}
.ref p{font-size:.93rem;margin-bottom:10px}
.demo-tag{position:absolute;top:-12px;left:22px;background:var(--gelb);color:var(--ink);font:600 .72rem "IBM Plex Mono";letter-spacing:.06em;padding:4px 10px;border-radius:99px}
.refempty h3{margin-bottom:8px}
details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 22px;margin-bottom:12px}
.final{background:var(--blue);color:#fff;text-align:center;padding:80px 0}
.final h2{color:#fff;margin-bottom:12px}
.final p{color:#CBDCF2;max-width:520px;margin:0 auto 26px}
@media(max-width:900px){.plx{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.plin{transition:none}}
@media(max-width:900px){.hero .hgrid{grid-template-columns:1fr}.hero .himg img{margin:28px auto 0}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.btn:hover{transform:none}}
@media(max-width:900px){.grid3{grid-template-columns:1fr}ul.feat{columns:1}.hero .schaltplan{display:none}}
@media(max-width:640px){.grid2{grid-template-columns:1fr}nav.main a.hide-m{display:none}section{padding:56px 0}}

/* ---- aus fuer-kunden.html ---- */
.narrow{max-width:780px}
.phead p{max-width:620px;margin-top:12px;font-size:1.05rem}
main section{padding:56px 0}
.prose h2{margin:34px 0 12px}
.prose h2:first-child{margin-top:0}
.prose p{margin-bottom:14px}
.prose ul{margin:0 0 14px 22px;color:var(--mut)}
.prose li{margin-bottom:8px}
.check{list-style:none;margin-left:0!important}
.check li{padding-left:30px;position:relative}
.check li::before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;background:var(--gruen) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 12 12"><path d="M3 6.5 5.2 8.7 9 3.6" stroke="white" stroke-width="1.8" fill="none"/></svg>') center/13px no-repeat}
.todo{background:#FDF6E3;border:1.5px dashed #E4CF8B;border-radius:10px;padding:18px 20px;color:#6B5A20;font-size:.92rem;margin:14px 0}
.todo b{font-family:"IBM Plex Mono";font-size:.8rem;letter-spacing:.08em}
form .row{margin-bottom:18px}
label{display:block;font-weight:600;font-size:.92rem;margin-bottom:6px}
label .opt{font-weight:400;color:var(--mut)}
.radio-row{display:flex;gap:12px;flex-wrap:wrap}
.radio-row label{display:flex;align-items:center;gap:8px;font-weight:500;border:1.5px solid var(--line);border-radius:10px;padding:11px 16px;cursor:pointer;background:#fff;margin:0}
.radio-row label:has(input:checked){border-color:var(--blue);background:var(--blue-t)}
.cb{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--mut)}
.cb input{margin-top:4px;accent-color:var(--blue)}
.success h2{color:var(--gruen)}
footer .fnav{display:flex;gap:22px;flex-wrap:wrap}
@media(max-width:900px){.grid3{grid-template-columns:1fr}}
@media(max-width:640px){.grid2{grid-template-columns:1fr}nav.main a.hide-m{display:none}main section{padding:44px 0}}