/* Rick Solutions – gemeinsame Optik-Verfeinerung (alle öffentlichen Seiten).
   Rein ergänzend: keine Texte, keine Funktionen, keine Markenfarben geändert. */

:root{--rs-ease:cubic-bezier(.23,1,.32,1);--rs-focus:#006fcd}

/* Typografie: ruhigere Zeilenumbrüche, tabellarische Ziffern bei Preisen */
h1,h2,h3{text-wrap:balance}
p,li,blockquote{text-wrap:pretty}
.price,td.p,.price-table td,[class*="price"]{font-variant-numeric:tabular-nums}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{text-rendering:optimizeLegibility}

/* Browser-Oberflächen in Markenfarbe */
::selection{background:rgba(0,111,205,.35);color:inherit}
html{scrollbar-color:rgba(134,134,139,.55) transparent;scrollbar-width:thin}
input,textarea,select{caret-color:#006fcd;accent-color:#006fcd}

/* Sichtbarer Tastaturfokus – Doppelring funktioniert auf hellem und dunklem Grund */
:focus{outline:none}
:focus-visible{outline:2px solid var(--rs-focus);outline-offset:2px;box-shadow:0 0 0 2px #fff}
.rs-site-header :focus-visible,.rs-mobile-panel :focus-visible,header.fixed :focus-visible{outline-color:#3ab7d8;box-shadow:0 0 0 2px #0a1a33}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:0}

/* Tippbare Flächen: Mindestgröße 44 px auf Touch-Geräten, kein Doppeltipp-Zoom */
a,button,summary,input,select,textarea,label{touch-action:manipulation}
@media (pointer:coarse){
  .rs-mobile-panel a{min-height:46px}
  footer a{display:inline-block;padding-block:.35rem}
  .rs-mobile-nav>summary{width:2.75rem;height:2.75rem}
}

/* Buttons: dezentes Press-Feedback, Hover nur auf Geräten mit Maus */
button,[role="button"],a.btn-primary,a.btn-secondary,.rs-nav-cta,a[class*="rounded-full"],button[class*="rounded-full"]{
  transition:transform .16s var(--rs-ease),background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,opacity .2s ease}
button:active,[role="button"]:active,a.btn-primary:active,a.btn-secondary:active,.rs-nav-cta:active,a[class*="rounded-full"]:active,button[class*="rounded-full"]:active{transform:scale(.97)}
button:disabled,[aria-disabled="true"]{cursor:not-allowed;opacity:.55;transform:none}

/* Karten und Boxen: ruhiger Hover-Lift (nur mit Maus) */
.service-card,.post-card,.rs-why-card,.rs-trust-card,.rs-wall-card,.rs-review-card,.rs-gr-card{transition:transform .28s var(--rs-ease),border-color .2s ease,box-shadow .28s var(--rs-ease)}
@media (hover:hover) and (pointer:fine){
  .service-card:hover,.rs-gr-card:hover{transform:translateY(-3px)}
}

/* Kontrast (WCAG AA): grauer Zusatztext auf hellem Grund war zu blass */
#rs-google-review-cards figcaption span,#rs-google-review-cards .rs-gr-source{color:#5c5c61}
#rs-google-review-cards .rs-gr-source a{color:#0055a3}
section.bg-white .text-\[\#86868b\],section.bg-ps-bg-light .text-\[\#86868b\],#reviews .text-\[\#86868b\]{color:#5c5c61}
/* Seiten mit eigener, zu blasser Mutefarbe (Kontakt) */
:root{--muted:#9a9ab3}


/* Bewegung respektieren */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,::before,::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .service-card:hover,.rs-gr-card:hover,.post-card:hover{transform:none}
}

/* =====================================================================
   DURCHGANG 2 – sichtbare Überarbeitung (mobil zuerst)
   ===================================================================== */
:root{
  --rs-r:20px;
  --rs-border:rgba(10,45,110,.10);
  --rs-shadow:0 1px 2px rgba(10,30,70,.04),0 10px 28px rgba(10,30,70,.07);
  --rs-shadow-hover:0 2px 4px rgba(10,30,70,.05),0 18px 40px rgba(10,30,70,.12);
  --rs-pad:1.125rem;
}
@media (min-width:768px){:root{--rs-pad:1.75rem}}

/* ---- Einblend-Animationen: kurz und klein ---- */
.duration-700.ease-out{transition-duration:.3s!important;transition-delay:0ms!important;transition-timing-function:cubic-bezier(.23,1,.32,1)!important}
.translate-y-8{--tw-translate-y:12px!important}

/* ---- Abschnittsabstände ---- */
section.py-28,section.py-24,section.py-20{padding-block:3.5rem}
section .text-center.mb-20,section .text-center.mb-16,section .text-center.mb-12{margin-bottom:1.75rem}
section .text-center.mb-10{margin-bottom:1.5rem}
section h2.mb-4{margin-bottom:.625rem}
section h2.mb-6{margin-bottom:.875rem}
.mt-12{margin-top:1.75rem}
@media (min-width:768px){
  section.py-28,section.py-36,section.py-24,section.py-20{padding-block:5.5rem}
  section .text-center.mb-20,section .text-center.mb-16{margin-bottom:3rem}
  section .text-center.mb-10{margin-bottom:2.25rem}
  section h2.md\:text-5xl{font-size:2.75rem;line-height:1.1;letter-spacing:-.03em}
  .mt-12{margin-top:2.5rem}
}
section h2{letter-spacing:-.025em;line-height:1.12}
section .text-ps-text-muted.text-lg,section p.text-lg{font-size:1.0625rem;line-height:1.55}

/* ---- Hero ---- */
main#main-content section .pt-40{padding-top:6.5rem;padding-bottom:3rem}
main#main-content section .pb-20{padding-bottom:3rem}
@media (min-width:768px){main#main-content section .pt-40{padding-top:9rem;padding-bottom:5rem}main#main-content section .pb-20{padding-bottom:5rem}}
main#main-content section h1.text-3xl{line-height:1.1;letter-spacing:-.03em;margin-bottom:1rem}
main#main-content section h1.text-3xl + p,main#main-content section .animate-fade-in-up.mb-6{margin-bottom:1rem}
main#main-content section .mt-20{margin-top:2rem}
@media (min-width:768px){main#main-content section .mt-28{margin-top:4rem}}
/* Preiszeile als Chips */
.flex-wrap:has(> span.flex + span.w-1){gap:.5rem!important;margin-bottom:1.75rem!important;justify-content:center}
.flex-wrap > span.w-1.h-1{display:none}
.flex-wrap:has(> span.w-1.h-1) > span.flex{padding:.4rem .85rem;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.07);color:#e5e5ea;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
/* Hero-Buttons */
main#main-content section a.px-8.py-4{padding:.9rem 1.75rem}

/* ---- Gemeinsame Kartensprache ---- */
.bg-white.rounded-3xl:not(button),.pricing-card,#tracker .rs-card,.rs-gr-card,.rs-review-card,.rs-wall-card,.rs-sc-card,.rs-trust-card,.rs-why-card,.step-card,.info-card,.calendar-card{
  border-radius:var(--rs-r)!important;border:1px solid var(--rs-border)!important;box-shadow:var(--rs-shadow)!important;background-image:none}
section .bg-white.rounded-3xl:not(button),section .pricing-card{padding:var(--rs-pad)!important}
.bg-white.rounded-3xl.p-8:not(button),.pricing-card.p-8{padding:var(--rs-pad)!important}
@media (hover:hover) and (pointer:fine){
  .bg-white.rounded-3xl:not(button):hover,.pricing-card:hover{box-shadow:var(--rs-shadow-hover)!important}
}
.pricing-card:hover{transform:translateY(-3px)}
/* dunkle Karten im dunklen Abschnitt */
.bg-\[\#1d1d1f\].rounded-3xl{border-radius:var(--rs-r)!important;padding:var(--rs-pad)!important;border:1px solid rgba(255,255,255,.1);box-shadow:none}
.bg-\[\#1d1d1f\].rounded-3xl .mb-6{margin-bottom:.75rem}
.bg-\[\#1d1d1f\].rounded-3xl.ring-1{border-color:rgba(58,183,216,.45)}

/* ---- Kompakte Zeilen-Karten (Handy): Symbol links, Text rechts ---- */
.grid > div > .text-center.p-8.rounded-3xl.group,
#process .grid > div > .text-center.group,
#about .grid > div > .rounded-3xl{
  background:#fff;border:1px solid var(--rs-border);border-radius:var(--rs-r);box-shadow:var(--rs-shadow);padding:var(--rs-pad)!important;text-align:left}
.grid > div > .text-center.p-8.rounded-3xl.group h3,#process .group h3,#about .grid > div > .rounded-3xl h3{margin-bottom:.25rem;font-size:1.0625rem;line-height:1.3}
.grid > div > .text-center.p-8.rounded-3xl.group p,#process .group p,#about .grid > div > .rounded-3xl p{font-size:.9375rem;line-height:1.55}
@media (max-width:767px){
  .grid > div > .text-center.p-8.rounded-3xl.group,
  #process .grid > div > .text-center.group,
  #about .grid > div > .rounded-3xl{display:grid;grid-template-columns:2.5rem minmax(0,1fr);column-gap:.875rem;align-items:start}
  .grid > div > .text-center.p-8.rounded-3xl.group > div:first-child,
  #about .grid > div > .rounded-3xl > div:first-child{width:2.5rem!important;height:2.5rem!important;margin:0!important;border-radius:12px;grid-row:1 / span 2}
  .grid > div > .text-center.p-8.rounded-3xl.group > div:first-child svg,
  #about .grid > div > .rounded-3xl > div:first-child svg{width:1.25rem!important;height:1.25rem!important}
  #process .group > div:first-child{grid-row:1 / span 2;margin:0!important;font-size:1.5rem;line-height:1.1;width:2.5rem;color:#006fcd!important}
  .grid > div > .text-center.p-8.rounded-3xl.group > :not(:first-child),
  #process .group > :not(:first-child),
  #about .grid > div > .rounded-3xl > :not(:first-child){grid-column:2}
  .grid.gap-6,.grid.gap-8{gap:.625rem}
}
@media (min-width:768px){
  .grid > div > .text-center.p-8.rounded-3xl.group > div:first-child,#about .grid > div > .rounded-3xl > div:first-child{margin-bottom:1rem!important}
  #process .group > div:first-child{color:#006fcd;font-size:2.25rem;margin-bottom:.5rem}
}

/* ---- Leistungen, Preise, Controller ---- */
#services .bg-white.rounded-3xl .flex.items-center.gap-4.mb-8{margin-bottom:.875rem}
#services .bg-white.rounded-3xl .w-14.h-14{width:2.75rem;height:2.75rem;border-radius:12px}
#services .bg-white.rounded-3xl h3.text-2xl{font-size:1.25rem;line-height:1.25}
#services .bg-white.rounded-3xl p.text-2xl{font-size:1.125rem;margin-top:.5rem}
#services .space-y-4>:not(:last-child){margin-bottom:.5rem}
#services .grid.gap-6{gap:.75rem}
#services .mt-6{margin-top:.75rem}
#pricing .pricing-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1rem;align-items:start}
#pricing .pricing-card > *{grid-column:1 / -1}
#pricing .pricing-card > h3{grid-column:1;grid-row:1;font-size:1.25rem;margin:0}
#pricing .pricing-card > h3 + p{grid-column:1;grid-row:2;margin:.15rem 0 .875rem}
#pricing .pricing-card > .mb-8:not(ul){grid-column:2;grid-row:1 / span 2;margin:0;text-align:right;white-space:nowrap}
#pricing .pricing-card .text-5xl{font-size:2.25rem;line-height:1.05}
#pricing .pricing-card .text-2xl{font-size:1.125rem}
#pricing .pricing-card ul.mb-8{margin-bottom:1rem}
#pricing .pricing-card ul.space-y-3>:not(:last-child){margin-bottom:.35rem}
#pricing .pricing-card .space-y-3>:not(:last-child){margin-bottom:.5rem}
#pricing .grid.gap-6{gap:.75rem}
#pricing .mt-6,#pricing .mt-3{margin-top:.5rem}
#tracker .rs-card{padding:var(--rs-pad)!important}

/* ---- lange Texte linksbündig ---- */
#about .text-center p,#about .max-w-2xl.text-center,.max-w-2xl.mx-auto.text-center p{text-align:left}
@media (min-width:768px){#about .text-center h2,#about .text-center > p.uppercase{text-align:center}}
.bg-white.rounded-3xl.text-center,.bg-white.rounded-3xl.text-center p{text-align:left}
.bg-white.rounded-3xl.text-center .flex.justify-center{justify-content:flex-start}
.bg-white.rounded-3xl.text-center p.max-w-lg,.bg-white.rounded-3xl.text-center p.max-w-2xl{margin-left:0;margin-right:0}
@media (max-width:767px){
  section > div > .text-center,section > div > div > .text-center{text-align:left}
  section .text-center .max-w-lg,section .text-center .max-w-xl,section .text-center .max-w-2xl{margin-left:0;margin-right:0}
  section .text-center .inline-flex{justify-content:flex-start}
  #reviews .text-center,#soundcheck .text-center,#rs-wall .text-center{text-align:left}
}

/* ---- Vertrauensleiste + "Warum Rick Solutions?" hell, gleiche Karten ---- */
html body .rs-trust-strip{background:#fff;color:#1d1d1f;border-bottom:1px solid var(--rs-border);box-shadow:none}
html body .rs-trust-grid{padding:1rem 0;gap:.625rem}
html body .rs-trust-card{min-height:0;padding:1rem .75rem;background:#fff;color:#1d1d1f}
html body .rs-trust-card:hover{transform:none;border-color:rgba(0,111,205,.3)!important}
html body .rs-trust-value{color:#0a2d6e;font-size:clamp(1.6rem,6vw,2.4rem);text-shadow:none}
html body .rs-trust-value .rs-trust-suffix{color:#006fcd}
html body .rs-trust-label{color:#1d1d1f;margin-top:.45rem;font-size:.84rem}
html body .rs-trust-note{color:#5c5c61;font-size:.75rem}
html body .rs-why{background:#f5f5f7;color:#1d1d1f;border-bottom:0;box-shadow:none}
html body .rs-why__head{text-align:left;padding:2.5rem 0 .25rem}
html body .rs-why__eyebrow{color:#0055a3;background:rgba(0,111,205,.08);border-color:rgba(0,111,205,.22)}
html body .rs-why__title{color:#1d1d1f;font-weight:800;letter-spacing:-.03em}
html body .rs-why__title b{color:#006fcd}
html body .rs-why__sub{color:#5c5c61;margin-left:0}
html body .rs-why-grid{gap:.625rem;padding:1.25rem 0 2.5rem}
html body .rs-why-card{background:#fff;color:#1d1d1f;padding:var(--rs-pad)!important;text-align:left;align-items:flex-start;will-change:auto}
html body .rs-why-card:hover{transform:none;border-color:rgba(0,111,205,.3)!important}
html body .rs-why-card__icon{width:2.5rem;height:2.5rem;border-radius:12px;background:rgba(0,111,205,.1);border:0;color:#006fcd;margin-bottom:.75rem}
html body .rs-why-card__icon svg{width:1.25rem;height:1.25rem}
html body .rs-why-card__title{color:#1d1d1f;font-size:1.0625rem}
html body .rs-why-card__text{color:#5c5c61;font-size:.9375rem;margin-top:.25rem}
html body .rs-why-card--accent{background:#fff;border-color:rgba(0,111,205,.45)!important;box-shadow:0 0 0 1px rgba(0,111,205,.18),var(--rs-shadow)!important}
html body .rs-why-card--accent .rs-why-card__icon{width:2.5rem;height:2.5rem;background:#006fcd;color:#fff;box-shadow:none}
html body .rs-why-card--accent .rs-why-card__icon svg{width:1.25rem;height:1.25rem}
html body .rs-why-card--accent .rs-why-card__title{font-size:1.0625rem}
html body .rs-why-card__badge{position:static;transform:none;display:inline-block;margin-bottom:.5rem;order:-1;background:#006fcd;color:#fff;box-shadow:none;padding:.25rem .65rem}
@media (max-width:859px){
  html body .rs-why-card{display:grid;grid-template-columns:2.5rem minmax(0,1fr);column-gap:.875rem;align-items:start}
  html body .rs-why-card__icon{grid-row:1 / span 2;margin:0}
  html body .rs-why-card > :not(.rs-why-card__icon){grid-column:2}
  html body .rs-why-card__badge{justify-self:start;order:0}
}
@media (min-width:860px){
  html body .rs-why-grid{align-items:stretch;gap:1rem}
  html body .rs-why-card--accent{transform:none;padding:var(--rs-pad)!important}
  html body .rs-why-card--accent:hover{transform:none}
  html body .rs-why__head{text-align:center}.rs-why__sub{margin-left:auto}
}
html body .rs-trust-strip + .rs-why{margin-top:0}

/* ---- Soundcheck + Wall of Fame hell ---- */
html body #soundcheck{background:#fff;color:#1d1d1f}
html body #soundcheck p{color:#5c5c61!important}
html body .rs-sc-card{background:#fff;padding:var(--rs-pad)}
html body .rs-sc-card:hover{background:#fff}
html body .rs-sc-title{color:#1d1d1f}.rs-sc-desc{color:#5c5c61}
html body .rs-sc-vorher .rs-sc-tag{color:#b42318}.rs-sc-nachher .rs-sc-tag{color:#067647}
html body .rs-sc-grid{gap:.75rem}
html body .rs-wall-card{background:#fff}.rs-wall-card .m{color:#5c5c61}.rs-wall-card .k{color:#1d1d1f}
html body .rs-wall-chip{background:#fff;border-color:var(--rs-border);color:#1d1d1f}
html body .rs-wall-subhead{color:#1d1d1f}
html body .rs-wall-counter{border-radius:var(--rs-r);padding:1.5rem 1.25rem;box-shadow:var(--rs-shadow)}
html body .rs-wall-empty{color:#5c5c61;border-color:rgba(10,45,110,.2)}
html body .rs-wall-eyebrow{color:#067647}

/* ---- App-Abschnitt (dunkel): nur Abstände ---- */
html body .rs-app-section.py-24{padding-block:3.5rem}
html body .rs-app-inner{gap:2rem}
@media (min-width:900px){.rs-app-inner{gap:3.5rem}}
html body .rs-app-list li{padding:.75rem .875rem;border-radius:14px}
html body .rs-app-list{margin-top:1.25rem}.rs-app-actions{margin-top:1.5rem}

/* ---- Footer ---- */
footer .py-20{padding-top:2.5rem;padding-bottom:calc(2rem + env(safe-area-inset-bottom))}
footer .gap-12{gap:2rem}
footer .mt-16{margin-top:2rem}
footer h2.mb-6{margin-bottom:.75rem}
footer ul.space-y-3{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
footer ul.space-y-3>li{margin-bottom:0!important}
footer ul.space-y-3 a{display:block;padding:.5rem 0}
footer .space-y-4>:not(:last-child){margin-bottom:.75rem}
@media (min-width:768px){
  footer .py-20{padding-top:4rem;padding-bottom:3rem}footer .gap-12{gap:3rem}footer .mt-16{margin-top:3rem}
  footer ul.space-y-3{grid-template-columns:1fr}footer ul.space-y-3 a{padding:.2rem 0}
}
footer .mt-8.pt-6{margin-top:1.25rem}
@media (max-width:767px){footer{padding-bottom:4.5rem}}

/* ---- Chat- und WhatsApp-Button: kleiner, sauber gestapelt ---- */
html body #rs-whatsapp-button{height:48px!important;min-width:48px!important;right:max(14px,env(safe-area-inset-right))!important;bottom:calc(var(--rs-fab-base,24px) + var(--rs-fab-lift,0px) + env(safe-area-inset-bottom))!important;box-shadow:0 6px 18px rgba(37,211,102,.3),0 2px 6px rgba(0,0,0,.14)!important}
html body #rs-whatsapp-button .rs-wa-ic{width:48px!important;height:48px!important}
html body #rs-whatsapp-button svg{width:24px!important;height:24px!important}
html body .chatbot-toggle,html body .rs-chat-toggle{width:48px!important;height:48px!important;right:max(14px,env(safe-area-inset-right))!important;bottom:calc(var(--rs-fab-base,24px) + var(--rs-fab-lift,0px) + 48px + 12px + env(safe-area-inset-bottom))!important;box-shadow:0 6px 18px rgba(0,111,205,.3)!important}
html body .chatbot-toggle svg,html body .rs-chat-toggle svg{width:22px;height:22px}
html body .chatbot-toggle:hover,html body .rs-chat-toggle:hover{transform:none!important}
html body .chatbot-window,html body .rs-chat-win{bottom:calc(var(--rs-fab-base,24px) + var(--rs-fab-lift,0px) + 120px + env(safe-area-inset-bottom))!important}
body.rs-site .rs-site-footer{padding-bottom:0}

/* ---- Unterseiten: gleiche Optik (dunkler Kopf, helle Inhalte, dunkler Fuß) ---- */
body.rs-site{background:#fff;color:#1d1d1f;font-size:1rem}
body.rs-site main,body.rs-site article{padding:2.25rem 1.25rem 3rem;font-size:1rem}
body.rs-site main h2,body.rs-site article h2{color:#1d1d1f;margin:2.5rem 0 .75rem;letter-spacing:-.025em;line-height:1.15}
body.rs-site main h3,body.rs-site article h3{color:#0055a3;margin:1.5rem 0 .5rem}
body.rs-site main p,body.rs-site article p{color:#424245}
body.rs-site main p a,body.rs-site article a{color:#0055a3;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
body.rs-site .hero{padding:3rem 1.25rem 2.5rem}
body.rs-site .hero h1{font-size:clamp(1.75rem,7vw,3rem)}
body.rs-site .hero-buttons,body.rs-site .cta-buttons{gap:.625rem}
body.rs-site .hero .btn-primary,body.rs-site .hero .btn-secondary,body.rs-site .cta .btn-primary,body.rs-site .cta .btn-secondary{width:100%;max-width:340px}
body.rs-site .box,body.rs-site .review,body.rs-site .service-card,body.rs-site .price-table,body.rs-site .compare-box,body.rs-site .post-card{background:#fff;border:1px solid var(--rs-border);border-radius:var(--rs-r);box-shadow:var(--rs-shadow)}
body.rs-site .box{background:rgba(0,111,205,.06);border-color:rgba(0,111,205,.2);box-shadow:none;padding:1rem 1.125rem}
body.rs-site .box.danger{background:rgba(217,45,32,.06);border-color:rgba(217,45,32,.25)}
body.rs-site .box.warning{background:rgba(181,100,0,.07);border-color:rgba(181,100,0,.28)}
body.rs-site .box.green{background:rgba(6,118,71,.07);border-color:rgba(6,118,71,.25)}
body.rs-site .box strong,body.rs-site .compare-box h4,body.rs-site .faq-item strong,body.rs-site .post-card h2,body.rs-site .review blockquote{color:#1d1d1f}
body.rs-site .box p{color:#424245}
body.rs-site .checklist li,body.rs-site .steps li,body.rs-site .compare-box ul li,body.rs-site .price-table td{color:#424245}
body.rs-site .checklist li,body.rs-site .compare-box ul li,body.rs-site .faq-item,body.rs-site .price-table th,body.rs-site .price-table td{border-bottom-color:var(--rs-border)}
body.rs-site .checklist li::before,body.rs-site .compare-box.good ul li::before{color:#067647}
body.rs-site .compare-box.bad ul li::before{color:#b42318}
body.rs-site .steps li::before{background:rgba(0,111,205,.1);color:#0055a3}
body.rs-site .price-table{overflow:hidden}
body.rs-site .price-table th{color:#5c5c61;background:#f5f5f7}
body.rs-site .price-table td.p,body.rs-site .service-card .price,body.rs-site .read-more,body.rs-site .review cite a{color:#0055a3}
body.rs-site .service-card p,body.rs-site .note,body.rs-site .post-card .meta,body.rs-site .review cite{color:#5c5c61!important}
body.rs-site .post-card p{color:#424245!important}
body.rs-site .service-card,body.rs-site .review,body.rs-site .post-card,body.rs-site .compare-box{padding:var(--rs-pad)}
body.rs-site .faq-item p{color:#424245}
body.rs-site .cta,body.rs-site .rs-end-box{border-radius:var(--rs-r);padding:2rem 1.25rem;margin-top:2.5rem}
body.rs-site .cta h2,body.rs-site .rs-end-box h2{color:#fff}
body.rs-site .cta p{color:#c7c7cc}
body.rs-site .cta a:not(.btn-primary):not(.btn-secondary),body.rs-site .rs-end-box a{color:#fff}
body.rs-site .rs-site-footer{margin-top:0}
@media (min-width:768px){
  body.rs-site main,body.rs-site article{padding:3.5rem 1.5rem 4rem}
  body.rs-site main h2,body.rs-site article h2{margin-top:3.25rem}
  body.rs-site .hero{padding:5rem 1.5rem 3.5rem}
  body.rs-site .cta,body.rs-site .rs-end-box{padding:3rem 2rem}
}
@media (hover:hover){body.rs-site .price-table tbody tr:hover td{background:rgba(0,111,205,.05)}}
body.rs-site .post-card:hover{border-color:rgba(0,111,205,.35)}

/* ---- Buchung: gleiche Karten ---- */
.step-card,.info-card,.calendar-card{background:#fff}

button.bg-white.rounded-3xl{border-radius:var(--rs-r);padding:1.125rem!important}
@media (min-width:768px){button.bg-white.rounded-3xl{padding:1.5rem!important}}

/* Hero-Bilder: beide Konsolen passen nebeneinander auf 375 px */
@media (max-width:767px){
  main#main-content section .relative.flex.items-stretch.justify-center{gap:.75rem}
  main#main-content section .relative.flex.items-stretch.justify-center > div{flex:1 1 0;min-width:0}
  main#main-content section .relative.flex.items-stretch.justify-center > div > div{width:100%!important;padding:.75rem}
  main#main-content section .relative.flex.items-stretch.justify-center h3{font-size:1rem}
}

/* Leistungs-Karten (Handy): Titel + Preis in einer Zeile */
@media (max-width:767px){
  #services .bg-white.rounded-3xl:has(> p.text-2xl){display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:.75rem;align-items:center}
  #services .bg-white.rounded-3xl:has(> p.text-2xl) > .flex{grid-column:1;grid-row:1;margin:0}
  #services .bg-white.rounded-3xl:has(> p.text-2xl) > p.text-2xl{grid-column:2;grid-row:1;margin:0;white-space:nowrap}
  #services .bg-white.rounded-3xl:has(> p.text-2xl) > p.text-sm{grid-column:1 / -1;grid-row:2;margin-top:.75rem}
  #services .bg-white.rounded-3xl:has(> p.text-2xl) > a{grid-column:1 / -1;grid-row:3;margin-top:.5rem}
}

/* Preise: Details */
#pricing .pricing-card > span.inline-block{grid-column:1 / -1;grid-row:1;justify-self:start;margin-bottom:.5rem;padding:.25rem .75rem}
#pricing .pricing-card > span + h3{grid-row:2}
#pricing .pricing-card > span + h3 + p{grid-row:3}
#pricing .pricing-card > span ~ .mb-8:not(ul){grid-row:2 / span 2}
.pricing-card.ring-2{box-shadow:0 0 0 2px #006fcd,var(--rs-shadow)!important;border-color:transparent!important}
#rs-cleaning-why{padding:1rem 1.125rem!important;margin:1.25rem auto 1.5rem!important;border-radius:var(--rs-r)!important;box-shadow:var(--rs-shadow)}
#rs-cleaning-why p{font-size:.9375rem!important;line-height:1.6!important}
#pricing .mt-6.flex > span{font-size:.8125rem;line-height:1.35;padding:.5rem .875rem;text-align:left}
#pricing .mt-3.flex > span{color:#005a75!important;font-size:.8125rem;line-height:1.35;padding:.5rem .875rem;text-align:left}

/* FAQ als Karte, kompaktere Zeilen */
#faq .divide-y{background:#fff;border:1px solid var(--rs-border);border-radius:var(--rs-r);box-shadow:var(--rs-shadow);padding:.25rem 1.125rem}
#faq .py-6{padding-block:.5rem}
#faq button{min-height:2.75rem;padding-block:.5rem}
#faq [role="region"] p{padding-bottom:.75rem}
@media (min-width:768px){#faq .divide-y{padding:.5rem 1.75rem}#faq .py-6{padding-block:.875rem}}

/* Google-Bewertungen: auf dem Handy seitlich wischbar statt untereinander */
@media (max-width:767px){
  html body #rs-google-review-cards .rs-gr-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.75rem;margin-inline:-1rem;padding:.25rem 1rem .75rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  html body #rs-google-review-cards .rs-gr-grid::-webkit-scrollbar{display:none}
  html body #rs-google-review-cards .rs-gr-card{flex:0 0 84%;scroll-snap-align:center;padding:1.125rem}
  html body #rs-google-review-cards{margin-bottom:1.25rem}
}

/* Textdichte */
@media (max-width:767px){
  .leading-relaxed{line-height:1.55}
  section p.text-lg.leading-relaxed,section p.text-lg.mb-5{font-size:1rem;margin-bottom:.75rem}
  section .max-w-2xl h3.text-2xl{font-size:1.375rem;margin-bottom:.75rem}
  .mb-12{margin-bottom:1.5rem}
  section .mt-6{margin-top:.875rem}
  #about .grid.mb-16{margin-bottom:1.25rem}
  #about .bg-white.rounded-3xl.mb-8{margin-bottom:1rem}
  #quiz .max-w-xl.mb-12{margin-bottom:1.25rem}
  #quiz button.bg-white.rounded-3xl .w-16{width:3rem;height:3rem;margin-bottom:.5rem}
  .rs-app-title{margin-top:.75rem}
  .rs-wall-counter{margin-bottom:1.25rem}
}

/* Unterseiten-Kopf: mobil linksbündig (lange Einleitung) */
@media (max-width:767px){
  body.rs-site .hero{text-align:left}
  body.rs-site .hero p,body.rs-site .hero h1{margin-left:0;margin-right:0}
  body.rs-site .hero-buttons,body.rs-site .cta-buttons{justify-content:flex-start}
  body.rs-site .hero .btn-primary,body.rs-site .hero .btn-secondary{max-width:none}
}

/* Buchung: fester Sprach-Button darf den „Zur Startseite“-Link nicht überdecken */
@media (max-width: 640px) {
  .topbar { padding-right: calc(env(safe-area-inset-right, 0px) + 4.5rem); }
  .back-link { white-space: nowrap; }
}
