/* Final contact form state controls & partner-system match – 16 Oct 2026.
   Scoped to Steinreinigung Richter and already approved dark form. */

/* No green outer boxes when selecting/tapping individual services. */
html body #kontakt.richter-form-unified .sp-addon:has(input:checked),
html body #kontakt.richter-form-unified .sp-req-choice:has(input:checked),
html body #kontakt.richter-form-unified .sp-form-category:focus-within,
html body #kontakt.richter-form-unified .sp-addon:focus-within,
html body #kontakt.richter-form-unified .sp-req-choice:focus-within{
 outline:none!important;outline-offset:0!important;
 filter:none!important;
}
html body #kontakt.richter-form-unified .sp-addon:has(input:checked){
 box-shadow:inset 0 0 12px #ffffff0a!important;
}
html body #kontakt.richter-form-unified .sp-addon-gold:has(input:checked){
 box-shadow:inset 0 0 19px #ffad143c,0 0 9px #af77165c!important;
}
html body #kontakt.richter-form-unified .sp-addon-blue:has(input:checked){
 box-shadow:inset 0 0 17px #009afb48,0 0 7px #048ff846!important;
}

/* A consistent checkbox: only the tick turns green when selected. */
html body #kontakt.richter-form-unified #contactForm input[type=checkbox]{
 -webkit-appearance:none!important;appearance:none!important;
 box-sizing:border-box!important;display:inline-grid!important;
 place-content:center!important;
 width:18px!important;height:18px!important;min-width:18px!important;
 flex:0 0 18px!important;margin:0!important;padding:0!important;
 border:1px solid #aeb7bd!important;border-radius:4px!important;
 background:#f5f6f7!important;
 box-shadow:none!important;outline:none!important;
 color:#198b08!important;cursor:pointer!important;
 vertical-align:middle!important;
}
html body #kontakt.richter-form-unified #contactForm input[type=checkbox]:checked{
 background:#f5f6f7!important;
 border-color:#aeb7bd!important;box-shadow:none!important;
}
html body #kontakt.richter-form-unified #contactForm input[type=checkbox]:checked::after{
 content:"✓"!important;
 color:#168b0c!important;
 font:900 17px/1 Arial,sans-serif!important;
 display:block!important;transform:translateY(-1px)!important;
}
html body #kontakt.richter-form-unified #contactForm input[type=checkbox]:focus{
 box-shadow:none!important;outline:none!important;
}
html body #kontakt.richter-form-unified #contactForm input[type=checkbox]:focus-visible{
 outline:2px solid #c9d5da!important;outline-offset:2px!important;
}

/* Typed, pasted, auto-completed and browser-autofilled entries stay identical. */
html body #kontakt.richter-form-unified #contactForm input:is([type=text],[type=email],[type=tel]),
html body #kontakt.richter-form-unified #contactForm input:is([type=text],[type=email],[type=tel]):is(:focus,:active,:hover,:valid){
 background:#19191a!important;color:#ffffff!important;
 border-color:#454545!important;box-shadow:none!important;
 -webkit-text-fill-color:#ffffff!important;
 caret-color:#ffffff!important;
 outline:none!important;color-scheme:dark!important;
}
html body #kontakt.richter-form-unified #contactForm input:is([type=text],[type=email],[type=tel]):-webkit-autofill,
html body #kontakt.richter-form-unified #contactForm input:is([type=text],[type=email],[type=tel]):-webkit-autofill:is(:hover,:focus,:active),
html body #kontakt.richter-form-unified #contactForm input:is([type=text],[type=email],[type=tel]):autofill{
 -webkit-box-shadow:0 0 0 1000px #19191a inset!important;
 box-shadow:0 0 0 1000px #19191a inset!important;
 background-color:#19191a!important;
 -webkit-text-fill-color:#fff!important;
 color:#fff!important;caret-color:#fff!important;
 border-color:#454545!important;
 transition:background-color 999999s ease-out 0s!important;
}
html body #kontakt.richter-form-unified #contactForm input::selection{
 background:#475c6a!important;color:#fff!important;
}
html body #kontakt.richter-form-unified .dbr-form-sales-title{
 -webkit-text-fill-color:#fff!important;color:#fff!important;
}

/* Match the restrained DB-Richter products & systems grid with existing
   Steinreinigung Richter firms/logos/links. No logos changed. */
html body #stein-profis-home #systeme.systems{
 background:#fff!important;
 padding:48px 20px 55px!important;
 text-align:center!important;
}
html body #stein-profis-home #systeme>.wrap{
 display:block!important;
 width:min(1100px,100%)!important;
 max-width:1100px!important;
 margin:0 auto!important;padding:0!important;
 background:transparent!important;
 border:0!important;border-radius:0!important;
 box-shadow:none!important;
}
html body #stein-profis-home #systeme h2{
 font-size:clamp(27px,3vw,34px)!important;
 line-height:1.18!important;
 margin:0 auto 10px!important;
 font-weight:900!important;
 color:#0c2a3d!important;
 text-align:center!important;
}
html body #stein-profis-home #systeme>.wrap>p{
 max-width:760px!important;
 margin:0 auto 28px!important;
 color:#4e6471!important;font-size:14px!important;
 line-height:1.7!important;text-align:center!important;
}
html body #stein-profis-home #systeme .rh-partner-grid{
 width:100%!important;
 max-width:1100px!important;
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 margin:0 auto!important;
 gap:14px!important;
 align-items:stretch!important;
 justify-items:stretch!important;
}
html body #stein-profis-home #systeme .rh-partner-grid>.rh-partner-card{
 width:100%!important;box-sizing:border-box!important;
 height:96px!important;min-height:96px!important;
 padding:14px 17px!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 background:#fff!important;
 border:1px solid #e6e9e9!important;
 border-radius:9px!important;
 box-shadow:0 2px 8px #09202b0c!important;
 transition:box-shadow .2s,transform .2s!important;
}
html body #stein-profis-home #systeme .rh-partner-grid>.rh-partner-card:is(:hover,:focus-visible){
 transform:translateY(-2px)!important;
 box-shadow:0 7px 19px #09202b1f!important;
}
html body #stein-profis-home #systeme .rh-partner-card img{
 display:block!important;width:auto!important;height:auto!important;
 max-width:100%!important;max-height:68px!important;
 object-fit:contain!important;
}
html body #stein-profis-home #systeme .richter-fila-card .richter-fila-label strong{
 font-size:29px!important;
}
html body #stein-profis-home #systeme .richter-fila-card .richter-fila-label small{
 font-size:9px!important;
}
@media(max-width:760px){
 html body #stein-profis-home #systeme.systems{padding:38px 16px 44px!important}
 html body #stein-profis-home #systeme .rh-partner-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important;
 }
 html body #stein-profis-home #systeme .rh-partner-grid>.rh-partner-card{
  height:83px!important;min-height:83px!important;padding:12px!important;
 }
 html body #stein-profis-home #systeme .rh-partner-card img{max-height:58px!important}
}
