/* RED Film Studio, Rental-Seite ARRI Alexa 35 (Entwurf 05.11.2026). Nur auf /rental/arri-alexa-35 eingebunden. */
.rr{--rot:#E31E24;--arri:#0060AC;--rot-tief:#9e1116;--hell:#EDE2E2;--text:rgba(237,226,226,.62);--leise:rgba(237,226,226,.38);--linie:rgba(255,255,255,.08);
  --kurve:cubic-bezier(.32,.72,0,1);--feder:cubic-bezier(.2,.9,.25,1.15);--titel:"Special Gothic",sans-serif;--fliess:"Rethink Sans",sans-serif;--serif:"Rl Madena",serif;
  font-family:var(--fliess);color:var(--text);background:#000;overflow-x:clip;width:100%;align-self:stretch}
.rr *,.rr *::before,.rr *::after{box-sizing:border-box}
.rr img{display:block;max-width:100%}
.rr p{margin:0}
.rr h1,.rr h2,.rr h3,.rr h4{margin:0;font-family:var(--titel);font-weight:800;text-transform:uppercase;color:var(--hell);letter-spacing:-.01em;line-height:.95}
.rr em{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;color:var(--hell)}
.rr a{color:inherit}

/* Bausteine */
.rr-pille{display:inline-flex;align-items:center;gap:.55rem;padding:.42rem .9rem;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--linie);
  font-size:.8rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--hell)}
.rr-punkt{width:7px;height:7px;border-radius:50%;background:var(--rot);box-shadow:0 0 0 0 rgba(227,30,36,.6);animation:rr-puls 2s var(--kurve) infinite}
@keyframes rr-puls{0%{box-shadow:0 0 0 0 rgba(227,30,36,.55)}70%{box-shadow:0 0 0 9px rgba(227,30,36,0)}100%{box-shadow:0 0 0 0 rgba(227,30,36,0)}}
.rr-h2{font-size:clamp(2.1rem,5.2vw,4.6rem);margin-top:1.4rem}
.rr-h2 em{display:inline-block;font-size:.78em;line-height:1.05;margin-top:.15em;color:var(--hell)}
.rr-schale{padding:6px;border-radius:2rem;background:rgba(255,255,255,.025);border:1px solid var(--linie)}
.rr-kern{border-radius:calc(2rem - 6px);background:linear-gradient(170deg,#141212 0%,#0a0909 100%);box-shadow:inset 0 1px 1px rgba(255,255,255,.07);overflow:hidden;position:relative}

.rr-knopf{display:inline-flex;align-items:center;gap:1rem;padding:.55rem .6rem .55rem 1.6rem;border-radius:999px;background:var(--rot);color:#fff !important;text-decoration:none;
  font-weight:500;font-size:1rem;letter-spacing:.01em;border:0;cursor:pointer;box-shadow:0 10px 40px -10px rgba(227,30,36,.7),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .5s var(--kurve),box-shadow .5s var(--kurve),background-color .4s var(--kurve)}
.rr-knopf:hover{background:#f0262c;box-shadow:0 16px 50px -10px rgba(227,30,36,.85),inset 0 1px 0 rgba(255,255,255,.3)}
.rr-knopf:active{transform:scale(.98)}
.rr-knopf__icon{width:2.4rem;height:2.4rem;border-radius:50%;background:rgba(0,0,0,.22);display:grid;place-items:center;transition:transform .5s var(--feder)}
.rr-knopf:hover .rr-knopf__icon{transform:translate(3px,-2px) scale(1.06)}
.rr-knopf svg,.rr-kal__pfeil svg,.rr-danke svg{width:1.05rem;height:1.05rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.rr-link{display:inline-block;color:var(--hell) !important;text-decoration:none;font-size:1rem;padding:.3rem 0;box-shadow:inset 0 -1px 0 0 var(--rot);transition:box-shadow .5s var(--kurve),color .3s}
.rr-link:hover{box-shadow:inset 0 -2.2em 0 0 var(--rot);color:#fff !important}

/* Einblenden beim Scrollen */
.rr-js .rr-auf{opacity:0;transform:translateY(46px);filter:blur(8px);transition:opacity 1.1s var(--kurve),transform 1.1s var(--kurve),filter 1.1s var(--kurve)}
.rr-js .rr-auf.ist-da{opacity:1;transform:none;filter:none}

/* 1 Kopf */
.rr-hero{position:relative;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9rem 4vw 9.5rem;overflow:hidden;isolation:isolate;
  background:radial-gradient(60% 50% at 50% 42%,rgba(227,30,36,.20),rgba(227,30,36,.04) 55%,transparent 75%),radial-gradient(120% 70% at 50% 120%,#1a0b0b 0%,#000 60%)}
.rr-staub{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.rr-lichtkegel{position:absolute;left:50%;top:-30%;width:120vmax;height:120vmax;transform:translateX(-50%);z-index:-1;pointer-events:none;opacity:.55;
  background:conic-gradient(from 180deg at 50% 0%,transparent 0deg,transparent 160deg,rgba(255,236,230,.07) 172deg,rgba(255,236,230,.13) 180deg,rgba(255,236,230,.07) 188deg,transparent 200deg,transparent 360deg);
  -webkit-mask-image:linear-gradient(#000 20%,transparent 75%);mask-image:linear-gradient(#000 20%,transparent 75%);animation:rr-kegel 14s var(--kurve) infinite alternate}
@keyframes rr-kegel{from{transform:translateX(-50%) rotate(-7deg)}to{transform:translateX(-50%) rotate(7deg)}}
.rr-sucher{position:absolute;inset:8.6rem 1.6rem 1.6rem;z-index:3;pointer-events:none}
.rr-ecke{position:absolute;width:34px;height:34px;border-color:rgba(237,226,226,.45);border-style:solid;border-width:0}
.rr-ecke--lo{left:0;top:0;border-left-width:1px;border-top-width:1px}
.rr-ecke--ro{right:0;top:0;border-right-width:1px;border-top-width:1px}
.rr-ecke--lu{left:0;bottom:0;border-left-width:1px;border-bottom-width:1px}
.rr-ecke--ru{right:0;bottom:0;border-right-width:1px;border-bottom-width:1px}
.rr-hud{position:absolute;left:1.4rem;right:1.4rem;display:flex;justify-content:space-between;gap:1rem;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:.86rem;letter-spacing:.16em;color:rgba(237,226,226,.55);text-transform:uppercase}
.rr-hud--oben{top:1.1rem}
.rr-hud--unten{bottom:1.1rem;justify-content:flex-start;gap:2.2rem}
.rr-rec{display:inline-flex;align-items:center;gap:.5rem;color:var(--hell)}
.rr-rec i{width:8px;height:8px;border-radius:50%;background:var(--rot);animation:rr-blink 1.2s steps(2,start) infinite}
@keyframes rr-blink{to{visibility:hidden}}
.rr-hero__buehne{position:relative;width:min(1200px,96vw);flex:0 0 auto;height:clamp(260px,44vh,580px);display:grid;place-items:center;perspective:1400px;z-index:1}
.rr-hero__marke{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:.06em;margin:0;font-family:var(--titel);font-weight:800;font-size:clamp(4.5rem,15.5vw,16rem);line-height:.8;letter-spacing:-.03em;white-space:nowrap;user-select:none;pointer-events:none}
.rr-hero__marke span{display:block;will-change:transform;transition:none}
.rr-hero__marke span:first-child{color:transparent;-webkit-text-stroke:1.5px rgba(237,226,226,.20)}
.rr-hero__marke span:last-child{background:linear-gradient(180deg,#3d95dc 0%,var(--arri) 45%,#00264a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.9}
.rr-kamera{position:relative;width:clamp(220px,min(30vw,46vh),460px);z-index:2;perspective:1400px;animation:rr-schweben 7s ease-in-out infinite;will-change:transform}
@keyframes rr-schweben{0%,100%{translate:0 0}50%{translate:0 -14px}}
.rr-kamera__kippen{transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));will-change:transform}
.rr-kamera__kippen img{width:100%;height:auto}
/* Roter Schein als Verlauf statt filter:drop-shadow: Safari schnitt den Schatten am schwebenden Bild als Kasten ab */
.rr-kamera::before{content:"";position:absolute;left:-14%;right:-4%;top:6%;bottom:2%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(227,30,36,.30),rgba(227,30,36,.12) 55%,transparent);filter:none}
.rr-kamera__schatten{position:absolute;left:12%;right:12%;bottom:-3%;height:9%;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.85),transparent);filter:blur(8px);z-index:-1;animation:rr-schatten 7s ease-in-out infinite}
@keyframes rr-schatten{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(.88);opacity:.6}}
.rr-flare{position:absolute;left:-10%;right:-10%;top:47%;height:2px;z-index:3;pointer-events:none;mix-blend-mode:screen;opacity:.75;
  background:linear-gradient(90deg,transparent 0%,rgba(227,30,36,0) 18%,rgba(255,90,95,.55) 40%,rgba(255,225,225,.95) 50%,rgba(255,90,95,.55) 60%,rgba(227,30,36,0) 82%,transparent 100%);
  box-shadow:0 0 18px 2px rgba(227,30,36,.45);animation:rr-flare 6s ease-in-out infinite;transform:translateX(var(--fx,0px))}
@keyframes rr-flare{0%,100%{opacity:.35;scale:.9 1}45%{opacity:.85;scale:1.05 1}}
.rr-hero__text{position:relative;z-index:4;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.95rem;margin-top:.4rem;max-width:62rem}
.rr-h1{font-size:clamp(1.9rem,3.3vw,3.1rem)}
.rr-hero__unter{max-width:36rem;font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,1.6vw,1.45rem);line-height:1.35;color:var(--hell);opacity:.85}
.rr-hero__knoepfe{display:flex;align-items:center;gap:1.8rem;flex-wrap:wrap;justify-content:center;margin-top:.6rem}
.rr-scrollhinweis{position:absolute;left:50%;bottom:2.6rem;width:1px;height:46px;background:rgba(237,226,226,.15);overflow:hidden;z-index:4;display:none}
.rr-scrollhinweis span{position:absolute;left:0;top:-50%;width:1px;height:50%;background:var(--rot);animation:rr-tropfen 2.2s var(--kurve) infinite}
@keyframes rr-tropfen{to{top:110%}}

/* 2 Zahlen */
.rr-zahlen{padding:3rem 4vw 7rem}
.rr-zahlen__reihe{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.rr-zahlen .rr-schale:nth-child(2){transition-delay:.08s}.rr-zahlen .rr-schale:nth-child(3){transition-delay:.16s}.rr-zahlen .rr-schale:nth-child(4){transition-delay:.24s}
.rr-zahl{padding:2rem 1.6rem 1.7rem;min-height:11rem;display:flex;flex-direction:column;justify-content:space-between;gap:1rem}
.rr-zahl strong{font-family:var(--titel);font-weight:800;font-size:clamp(2.6rem,4.6vw,4.2rem);line-height:.9;color:var(--hell);letter-spacing:-.02em}
.rr-zahl span{font-size:.98rem;line-height:1.4;color:var(--text)}
.rr-zahl::after{content:"";position:absolute;right:1.4rem;top:1.5rem;width:6px;height:6px;border-radius:50%;background:var(--rot);box-shadow:0 0 12px rgba(227,30,36,.8)}

/* 3 Kamerafahrt */
.rr-fahrt{position:relative;height:520vh}
.rr-fahrt__fenster{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden;perspective:900px;perspective-origin:50% 50%;
  background:radial-gradient(70% 60% at 50% 50%,#170a0a 0%,#050303 55%,#000 100%)}
.rr-fahrt__fenster::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;background:radial-gradient(85% 75% at 50% 50%,transparent 45%,rgba(0,0,0,.85) 100%)}
.rr-fahrt__raum{position:absolute;inset:0;transform-style:preserve-3d}
.rr-ebene,.rr-wort{position:absolute;left:50%;top:50%;margin:0;will-change:transform,opacity;opacity:0;backface-visibility:hidden}
.rr-ebene{width:clamp(250px,30vw,520px);aspect-ratio:3/2;border-radius:1.2rem;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.6);outline:1px solid rgba(255,255,255,.08);outline-offset:-1px}
.rr-ebene img{width:100%;height:100%;object-fit:cover}
.rr-wort{font-family:var(--titel);font-weight:800;text-transform:uppercase;font-size:clamp(3rem,9vw,8.5rem);line-height:.85;color:transparent;-webkit-text-stroke:1.5px rgba(237,226,226,.5);white-space:nowrap}
.rr-wort--gross{font-size:clamp(6rem,24vw,22rem);-webkit-text-stroke:0;color:var(--rot);text-shadow:0 0 80px rgba(227,30,36,.55)}
.rr-fahrt__fenster::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.35) 32%,transparent 55%);opacity:var(--to,1)}
.rr-fahrt__text{position:absolute;left:4vw;bottom:9vh;z-index:6;max-width:30rem;opacity:var(--to,1);transform:translateY(calc((1 - var(--to,1)) * 30px))}
.rr-fahrt__text .rr-h2{font-size:clamp(2rem,3.6vw,3.4rem)}
.rr-fahrt__text p{margin-top:1rem;font-size:1.02rem;line-height:1.55;max-width:26rem}
.rr-fahrt__balken{position:absolute;right:4vw;bottom:9vh;z-index:6;width:min(220px,30vw);height:1px;background:rgba(237,226,226,.15)}
.rr-fahrt__balken span{position:absolute;left:0;top:0;height:1px;width:100%;transform-origin:left;transform:scaleX(var(--p,0));background:var(--rot);box-shadow:0 0 10px rgba(227,30,36,.8)}

/* 4 Studio-Setup */
.rr-studio{position:relative;padding-bottom:9rem}
.rr-studio__bild{position:relative;height:88vh;min-height:520px;overflow:hidden}
.rr-studio__bild img{width:100%;height:118%;object-fit:cover;object-position:50% 40%;transform:translate3d(0,var(--py,0px),0) scale(1.02);will-change:transform}
.rr-studio__bild::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#000 0%,rgba(0,0,0,0) 18%,rgba(0,0,0,0) 55%,#000 100%)}
.rr-studio__inhalt{position:relative;z-index:2;max-width:1280px;margin:-16rem auto 0;padding:0 4vw;display:grid;grid-template-columns:5fr 7fr;gap:4rem;align-items:end}
.rr-studio__kopf p{margin:1.4rem 0 1.6rem;font-size:1.05rem;line-height:1.6;max-width:30rem}
.rr-kaskade{position:relative;height:clamp(420px,44vw,620px)}
.rr-kaskade figure{position:absolute;margin:0;width:62%;transform:rotate(var(--dreh,0deg))}
.rr-kaskade figure:nth-child(1){left:0;top:0;width:58%;z-index:1}
.rr-kaskade figure:nth-child(2){right:0;top:26%;width:50%;z-index:2;transition-delay:.1s}
.rr-kaskade figure:nth-child(3){left:12%;bottom:0;width:46%;z-index:3;transition-delay:.2s}
.rr-kaskade .rr-kern{aspect-ratio:3/2}
.rr-kaskade img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--kurve)}
.rr-kaskade figure:hover img{transform:scale(1.05)}
.rr-kaskade figcaption{position:absolute;left:1.3rem;bottom:1.2rem;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hell);padding:.35rem .7rem;border-radius:999px;background:rgba(0,0,0,.55)}
.rr-js .rr-kaskade .rr-auf.ist-da{transform:rotate(var(--dreh,0deg))}

/* 3D-Kippen von Karten */
.rr-karte3d{transform-style:preserve-3d;transition:transform .7s var(--kurve)}
.rr-karte3d.kippt{transform:perspective(900px) rotateX(var(--krx,0deg)) rotateY(var(--kry,0deg)) rotate(var(--dreh,0deg)) !important;transition:transform .15s linear}
.rr-karte3d .rr-kern::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s var(--kurve);
  background:radial-gradient(420px circle at var(--gx,50%) var(--gy,50%),rgba(255,255,255,.10),transparent 45%)}
.rr-karte3d.kippt .rr-kern::after{opacity:1}

/* 5 Das Set */
.rr-set{max-width:1280px;margin:0 auto;padding:4rem 4vw 9rem}
.rr-set__kopf{margin-bottom:3.4rem}
.rr-bento{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(250px,auto);gap:1rem}
.rr-bento>article{grid-column:span 4}
.rr-bento__gross{grid-column:span 5 !important;grid-row:span 2}
.rr-bento__breit{grid-column:span 7 !important}
.rr-bento>article:nth-child(3){grid-column:span 3}
.rr-bento>article:nth-child(4){grid-column:span 2}
.rr-bento>article:nth-child(5){grid-column:span 2}
.rr-bento .rr-schale{display:flex}
.rr-teil{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:1.6rem;min-height:100%;
  background:radial-gradient(70% 60% at 50% 40%,rgba(227,30,36,.13),transparent 70%),linear-gradient(170deg,#141212 0%,#0a0909 100%)}
.rr-teil img{flex:1 1 auto;width:100%;max-height:440px;object-fit:contain;margin:0 auto;filter:drop-shadow(0 25px 30px rgba(0,0,0,.6));transition:transform 1s var(--kurve)}
.rr-bento__gross .rr-teil img{max-height:560px;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 20%);mask-image:linear-gradient(180deg,transparent 0%,#000 20%)}
.rr-bento>article:nth-child(3) .rr-teil img{max-height:300px;-webkit-mask-image:linear-gradient(0deg,transparent 0%,#000 22%);mask-image:linear-gradient(0deg,transparent 0%,#000 22%)}
.rr-teil--quer{flex-direction:row;align-items:center;gap:1.5rem}
.rr-teil--quer img{width:62%;max-height:240px}
.rr-teil--info{justify-content:space-between}
.rr-schale:hover .rr-teil img{transform:translateY(-6px) scale(1.03)}
.rr-teil__text h3{font-size:1.25rem;letter-spacing:.01em}
.rr-teil__text p{margin-top:.45rem;font-size:1rem;line-height:1.45}
.rr-teil__gross{font-family:var(--titel);font-weight:800;font-size:clamp(3.5rem,6vw,5.5rem);line-height:.85;color:var(--hell);letter-spacing:-.03em}
.rr-akkus{display:flex;gap:.6rem;align-items:flex-end}
.rr-akkus i{display:block;width:26px;height:58px;border-radius:7px;border:1px solid rgba(237,226,226,.28);position:relative;overflow:hidden}
.rr-akkus i::after{content:"";position:absolute;left:3px;right:3px;bottom:3px;height:var(--f,80%);border-radius:4px;background:linear-gradient(180deg,#ff4a4f,var(--rot));box-shadow:0 0 12px rgba(227,30,36,.6);animation:rr-laden 3.6s var(--kurve) infinite}
.rr-akkus i:nth-child(2)::after{animation-delay:.25s}.rr-akkus i:nth-child(3)::after{animation-delay:.5s;--f:90%}.rr-akkus i:nth-child(4)::after{animation-delay:.75s;--f:70%}
.rr-akkus i:nth-child(3){height:72px;width:30px}
@keyframes rr-laden{0%{transform:scaleY(.15);transform-origin:bottom}60%,100%{transform:scaleY(1);transform-origin:bottom}}

.rr-liste{margin-top:1rem;border-radius:2rem;border:1px solid var(--linie);background:rgba(255,255,255,.02);overflow:hidden}
.rr-liste summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem 1.8rem;color:var(--hell);font-size:1rem}
.rr-liste summary::-webkit-details-marker{display:none}
.rr-liste summary i{position:relative;width:2.2rem;height:2.2rem;border-radius:50%;background:rgba(255,255,255,.06);transition:transform .6s var(--kurve),background .3s}
.rr-liste summary i::before,.rr-liste summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;background:var(--hell);transform:translate(-50%,-50%)}
.rr-liste summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .6s var(--kurve)}
.rr-liste[open] summary i{background:var(--rot)}
.rr-liste[open] summary i::after{transform:translate(-50%,-50%) rotate(0deg)}
.rr-liste__gruppen{display:grid;grid-template-columns:repeat(5,1fr);gap:2rem;padding:.6rem 1.8rem 1.6rem}
.rr-liste h4{font-size:.86rem;letter-spacing:.2em;color:var(--rot);margin-bottom:.9rem}
.rr-liste ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.rr-liste li{font-size:.98rem;line-height:1.4;color:var(--text)}
.rr-liste__hinweis{padding:0 1.8rem 1.6rem;font-size:.95rem;color:var(--leise)}

/* 5b Optiken */
.rr-optik{max-width:1280px;margin:0 auto;padding:2rem 4vw 9rem}
.rr-optik__kopf{margin-bottom:3rem;max-width:46rem}
.rr-optik__kopf p{margin-top:1.3rem;font-size:1.04rem;line-height:1.6;max-width:38rem}
.rr-optik__raster{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:1rem;align-items:stretch}
.rr-optik__seite{display:flex;flex-direction:column;gap:1rem}
/* Breite fest: Safari rechnete sonst die Breite aus Hoehe mal 3/2 und schob das Bild ueber die Brennweiten-Knoepfe */
.rr-brennweite{aspect-ratio:3/2;width:100%;height:100%}
.rr-brennweite img{width:100%;height:100%;object-fit:cover;transform:scale(var(--zoom,1));transform-origin:41% 39%;transition:transform 1.2s var(--kurve)}
.rr-rahmen{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;box-shadow:0 0 0 200vmax rgba(0,0,0,.58);pointer-events:none;
  transition:left .9s var(--kurve),top .9s var(--kurve),width .9s var(--kurve),height .9s var(--kurve)}
.rr-rahmen .rr-ecke{width:22px;height:22px;border-color:var(--rot)}
.rr-rahmen__label{position:absolute;left:-1px;top:-2rem;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-weight:500;font-size:.84rem;letter-spacing:.14em;color:#fff;
  padding:.3rem .55rem;border-radius:6px;background:rgba(227,30,36,.85);white-space:nowrap}
.rr-rahmen--voll .rr-rahmen__label{left:.7rem;top:.6rem}
.rr-brennweite__hinweis{position:absolute;z-index:3;right:1rem;bottom:.9rem;font-size:.82rem;letter-spacing:.06em;color:rgba(237,226,226,.55)}
.rr-bw-wahl{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}
.rr-bw{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1rem 1rem .9rem;border-radius:1.2rem;border:1px solid var(--linie);background:rgba(255,255,255,.025);
  color:var(--hell);font:inherit;cursor:pointer;text-align:left;transition:background .4s var(--kurve),border-color .4s var(--kurve),transform .4s var(--feder)}
.rr-bw strong{font-family:var(--titel);font-weight:800;font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:.9;letter-spacing:-.02em}
.rr-bw span{font-size:.82rem;letter-spacing:.08em;color:var(--leise)}
.rr-bw:hover{border-color:rgba(237,226,226,.3)}
.rr-bw:active{transform:scale(.97)}
.rr-bw:focus-visible{outline:none;box-shadow:0 0 0 2px var(--rot)}
.rr-bw[aria-pressed="true"]{background:var(--rot);border-color:var(--rot);box-shadow:0 10px 30px -10px rgba(227,30,36,.8)}
.rr-bw[aria-pressed="true"] span{color:rgba(255,255,255,.85)}
.rr-optik__foto{margin:0;flex:1;position:relative}
.rr-optik__foto .rr-kern{height:100%;min-height:220px}
.rr-optik__foto img{width:100%;height:100%;object-fit:cover;object-position:50% 88%}
.rr-optik__foto figcaption{position:absolute;left:1.3rem;bottom:1.2rem;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hell);padding:.35rem .7rem;border-radius:999px;background:rgba(0,0,0,.55)}
.rr-liste__hinweis a{color:var(--hell)}

/* 6b Preise */
.rr-preise{max-width:1280px;margin:0 auto;padding:2rem 4vw 9rem}
.rr-preise__kopf{margin-bottom:3rem;max-width:46rem}
.rr-preise__kopf p{margin-top:1.3rem;font-size:1.04rem;line-height:1.6;max-width:38rem}
.rr-preise__karten{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}
.rr-preise__karten .rr-schale{display:flex}
.rr-preise__karten .rr-schale:nth-child(2){transition-delay:.08s}.rr-preise__karten .rr-schale:nth-child(3){transition-delay:.16s}
.rr-preis{flex:1;display:flex;flex-direction:column;gap:.9rem;padding:2rem 1.8rem 1.8rem}
.rr-preis h3{font-size:1.3rem}
.rr-preis__inhalt{font-size:1rem;line-height:1.5;min-height:2.8em}
.rr-preis__betrag{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;margin-top:auto;padding-top:1rem}
.rr-preis__betrag strong{font-family:var(--titel);font-weight:800;font-size:clamp(2.3rem,3.3vw,3.2rem);line-height:.9;color:var(--hell);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.rr-preis__betrag span{font-size:.95rem;color:var(--leise)}
.rr-preis__woche{font-size:.98rem;color:var(--text);padding-top:.9rem;border-top:1px solid var(--linie)}
.rr-preis-hervor{border-color:rgba(227,30,36,.55);background:rgba(227,30,36,.08);box-shadow:0 20px 60px -25px rgba(227,30,36,.6)}
.rr-preis-hervor .rr-kern{background:radial-gradient(90% 70% at 50% 0%,rgba(227,30,36,.18),transparent 70%),linear-gradient(170deg,#161212 0%,#0b0909 100%)}
.rr-preis__marke{align-self:flex-start;padding:.3rem .7rem;border-radius:999px;background:var(--rot);color:#fff;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase}
.rr-staffel{margin-top:1rem;border-radius:2rem;border:1px solid var(--linie);background:rgba(255,255,255,.02);padding:1.4rem 1.8rem 1.2rem;overflow-x:auto}
.rr-staffel table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.rr-staffel caption{text-align:left;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--leise);padding-bottom:.9rem}
.rr-staffel th,.rr-staffel td{padding:.75rem .6rem;text-align:right;font-size:1.02rem;border-bottom:1px solid var(--linie);white-space:nowrap}
.rr-staffel thead th{font-weight:500;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--leise);white-space:normal}
.rr-staffel th[scope="row"],.rr-staffel thead th:first-child{text-align:left;color:var(--hell);font-weight:500}
.rr-staffel td{color:var(--hell)}
.rr-staffel td:nth-child(3){color:#fff}
.rr-staffel tbody tr:last-child th,.rr-staffel tbody tr:last-child td{border-bottom:0}
.rr-staffel__hinweis{margin-top:.8rem;font-size:.95rem;color:var(--leise)}
.rr-staffel__hinweis a{color:var(--hell);text-decoration:none;box-shadow:inset 0 -1px 0 var(--rot)}
.rr-bedingungen{margin-top:3.4rem}
.rr h3.rr-bedingungen__titel{font-family:var(--fliess);font-weight:500;font-size:.8rem;letter-spacing:.2em;line-height:1.4;color:var(--leise)}
.rr-bedingungen__liste{margin:1.4rem 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}
.rr-bedingungen__liste>div{position:relative;padding-top:1.5rem;border-top:1px solid var(--linie)}
.rr-bedingungen__liste>div::before{content:"";position:absolute;left:0;top:-1px;width:2.5rem;height:1px;background:var(--rot)}
.rr-bedingungen dt{font-family:var(--titel);font-weight:800;text-transform:uppercase;color:var(--hell);font-size:1.1rem;letter-spacing:.01em}
.rr-bedingungen dd{margin:.7rem 0 0;font-size:.98rem;line-height:1.55;color:var(--text)}

/* 6 Ablauf */
.rr-ablauf{max-width:1280px;margin:0 auto;padding:2rem 4vw 9rem}
.rr-schritte{list-style:none;margin:3.4rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;counter-reset:none}
.rr-schritte li{position:relative;padding:2rem 1.8rem 2.2rem;border-top:1px solid var(--linie)}
.rr-schritte li:nth-child(2){transition-delay:.1s}.rr-schritte li:nth-child(3){transition-delay:.2s}
.rr-schritte li::before{content:"";position:absolute;left:0;top:-1px;width:3.5rem;height:1px;background:var(--rot)}
.rr-schritte__nr{display:block;font-family:var(--titel);font-weight:800;font-size:clamp(3.5rem,6vw,5.5rem);line-height:.9;color:transparent;-webkit-text-stroke:1.2px rgba(237,226,226,.3);margin-bottom:1.6rem}
.rr-schritte h3{font-size:1.35rem}
.rr-schritte p{margin-top:.7rem;font-size:.98rem;line-height:1.55;max-width:22rem}

/* 7 Anfrage und Kalender */
.rr-anfrage{position:relative;max-width:1280px;margin:0 auto;padding:2rem 4vw 10rem}
.rr-anfrage::before{content:"";position:absolute;left:50%;top:40%;width:min(1000px,90vw);height:600px;transform:translate(-50%,-50%);z-index:-1;pointer-events:none;
  background:radial-gradient(closest-side,rgba(227,30,36,.16),transparent);filter:blur(20px)}
.rr-anfrage__kopf{text-align:center;display:flex;flex-direction:column;align-items:center;margin-bottom:3rem}
.rr-anfrage__kopf p{margin-top:1.2rem;max-width:34rem;font-size:1.02rem;line-height:1.55}
.rr-anfrage__karte{border-radius:2.4rem}
.rr-anfrage__innen{overflow:clip;border-radius:calc(2.4rem - 6px);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:0}
.rr-kal{padding:2.2rem 2.2rem 1.8rem;border-right:1px solid var(--linie)}
.rr-kal__kopf{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.4rem}
.rr-kal__titel{font-family:var(--titel);font-weight:800;text-transform:uppercase;color:var(--hell);font-size:1.05rem;letter-spacing:.04em;display:flex;gap:2.5rem;flex:1;justify-content:space-around}
.rr-kal__pfeil{width:2.6rem;height:2.6rem;border-radius:50%;border:1px solid var(--linie);background:rgba(255,255,255,.03);color:var(--hell);display:grid;place-items:center;cursor:pointer;transition:background .3s,transform .4s var(--kurve)}
.rr-kal__pfeil:hover:not(:disabled){background:rgba(227,30,36,.25)}
.rr-kal__pfeil:active:not(:disabled){transform:scale(.94)}
.rr-kal__pfeil:disabled{opacity:.25;cursor:default}
.rr-kal__monate{display:grid;grid-template-columns:repeat(var(--monate,2),minmax(0,1fr));gap:1.6rem}
.rr-monat__name{display:none}
.rr-monat__tage{display:grid;grid-template-columns:repeat(7,1fr);row-gap:.3rem}
.rr-wt{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--leise);text-align:center;padding:.3rem 0 .7rem}
.rr-tag{position:relative;height:2.75rem;border:0;background:transparent;padding:0;color:var(--hell);font:inherit;font-size:.98rem;cursor:pointer;isolation:isolate}
.rr-tag span{position:relative;z-index:2;display:grid;place-items:center;width:min(2.6rem,100%);aspect-ratio:1;height:auto;margin:0 auto;border-radius:50%;transition:background .25s,color .25s,transform .35s var(--feder)}
.rr-tag:hover:not(:disabled) span{background:rgba(255,255,255,.08)}
.rr-tag:focus-visible{outline:none}
.rr-tag:focus-visible span{box-shadow:0 0 0 2px var(--rot)}
.rr-tag:disabled{color:rgba(237,226,226,.2);cursor:default}
.rr-tag--heute span::after{content:"";position:absolute;bottom:.35rem;left:50%;width:4px;height:4px;border-radius:50%;background:var(--rot);transform:translateX(-50%)}
.rr-tag--leer{pointer-events:none}
.rr-tag::before{content:"";position:absolute;inset:.08rem 0;z-index:1;background:transparent;transition:background .2s}
.rr-tag--drin::before{background:rgba(227,30,36,.22)}
.rr-tag--vorschau::before{background:rgba(227,30,36,.10)}
.rr-tag--start::before{left:50%}
.rr-tag--ende::before{right:50%}
.rr-tag--start.rr-tag--ende::before{background:transparent}
.rr-tag--start span,.rr-tag--ende span{background:var(--rot) !important;color:#fff;box-shadow:0 6px 22px -4px rgba(227,30,36,.75);transform:scale(1.04)}
.rr-monat__tage>.rr-tag:nth-child(7n+8)::before{border-radius:999px 0 0 999px}
.rr-monat__tage>.rr-tag:nth-child(7n+14)::before{border-radius:0 999px 999px 0}
.rr-tag--m1::before{border-top-left-radius:999px;border-bottom-left-radius:999px}
.rr-tag--mx::before{border-top-right-radius:999px;border-bottom-right-radius:999px}
.rr-kal__fuss{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--linie);min-height:3.4rem}
.rr-kal__auswahl{font-size:.95rem;color:var(--hell)}
.rr-kal__auswahl b{font-weight:500}
.rr-kal__auswahl small{display:inline-block;margin-left:.7rem;padding:.2rem .6rem;border-radius:999px;background:rgba(227,30,36,.18);color:#ff9a9d;font-size:.86rem;letter-spacing:.04em}
.rr-kal__leer{color:var(--leise)}
.rr-kal__reset{border:0;background:none;color:var(--leise);font:inherit;font-size:.92rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.rr-kal__reset:hover{color:var(--hell)}

.rr-form{padding:2.2rem;display:flex;flex-direction:column;gap:1.1rem}
.rr-felder2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.rr-feld{display:flex;flex-direction:column;gap:.5rem;margin:0;min-width:0}
.rr-feld__label{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--leise);padding:0}
.rr-feld input,.rr-feld textarea{width:100%;margin:0;padding:.9rem 1rem;border-radius:14px;border:1px solid var(--linie);background:rgba(255,255,255,.035);color:var(--hell);font:inherit;font-size:.98rem;
  transition:border-color .3s,box-shadow .3s,background .3s;outline:none;resize:vertical}
.rr-feld input:focus,.rr-feld textarea:focus{border-color:rgba(227,30,36,.65);box-shadow:0 0 0 4px rgba(227,30,36,.14);background:rgba(255,255,255,.05)}
.rr-feld textarea::placeholder{color:rgba(237,226,226,.28)}
.rr-zeitraum{display:block;padding:.9rem 1rem;border-radius:14px;border:1px dashed rgba(237,226,226,.18);color:var(--leise);font-size:.98rem;transition:all .4s var(--kurve)}
.rr-zeitraum.gewaehlt{border-style:solid;border-color:rgba(227,30,36,.55);background:rgba(227,30,36,.10);color:var(--hell)}
.rr-zeitraum.fehlt{border-color:var(--rot);animation:rr-wackeln .45s var(--kurve)}
@keyframes rr-wackeln{25%{transform:translateX(-5px)}50%{transform:translateX(4px)}75%{transform:translateX(-2px)}}
.rr-chips{border:0;padding:0;flex-direction:row;flex-wrap:wrap;gap:.5rem}
.rr-chips[data-rr-optiken]{gap:.45rem}
.rr-chips[data-rr-optiken] span{padding:.55rem .75rem}
.rr-chips legend{margin-bottom:.5rem;width:100%;float:left}
.rr-chips label{position:relative;cursor:pointer;margin:0}
.rr-chips input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}
.rr-chips span{display:inline-block;padding:.55rem .95rem;border-radius:999px;border:1px solid var(--linie);font-size:.95rem;color:var(--text);transition:all .3s var(--kurve)}
.rr-chips label:hover span{border-color:rgba(237,226,226,.3);color:var(--hell)}
.rr-chips input:checked+span{background:var(--hell);color:#0a0909;border-color:var(--hell)}
.rr-chips input:focus-visible+span{box-shadow:0 0 0 2px var(--rot)}
.rr-honig{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rr-form__fehler{color:#ff8a8d;font-size:.95rem}
.rr-form__fuss{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;margin-top:.4rem}
.rr-form__ds{font-size:.88rem;line-height:1.45;color:var(--leise);max-width:16rem}
.rr-form__ds a{color:var(--text)}
.rr-knopf--voll{flex:0 0 auto}
.rr-knopf[disabled]{opacity:.6;pointer-events:none}
.rr-danke{grid-column:2;padding:3rem 2.2rem;display:flex;flex-direction:column;justify-content:center;gap:1rem}
.rr-danke[hidden],.rr-form[hidden]{display:none}
.rr-danke__haken{width:3.6rem;height:3.6rem;border-radius:50%;background:var(--rot);color:#fff;display:grid;place-items:center;box-shadow:0 10px 40px -8px rgba(227,30,36,.8);animation:rr-pop .7s var(--feder)}
.rr-danke__haken svg{width:1.6rem;height:1.6rem;stroke-width:2}
@keyframes rr-pop{from{transform:scale(.4);opacity:0}}
.rr-danke h3{font-size:1.6rem}
.rr-danke p{font-size:1rem;line-height:1.55}

/* Tablet */
@media (max-width:1100px){
  .rr-bedingungen__liste{grid-template-columns:1fr 1fr;row-gap:2.2rem}
  .rr-anfrage__innen{grid-template-columns:1fr}
  .rr-kal{border-right:0;border-bottom:1px solid var(--linie)}
  .rr-danke{grid-column:1}
  .rr-liste__gruppen{grid-template-columns:repeat(3,1fr)}
  .rr-studio__inhalt{grid-template-columns:1fr;gap:3rem;margin-top:-10rem}
}
/* Handy */
@media (max-width:767px){
  .rr-hero{padding:7.5rem 1rem 6.5rem}
  .rr-sucher{inset:7rem .7rem .8rem}
  .rr-hud{left:.9rem;right:.9rem;font-size:.74rem}
  .rr-hero .rr-pille{font-size:.7rem;letter-spacing:.14em;padding:.42rem .8rem}
  .rr-hud--unten{display:none}
  .rr-h2{font-size:clamp(1.6rem,8.2vw,2.3rem);overflow-wrap:break-word}
  .rr-ecke{width:22px;height:22px}
  .rr-hero__buehne{height:44vh}
  .rr-kamera{width:min(74vw,360px)}
  .rr-hero__marke{font-size:17vw}
  .rr-zahlen{padding:2rem 1rem 5rem}
  .rr-zahlen__reihe{grid-template-columns:1fr 1fr;gap:.7rem}
  .rr-zahl{min-height:9rem;padding:1.4rem 1.2rem}
  .rr-fahrt{height:420vh}
  .rr-ebene{width:62vw}
  .rr-fahrt__text{left:1rem;right:1rem;bottom:7rem}
  .rr-fahrt__balken{display:none}
  .rr-studio__bild{height:62vh;min-height:380px}
  .rr-studio__inhalt{padding:0 1rem;margin-top:-6rem}
  .rr-kaskade{height:auto;display:grid;gap:1rem}
  .rr-kaskade figure{position:relative;width:100%;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;transform:none !important;--dreh:0deg}
  .rr-set,.rr-ablauf,.rr-anfrage{padding-left:1rem;padding-right:1rem}
  .rr-bento{grid-template-columns:1fr}
  .rr-bento>article{grid-column:1/-1 !important;grid-row:auto !important}
  .rr-bento__gross .rr-teil img{max-height:340px}
  .rr-teil--quer{flex-direction:column;align-items:flex-start}
  .rr-teil--quer img{width:100%}
  .rr-liste__gruppen{grid-template-columns:1fr 1fr;gap:1.4rem}
  .rr-schritte{grid-template-columns:1fr}
  .rr-bedingungen__liste{grid-template-columns:1fr;row-gap:1.8rem}
  .rr-optik{padding-left:1rem;padding-right:1rem}
  .rr-preise{padding-left:1rem;padding-right:1rem}
  .rr-preise__karten{grid-template-columns:1fr}
  .rr-preis__inhalt{min-height:0}
  .rr-staffel{padding:1.1rem .9rem .9rem;border-radius:1.4rem}
  .rr-staffel th,.rr-staffel td{padding:.6rem .35rem;font-size:.9rem}
  .rr-staffel thead th{font-size:.7rem;letter-spacing:.06em}
  .rr-optik__raster{grid-template-columns:1fr}
  .rr-brennweite__hinweis{display:none}
  .rr-kal{padding:1.4rem 1rem}
  .rr-kal__titel{gap:1rem}
  .rr-form{padding:1.6rem 1.2rem}
  .rr-felder2{grid-template-columns:1fr}
  .rr-form__fuss{flex-direction:column;align-items:stretch}
  .rr-knopf--voll{justify-content:space-between}
  .rr-tag{height:2.6rem}
  .rr-tag span{width:2.4rem;height:2.4rem}
}
@media (min-width:768px) and (min-height:760px){.rr-scrollhinweis{display:block}}

/* Weniger Bewegung */
@media (prefers-reduced-motion:reduce){
  .rr *,.rr *::before,.rr *::after{animation:none !important;transition:none !important}
  .rr-js .rr-auf{opacity:1;transform:none;filter:none}
  .rr-fahrt{height:auto}
  .rr-fahrt__fenster{position:relative;height:auto;padding:6rem 4vw;perspective:none}
  .rr-fahrt__raum{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:3rem}
  .rr-ebene{position:relative;left:auto;top:auto;width:auto;opacity:1;transform:none !important}
  .rr-wort{display:none}
  .rr-fahrt__text{position:relative;left:auto;bottom:auto}
}
