/* Sprachmenü mit Flaggen */
.direct{margin-top:28px}
.mail{color:var(--acc);font-weight:600}
.mail:hover{color:var(--acc2);text-decoration:underline}
.langbox{position:relative}
.lang{display:flex;align-items:center;gap:8px}
.lang img,.langlist img{width:20px;height:14px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.caret{font-size:11px;color:var(--mut)}
.langlist{position:absolute;right:0;top:calc(100% + 8px);list-style:none;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px;min-width:160px;z-index:20;box-shadow:0 12px 32px rgba(0,0,0,.6)}
.langlist li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:14px;color:var(--tx)}
.langlist li:hover{background:var(--line)}
.langlist li[aria-selected="true"]{color:var(--acc)}
.langlist[hidden]{display:none}

/* Logo-Sichtbarkeit */
.hero .wrap{position:relative}
.hero-mark{position:absolute;right:24px;top:50%;transform:translateY(-50%);width:300px;height:300px;filter:drop-shadow(0 0 60px rgba(124,200,255,.25))}
.foot-brand{display:flex;align-items:center;gap:10px}
.foot-brand img{height:24px;width:24px}
.foot-brand i{font-style:normal;color:var(--acc)}
@media(max-width:900px){.hero-mark{display:none}}

/* Zusätzliche Sektionen */
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.narrow{max-width:760px}
.quote{border-left:3px solid var(--acc);padding:8px 0 8px 20px}
.quote p{font-size:22px;line-height:1.35;letter-spacing:-.01em}
.vs{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:48px}
.vs ul,.price ul{list-style:none;margin-top:12px}
.vs li,.price li{color:var(--mut);padding:6px 0 6px 22px;position:relative;font-size:15px}
.vs li::before,.price li::before{content:"✓";position:absolute;left:0;color:var(--acc)}
.vs .card:first-child li::before{content:"–";color:var(--mut)}
.hl{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc) inset}
.note{margin-top:32px;font-size:20px;color:var(--acc2);text-align:center}
.note.small{font-size:14px;color:var(--mut);margin-top:20px}
.price{position:relative}
.amt{font-size:32px;font-weight:700;color:var(--tx)!important;margin:8px 0 4px}
.tag{position:absolute;top:-12px;right:20px;background:var(--acc);color:#001826;font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px}
figure blockquote{font-size:17px;line-height:1.5;color:var(--tx);margin-bottom:16px}
figcaption{color:var(--mut);font-size:14px}
figure.card::before{content:"“";font-size:56px;line-height:.6;color:var(--acc);display:block}

details{border-bottom:1px solid var(--line);padding:18px 0}
summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none;display:flex;justify-content:space-between}
summary::after{content:"+";color:var(--acc);font-size:22px}
details[open] summary::after{content:"–"}
details p{color:var(--mut);margin-top:12px}

.form{display:grid;gap:12px;margin-top:8px;text-align:left}
.form input,.form textarea{width:100%;background:var(--card);border:1px solid var(--line);color:var(--tx);border-radius:12px;padding:14px 16px;font:inherit}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--acc)}
.form .btn{border:0;cursor:pointer;justify-self:center}

/* Rechtstexte */
.legal{padding:64px 0}
.legal h1{font-size:40px;max-width:none;margin-bottom:12px}
.legal h2{font-size:22px;margin:32px 0 8px}
.legal p,.legal li{color:var(--mut);margin-bottom:8px}
.legal .warn{border:1px solid var(--acc);border-radius:12px;padding:14px 18px;color:var(--acc2);margin:20px 0}
.links a:hover{color:var(--acc)}

@media(max-width:760px){.grid4,.vs{grid-template-columns:1fr}}
