/* Gemeinsame Basis für Service-, Branchen- und Company-Seiten: Schriften, Grundwerte, CTA mit Formular, FAQ.
   Vorher als identischer Block im Kopf jeder Seite. Seitenspezifisches bleibt inline. */
@font-face{font-family:"Axodren Display";src:url("../../assets/fonts/AxodrenDisplay-Regular-600.woff2") format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Axodren Display Ext";src:url("../../assets/fonts/AxodrenDisplay-ExtendedFull-600.woff2") format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Sen";src:url("../../assets/fonts/Sen-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Sen";src:url("../../assets/fonts/Sen-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
:root{--ink:#000000;--mut:#3f3f45;--soft:#6a6a73;--hair:#e9e9ec; --bone:#f2f1ef;--dhair:rgba(242,241,239,.15);--ddim:#9a9aa0; --disp:"Axodren Display","Helvetica Neue",Arial,sans-serif; --read:"Sen","Helvetica Neue",Arial,sans-serif; --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace; --pad:clamp(1.2rem,3.4vw,3.4rem)}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--read);font-size:16px;line-height:1.65}
.inner{max-width:76rem;margin:0 auto;padding-inline:var(--pad)}
.bar{height:.65rem;background:var(--ink)}
.cta h2{font-family:var(--disp);font-weight:700;font-size:clamp(2rem,3.1vw,3rem);line-height:1.08;letter-spacing:-.01em}
.cta{background:#fff;color:var(--ink);padding:clamp(3rem,8vh,5rem) 0}
.cta__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2.5rem,5vw,5rem);align-items:center}
.cta h2{margin:0 0 1rem}
.cta p{margin:0 0 1.4rem;color:var(--mut);font-size:.98rem;line-height:1.68;max-width:30rem}
.cta__btn{display:inline-flex;align-items:center;gap:.8rem;background:var(--ink);color:var(--bone);border:0;cursor:pointer;font:700 .88rem/1 var(--read);letter-spacing:.08em;text-transform:uppercase;padding:1.15rem 1.9rem;border-radius:.55rem}
.cta__vis{width:100%;max-width:30rem;justify-self:center}
.cta__vis svg{width:100%;display:block}
@media (max-width:880px){.cta__grid{grid-template-columns:1fr}}
.cta__formwrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s ease}
.cta__formwrap.open{grid-template-rows:1fr}
.cta__formwrap>div{overflow:hidden}
.cta__form{padding-top:clamp(2.2rem,5vh,3.2rem);max-width:56rem}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:700px){.frow{grid-template-columns:1fr}}
.cta__form input[type=text],.cta__form input[type=email],.cta__form input[type=tel],.cta__form textarea{width:100%;box-sizing:border-box;border:2px solid var(--ink);border-radius:999px;padding:1rem 1.4rem;font:400 1rem/1.4 var(--read);margin-bottom:1rem;background:#fff;color:var(--ink)}
.cta__form textarea{border-radius:1.4rem;min-height:8.5rem;resize:vertical}
.cta__form ::placeholder{color:#9a9aa0}
.cta__form input:focus,.cta__form textarea:focus{outline:none;box-shadow:0 0 0 2px var(--ink)}
.consent{display:flex;gap:.8rem;align-items:flex-start;margin:.4rem 0 1.6rem;font-size:.92rem;line-height:1.6;color:var(--mut);max-width:44rem}
.consent input{width:1.15rem;height:1.15rem;margin:.2rem 0 0;accent-color:var(--ink);flex:0 0 auto}
.consent a{color:var(--ink)}
@media (prefers-reduced-motion:reduce){.cta__formwrap{transition:none}}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@keyframes flow{to{stroke-dashoffset:-56}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes tilt{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes sway{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}
@keyframes blink{0%,60%,100%{opacity:.15}30%{opacity:1}}
.how h2{font-family:var(--disp);font-weight:700;font-size:clamp(2rem,3.1vw,3rem);line-height:1.08;letter-spacing:-.01em;margin:0 0 clamp(2rem,5vh,3rem)}
.how{padding:clamp(2.8rem,7vh,4.4rem) 0}
.faq{padding:clamp(2.8rem,7vh,4.4rem) 0}
.faq h2{font-family:var(--disp);font-weight:700;font-size:clamp(2rem,3.1vw,3rem);letter-spacing:-.01em;margin:0 0 clamp(2rem,5vh,3rem)}
.faq details{border-top:1px solid var(--hair)}
.faq details:last-of-type{border-bottom:1px solid var(--hair)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.3rem 0;font-family:var(--disp);font-weight:700;font-size:clamp(1.1rem,1.5vw,1.35rem)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.6rem;line-height:1;transition:transform .25s ease}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .faq__a{padding:0 0 1.4rem;color:var(--mut);font-size:1.02rem;line-height:1.7;max-width:44rem}
@media (prefers-reduced-motion:reduce){.faq summary::after{transition:none}}
.note{background:#f6f6f5;border-top:1px solid #ececef;padding:.9rem var(--pad);font:700 .66rem/1.8 var(--read);letter-spacing:.12em;text-transform:uppercase;color:#9a9aa0;text-align:center}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
