*{ margin:0;padding:0;box-sizing:border-box;}
p{ margin-bottom:1.15em;}
 :root{ --bg:#0B0B10;--surface:#12121A;--surface2:#0E0E15;--border:#242434;--text:#EDEDF5;--muted:#A3A3B8;--violet:#8B5CF6;--yellow:#FACC15;--blue:#38BDF8;--radius:18px;--shadow:0 14px 40px rgba(0,0,0,.45);--max:1160px;}
 html{scroll-behavior:smooth}
 body{ margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;}
 a{color:inherit;text-decoration:none}
 .container{max-width:var(--max);margin:0 auto;padding:0 20px}
 header{ position:sticky;top:0;z-index:50;background:rgba(11,11,16,.65);backdrop-filter:blur(12px);border-bottom:1px solid rgba(36,36,52,.6);}
 .nav{ height:72px;display:flex;align-items:center;justify-content:space-between;gap:14px;}
nav a.active{ color:var(--text);}
nav a.active::after{ transform:scaleX(1);}
 .nav nav{ margin-left:auto;}
nav a{ position:relative;padding:10px 10px;border-radius:12px;}
nav a::after{ content:"";position:absolute;left:10px;bottom:6px;width:calc(100% - 20px);height:2px;background:linear-gradient(90deg,var(--violet),var(--blue));transform:scaleX(0);transform-origin:left;transition:transform 0.35s ease;}
nav a:hover::after{ transform:scaleX(1);}
 .brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px}
 .logo{ width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--violet),var(--blue));box-shadow:0 0 0 4px rgba(139,92,246,.12);flex:0 0 auto;}
 nav ul{display:flex;gap:18px;list-style:none;padding:0;margin:0;color:var(--muted);font-weight:700}
 nav a:hover{background:rgba(18,18,26,.6);color:var(--text)}
 .actions{display:flex;gap:10px;align-items:center}
 .btn{ display:inline-flex;align-items:center;justify-content:center;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:rgba(18,18,26,.6);color:var(--text);font-weight:800;cursor:pointer;transition:.2s transform,.2s box-shadow,.2s background,.2s border;user-select:none;}
 .btn:hover{transform:translateY(-1px)}
 .btn-primary{ border:0;background:linear-gradient(135deg,rgba(139,92,246,1),rgba(56,189,248,1));box-shadow:0 16px 50px rgba(139,92,246,.25);}
 .btn-primary:hover{box-shadow:0 18px 70px rgba(56,189,248,.22)}
 .btn-outline{ border:1px solid rgba(250,204,21,.35);background:transparent;}
 .btn-outline:hover{ border-color:rgba(250,204,21,.8);box-shadow:0 0 0 5px rgba(250,204,21,.08);}
 section{padding:100px 0}
 .section-title{margin-bottom:28px}
 h2{margin:0 0 6px;font-size:26px;letter-spacing:-.4px}
 .sub{margin:0;color:var(--muted);max-width:70ch;font-weight:600}
 .hero{ padding:74px 0 100px;background:radial-gradient(900px 520px at 15% 10%,rgba(139,92,246,.25),transparent 60%),radial-gradient(900px 520px at 85% 20%,rgba(56,189,248,.18),transparent 55%),radial-gradient(700px 420px at 75% 95%,rgba(250,204,21,.10),transparent 55%),var(--bg);border-bottom:1px solid rgba(36,36,52,.6);}
 .pill{ display:inline-flex;gap:10px;align-items:center;padding:8px 12px;border:1px solid var(--border);background:rgba(18,18,26,.55);border-radius:999px;color:var(--muted);backdrop-filter:blur(10px);font-weight:700;}
 .dot{ width:8px;height:8px;border-radius:50%;background:var(--yellow);position:relative;box-shadow:0 0 12px rgba(250,204,21,.6);animation:pulseDot 1.8s infinite ease-in-out;}
@keyframes pulseDot{ 0%{ transform:scale(1);box-shadow:0 0 6px rgba(250,204,21,.6);}
 50%{ transform:scale(1.4);box-shadow:0 0 16px rgba(250,204,21,.9);}
 100%{ transform:scale(1);box-shadow:0 0 6px rgba(250,204,21,.6);}
}
 .hero-grid{ display:grid;gap:22px;grid-template-columns:1.15fr .85fr;align-items:stretch;margin-top:14px;}
 .h1{ font-size:clamp(34px,4.4vw,58px);line-height:1.2;margin:15px 0 30px;letter-spacing:-.9px;font-weight:800;}
 .grad{ background:linear-gradient(135deg,var(--violet),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent;}
 .lead{ margin:0 0 40px;color:var(--muted);font-size:clamp(16px,1.6vw,18px);max-width:56ch;font-weight:600;}
 .hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 40px}
 .trust{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-weight:700}
 .badge{ padding:10px 12px;border:1px solid rgba(36,36,52,.75);background:rgba(18,18,26,.55);border-radius:999px;}
 .card{ border:1px solid rgba(36,36,52,.9);border-radius:var(--radius);overflow:hidden;background:rgba(18,18,26,.5);box-shadow:0 18px 50px rgba(0,0,0,.35);position:relative;transform:translateZ(0);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
 .card:hover{ transform:translateY(-2px);border-color:rgba(139,92,246,.45);box-shadow:0 18px 60px rgba(0,0,0,.55);}
.card::after{ content:"";position:absolute;inset:-2px;pointer-events:none;z-index:0;background:radial-gradient(900px 360px at var(--mx,50%) var(--my,50%),rgba(56,189,248,.22),transparent 60%),linear-gradient(120deg,transparent 0%,rgba(255,255,255,.06) 40%,rgba(56,189,248,.12) 50%,rgba(139,92,246,.12) 60%,transparent 75%);background-size:100% 100%,220% 100%;background-position:50% 50%,0% 50%;opacity:0;transition:opacity .25s ease,background-position .6s ease;}
.card:hover::after{ opacity:1;background-position:50% 50%,100% 50%;}
.card > *{ position:relative;z-index:1;}
 .cardhead{padding:20px;display:flex;flex-direction:column;gap:10px}
 .cardhead strong{font-size:16px}
 .cardhead p{margin:0;color:var(--muted);font-weight:600}
 form{padding:20px;border-top:1px solid rgba(36,36,52,.9);display:grid;gap:10px}
 .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 input,textarea{ width:100%;padding:12px 12px;border-radius:14px;border:1px solid rgba(36,36,52,.9);background:rgba(11,11,16,.65);color:var(--text);outline:none;font-weight:600;}
 input:focus,textarea:focus{ border-color:rgba(139,92,246,.65);box-shadow:0 0 0 5px rgba(139,92,246,.12);}
 textarea{min-height:96px;resize:vertical}
 .hint{color:var(--muted);font-size:13px;font-weight:700}
 .sec-services{ background:linear-gradient(180deg,rgba(18,18,26,.0),rgba(18,18,26,.65)),radial-gradient(800px 340px at 10% 10%,rgba(56,189,248,.10),transparent 60%),var(--bg);border-bottom:1px solid rgba(36,36,52,.6);}
 .cards{ display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;gap:24px;}
 .service{ padding:16px;background:transparent;}
 .service h3{margin:10px 0 6px;font-size:16px}
 .service p{margin:0;color:var(--muted);font-size:14px;font-weight:600}
 .icon{ width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(250,204,21,.16),rgba(139,92,246,.16));border:1px solid rgba(36,36,52,.9);}
 .sec-why{ background:radial-gradient(900px 520px at 85% 30%,rgba(139,92,246,.14),transparent 60%),radial-gradient(900px 520px at 20% 80%,rgba(250,204,21,.08),transparent 60%),var(--surface2);border-bottom:1px solid rgba(36,36,52,.6);}
 .why-grid{ display:grid;gap:16px;grid-template-columns:1fr 1fr;align-items:stretch;margin-top:16px;}
 .why-points{ display:grid;gap:20px;}
 .point{padding:16px;background:transparent;}
 .point strong{display:block;margin:0 0 6px}
 .point span{color:var(--muted);font-weight:600;font-size:14px}
 .why-image{ position:relative;border:1px solid rgba(36,36,52,.9);border-radius:var(--radius);overflow:hidden;min-height:360px;box-shadow:var(--shadow);background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(56,189,248,.10)),url("/assets/office-cleaning.jpg") center/cover no-repeat;}
 .why-image::after{ content:"";position:absolute;inset:0;background:radial-gradient(700px 420px at 20% 10%,rgba(11,11,16,.15),rgba(11,11,16,.75));}
 .why-image .label{ position:absolute;left:16px;bottom:16px;z-index:2;padding:10px 12px;border-radius:999px;border:1px solid rgba(36,36,52,.9);background:rgba(11,11,16,.55);color:var(--text);font-weight:800;backdrop-filter:blur(10px);}
 .sec-flow{ background:linear-gradient(180deg,rgba(56,189,248,.05),rgba(11,11,16,0)),var(--bg);}
 .steps{ display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin-top:16px;}
 .step{ padding:16px;background:transparent;position:relative;}
 .num{ display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:11px;background:rgba(56,189,248,.14);border:1px solid rgba(56,189,248,.35);font-weight:900;}
 .step h3{margin:10px 0 6px;font-size:16px}
 .step p{margin:0;color:var(--muted);font-weight:600;font-size:14px}
 .sec-contact{ background:radial-gradient(900px 520px at 15% 40%,rgba(139,92,246,.14),transparent 60%),radial-gradient(900px 520px at 85% 60%,rgba(56,189,248,.12),transparent 60%),var(--surface2);border-top:1px solid rgba(36,36,52,.6);}
 .contact-grid{ display:grid;gap:16px;grid-template-columns:1fr 1fr;align-items:start;margin-top:16px;}
 .contact-box{ padding:18px;background:transparent;}
 .contact-box p{margin:0 0 10px;color:var(--muted);font-weight:600}
 .contact-box strong{color:var(--text)}
 .mini{font-size:13px;color:var(--muted);font-weight:700}
 footer{ border-top:1px solid rgba(36,36,52,.6);padding:26px 0 40px;color:var(--muted);background:var(--bg);}
 .footer-grid{ display:grid;gap:14px;grid-template-columns:repeat(4,1fr);align-items:start;}
 .small{font-size:13px}
 @media (max-width:920px){ nav ul{display:none}
 .hero-grid{grid-template-columns:1fr}
 .grid-2{grid-template-columns:1fr}
 .cards{grid-template-columns:1fr}
 .why-grid{grid-template-columns:1fr}
 .steps{grid-template-columns:1fr}
 .contact-grid{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr}
 section{padding:56px 0}
 .hero{padding:56px 0 28px}
 }
.fly-in{ opacity:0;transform:translateX(80px);animation:slideInRight 0.9s ease-out forwards;animation-delay:0.4s;}
@keyframes slideInRight{ to{ opacity:1;transform:translateX(0);}
}
.logo-img{ height:80px;width:auto;display:block;}
.footer-logo{ height:50px;opacity:0.9;}
.contact-support{ display:flex;align-items:center;gap:20px;position:relative;}
.support-text{ display:flex;flex-direction:column;gap:6px;max-width:260px;}
.support-text strong{ font-size:18px;letter-spacing:-0.3px;}
.support-text span{ color:var(--muted);font-weight:600;font-size:14px;}
.support-image{ position:relative;}
.support-image img:hover{ transform:scale(1.05);}
@media (max-width:920px){ .contact-support{ flex-direction:column;align-items:flex-start;}
 .support-image img{ height:140px;}
}
.support-image img{ height:160px;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.45);transform:translateY(20px);opacity:0;animation:fadeUp 0.8s ease-out forwards;animation-delay:0.5s;}
@keyframes fadeUp{ to{ transform:translateY(0);opacity:1;}
}
.whatsapp-button{ position:fixed;bottom:20px;right:20px;width:56px;height:56px;background:linear-gradient(135deg,#25D366,#1ebe5d);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.4);transition:transform 0.25s ease,box-shadow 0.25s ease;z-index:9999;}
.whatsapp-button::before{ content:"";position:absolute;inset:-6px;border-radius:50%;box-shadow:0 0 0 0 rgba(37,211,102,.45);animation:waPulse 1.8s infinite ease-out;}
@keyframes waPulse{ 0%{ box-shadow:0 0 0 0 rgba(37,211,102,.50);}
 70%{ box-shadow:0 0 0 16px rgba(37,211,102,0);}
 100%{ box-shadow:0 0 0 0 rgba(37,211,102,0);}
}
.whatsapp-button:hover{ transform:scale(1.1);box-shadow:0 15px 40px rgba(0,0,0,.6);}
@media (prefers-reduced-motion:reduce){ .whatsapp-button::before{ animation:none;}
}
.map-card{ margin:14px 0 30px;padding:0;overflow:hidden;}
.map-card iframe{ width:100%;height:280px;border:0;display:block;filter:grayscale(1) contrast(1.05) brightness(0.85);}
.reveal{ opacity:1;transform:none;}
html.js .reveal{ opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--delay,0ms);}
html.js .reveal.is-visible{ opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion:reduce){ html.js .reveal{ transform:none !important;transition:opacity .35s ease !important;}
}
#cta-offer{ position:relative;overflow:hidden;animation:ctaBreath 3s ease-in-out infinite;}
@keyframes ctaBreath{ 0%{ transform:scale(1);box-shadow:0 16px 50px rgba(139,92,246,.25);}
 50%{ transform:scale(1.04);box-shadow:0 22px 70px rgba(139,92,246,.45);}
 100%{ transform:scale(1);box-shadow:0 16px 50px rgba(139,92,246,.25);}
}
#cta-offer:hover{ transform:scale(1.06);}
@media (prefers-reduced-motion:reduce){ #cta-offer{ animation:none;}
}
.burger{ display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;z-index:1001;}
.burger span{ width:26px;height:2px;background:var(--text);transition:0.3s ease;}
.trustband{ padding:28px 0;border-bottom:1px solid rgba(36,36,52,.6);background:radial-gradient(900px 260px at 20% 50%,rgba(250,204,21,.06),transparent 60%),radial-gradient(900px 260px at 80% 50%,rgba(56,189,248,.08),transparent 60%),var(--bg);}
.trustband-inner{ display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;}
.trustchip{ padding:10px 12px;border-radius:999px;border:1px solid rgba(36,36,52,.85);background:rgba(18,18,26,.55);color:var(--muted);font-weight:800;backdrop-filter:blur(10px);}
@media (max-width:920px){ .trustband{ padding:22px 0;}
 .trustband-inner{ justify-content:flex-start;}
}
.midcta{ padding:48px 0;/*background:radial-gradient(900px 420px at 15% 40%,rgba(139,92,246,.14),transparent 60%),radial-gradient(900px 420px at 85% 60%,rgba(56,189,248,.12),transparent 60%),var(--bg);*/border-bottom:1px solid rgba(36,36,52,.6);}
.midcta-card{ display:flex;gap:18px;align-items:center;justify-content:space-between;padding:20px;border-radius:var(--radius);border:1px solid rgba(36,36,52,.9);background:rgba(18,18,26,.55);box-shadow:var(--shadow); margin-top: 80px;}
.midcta-title{ margin:0 0 6px;font-size:18px;letter-spacing:-.2px;}
.midcta-sub{ margin:0;color:var(--muted);font-weight:600;max-width:70ch;}
.midcta-actions{ display:flex;gap:10px;flex-wrap:wrap;flex:0 0 auto;}
@media (max-width:920px){ .midcta-card{ flex-direction:column;align-items:flex-start;}
}
.hero-grid > div{ display:flex; flex-direction:column;}
.sec-reviews{ background:radial-gradient(900px 420px at 20% 40%,rgba(139,92,246,.12),transparent 60%),radial-gradient(900px 420px at 80% 60%,rgba(56,189,248,.10),transparent 60%),var(--bg);border-bottom:1px solid rgba(36,36,52,.6);}
.reviews-grid{ display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin-top:20px;}
.review{ padding:20px;background:transparent;}
.review-stars{ font-size:18px;letter-spacing:3px;background:linear-gradient(90deg,var(--yellow),#fff);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:10px;}
.review-text{ color:var(--muted);font-weight:600;margin-bottom:16px;}
.review-author strong{ display:block;font-size:14px;}
.review-author span{ font-size:13px;color:var(--muted);}
@media (max-width:920px){ .reviews-grid{ grid-template-columns:1fr;}
}
.cookie-banner{ position:fixed;bottom:0;left:0;width:100%;background:#111;color:#fff;padding:20px;box-shadow:0 -5px 20px rgba(0,0,0,.4);z-index:9999;
}
.cookie-content{ max-width:1100px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;
}
.cookie-buttons button{ padding:10px 18px;border:none;cursor:pointer;font-weight:600;border-radius:6px;
}
#accept-cookies{ background:#facc15;color:#000;
}
#decline-cookies{ background:#333;color:#fff;
}
.phone-wrapper{ text-align:right; 
}
.phone-link{ font-size:1.6rem;display:inline-flex;align-items:center;gap:8px;font-weight:700;text-decoration:none;line-height:1;
}
.phone-link .icon-phone{ width:24px !important;height:24px !important;min-width:24px !important;max-width:24px !important;max-height:24px !important;display:inline-block !important;flex:0 0 24px !important;overflow:visible;
}
.social-link{ display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:14px;background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(56,189,248,.15));border:1px solid rgba(139,92,246,.35);transition:all .25s ease;font-weight:600;color:var(--text);margin-top:6px;
}
.social-link:hover{ transform:translateY(-3px);box-shadow:0 10px 25px rgba(139,92,246,.35);border-color:var(--violet);
}
.social-icon{ display:flex;align-items:center;justify-content:center;color:var(--violet);transition:all .25s ease;
}
.social-link:hover .social-icon{ color:var(--blue);transform:scale(1.1);
}
.social-text{ font-size:14px;letter-spacing:.3px;
}


.sec-counter {
  
}

.counter {
  gap: 40px;
  text-align: center;
  padding: 25px 0;
  margin-top: 40px;
}

.counter-box {
  background: var(--surface);
  padding: 40px 20px;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.counter-number {
  font-size: 42px;
  font-weight: 700;
  background: linear-gradient(135deg,var(--violet),var(--blue));
  -webkit-background-clip: text;
  color: transparent;
}

.counter-label {
  margin-top: 10px;
  font-size: 15px;
  color: var(--muted);
}


/* Counter horizontal in einer Reihe */
.card.point.counter .counter-row{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
  margin-top: 14px;
}

.card.point.counter .counter-item{
  text-align: center;
}

.card.point.counter .counter-number{
  font-size: 38px;
  font-weight: 800;
  line-height: 1;
  background: linear-gradient(135deg,var(--violet),var(--blue));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.card.point.counter .counter-label{
  margin-top: 8px;
  font-size: 13px;
  color: var(--muted);
}

/* Mobile: automatisch umbrechen */
@media (max-width: 640px){
  .card.point.counter .counter-row{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 420px){
  .card.point.counter .counter-row{
    grid-template-columns: 1fr;
  }
}

.sec-team{
  padding: 100px 0;
}

.team-card{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  align-items: center;
  background: var(--surface);
  padding: 50px;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.team-image img{
  width: 100%;
  border-radius: var(--radius);
  object-fit: cover;
}

.team-content h2{
  margin-bottom: 20px;
}

.team-content p{
  margin-bottom: 15px;
  color: var(--muted);
}

.team-signature{
  margin-top: 20px;
  font-weight: 600;
  background: linear-gradient(135deg,var(--violet),var(--blue));
  -webkit-background-clip: text;
  color: transparent;
}

/* Mobile */
@media (max-width: 900px){
  .team-card{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px){

  .team-card{
    padding: 30px;   /* weniger Innenabstand */
  }

  .team-image img{
    max-height: 280px;
    border-radius: 14px;
  }

}

