/* AS-Electronics – Auftritt „Signal“, Fassung 1 (27.09.2026) */
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/schriften/IBMPlexSans-Regular.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/schriften/IBMPlexSans-Medium.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url("/schriften/IBMPlexSans-SemiBold.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:700;font-display:swap;src:url("/schriften/IBMPlexSans-Bold.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/schriften/IBMPlexMono-Regular.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("/schriften/IBMPlexMono-Medium.woff2") format("woff2")}

:root{
  --tinte:#111418; --weiss:#FFFFFF; --signal:#FF6A2B; --grau:#EEF0F2; --linie:#D5D9DE;
  --text-2:#3A3F46; --text-3:#5B616B; --fuss:#A8B0BA; --hell:#D6DAE0; --tinte-2:#1B1F25; --tinte-linie:#2A3038;
  --akzent-text:#C23A08; --rand:80px; --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:"IBM Plex Sans",system-ui,sans-serif;background:var(--weiss);color:var(--tinte);font-size:17px;line-height:1.6}
img{max-width:100%;display:block}
a{color:var(--tinte)}a:hover{color:#000}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.mono{font-family:var(--mono)}
.huelle{padding-inline:var(--rand);max-width:1440px;margin-inline:auto}
.sprung{position:absolute;left:-9999px;top:0;background:var(--signal);color:var(--tinte);padding:12px 18px;z-index:10}
.sprung:focus{left:16px;top:16px}

/* Kopf */
.dunkel{background:var(--tinte);color:var(--weiss)}
.kopf{height:104px;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--tinte-linie)}
.kopf .logo img{height:64px;width:auto}
.hauptnav{display:flex;gap:26px;flex-grow:1;font-size:15px;font-weight:500}
.hauptnav a{color:var(--weiss);text-decoration:none}
.hauptnav a:hover{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px;text-decoration-color:var(--signal)}
.hauptnav a[aria-current="page"]{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px;text-decoration-color:var(--signal)}
.knopf-signal{background:var(--signal);color:var(--tinte);text-decoration:none;font-weight:600;display:inline-block}
.knopf-signal:hover{color:var(--tinte);filter:brightness(1.06)}
.kopf .telefon{font-family:var(--mono);font-size:15px;font-weight:500;padding:13px 20px;white-space:nowrap}
.mobilmenue{display:none}

/* Einstieg Startseite */
.einstieg{padding-block:88px 96px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:end}
.einstieg-text{grid-column:span 6;display:flex;flex-direction:column;gap:32px}
.einstieg h1{margin:0}
.einstieg h1 img{width:100%;max-width:560px;height:auto}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips a{border:1.5px solid var(--weiss);color:var(--weiss);text-decoration:none;font-family:var(--mono);font-size:14px;padding:10px 14px}
.chips a:hover{background:var(--weiss);color:var(--tinte)}
.chips a.chip-signal{background:var(--signal);border-color:var(--signal);color:var(--tinte)}
.bildraster{grid-column:7/span 6;position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bildraster img{width:100%;height:200px;object-fit:cover}
.bildraster .quadrat{position:absolute;left:calc(50% - 16px);top:calc(50% - 16px);width:32px;height:32px;background:var(--signal);outline:8px solid var(--tinte)}

/* Leistungen */
.abschnitt{padding-block:112px 96px}
.titel-gross{margin:0;font-weight:700;font-size:56px;line-height:1.04;letter-spacing:-.04em}
.leistungen{margin-top:48px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:3px solid var(--tinte)}
.leistung{padding:28px 24px 36px;display:flex;flex-direction:column;gap:12px;border-left:1px solid var(--linie);scroll-margin-top:24px}
.leistung:nth-child(3){border-left:0;padding-left:0}
.leistung-it{grid-column:span 2;border-left:0;padding:28px 32px 40px 0;border-bottom:1px solid var(--linie)}
.leistung-it .innen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.leistung-it img{width:100%;height:260px;object-fit:cover}
.leistung-it .kernsatz{margin:0;font-size:30px;line-height:38px;font-weight:600;letter-spacing:-.02em}
.leistung-software{border-bottom:1px solid var(--linie)}
.leistung img{width:100%;height:200px;object-fit:cover}
.leistung .nummer{font-family:var(--mono);font-size:12px;color:var(--text-3)}
.leistung h3{margin:0;font-size:28px;line-height:32px;font-weight:700;letter-spacing:-.02em}
.leistung p{margin:0;font-size:17px;line-height:26px;color:var(--text-2)}
.leistung-pv{background:var(--grau)}
.leistung-pv .knopf-dunkel{margin-top:auto;align-self:flex-start}
.knopf-dunkel{background:var(--tinte);color:var(--weiss);text-decoration:none;font-size:16px;font-weight:600;padding:14px 22px;display:inline-flex;gap:12px;align-items:center}
.knopf-dunkel:hover{color:var(--weiss);background:#000}
.schaltplan{display:block;background:var(--tinte);width:100%;height:200px}

/* Kontaktband */
.band{margin-inline:var(--rand);background:var(--signal);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.band a{padding:48px 56px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--tinte)}
.band a+a{border-left:2px solid var(--tinte)}
.band h2{margin:0;font-weight:700;font-size:40px;line-height:44px;letter-spacing:-.04em}
.band span{font-family:var(--mono);font-size:22px}
.band a:hover h2{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}

/* Referenzen */
.referenzen-kopf{display:flex;align-items:baseline;gap:24px;flex-wrap:wrap}
.bewertung{font-family:var(--mono);font-size:20px;background:var(--signal);padding:4px 10px}
.referenzen{margin-top:40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.referenzen figure{margin:0;background:var(--grau);padding:28px;display:flex;flex-direction:column;gap:20px;border-top:3px solid var(--tinte)}
.referenzen blockquote{margin:0;font-size:17px;line-height:26px}
.referenzen figcaption{margin-top:auto;font-size:14px;line-height:20px;color:var(--text-2)}
.referenzen figcaption b{color:var(--tinte)}

/* Unterseiten */
.seitenkopf{padding-block:72px 80px;display:flex;flex-direction:column;gap:12px}
.oberzeile{font-family:var(--mono);font-size:13px;color:var(--fuss)}
.seitenkopf h1,.support-einstieg h1{margin:0;font-weight:700;font-size:72px;line-height:1;letter-spacing:-.04em}
.drei-spalten{padding-block:96px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.drei-spalten>div{display:flex;flex-direction:column;gap:14px;border-top:3px solid var(--tinte);padding-top:24px}
.drei-spalten>div.akzent{border-top-color:var(--signal)}
.drei-spalten h2{margin:0;font-size:26px;font-weight:700}
.drei-spalten p{margin:0;line-height:27px}

/* Impressum */
.rechtstext{padding-block:80px 96px}
.rechtstext .spalte{max-width:920px;display:flex;flex-direction:column;gap:40px}
.rechtstext .einleitung{margin:0;font-size:19px;line-height:30px}
.block{display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--linie);padding-top:20px}
.block.erster{border-top:3px solid var(--tinte)}
.block h2{margin:0;font-size:26px;font-weight:700}
.block p{margin:0}
.block .leise{color:var(--text-2)}
.angaben{margin:0;display:grid;grid-template-columns:260px 1fr;row-gap:14px;column-gap:24px}
.angaben dt{font-family:var(--mono);font-size:12px;color:var(--text-3);padding-top:4px}
.angaben dd{margin:0}
.textlink{color:var(--akzent-text)}
.textlink:hover{color:#8f2a05}

/* Support */
.support-einstieg{padding-block:72px 88px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:24px;align-items:end}
.support-einstieg .links{grid-column:span 7;display:flex;flex-direction:column;gap:20px}
.support-einstieg p{margin:0;font-size:19px;line-height:30px;color:var(--hell)}
.knopfreihe{display:flex;gap:16px;padding-top:8px;flex-wrap:wrap}
.knopfreihe .knopf-signal{font-size:17px;padding:18px 28px}
.knopf-rahmen{border:2px solid var(--weiss);color:var(--weiss);text-decoration:none;font-size:17px;font-weight:600;padding:16px 26px}
.knopf-rahmen:hover{background:var(--weiss);color:var(--tinte)}
.kasten-dunkel{grid-column:9/span 4;background:var(--tinte-2);padding:28px;display:flex;flex-direction:column;gap:14px;border-top:3px solid var(--signal)}
.kasten-dunkel h2{margin:0;font-size:22px;font-weight:700}
.kasten-dunkel h3{margin:8px 0 0;font-size:17px;font-weight:700}
.kasten-dunkel p{margin:0;font-size:16px;line-height:25px;color:var(--hell)}
.kasten-dunkel p b{color:var(--weiss)}
.kasten-dunkel ul{margin:0;padding-left:18px;font-size:15px;line-height:24px;color:var(--hell)}
.bereiche-kopf{display:flex;flex-direction:column;gap:12px}
.bereiche-kopf h2,.anfrage h2,.fernwartung h2{margin:0;font-weight:700;font-size:48px;line-height:1.05;letter-spacing:-.04em}
.bereiche-kopf p{margin:0;color:var(--text-2)}
.bereiche{margin-top:32px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:3px solid var(--tinte)}
.bereiche>div{padding:24px 24px 28px;display:flex;flex-direction:column;gap:10px;border-left:1px solid var(--linie)}
.bereiche>div:first-child{padding-left:0;border-left:0}
.bereiche h3{margin:0;font-size:22px;font-weight:700}
.bereiche p{margin:0;font-size:15px;line-height:23px;color:var(--text-2)}
.anfrage{margin-inline:var(--rand);background:var(--grau);padding:64px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:24px;scroll-margin-top:24px}
.anfrage .kopfzeile{grid-column:span 12;display:flex;flex-direction:column;gap:12px}
.anfrage .kopfzeile p{margin:0;color:var(--text-2);max-width:860px}
.formularfeld{grid-column:span 7;background:var(--weiss);padding:36px;border-top:3px solid var(--tinte)}
.hinweise{grid-column:9/span 4;display:flex;flex-direction:column;gap:28px;font-size:15px;line-height:23px}
.hinweise>div,.fw-hinweise>div{display:flex;flex-direction:column;gap:8px;border-top:1px solid #C9CED4;padding-top:16px}
.hinweise>div:first-child{border-top:3px solid var(--tinte)}
.hinweise h3,.fw-hinweise h3{margin:0;font-size:18px;font-weight:700}
.hinweise ul,.fw-hinweise ul,.fw-hinweise ol{margin:0;padding-left:18px;color:var(--text-2)}
.fernwartung{padding-block:96px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:32px;scroll-margin-top:24px}
.fernwartung .links{grid-column:span 7;display:flex;flex-direction:column;gap:18px}
.fernwartung .links p{margin:0}
.fernwartung .leise{color:var(--text-2)}
.fernwartung .klein{font-size:14px;line-height:21px;color:var(--text-3)}
.fernwartung .knopf-dunkel{align-self:flex-start;font-size:17px;padding:18px 28px}
.fw-hinweise{grid-column:9/span 4;display:flex;flex-direction:column;gap:24px;font-size:15px;line-height:23px}
.fw-hinweise>div:first-child{border-top:3px solid var(--signal)}
.fw-hinweise>div{border-top-color:var(--linie)}

/* Zammad-Formular (noCSS, eigenes Aussehen) */
.zammad-form{display:flex;flex-direction:column;gap:20px}
.zammad-form h2{margin:0;font-size:22px !important;font-weight:700;letter-spacing:0 !important;line-height:1.3 !important}
.zammad-form-group{display:flex;flex-direction:column;gap:6px}
.zammad-form-group label{font-size:14px;font-weight:600}
.zammad-form-control{font-family:inherit;font-size:16px;padding:12px 0;border:0;border-bottom:2px solid #8A919B;color:var(--tinte);background:transparent;width:100%}
.zammad-form-control:focus{outline:0;border-bottom-color:var(--signal)}
textarea.zammad-form-control{resize:vertical}
input[type=file].zammad-form-control{border-bottom:0;font-size:15px}
.zammad-form-group label:has(.zammad-form-checkbox){display:flex;gap:12px;align-items:flex-start;font-weight:400;line-height:21px;min-height:44px}
.zammad-form-checkbox{width:20px;height:20px;margin:0;flex-shrink:0;accent-color:var(--tinte)}
.zammad-form-group label a{color:var(--akzent-text)}
.zammad-form .btn{font-family:inherit;background:var(--signal);color:var(--tinte);border:0;font-size:17px;font-weight:600;padding:18px 28px;align-self:flex-start;cursor:pointer}
.zammad-form .btn[disabled]{opacity:.6;cursor:wait}
.zammad-form-group.has-error .zammad-form-control{border-bottom-color:#B3261E}
.formular-ersatz{margin:0;color:var(--text-2)}

/* Fuß */
.fuss{background:var(--tinte);color:var(--fuss);font-size:14px;line-height:22px}
.fuss .huelle{padding-block:64px 40px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:40px}
.fuss .spalte-a{grid-column:span 7;display:flex;flex-direction:column;gap:16px}
.fuss .spalte-a img{height:110px;width:auto;align-self:flex-start}
.fuss h2{margin:16px 0 0;font-size:16px;font-weight:600;color:var(--weiss)}
.fuss p{margin:0}
.fuss .sozial{display:flex;gap:20px}
.fuss .sozial a{color:var(--weiss)}
.fuss .spalte-b{grid-column:9/span 4;display:flex;flex-direction:column;gap:8px;align-self:end}
.fuss .spalte-b h2{margin:0 0 4px}
.fuss .spalte-b a{color:var(--fuss)}
.fuss .spalte-b a:hover{color:var(--weiss)}
.fuss .unten{grid-column:span 12;border-top:1px solid var(--tinte-linie);padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* Tablet */
@media (max-width:1100px){
  :root{--rand:40px}
  .hauptnav{gap:18px;font-size:14px}
  .kopf{gap:24px}
  .einstieg-text{grid-column:span 12}
  .bildraster{grid-column:span 12;margin-top:40px}
  .leistungen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .leistung-it{grid-column:span 2;padding-right:0}
  .leistung,.leistung:nth-child(3){border-left:0;padding-left:0;padding-right:24px;border-bottom:1px solid var(--linie)}
  .leistung:nth-child(odd){border-left:1px solid var(--linie);padding-left:24px}
  .leistung-it{border-left:0 !important;padding-left:0 !important}
  .referenzen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .support-einstieg .links,.kasten-dunkel,.formularfeld,.hinweise,.fernwartung .links,.fw-hinweise{grid-column:span 12}
  .bereiche{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bereiche>div:nth-child(3){padding-left:0;border-left:0}
}
/* Mobil */
@media (max-width:760px){
  :root{--rand:16px}
  body{font-size:16px}
  .kopf{height:80px;justify-content:space-between}
  .kopf .logo img{height:48px}
  .hauptnav,.kopf .telefon{display:none}
  .mobilmenue{display:block;position:relative}
  .mobilmenue summary{list-style:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--weiss)}
  .mobilmenue summary::-webkit-details-marker{display:none}
  .mobilmenue nav{position:absolute;right:-16px;top:56px;width:100vw;max-width:390px;background:var(--tinte);border-top:1px solid var(--tinte-linie);padding:8px 16px 20px;display:flex;flex-direction:column;z-index:5}
  .mobilmenue nav a{color:var(--weiss);text-decoration:none;padding:12px 0;font-size:17px;border-bottom:1px solid var(--tinte-linie)}
  .mobilmenue nav a.knopf-signal{color:var(--tinte);margin-top:16px;padding:14px 16px;border:0;font-family:var(--mono);font-size:15px;text-align:center}
  .einstieg{padding-block:40px}
  .einstieg-text{gap:24px}
  .bildraster{margin-top:24px}
  .bildraster img{height:140px}
  .abschnitt{padding-block:48px}
  .titel-gross{font-size:32px}
  .leistungen{grid-template-columns:1fr;margin-top:16px}
  .leistung-it,.leistung{grid-column:span 1;border-left:0 !important;padding:18px 0 !important;border-bottom:1px solid var(--linie)}
  .leistung-it .innen{grid-template-columns:1fr;gap:12px}
  .leistung-it img,.leistung img,.schaltplan{height:180px}
  .leistung-it .kernsatz{font-size:21px;line-height:28px}
  .leistung h3{font-size:21px;line-height:26px}
  .leistung p{font-size:15px;line-height:23px}
  .leistung-pv{padding:18px 12px !important}
  .band{grid-template-columns:1fr}
  .band a{padding:28px 20px}
  .band a+a{border-left:0;border-top:2px solid var(--tinte)}
  .band h2{font-size:28px;line-height:32px}
  .band span{font-size:16px;word-break:break-word}
  .bewertung{font-size:15px;padding:2px 8px}
  .referenzen{grid-template-columns:1fr;gap:16px;margin-top:16px}
  .referenzen figure{padding:20px;gap:14px}
  .referenzen blockquote{font-size:16px;line-height:24px}
  .seitenkopf{padding-block:40px}
  .seitenkopf h1,.support-einstieg h1{font-size:40px}
  .drei-spalten{grid-template-columns:1fr;padding-block:48px;gap:32px}
  .rechtstext{padding-block:40px 56px}
  .angaben{grid-template-columns:1fr;row-gap:4px}
  .angaben dd{margin-bottom:12px}
  .support-einstieg{padding-block:40px}
  .support-einstieg p{font-size:17px;line-height:27px}
  .bereiche-kopf h2,.anfrage h2,.fernwartung h2{font-size:30px}
  .bereiche{grid-template-columns:1fr}
  .bereiche>div{padding:18px 0 !important;border-left:0 !important;border-bottom:1px solid var(--linie)}
  .anfrage{padding:24px 16px}
  .formularfeld{padding:20px}
  .fernwartung{padding-block:48px}
  .fuss .huelle{padding-block:40px 28px;row-gap:24px}
  .fuss .spalte-a,.fuss .spalte-b{grid-column:span 12}
  .fuss .spalte-a img{height:80px}
  .fuss .unten{flex-direction:column;gap:4px}
}

.rechtstext ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
