/* Production styles for Dachreinigung Kosten. */
/* Fachlich regionalspezifischer Abschnitt ohne Karte/Boxen.
   Bleibt im bestehenden hellblauen Auslauf der Dachreinigungsseite. */
html body.hc-cleaning-gradient-shift .hc-roofregions,
html body.hc-cleaning-gradient-shift .hc-roofregions * {box-sizing:border-box;}
html body.hc-cleaning-gradient-shift .hc-roofregions {
  position:relative!important;
  z-index:1!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0 0 0 calc(50% - 50vw)!important;
  padding:clamp(64px,6.7vw,96px) 24px clamp(65px,6.3vw,90px)!important;
  background:linear-gradient(180deg,
    rgba(170,196,210,.42) 0%,
    rgba(191,215,227,.34) 34%,
    rgba(217,232,239,.30) 70%,
    rgba(234,243,248,.20) 100%)!important;
  color:#183f56!important;
  border:0!important;
  box-shadow:none!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__inner {
  width:min(1090px,100%)!important;
  margin:0 auto!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro {
  max-width:905px;
  margin:0 auto clamp(39px,4.5vw,62px);
  text-align:center;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro h2 {
  max-width:840px!important;
  margin:0 auto 23px!important;
  font:830 clamp(29px,3.15vw,43px)/1.17 Nunito,"Nunito Sans",Arial,sans-serif!important;
  color:#153d55!important;
  letter-spacing:-.035em!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro p {
  font:500 15px/1.83 Nunito,"Nunito Sans",Arial,sans-serif!important;
  color:#30556a!important;
  margin:0 auto 13px!important;
  max-width:850px;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro .hc-roofregions__lead {
  font-size:16px!important;
  line-height:1.8!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions strong {
  font-weight:830!important;
  color:#153d55!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__grid {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:clamp(36px,5vw,77px)!important;
  row-gap:clamp(34px,4.3vw,59px)!important;
  align-items:start!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region {
  position:relative;
  min-width:0;
  padding:22px 0 0;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region::before {
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,
    rgba(24,101,144,.07) 0%,rgba(24,101,144,.45) 20%,
    rgba(24,101,144,.64) 50%,rgba(24,101,144,.45) 80%,
    rgba(24,101,144,.07) 100%);
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region h3 {
  font:820 clamp(21px,1.9vw,26px)/1.27 Nunito,"Nunito Sans",Arial,sans-serif!important;
  letter-spacing:-.024em!important;
  color:#163d55!important;
  margin:0 0 14px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region p {
  font:500 14.3px/1.81 Nunito,"Nunito Sans",Arial,sans-serif!important;
  color:#31566a!important;
  margin:0 0 13px!important;
  text-wrap:pretty;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom {
  text-align:center;
  max-width:850px;
  margin:clamp(45px,6vw,79px) auto 0;
  padding-top:clamp(32px,4vw,50px);
  border-top:1px solid rgba(25,102,144,.25);
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom h3 {
  font:830 clamp(23px,2.5vw,34px)/1.22 Nunito,"Nunito Sans",Arial,sans-serif!important;
  letter-spacing:-.026em!important;
  color:#153d55!important;
  margin:0 auto 16px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom p {
  font:500 14.5px/1.8 Nunito,"Nunito Sans",Arial,sans-serif!important;
  color:#31566a!important;
  margin:0 auto!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__actions {
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:13px 24px;
  margin:26px 0 13px;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__actions a {
  font:800 13px/1.4 Nunito,"Nunito Sans",Arial,sans-serif!important;
  text-decoration:none!important;
  transition:background-color .2s,color .2s;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__primary {
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 20px;
  min-height:46px;
  border-radius:4px;
  background:#367c5c!important;
  border:1px solid #367c5c!important;
  color:#fff!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__primary:hover {background:#276649!important;}
html body.hc-cleaning-gradient-shift .hc-roofregions__secondary {
  padding:11px 2px;
  color:#145d84!important;
  border-bottom:1px solid rgba(20,93,132,.5);
}
html body.hc-cleaning-gradient-shift .hc-roofregions__actions a:focus-visible {
  outline:2px solid #166e96!important;outline-offset:3px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom .hc-roofregions__service-note {
  font-size:12px!important;
  margin-top:13px!important;
  opacity:.91;
}
@media(max-width:770px){
  html body.hc-cleaning-gradient-shift .hc-roofregions {
    padding:57px 23px 64px!important;
  }
  html body.hc-cleaning-gradient-shift .hc-roofregions__grid {
    grid-template-columns:1fr!important;
    row-gap:29px!important;
  }
  html body.hc-cleaning-gradient-shift .hc-roofregions__intro {
    margin-bottom:34px!important;
  }
  html body.hc-cleaning-gradient-shift .hc-roofregions__intro h2 {
    font-size:30px!important;
  }
}
@media(max-width:500px){
 html body.hc-cleaning-gradient-shift .hc-roofregions{
    padding:47px 19px 60px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__intro p,
 html body.hc-cleaning-gradient-shift .hc-roofregions__region p {
    font-size:13.6px!important;line-height:1.76!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__intro .hc-roofregions__lead {
    font-size:14.3px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__region h3 {
    font-size:22px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__actions {
    flex-direction:column;
    align-items:stretch;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__secondary {
    text-align:center;
 }
}


/* v4: Compact, premium regional layout with a continuous light > deep > light
   blue gradient and soft feathering. No boxes or map. */
html body.hc-cleaning-gradient-shift .hc-roofregions {
  isolation:isolate!important;
  overflow:hidden!important;
  padding:clamp(48px,5vw,72px) 22px clamp(50px,5vw,70px)!important;
  background:linear-gradient(180deg,
    rgba(228,240,247,0) 0%,
    rgba(180,208,223,.48) 3%,
    #d5e8f1 7%,
    #e9f3f8 11%,
    #d7e8f1 15%,
    #9ebed0 22%,
    #567f96 29%,
    #335b72 36%,
    #274e65 47%,
    #274e65 58%,
    #3b657d 68%,
    #84a9bb 80%,
    #c2d9e4 90%,
    #eaf3f8 100%)!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions::before {
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-24px 0 auto 0!important;
  height:170px!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,
    rgba(239,247,251,.36),
    rgba(240,248,251,.17) 43%,
    rgba(240,248,251,0) 100%)!important;
  filter:blur(22px)!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions::after {
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:auto 0 -20px 0!important;
  height:165px!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,transparent 0%,
    rgba(232,244,250,.13) 46%,rgba(244,250,253,.39) 100%)!important;
  filter:blur(23px)!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__inner {
  position:relative!important;
  z-index:1!important;
  width:min(980px,100%)!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro {
  max-width:820px!important;
  margin:0 auto clamp(28px,3vw,44px)!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro h2 {
  max-width:760px!important;
  font-size:clamp(24px,2.4vw,34px)!important;
  line-height:1.17!important;
  margin:0 auto 18px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro p {
  font-size:14px!important;
  line-height:1.72!important;
  margin:0 auto 10px!important;
  max-width:760px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__intro .hc-roofregions__lead {
  font-size:14.8px!important;
  line-height:1.75!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__grid {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:clamp(28px,4vw,52px)!important;
  row-gap:clamp(24px,3vw,40px)!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region {
  padding:17px 0 0!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region::before {
  height:2px!important;
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,
    rgba(255,255,255,.43) 20%,rgba(255,255,255,.83) 50%,
    rgba(255,255,255,.43) 80%,rgba(255,255,255,0) 100%)!important;
  filter:blur(.5px);
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region h3 {
  font-size:clamp(18px,1.6vw,23px)!important;
  line-height:1.26!important;
  margin:0 0 12px!important;
  color:#f5fbff!important;
  text-shadow:0 1px 2px rgba(19,53,75,.18);
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region p {
  font-size:13.5px!important;
  line-height:1.74!important;
  margin:0 0 11px!important;
  color:#eff8fd!important;
  text-shadow:0 1px 2px rgba(19,53,75,.16);
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region strong {
  color:#fff!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom {
  max-width:760px!important;
  margin:clamp(34px,4vw,56px) auto 0!important;
  padding-top:clamp(22px,3vw,34px)!important;
  border-top:1px solid rgba(255,255,255,.4)!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom h3 {
  font-size:clamp(20px,2vw,28px)!important;
  margin:0 auto 14px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom p {
  font-size:13.8px!important;
  line-height:1.72!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__actions {
  gap:12px 22px!important;
  margin:22px 0 12px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__actions a {
  font-size:12.5px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__primary {
  min-height:42px!important;
  padding:11px 18px!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom .hc-roofregions__service-note {
  font-size:11.5px!important;
  margin-top:12px!important;
}
@media(max-width:770px) {
 html body.hc-cleaning-gradient-shift .hc-roofregions {
   padding:42px 18px 52px!important;
   /* Heading stays on a pale field; first regional text is on dark blue. */
   background:linear-gradient(180deg,
     rgba(228,240,247,0) 0%,
     rgba(185,212,226,.55) 3%,
     #d9eaf2 7%,
     #d4e6ef 12%,
     #6b93a9 18%,
     #315b73 24%,
     #274e65 34%,
     #274e65 69%,
     #3c667e 76%,
     #8db0c1 85%,
     #c6dce6 93%,
     #eaf3f8 100%)!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__grid {
   grid-template-columns:1fr!important;
   row-gap:24px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__intro {
   margin-bottom:28px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__intro h2 {
   font-size:28px!important;
 }
}
@media(max-width:500px) {
 html body.hc-cleaning-gradient-shift .hc-roofregions {
   padding:38px 16px 46px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__intro p,
 html body.hc-cleaning-gradient-shift .hc-roofregions__region p {
   font-size:13px!important;
   line-height:1.68!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__intro .hc-roofregions__lead {
   font-size:13.7px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__region h3 {
   font-size:20px!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__actions {
   flex-direction:column!important;
   align-items:stretch!important;
 }
 html body.hc-cleaning-gradient-shift .hc-roofregions__secondary {
   text-align:center!important;
 }
}

/* v6: Fix the visible rectangular region caused by html{zoom:.9}.
   Under the global zoom a 100vw region paints only 90% of the real
   viewport, leaving dark rails on the left and right.
   The section must use the unzoomed viewport width, centered in the
   same visual coordinate system. Tested at 1779px and 500px widths. */
html body.hc-cleaning-gradient-shift .hc-roofregions {
  width:calc(100vw / 0.9)!important;
  max-width:none!important;
  position:relative!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
/* Keep all paragraphs aligned and the regional gradient fading all
   the way across the screen, never inside a floating gradient panel. */
html body.hc-cleaning-gradient-shift .hc-roofregions::before,
html body.hc-cleaning-gradient-shift .hc-roofregions::after {
  left:0!important;
  right:0!important;
  width:100%!important;
}

/* Der Regionalbereich hat KEINE eigene Farbverlauf-Flaeche.
   Er laesst die einzige Hintergrundebene aus dem Hauptinhalt durch. */
html body.hc-cleaning-gradient-shift .hc-roofregions {
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
  filter:none!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions::before,
html body.hc-cleaning-gradient-shift .hc-roofregions::after {
  display:none!important;
  content:none!important;
  background:none!important;
  filter:none!important;
}
/* Regionseinleitung steht auf dunklem Blau. */
html body.hc-cleaning-gradient-shift .hc-roofregions__intro h2,
html body.hc-cleaning-gradient-shift .hc-roofregions__intro p,
html body.hc-cleaning-gradient-shift .hc-roofregions__intro strong {
  color:#f4faff!important;
  text-shadow:0 1px 2px rgba(8,41,62,.18);
}
/* Erster regionaler Block auf dunklem Blau, dritte und vierte
   Region auf der allmaehlich heller werdenden Flaeche. */
html body.hc-cleaning-gradient-shift .hc-roofregions__region:nth-child(n+3) h3 {
  color:#163f57!important;
  text-shadow:none!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region:nth-child(n+3) p,
html body.hc-cleaning-gradient-shift .hc-roofregions__region:nth-child(n+3) strong {
  color:#234b62!important;
  text-shadow:none!important;
}
html body.hc-cleaning-gradient-shift .hc-roofregions__region:nth-child(n+3)::before {
  background:linear-gradient(90deg,
    rgba(24,96,135,0) 0%,
    rgba(24,96,135,.32) 20%,
    rgba(24,96,135,.52) 50%,
    rgba(24,96,135,.32) 80%,
    rgba(24,96,135,0) 100%)!important;
}
/* Die CTA folgt im ganz hellen Ende des EINEN Verlaufs. */
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom h3,
html body.hc-cleaning-gradient-shift .hc-roofregions__bottom p {
  color:#173f55!important;
  text-shadow:none!important;
}


/* Filigrane Linien fuer die Vorteilsgruppen der drei Leistungsseiten.
   Ein einziger 1px-Strich oben und unten; kein Glow, kein Blur. */
html body.hc-subpages-homefade .hc-cleaning-process .hc-cleaning-benefits {
  position:relative!important;
  max-width:860px!important;
  margin:clamp(23px,2.7vw,32px) auto 0!important;
  padding:clamp(18px,2vw,23px) 10px!important;
  border:0!important;
  border-top:0!important;
  border-bottom:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
html body.hc-subpages-homefade .hc-cleaning-process .hc-cleaning-benefits::before,
html body.hc-subpages-homefade .hc-cleaning-process .hc-cleaning-benefits::after {
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:2px!important;
  z-index:2!important;
  pointer-events:none!important;
  border:0!important;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(28,108,151,.12) 14%,
    rgba(28,108,151,.42) 37%,
    rgba(28,108,151,.57) 50%,
    rgba(28,108,151,.42) 63%,
    rgba(28,108,151,.12) 86%,
    transparent 100%)!important;
  background-size:100% 2px!important;
  background-repeat:no-repeat!important;
  opacity:1!important;
  filter:none!important;
  box-shadow:none!important;
  transform:none!important;
}
html body.hc-subpages-homefade .hc-cleaning-process .hc-cleaning-benefits::before {
  top:0!important;
}
html body.hc-subpages-homefade .hc-cleaning-process .hc-cleaning-benefits::after {
  bottom:0!important;
}
@media(max-width:650px) {
  html body.hc-subpages-homefade .hc-cleaning-process .hc-cleaning-benefits {
    padding:19px 6px!important;
    margin-top:24px!important;
  }
}


/* DB Richter original footer style on Dachreinigung-Kosten.
   Source: the locally preserved, pre-redesign DB Richter footer markup,
   compared against the live db-richter.de footer.
   No new visual language: original midnight blue, green headings,
   simple white links, modest typography, original logos and social links.
*/
html body #footer.dbr-premium-footer-root,
html body footer#footer.dbr-premium-footer-root {
  display:block!important;
  background-color:#071d2b!important;
  background-image:none!important;
  color:#fff!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  width:100%!important;
  max-width:none!important;
  font-family:Nunito,Arial,Helvetica,sans-serif!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-wrap {
  width:min(1000px,calc(100% - 40px))!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:46px 0 24px!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-grid {
  display:grid!important;
  grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr) minmax(0,1.03fr) minmax(0,1.2fr)!important;
  gap:36px!important;
  align-items:start!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-grid > * {
  min-width:0!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-brand img {
  display:block!important;
  width:170px!important;
  height:auto!important;
  max-width:100%!important;
  object-fit:contain!important;
  margin:0 0 16px!important;
  border:0!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-brand p {
  color:rgba(255,255,255,.7)!important;
  font:400 13px/1.55 Nunito,Arial,Helvetica,sans-serif!important;
  margin:18px 0 6px!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-brand-note{
  display:inline!important;
  color:rgba(255,255,255,.7)!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-col {
  min-width:0!important;
  padding:0!important;
  margin:0!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-col .dbr-ft-title{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  color:#8ec85a!important;
  font:800 12px/1.5 Nunito,Arial,Helvetica,sans-serif!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  margin:0 0 18px!important;
  padding:0!important;
  text-shadow:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-col>a,
html body footer#footer.dbr-premium-footer-root .dbr-ft-contact-link{
  display:block!important;
  width:auto!important;
  text-decoration:none!important;
  color:#fff!important;
  font:400 13px/1.5 Nunito,Arial,Helvetica,sans-serif!important;
  margin:0 0 8px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  min-height:auto!important;
  text-align:left!important;
  transform:none!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-col>a:hover,
html body footer#footer.dbr-premium-footer-root .dbr-ft-contact-link:hover{
  color:#8ec85a!important;
  background:transparent!important;
  transform:none!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-contact {
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  flex-wrap:nowrap!important;
  grid-column:auto!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-contact .dbr-ft-contact-name {
  color:#fff!important;
  display:block!important;
  font:700 13px/1.55 Nunito,Arial,Helvetica,sans-serif!important;
  margin:0 0 8px!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-contact .dbr-ft-address {
  display:block!important;
  color:#fff!important;
  font:400 13px/1.5 Nunito,Arial,Helvetica,sans-serif!important;
  margin:0 0 8px!important;
  white-space:normal!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-footer-socials {
  display:flex!important;
  flex-direction:row!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:12px!important;
  margin-top:18px!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-footer-socials a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:none!important;
  width:34px!important;height:34px!important;
  padding:0!important;
  border:0!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-footer-socials img,
html body footer#footer.dbr-premium-footer-root .dbr-footer-socials svg{
  display:block!important;
  width:20px!important;height:20px!important;
  object-fit:contain!important;
  filter:none!important;
  -webkit-filter:none!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-bottom {
  display:flex!important;
  justify-content:space-between!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:20px!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  margin:30px 0 0!important;
  padding:17px 0 0!important;
  color:rgba(255,255,255,.55)!important;
  background:transparent!important;
  font:400 12px/1.5 Nunito,Arial,Helvetica,sans-serif!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-bottom::before {
  content:none!important;display:none!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-bottom a{
  color:rgba(255,255,255,.8)!important;
  text-decoration:none!important;
  font:400 12px/1.5 Nunito,Arial,Helvetica,sans-serif!important;
}
html body footer#footer.dbr-premium-footer-root .dbr-ft-bottom a:hover{
  color:#fff!important;
}
html body footer#footer.dbr-premium-footer-root a:focus-visible{
  outline:2px solid #8ec85a!important;
  outline-offset:3px!important;
}
@media(max-width:800px) {
 html body footer#footer.dbr-premium-footer-root .dbr-ft-grid{
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
   gap:29px 24px!important;
 }
 html body footer#footer.dbr-premium-footer-root .dbr-ft-brand {
   grid-column:1 / -1!important;
 }
 html body footer#footer.dbr-premium-footer-root .dbr-ft-contact{
   grid-column:1 / -1!important;
 }
}
@media(max-width:560px) {
 html body footer#footer.dbr-premium-footer-root .dbr-ft-wrap{
   width:calc(100% - 40px)!important;
   padding:42px 0 24px!important;
 }
 html body footer#footer.dbr-premium-footer-root .dbr-ft-grid{
   grid-template-columns:1fr!important;
   gap:27px!important;
 }
 html body footer#footer.dbr-premium-footer-root .dbr-ft-brand,
 html body footer#footer.dbr-premium-footer-root .dbr-ft-contact{
   grid-column:auto!important;
 }
 html body footer#footer.dbr-premium-footer-root .dbr-ft-bottom{
   flex-direction:column!important;align-items:flex-start!important;
 }
 html body footer#footer.dbr-premium-footer-root .dbr-footer-socials{
   justify-content:flex-start!important;
 }
}


/* Dachreinigung-Kosten | unified top blue + seamless hero, 2026-10-30
   The white navigation and lower editorial gradients remain unchanged. */
:root { --hc-unified-top-blue:#a6c6d6; }

/* Home: do not change the calculator, its inputs or its price calculation. */
html body:not(.hc-subpages-refined) main#wp--skip-link--target {
  background-color:var(--hc-unified-top-blue)!important;
}
/* All six editorial subpages: eliminate the solid white band above the
   dynamically positioned dark-blue editorial gradient. */
html body.hc-subpages-refined main#wp--skip-link--target {
  background-color:var(--hc-unified-top-blue)!important;
  background-image:none!important;
}
html body.hc-subpages-refined main .entry-content {
  background-color:transparent!important;
}

/* Hero photograph fades into precisely the same blue as the page beneath it. */
html body .dbrh-hero {
  background-color:var(--hc-unified-top-blue)!important;
}
html body .dbrh-hero .dbrh-hero__overlay {
  background:
    linear-gradient(to top,
      #a6c6d6 0%,
      rgba(166,198,214,.95) 8%,
      rgba(166,198,214,.66) 23%,
      rgba(166,198,214,.10) 57%,
      rgba(166,198,214,0) 80%),
    linear-gradient(90deg,
      rgba(181,210,224,.94) 0%,
      rgba(185,214,228,.86) 32%,
      rgba(193,216,229,.65) 56%,
      rgba(183,211,225,.20) 90%,
      rgba(183,211,225,.05) 100%)!important;
}
html body .dbrh-hero::after {
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;right:0!important;
  bottom:-1px!important;
  top:auto!important;
  height:110px!important;
  background:linear-gradient(180deg,rgba(166,198,214,0) 0%,rgba(166,198,214,.45) 40%,#a6c6d6 100%)!important;
  filter:none!important;
  z-index:1!important;
  opacity:1!important;
  pointer-events:none!important;
}
/* Preserve body/header separation as on the original homepage. */
html body header.dbr-final-header {
  background:#fff!important;
}

/* Continuity with the already existing CSS-variable controlled lower fades.
   Only the first two stops change; remaining article/FAQ stop positions stay
   exactly where the existing JS places them. */
html body.hc-subpages-homefade.hc-cleaning-gradient-shift main#wp--skip-link--target::before {
 background:linear-gradient(180deg,
    #a6c6d6 0px,
    #bfd6e2 var(--hc-one-pale,240px),
    #d5e8f2 var(--hc-one-divider,570px),
    #a9c8d8 var(--hc-one-heading,680px),
    #4c7690 var(--hc-one-article,870px),
    #234e68 var(--hc-one-dark-approach,1120px),
    #153f59 var(--hc-one-dark,1900px),
    #28566f var(--hc-one-region-first,2200px),
    #aac7d7 var(--hc-one-region-third,2550px),
    #d3e6ef var(--hc-one-region-bottom,3020px),
    #e7f2f8 var(--hc-one-faq,3370px),
    #f3f9fc 100%)!important;
}
html body.hc-informative-unified main#wp--skip-link--target::before {
 background:linear-gradient(180deg,
  #a6c6d6 0px,
  #bfd6e2 var(--hc-info-pale,170px),
  #d4e8f2 var(--hc-info-first,310px),
  #80a5b9 var(--hc-info-body,500px),
  #315c74 var(--hc-info-mid,770px),
  #153f59 var(--hc-info-dark,980px),
  #2d5972 var(--hc-info-region,1100px),
  #85a9ba var(--hc-info-region-next,1450px),
  #c4dbe7 var(--hc-info-region-end,1810px),
  #edf6fa var(--hc-info-faq,2140px),
  #f3f9fc 100%)!important;
}
@media(max-width:750px){
 html body .dbrh-hero .dbrh-hero__overlay {
  background:
    linear-gradient(to top,#a6c6d6 0%,rgba(166,198,214,.88) 10%,rgba(166,198,214,.47) 33%,rgba(166,198,214,.04) 74%),
    linear-gradient(90deg,rgba(189,215,228,.96) 0%,rgba(190,216,229,.88) 57%,rgba(185,213,227,.65) 100%)!important;
 }
 html body .dbrh-hero::after {height:75px!important;}
}
/* Avoid motion in the fade; this is a static pixel-perfect background. */

/* Higher-specificity legacy correction on roof-service subpages:
   their old 'background:#fff!important' otherwise overrides the unified blue. */
html body.hc-subpages-homefade.hc-cleaning-gradient-shift main#wp--skip-link--target {
  background-color:#a6c6d6!important;
  background-image:none!important;
}

/* Calculator gradient: the roof shape in step 5 defines the top colour.
   Keep it uniform from the beginning through step 5, then retain the
   established gradient and its contact/footer progression. */
html body section.dbrpf.hc-ref-calculator {
  background-color:#a6c6d6!important;
  background-image:linear-gradient(180deg,
    #a6c6d6 0%, #a6c6d6 9%, #a6c6d6 18%,
    #a6c6d6 29%, #a6c6d6 40%,
    #94b9ca 51%, #75a2b7 61%, #5b8ba4 70%,
    #46768f 78%, #477890 84%, #6597ac 91%,
    #8db7c8 96%, #b1cddb 100%)!important;
}
@media(max-width:750px){
 html body section.dbrpf.hc-ref-calculator {
  background-image:linear-gradient(180deg,
    #a6c6d6 0%, #a6c6d6 12%, #a6c6d6 25%,
    #a6c6d6 40%, #a3c4d3 53%, #83adbf 64%,
    #6496ad 75%, #4d819b 85%,
    #7baabd 94%, #b1cddb 100%)!important;
 }
}

/* The two legal documents do not have a photo hero. Keep their readable
   white document cards while matching the site-wide colour behind them. */
html body.hc-legal-blue {
  background:linear-gradient(180deg,#a6c6d6 0%,#a6c6d6 42%,#d1e3ed 83%,#fff 100%)!important;
}
html body.hc-legal-blue > header {background:#fff!important;}

/* About page uses a bespoke editorial/portrait hero rather than .dbrh-hero.
   Restore colour continuity without hiding its actual image or copy. */
html body.hc-about-storypage .hc-about-hero {
  background:#a6c6d6!important;
  background-image:none!important;
}
html body.hc-about-storypage .hc-about-hero__background {
  background:
    linear-gradient(90deg,rgba(166,198,214,.97) 0%,rgba(166,198,214,.77) 35%,rgba(166,198,214,.18) 100%),
    linear-gradient(0deg,#a6c6d6 0%,rgba(166,198,214,.05) 60%,#a6c6d6 100%),
    url("/wp-content/uploads/2026/08/kostenheader.jpeg") center/cover no-repeat!important;
}
html body.hc-about-storypage .hc-about-hero__portrait::after {
  background:
    linear-gradient(to top,#a6c6d6 0%,rgba(166,198,214,.06) 44%,transparent 62%),
    linear-gradient(90deg,#a6c6d6 0%,rgba(166,198,214,.04) 38%,transparent 55%)!important;
}
html body.hc-about-storypage .hc-about-story,
html body.hc-about-storypage .hc-about-story__navwrap,
html body.hc-about-storypage .hc-about-chapter--opening {
  background:#a6c6d6!important;
  background-image:none!important;
}
html body.hc-about-storypage .hc-about-chapter--person {
  background:linear-gradient(180deg,#a6c6d6 0%,#c6dee9 35%,#f1f8fb 100%)!important;
}


/* H&C / Dachreinigung-Kosten v34 2026-10-30
   Unterseiten: white through section 1, gentle fade through first half of 2.
   Original blue/dark continuation and calculation remain unaffected. */
html body.hc-subpages-refined {
  --hc-fade-first-white:#ffffff;
  --hc-fade-target-blue:#a6c6d6;
}
html body.hc-subpages-refined main#wp--skip-link--target {
  position:relative!important;
  isolation:isolate!important;
  background-color:var(--hc-fade-target-blue)!important;
}
html body.hc-subpages-refined main#wp--skip-link--target::after {
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:0!important;
  top:0!important;left:0!important;right:0!important;bottom:auto!important;
  height:var(--hc-white-fade-end,1550px)!important;
  max-height:none!important;
  pointer-events:none!important;
  opacity:1!important;
  background:linear-gradient(180deg,
    #fff 0%,#fff 45%,rgba(255,255,255,.98) 53%,
    rgba(255,255,255,.88) 65%,rgba(255,255,255,.55) 81%,
    rgba(255,255,255,.22) 93%,rgba(255,255,255,0) 100%)!important;
}
html body.hc-subpages-refined main#wp--skip-link--target .entry-content {
  position:relative!important;z-index:1!important;
}
html body.hc-subpages-refined .dbrh-hero {
  background:#fff!important;
}
html body.hc-subpages-refined .dbrh-hero .dbrh-hero__overlay {
  background:
    linear-gradient(0deg,#fff 0%,rgba(255,255,255,.98) 9%,
      rgba(255,255,255,.82) 25%,rgba(255,255,255,.25) 56%,rgba(255,255,255,.06) 100%),
    linear-gradient(90deg,rgba(255,255,255,.99) 0%,
      rgba(255,255,255,.93) 25%,rgba(255,255,255,.68) 54%,rgba(255,255,255,.07) 100%)!important;
}
html body.hc-subpages-refined .dbrh-hero::after {
  background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.55) 44%,#fff 100%)!important;
  filter:none!important;
}
html body.hc-about-storypage .hc-about-hero {
  background:#fff!important;background-image:none!important;
}
html body.hc-about-storypage .hc-about-hero__background {
  background:
    linear-gradient(90deg,#fff 0%,rgba(255,255,255,.91) 27%,rgba(255,255,255,.27) 100%),
    linear-gradient(0deg,#fff 0%,rgba(255,255,255,.08) 55%,#fff 100%),
    url("/wp-content/uploads/2026/08/kostenheader.jpeg") center/cover no-repeat!important;
}
html body.hc-about-storypage .hc-about-hero__portrait::after {
  background:linear-gradient(0deg,#fff 0%,rgba(255,255,255,.18) 27%,transparent 50%),
    linear-gradient(90deg,#fff 0%,rgba(255,255,255,.05) 23%,transparent 57%)!important;
}
html body.hc-about-storypage .hc-about-story,
html body.hc-about-storypage .hc-about-story__navwrap,
html body.hc-about-storypage .hc-about-chapter--opening {
  background:transparent!important;background-image:none!important;
}
html body.hc-about-storypage .hc-about-chapter--person {
  background:transparent!important;background-image:none!important;
}
/* Legal pages preserve their white reading cards and get the same white top. */
html body.hc-legal-blue {
  background:linear-gradient(180deg,#fff 0%,#fff 16%,#f5fafc 27%,#d4e7f0 51%,#a6c6d6 70%,#f0f7fb 100%)!important;
}
/* On all pages the navigation is an unbroken white surface. */
html body header.dbr-final-header {background:#fff!important;}
/* The original legal-page inline CSS defines generic nav selectors; isolate
   the shared header from those generic overrides. */
html body.hc-legal-blue header.dbr-final-header {
  position:sticky!important;top:0!important;z-index:9999!important;
  height:91px!important;min-height:91px!important;
  background:#fff!important;box-shadow:0 1px 0 rgba(15,37,48,.09)!important;
}
html body.hc-legal-blue .dbr-final-header-inner {
  height:90px!important;min-height:90px!important;
}
html body.hc-legal-blue .dbr-final-header nav.dbr-final-nav {
  min-height:0!important;flex-wrap:nowrap!important;
}
html body.hc-legal-blue .dbr-clone-mobile-menu {min-height:0!important;}
html body.hc-legal-blue .dbr-final-logo img {height:72px!important;max-height:72px!important;object-fit:contain!important;}
@media(max-width:820px) {
  html body.hc-legal-blue header.dbr-final-header {
    height:76px!important;min-height:76px!important;
  }
  html body.hc-legal-blue .dbr-final-header-inner {
    height:76px!important;min-height:76px!important;
  }
  html body.hc-legal-blue .dbr-final-logo img {height:65px!important;max-height:65px!important;}
  html body.hc-legal-blue .dbr-clone-menu-toggle {display:block!important;}
  html body.hc-legal-blue .dbr-clone-mobile-menu.is-open {display:flex!important;}
}

