/* Werkstattseite – ergänzt css/index-neu.css */
.ws-hero{min-height:600px}
.ws-lead{margin:24px 0 0}

/* Terminbuchung (zentral, keine Filial-Vorauswahl mehr) */
.ws-booking-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,6vw,96px);align-items:start}
.ws-booking .nx-actions{margin:32px 0 20px}
.ws-account-hint{color:var(--off-muted);font-size:15px}
.ws-account-hint a{color:var(--blue);font-weight:600;border-bottom:1px solid currentColor}
.ws-steps{list-style:none;background:#fff;border-radius:12px;padding:8px 28px;box-shadow:0 0 0 1px rgba(0,0,0,.06)}
.ws-steps li{display:flex;gap:18px;padding:24px 0;border-bottom:1px solid rgba(20,20,20,.1)}
.ws-steps li:last-child{border-bottom:0}
.ws-steps span{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700}
.ws-steps strong{display:block;font-weight:700;margin-bottom:4px}
.ws-steps p{color:var(--off-muted);font-size:14px}

/* Leistungen */
.ws-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:56px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.ws-service{padding:36px 32px 40px;transition:background .3s}
.ws-light .ws-service,.ws-services .ws-service{background:#fff}
.ws-dark .ws-service,.nx-dark .ws-service{background:var(--bg)}
.ws-service:hover{background:var(--graphite);color:#fff}
.ws-service:hover p,.ws-service:hover .ws-service-tags li{color:rgba(255,255,255,.75);border-color:rgba(255,255,255,.25)}
.ws-service span{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:.1em}
.ws-service h3{font-size:clamp(22px,2vw,28px);font-weight:800;letter-spacing:-.03em;margin:14px 0 10px}
.ws-service p{color:var(--off-muted);font-size:16px}
.ws-service-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.ws-service-tags li{font-size:12px;font-weight:600;color:var(--off-muted);border:1px solid rgba(20,20,20,.15);border-radius:999px;padding:6px 12px;transition:color .3s,border-color .3s}
.ws-expertise{padding-top:0}
.ws-expertise .nx-h2{max-width:1000px}
.ws-expertise .ws-lead{max-width:640px}

/* Logos */
.ws-logos{overflow:hidden;margin-top:56px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.ws-logos-track{display:flex;gap:20px;width:max-content;animation:wsMarquee 40s linear infinite}
.ws-logos-track img{height:88px;width:180px;object-fit:contain;background:#fff;border-radius:10px;padding:18px 22px;box-shadow:0 0 0 1px rgba(0,0,0,.05)}
.ws-logos:hover .ws-logos-track{animation-play-state:paused}
@keyframes wsMarquee{to{transform:translateX(calc(-50% - 10px))}}
.ws-systems{padding-bottom:40px}

/* Anspruch + Vorbereitung */
.ws-promise-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(40px,6vw,96px);align-items:start}
.ws-promise-list{margin-top:48px}
.ws-promise-list li{font-weight:500}
.ws-promise-list strong{font-weight:800;color:var(--blue)}
.ws-prepare{background:var(--bg);color:var(--ink);border-radius:12px;padding:40px 36px;position:sticky;top:120px}
.ws-prepare-tag{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-soft);margin-bottom:12px}
.ws-prepare h3{font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.15;margin-bottom:24px}
.ws-prepare ul{list-style:none}
.ws-prepare li{position:relative;padding:14px 0 14px 34px;border-top:1px solid var(--line)}
.ws-prepare li::before{content:"✓";position:absolute;left:0;top:13px;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;display:grid;place-items:center}

/* Digital auf dunklem Grund */
.ws-digital .nx-lead{margin:28px 0 36px}

/* Ansprechpartner */
.ws-contacts{padding-bottom:40px}
.ws-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:48px}
.ws-contact{display:flex;gap:24px;align-items:center;background:#fff;border-radius:12px;padding:20px;box-shadow:0 0 0 1px rgba(0,0,0,.05)}
.ws-contact img{width:120px;height:140px;object-fit:cover;border-radius:8px;flex:0 0 auto}
.ws-contact strong{display:block;font-size:22px;font-weight:800;letter-spacing:-.03em}
.ws-contact>div>span{display:block;color:var(--off-muted);font-size:15px;margin-top:2px}
.ws-contact-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.ws-contact-actions a{font-size:14px;font-weight:600;padding:9px 16px;border-radius:999px;border:1px solid rgba(56,68,124,.3);color:var(--blue);transition:background .2s,color .2s}
.ws-contact-actions a:hover{background:var(--blue);color:#fff;border-color:var(--blue)}

/* FAQ */
.ws-faq-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(40px,6vw,96px);align-items:start}
.ws-faq-list{border-top:1px solid rgba(20,20,20,.12)}
.ws-faq-list details{border-bottom:1px solid rgba(20,20,20,.12)}
.ws-faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;padding:26px 0;font-size:clamp(18px,1.6vw,22px);font-weight:700;letter-spacing:-.02em}
.ws-faq-list summary::-webkit-details-marker{display:none}
.ws-faq-list summary::after{content:"+";flex:0 0 auto;width:32px;height:32px;border-radius:50%;border:1px solid rgba(56,68,124,.3);color:var(--blue);display:grid;place-items:center;font-weight:500;transition:transform .3s,background .3s,color .3s}
.ws-faq-list details[open] summary::after{transform:rotate(45deg);background:var(--blue);color:#fff}
.ws-faq-list details p{padding:0 56px 26px 0;color:var(--off-muted);font-size:17px}

/* Karriere */
.ws-career-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(40px,6vw,96px);align-items:center}
.ws-career-media{position:relative;border-radius:12px;overflow:hidden}
.ws-career-media img{width:100%;aspect-ratio:4/5;object-fit:cover}
.ws-career-badge{position:absolute;left:20px;top:20px;background:var(--accent);color:#fff;font-weight:700;font-size:14px;padding:8px 16px;border-radius:999px}
.ws-career .nx-lead{margin:24px 0 32px}
.ws-benefits{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:36px}
.ws-benefits li{background:var(--bg);padding:20px 22px}
.ws-benefits strong{display:block;font-weight:700}
.ws-benefits span{display:block;color:var(--muted);font-size:15px;margin-top:4px}

/* Standorte (rein informativ) */
.ws-locations{padding-bottom:40px}
.ws-location-strip{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}
.ws-location-strip a{flex:1 1 160px;text-align:center;padding:20px 16px;border-radius:10px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06);font-weight:700;font-size:17px;color:var(--off-ink);transition:background .2s,color .2s,box-shadow .2s}
.ws-location-strip a:hover{background:var(--blue);color:#fff;box-shadow:0 0 0 1px var(--blue)}

/* Sticky-Button */
.ws-sticky{position:fixed;right:24px;bottom:24px;z-index:900;display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;font-size:15px;box-shadow:0 18px 40px -12px rgba(216,58,57,.6);opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .35s,transform .35s var(--ease)}
.ws-sticky::after{content:"→"}
.ws-sticky.is-shown{opacity:1;transform:none;pointer-events:auto}

@media(max-width:1080px){
  .ws-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .ws-booking-grid,.ws-promise-grid,.ws-faq-grid,.ws-career-grid,.ws-contact-grid{grid-template-columns:1fr}
  .ws-prepare{position:static}
}
@media(max-width:560px){
  .ws-service-grid,.ws-benefits{grid-template-columns:1fr}
  .ws-contact{flex-direction:column;align-items:flex-start}
  .ws-contact img{width:100%;height:260px}
  .ws-logos-track img{height:70px;width:140px}
  .ws-location-strip a{flex:1 1 42%}
  .ws-sticky{left:16px;right:16px;bottom:16px;justify-content:center}
}
