/* ZK Building Cleaner GmbH – Zusatz-Styles fuer Leistungs-Unterseiten
   Nutzt die Farb-Variablen aus style.css (--taupe, --ink, --beige-bg ...) */
body.subpage .site-header{background:var(--white,#fff);box-shadow:var(--shadow-sm)}
.page-hero{padding:150px 0 64px;background:var(--beige-bg,#f6f3ee);border-bottom:1px solid var(--line,#e7e1d8)}
.page-hero h1{font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.15;margin:.4rem 0 1rem;max-width:22ch}
.page-hero .lead{font-size:1.12rem;color:var(--ink-soft,#3a3a3a);max-width:60ch;margin:0 0 1.6rem}
.page-hero .hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.breadcrumb{font-size:.88rem;color:var(--muted,#6f6a63);margin-bottom:.6rem}
.breadcrumb a{color:var(--taupe-dark,#8a7c69);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}
.prose h2{font-size:clamp(1.4rem,2.6vw,1.8rem);margin:2.2rem 0 .8rem}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:1.15rem;margin:1.6rem 0 .5rem}
.prose p,.prose li{color:var(--ink-soft,#3a3a3a);line-height:1.7}
.prose ul{padding-left:1.2rem;margin:.6rem 0 1.2rem}
.prose li{margin:.35rem 0}
.check-list{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 24px}
.check-list li{position:relative;padding-left:28px}
.check-list li::before{content:"";position:absolute;left:0;top:.45em;width:16px;height:16px;border-radius:50%;background:var(--taupe,#a99a86);box-shadow:inset 0 0 0 4px var(--beige-bg,#f6f3ee)}
.steps{counter-reset:step;list-style:none;padding:0!important;display:grid;gap:14px}
.steps li{counter-increment:step;position:relative;padding:16px 18px 16px 62px;background:var(--white,#fff);border:1px solid var(--line,#e7e1d8);border-radius:var(--radius-sm,10px)}
.steps li::before{content:counter(step);position:absolute;left:16px;top:14px;width:32px;height:32px;border-radius:50%;background:var(--ink,#1b1b1b);color:#fff;display:grid;place-items:center;font-weight:600;font-family:var(--font-head)}
.steps strong{display:block;color:var(--ink,#1b1b1b)}
.aside-card{position:sticky;top:110px;background:var(--white,#fff);border:1px solid var(--line,#e7e1d8);border-radius:var(--radius,16px);padding:24px;box-shadow:var(--shadow-sm)}
.aside-card h2{font-size:1.15rem;margin:0 0 .6rem}
.aside-card p{margin:.3rem 0;color:var(--ink-soft,#3a3a3a);font-size:.95rem}
.aside-card a{color:var(--ink,#1b1b1b)}
.aside-card .btn{margin-top:14px;width:100%;text-align:center}
.aside-card dl{margin:.8rem 0 0;font-size:.92rem}
.aside-card dt{font-weight:600;margin-top:.6rem}
.aside-card dd{margin:0;color:var(--muted,#6f6a63)}
.faq details{background:var(--white,#fff);border:1px solid var(--line,#e7e1d8);border-radius:var(--radius-sm,10px);padding:4px 18px;margin-bottom:10px}
.faq summary{cursor:pointer;font-weight:600;padding:12px 0;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;color:var(--taupe-dark,#8a7c69);font-size:1.2rem}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:0 0 14px;color:var(--ink-soft,#3a3a3a);line-height:1.7}
.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;padding:0;list-style:none}
.related a{display:block;padding:14px 16px;border:1px solid var(--line,#e7e1d8);border-radius:var(--radius-sm,10px);background:var(--white,#fff);text-decoration:none;color:var(--ink,#1b1b1b);font-weight:500}
.related a:hover{border-color:var(--taupe,#a99a86)}
.cta-band{background:var(--ink,#1b1b1b);color:#fff;border-radius:var(--radius,16px);padding:36px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.cta-band h2{color:#fff;margin:0 0 .3rem;font-size:1.5rem}
.cta-band p{margin:0;color:var(--taupe-light,#d8cfc2)}
.service-card a.card-link{color:inherit;text-decoration:none}
.service-card a.card-link::after{content:"";position:absolute;inset:0}
.service-card{position:relative}
@media (max-width:900px){.content-grid{grid-template-columns:1fr}.aside-card{position:static}.page-hero{padding:120px 0 48px}}
.site-footer .footer-col ul{list-style:none;padding:0;margin:.4rem 0 0}.site-footer .footer-col li{margin:.25rem 0}
