
:root{--bg:#f5f8fb;--surface:#fff;--text:#17263a;--muted:#617185;--navy:#142b45;--navy2:#1c3a5a;--brand:#3b9943;--brand-strong:#3a8956;--line:rgba(20,43,69,.12);--shadow:0 24px 70px rgba(20,43,69,.11);--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.65}img{max-width:100%;display:block}a{color:inherit}.service-topbar{background:#0b1d32;color:rgba(255,255,255,.78);font-size:13px}.service-topbar .container{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:20px}.service-topbar a{color:inherit;text-decoration:none}.service-nav{position:sticky;top:0;z-index:1200;background:rgba(14,31,52,.96);border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:blur(14px)}.service-nav .container{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.service-brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}.service-brand img{width:50px;height:50px;object-fit:cover;border-radius:13px;background:#fff}.service-brand-copy{display:flex;flex-direction:column;line-height:1.1}.service-brand-copy strong{font-size:16px}.service-brand-copy span{margin-top:5px;font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.58);font-weight:800}.service-nav-links{display:flex;align-items:center;gap:24px}.service-nav-links a{position:relative;color:rgba(255,255,255,.76);text-decoration:none;font-weight:800;font-size:14px}.service-nav-links a:not(.service-nav-cta)::after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:2px;border-radius:99px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .65s var(--ease)}.service-nav-links a:hover{color:#fff}.service-nav-links a:hover::after{transform:scaleX(1)}.service-nav-cta{padding:11px 17px;border-radius:11px;background:var(--brand);color:#fff!important}.service-nav-cta:hover{background:var(--brand-strong)}
.service-detail-hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;min-height:620px}.service-detail-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,20,37,.96),rgba(10,29,50,.82) 52%,rgba(10,29,50,.32));z-index:1}.service-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.85);transform:scale(1.04)}.service-detail-hero .container{position:relative;z-index:2;padding-top:110px;padding-bottom:100px}.service-breadcrumb{display:flex;gap:8px;align-items:center;color:rgba(255,255,255,.6);font-size:13px}.service-breadcrumb a{color:inherit;text-decoration:none}.service-breadcrumb a:hover{color:#fff}.service-number{display:inline-flex;margin-top:34px;padding:8px 12px;border:1px solid rgba(255,255,255,.17);border-radius:999px;color:#bfe4c4;font-size:12px;font-weight:900;letter-spacing:.15em}.service-detail-hero h1{max-width:850px;margin:18px 0 20px;font-size:clamp(48px,7vw,92px);line-height:.94;letter-spacing:-.055em;font-weight:900;text-wrap:balance}.service-detail-hero p{max-width:710px;color:rgba(255,255,255,.76);font-size:clamp(17px,1.5vw,21px)}.service-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.service-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 19px;border-radius:12px;text-decoration:none;font-weight:850;border:1px solid transparent;transition:transform .3s var(--ease),background-color .3s ease}.service-btn:hover{transform:translateY(-2px)}.service-btn-primary{background:var(--brand);color:#fff}.service-btn-primary:hover{background:var(--brand-strong);color:#fff}.service-btn-light{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff}.service-btn-light:hover{background:#fff;color:var(--navy)}
.service-section{padding:96px 0}.service-section-alt{background:#fff}.service-heading{display:grid;grid-template-columns:1fr .7fr;gap:40px;align-items:end;margin-bottom:44px}.service-kicker{color:var(--brand);text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:900}.service-heading h2{margin:8px 0 0;color:var(--navy);font-size:clamp(34px,4.5vw,58px);line-height:1.04;letter-spacing:-.045em;font-weight:900}.service-heading p{margin:0;color:var(--muted)}.service-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.service-feature{position:relative;padding:23px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 40px rgba(20,43,69,.06);overflow:hidden}.service-feature::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--brand)}.service-feature span{display:flex;align-items:center;gap:11px;color:var(--navy);font-weight:850}.service-feature svg{width:22px;height:22px;color:var(--brand)}
.service-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.service-photo{position:relative;border-radius:28px;overflow:hidden;box-shadow:var(--shadow);isolation:isolate}.service-photo img{width:100%;height:530px;object-fit:cover;transition:transform 1.4s var(--ease),filter 1.2s ease}.service-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,28,48,.46));pointer-events:none}.service-photo:hover img{transform:scale(1.045);filter:saturate(1.04)}.service-advisor{padding:34px;border-radius:26px;background:linear-gradient(180deg,#fff,#f7fafc);border:1px solid var(--line);box-shadow:var(--shadow)}.service-advisor h2{margin:8px 0 12px;color:var(--navy);font-size:37px;line-height:1.08;font-weight:900}.service-advisor>p{color:var(--muted)}.symptom-list{display:grid;gap:10px;margin-top:22px}.symptom-button{width:100%;border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#fff;color:var(--navy);font-weight:800;text-align:left;cursor:pointer;transition:border-color .3s ease,transform .3s var(--ease),background-color .3s ease}.symptom-button:hover,.symptom-button.is-active{transform:translateX(3px);border-color:rgba(59,153,67,.42);background:#f1faf2}.advisor-result{margin-top:20px;padding:18px;border-radius:16px;background:var(--navy);color:#fff}.advisor-result small{display:block;color:#aee3b6;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.advisor-result strong{display:block;margin-top:6px;line-height:1.55}
.service-process{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-step{padding:27px;border-radius:22px;border:1px solid var(--line);background:#fff}.service-step em{font-style:normal;color:var(--brand);font-size:34px;font-weight:900}.service-step h3{margin:18px 0 8px;color:var(--navy);font-size:20px}.service-step p{margin:0;color:var(--muted);font-size:14px}.service-faq{max-width:900px;margin:0 auto}.service-faq details{border-bottom:1px solid var(--line);padding:20px 0}.service-faq summary{cursor:pointer;color:var(--navy);font-weight:900;list-style:none}.service-faq summary::-webkit-details-marker{display:none}.service-faq details p{color:var(--muted);margin:12px 0 0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-card{position:relative;min-height:250px;border-radius:22px;overflow:hidden;color:#fff;text-decoration:none}.related-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.related-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,37,.05),rgba(8,20,37,.86))}.related-card span{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;font-size:20px;font-weight:900}.related-card:hover img{transform:scale(1.055)}.service-cta{padding:70px 0;background:var(--navy);color:#fff;text-align:center}.service-cta h2{margin:0;font-size:clamp(34px,4vw,54px);font-weight:900}.service-cta p{max-width:650px;margin:15px auto 25px;color:rgba(255,255,255,.7)}.service-footer{padding:38px 0;background:#091a2d;color:rgba(255,255,255,.65)}.service-footer .container{display:flex;justify-content:space-between;gap:20px;align-items:center}.service-footer a{color:inherit}.service-footer-links{display:flex;gap:16px;flex-wrap:wrap}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.reveal-left{transform:translateX(-28px)}.reveal-right{transform:translateX(28px)}
@media(max-width:991.98px){.service-nav-links a:not(.service-nav-cta){display:none}.service-detail-hero{min-height:540px}.service-heading,.service-split{grid-template-columns:1fr}.service-heading{align-items:start}.service-feature-grid,.service-process,.related-grid{grid-template-columns:1fr}.service-photo img{height:390px}.service-footer .container{align-items:flex-start;flex-direction:column}}
@media(max-width:575.98px){.service-topbar{display:none}.service-nav .container{min-height:68px}.service-brand img{width:44px;height:44px}.service-brand-copy strong{font-size:14px}.service-nav-cta{font-size:12px;padding:10px 12px}.service-detail-hero .container{padding-top:80px;padding-bottom:70px}.service-detail-hero h1{font-size:48px}.service-section{padding:72px 0}.service-advisor{padding:24px}.service-photo img{height:310px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.service-photo img,.related-card img,.service-btn,.symptom-button{transition:none!important;transform:none!important;opacity:1!important}}


/* Hauptnavigation auf allen Leistungsseiten – identisch zur Startseite */
.service-main-topbar { background:#0b1d32; border-bottom:1px solid rgba(255,255,255,.08); color:rgba(255,255,255,.78); font-size:13px; }
.service-main-topbar .topbar-item,.service-main-topbar .topbar-link { display:flex; align-items:center; gap:8px; color:inherit; text-decoration:none; font-weight:650; }
.service-main-topbar .topbar-link:hover { color:#fff; }
.service-main-topbar i { color:#b7c8da; }
.service-main-topbar .topbar-divider { color:rgba(255,255,255,.25); }
.service-main-nav { background:rgba(14,31,52,.96); border-bottom:1px solid rgba(255,255,255,.09); backdrop-filter:blur(14px); padding:7px 0; transition:box-shadow .4s ease,background-color .4s ease; }
.service-main-nav.is-scrolled { background:rgba(10,24,42,.985); box-shadow:0 14px 34px rgba(2,12,24,.18); }
.service-main-nav .navbar-brand { color:#fff; text-decoration:none; }
.service-main-nav .brand-mark { width:52px; height:52px; display:block; overflow:hidden; border-radius:14px; background:#fff; border:1px solid rgba(255,255,255,.1); }
.service-main-nav .brand-mark img { width:100%; height:100%; object-fit:cover; }
.service-main-nav .brand-copy { display:flex; flex-direction:column; line-height:1.08; }
.service-main-nav .brand-name { font-weight:800; color:#fff; }
.service-main-nav .brand-subtitle { margin-top:5px; font-size:10px; text-transform:uppercase; letter-spacing:.15em; color:rgba(255,255,255,.58); font-weight:800; }
.service-main-nav .nav-link { position:relative; color:rgba(255,255,255,.76)!important; font-size:14px; font-weight:800; padding:12px 10px!important; }
.service-main-nav .nav-link::after { content:""; position:absolute; left:10px; right:10px; bottom:5px; height:2px; border-radius:99px; background:var(--brand); transform:scaleX(0); transform-origin:left; transition:transform .65s var(--ease); }
.service-main-nav .nav-link:hover,.service-main-nav .nav-link.active { color:#fff!important; }
.service-main-nav .nav-link:hover::after,.service-main-nav .nav-link.active::after { transform:scaleX(1); }
.service-main-nav .btn-primary { background:var(--brand); border-color:var(--brand); color:#fff; font-weight:850; border-radius:11px; }
.service-main-nav .btn-primary:hover { background:var(--brand-strong); border-color:var(--brand-strong); }
.service-main-nav .navbar-toggler { border-color:rgba(255,255,255,.2); }

/* Ruhige, intelligente Unterseiten-Animationen */
.service-detail-hero .container > * { opacity:0; transform:translateY(20px); animation:serviceHeroIn .9s var(--ease) forwards; }
.service-detail-hero .container > *:nth-child(2){animation-delay:.08s}.service-detail-hero .container > *:nth-child(3){animation-delay:.15s}.service-detail-hero .container > *:nth-child(4){animation-delay:.22s}.service-detail-hero .container > *:nth-child(5){animation-delay:.3s}
@keyframes serviceHeroIn { to { opacity:1; transform:none; } }
.service-detail-hero>img { animation:serviceHeroImage 16s ease-in-out infinite alternate; }
@keyframes serviceHeroImage { from{transform:scale(1.04) translate3d(0,0,0)} to{transform:scale(1.09) translate3d(-1.2%,.8%,0)} }
.reveal { opacity:0; transform:translateY(26px); transition:opacity 1s ease,transform 1.1s var(--ease); transition-delay:var(--reveal-delay,0ms); }
.reveal-left{transform:translateX(-28px)}.reveal-right{transform:translateX(28px)}.reveal.is-visible{opacity:1;transform:none}
.service-feature,.service-step,.related-card,.service-gallery-item { transition:transform .75s var(--ease),box-shadow .75s ease,border-color .75s ease; }
@media(hover:hover) and (pointer:fine){.service-feature:hover,.service-step:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(20,43,69,.12);border-color:rgba(59,153,67,.28)}.related-card:hover,.service-gallery-item:hover{transform:translateY(-5px)}}

/* Werkstatt-Galerie nach Unser Ablauf */
.service-work-gallery { background:linear-gradient(180deg,#f5f8fb,#fff); }
.service-gallery-grid { display:grid; grid-template-columns:1.25fr .75fr; grid-template-rows:repeat(2,minmax(220px,1fr)); gap:18px; }
.service-gallery-item { position:relative; min-height:260px; padding:0; border:0; border-radius:25px; overflow:hidden; background:#142b45; box-shadow:var(--shadow); cursor:zoom-in; text-align:left; }
.service-gallery-item-large { grid-row:1 / span 2; min-height:550px; }
.service-gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform 1.6s var(--ease),filter 1.2s ease; }
.service-gallery-item::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(8,20,37,.04) 35%,rgba(8,20,37,.82)); }
.service-gallery-item span { position:absolute; z-index:2; left:24px; right:24px; bottom:22px; color:#fff; display:flex; flex-direction:column; }
.service-gallery-item small { text-transform:uppercase; letter-spacing:.14em; color:#bce7c2; font-weight:850; }
.service-gallery-item strong { margin-top:4px; font-size:22px; line-height:1.15; }
.service-gallery-item:hover img { transform:scale(1.055); filter:saturate(1.05); }
.service-lightbox { position:fixed; inset:0; z-index:3000; display:none; align-items:center; justify-content:center; padding:24px; background:rgba(5,15,28,.82); backdrop-filter:blur(8px); }
.service-lightbox.is-open { display:flex; }
.service-lightbox-dialog { position:relative; width:min(1100px,100%); max-height:90vh; border-radius:24px; overflow:hidden; background:#fff; box-shadow:0 35px 110px rgba(0,0,0,.4); }
.service-lightbox-dialog img { width:100%; max-height:82vh; object-fit:contain; background:#eaf0f5; }
.service-lightbox-close { position:absolute; z-index:2; top:14px; right:14px; width:42px; height:42px; border:0; border-radius:50%; background:rgba(255,255,255,.94); color:var(--navy); font-size:25px; cursor:pointer; }
@media(max-width:991.98px){.service-main-nav .navbar-collapse{margin-top:10px;padding:14px;border-radius:16px;background:#0e1f34;border:1px solid rgba(255,255,255,.1)}.service-main-nav .nav-link::after{left:10px;right:auto;width:38px}.service-gallery-grid{grid-template-columns:1fr;grid-template-rows:auto}.service-gallery-item,.service-gallery-item-large{grid-row:auto;min-height:300px}.service-gallery-item-large{min-height:420px}}
@media(max-width:575.98px){.service-gallery-item,.service-gallery-item-large{min-height:260px}.service-gallery-item span{left:18px;right:18px;bottom:17px}.service-gallery-item strong{font-size:19px}}
@media(prefers-reduced-motion:reduce){.service-detail-hero .container>*{opacity:1!important;transform:none!important;animation:none!important}.service-detail-hero>img{animation:none!important}.reveal,.service-feature,.service-step,.related-card,.service-gallery-item,.service-gallery-item img{transition:none!important;transform:none!important;opacity:1!important}}


/* =====================================================
   RUHIGE INTERAKTIONEN FÜR LEISTUNGS-UNTERSEITEN
   Keine mausgesteuerte Hintergrundbewegung.
===================================================== */
:root {
  --service-motion-slow: 1050ms;
  --service-motion-medium: 760ms;
  --service-ease-soft: cubic-bezier(.22,.61,.36,1);
  --service-ease-premium: cubic-bezier(.16,1,.3,1);
}

/* Schnellcheck: langsame, verständliche Auswahl */
.symptom-button {
  position: relative;
  overflow: hidden;
  padding: 17px 52px 17px 18px;
  transition:
    transform var(--service-motion-medium) var(--service-ease-premium),
    border-color var(--service-motion-medium) ease,
    background-color var(--service-motion-medium) ease,
    color var(--service-motion-medium) ease,
    box-shadow var(--service-motion-medium) ease !important;
}
.symptom-button::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--brand);
  transform: scaleY(0);
  transform-origin: center;
  transition: transform var(--service-motion-slow) var(--service-ease-premium);
}
.symptom-button::after {
  content: "✓";
  position: absolute;
  right: 18px;
  top: 50%;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--brand);
  color: #fff;
  font-size: 14px;
  font-weight: 900;
  opacity: 0;
  transform: translateY(-50%) scale(.55) rotate(-18deg);
  transition: opacity 620ms ease, transform 900ms var(--service-ease-premium);
}
.symptom-button:hover {
  transform: translateX(2px);
  border-color: rgba(59,153,67,.36);
  background: #f7fbf7;
}
.symptom-button.is-active {
  transform: translateX(4px);
  border-color: rgba(59,153,67,.55);
  background: linear-gradient(90deg,#f0faf1,#f8fcf8);
  box-shadow: 0 12px 30px rgba(59,153,67,.09);
}
.symptom-button.is-active::before { transform: scaleY(1); }
.symptom-button.is-active::after {
  opacity: 1;
  transform: translateY(-50%) scale(1) rotate(0);
}
.symptom-button.is-selecting {
  transform: translateX(5px) scale(.995);
}
.advisor-result {
  position: relative;
  overflow: hidden;
  min-height: 138px;
  transition: transform 900ms var(--service-ease-premium), box-shadow 900ms ease, background-color 900ms ease;
}
.advisor-result::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg,transparent 20%,rgba(255,255,255,.08) 48%,transparent 76%);
  transform: translateX(-125%);
  opacity: 0;
}
.advisor-result.is-updating {
  transform: translateY(3px);
  box-shadow: 0 18px 40px rgba(10,28,48,.18);
}
.advisor-result.is-updating::after {
  opacity: 1;
  animation: advisorSoftSweep 1000ms var(--service-ease-soft) both;
}
.advisor-result strong {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 420ms ease, transform 620ms var(--service-ease-premium);
}
.advisor-result.is-changing strong {
  opacity: 0;
  transform: translateY(9px);
}
@keyframes advisorSoftSweep {
  from { transform: translateX(-125%); }
  to { transform: translateX(125%); }
}

/* Mehr ruhige Scroll- und Bildanimationen */
.service-heading.reveal h2,
.service-heading.reveal p,
.service-feature.reveal,
.service-step.reveal,
.related-card.reveal,
.service-gallery-item.reveal,
.service-photo.reveal,
.service-advisor.reveal {
  will-change: opacity, transform;
}
.service-heading.reveal h2 {
  transition: letter-spacing 1000ms var(--service-ease-soft);
}
.service-heading.reveal.is-visible h2 { letter-spacing: -.045em; }

.service-feature {
  transition: transform 900ms var(--service-ease-premium), box-shadow 900ms ease, border-color 900ms ease !important;
}
.service-feature span {
  transition: transform 780ms var(--service-ease-premium), color 780ms ease;
}
.service-feature svg {
  transition: transform 900ms var(--service-ease-premium), color 780ms ease;
}
.service-feature.is-visible span { animation: serviceFeatureText 900ms var(--service-ease-premium) both; }
@keyframes serviceFeatureText {
  from { opacity: .25; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (hover:hover) and (pointer:fine) {
  .service-feature:hover span { transform: translateX(3px); }
  .service-feature:hover svg { transform: scale(1.08) rotate(-3deg); }
}

.service-photo {
  clip-path: inset(5% 5% 5% 5% round 28px);
  transition: clip-path 1350ms var(--service-ease-premium), opacity 1000ms ease, transform 1100ms var(--service-ease-premium) !important;
}
.service-photo.is-visible { clip-path: inset(0 round 28px); }
.service-photo img {
  transform: scale(1.065);
  filter: saturate(.88) contrast(.98);
  transition: transform 1800ms var(--service-ease-soft), filter 1200ms ease !important;
}
.service-photo.is-visible img {
  transform: scale(1.015);
  filter: saturate(1) contrast(1);
}
@media (hover:hover) and (pointer:fine) {
  .service-photo:hover img { transform: scale(1.04); }
}

.service-advisor {
  transition: transform 1000ms var(--service-ease-premium), box-shadow 1000ms ease, border-color 1000ms ease !important;
}
.service-advisor.is-visible { box-shadow: 0 24px 70px rgba(20,43,69,.10); }

.service-step {
  position: relative;
  overflow: hidden;
  transition: transform 900ms var(--service-ease-premium), box-shadow 900ms ease, border-color 900ms ease !important;
}
.service-step::after {
  content: "";
  position: absolute;
  left: 27px;
  right: 27px;
  bottom: 0;
  height: 3px;
  border-radius: 99px 99px 0 0;
  background: var(--brand);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 1200ms var(--service-ease-premium);
}
.service-step.is-visible::after { transform: scaleX(1); }
.service-step em,
.service-step h3,
.service-step p {
  transition: transform 780ms var(--service-ease-premium), color 780ms ease;
}
@media (hover:hover) and (pointer:fine) {
  .service-step:hover em { transform: translateY(-2px); }
  .service-step:hover h3 { transform: translateX(2px); }
}

.service-gallery-item {
  clip-path: inset(4% 4% 4% 4% round 25px);
  transition: clip-path 1400ms var(--service-ease-premium), transform 900ms var(--service-ease-premium), box-shadow 900ms ease !important;
}
.service-gallery-item.is-visible { clip-path: inset(0 round 25px); }
.service-gallery-item img {
  transform: scale(1.055);
  filter: saturate(.9) brightness(.96);
  transition: transform 1800ms var(--service-ease-soft), filter 1200ms ease !important;
}
.service-gallery-item.is-visible img {
  transform: scale(1.01);
  filter: saturate(1) brightness(1);
}
.service-gallery-item span {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 850ms ease 220ms, transform 1000ms var(--service-ease-premium) 220ms;
}
.service-gallery-item.is-visible span {
  opacity: 1;
  transform: translateY(0);
}
@media (hover:hover) and (pointer:fine) {
  .service-gallery-item:hover img { transform: scale(1.045); }
}

.related-card {
  clip-path: inset(3% 3% 3% 3% round 22px);
  transition: clip-path 1200ms var(--service-ease-premium), transform 900ms var(--service-ease-premium), box-shadow 900ms ease !important;
}
.related-card.is-visible { clip-path: inset(0 round 22px); }
.related-card img { transition: transform 1600ms var(--service-ease-soft), filter 1000ms ease !important; }
.related-card span { transition: transform 800ms var(--service-ease-premium); }
@media (hover:hover) and (pointer:fine) {
  .related-card:hover span { transform: translateY(-3px); }
}

/* Kein mausgesteuerter Hintergrundeffekt */
.service-detail-hero,
.service-section,
.service-advisor,
.service-work-gallery {
  background-position: center !important;
}

@media (max-width: 767.98px) {
  .symptom-button { padding: 16px 48px 16px 16px; }
  .advisor-result { min-height: 150px; }
  .service-photo,
  .service-gallery-item,
  .related-card { clip-path: none; }
}

@media (prefers-reduced-motion: reduce) {
  .symptom-button,
  .symptom-button::before,
  .symptom-button::after,
  .advisor-result,
  .advisor-result strong,
  .service-photo,
  .service-photo img,
  .service-feature,
  .service-feature span,
  .service-feature svg,
  .service-step,
  .service-step::after,
  .service-gallery-item,
  .service-gallery-item img,
  .service-gallery-item span,
  .related-card,
  .related-card img,
  .related-card span {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
    clip-path: none !important;
  }
}


/* Android: weißes Hamburger-Symbol auf allen Leistungs-Unterseiten */
.service-main-nav .navbar-toggler-icon,
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba%28255,255,255,0.96%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;
  filter: none !important;
  opacity: 1 !important;
}
.service-main-nav .navbar-toggler {
  min-width: 46px;
  min-height: 42px;
  display: inline-grid;
  place-items: center;
  background: rgba(255,255,255,.025);
  border-color: rgba(255,255,255,.28) !important;
}


/* Desktop/Mobil-Fix: Hamburger nur unter 992 px anzeigen */
@media (min-width: 992px) {
  .service-main-nav .navbar-toggler {
    display: none !important;
  }
}
@media (max-width: 991.98px) {
  .service-main-nav .navbar-toggler {
    display: inline-grid !important;
  }
}

/* DPF- und AGR-Angebotsbereich */
.dpf-offer-section {
  background:
    radial-gradient(circle at 82% 18%, rgba(59,153,67,.10), transparent 30%),
    linear-gradient(180deg, #f4f8f5 0%, #ffffff 100%);
}
.dpf-offer-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
  gap: 34px;
  align-items: stretch;
}
.dpf-offer-copy,
.dpf-offer-panel {
  border-radius: 28px;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.dpf-offer-copy {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 4vw, 52px);
  background: var(--navy);
  color: #fff;
}
.dpf-offer-copy::after {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -110px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: rgba(59,153,67,.15);
}
.dpf-offer-copy .service-kicker { color: #b9e8c0; }
.dpf-offer-copy h2 {
  position: relative;
  z-index: 1;
  max-width: 760px;
  margin: 10px 0 18px;
  color: #fff;
  font-size: clamp(36px, 4.5vw, 62px);
  line-height: 1.02;
  letter-spacing: -.045em;
  font-weight: 900;
}
.dpf-offer-copy > p {
  position: relative;
  z-index: 1;
  max-width: 720px;
  margin: 0;
  color: rgba(255,255,255,.76);
  font-size: 17px;
}
.dpf-price-line {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 9px 14px;
  margin-top: 30px;
}
.dpf-price-line strong {
  color: #fff;
  font-size: clamp(38px, 5vw, 66px);
  line-height: .95;
  letter-spacing: -.05em;
}
.dpf-price-line span {
  padding-bottom: 5px;
  color: rgba(255,255,255,.68);
  font-weight: 750;
}
.dpf-offer-note {
  position: relative;
  z-index: 1;
  margin-top: 22px;
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.82);
  font-size: 14px;
}
.dpf-offer-panel {
  padding: clamp(24px, 3vw, 38px);
  background: #fff;
}
.dpf-offer-panel h3 {
  margin: 0 0 22px;
  color: var(--navy);
  font-size: 25px;
  font-weight: 900;
}
.dpf-offer-facts {
  display: grid;
  gap: 13px;
}
.dpf-offer-fact {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: center;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: #f8fbf8;
}
.dpf-offer-fact svg {
  width: 48px;
  height: 48px;
  padding: 12px;
  border-radius: 14px;
  background: rgba(59,153,67,.12);
  color: var(--brand);
}
.dpf-offer-fact strong {
  display: block;
  color: var(--navy);
  line-height: 1.25;
}
.dpf-offer-fact span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 13px;
}
@media (hover:hover) and (pointer:fine) {
  .dpf-offer-fact {
    transition: transform .7s var(--ease), border-color .7s ease, box-shadow .7s ease;
  }
  .dpf-offer-fact:hover {
    transform: translateY(-3px);
    border-color: rgba(59,153,67,.3);
    box-shadow: 0 17px 38px rgba(20,43,69,.08);
  }
}
@media (max-width: 991.98px) {
  .dpf-offer-shell { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
  .dpf-offer-copy,
  .dpf-offer-panel { border-radius: 22px; }
  .dpf-price-line strong { font-size: 44px; }
}


/* SUBPAGE FOOTER CENTER FIX V8 */
@media(max-width:991.98px){
  .service-footer{padding:34px 0 42px;}
  .service-footer .container{
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    text-align:center;
  }
  .service-footer .container > span{display:block; width:100%; text-align:center;}
  .service-footer-links{
    width:100%;
    justify-content:center;
    align-items:center;
    gap:14px 18px;
    text-align:center;
  }
}
@media(max-width:575.98px){
  .service-footer .container{gap:12px;}
  .service-footer-links{
    flex-direction:column;
    gap:10px;
  }
  .service-footer-links a{display:inline-block;}
}
