/* RadOase Stil v5 – optische Ebene im Look der V3.
   Nur Darstellung: keine Inhalte, keine Logik. CI: Creme #ece1cd, Tanne #275657, Gold #d7a034, Ink #322e29.
   Gold nur als Flaeche oder auf Dunkel; auf Hell Text in --ro5-gold-ink. */

@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/inter-latin-wght.woff2") format("woff2")}

/* 1. Farben und Grundwerte ---------------------------------------------- */
html:root{
  --ro5-paper:#fbf9f4;--ro5-creme:#ece1cd;--ro5-creme-2:#f4eee3;
  --ro5-tanne:#275657;--ro5-tanne-d:#1f4748;--ro5-tanne-dd:#173637;
  --ro5-gold:#d7a034;--ro5-gold-ink:#7d5e1a;--ro5-gold-soft:#f0c977;
  --ro5-ink:#322e29;--ro5-ink-2:#5c564d;--ro5-ink-3:#77705f;
  --ro5-line:rgba(50,46,41,.12);--ro5-line-2:rgba(50,46,41,.22);
  --ro5-r2:18px;--ro5-r3:28px;
  --ro5-shadow:0 1px 2px rgba(50,46,41,.06),0 12px 32px rgba(50,46,41,.08);
  --ro5-font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;

  /* Variablen des bisherigen Zusatz-CSS und der Seiten auf CI ziehen */
  --ro-cream:var(--ro5-creme);--ro-petrol:var(--ro5-tanne);--ro-gold:var(--ro5-gold);--ro-ink:var(--ro5-ink);--ro-radius:var(--ro5-r2);
  --primary:var(--ro5-tanne);--primary-2:var(--ro5-tanne-d);--highlight:var(--ro5-gold);
  --bg:var(--ro5-paper);--text:var(--ro5-ink);--muted:var(--ro5-ink-2);--radius:var(--ro5-r2);
  --shadow:var(--ro5-shadow);

  /* Blocksy */
  --theme-font-stack-default:var(--ro5-font);
  --theme-text-color:var(--ro5-ink);
  --theme-headings-color:var(--ro5-tanne-dd);
  --theme-link-initial-color:var(--ro5-tanne);
  --theme-link-hover-color:var(--ro5-tanne-dd);
  --theme-button-background-initial-color:var(--ro5-tanne);
  --theme-button-background-hover-color:var(--ro5-tanne-dd);
  --theme-button-text-initial-color:#fff;
  --theme-button-text-hover-color:#fff;
  --theme-button-border-radius:999px;
}

/* Seiten mit eigenen Variablen */
html body .ro-home{--petrol:var(--ro5-tanne);--petrol-dark:var(--ro5-tanne-dd);--sand:var(--ro5-creme-2);--sand-light:var(--ro5-paper);--text:var(--ro5-ink);--muted:var(--ro5-ink-2);--gold:var(--ro5-gold);--radius:var(--ro5-r2);--shadow:var(--ro5-shadow)}
html body .ro-brands{--petrol:var(--ro5-tanne);--gold:var(--ro5-gold);--ink:var(--ro5-ink);--muted:var(--ro5-ink-2);--soft:var(--ro5-creme-2);--line:var(--ro5-line)}
html body .ro-voucher{--rv-petrol:var(--ro5-tanne);--rv-ink:var(--ro5-ink);--rv-cream:var(--ro5-creme);--rv-gold:var(--ro5-gold)}

/* 2. Schrift und Seite ---------------------------------------------------- */
html body.ro5{background:var(--ro5-paper);color:var(--ro5-ink);font-family:var(--ro5-font);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01";text-rendering:optimizeLegibility}
html body.ro5 :where(h1,h2,h3,h4,h5,h6,p,li,a,span,div,section,article,main,button,input,select,textarea,label,strong,b,small,td,th,figcaption,blockquote){font-family:var(--ro5-font)}
html body.ro5 :where(code,pre,kbd,samp){font-family:ui-monospace,Menlo,Consolas,monospace}
html body.ro5 #main-container .entry-content :where(h1,h2,h3,h4){font-weight:650;letter-spacing:-.022em;text-wrap:balance}
html body.ro5 #main-container .entry-content :where(h1){letter-spacing:-.03em}
html body.ro5 #main-container .entry-content :where(p){text-wrap:pretty}

/* Sehr schwere Gewichte (900/950) der Seiten auf V3-Niveau */
html body.ro5 #main-container .entry-content [class*="ro-"] :where(h1,h2,h3),
html body.ro5 #main-container .entry-content :where(.ro-hero-title,.ro-head h2,.ro-box h2,.ro-card h3,.ro-quick-card h3,.hero h1,.hero h2,.section-title,.package-card h3){font-weight:650}

/* 3. Ueberzeilen, Etiketten, Buttons: keine Grossbuchstaben ---------------- */
html body.ro5 #main-container .entry-content :where(.ro-kicker,.ro-aktion-kicker,.ro-tag,.ro-badge,.ro-brand strong,.eyebrow,.hero-badge,.rv-kicker,.ro-eyebrow,.kicker,.badge,.tag),
html body.ro5 #main-container .ro-brands .eyebrow{
  text-transform:none!important;letter-spacing:.01em!important;font-weight:600!important;font-size:.9rem!important}
html body.ro5 #main-container .entry-content :where(.ro-kicker,.hero-badge){background:transparent!important;border:0!important;padding:0!important;border-radius:0!important;color:var(--ro5-tanne)!important}
html body.ro5 #main-container .entry-content :where(.ro-hero,.hero,.ro-aktion,.rv-hero,.sec--dark,.ro-footer,.final,.akt) :where(.ro-kicker,.ro-aktion-kicker,.hero-badge,.eyebrow,.rv-kicker){color:var(--ro5-gold-soft)!important}
html body.ro5 #main-container .entry-content :where(.ro-tag,.ro-badge){background:var(--ro5-creme-2)!important;color:var(--ro5-tanne-dd)!important;border-color:transparent!important}
html body.ro5 #main-container .entry-content :where(.ro-aktion-cta a){font-weight:600!important}
html body.ro5 #main-container .ro-brands :where(.soft,section:not(.hero):not(.akt):not(.final)) .eyebrow{color:var(--ro5-tanne)!important}

/* Buttons im V3-Stil: Tanne-Pille, normal geschrieben */
html body.ro5 #main-container .entry-content :where(.ro-btn,.cta-button,.package-button,.btn,.wp-block-button__link,.wpforms-submit,a.button,button.button,.rv-btn){
  text-transform:none!important;letter-spacing:0!important;font-weight:600!important;font-size:1rem!important;border-radius:999px!important;box-shadow:none!important;transition:background .18s,border-color .18s,color .18s,transform .12s}
/* Gelbe Primaerbuttons -> Tanne (auf Hell) */
html body.ro5 #main-container .entry-content :where(.ro-btn-gold,.cta-button,.package-button,.ro-brands .btn:not(.alt):not(.line):not(.dark)){
  background:var(--ro5-tanne)!important;color:#fff!important;border:1.5px solid var(--ro5-tanne)!important}
html body.ro5 #main-container .entry-content :where(.ro-btn-gold,.cta-button,.package-button,.ro-brands .btn:not(.alt):not(.line):not(.dark)):hover{background:var(--ro5-tanne-dd)!important;border-color:var(--ro5-tanne-dd)!important;color:#fff!important;transform:none}
/* Auf dunklem Grund: Creme-Fläche wie V3 .btn--light */
html body.ro5 #main-container .entry-content :where(.ro-hero,.hero,.ro-aktion,.rv-hero,.final,.akt,[style*="background:#275657"],[style*="background: #275657"]) :where(.ro-btn-gold,.cta-button,.btn:not(.alt):not(.line)){
  background:var(--ro5-creme)!important;border-color:var(--ro5-creme)!important;color:var(--ro5-tanne-dd)!important}
html body.ro5 #main-container .entry-content :where(.ro-hero,.hero,.ro-aktion,.rv-hero,.final,.akt) :where(.ro-btn-gold,.cta-button,.btn:not(.alt):not(.line)):hover{background:#fff!important;border-color:#fff!important}
html body.ro5 #main-container .entry-content :where(.ro-btn-dark,.btn.dark){background:var(--ro5-tanne)!important;color:#fff!important}
html body.ro5 #main-container .entry-content :where(.ro-btn-light,.btn.alt){background:transparent!important;border:1.5px solid rgba(236,225,205,.55)!important;color:var(--ro5-creme)!important}
html body.ro5 #main-container .entry-content :where(.ro-btn-light,.btn.alt):hover{background:var(--ro5-creme)!important;color:var(--ro5-tanne-dd)!important}
html body.ro5 #main-container .entry-content :where(.btn.line){background:transparent!important;border:1.5px solid var(--ro5-tanne)!important;color:var(--ro5-tanne)!important}
html body.ro5 #main-container .entry-content :where(.btn.line):hover{background:var(--ro5-tanne)!important;color:#fff!important}
html body.ro5 #main-container .entry-content :where(.ro-btn,.cta-button,.package-button,.btn):hover{transform:none!important}
html body.ro5 .wpforms-container button[type="submit"]{text-transform:none!important;letter-spacing:0!important;font-weight:600!important;border-radius:999px!important}

/* 4. Karten: grosse Rundung, weicher Schatten, kein Hochspringen ---------- */
html body.ro5 #main-container .entry-content :where(.ro-card,.ro-quick-card,.ro-brand,.ro-box:not(.ro-box-clean),.ro-form-card,.ro-choice,.package-card,.benefit-card,.emotion-card,.card,.rv-card){
  border-radius:var(--ro5-r2)!important;box-shadow:var(--ro5-shadow)!important;border-color:transparent!important}
html body.ro5 #main-container .entry-content :where(.ro-quick-panel){border-radius:var(--ro5-r3)!important;box-shadow:var(--ro5-shadow)!important}
html body.ro5 #main-container .entry-content :where(.ro-card,.ro-quick-card,.ro-brand,.package-card,.benefit-card,.card):hover{transform:none!important;border-color:transparent!important}
html body.ro5 #main-container .ro-brands .focus:before{background:var(--ro5-gold)}

/* 5. Kopfbereich: schmal, hell, ruhig ------------------------------------- */
html body.ro5 #header [data-row="top"]{display:none!important}
html body.ro5 #header.ct-header{border-bottom:1px solid var(--ro5-line)!important;box-shadow:none!important}
html body.ro5 #header [data-row]{background:rgba(251,249,244,.92)!important;-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px)}
html body.ro5 #header [data-id="menu"] > ul > li > a,
html body.ro5 #header .ct-menu-link{text-transform:none!important;letter-spacing:0!important;font-family:var(--ro5-font)!important;font-weight:500!important;font-size:.9375rem!important;color:var(--ro5-ink)!important}
html body.ro5 #header [data-id="menu"] > ul > li.current-menu-item > a,
html body.ro5 #header [data-id="menu"] > ul > li > a:hover{color:var(--ro5-tanne-dd)!important}
html body.ro5 #header [data-id="menu"] > ul > li.current-menu-item > a:before,
html body.ro5 #header [data-id="menu"] > ul > li > a:before,
html body.ro5 #header [data-id="menu"] > ul > li > a:after{display:none!important}
html body.ro5 #header .sub-menu{border-radius:14px!important;box-shadow:var(--ro5-shadow)!important;background:#fff!important}
html body.ro5 #header .sub-menu .ct-menu-link{font-size:.9375rem!important}
@media (min-width:1000px){
  html body.ro5 #header [data-row="middle"],html body.ro5 #header [data-row="middle"] > div{min-height:72px!important;height:72px!important}
  html body.ro5 #header [data-id="logo"],html body.ro5 #header [data-id="menu"],html body.ro5 #header [data-row="middle"] .ct-menu-link{height:72px!important}
  html body.ro5 #header [data-id="logo"] img{height:54px!important;max-height:54px!important}
}

/* 6. Fuss ------------------------------------------------------------------ */
html body.ro5 :where(.ct-footer,.ro-footer){background:var(--ro5-tanne-dd);color:var(--ro5-creme)}

/* 7. Fokus und Bewegung ---------------------------------------------------- */
html body.ro5 :focus-visible{outline:3px solid var(--ro5-tanne);outline-offset:3px}
@media (prefers-reduced-motion:reduce){html body.ro5 *{transition:none!important}}

/* 8. Nachzuegler aus der Seitenpruefung ----------------------------------- */
/* Weitere gelbe Primaerbuttons (Termin, Kontakt, Service/ROSE) */
html body.ro5 #main-container .entry-content :where(.ro-hero-cta,.rose-service-promo__btn,.btn-gold,.btn-primary,.ro-rose-btn-gold,.btn:not(.alt):not(.line):not(.dark):not(.btn-secondary):not(.btn-light)){
  background:var(--ro5-tanne)!important;border:1.5px solid var(--ro5-tanne)!important;color:#fff!important;text-transform:none!important;letter-spacing:0!important;font-weight:600!important;box-shadow:none!important}
html body.ro5 #main-container .entry-content :where(.hero,.ro-hero,.ro-rose-hero,.ro-termin-hero,.ro-kontakt-hero,.rose-service-promo,.final,.akt) :where(.ro-hero-cta,.rose-service-promo__btn,.btn-gold,.btn-primary,.ro-rose-btn-gold,.cta-button,.btn:not(.alt):not(.line):not(.dark):not(.btn-secondary):not(.btn-light)){
  background:var(--ro5-creme)!important;border-color:var(--ro5-creme)!important;color:var(--ro5-tanne-dd)!important}
html body.ro5 #main-container .entry-content :where(.hero,.ro-hero,.ro-rose-hero,.rose-service-promo) :where(.eyebrow,.kicker,.ro-kicker,.ro-rose-kicker,.hero-kicker){color:var(--ro5-gold-soft)!important;background:transparent!important;border:0!important;padding:0!important;text-transform:none!important;letter-spacing:.01em!important}
html body.ro5 #main-container .entry-content :where(.rv-label){text-transform:none!important;letter-spacing:.01em!important;font-weight:600!important}
/* Produktseiten (WooCommerce) */
html body.ro5 #main-container :where(.product_meta,.product_meta *,.ct-product-meta,.entry-meta,.ct-breadcrumbs){text-transform:none!important;letter-spacing:0!important}
html body.ro5 #main-container :where(.woocommerce,.product) :where(*){font-family:var(--ro5-font)}
html body.ro5 #main-container :where(.price,.woocommerce-Price-amount){color:var(--ro5-tanne-dd)}

/* 9. Leere Icon-Halter nach dem Entfernen der Emojis ausblenden ----------- */
html body.ro5 #main-container .entry-content :where(.ro-icon,.icon,.benefit-icon,.service-icon,.card-icon,.feature-icon):empty{display:none!important}

/* 10. Wortmarke im Kopf ---------------------------------------------------- */
html body.ro5 #header [data-id="logo"] img.ro5-wortmarke{height:44px!important;max-height:44px!important;width:auto!important;aspect-ratio:400/144;object-fit:contain}
@media (max-width:999px){html body.ro5 #header [data-id="logo"] img.ro5-wortmarke{height:38px!important;max-height:38px!important}}

/* 11. Dunkle Abschnitte: Ueberschriften hell ------------------------------ */
html body.ro5 #main-container .entry-content :where(.ro-final,.ro-hero,.ro-aktion,.ro-brands .final,.akt,.hero,.ro-rose-hero,.rv-hero,.ro-dark,.ro-cta-band,.rose-service-promo) :where(h1,h2,h3,h4){color:#fff!important}

/* 12. Fuss: dunkel, Links lesbar ----------------------------------------- */
html body.ro5 #footer.ct-footer,html body.ro5 #footer.ct-footer [data-row]{background:var(--ro5-tanne-dd)!important;color:var(--ro5-creme)!important}
html body.ro5 #footer.ct-footer :where(p,span,div,li){color:var(--ro5-creme)}
html body.ro5 #footer.ct-footer a{color:#fff!important}

/* 13. ROSE-Seite: Nummern und Etiketten ---------------------------------- */
html body.ro5 #main-container .entry-content :where(.ro-rose-number){background:var(--ro5-gold)!important;color:var(--ro5-tanne-dd)!important;text-transform:none!important}
html body.ro5 #main-container .entry-content :where(.ro-rose-btn){text-transform:none!important;letter-spacing:0!important}
html body.ro5 #main-container .entry-content :where(.ro-tip){background:var(--ro5-creme-2)!important;border-color:var(--ro5-gold)!important;color:var(--ro5-ink)!important}
html body.ro5 #main-container .entry-content :where(.submit-button){background:var(--ro5-tanne)!important;color:#fff!important;border-color:var(--ro5-tanne)!important;text-transform:none!important;border-radius:999px!important}
html body.ro5 #main-container :where(.woocommerce-result-count,.animated-notice,label){text-transform:none!important;letter-spacing:0!important}

/* 14. Aventon-Aktion: Animation ------------------------------------------ */
/* Startseite (.ro-aktion) und Aventon-Seite (.akt). Ruhig, kein Blinken; bei "weniger Bewegung" aus. */
@media (prefers-reduced-motion:no-preference){
  html body.ro5 #main-container :where(.ro-aktion,.ro-brands .akt){position:relative;overflow:hidden;isolation:isolate}
  /* Lichtstreifen, der alle 7 s ueber den Banner zieht */
  html body.ro5 #main-container :where(.ro-aktion,.ro-brands .akt)::after{
    content:"";position:absolute;inset:-20% auto -20% -40%;width:28%;z-index:0;pointer-events:none;
    background:linear-gradient(100deg,transparent 0%,rgba(240,201,119,0) 20%,rgba(240,201,119,.16) 50%,rgba(240,201,119,0) 80%,transparent 100%);
    transform:skewX(-18deg);animation:ro5-shine 7s ease-in-out 1.2s infinite}
  html body.ro5 #main-container :where(.ro-aktion,.ro-brands .akt) > *{position:relative;z-index:1}
  /* Einblenden beim Laden */
  html body.ro5 #main-container :where(.ro-aktion-text,.ro-brands .akt-grid > div:last-child){animation:ro5-rise .7s cubic-bezier(.2,.7,.2,1) both}
  html body.ro5 #main-container :where(.ro-aktion-cta,.ro-brands .akt-prices){animation:ro5-rise .7s cubic-bezier(.2,.7,.2,1) .15s both}
  /* Sticker: Stempel beim Laden, danach leichtes Wippen */
  html body.ro5 #main-container :where(.ro-aktion-badge,.ro-brands .akt-badge){animation:ro5-stamp .65s cubic-bezier(.2,1.4,.4,1) .2s both,ro5-wobble 4.5s ease-in-out 1.6s infinite}
  /* Preise der Aventon-Seite nacheinander */
  html body.ro5 #main-container .ro-brands .akt-prices a{animation:ro5-rise .6s cubic-bezier(.2,.7,.2,1) both}
  html body.ro5 #main-container .ro-brands .akt-prices a:nth-child(1){animation-delay:.25s}
  html body.ro5 #main-container .ro-brands .akt-prices a:nth-child(2){animation-delay:.38s}
  html body.ro5 #main-container .ro-brands .akt-prices a:nth-child(3){animation-delay:.51s}
  html body.ro5 #main-container .ro-brands .akt-prices a{transition:transform .2s,border-color .2s,background .2s}
  html body.ro5 #main-container .ro-brands .akt-prices a:hover{transform:translateY(-3px);border-color:rgba(240,201,119,.6);background:rgba(255,255,255,.1)}
  /* Hauptbutton: sanfter Puls-Ring */
  html body.ro5 #main-container :where(.ro-aktion-cta .p){position:relative;animation:ro5-ring 2.8s ease-out 2s infinite}
}
@keyframes ro5-shine{0%{left:-40%}55%,100%{left:120%}}
@keyframes ro5-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes ro5-stamp{0%{opacity:0;transform:rotate(-8deg) scale(1.6)}60%{opacity:1;transform:rotate(-8deg) scale(.94)}100%{opacity:1;transform:rotate(-8deg) scale(1)}}
@keyframes ro5-wobble{0%,100%{transform:rotate(-8deg) scale(1)}45%{transform:rotate(-8deg) scale(1)}52%{transform:rotate(-2deg) scale(1.06)}60%{transform:rotate(-11deg) scale(1.02)}68%{transform:rotate(-8deg) scale(1)}}
@keyframes ro5-ring{0%{box-shadow:0 0 0 0 rgba(215,160,52,.55)}70%{box-shadow:0 0 0 14px rgba(215,160,52,0)}100%{box-shadow:0 0 0 0 rgba(215,160,52,0)}}

/* 15. Kopf wie V3: Menue mittig, Telefon und Button rechts ---------------- */
@media (min-width:1000px){
  html body.ro5 #header [data-device="desktop"] [data-row="middle"] [data-id="menu"]{flex:1 1 auto}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul{display:flex;align-items:center;gap:.15rem;width:100%}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li > a.ct-menu-link{height:auto!important;padding:.5rem .8rem!important;border-radius:999px;transition:background .15s}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li:not(.ro5-cta):hover > a,
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li.current-menu-item:not(.ro5-cta) > a,
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li.current-menu-ancestor > a{background:rgba(39,86,87,.08)}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li.ro5-tel{margin-left:auto}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li.ro5-tel > a{font-weight:600!important;white-space:nowrap}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li.ro5-cta{margin-left:.35rem}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li.ro5-cta > a{background:var(--ro5-tanne)!important;color:#fff!important;font-weight:600!important;padding:.6rem 1.15rem!important;white-space:nowrap}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] > ul > li.ro5-cta > a:hover{background:var(--ro5-tanne-dd)!important;color:#fff!important}
  html body.ro5 #header [data-device="desktop"] [data-id="menu"] .ct-toggle-dropdown-desktop{display:none}
}
/* Aufklappmenue mit Unterzeilen */
html body.ro5 #header .sub-menu{padding:.5rem!important;min-width:300px!important;border:1px solid var(--ro5-line)!important}
html body.ro5 #header .sub-menu > li > a.ct-menu-link{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:.15rem;padding:.6rem .8rem!important;border-radius:12px;font-weight:600!important;color:var(--ro5-ink)!important;line-height:1.3}
html body.ro5 #header .sub-menu > li > a.ct-menu-link:hover{background:var(--ro5-creme-2)!important}
html body.ro5 #header .ro5-desc{display:block;font-size:.85rem;font-weight:400;color:var(--ro5-ink-2);line-height:1.35}
/* Mobil: Telefon und Button im Menue unten */
html body.ro5 #offcanvas .ro5-cta > a{display:inline-flex!important;margin-top:1rem;background:var(--ro5-tanne);color:#fff!important;border-radius:999px;padding:.7rem 1.3rem!important;font-weight:600}
html body.ro5 #offcanvas .ro5-desc{display:none}
html body.ro5 #header .sub-menu > li > a.ct-menu-link{height:auto!important;min-height:0!important}
html body.ro5 #header .sub-menu > li{margin:0!important}
/* Doppelte Kontaktleiste oben in den Seiten (Telefon steht jetzt im Kopf) */
html body.ro5 #main-container .entry-content :where(.ro-topbar,.top-bar){display:none!important}

/* 16. Startseiten-Kopf wie V3 (Buehne): Text auf Papier, Ladenfoto darunter -
   Nur Darstellung des vorhandenen Markups (.ro-home .ro-hero), Inhalt bleibt. */
html body.ro5 #main-container .ro-home .ro-hero{background:var(--ro5-paper)!important;color:var(--ro5-ink)!important;padding:0!important}
html body.ro5 #main-container .ro-home .ro-hero::before{display:none!important}
html body.ro5 #main-container .ro-home .ro-hero-inner{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:clamp(2rem,5vw,4.5rem);align-items:end;
  grid-template-areas:"kicker ." "title lead" "title lead2" "title actions" "stage stage" "trust trust";
  padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(2rem,4vw,3rem)!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-kicker{grid-area:kicker;color:var(--ro5-tanne)!important;font-size:.95rem!important;margin:0 0 1rem!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-hero-title{grid-area:title;align-self:start;color:var(--ro5-ink)!important;text-shadow:none!important;font-size:clamp(2.4rem,4.8vw,4rem)!important;font-weight:650!important;letter-spacing:-.03em!important;line-height:1.04!important;margin:0!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-hero-inner > p{color:var(--ro5-ink-2)!important;font-size:clamp(1.05rem,1.4vw,1.25rem)!important;line-height:1.5!important;margin:0 0 .6rem!important;text-shadow:none!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-hero-inner > p:nth-of-type(1){grid-area:lead}
html body.ro5 #main-container .ro-home .ro-hero .ro-hero-inner > p:nth-of-type(2){grid-area:lead2}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions{grid-area:actions;display:flex!important;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem!important;margin:1rem 0 0!important}
/* Buttons: 1 Hauptbutton, 1 Rahmenbutton, Rest als Textlinks */
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a{min-height:0!important;width:auto!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(1){background:var(--ro5-tanne)!important;border:1.5px solid var(--ro5-tanne)!important;color:#fff!important;padding:.85rem 1.5rem!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(1):hover{background:var(--ro5-tanne-dd)!important;border-color:var(--ro5-tanne-dd)!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(2){background:transparent!important;border:1.5px solid var(--ro5-tanne)!important;color:var(--ro5-tanne)!important;padding:.85rem 1.5rem!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(2):hover{background:var(--ro5-tanne)!important;color:#fff!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(n+3){background:transparent!important;border:0!important;padding:.3rem 0!important;color:var(--ro5-tanne)!important;border-radius:0!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(n+3)::after{content:" ›"}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(n+3):hover{text-decoration:underline!important;text-underline-offset:.18em}
/* Ladenfoto als Buehne */
html body.ro5 #main-container .ro-home .ro-hero-inner::after{
  content:"";grid-area:stage;display:block;width:100%;aspect-ratio:2.35/1;margin-top:clamp(2rem,4vw,3rem);border-radius:var(--ro5-r3);
  background:var(--ro5-creme) url("img/hero-laden-2000.webp") center 55%/cover no-repeat}
/* Vertrauens-Punkte unter dem Foto */
html body.ro5 #main-container .ro-home .ro-hero .ro-trust{grid-area:trust;display:flex!important;flex-wrap:wrap;gap:.5rem 1.6rem!important;margin:1.2rem 0 0!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-trust div{background:transparent!important;border:0!important;padding:0!important;color:var(--ro5-ink-2)!important;font-weight:500!important;font-size:.95rem!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-trust div::before{content:"";display:inline-block;width:.45rem;height:.45rem;border-radius:50%;background:var(--ro5-gold);margin-right:.55rem;vertical-align:.12em}
/* Schnellwahl-Karten: nicht mehr ins Bild ziehen */
html body.ro5 #main-container .ro-home .ro-quick{margin-top:0!important}
@media (max-width:860px){
  html body.ro5 #main-container .ro-home .ro-hero-inner{grid-template-columns:1fr;grid-template-areas:"kicker" "title" "lead" "lead2" "actions" "stage" "trust"}
  html body.ro5 #main-container .ro-home .ro-hero .ro-hero-title{margin-bottom:1rem!important}
  html body.ro5 #main-container .ro-home .ro-hero-inner::after{aspect-ratio:4/3;background-image:url("img/hero-laden-m-900.webp")}
  html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(-n+2){width:100%!important;justify-content:center}
}
@media (min-width:861px){html body.ro5 #main-container .ro-home .ro-hero-inner{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}
html body.ro5 #main-container .ro-home .ro-hero .ro-hero-title{font-size:clamp(2.1rem,3.2vw,3rem)!important;overflow-wrap:normal!important;hyphens:manual!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(n+3)::after{content:"›";margin-left:.35em}

/* 17. Startseiten-Kopf: Feinschliff wie V3-Screenshot ---------------------- */
html body.ro5 #main-container .ro-home .ro-hero-inner{grid-template-areas:"kicker ." "title lead" "title actions" "stage stage" "trust trust"!important;align-items:start}
@media (max-width:860px){html body.ro5 #main-container .ro-home .ro-hero-inner{grid-template-areas:"kicker" "title" "lead" "actions" "stage" "trust"!important}}
html body.ro5 #main-container .ro-home .ro-hero .ro-hero-title{font-size:clamp(2.4rem,5vw,4.6rem)!important;letter-spacing:-.035em!important;line-height:1.02!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-kicker{align-self:end}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions{gap:.6rem 1.6rem!important;margin-top:1.4rem!important}
/* zweiter Button als Textlink mit Pfeil */
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(2){background:transparent!important;border:0!important;padding:.3rem 0!important;color:var(--ro5-tanne)!important;border-radius:0!important;width:auto!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(2)::after{content:"›";margin-left:.4em}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(2):hover{background:transparent!important;color:var(--ro5-tanne-dd)!important;text-decoration:underline!important;text-underline-offset:.18em}
html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(1){padding:.95rem 1.7rem!important;font-size:1.05rem!important}
/* Bild breiter als die Textspalte */
@media (min-width:861px){
  html body.ro5 #main-container .ro-home .ro-hero-inner::after{width:calc(100% + clamp(0px,9vw,160px));margin-left:calc(clamp(0px,9vw,160px) / -2);aspect-ratio:2/1}
}
/* Faktenzeile */
html body.ro5 #main-container .ro-home .ro-hero .ro-facts{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 2rem!important;margin-top:clamp(2rem,4vw,3rem)!important;padding-top:1.6rem;border-top:1px solid var(--ro5-line)}
html body.ro5 #main-container .ro-home .ro-hero .ro-facts div{display:flex;flex-direction:column;gap:.2rem;font-size:.95rem!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-facts div::before{display:none!important}
html body.ro5 #main-container .ro-home .ro-hero .ro-facts strong{color:var(--ro5-ink);font-weight:600}
html body.ro5 #main-container .ro-home .ro-hero .ro-facts span{color:var(--ro5-ink-2)}
@media (max-width:860px){html body.ro5 #main-container .ro-home .ro-hero .ro-facts{grid-template-columns:1fr 1fr}html body.ro5 #main-container .ro-home .ro-hero .ro-actions a:nth-child(2){width:auto!important}}

/* 18. Fuss wie V3 ------------------------------------------------------------ */
html body.ro5 #footer.ct-footer{display:none!important}
html body.ro5 #main-container .entry-content .ro-footer{display:none!important}
.ro5-ftr{background:var(--ro5-tanne-dd);color:#d9cfbb;font-family:var(--ro5-font);font-size:.95rem;line-height:1.55;padding:clamp(3rem,6vw,4.5rem) 0 2rem}
.ro5-ftr *{box-sizing:border-box}
.ro5-ftr__in{width:min(1200px,100% - 2.5rem);margin-inline:auto}
.ro5-ftr a{color:#f4eee3;text-decoration:none}
.ro5-ftr a:hover{color:#fff;text-decoration:underline;text-underline-offset:.18em}
.ro5-ftr p{margin:0 0 .9rem}
.ro5-ftr__grid{display:grid;grid-template-columns:1.1fr 1.3fr 1fr 1fr;gap:2.5rem}
.ro5-ftr__brand img{height:62px;width:auto;margin-bottom:1rem;display:block}
.ro5-ftr__claim,.ro5-ftr__strong{color:#f4eee3;font-weight:600}
.ro5-ftr__h{color:#fff;font-weight:650;margin-bottom:1.1rem!important}
.ro5-ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}
.ro5-ftr__hours{margin:0 0 1rem}
.ro5-ftr__hours div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid rgba(236,225,205,.16)}
.ro5-ftr__hours dt{color:#f4eee3}.ro5-ftr__hours dd{margin:0;text-align:right}
.ro5-ftr__bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(236,225,205,.16)}
.ro5-ftr__social{display:flex;flex-wrap:wrap;gap:1.25rem}
.ro5-ftr__legal{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;font-size:.85rem;color:#b9ae98}
.ro5-ftr__legal a{color:#f4eee3}
.ro5-ftr :focus-visible{outline:3px solid #ece1cd;outline-offset:3px;border-radius:4px}
@media (max-width:980px){.ro5-ftr__grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.ro5-ftr__grid{grid-template-columns:1fr;gap:2rem}.ro5-ftr__in{width:min(100% - 2rem,1200px)}}
.ro5-ftr__hours dt{font-weight:400}

/* 19. Startseite: "Worum geht es bei dir?" und Winterangebote wie V3 ---------- */
.ro5-sec{padding:clamp(3.5rem,8vw,6.5rem) 0;font-family:var(--ro5-font);color:var(--ro5-ink)}
.ro5-sec *{box-sizing:border-box}
.ro5-wrap{width:min(1200px,100% - 2.5rem);margin-inline:auto}
html body.ro5 #main-container .ro5-sec h2{font-size:clamp(2rem,4.2vw,3rem)!important;font-weight:650!important;letter-spacing:-.028em!important;line-height:1.08!important;margin:0 0 .9rem!important;color:var(--ro5-ink)!important}
.ro5-lead{font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.5;color:var(--ro5-ink-2);max-width:40rem;margin:0 0 clamp(2rem,4vw,3rem)}
.ro5-paths__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
html body.ro5 #main-container a.ro5-path{display:flex;flex-direction:column;background:#fff;border-radius:var(--ro5-r3);overflow:hidden;text-decoration:none!important;color:var(--ro5-ink);box-shadow:var(--ro5-shadow);transition:transform .18s,box-shadow .18s}
html body.ro5 #main-container a.ro5-path:hover{transform:translateY(-2px);box-shadow:0 2px 4px rgba(50,46,41,.06),0 18px 40px rgba(50,46,41,.12)}
.ro5-path img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--ro5-creme)}
.ro5-path__body{display:flex;flex-direction:column;padding:1.4rem 1.5rem 1.6rem;flex:1}
.ro5-path__tag{font-size:.85rem;font-weight:600;color:var(--ro5-gold-ink);margin-bottom:.35rem}
.ro5-path__h{font-size:1.45rem;font-weight:650;letter-spacing:-.02em;line-height:1.15;margin-bottom:.5rem;color:var(--ro5-ink)}
.ro5-path__p{color:var(--ro5-ink-2);line-height:1.6;margin-bottom:1.2rem}
.ro5-path__more,.ro5-rose__more{margin-top:auto;font-weight:600;color:var(--ro5-tanne)}
.ro5-path__more::after,.ro5-rose__more::after,.ro5-fine a::after{content:"›";margin-left:.4em}
html body.ro5 #main-container a.ro5-rose{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;margin-top:1.25rem;padding:1.2rem 1.5rem;border:1px solid var(--ro5-line);border-radius:var(--ro5-r2);background:#fff;color:var(--ro5-ink);text-decoration:none!important}
html body.ro5 #main-container a.ro5-rose:hover{border-color:var(--ro5-tanne)}
.ro5-rose__more{white-space:nowrap}
.ro5-winter{background:var(--ro5-creme-2)}
.ro5-winter__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.ro5-offer{background:#fff;border-radius:var(--ro5-r3);padding:clamp(1.5rem,2.4vw,2rem);display:flex;flex-direction:column}
html body.ro5 #main-container .ro5-offer h3{font-size:1.3rem!important;font-weight:650!important;margin:0 0 .4rem!important;color:var(--ro5-ink)!important}
.ro5-offer p{margin:0 0 1rem;line-height:1.6}
.ro5-offer__price{font-size:2.3rem!important;font-weight:650;letter-spacing:-.025em;line-height:1.05;margin:0 0 .3rem!important}
.ro5-offer__meta{font-size:.95rem;color:var(--ro5-ink-2)}
html body.ro5 #main-container a.ro5-offer__btn{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;min-height:2.875rem;padding:.7rem 1.4rem;border-radius:999px;border:1.5px solid var(--ro5-tanne);color:var(--ro5-tanne);font-weight:600;text-decoration:none}
html body.ro5 #main-container a.ro5-offer__btn:hover{background:var(--ro5-tanne);color:#fff}
.ro5-offer--dark{background:var(--ro5-tanne);color:var(--ro5-creme)}
html body.ro5 #main-container .ro5-offer--dark h3,.ro5-offer--dark .ro5-offer__price{color:var(--ro5-creme)!important}
.ro5-offer--dark .ro5-offer__meta{color:#d9cfbb}
html body.ro5 #main-container .ro5-offer--dark a.ro5-offer__btn{border-color:rgba(236,225,205,.6);color:var(--ro5-creme)}
html body.ro5 #main-container .ro5-offer--dark a.ro5-offer__btn:hover{background:var(--ro5-creme);color:var(--ro5-tanne-dd)}
.ro5-fine{margin-top:2rem;font-size:.95rem;color:var(--ro5-ink-2)}
html body.ro5 #main-container .ro5-fine a{color:var(--ro5-tanne);font-weight:600;text-decoration:none}
@media (max-width:900px){.ro5-paths__grid,.ro5-winter__grid{grid-template-columns:1fr}html body.ro5 #main-container a.ro5-rose{flex-direction:column;align-items:flex-start}}
@media (max-width:600px){.ro5-wrap{width:min(100% - 2rem,1200px)}}

/* 20. Ueber uns: Team ----------------------------------------------------------- */
.ro5-eyebrow{font-size:.9rem;font-weight:600;color:var(--ro5-tanne);margin:0 0 .8rem}
.ro5-team__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,2.5rem)}
.ro5-person{background:#fff;border-radius:var(--ro5-r3);overflow:hidden;box-shadow:var(--ro5-shadow);display:flex;flex-direction:column}
.ro5-person img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 25%;display:block;background:var(--ro5-creme)}
.ro5-person__body{padding:1.5rem 1.6rem 1.8rem}
html body.ro5 #main-container .ro5-person h3{font-size:1.5rem!important;font-weight:650!important;margin:0 0 .2rem!important;color:var(--ro5-ink)!important}
.ro5-person__role{color:var(--ro5-gold-ink);font-weight:600;margin:0 0 .8rem}
.ro5-person p{line-height:1.6;color:var(--ro5-ink-2)}
@media (max-width:760px){.ro5-team__grid{grid-template-columns:1fr}}

/* Mobil: Seitenname unter der Wortmarke ausblenden (steht schon im Logo) */
.ro5 header [data-device="mobile"] .site-title { display: none !important; }

/* Chat-Assistent als beschrifteter Button (das Emoji-Symbol wird von der Emoji-Filterung entfernt) und "Nach oben" darueber statt dahinter */
html body .chatbot-container{right:24px;bottom:24px}
html body .chatbot-container .chatbot-button{width:auto;height:52px;padding:0 1.25rem 0 1rem;border-radius:999px;display:inline-flex;align-items:center;gap:.55rem;font-size:0;line-height:1;background:#275657;box-shadow:0 6px 20px rgba(23,54,55,.28)}
html body .chatbot-container .chatbot-button::before{content:"";width:22px;height:22px;flex:none;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f0c977' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12z'/%3E%3Cpath d='M9 10h6M9 13.5h4'/%3E%3C/svg%3E")}
html body .chatbot-container .chatbot-button::after{content:"Assistent fragen";font:600 15px/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#fff;letter-spacing:0}
html body .chatbot-container .chatbot-button:hover{transform:none;background:#173637}
html body:has(.chatbot-container) .ct-back-to-top{bottom:92px!important;right:24px!important;left:auto!important}
html body .ct-back-to-top{border-radius:50%!important;background:#fbf9f4!important;border:1px solid rgba(50,46,41,.18)!important;box-shadow:0 4px 14px rgba(50,46,41,.12)!important}
html body .ct-back-to-top .ct-icon{fill:#275657!important}
@media (max-width:520px){html body .chatbot-container{right:16px;bottom:16px}html body .chatbot-container .chatbot-button{height:48px;padding:0 1rem 0 .85rem}html body .chatbot-container .chatbot-button::after{content:"Assistent";font-size:14px}}
html body:has(.chatbot-window.open) .ct-back-to-top{opacity:0!important;pointer-events:none!important}
