/* ============================================================================
   SH_SERVICES_V1 — „Auch einzeln buchbar" (#services). Macht sichtbar, dass es
   NICHT nur das Komplettpaket gibt, sondern auch einzelne Bausteine (Website,
   Automatisierungen, Cloud-Backup+Cockpit, E-Mail/Hosting, DATEV, Beratung).
   Keine Preise — „auf Anfrage". Premium-Karten, on-brand (Basalt/Ion/Oliv).
   ========================================================================== */

.svc-lead{color:var(--soft);font-size:17.5px;margin-top:16px;max-width:660px}
.svc-lead .sh{color:var(--ion)}

.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}

.svc-card{position:relative;overflow:hidden;isolation:isolate;
  background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px 24px 24px;
  transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}
/* dezenter Verlauf oben + Glanz beim Hover */
.svc-card::before{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;z-index:-1;
  background:radial-gradient(420px circle at 50% -10%,rgba(169,219,245,.14),transparent 60%);transition:opacity .4s var(--ease)}
.svc-card:hover{transform:translateY(-6px);border-color:rgba(169,219,245,.4);
  box-shadow:0 22px 54px -26px rgba(169,219,245,.45)}
.svc-card:hover::before{opacity:1}

.svc-ic{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;
  background:var(--raised);border:1px solid var(--line);color:var(--ion);margin-bottom:17px;
  transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}
.svc-ic svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.svc-card:hover .svc-ic{border-color:var(--ion);transform:translateY(-2px) scale(1.05);
  box-shadow:0 0 0 1px rgba(169,219,245,.35),0 12px 26px -12px rgba(169,219,245,.5)}

.svc-card h3{font-family:var(--disp);font-weight:600;font-size:18.5px;color:var(--white);letter-spacing:-.01em}
.svc-card p{color:var(--soft);font-size:14.5px;margin-top:9px;line-height:1.55}

.svc-tag{display:inline-flex;align-items:center;gap:7px;margin-top:16px;
  font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--olive-t)}
.svc-tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--olive-t);box-shadow:0 0 8px var(--olive-t)}

/* Abschluss-CTA-Panel */
.svc-cta{margin-top:26px;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;
  border:1px solid var(--line);border-radius:18px;padding:24px 28px;position:relative;overflow:hidden;
  background:linear-gradient(120deg,var(--panel),var(--panel2))}
.svc-cta::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--ion),var(--olive-t))}
.svc-cta p{color:var(--text);font-size:16.5px;max-width:640px}
.svc-cta p b{color:var(--white)}
.svc-cta .btn{white-space:nowrap;flex:0 0 auto}

@media (max-width:900px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.svc-grid{grid-template-columns:1fr}.svc-cta{flex-direction:column;align-items:flex-start}}

/* ============================================================================
   Kontaktformular (#kontaktformular) — gewöhnliches Kontaktfeld, geht direkt an
   info@sh-server.me (mailto → zuverlässig, ohne Backend-Abhängigkeit).
   ========================================================================== */
.kf-form{max-width:720px;margin:36px auto 0;background:var(--panel);border:1px solid var(--line);
  border-radius:20px;padding:30px 30px 26px;position:relative;overflow:hidden}
.kf-form::before{content:"";position:absolute;left:0;top:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--blue),var(--ion),var(--olive-t))}
.kf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.kf-field{display:block;margin-top:16px}
.kf-row .kf-field{margin-top:0}
.kf-field > span{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--soft);margin-bottom:7px}
.kf-field input,.kf-field textarea{width:100%;background:var(--bg);border:1px solid var(--line-strong);
  border-radius:11px;padding:13px 15px;color:var(--white);font-family:var(--body);font-size:15px;
  transition:border-color .25s,box-shadow .25s;resize:vertical}
.kf-field input::placeholder,.kf-field textarea::placeholder{color:var(--muted)}
.kf-field input:focus,.kf-field textarea:focus{outline:none;border-color:var(--ion);
  box-shadow:0 0 0 3px rgba(169,219,245,.14)}
.kf-field input.kf-err,.kf-field textarea.kf-err{border-color:#c65b5b;box-shadow:0 0 0 3px rgba(198,91,91,.16)}
.kf-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:22px}
.kf-hint{font-family:var(--mono);font-size:12px;color:var(--muted)}
.kf-hint .sh{color:var(--ion)}
@media(max-width:600px){.kf-row{grid-template-columns:1fr}.kf-foot{flex-direction:column;align-items:stretch}.kf-foot .btn{justify-content:center}}

/* ============================================================================
   FAQ (#faq) — natives <details>/<summary> Accordion (kein JS, barrierefrei,
   Inhalt steht im DOM → SEO-freundlich). Passend zu FAQPage-JSON-LD.
   ========================================================================== */
.faq-list{max-width:820px;margin:38px auto 0;display:flex;flex-direction:column;gap:12px}
.faq-item{border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden;transition:border-color .3s}
.faq-item[open]{border-color:rgba(169,219,245,.35)}
.faq-item summary{list-style:none;cursor:pointer;padding:18px 22px;font-family:var(--disp);font-weight:600;
  font-size:16.5px;color:var(--white);display:flex;align-items:center;justify-content:space-between;gap:16px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-family:var(--mono);font-size:22px;line-height:1;color:var(--ion);
  flex:0 0 auto;transition:transform .3s var(--ease)}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item summary:hover{color:var(--ion)}
.faq-a{padding:0 22px 20px;color:var(--soft);font-size:15px;line-height:1.62;max-width:720px}
.faq-a .sh{color:var(--ion)}
