/* Steinreinigung Richter — original colored add-ons + measured DB-Richter scale.
   Isolated final override. Keep 8 services, original SVGs, terms, backend, and all uploads. */
html body #kontakt.richter-form-unified .wrap > div.dbr-contact-card{
 width:100%!important;max-width:731px!important;
 margin-inline:auto!important;
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
 border-radius:9px!important;overflow:hidden!important;
}
html body #kontakt.richter-form-unified .wrap > div.dbr-contact-card > div.dbr-contact-form-panel{
 width:100%!important;max-width:none!important;min-width:0!important;
 padding:20px 17px!important;gap:6px!important;
}
html body #kontakt.richter-form-unified .wrap > div.dbr-contact-card > div.nico-final-panel{
 width:100%!important;max-width:none!important;min-width:0!important;
 height:auto!important;min-height:100%!important;max-height:none!important;
}
html body #kontakt.richter-form-unified div.dbr-contact-form-panel h2.dbr-form-sales-title{
 color:#0785df!important;-webkit-text-fill-color:#0785df!important;
 font-size:25px!important;line-height:1.19!important;
 margin:0 0 12px!important;padding:0!important;
}
html body #kontakt.richter-form-unified #contactForm{
 gap:8px!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-new-service-options{
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 gap:5px!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons{
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 width:100%!important;max-width:100%!important;
 gap:7px!important;margin:2px 0 0!important;padding:0!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon:hover,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon:focus-within,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon:has(input:checked){
 display:flex!important;align-items:center!important;
 position:relative!important;box-sizing:border-box!important;
 width:100%!important;height:auto!important;min-height:67px!important;
 max-width:100%!important;min-width:0!important;
 padding:8px 10px!important;margin:0!important;
 gap:8px!important;border-radius:9px!important;
 box-shadow:none!important;filter:none!important;
 transform:none!important;opacity:1!important;
 font-size:12px!important;line-height:1.2!important;
 text-shadow:none!important;
 outline:none!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-gold,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-gold:hover,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-gold:has(input:checked){
 background:linear-gradient(120deg,#302315,#4c3519 48%,#241c16)!important;
 border:1px solid #aa7928!important;color:#fff0ce!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-blue,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-blue:hover,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-blue:has(input:checked){
 background:linear-gradient(120deg,#06253d,#0a4775 52%,#082d49)!important;
 border:1px solid #267bc1!important;color:#e7f7ff!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-gold:has(input:checked){
 border-color:#ffd279!important;box-shadow:inset 0 0 0 1px #ffd27955!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon-blue:has(input:checked){
 border-color:#71ceff!important;box-shadow:inset 0 0 0 1px #71ceff55!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon:focus-within{
 outline:2px solid #e1f2ff!important;outline-offset:2px!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-icon,
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-icon svg.sp-addon-symbol-svg{
 display:block!important;visibility:visible!important;opacity:1!important;
 flex:none!important;max-width:none!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-icon{
 width:28px!important;height:34px!important;
 flex:0 0 28px!important;background:none!important;
 padding:0!important;margin:0!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-icon svg.sp-addon-symbol-svg{
 width:27px!important;height:33px!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-body{
 display:flex!important;flex:1 1 auto!important;min-width:0!important;
 flex-direction:column!important;gap:3px!important;
 color:#fff!important;line-height:1.25!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-body strong{
 font:700 11px/1.25 Arial,sans-serif!important;
 color:#fff!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-body small{
 display:block!important;visibility:visible!important;opacity:1!important;
 font:400 10px/1.3 Arial,sans-serif!important;
 color:#e1e7ef!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon span.sp-addon-tag{
 display:none!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon>input[type=checkbox]{
 order:1!important;flex:0 0 20px!important;min-width:20px!important;
 width:20px!important;height:20px!important;min-height:20px!important;
 border:1px solid #bac4ce!important;border-radius:3px!important;
 background:#fff!important;appearance:none!important;-webkit-appearance:none!important;
 margin:0!important;padding:0!important;box-shadow:none!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon>input[type=checkbox]:checked{
 background:#2069d4!important;border-color:#2069d4!important;
 box-shadow:none!important;
}
html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon>input[type=checkbox]:checked::after{
 content:""!important;display:block!important;
 width:7px!important;height:12px!important;
 border:0!important;border-right:3px solid #fff!important;
 border-bottom:3px solid #fff!important;transform:translateY(-2px) rotate(45deg)!important;
}
html body #kontakt.richter-form-unified #contactForm .richter-warranty-disclosure{
 font-size:10.5px!important;line-height:1.3!important;
 margin:3px 0 0!important;
}
html body #kontakt.richter-form-unified #contactForm .richter-warranty-disclosure summary{
 padding:2px 0!important;line-height:1.25!important;
}
/* For small devices retain DB-Richter stacked portrait/form and usable 24px checkboxes. */
@media(max-width:760px){
 html body #kontakt.richter-form-unified .wrap > div.dbr-contact-card{
  max-width:none!important;grid-template-columns:minmax(0,1fr)!important;
 }
 html body #kontakt.richter-form-unified .wrap > div.dbr-contact-card > div.nico-final-panel{
  height:520px!important;min-height:520px!important;max-height:520px!important;
 }
 html body #kontakt.richter-form-unified .wrap > div.dbr-contact-card > div.dbr-contact-form-panel{
  padding:20px 20px 22px!important;
 }
 html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon{
  min-height:70px!important;
 }
 html body #kontakt.richter-form-unified #contactForm .sp-form-addons > label.sp-addon>input[type=checkbox]{
  flex-basis:24px!important;width:24px!important;height:24px!important;
  min-width:24px!important;min-height:24px!important;
 }
}

/* Match high-specificity legacy desktop site rule. */
html body main#stein-profis-home #kontakt.richter-form-unified .wrap > div.dbr-contact-card,
html body main:not([id]) #kontakt.richter-form-unified .wrap > div.dbr-contact-card{
 width:100%!important;max-width:731px!important;
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
@media(max-width:760px){
 html body main#stein-profis-home #kontakt.richter-form-unified .wrap > div.dbr-contact-card,
 html body main:not([id]) #kontakt.richter-form-unified .wrap > div.dbr-contact-card{
  width:100%!important;max-width:none!important;
  grid-template-columns:minmax(0,1fr)!important;
 }
}

/* Also override calculator and separately rendered service-main containers. */
html body main#stein-cost-page #kontakt.richter-form-unified .wrap > div.dbr-contact-card,
html body main#main-content #kontakt.richter-form-unified .wrap > div.dbr-contact-card{
 width:100%!important;max-width:731px!important;
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
@media(max-width:760px){
 html body main#stein-cost-page #kontakt.richter-form-unified .wrap > div.dbr-contact-card,
 html body main#main-content #kontakt.richter-form-unified .wrap > div.dbr-contact-card{
  max-width:none!important;grid-template-columns:minmax(0,1fr)!important;
 }
}

/* Cost-calculator markup uses a separate main wrapper; ensure identical card width. */
html body section#kontakt#kontakt.richter-form-unified div.wrap > div.dbr-contact-card{
 width:100%!important;max-width:731px!important;
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
@media(max-width:760px){
 html body section#kontakt#kontakt.richter-form-unified div.wrap > div.dbr-contact-card{
  max-width:none!important;grid-template-columns:minmax(0,1fr)!important;
 }
}
