/* =========================================================
   RR146 Stammseiten · helles Design nach dem Corporate Design
   der Royal Rangers (Leitfaden 1.3):
   - Grund: RR_beige-Tonwerte (Papier), Text RR_schwarz
   - Aktionsfarbe: RR_blau (Buttons, Links, Kopfleiste)
   - RR_gelb sparsam: Streifen über dem Menü, Textmarker, Pille "Kontakt"
   - Schrift: Libre Franklin (freie Alternative zu Franklin Gothic URW)
   - Formen: Buttons als Pille, Karten/Bilder 20px, Eingabefelder 12px
   Die Seiten bestehen aus Divi-Modulen; das Aussehen kommt über
   CSS-Klassen im Modul (z. B. rr146-karte, rr146-box, rr146-panel).
   ========================================================= */

@font-face{font-family:"Libre Franklin";src:url("fonts/libre-franklin-latin.woff2") format("woff2");
  font-weight:100 900;font-style:normal;font-display:swap;}
@font-face{font-family:"Libre Franklin";src:url("fonts/libre-franklin-latin-italic.woff2") format("woff2");
  font-weight:100 900;font-style:italic;font-display:swap;}

:root{
  /* CI-Farben (Leitfaden S. 19) */
  --rr-schwarz:#1A1A18;
  --rr-gelb:#FCE604;
  --rr-blau:#1A3282;        /* RR_blau, leicht abgedunkelt */
  --rr-beige:#AEA97D;
  /* daraus abgeleitet */
  --rr-papier:#F7F6F2;       /* RR_beige 10 % */
  --rr-sand:#EFEEE5;         /* RR_beige 20 % */
  --rr-karte:#FFFEFB;
  --rr-linie:#E3E1D2;        /* RR_beige 35 % */
  --rr-linie-stark:#CFCCB8;  /* RR_beige 55 % */
  --rr-text:var(--rr-schwarz);
  --rr-text-2:#55554F;       /* RR_schwarz 75 % */
  --rr-blau-tief:#132661;
  --rr-gelb-hell:#FEF8B3;    /* RR_gelb 30 % */
  --rr-schatten:0 24px 60px -24px rgba(26,50,130,.28);
  --rr-schatten-klein:0 10px 30px -14px rgba(26,50,130,.25);
  --rr-schrift:"Libre Franklin","Franklin Gothic URW","Franklin Gothic Medium",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --rr-rand:clamp(16px,4vw,40px);
  --rr-breite:1240px;
  --rr-r:20px;
  --rr-kurve:cubic-bezier(.16,1,.3,1);
}

/* ---------- Divi-Grundgerüst ---------- */
body.rr146-design{background:var(--rr-papier)!important;color:var(--rr-text);font-family:var(--rr-schrift);
  font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.rr146-design #page-container,.rr146-design #et-main-area,.rr146-design #main-content{background:transparent!important;}
.rr146-design .et_pb_section{background-color:transparent;}
.rr146-design #main-content .container:before{display:none;}
.rr146-design h1,.rr146-design h2,.rr146-design h3,.rr146-design h4,.rr146-design h5,.rr146-design h6{color:var(--rr-text);font-family:var(--rr-schrift);}
.rr146-design #main-footer{display:none;}
.rr146-design ::selection{background:var(--rr-gelb);color:var(--rr-schwarz);}

/* Kopfleiste (angelehnt an royal-rangers-hamburg.de): RR_blau, Emblem hängt über */
.rr146-design #main-header{background:var(--rr-blau)!important;border-top:0;
  box-shadow:0 8px 30px -18px rgba(19,38,97,.6)!important;}
.rr146-design #main-header .container{width:calc(100% - 2*var(--rr-rand));max-width:var(--rr-breite);}
.rr146-design #logo{max-height:none!important;height:84px;width:auto;transform:translateY(16px);
  filter:drop-shadow(0 8px 14px rgba(10,20,60,.35));transition:height .3s ease,transform .3s ease;}
.rr146-design .et-fixed-header #logo{height:62px;transform:translateY(12px);}
.rr146-design #et_top_search,.rr146-design #et_search_icon,.rr146-design .et_search_outer{display:none!important;}
.rr146-design #top-menu li{padding-right:30px;}
.rr146-design #top-menu li:last-child{padding-right:0;}
.rr146-design #top-menu li a{color:#fff!important;font-family:var(--rr-schrift);font-weight:700;text-transform:uppercase;
  letter-spacing:.09em;font-size:13px;opacity:1;position:relative;transition:color .2s ease;}
.rr146-design #top-menu li a::after{content:"";position:absolute;left:0;right:0;bottom:24px;height:3px;background:var(--rr-gelb);
  transform:scaleX(0);transform-origin:left;transition:transform .35s var(--rr-kurve);}
.rr146-design.et_header_style_left .et-fixed-header #top-menu li a::after{bottom:14px;}
.rr146-design #top-menu li a:hover{opacity:1;}
.rr146-design #top-menu li a:hover::after,
.rr146-design #top-menu li.current-menu-item>a::after,.rr146-design #top-menu li.current_page_item>a::after{transform:scaleX(1);}
.rr146-design .mobile_menu_bar:before{color:#fff!important;}
.rr146-design #et_mobile_nav_menu .et_mobile_menu{background:var(--rr-karte)!important;border-top:4px solid var(--rr-gelb)!important;
  border-radius:0 0 var(--rr-r) var(--rr-r);box-shadow:var(--rr-schatten);}
.rr146-design .et_mobile_menu li a{color:var(--rr-schwarz)!important;border-bottom:1px solid var(--rr-linie)!important;
  font-family:var(--rr-schrift);text-transform:uppercase;letter-spacing:.06em;font-weight:700;}
.rr146-design .et_mobile_menu li.current-menu-item>a{color:var(--rr-blau)!important;}
.rr146-design .et_mobile_menu li a:hover{background:var(--rr-sand)!important;opacity:1;}

/* ---------- Grundlagen für alle Divi-Module ---------- */
.rr146-design #page-container{color:var(--rr-text);}
.rr146-design .et_pb_section{padding:clamp(3.5rem,7vw,6rem) 0;}
.rr146-design .et_pb_row{width:calc(100% - 2*var(--rr-rand));max-width:var(--rr-breite);padding:0;}
.rr146-design .et_pb_row+.et_pb_row{margin-top:clamp(1.6rem,3vw,2.4rem);}
.rr146-design .et_pb_text{color:var(--rr-text);font-size:1.0625rem;line-height:1.65;}
.rr146-design .et_pb_text_inner p{padding-bottom:0;margin:0 0 1em;}
.rr146-design .et_pb_text_inner>*:last-child{margin-bottom:0;}
.rr146-design .et_pb_text_inner ul,.rr146-design .et_pb_text_inner ol{padding:0;margin:0;list-style:none;}
.rr146-design .et_pb_text h1,.rr146-design .et_pb_text h2,.rr146-design .et_pb_text h3{font-family:var(--rr-schrift);color:inherit;
  font-weight:800;text-transform:uppercase;letter-spacing:-.01em;padding:0;margin:0;text-wrap:balance;overflow-wrap:normal;word-break:normal;hyphens:manual;}
.rr146-design .et_pb_text h1{font-size:clamp(2.6rem,5.4vw,4.7rem);line-height:.98;margin-bottom:1.4rem;}
.rr146-design .et_pb_text h2{font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.04;margin-bottom:1.2rem;max-width:22ch;}
.rr146-design .et_pb_text h3{font-size:1.3rem;line-height:1.12;margin-bottom:.6rem;}
.rr146-design .et_pb_text a,.rr146-design .rr146-kontakt a,.rr146-design .rr146-leer a:not(.rr146-knopf){color:var(--rr-blau);
  text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;}
.rr146-design blockquote{margin:0;padding:0;border:0;}
.rr146-design mark{background:linear-gradient(transparent 60%,var(--rr-gelb) 60%,var(--rr-gelb) 92%,transparent 92%) no-repeat 0 0/100% 100%;
  color:inherit;padding:0 .06em;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
.rr146-design .rr146-lead{font-size:clamp(1.12rem,1.5vw,1.3rem)!important;line-height:1.5;color:var(--rr-text-2);max-width:40ch;}
.rr146-design .rr146-kicker{display:inline-flex;align-items:center;gap:.6rem;font-size:.78rem!important;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--rr-blau);margin-bottom:1.4rem!important;}
.rr146-design .rr146-kicker::before{content:"";width:28px;height:4px;border-radius:2px;background:var(--rr-gelb);}
.rr146-design .klein,.rr146-design .et_pb_text .klein{font-size:.92rem;color:var(--rr-text-2);}
.rr146-design .rr146-label,.rr146-design .et_pb_text h2.rr146-label{font-size:.78rem;letter-spacing:.16em;color:var(--rr-blau);margin-bottom:.8rem;}
.rr146-design .gross{font-size:clamp(1.45rem,2.2vw,1.85rem)!important;font-weight:800;line-height:1.15;margin-bottom:.2rem!important;}
.rr146-design .zeit{font-size:1.15rem!important;font-weight:600;color:var(--rr-blau);margin-bottom:1rem!important;font-variant-numeric:tabular-nums;}
.rr146-design .rr146-sand{background-color:var(--rr-sand)!important;}
.rr146-design .rr146-prosa .et_pb_text_inner>*,.rr146-design .rr146-prosa>*{max-width:68ch;}

/* Bilder-Module: runde Ecken, Schatten */
.rr146-design .et_pb_image .et_pb_image_wrap{display:block;border-radius:var(--rr-r);overflow:hidden;}
.rr146-design .et_pb_image img{width:100%;}

/* Karten-Modul (CSS-Klasse "rr146-karte") */
.rr146-design .rr146-karte{background:var(--rr-karte);border:1px solid var(--rr-linie);border-radius:var(--rr-r);
  padding:clamp(1.4rem,2.6vw,2rem)!important;}
.rr146-design .rr146-karte+.rr146-karte{margin-top:12px;}

/* Knöpfe (Links mit Klasse rr146-knopf im Text, Divi-Button-Modul) */
.rr146-design .rr146-knoepfe{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem 2rem;margin-top:2rem!important;}
.rr146-design a.rr146-knopf,.rr146-design .et_pb_button{display:inline-flex;align-items:center;gap:.7rem;background:var(--rr-blau)!important;color:#fff!important;
  font-family:var(--rr-schrift)!important;font-weight:700;font-size:.92rem!important;letter-spacing:.06em;text-transform:uppercase;text-decoration:none!important;
  padding:1rem 1.6rem!important;border:0!important;border-radius:999px!important;cursor:pointer;white-space:nowrap;line-height:1.2!important;
  box-shadow:var(--rr-schatten-klein);transition:background-color .2s ease,transform .25s var(--rr-kurve);}
.rr146-design a.rr146-knopf::after{content:"\2192";font-size:1.1em;line-height:1;transition:transform .25s var(--rr-kurve);}
.rr146-design .et_pb_button::after{display:none!important;}
.rr146-design a.rr146-knopf:hover,.rr146-design .et_pb_button:hover{background:var(--rr-blau-tief)!important;transform:translateY(-2px);}
.rr146-design a.rr146-knopf:hover::after{transform:translateX(4px);}
.rr146-design a.rr146-knopf:active{transform:scale(.98);}
.rr146-design a.rr146-knopf:focus-visible,.rr146-design a:focus-visible,.rr146-design button:focus-visible{outline:3px solid var(--rr-gelb);outline-offset:3px;}
.rr146-design a.rr146-link{font-weight:700;font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:var(--rr-schwarz)!important;
  text-decoration-color:var(--rr-gelb)!important;text-decoration-thickness:3px!important;}
.rr146-design a.rr146-link:hover{color:var(--rr-blau)!important;}

/* ---------- Hero ---------- */
.rr146-design .rr146-hero{padding:clamp(4rem,7vw,6rem) 0 0;overflow:hidden;}
.rr146-design .rr146-hero-raster{display:flex;align-items:center;}
.rr146-design .rr146-hero-text h1{max-width:13ch;}
.rr146-design .rr146-stapel{position:relative;aspect-ratio:1/.92;}
.rr146-design .rr146-stapel .et_pb_image{position:absolute!important;margin:0!important;z-index:1;}
.rr146-design .rr146-stapel .et_pb_image .et_pb_image_wrap{height:100%;box-shadow:var(--rr-schatten);}
.rr146-design .rr146-stapel .et_pb_image img{height:100%;object-fit:cover;}
.rr146-design .rr146-stapel .s1{left:18%;top:0;width:46%;aspect-ratio:4/5;}
.rr146-design .rr146-stapel .s1 .et_pb_image_wrap{border-radius:28px;}
.rr146-design .rr146-stapel .s2{right:0;top:22%;width:50%;aspect-ratio:4/3;z-index:2;}
.rr146-design .rr146-stapel .s3{left:0;bottom:4%;width:32%;aspect-ratio:4/5;z-index:3;}
.rr146-design .rr146-stapel .s2 .et_pb_image_wrap,.rr146-design .rr146-stapel .s3 .et_pb_image_wrap{border:8px solid var(--rr-papier);}
.rr146-design .rr146-stapel .s-claim{right:4%;bottom:0;width:44%;z-index:4;}
.rr146-design .rr146-stapel .s-claim .et_pb_image_wrap{border-radius:0;box-shadow:none;overflow:visible;height:auto;}
.rr146-design .rr146-stapel .s-claim img{height:auto;object-fit:contain;}

.rr146-design .rr146-infokarte-zeile{position:relative;z-index:5;margin-top:clamp(2rem,4vw,3rem)!important;}
.rr146-infokarte{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--rr-karte);border-radius:24px;
  box-shadow:var(--rr-schatten);border:1px solid var(--rr-linie);font-family:var(--rr-schrift);}
.rr146-infokarte>div{padding:1.7rem 2rem 1.9rem;display:flex;flex-direction:column;gap:.3rem;}
.rr146-infokarte>div+div{border-left:1px solid var(--rr-linie);}
.rr146-infokarte .lbl{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--rr-blau);}
.rr146-infokarte strong{font-size:1.15rem;font-weight:700;line-height:1.3;color:var(--rr-text);}
.rr146-infokarte span:not(.lbl){color:var(--rr-text-2);font-size:.97rem;}
.rr146-infokarte a{font-size:.92rem;font-weight:700;margin-top:.35rem;align-self:flex-start;color:var(--rr-blau);text-decoration:underline;
  text-underline-offset:4px;text-decoration-thickness:2px;}

/* Wir sind ...: Text links, Bild mit rundem Siegel rechts */
.rr146-design .rr146-wir-zeile{display:flex;align-items:center;}
.rr146-design .rr146-wir-bildspalte{position:relative;}
.rr146-design .rr146-wir-bild{margin:0!important;}
.rr146-design .rr146-wir-bild .et_pb_image_wrap{border-radius:28px;box-shadow:var(--rr-schatten);}
.rr146-design .rr146-wir-bild img{aspect-ratio:auto;height:auto;}
.rr146-design .rr146-siegel{position:absolute!important;left:-44px;bottom:36px;width:138px;height:138px;margin:0!important;border-radius:50%;
  background:var(--rr-gelb);color:var(--rr-schwarz);display:flex;align-items:center;justify-content:center;text-align:center;
  transform:rotate(-9deg);box-shadow:0 14px 30px -12px rgba(26,26,24,.45);z-index:2;}
.rr146-design .rr146-siegel p{margin:0!important;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;line-height:1.15;}
.rr146-design .rr146-siegel strong{display:block;font-size:2.7rem;line-height:.95;letter-spacing:-.02em;}
.rr146-design .rr146-wir{padding-top:clamp(5rem,10vw,8.5rem);}
.rr146-design .rr146-statement{font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.38;font-weight:500;max-width:36ch;margin-bottom:2rem!important;}
.rr146-design .rr146-spalten .et_pb_text_inner{columns:2 300px;column-gap:clamp(2rem,5vw,4.5rem);color:var(--rr-text-2);max-width:980px;}
.rr146-design .rr146-spalten p{break-inside:avoid;}

/* Foto-Band */
.rr146-design .rr146-band-abschnitt{padding:0 0 clamp(4.5rem,9vw,7rem);}
.rr146-band{overflow:hidden;}
.rr146-band-spur{display:flex;width:max-content;}
.rr146-band figure{margin:0;padding-right:14px;flex:0 0 auto;}
.rr146-band img{height:clamp(190px,22vw,290px);width:auto;max-width:none;border-radius:var(--rr-r);object-fit:cover;display:block;}
.rr146-band figure:nth-child(even) img{margin-top:28px;}

/* Altersstufen-Akkordeon (Text-Module mit Hintergrundbild) */
.rr146-design .rr146-stufen-start{padding-top:0;}
.rr146-design .rr146-akkordeon{display:flex;gap:10px;height:clamp(440px,64vh,620px);width:100%!important;margin:0!important;}
.rr146-design .rr146-panel{position:relative;flex:1 1 0;min-width:0;margin:0!important;overflow:hidden;border-radius:var(--rr-r);
  background-color:var(--rr-schwarz);background-size:cover!important;background-position:center!important;
  color:#fff;cursor:pointer;transition:flex-grow .7s var(--rr-kurve);isolation:isolate;}
.rr146-design .rr146-panel.offen{flex-grow:3.3;}
.rr146-design .rr146-panel::before{content:"";position:absolute;inset:0;z-index:0;transition:background .6s ease;
  background:linear-gradient(to top,rgba(26,26,24,.92) 0%,rgba(26,26,24,.62) 45%,rgba(26,26,24,.25) 100%);}
.rr146-design .rr146-panel.offen::before{background:linear-gradient(to top,rgba(26,26,24,.9) 0%,rgba(26,26,24,.45) 40%,rgba(26,26,24,0) 72%);}
.rr146-design .rr146-panel .et_pb_text_inner{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;}
.rr146-design .rr146-panel .alter{font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--rr-gelb);margin:0 0 .35rem!important;}
.rr146-design .rr146-panel h3.name{color:#fff;font-size:1.02rem;line-height:1.05;white-space:nowrap;margin:0;}
.rr146-design .rr146-panel.offen h3.name{font-size:clamp(1.8rem,2.6vw,2.5rem);animation:rr146-einblenden .5s ease .3s both;}
.rr146-design .rr146-panel .panel-inhalt{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .6s var(--rr-kurve),opacity .4s ease;}
.rr146-design .rr146-panel .panel-inhalt>div{overflow:hidden;min-height:0;}
.rr146-design .rr146-panel.offen .panel-inhalt{grid-template-rows:1fr;opacity:1;transition-delay:.15s;}
.rr146-design .rr146-panel .panel-inhalt p{max-width:42ch;margin:.8rem 0 0!important;color:#fff;}
.rr146-design .rr146-panel a.rr146-link{color:#fff!important;font-size:.85rem;}
@keyframes rr146-einblenden{from{opacity:0;}to{opacity:1;}}

/* Programm-Bento (5 Text-Module, Bilder als Modul-Hintergrund) */
.rr146-design .rr146-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(250px,auto);gap:12px;width:100%!important;margin:0!important;}
.rr146-design .rr146-bento .zelle{position:relative;margin:0!important;overflow:hidden;isolation:isolate;background-color:var(--rr-karte);
  border:1px solid var(--rr-linie);border-radius:var(--rr-r);background-size:cover!important;background-position:center!important;
  padding:clamp(1.4rem,2.4vw,2.2rem);display:flex;flex-direction:column;justify-content:flex-end;}
.rr146-design .rr146-bento .zelle .et_pb_text_inner{position:relative;z-index:1;}
.rr146-design .rr146-bento .zelle.mit-bild{border:0;color:#fff;}
.rr146-design .rr146-bento .zelle.mit-bild::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(to top,rgba(26,26,24,.88),rgba(26,26,24,.08) 62%);}
.rr146-design .rr146-bento .zelle p{color:var(--rr-text-2);max-width:44ch;}
.rr146-design .rr146-bento .zelle.mit-bild p{color:rgba(255,255,255,.92);}
.rr146-design .rr146-bento .z1{grid-column:1/8;grid-row:1/3;min-height:540px;}
.rr146-design .rr146-bento .z1 h3{font-size:clamp(1.6rem,2.8vw,2.4rem);}
.rr146-design .rr146-bento .z2{grid-column:8/13;grid-row:1;justify-content:flex-start;}
.rr146-design .rr146-bento .z2::after{content:"";position:absolute;right:-48px;bottom:-58px;width:130px;height:130px;border-radius:50%;
  border:12px solid var(--rr-gelb);z-index:0;}
.rr146-design .rr146-bento .z2 .et_pb_text_inner{padding-right:3.5rem;}
.rr146-design .rr146-bento .z2.mit-bild{justify-content:flex-end;}
.rr146-design .rr146-bento .z2.mit-bild::after{display:none;}
.rr146-design .rr146-bento .z2.mit-bild .et_pb_text_inner{padding-right:0;}
.rr146-design .rr146-bento .z2 h3,.rr146-design .rr146-bento .z5 h3{font-size:clamp(1.5rem,2.4vw,2.1rem);}
.rr146-design .rr146-bento .z3{grid-column:8/13;grid-row:2;}
.rr146-design .rr146-bento .z4{grid-column:1/6;grid-row:3;}
.rr146-design .rr146-bento .z5{grid-column:6/13;grid-row:3;background-color:var(--rr-blau);border:0;color:#fff;}
.rr146-design .rr146-bento .z5 p{color:rgba(255,255,255,.9);font-size:1.1rem;}

/* Videos */
.rr146-design .rr146-film-zeile{display:flex;align-items:center;}
.rr146-design .rr146-film-zeile h2{font-size:clamp(1.6rem,2.6vw,2.3rem);}
.rr146-design .rr146-filme .et_pb_code{margin-bottom:1rem!important;}
.rr146-video{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;margin:0;overflow:hidden;cursor:pointer;
  background:var(--rr-schwarz);color:#fff;font-family:var(--rr-schrift);isolation:isolate;border-radius:28px;box-shadow:var(--rr-schatten);}
.rr146-video .vbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.2s var(--rr-kurve);}
.rr146-video .scrim{position:absolute;inset:0;z-index:-1;background:rgba(26,26,24,.35);}
.rr146-video .play{position:absolute;left:50%;top:50%;width:96px;height:96px;transform:translate(-50%,-50%);border-radius:50%;
  background:var(--rr-gelb);color:var(--rr-schwarz);display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 0 12px rgba(252,230,4,.25);transition:transform .3s var(--rr-kurve),box-shadow .3s ease;}
.rr146-video .play svg{margin-left:4px;}
.rr146-video:hover .play{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 0 0 18px rgba(252,230,4,.22);}
.rr146-video:hover .vbg{transform:scale(1.03);}
.rr146-video .vhinweis{position:absolute;left:1.4rem;bottom:1.1rem;right:1.4rem;font-size:.8rem;color:rgba(255,255,255,.85);text-align:left;}
.rr146-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* Goldene Regel (Abschnitt mit Hintergrundbild) */
.rr146-design .rr146-regel{position:relative;isolation:isolate;padding:clamp(7rem,15vw,12rem) 0;text-align:center;background-size:cover!important;background-position:center!important;}
.rr146-design .rr146-regel::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(rgba(26,26,24,.78),rgba(26,26,24,.45) 45%,rgba(26,26,24,.8));}
.rr146-design .rr146-regel .et_pb_row{position:relative;z-index:1;}
.rr146-design .rr146-regel .et_pb_text{color:#fff;}
.rr146-design .rr146-regel .rr146-kicker{color:#fff;}
.rr146-design .rr146-regel blockquote p{font-size:clamp(1.9rem,4.4vw,3.6rem)!important;line-height:1.06;font-weight:800;text-transform:uppercase;
  max-width:22ch;margin:0 auto 1.6rem!important;text-wrap:balance;color:#fff;}
.rr146-design .rr146-regel cite{font-style:normal;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.9rem;color:var(--rr-gelb);}

/* Mitarbeiten: Karte mit Rahmen-Motiv über unscharfem Foto */
.rr146-design .rr146-mitarbeit{position:relative;isolation:isolate;padding:clamp(5rem,11vw,9rem) 0;background-size:cover!important;background-position:center!important;}
.rr146-design .rr146-mitarbeit::before{content:"";position:absolute;inset:0;z-index:0;background:rgba(26,26,24,.4);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.rr146-design .rr146-mitarbeit .et_pb_row{position:relative;z-index:1;}
.rr146-design .rr146-schmal{max-width:820px!important;}
.rr146-design .rr146-box{background:var(--rr-karte);border-radius:28px;outline:2px solid var(--rr-blau);outline-offset:-14px;
  padding:clamp(2.6rem,6vw,4.6rem)!important;text-align:center;box-shadow:0 30px 80px -30px rgba(0,0,0,.55);}
.rr146-design .rr146-box h2{margin-left:auto!important;margin-right:auto!important;max-width:16ch;}
.rr146-design .rr146-box p{max-width:58ch;margin-left:auto!important;margin-right:auto!important;color:var(--rr-text-2);}
.rr146-design .rr146-box .rr146-knoepfe{justify-content:center;}

/* Abschluss */
.rr146-design .rr146-schluss-titel h2{font-size:clamp(2.4rem,5.6vw,4.6rem);line-height:.98;max-width:9ch;}
.rr146-design .rr146-fakten{margin:1.6rem 0 0;padding:0;}
.rr146-design .rr146-fakten>div{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem;padding:.95rem 0;border-top:1px solid var(--rr-linie-stark);}
.rr146-design .rr146-fakten>div:last-child{border-bottom:1px solid var(--rr-linie-stark);}
.rr146-design .rr146-fakten dt{font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--rr-blau);padding-top:.25rem;}
.rr146-design .rr146-fakten dd{margin:0;font-weight:600;}

/* ---------- Unterseiten ---------- */
.rr146-design .rr146-kopf{padding:clamp(4rem,8vw,6.5rem) 0 clamp(2rem,4vw,3rem);}
.rr146-design .rr146-kopf h1{font-size:clamp(2.8rem,7vw,5.4rem);}
.rr146-design .rr146-kopf-zeile{display:flex;align-items:flex-end;}
.rr146-design .rr146-kopf-bild .et_pb_image_wrap{border-radius:28px;box-shadow:var(--rr-schatten);}
.rr146-design .rr146-kopf-bild img{aspect-ratio:4/3;object-fit:cover;}

.rr146-design .rr146-stufen-seite .rr146-stufe-bild{margin-bottom:1.4rem!important;}
.rr146-design .rr146-stufen-seite .rr146-stufe-bild .et_pb_image_wrap{box-shadow:var(--rr-schatten-klein);}
.rr146-design .rr146-stufen-seite .rr146-stufe-bild img{aspect-ratio:4/3;object-fit:cover;}
.rr146-design .rr146-stufe{scroll-margin-top:130px;margin-bottom:clamp(3rem,6vw,5rem)!important;}
.rr146-design .rr146-stufe .alter{font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--rr-blau);margin-bottom:.4rem!important;}
.rr146-design .rr146-stufe p:not(.alter){color:var(--rr-text-2);}
.rr146-design .rr146-versetzt{margin-top:clamp(0rem,8vw,7rem)!important;}
.rr146-design .rr146-zwei h2{font-size:clamp(1.5rem,2.4vw,2rem);}
.rr146-design .rr146-zwei p{color:var(--rr-text-2);}

.rr146-design .rr146-punkte-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.rr146-design .rr146-punkte-raster li{padding:1.5rem 1.4rem 1.7rem;background:var(--rr-karte);border-radius:var(--rr-r);border:1px solid var(--rr-linie);
  display:flex;flex-direction:column;gap:.4rem;transition:transform .3s var(--rr-kurve),box-shadow .3s ease;}
.rr146-design .rr146-punkte-raster li:hover{transform:translateY(-3px);box-shadow:var(--rr-schatten-klein);}
.rr146-design .rr146-punkte-raster strong{font-size:clamp(1.25rem,2vw,1.6rem);font-weight:800;text-transform:uppercase;line-height:1.05;color:var(--rr-blau);}
.rr146-design .rr146-punkte-raster span{color:var(--rr-text-2);font-size:.98rem;}

.rr146-design .rr146-leitung-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.6rem 3rem;}
.rr146-design .rr146-person{display:flex;align-items:center;gap:1.3rem;}
.rr146-design .rr146-person .avatar{width:92px;height:92px;flex:0 0 92px;border-radius:50%;background:var(--rr-blau);color:#fff;display:flex;
  align-items:center;justify-content:center;font-weight:800;font-size:1.6rem;box-shadow:0 0 0 5px var(--rr-gelb);}
.rr146-design .rr146-person h3{margin-bottom:.2rem!important;}
.rr146-design .rr146-person .rolle{color:var(--rr-text-2);margin:0!important;}

.rr146-design .rr146-galerie-divi .et_pb_gallery_image{border-radius:14px;overflow:hidden;}
.rr146-design .rr146-galerie-divi .et_overlay{background:rgba(26,50,130,.35);border:0;}
.rr146-design .rr146-galerie-divi .et_overlay:before{color:#fff!important;}

.rr146-design .rr146-regeltreff{background:var(--rr-karte);border-radius:var(--rr-r);border-top:6px solid var(--rr-gelb);padding:2rem!important;
  box-shadow:var(--rr-schatten-klein);}
.rr146-design .rr146-regeltreff h2{font-size:.78rem;letter-spacing:.16em;color:var(--rr-blau);margin-bottom:1rem;}
.rr146-termine{list-style:none;margin:0;padding:0;font-family:var(--rr-schrift);}
.rr146-design .rr146-termine li{list-style:none!important;margin-left:0;}
.rr146-termine li.monat{font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--rr-blau);padding:2.4rem 0 .8rem;}
.rr146-termine li.monat:first-child{padding-top:0;}
.rr146-termine li.termin{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:1rem;align-items:baseline;padding:1.05rem 1rem;
  border-top:1px solid var(--rr-linie);border-radius:12px;}
.rr146-termine .tag{color:var(--rr-text-2);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;}
.rr146-termine .tag strong{display:inline-block;font-size:1.7rem;color:var(--rr-text);font-weight:800;margin-right:.4rem;letter-spacing:0;font-variant-numeric:tabular-nums;}
.rr146-termine .was{font-weight:600;color:var(--rr-text);}
.rr146-termine .was em{display:block;font-style:normal;font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--rr-blau);margin-top:.25rem;}
.rr146-termine li.naechster{background:var(--rr-gelb-hell);border-top-color:transparent;}
.rr146-termine li.aktion .was{color:var(--rr-blau);}
.rr146-termine li.aktion{box-shadow:inset 4px 0 0 var(--rr-blau);}
.rr146-termine li.ferien{background:var(--rr-sand);border-top-color:transparent;margin:.3rem 0;}
.rr146-termine li.ferien .tag strong{font-size:1.15rem;}
.rr146-termine li.ferien .was,.rr146-termine li.ferien .was em{color:var(--rr-text-2);}
.rr146-termine li.notiz{color:var(--rr-text-2);font-style:italic;padding:1rem;border-top:1px dashed var(--rr-linie-stark);}
.rr146-leer{border:2px dashed var(--rr-linie-stark);border-radius:var(--rr-r);padding:clamp(1.8rem,4vw,3rem);background:var(--rr-karte);font-family:var(--rr-schrift);}
.rr146-leer h2{font-size:clamp(1.4rem,2.4vw,2rem)!important;font-weight:800;text-transform:uppercase;margin:0 0 1rem;color:var(--rr-text);}
.rr146-leer p{color:var(--rr-text-2);max-width:48ch;margin:0 0 1.8rem;}

.rr146-design .rr146-weg-karte .nr{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:var(--rr-gelb);
  font-size:1.6rem!important;font-weight:800;line-height:1;color:var(--rr-schwarz);margin-bottom:1.4rem!important;}
.rr146-design .rr146-weg-karte p:not(.nr){color:var(--rr-text-2);}
.rr146-design .rr146-weg .et_pb_column{display:flex;}
.rr146-design .rr146-weg .rr146-karte{width:100%;}

/* Kontaktformular */
.rr146-formular{background:var(--rr-karte);border-radius:28px;border:1px solid var(--rr-linie);padding:clamp(1.6rem,4vw,2.8rem);
  box-shadow:var(--rr-schatten-klein);font-family:var(--rr-schrift);color:var(--rr-text);}
.rr146-formular .fzwei{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.4rem;}
.rr146-formular .feld{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.4rem;}
.rr146-formular label{font-weight:600;color:var(--rr-text);font-size:.98rem;}
.rr146-formular input[type=text],.rr146-formular input[type=email],.rr146-formular input[type=tel],
.rr146-formular select,.rr146-formular textarea{width:100%;background:var(--rr-papier)!important;color:var(--rr-text)!important;
  border:1px solid var(--rr-linie-stark)!important;border-radius:12px!important;padding:.85rem 1rem!important;font-family:var(--rr-schrift)!important;
  font-size:1rem!important;line-height:1.4;box-shadow:none;}
.rr146-formular input:focus,.rr146-formular select:focus,.rr146-formular textarea:focus{outline:3px solid rgba(26,50,130,.25);outline-offset:0;
  border-color:var(--rr-blau)!important;background:#fff!important;}
.rr146-formular small{color:var(--rr-text-2);font-size:.86rem;}
.rr146-formular .ds{display:flex;gap:.8rem;align-items:flex-start;font-weight:400;color:var(--rr-text-2);}
.rr146-formular .ds input{margin-top:.3rem;width:20px;height:20px;flex:0 0 20px;accent-color:var(--rr-blau);}
.rr146-formular .netz{position:absolute;left:-9999px;top:-9999px;}
.rr146-formular .pflicht{font-size:.86rem;color:var(--rr-text-2);margin-top:1rem;}
.rr146-formular button.rr146-knopf{display:inline-flex;align-items:center;gap:.7rem;background:var(--rr-blau);color:#fff;font-family:var(--rr-schrift);
  font-weight:700;font-size:.92rem;letter-spacing:.06em;text-transform:uppercase;padding:1rem 1.6rem;border:0;border-radius:999px;cursor:pointer;}
.rr146-formular button.rr146-knopf:hover{background:var(--rr-blau-tief);}
.rr146-meldung{padding:1.1rem 1.3rem;margin-bottom:1.6rem;border-left:4px solid;border-radius:12px;font-family:var(--rr-schrift);}
.rr146-meldung.gut{border-color:#3E7C34;background:#E7F2E4;color:#24481F;}
.rr146-meldung.schlecht{border-color:#B3261E;background:#FBE9E7;color:#7A1A14;}
.rr146-hinweis{padding:1rem;border:2px dashed var(--rr-linie-stark);border-radius:12px;}

/* Rechtstexte */
.rr146-design .rr146-recht h2{font-size:1.25rem;margin:2.6rem 0 .8rem;max-width:none;}
.rr146-design .rr146-recht h2:first-child{margin-top:0;}
.rr146-design .rr146-recht p{color:var(--rr-text-2);}

/* ---------- Fußbereich (RR_blau) ---------- */
.rr146-fuss{background:var(--rr-blau);border-top:5px solid var(--rr-gelb);color:rgba(255,255,255,.82);font-family:var(--rr-schrift);
  padding:clamp(3.5rem,7vw,5.5rem) 0 2rem;font-size:.98rem;line-height:1.6;}
.rr146-fuss .rr146-rahmen{width:calc(100% - 2*var(--rr-rand));max-width:var(--rr-breite);margin-inline:auto;}
.rr146-fuss-raster{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2.5rem;}
.rr146-fuss h2{font-family:var(--rr-schrift);font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rr-gelb);margin:0 0 1rem;padding:0;}
.rr146-fuss p{padding:0;margin:0;}
.rr146-fuss ul{list-style:none;margin:0;padding:0;}
.rr146-fuss li{margin:0 0 .45rem;}
.rr146-fuss a{color:#fff;text-decoration:none;transition:color .2s ease;}
.rr146-fuss a:hover{color:var(--rr-gelb);}
.rr146-fuss .fuss-marke{display:flex;flex-direction:column;align-items:flex-start;gap:1.8rem;}
.rr146-fuss .fuss-emblem{display:flex;align-items:center;gap:1.1rem;}
.rr146-fuss .fuss-emblem img{width:72px;height:auto;}
.rr146-fuss .fuss-emblem strong{color:#fff;text-transform:uppercase;font-weight:800;font-size:1.1rem;}
.rr146-fuss .fuss-claim{width:190px;height:auto;}
.rr146-fuss-unten{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3.5rem;padding-top:1.4rem;
  border-top:1px solid rgba(255,255,255,.2);font-size:.86rem;}
.rr146-fuss-unten a+a{margin-left:1.6rem;}

/* ---------- Lightbox ---------- */
.rr146-lightbox{position:fixed;inset:0;z-index:999999;background:rgba(26,26,24,.94);display:flex;align-items:center;justify-content:center;
  padding:4rem 1rem 1.5rem;cursor:zoom-out;}
.rr146-lightbox img{max-width:94vw;max-height:84vh;display:block;border-radius:14px;}
.rr146-lightbox button{position:absolute;top:1.2rem;right:1.2rem;width:48px;height:48px;border:2px solid #fff;border-radius:50%;
  background:transparent;color:#fff;font-size:1.6rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
body.rr146-lb-offen{overflow:hidden;}

/* ---------- Bewegung (nur wenn erwünscht) ---------- */
@media (prefers-reduced-motion:no-preference){
  /* Hero: Text steigt auf, Bilder fächern sich auf, Marker zieht durch, Claim schreibt sich */
  .rr146-design .rr146-hero-text .et_pb_text_inner>*{animation:rr146-auf .9s var(--rr-kurve) both;}
  .rr146-design .rr146-hero-text .et_pb_text_inner>*:nth-child(2){animation-delay:.08s;}
  .rr146-design .rr146-hero-text .et_pb_text_inner>*:nth-child(3){animation-delay:.16s;}
  .rr146-design .rr146-hero-text .et_pb_text_inner>*:nth-child(4){animation-delay:.24s;}
  .rr146-design .rr146-hero mark{background-size:0% 100%;animation:rr146-marker .9s var(--rr-kurve) .7s forwards;}
  .rr146-design .rr146-stapel .s1{animation:rr146-karte1 1.1s var(--rr-kurve) .1s both;}
  .rr146-design .rr146-stapel .s2{animation:rr146-karte2 1.1s var(--rr-kurve) .25s both;}
  .rr146-design .rr146-stapel .s3{animation:rr146-karte3 1.1s var(--rr-kurve) .4s both;}
  .rr146-design .rr146-stapel .s-claim{animation:rr146-schrift 1.2s var(--rr-kurve) .9s both;}
  .rr146-design .rr146-infokarte-zeile{animation:rr146-auf .9s var(--rr-kurve) .5s both;}
  .rr146-design .rr146-kopf .et_pb_module{animation:rr146-auf .9s var(--rr-kurve) both;}
  .rr146-design .rr146-kopf .et_pb_column+.et_pb_column .et_pb_module{animation-delay:.12s;}
  /* Foto-Band läuft langsam durch, Pause bei Hover */
  .rr146-band-spur{animation:rr146-band 70s linear infinite;}
  .rr146-band:hover .rr146-band-spur{animation-play-state:paused;}
  /* Scroll-Einblendungen (Klasse setzt das Skript) */
  .rr146-js .rr146-zeigen{opacity:0;transform:translateY(28px);transition:opacity .9s var(--rr-kurve),transform .9s var(--rr-kurve);}
  .rr146-js .rr146-zeigen.ist-da{opacity:1;transform:none;}
  /* Leichte Parallaxe im Bilder-Stapel (nur Browser mit Scroll-Animationen) */
  @supports (animation-timeline: scroll()){
    .rr146-design .rr146-stapel .s2 img,.rr146-design .rr146-stapel .s3 img{animation:rr146-parallax linear both;animation-timeline:scroll(root);animation-range:0 900px;}
  }
}
@keyframes rr146-auf{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:none;}}
@keyframes rr146-marker{to{background-size:100% 100%;}}
@keyframes rr146-karte1{from{opacity:0;transform:translateY(40px) scale(.96);}to{opacity:1;transform:none;}}
@keyframes rr146-karte2{from{opacity:0;transform:translate(40px,20px) rotate(4deg);}to{opacity:1;transform:none;}}
@keyframes rr146-karte3{from{opacity:0;transform:translate(-30px,30px) rotate(-5deg);}to{opacity:1;transform:none;}}
@keyframes rr146-schrift{from{opacity:0;clip-path:inset(0 100% 0 0);}to{opacity:1;clip-path:inset(0 0 0 0);}}
@keyframes rr146-band{to{transform:translateX(-50%);}}
@keyframes rr146-parallax{from{transform:scale(1.12) translateY(0);}to{transform:scale(1.12) translateY(-7%);}}
@media (prefers-reduced-motion:reduce){
  .rr146-design *{transition:none!important;animation:none!important;}
  .rr146-band{overflow-x:auto;}
}

/* ---------- Responsiv ---------- */
@media (max-width:980px){
  /* Handy/Tablet: kompaktere Abstände, im Hero nur ein Bild statt Stapel */
  .rr146-design .et_pb_section{padding:2.6rem 0;}
  .rr146-design .et_pb_row+.et_pb_row{margin-top:1.2rem;}
  .rr146-design .rr146-kopf{padding:2.4rem 0 1rem;}
  .rr146-design .rr146-wir{padding-top:2.6rem;}
  .rr146-design .rr146-regel{padding:4.5rem 0;}
  .rr146-design .rr146-mitarbeit{padding:3.2rem 0;}
  .rr146-design .rr146-stapel{aspect-ratio:auto!important;max-width:none!important;margin:1.6rem 0 0!important;}
  .rr146-design .rr146-stapel .s2,.rr146-design .rr146-stapel .s3,.rr146-design .rr146-stapel .s-claim{display:none!important;}
  .rr146-design .rr146-stapel .s1{position:relative!important;left:auto!important;top:auto!important;width:100%!important;aspect-ratio:4/3;animation:none!important;}
  .rr146-design .rr146-stapel .s1 .et_pb_image_wrap{border-radius:var(--rr-r)!important;}
  .rr146-design .rr146-stapel .s1 img{width:100%!important;height:100%!important;object-fit:cover;object-position:50% 70%;}
  .rr146-design .rr146-infokarte-zeile{margin-top:1.2rem!important;}
  .rr146-design #logo{height:58px;transform:none;}
  .rr146-design .rr146-hero{padding-top:2.5rem;}
  .rr146-design .rr146-hero-raster,.rr146-design .rr146-film-zeile,.rr146-design .rr146-kopf-zeile,.rr146-design .rr146-wir-zeile{display:block;}
  .rr146-design .rr146-wir-bildspalte{max-width:460px;margin:2.5rem auto 0!important;}
  .rr146-design .rr146-siegel{left:-10px;width:116px;height:116px;}
  .rr146-design .rr146-hero-text h1{max-width:none;}
  .rr146-design .rr146-stapel{max-width:560px;width:100%;margin:2rem auto 0!important;}
  .rr146-infokarte{grid-template-columns:minmax(0,1fr);}
  .rr146-infokarte>div{padding:1.3rem 1.5rem;}
  .rr146-infokarte>div+div{border-left:0;border-top:1px solid var(--rr-linie);}
  .rr146-design .rr146-akkordeon{flex-direction:column;height:auto;}
  .rr146-design .rr146-panel{min-height:380px;flex:none;}
  .rr146-design .rr146-panel h3.name{font-size:clamp(1.8rem,7vw,2.4rem)!important;white-space:normal;animation:none!important;}
  .rr146-design .rr146-panel .panel-inhalt{grid-template-rows:1fr;opacity:1;}
  .rr146-design .rr146-panel::before{background:linear-gradient(to top,rgba(26,26,24,.94) 0%,rgba(26,26,24,.75) 50%,rgba(26,26,24,.1) 100%)!important;}
  .rr146-design .rr146-bento{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;}
  .rr146-design .rr146-bento .zelle{grid-column:auto!important;grid-row:auto!important;min-height:280px;}
  .rr146-design .rr146-bento .z2,.rr146-design .rr146-bento .z5{min-height:0;}
  .rr146-design .rr146-versetzt{margin-top:0!important;}
  .rr146-design .rr146-punkte-raster{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rr146-fuss-raster{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rr146-design .rr146-kopf-bild{margin-top:2rem!important;}
}
@media (max-width:640px){
  .rr146-design .et_pb_text h2{max-width:none;}
  .rr146-formular .fzwei{grid-template-columns:minmax(0,1fr);}
  .rr146-design .rr146-punkte-raster{grid-template-columns:minmax(0,1fr);}
  .rr146-design .rr146-fakten>div{grid-template-columns:minmax(0,1fr);gap:.2rem;}
  .rr146-fuss-raster{grid-template-columns:minmax(0,1fr);}
  .rr146-design .rr146-stapel .s2 .et_pb_image_wrap,.rr146-design .rr146-stapel .s3 .et_pb_image_wrap{border-width:5px;}
  .rr146-design a.rr146-knopf{white-space:normal;}
  .rr146-band figure:nth-child(even) img{margin-top:16px;}
}
