/* Oros Energy public website. Selected Klarheit composition, original brand tokens. */
.oros-public {
  --oros-primary: #0256dc;
  --oros-gold: #c4a64f;
  --oros-bg-primary: #f9faf9;
  --oros-bg-secondary: #edf0ed;
  --oros-text: #182329;
  --oros-muted: #525e64;
  --oros-rule: #cad1d3;
  --oros-focus: #0256dc;
  --oros-gutter: clamp(24px,5vw,100px);
  --oros-width: 1640px;
  --gold: var(--oros-primary);
  --gold-dark: #0147b8;
  --secondary-accent: var(--oros-gold);
  --background: var(--oros-bg-primary);
  --foreground: var(--oros-text);
  --muted: var(--oros-bg-secondary);
  --muted-foreground: var(--oros-muted);
  --card: var(--oros-bg-primary);
  --card-foreground: var(--oros-text);
  --border: var(--oros-rule);
  --input: var(--oros-rule);
  /* Tailwind theme aliases must resolve in the public scope as well as :root. */
  --color-background: var(--oros-bg-primary);
  --color-foreground: var(--oros-text);
  --color-muted: var(--oros-bg-secondary);
  --color-muted-foreground: var(--oros-muted);
  --color-card: var(--oros-bg-primary);
  --color-card-foreground: var(--oros-text);
  --color-border: var(--oros-rule);
  --color-input: var(--oros-rule);
  --color-gold: var(--oros-primary);
  background: var(--oros-bg-primary);
  color: var(--oros-text);
  font-family: Inter,Arial,sans-serif;
  font-synthesis: none;
  font-size: 16px;
  line-height: 1.7;
  color-scheme: light;
  -webkit-font-smoothing: antialiased;
}
html.dark .oros-public {
  --oros-bg-primary: #131b21;
  --oros-bg-secondary: #1b282b;
  --oros-text: #f2f4f3;
  --oros-muted: #b1bec5;
  --oros-rule: #3e4d56;
  --oros-focus: #8dbcff;
  color-scheme: dark;
}
.oros-public :where(h1,h2,h3) { font-weight:450; line-height:1.1; letter-spacing:-.045em; }
.oros-public :where(h1) { font-size:clamp(42px,4.85vw,94px); }
.oros-public :where(h2) { font-size:clamp(36px,3.55vw,68px); }
.oros-public :where(h3) { font-size:24px; letter-spacing:-.025em; line-height:1.3; }
.oros-public :where(a,button,input,textarea,select,summary):focus-visible { outline:3px solid var(--oros-focus); outline-offset:6px; }
.oros-public :where(a) { text-underline-offset:5px; }
.oros-public :where(button,a,input,textarea) { -webkit-tap-highlight-color:transparent; }
.oros-public .oros-arrow { width:22px; height:22px; flex:none; }
.oros-public .kh-eyebrow,.oros-public .section-label { font-size:12px; font-weight:550; letter-spacing:.01em; text-transform:none; color:var(--oros-primary); margin-bottom:26px; }
html.dark .oros-public .kh-eyebrow,html.dark .oros-public .section-label { color:#8dbcff; }
.oros-public .lp-reveal,.oros-public .trend-appear { opacity:1!important; transform:none!important; animation:none!important; transition:none!important; }
.oros-public .oros-link-list { max-width:none; padding:0; margin:0; list-style:none; border-top:1px solid var(--oros-rule); }
.oros-public .oros-link-list>li { padding:0; border:0; border-bottom:1px solid var(--oros-rule); }
.oros-public .oros-link-list a { display:flex; width:100%; align-items:center; justify-content:space-between; gap:20px; padding:20px 16px; min-height:64px; color:var(--oros-text); font-size:16px; font-weight:600; text-decoration:none; transition:background-color .2s ease,color .2s ease; }
.oros-public .oros-link-list a:hover { color:var(--oros-focus); background:var(--oros-bg-secondary); }
.oros-public .oros-link-list .oros-arrow { box-sizing:content-box; padding:9px; border:1px solid var(--oros-rule); transition:background-color .2s ease,border-color .2s ease; }
.oros-public .oros-link-list a:hover .oros-arrow { border-color:currentColor; }
.oros-public .oros-fact-list { list-style:none; padding:0; margin:26px 0 0; }
.oros-public .oros-fact-list>li { position:relative; display:block; padding:13px 0 13px 24px; border:0; border-bottom:1px solid var(--oros-rule); font-size:13px; font-weight:400; line-height:1.7; }
.oros-public .oros-fact-list>li::before { content:''; position:absolute; left:1px; top:22px; width:7px; height:4px; border-left:1px solid currentColor; border-bottom:1px solid currentColor; transform:rotate(-45deg); }
.oros-public .kh-primary-link { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; padding:17px 25px; background:var(--oros-primary); color:#fff; font-size:15px; font-weight:600; min-height:56px; text-decoration:none; transition:background-color .2s ease; }
.oros-public .kh-primary-link:hover { background:#0147b8; }
.oros-public .kh-section-link { display:inline-flex; align-items:center; gap:30px; padding:14px 0; border-bottom:1px solid currentColor; font-size:14px; font-weight:550; text-decoration:none; }
.oros-public .oros-jump { display:inline-flex; align-items:center; gap:18px; min-height:48px; padding-block:10px; border-bottom:1px solid currentColor; color:var(--oros-focus); font-size:15px; font-weight:600; text-decoration:none; }
.oros-public .oros-jump:hover { text-decoration:underline; text-underline-offset:5px; }
.oros-public .kh-hero-stage { padding:72px var(--oros-gutter) 0; max-width:calc(var(--oros-width) + var(--oros-gutter)*2); margin:auto; }
.oros-public .kh-hero-copy { display:grid; grid-template-columns:1.45fr 1fr; column-gap:7%; align-items:start; }
/* Die Eyebrow steht jetzt als erste Zeile in der H1 — das Raster gibt der Ueberschrift deshalb auch die erste Zeile. */
.oros-public .kh-hero-copy h1 { grid-column:1; grid-row:1/4; margin:0; font-size:clamp(47px,4.85vw,94px); letter-spacing:-.06em; line-height:1.055; }
.oros-public .kh-hero-copy h1>span { display:block; }
.oros-public .kh-hero-copy h1>.kh-eyebrow { font-size:12px; font-weight:550; letter-spacing:.01em; line-height:1.7; }
.oros-public .kh-hero-lead { grid-column:2; grid-row:2; margin:0; padding-top:3px; max-width:550px; font-size:16px; line-height:1.8; color:var(--oros-muted); }
.oros-public .kh-hero-copy>.kh-primary-link { grid-column:2; grid-row:3; justify-self:start; align-self:end; margin-top:28px; }
.oros-public .kh-hero-visual { margin-top:52px; height:clamp(330px,31vw,570px); overflow:hidden; }
.oros-public .kh-hero-visual img { width:100%; height:100%; object-fit:cover; object-position:center 49%; }
.oros-public .kh-brand-core { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px; padding:34px var(--oros-gutter); max-width:calc(var(--oros-width) + var(--oros-gutter)*2); margin:auto; }
.oros-public .kh-brand-core article+article { border-left:1px solid var(--oros-rule); padding-left:35px; }
.oros-public .kh-brand-core h2 { margin:0 0 10px; font-size:18px; font-weight:550; line-height:1.35; letter-spacing:-.025em; }
.oros-public .kh-brand-core p { margin:0; font-size:13px; line-height:1.85; color:var(--oros-muted); }
.oros-public .kh-trust-strip { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px 28px; padding:23px var(--oros-gutter); border-block:1px solid var(--oros-rule); color:var(--oros-muted); font-size:11px; }
.oros-public .kh-trust-strip>span { display:flex; align-items:center; gap:10px; }
.oros-public .kh-trust-strip>span::before { content:''; width:5px; height:5px; background:var(--oros-primary); border-radius:50%; }
.oros-public .klarheit-home>section:not(.kh-hero) { padding:110px var(--oros-gutter); max-width:calc(var(--oros-width) + var(--oros-gutter)*2); margin:auto; }
.oros-public .kh-section>div:not(.oros-section-heading) { max-width:none; }
.oros-public .kh-section .oros-section-heading { margin-bottom:58px; }
.oros-public .kh-section .oros-section-heading h2 { font-size:clamp(36px,3.55vw,68px); }
.oros-public .kh-section .oros-section-heading p { font-size:16px; line-height:1.8; }
.oros-public .kh-section .oros-section-heading .oros-content-label { font-size:12px; }
.oros-public .kh-split-heading { display:grid; grid-template-columns:1.35fr 1fr; column-gap:10%; align-items:end; }
.oros-public .kh-split-heading .oros-section-intro { padding:0; max-width:760px; }
.oros-public .kh-benefits { display:grid; grid-template-columns:1fr 1.4fr; gap:0 10%; }
.oros-public .kh-benefits>.oros-section-heading { grid-column:1; grid-row:1; display:block; }
.oros-public .kh-benefits .oros-section-heading h2 { font-size:clamp(37px,3.3vw,63px); }
.oros-public .kh-benefits>.kh-section-link { grid-column:1; grid-row:2; align-self:end; justify-self:start; }
.oros-public .kh-benefit-list { grid-column:2; grid-row:1/3; display:flex; flex-direction:column; gap:38px; }
.oros-public .kh-benefit-list article { display:grid; grid-template-columns:.9fr 1.3fr; gap:14px 25px; padding-top:27px; border-top:1px solid var(--oros-rule); }
.oros-public .kh-benefit-list .kh-metric { grid-row:1/3; display:flex; flex-wrap:wrap; gap:3px 7px; align-content:start; align-items:baseline; font-size:clamp(45px,4vw,70px); font-weight:400; letter-spacing:-.07em; line-height:1.1; font-variant-numeric:tabular-nums; }
.oros-public .kh-metric small { font-size:17px; letter-spacing:-.03em; }
.oros-public .kh-benefit-list h3 { margin:0; font-size:21px; }
.oros-public .kh-benefit-list p { margin:0; color:var(--oros-muted); font-size:14px; line-height:1.85; }
/* Abschnitte unterhalb der Buehne rechnet der Browser erst, wenn sie in die Naehe des Bildes
   kommen: das Erst-Layout der Startseite umfasste sonst gut 1.100 Objekte (Lighthouse
   „DOM-Groesse", „Lange Hauptthread-Aufgaben"), und Schrift und Bilder weiter unten luden,
   bevor jemand dorthin scrollt. Die Schaetzhoehe liegt bewusst ueber der hoechsten gemessenen
   Hoehe je Abschnitt (Stand 26.09.2026): mittlere Sektionen 2.205 px bei 360, 1.521 bei 768-1.024,
   1.319 ab 1.100 px Breite; Kontakt 2.387 / 2.022 / 1.378; Karriere 485; Footer 1.055 / 792 / 766.
   Waere sie kleiner, liefe der noch nicht gezeichnete Inhalt fuer Pruefwerkzeuge (axe
   „target-size") in den naechsten Abschnitt. Nach dem ersten Zeichnen merkt sich der Browser die
   echte Hoehe (auto). Waechst ein Abschnitt im CMS deutlich (z. B. viele weitere FAQ), die
   Schaetzung hier mitziehen. */
.oros-public .klarheit-home>section:not(#hero) { content-visibility:auto; contain-intrinsic-size:auto 2700px; }
.oros-public .klarheit-home>section#kontakt { contain-intrinsic-size:auto 3000px; }
.oros-public .klarheit-home>section#karriere { contain-intrinsic-size:auto 700px; }
.oros-public .oros-site-footer { content-visibility:auto; contain-intrinsic-size:auto 1400px; }
@media(min-width:760px) {
  .oros-public .klarheit-home>section:not(#hero) { contain-intrinsic-size:auto 1850px; }
  .oros-public .klarheit-home>section#kontakt { contain-intrinsic-size:auto 2500px; }
  .oros-public .klarheit-home>section#karriere { contain-intrinsic-size:auto 700px; }
  .oros-public .oros-site-footer { contain-intrinsic-size:auto 1000px; }
}
@media(min-width:1100px) {
  .oros-public .klarheit-home>section:not(#hero) { contain-intrinsic-size:auto 1600px; }
  .oros-public .klarheit-home>section#kontakt { contain-intrinsic-size:auto 1700px; }
  .oros-public .klarheit-home>section#karriere { contain-intrinsic-size:auto 700px; }
  .oros-public .oros-site-footer { contain-intrinsic-size:auto 900px; }
}
.oros-public .kh-market { background:var(--oros-bg-secondary); }
.oros-public .kh-trend { border-top:1px solid var(--oros-rule); padding-top:27px; min-width:0; }
.oros-public .kh-trend>.flex .stat-value { font-family:Inter,Arial,sans-serif; font-size:clamp(47px,4.5vw,82px); font-weight:400; letter-spacing:-.065em; line-height:1.1; }
.oros-public .kh-trend>.flex .stat-value+span { font-size:18px; }
.oros-public .kh-trend h3 { margin:22px 0 12px; min-height:54px; font-size:22px; font-weight:450; line-height:1.3; }
.oros-public .kh-trend .trend-subtitle { min-height:40px; color:var(--oros-muted); font-size:12px; line-height:1.65; }
/* Trend-Diagramme (TrendBarChart): gestapelte Balken aus fertigem HTML. Maße und Schrift wie
   die frühere ApexCharts-Grafik — Achse und Summen in JetBrains Mono, Balken auf 55 Prozent der
   Spalte, Abschnitte mit 85 Prozent Deckkraft und einem Pixel Fuge. */
.oros-public .kh-bars { margin:18px 0 0; }
.oros-public .kh-bars-chart { display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-rows:140px auto auto; column-gap:12px; padding-top:22px; }
.oros-public .kh-bars-axis { grid-row:1; grid-column:1; display:flex; flex-direction:column; justify-content:space-between; margin:-6px 0; font-family:'JetBrains Mono',monospace; font-size:12px; line-height:12px; color:var(--oros-muted); text-align:right; }
.oros-public .kh-bars-plot { position:relative; grid-row:1; grid-column:2; display:flex; align-items:flex-end; }
.oros-public .kh-bars-line { position:absolute; left:0; right:0; border-top:1px dashed var(--oros-rule); }
.oros-public .kh-bars-column { position:relative; z-index:1; flex:1 1 0; height:100%; display:flex; justify-content:center; align-items:flex-end; }
.oros-public .kh-bars-stack { position:relative; width:55%; display:flex; flex-direction:column-reverse; }
.oros-public .kh-bars-stack>span { display:block; min-height:2px; opacity:.85; }
.oros-public .kh-bars-stack>span+span { border-bottom:1px solid transparent; background-clip:padding-box; }
.oros-public .kh-bars-total { position:absolute; bottom:100%; left:50%; transform:translateX(-50%); padding-bottom:6px; white-space:nowrap; font-family:'JetBrains Mono',monospace; font-size:13px; font-weight:700; line-height:1; color:var(--oros-text); }
.oros-public .kh-bars-target { position:absolute; z-index:2; left:0; right:0; border-top:1.5px dashed var(--oros-gold); }
.oros-public .kh-bars-categories { grid-row:2; grid-column:2; display:flex; margin-top:12px; font-size:12px; font-weight:600; line-height:1.3; color:var(--oros-muted); }
.oros-public .kh-bars-categories>span { flex:1 1 0; min-width:0; text-align:center; }
.oros-public .kh-bars-legend { grid-row:3; grid-column:1/-1; display:flex; flex-wrap:wrap; justify-content:center; gap:6px 14px; margin:16px 0 0; padding:0; list-style:none; font-size:12px; line-height:1.4; color:var(--oros-muted); }
.oros-public .kh-bars-legend>li { display:flex; align-items:center; gap:5px; margin:0; }
.oros-public .kh-bars-legend i { flex:none; width:12px; height:12px; border-radius:2px; opacity:.85; }
/* Beschriftung der Ziellinie („Ziel: 3 h" der Sales-Folie). Sie steht unter dem Diagramm und
   nicht auf der Linie: im Ausfall-Diagramm liegt die Linie (2,77 h) auf der Hoehe des
   0,2-h-Balkens, dessen Summenbeschriftung dort steht — auf 375 px ueberlappten beide Texte.
   Der Strich links wiederholt die gestrichelte Linie im Diagramm. */
/* Der Strich trägt die Farbe der Ziellinie, der Text nicht: Oros-Gold erreicht auf dem hellen
   Grund der Marktumfeld-Sektion nur 2,1:1 und ist als 11-Pixel-Text nicht lesbar (Lighthouse
   color-contrast). Die Textfarbe der übrigen Diagrammbeschriftungen erreicht 5,6:1. */
.oros-public .kh-trend .kh-chart-ziel { display:flex; align-items:center; gap:8px; margin:2px 0 0; font-size:11px; font-weight:600; color:var(--oros-muted); }
.oros-public .kh-trend .kh-chart-ziel>span { width:22px; border-top:1.5px dashed var(--oros-gold); }
.oros-public .kh-contact-stats { display:flex; flex-wrap:wrap; column-gap:34px; row-gap:12px; margin-top:28px; font-size:13px; color:var(--oros-muted); }
.oros-public .kh-contact-stats>span { display:flex; align-items:baseline; gap:9px; }
.oros-public .kh-contact-stats .stat-value { color:var(--oros-text); font-weight:550; }
.oros-public .kh-products>.oros-section-heading { max-width:1000px; display:block; }
/* Speicher-Reihe statt Bühne links und Liste rechts. Die alte Zweispaltigkeit stellte 330 Pixel
   Listeninhalt gegen 1082 Pixel Bildhöhe (gemessen bei 1850 px) — daneben blieb in jeder Ansicht
   eine leere Fläche, egal ob die Liste zentriert stand oder mitlief.
   Die drei Speicher stehen jetzt klein nach groß auf einer Standlinie. flex-grow ist das
   Seitenverhältnis des jeweiligen Fotos: damit verhalten sich die Breiten wie die Verhältnisse,
   und alle drei Bilder bekommen rechnerisch dieselbe Höhe — ohne feste Pixelwerte je Gerät. */
.oros-public .kh-product-lineup { list-style:none; margin:44px 0 0; padding:0; display:flex; align-items:flex-end; gap:clamp(16px,2.4vw,40px); }
.oros-public .kh-product-lineup>li { flex-grow:calc(var(--image-width)/var(--image-height)); flex-shrink:1; flex-basis:0; min-width:0; }
.oros-public .kh-product-lineup>li>a { display:block; text-decoration:none; color:inherit; transition:transform .5s cubic-bezier(.22,1,.36,1); }
/* Ohne eine Reaktion beim Überfahren sieht die Reihe aus wie ein Standbild. Der Block
   „prefers-reduced-motion“ am Dateiende schaltet die Bewegung wieder ab. */
.oros-public .kh-product-lineup>li>a:hover, .oros-public .kh-product-lineup>li>a:focus-visible { transform:translateY(-8px); }
.oros-public .kh-product-shot { display:block; position:relative; width:100%; aspect-ratio:var(--crop-width)/var(--crop-height); overflow:hidden; }
/* object-fit hält das Seitenverhältnis auch dann, wenn eine Spalte schmaler wird als Höhe mal
   Verhältnis (Lighthouse image-aspect-ratio); object-position stellt die Speicher auf die Linie. */
.oros-public .kh-product-shot img { position:absolute; max-width:none; width:calc(var(--image-width)/var(--crop-width)*100%); height:calc(var(--image-height)/var(--crop-height)*100%); left:calc(var(--crop-left)/var(--crop-width)*-100%); top:calc(var(--crop-top)/var(--crop-height)*-100%); object-fit:contain; object-position:center bottom; pointer-events:none; }
/* Jedes Bild trägt seinen Namen: vorher stand die Zuordnung in einer Liste daneben und musste
   geraten werden. Die Trennlinie wiederholt den Rhythmus der offenen Listen der übrigen Sektionen. */
/* Name und Pfeil in einer Zeile, Kapazität darunter — derselbe Aufbau wie die offenen Linklisten
   der übrigen Sektionen, damit die Reihe als Navigation gelesen wird und nicht als Bildergalerie. */
.oros-public .kh-product-lineup>li>a { display:grid; grid-template-columns:1fr auto; align-items:center; column-gap:16px; }
.oros-public .kh-product-shot { grid-column:1/-1; }
.oros-public .kh-product-caption { grid-column:1; margin-top:20px; padding-top:16px; border-top:1px solid var(--oros-rule); min-width:0; }
.oros-public .kh-product-name { display:block; font-size:clamp(15px,1.05vw,18px); font-weight:600; letter-spacing:-.01em; }
.oros-public .kh-product-capacity { display:block; margin-top:4px; font-family:'JetBrains Mono',monospace; font-size:13px; color:var(--oros-muted); }
.oros-public .kh-product-lineup>li>a>.oros-arrow { grid-column:2; align-self:end; margin-bottom:6px; width:20px; height:20px; color:var(--oros-focus); transition:transform .35s cubic-bezier(.22,1,.36,1); }
.oros-public .kh-product-lineup>li>a:hover>.oros-arrow { transform:translateX(6px); }
.oros-public .kh-products>.kh-section-link { margin-top:44px; }
/* Produktfotos mit OROS-Logo (SharePoint „Produktfotos mit OROS logo“), bereits auf den Inhalt beschnitten — Ausschnitt = ganzes Bild. */
.oros-public .kh-family-5015 { --image-width:1426;--image-height:806;--crop-width:1426;--crop-height:806;--crop-left:0;--crop-top:0; }
.oros-public .kh-family-836 { --image-width:653;--image-height:888;--crop-width:653;--crop-height:888;--crop-left:0;--crop-top:0; }
.oros-public .kh-family-261 { --image-width:927;--image-height:1740;--crop-width:927;--crop-height:1740;--crop-left:0;--crop-top:0; }
.oros-public .kh-family-unmeasured { --image-width:1;--image-height:1;--crop-width:1;--crop-height:1;--crop-left:0;--crop-top:0; }
.oros-public .kh-family-unmeasured img { object-fit:contain; }
.oros-public .kh-app { background:#e8edef; }
html.dark .oros-public .kh-app { background:#1a2631; }
.oros-public .kh-app>div>.grid { grid-template-columns:1fr 1fr; gap:7%; }
.oros-public .kh-app h2 { font-size:clamp(36px,3.25vw,61px); font-weight:450; margin-bottom:28px; }
.oros-public .kh-app .app-shots { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:center; gap:24px; min-width:0; width:100%; }
.oros-public .kh-app .app-shot { position:relative; aspect-ratio:1470/2970; width:calc(50% - 12px); min-width:200px; max-width:290px; flex:none; transform:none; filter:none; }
.oros-public .kh-app .app-shot--offset { margin-top:100px; }
.oros-public .app-shot__screen { position:absolute; left:6.1224%; top:2.9293%; width:87.7551%; height:94.1414%; object-fit:cover; object-position:top; border-radius:11%/5.5%; }
.oros-public .app-shot__bezel { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.oros-public .app-store-badge { display:inline-block; margin:30px 0 15px; line-height:0; }
.oros-public .app-store-badge img { width:144px; height:48px; }
.oros-public .kh-app .text-xs,.oros-public .kh-finance .text-xs { font-size:11px; line-height:1.85; }
.oros-public .kh-finance .kh-finance-model { padding:26px 0 0; border-top:1px solid var(--oros-primary); }
.oros-public .kh-finance .kh-finance-model-use { border-color:var(--oros-gold); }
.oros-public .kh-finance .kh-finance-model>div:first-child { display:flex; flex-direction:column; align-items:start; gap:25px; margin-bottom:32px; }
.oros-public .kh-finance-model>div:first-child>.stat-value { font-family:'JetBrains Mono',monospace; font-size:12px; font-weight:400; color:var(--oros-muted)!important; }
.oros-public .kh-finance-model h3 { font-size:25px; font-weight:450; margin-bottom:12px; }
.oros-public .kh-finance-value { margin:35px 0 25px; }
.oros-public .kh-finance-value>.stat-value { font:400 64px/1.1 Inter,Arial,sans-serif; letter-spacing:-.065em; color:var(--oros-text)!important; }
.oros-public .kh-finance-model>p { min-height:130px; font-size:14px; line-height:1.85; }
.oros-public .kh-finance .grid { column-gap:8%; }
.oros-public .kh-finance-model .oros-fact-list { margin-top:25px; }
.oros-public .kh-process .grid { column-gap:8%; }
.oros-public .kh-process-steps { list-style:none; margin:0; padding:0; }
.oros-public .kh-process .grid>.kh-process-step { position:relative; padding-top:27px; border-top:1px solid var(--oros-rule); }
.oros-public .kh-process .grid>.kh-process-step .border-2 { border:0; width:auto; height:auto; }
.oros-public .kh-process .grid>.kh-process-step .stat-value { color:var(--oros-focus); font:400 52px/1.1 Inter,Arial,sans-serif; }
/* Prozess-Pfeile: ab drei Spalten steht zwischen den Schritten ein Chevron in der Spaltenlücke (Clemens, 20.09.2026). */
@media(min-width:1024px) {
  /* Mittig in der Spaltenluecke: die Luecke ist column-gap 8% der Rasterbreite, eine Spalte
     misst 28% davon — halbe Luecke sind also 14,29% der Spaltenbreite, gegen die ein Prozentwert
     in left rechnet. Mit den vorherigen 4% klebte das Chevron an der Ziffer der naechsten Spalte. */
  .oros-public .kh-process .grid>.kh-process-step+.kh-process-step::before { content:""; position:absolute; left:calc(-14.29% - 9px); top:44px; width:18px; height:18px; border-top:1.5px solid var(--oros-focus); border-right:1.5px solid var(--oros-focus); transform:rotate(45deg); }
}
.oros-public .kh-process h3 { font-size:25px; font-weight:450; }
.oros-public .kh-contact h2 { font-weight:450; font-size:clamp(36px,3.55vw,68px); line-height:1.1; }
.oros-public .kh-contact label { font-size:12px; font-weight:500; text-transform:none; letter-spacing:0; }
.oros-public .kh-contact :is(input,textarea) { border-radius:0; box-shadow:none; padding:15px 14px; font-size:15px; min-height:50px; }
.oros-public .kh-contact button[type=submit] { border-radius:0; box-shadow:none; transform:none; font-size:14px; min-height:56px; }
.oros-public .kh-contact .validation-message { color:#b42318; font-size:12px; line-height:1.6; margin-top:4px; }
html.dark .oros-public .kh-contact .validation-message { color:#ffb4ab; }
.oros-public .kh-careers>div>div { border-radius:0; border-inline:0; background:none; padding-inline:0; }
.oros-public .kh-news h2 { font-size:clamp(36px,3.55vw,68px); font-weight:450; }
@media(min-width:1800px) {
  .oros-public .kh-hero-lead { font-size:18px; }
}
@media(max-width:1100px) {
  .oros-public .kh-hero-copy { grid-template-columns:1.3fr 1fr; column-gap:6%; }
  .oros-public .kh-hero-copy h1 { font-size:49px; }
  .oros-public .kh-hero-lead { font-size:14px; }
  .oros-public .kh-primary-link { font-size:14px; gap:18px; padding:16px 20px; }
  .oros-public .kh-benefits { grid-template-columns:1fr 1.2fr; gap:0 7%; }
  .oros-public .kh-benefit-list article { display:block; }
  .oros-public .kh-benefit-list h3 { margin:18px 0 12px; }
  .oros-public .kh-market>div>.grid { grid-template-columns:1fr; gap:36px; }
  .oros-public .kh-trend { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); column-gap:8%; }
  .oros-public .kh-trend>.flex { grid-column:1; grid-row:1; }
  .oros-public .kh-trend h3 { grid-column:1; grid-row:2; min-height:0; }
  .oros-public .kh-trend .trend-subtitle { grid-column:1; grid-row:3; }
  .oros-public .kh-trend>.kh-chart { grid-column:2; grid-row:1/4; align-self:center; }
  .oros-public .kh-app>div>.grid { grid-template-columns:1fr; gap:45px; }
  .oros-public .kh-app .app-shots { justify-content:flex-start; }
  .oros-public .kh-app .app-shot { width:240px; }
  .oros-public .kh-app .app-shot--offset { margin-top:55px; }
}
@media(max-width:760px) {
  .oros-public { --oros-gutter:24px; }
  .oros-public .kh-hero-stage { padding-top:48px; }
  .oros-public .kh-hero-copy { display:block; }
  .oros-public .kh-hero-copy h1 { font-size:clamp(39px,7.2vw,61px); }
  .oros-public .kh-hero-lead { margin-top:25px; max-width:540px; font-size:15px; }
  .oros-public .kh-hero-copy>.kh-primary-link { margin-top:28px; font-size:12px; min-height:53px; }
  .oros-public .kh-hero-visual { margin-top:36px; height:340px; }
  .oros-public .kh-brand-core { grid-template-columns:1fr; gap:25px; }
  .oros-public .kh-brand-core article+article { border-left:0; border-top:1px solid var(--oros-rule); padding:22px 0 0; }
  .oros-public .kh-brand-core h2 { font-size:16px; }
  .oros-public .kh-trust-strip { justify-content:flex-start; gap:14px 23px; }
  .oros-public .klarheit-home>section:not(.kh-hero) { padding-block:72px; }
  .oros-public .kh-benefits,.oros-public .kh-split-heading { display:block; }
  .oros-public .kh-section .oros-section-heading { margin-bottom:38px; }
  .oros-public .kh-section .oros-section-heading h2 { font-size:37px; line-height:1.12; }
  .oros-public .kh-section .oros-section-heading p { font-size:14px; }
  .oros-public .kh-benefit-list { gap:30px; }
  .oros-public .kh-benefit-list article { display:grid; grid-template-columns:.85fr 1fr; }
  .oros-public .kh-benefit-list .kh-metric { font-size:52px; }
  .oros-public .kh-benefit-list h3 { margin:0; font-size:20px; }
  .oros-public .kh-benefits>.kh-section-link { margin-top:32px; }
  .oros-public .kh-finance-value>.stat-value { font-size:50px; }
  .oros-public .kh-finance-model>p { min-height:195px; }
  /* Schmal bricht der Container in eine eigene Zeile; die beiden Schränke teilen sich die erste. */
  .oros-public .kh-product-lineup { flex-wrap:wrap; }
  .oros-public .kh-product-lineup>.kh-family-5015 { flex-basis:100%; }
}
@media(max-width:600px) {
  .oros-public .kh-trend { display:block; }
  .oros-public .kh-trend>.flex .stat-value { font-size:58px; }
  .oros-public .kh-trend>.flex .stat-value+span { font-size:18px; }
  .oros-public .kh-trend h3 { font-size:26px; min-height:0; }
  .oros-public .kh-trend .trend-subtitle { min-height:0; }
  .oros-public .kh-app .app-shots { justify-content:center; gap:35px; }
  .oros-public .kh-app .app-shot--offset { margin-top:0; }
}
@media(max-width:480px) {
  .oros-public .kh-hero-stage { padding-top:39px; }
  .oros-public .kh-hero-copy h1 { font-size:clamp(33px,8.7vw,42px); letter-spacing:-.055em; }
  .oros-public .kh-hero-lead { font-size:14px; margin-top:24px; }
  .oros-public .kh-hero-visual { height:300px; margin-top:32px; }
  .oros-public .kh-benefit-list article { display:block; }
  .oros-public .kh-benefit-list .kh-metric { font-size:64px; }
  .oros-public .kh-benefit-list h3 { margin:20px 0 14px; font-size:23px; }
  .oros-public .kh-finance .grid { grid-template-columns:1fr; gap:45px; }
  .oros-public .kh-finance-value>.stat-value { font-size:65px; }
  .oros-public .kh-finance-model>p { min-height:0; }
  .oros-public .kh-app h2 { font-size:37px; }
  .oros-public .kh-section-link { font-size:13px; gap:17px; }
}
@media(prefers-reduced-motion:reduce) {
  .oros-public * { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
}

.oros-public .kh-market-source { line-height:1.6; }
.oros-public .kh-careers .section-label { margin-bottom:4px; }

/* ============================================================================
   Gemeinsame Seitenhuelle (vormals oros-klarheit-shell.css)
   ============================================================================ */
.oros-public .oros-site-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--oros-bg-primary);color:var(--oros-text)}
.oros-public .site-content{flex:1;min-width:0;outline:none}
.oros-public .oros-site-header{position:sticky;top:0;z-index:40;display:flex;gap:26px;justify-content:space-between;align-items:center;padding:20px var(--oros-gutter);border-bottom:1px solid var(--oros-rule);background:var(--oros-bg-primary);transition:box-shadow .25s ease,background-color .25s ease}
.oros-public .oros-site-header.is-scrolled{background:color-mix(in srgb,var(--oros-bg-primary) 96%,transparent);backdrop-filter:blur(12px);box-shadow:0 4px 24px rgb(0 0 0 / .07)}
html:has(body.oros-public){scroll-padding-top:calc(var(--oros-header-height,96px) + 24px)}
.oros-public .oros-site-brand{display:block;flex:none;line-height:0}
.oros-public .oros-site-brand img{display:block;width:165px;height:auto;max-width:100%}
.oros-public .oros-site-brand .oros-logo-dark{display:none}
html.dark .oros-public .oros-site-brand .oros-logo-light{display:none}
html.dark .oros-public .oros-site-brand .oros-logo-dark{display:block}
.oros-public .oros-site-navigation{display:flex;gap:26px;font-size:12px;align-items:center}
.oros-public .oros-site-navigation a{padding:9px 0;white-space:nowrap;line-height:1.65;color:inherit;text-decoration:none}
.oros-public .oros-site-navigation a:hover{text-decoration:underline;text-underline-offset:6px}
.oros-public .oros-header-actions{display:flex;gap:14px;align-items:center}
.oros-public .oros-theme-toggle{background:none;border:0;padding:10px;color:inherit;width:44px;height:44px;display:grid;place-items:center;cursor:pointer;flex:none}
.oros-public .oros-theme-toggle svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.4}
.oros-public .oros-theme-toggle svg path{fill:currentColor;stroke:none}
.oros-public .oros-menu-toggle{display:none;gap:12px;align-items:center;background:none;border:0;padding:10px;color:inherit;font-size:13px;min-height:44px;cursor:pointer}
.oros-public .oros-menu-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4}
.oros-public .oros-header-cta{display:flex;align-items:center;gap:16px;font-size:13px;font-weight:600;white-space:nowrap;border:1px solid var(--oros-primary);padding:12px 18px;min-height:46px;background:var(--oros-primary);color:#fff;text-decoration:none;transition:background-color .2s ease,border-color .2s ease}
.oros-public .oros-header-cta:hover{background:#0147b8;border-color:#0147b8}
.oros-public .oros-header-cta .oros-arrow{width:18px}
.oros-public .oros-arrow{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;transition:transform .2s}
.oros-public a:hover>.oros-arrow{transform:translateX(3px)}
.oros-public .oros-site-header :is(a,button):focus-visible,.oros-public .oros-site-footer :is(a,button,input):focus-visible{outline:3px solid var(--oros-focus);outline-offset:6px}
html.dark .oros-public .oros-site-header :is(a,button):focus-visible,html.dark .oros-public .oros-site-footer :is(a,button,input):focus-visible{outline-color:var(--oros-focus)}
.oros-public .oros-skip-link{position:fixed;top:10px;left:20px;z-index:100;padding:12px 20px;background:var(--oros-bg-primary);color:var(--oros-text);transform:translateY(-180%);text-decoration:none}
.oros-public .oros-skip-link:focus{transform:translateY(0);outline:3px solid var(--oros-focus);outline-offset:3px}
html.dark .oros-public .oros-skip-link:focus{outline-color:var(--oros-focus)}
.oros-public .oros-site-footer{border-top:1px solid var(--oros-rule);padding:80px var(--oros-gutter) 32px;background:var(--oros-bg-primary)}
.oros-public .oros-footer-grid{display:grid;grid-template-columns:1fr 3fr;gap:7%;margin-bottom:55px;max-width:var(--oros-width);margin-inline:auto}
.oros-public .oros-footer-brand .oros-site-brand img{width:198px}
.oros-public .oros-footer-brand>p{font-size:13px;line-height:1.85;color:var(--oros-muted);max-width:285px;margin:25px 0}
.oros-public .oros-footer-contact{display:flex;flex-direction:column;gap:9px;font-size:13px;line-height:1.65;color:var(--oros-muted)}
.oros-public .oros-footer-contact a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.oros-public .oros-footer-contact a:hover{text-decoration:underline;text-underline-offset:4px}
.oros-public .oros-footer-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:36px 26px;align-items:start}
.oros-public .oros-site-footer h2{font-size:12px;line-height:1.5;font-weight:550;letter-spacing:.01em;margin:0 0 18px;color:var(--oros-muted)}
.oros-public .oros-site-footer .oros-footer-links{display:flex;flex-direction:column;list-style:none;padding:0;margin:0;border:0;gap:6px}
.oros-public .oros-site-footer .oros-footer-links>li{display:block;padding:0;border:0;font-size:13px;font-weight:400;line-height:1.65}
.oros-public .oros-site-footer .oros-footer-links a{display:inline-block;min-height:32px;padding:5px 0;color:var(--oros-text);text-decoration:none;border:0;line-height:1.65}
.oros-public .oros-site-footer .oros-footer-links a:hover{text-decoration:underline;text-underline-offset:5px}
.oros-public .oros-footer-project>p{font-size:13px;line-height:1.85;color:var(--oros-muted);margin:0 0 20px}
.oros-public .oros-footer-cta{display:inline-flex;padding:13px 17px;background:var(--oros-primary);color:white;font-size:12px;font-weight:550;line-height:1.6;text-decoration:none}
.oros-public .oros-footer-cta:hover{background:#0147b8}
.oros-public .oros-footer-newsletter{max-width:var(--oros-width);margin:0 auto 50px}
.oros-public .oros-newsletter-fields{display:flex;width:min(100%,420px);border-bottom:1px solid var(--oros-text)}
.oros-public .oros-newsletter-fields input{min-width:0;flex:1;padding:12px 0;border:0;border-radius:0;background:transparent;color:var(--oros-text);font:inherit;font-size:14px;outline:none}
.oros-public .oros-newsletter-fields input::placeholder{color:var(--oros-muted);opacity:1}
.oros-public .oros-newsletter-fields button{flex:none;background:none;color:var(--oros-text);padding:8px 14px;border:0;font:inherit;font-size:24px;cursor:pointer;min-width:48px}
.oros-public .oros-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:26px;border-top:1px solid var(--oros-rule);font-size:11px;color:var(--oros-muted);max-width:var(--oros-width);margin-inline:auto}
.oros-public .oros-footer-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 20px}
.oros-public .oros-site-footer .oros-footer-legal{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;list-style:none;padding:0;margin:0;gap:12px 20px;border:0}
.oros-public .oros-site-footer .oros-footer-legal>li{display:block;margin:0;padding:0;font:inherit;border:0}
.oros-public .oros-site-footer .oros-footer-legal a{display:inline-block;padding:8px 0;color:inherit;font:inherit;text-decoration:none;border:0}
.oros-public .oros-site-footer .oros-footer-legal a:hover{text-decoration:underline;text-underline-offset:4px}
.oros-public .oros-cookie-settings{background:transparent;border:0;padding:8px 0;color:inherit;font:inherit;cursor:pointer}
.oros-public .oros-cookie-settings:hover{text-decoration:underline;text-underline-offset:4px}
.oros-public .oros-footer-theme{display:flex;width:auto;gap:9px;padding:8px 0;font:inherit}
.oros-public .oros-footer-theme svg{width:18px;height:18px}
.oros-runtime-error{display:none;position:fixed;bottom:0;left:0;right:0;background:#a4161a;color:#fff;padding:16px;text-align:center;z-index:9999;font-size:14px}
.oros-runtime-error .reload{color:inherit;text-decoration:underline;margin-left:8px}
.oros-runtime-error .dismiss{cursor:pointer;margin-left:16px;background:none;border:none;color:inherit;font-size:24px;line-height:1}
@media(min-width:1800px){.oros-public .oros-site-navigation{font-size:14px}.oros-public .oros-header-cta{font-size:13px}}
@media(max-width:1100px){
 .oros-public .oros-site-header{gap:20px;flex-wrap:wrap}
 .oros-public .oros-header-cta:not(.oros-header-back){display:none}
 .oros-public .oros-site-navigation{width:100%;order:3;flex-direction:column;align-items:stretch;gap:0;font-size:16px}
 .oros-public .oros-site-navigation a{padding:15px 0;border-bottom:1px solid var(--oros-rule)}
 html.js .oros-public .oros-site-navigation{display:none;position:absolute;top:100%;left:0;right:0;z-index:30;background:var(--oros-bg-primary);border-bottom:1px solid var(--oros-rule);padding:20px var(--oros-gutter);max-height:calc(100dvh - 90px);overflow:auto}
 html.js .oros-public .oros-site-navigation.is-open{display:flex}
 html.js .oros-public .oros-menu-toggle{display:flex}
 .oros-public .oros-footer-grid{grid-template-columns:1fr 2fr;gap:7%}
 .oros-public .oros-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
 .oros-public .oros-footer-bottom{align-items:flex-start;flex-direction:column}
 .oros-public .oros-footer-controls{justify-content:flex-start}
}
@media(max-width:760px){
 .oros-public .oros-site-header{padding-block:18px}
 .oros-public .oros-site-brand img{width:135px}
 .oros-public .oros-header-actions{gap:8px}
 .oros-public .oros-site-footer{padding-top:56px}
 .oros-public .oros-footer-grid{grid-template-columns:1fr;gap:40px;margin-bottom:40px}
 .oros-public .oros-footer-brand>p{max-width:440px}
 .oros-public .oros-footer-columns{gap:32px 28px}
 .oros-public .oros-footer-brand .oros-site-brand img{width:180px}
 .oros-public .oros-footer-bottom{gap:14px}
 .oros-public .oros-footer-newsletter{margin-bottom:35px}
}
@media(max-width:360px){.oros-public .oros-site-header{gap:10px}.oros-public .oros-header-actions{gap:0}.oros-public .oros-menu-toggle{gap:6px;padding-inline:6px}.oros-public .oros-footer-columns{column-gap:20px}}
@media(prefers-reduced-motion:reduce){.oros-public .oros-arrow{transition:none}}

/* ============================================================================
   Inhalts- und Katalogseiten (vormals oros-klarheit-content.css)
   ============================================================================ */
.oros-public .oros-content-container { width:100%; max-width:var(--oros-width); margin-inline:auto; }
.oros-public .oros-content-section { padding:80px var(--oros-gutter); }
.oros-public .oros-page-hero { padding:86px var(--oros-gutter) 74px; }
.oros-public .oros-page-hero-inner { max-width:var(--oros-width); margin:auto; display:grid; grid-template-columns:1.5fr 1fr; column-gap:8%; align-items:end; }
.oros-public .oros-page-heading h1 { margin:0; font-size:clamp(44px,4.45vw,82px); font-weight:450; letter-spacing:-.055em; line-height:1.075; text-wrap:balance; hyphens:auto; overflow-wrap:break-word; }
.oros-public .oros-content-label { margin:0 0 26px; color:var(--oros-primary); font-size:12px; font-weight:550; line-height:1.6; letter-spacing:.01em; text-transform:none; }
.oros-public .oros-page-intro { padding-bottom:4px; }
.oros-public .oros-page-intro>p { margin:0; color:var(--oros-muted); font-size:16px; line-height:1.85; max-width:540px; }
.oros-public .oros-content-actions { display:flex; flex-wrap:wrap; gap:16px; align-items:center; margin-top:30px; }
.oros-public .oros-section-heading { display:grid; grid-template-columns:1.3fr 1fr; gap:32px 8%; align-items:end; margin-bottom:58px; }
.oros-public .oros-section-heading h2 { margin:0; font-size:clamp(32px,3.3vw,62px); font-weight:450; letter-spacing:-.045em; line-height:1.14; text-wrap:balance; }
.oros-public .oros-section-intro>p { margin:0; color:var(--oros-muted); line-height:1.85; font-size:16px; }
.oros-public .oros-index-section { padding-top:20px; }
.oros-public .oros-collection { display:flex; flex-direction:column; }
.oros-public .oros-collection-state { min-height:220px; padding:70px 0; display:flex; justify-content:center; align-items:center; color:var(--oros-muted); border-top:1px solid var(--oros-rule); }
.oros-public .oros-loading-indicator { width:32px; height:32px; border:2px solid var(--oros-rule); border-top-color:var(--oros-primary); border-radius:50%; animation:oros-content-loading 1s linear infinite; }
@keyframes oros-content-loading { to { transform:rotate(360deg); } }
.oros-public .oros-article-teaser { display:grid; grid-template-columns:1fr; gap:28px; width:100%; position:relative; padding:36px 0; color:var(--oros-text); text-decoration:none; border-top:1px solid var(--oros-rule); }
.oros-public .oros-article-teaser:has(.oros-teaser-image) { grid-template-columns:minmax(220px,.55fr) 1fr; column-gap:6%; }
.oros-public .oros-teaser-image { overflow:hidden; aspect-ratio:16/10; background:var(--oros-bg-secondary); }
.oros-public .oros-teaser-image img { display:block; width:100%; height:100%; object-fit:cover; }
.oros-public .oros-teaser-content { display:flex; flex-direction:column; align-items:start; min-width:0; }
.oros-public .oros-article-meta { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px 24px; color:var(--oros-muted); font-size:12px; line-height:1.5; margin-bottom:22px; }
.oros-public .oros-article-meta .oros-content-label { margin:0; }
.oros-public .oros-teaser-content h2,.oros-public .oros-teaser-content h3 { margin:0 0 16px; font-size:clamp(24px,2.25vw,38px); font-weight:450; letter-spacing:-.035em; line-height:1.2; hyphens:auto; overflow-wrap:break-word; }
.oros-public .oros-teaser-content>p { margin:0; max-width:780px; color:var(--oros-muted); font-size:15px; line-height:1.85; }
.oros-public .oros-teaser-action { display:inline-flex; align-items:center; gap:20px; color:var(--oros-primary); font-size:13px; font-weight:550; line-height:1.6; padding-top:25px; margin-top:auto; }
.oros-public .oros-article-teaser:hover h2,.oros-public .oros-article-teaser:hover h3 { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:5px; }
.oros-public .oros-product-listing { display:grid; grid-template-columns:1.25fr 1fr; column-gap:9%; align-items:center; padding:52px 0; border-top:1px solid var(--oros-rule); text-decoration:none; color:inherit; }
.oros-public .oros-product-listing-image { position:relative; display:flex; min-height:360px; align-items:center; justify-content:center; }
.oros-public .oros-product-listing-image img { height:350px; width:100%; object-fit:contain; padding:24px; }
.oros-public .oros-product-listing-image>.oros-content-label { position:absolute; left:24px; top:24px; margin:0; }
.oros-public .oros-product-listing-content h2 { margin:0 0 18px; font-size:clamp(40px,4.2vw,72px); font-weight:450; letter-spacing:-.055em; line-height:1.1; }
.oros-public .oros-product-listing-content>p { margin:0; color:var(--oros-muted); font-size:16px; line-height:1.85; }
.oros-public .oros-product-listing-specs { margin:32px 0 0; }
.oros-public .oros-product-listing:hover .oros-teaser-action { text-decoration:underline; }
.oros-public .oros-detail-row { display:grid; grid-template-columns:minmax(120px,.9fr) minmax(0,1.4fr); gap:20px; padding:15px 0; border-bottom:1px solid var(--oros-rule); }
.oros-public .oros-detail-row dt { color:var(--oros-muted); font-size:13px; line-height:1.65; font-weight:400; }
.oros-public .oros-detail-row dd { margin:0; color:var(--oros-text); font-size:14px; line-height:1.65; font-weight:500; overflow-wrap:anywhere; }
.oros-public .oros-product-listing-specs dd { font-variant-numeric:tabular-nums; }
.oros-public .pd-content h2 { font-size:12px; font-weight:500; line-height:1.65; letter-spacing:.01em; text-transform:none; color:var(--oros-muted); }
.oros-public .oros-article-page { width:100%; max-width:1160px; margin:auto; padding:70px var(--oros-gutter) 110px; }
.oros-public .oros-article-page-wide { max-width:calc(var(--oros-width) + 2 * var(--oros-gutter)); }
.oros-public .oros-article-with-aside { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:9%; align-items:start; }
.oros-public .oros-article-body { min-width:0; }
.oros-public .oros-article-body>h1 { font-size:clamp(36px,3.9vw,67px); font-weight:450; line-height:1.15; letter-spacing:-.045em; margin:0 0 26px; }
.oros-public .oros-article-body>p { color:var(--oros-muted); font-size:19px; line-height:1.75; margin:0 0 38px; }
.oros-public .oros-article-body>div>p { font-size:16px; line-height:1.9; }
.oros-public .oros-article-body>div>h2 { font-size:30px; line-height:1.3; font-weight:450; margin-top:28px; }
.oros-public .oros-article-body>h2 { font-size:30px; line-height:1.3; font-weight:450; }
.oros-public .oros-article-body .text-gold { color:var(--oros-focus); }
.oros-public .oros-article-body h2.text-xs { font-size:12px; font-weight:550; line-height:1.65; letter-spacing:.01em; text-transform:none; }
.oros-public .oros-article-body figure { margin:38px 0; }
.oros-public .oros-article-body figure img { border:0; border-radius:0; }
.oros-public .oros-content-quote { padding:24px 0 24px 26px; border-left:2px solid var(--oros-primary); background:none; border-radius:0; }
.oros-public .oros-content-quote>p { font-size:22px; line-height:1.65; }
.oros-public .oros-takeaways { margin:38px 0; padding:30px; background:var(--oros-bg-secondary); border-top:1px solid var(--oros-rule); }
.oros-public .oros-article-body .oros-takeaways>h2 { margin:0 0 16px; color:var(--oros-focus); font-size:12px; font-weight:550; line-height:1.65; letter-spacing:.01em; text-transform:none; }
.oros-public .oros-takeaways .oros-fact-list { margin-top:16px; }
.oros-public .oros-takeaways .oros-fact-list>li { font-size:15px; }
.oros-public .oros-content-cta { margin-top:52px; padding:38px 0; border-top:1px solid var(--oros-rule); border-bottom:1px solid var(--oros-rule); text-align:left; }
.oros-public .oros-content-cta h2 { margin:0 0 20px; font-size:clamp(28px,3vw,44px); font-weight:450; line-height:1.2; }
.oros-public .oros-content-cta p { margin-left:0; margin-right:0; font-size:16px; line-height:1.8; }
.oros-public .oros-content-cta>.flex { justify-content:flex-start; }
.oros-public .oros-faq-groups { display:flex; flex-direction:column; gap:66px; }
.oros-public .oros-faq-group { display:grid; grid-template-columns:.6fr 1fr; gap:5%; align-items:start; scroll-margin-top:120px; }
.oros-public .oros-faq-group>h2 { font-size:30px; line-height:1.2; font-weight:450; }
.oros-public .oros-faq-item { border-top:1px solid var(--oros-rule); padding:0; }
.oros-public .oros-faq-item:last-child { border-bottom:1px solid var(--oros-rule); }
.oros-public .oros-faq-item>summary { display:flex; align-items:center; justify-content:space-between; gap:30px; width:100%; min-height:78px; padding:24px 0; cursor:pointer; list-style:none; font-size:16px; font-weight:500; line-height:1.5; }
.oros-public .oros-faq-item>summary::-webkit-details-marker { display:none; }
.oros-public .oros-faq-item>summary>svg { flex:none; color:var(--oros-muted); transition:transform .15s ease; }
.oros-public .oros-faq-item[open]>summary>svg { transform:rotate(180deg); }
.oros-public .oros-faq-answer { padding:0 48px 28px 0; color:var(--oros-muted); font-size:15px; line-height:1.85; }
.oros-public .oros-faq-answer>p { margin:0; }
.oros-public .oros-legal-section { padding:86px var(--oros-gutter) 110px; }
.oros-public .oros-legal-container { max-width:1000px; margin-inline:auto; }
.oros-public .oros-legal-heading { margin-bottom:64px; }
.oros-public .oros-legal-heading h1 { font-size:clamp(40px,4.7vw,80px); font-weight:450; margin-bottom:24px; hyphens:auto; overflow-wrap:anywhere; }
.oros-public .oros-legal-heading>p { max-width:700px; }
.oros-public .oros-legal-heading>p:first-child { color:var(--oros-focus); font-size:12px; letter-spacing:.01em; text-transform:none; }
.oros-public .oros-legal-block { padding:36px 0; border-top:1px solid var(--oros-rule); }
.oros-public .oros-legal-block h2 { margin:0 0 22px; font-size:28px; line-height:1.25; font-weight:450; }
.oros-public .oros-legal-block p { font-size:15px; line-height:1.85; }
.oros-public .oros-legal-block a { overflow-wrap:anywhere; }
.oros-public .oros-legal-block>.flex { justify-content:flex-start; }
.oros-public .oros-feature-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 8%; }
.oros-public .oros-feature-list-three { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 5%; }
.oros-public .oros-feature-row { padding:28px 0; border-top:1px solid var(--oros-rule); }
.oros-public .oros-feature-row h3 { font-size:24px; font-weight:450; margin-bottom:14px; }
.oros-public .oros-feature-row p { font-size:15px; line-height:1.85; color:var(--oros-muted); }
.oros-public .oros-press-contact { border-top:1px solid var(--oros-rule); padding-top:24px; }
.oros-public .oros-press-person { display:flex; flex-direction:column; gap:24px; align-items:start; }
.oros-public .oros-press-portrait { width:160px; height:180px; object-fit:cover; }
.oros-public .oros-press-contact a { min-height:44px; }
.oros-public .oros-press-contact a span { font-size:13px; }
.oros-public .oros-press-contact>p,.oros-public .oros-press-contact .text-gold { color:var(--oros-focus); letter-spacing:.01em; text-transform:none; }
.oros-public .pd-content .text-gold,.oros-public .pd-hero+section .text-gold { color:var(--oros-focus); letter-spacing:.01em; text-transform:none; }
.oros-public .oros-jobs-section .oros-section-heading { display:block; margin:0; }
.oros-public .oros-jobs-section .oros-section-heading h2 { font-size:clamp(30px,3vw,48px); }
.oros-public .oros-jobs-section .oros-section-intro { margin-top:22px; }
.oros-public .oros-jobs-section a>h3 { white-space:normal; overflow:visible; font-size:18px; line-height:1.5; }
.oros-public .oros-team-section { padding:86px var(--oros-gutter); }
.oros-public .oros-team-grid { display:grid; grid-template-columns:repeat(var(--oros-team-columns,3),minmax(0,1fr)); gap:48px; }
.oros-public .oros-team-list { display:flex; flex-direction:column; }
.oros-public .oros-team-member { display:block; position:relative; min-width:0; padding:28px 0; border-top:1px solid var(--oros-rule); color:inherit; text-decoration:none; }
.oros-public .oros-team-member-row { display:grid; grid-template-columns:minmax(200px,.5fr) 1fr; gap:8%; padding:44px 0; }
.oros-public .oros-team-photo { margin-bottom:26px; overflow:hidden; background:var(--oros-bg-secondary); }
.oros-public .oros-team-photo img { width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; }
.oros-public .oros-team-initials { display:flex; aspect-ratio:4/5; align-items:center; justify-content:center; font-size:64px; color:var(--oros-primary); }
.oros-public .oros-team-member-row .oros-team-photo { margin:0; align-self:start; }
.oros-public .oros-team-member h3 { margin:0 0 10px; font-size:30px; font-weight:450; line-height:1.2; }
.oros-public .oros-team-role { color:var(--oros-primary); font-size:13px; font-weight:500; }
.oros-public .oros-team-bio { margin-top:24px; color:var(--oros-muted); font-size:15px; line-height:1.85; }
.oros-public .oros-team-member blockquote { margin-top:24px; padding-left:22px; border-left:1px solid var(--oros-rule); color:var(--oros-muted); font-size:16px; line-height:1.8; }
.oros-public .oros-team-expertise { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:20px; color:var(--oros-muted); font-size:12px; }
.oros-public .oros-team-member:hover .oros-teaser-action { text-decoration:underline; }
.oros-public .oros-team-mosaic { position:relative; overflow:hidden; background:#182329; color:#fff; padding:90px var(--oros-gutter); }
.oros-public .oros-team-mosaic-shade { position:absolute; inset:0; background:#182329; opacity:.75; }
.oros-public .oros-team-mosaic .section-label { color:#abcaff; }
.oros-public .oros-team-mosaic a { color:#c9dcff; }
.oros-public .oros-comparison-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:6%; }
.oros-public .oros-comparison-summary>div { padding-top:28px; border-top:1px solid var(--oros-rule); }
.oros-public .oros-comparison-title { font-size:23px; line-height:1.3; margin:0; }
.oros-public .oros-not-found-hero { padding-bottom:44px; }
html.dark .oros-public .oros-content-label,html.dark .oros-public .oros-teaser-action,html.dark .oros-public .oros-team-role { color:#a8caff; }
@media(min-width:1600px) { .oros-public .oros-page-hero { padding-block:104px 88px; } }
@media(max-width:1000px) {
  .oros-public .oros-page-hero-inner { grid-template-columns:1.2fr 1fr; column-gap:6%; }
  .oros-public .oros-article-with-aside { grid-template-columns:minmax(0,1fr) 220px; gap:6%; }
  .oros-public .oros-section-heading { column-gap:6%; }
  .oros-public .oros-team-grid { gap:26px; }
  .oros-public .oros-team-member h3 { font-size:25px; }
  .oros-public .oros-product-listing { column-gap:6%; }
  .oros-public .oros-product-listing-image { min-height:300px; }
  .oros-public .oros-product-listing-image img { height:300px; }
}
@media(max-width:760px) {
  .oros-public .oros-content-section { padding-block:60px; }
  .oros-public .oros-page-hero { padding-block:56px; }
  .oros-public .oros-page-hero-inner,.oros-public .oros-section-heading { grid-template-columns:1fr; gap:30px; }
  .oros-public .oros-page-heading h1 { max-width:700px; font-size:clamp(38px,7.5vw,56px); }
  .oros-public .oros-page-intro>p { max-width:650px; }
  .oros-public .oros-content-label { margin-bottom:18px; }
  .oros-public .oros-index-section { padding-top:0; }
  .oros-public .oros-article-teaser:has(.oros-teaser-image) { grid-template-columns:1fr; }
  .oros-public .oros-teaser-image { max-height:350px; }
  .oros-public .oros-article-page { padding-block:48px 72px; }
  .oros-public .oros-article-with-aside { grid-template-columns:1fr; gap:60px; }
  .oros-public .oros-article-body>h1 { font-size:clamp(34px,6vw,46px); }
  .oros-public .oros-article-body>p { font-size:18px; }
  .oros-public .oros-takeaways { padding:24px; }
  .oros-public .oros-faq-group { grid-template-columns:1fr; gap:20px; }
  .oros-public .oros-feature-list-three { grid-template-columns:1fr; }
  .oros-public .oros-team-grid { grid-template-columns:1fr; }
  .oros-public .oros-team-member:not(.oros-team-member-row) { display:grid; grid-template-columns:.65fr 1fr; gap:6%; }
  .oros-public .oros-team-member-row { grid-template-columns:minmax(140px,.5fr) 1fr; gap:6%; }
  .oros-public .oros-comparison-summary { grid-template-columns:1fr; row-gap:42px; }
  .oros-public .oros-product-listing { grid-template-columns:1fr; row-gap:30px; padding-block:34px; }
  .oros-public .oros-product-listing-image img { height:330px; }
}
@media(max-width:480px) {
  .oros-public .oros-content-section { padding-block:48px; }
  .oros-public .oros-page-hero { padding-top:40px; }
  .oros-public .oros-page-heading h1 { font-size:38px; }
  .oros-public .oros-article-teaser { padding-block:28px; }
  .oros-public .oros-detail-row { grid-template-columns:1fr; gap:4px; }
  .oros-public .oros-product-listing-specs .oros-detail-row,.oros-public .pd-key-specs .oros-detail-row { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; }
  .oros-public .oros-feature-list { grid-template-columns:1fr; }
  .oros-public .oros-team-member-row,.oros-public .oros-team-member:not(.oros-team-member-row) { grid-template-columns:1fr; gap:24px; }
  .oros-public .oros-team-photo { max-width:300px; margin-bottom:0; }
  .oros-public .oros-faq-answer { padding-right:0; }
  .oros-public .oros-legal-section { padding-block:48px 70px; }
  .oros-public .oros-legal-heading { margin-bottom:40px; }
  .oros-public .oros-legal-heading h1 { font-size:clamp(28px,8.5vw,40px); }
  .oros-public .oros-index-section { padding-top:0; }
}
@media(prefers-reduced-motion:reduce) {
  .oros-public .oros-loading-indicator { animation:none; }
  .oros-public .oros-faq-item>summary>svg { transition:none; }
}

.oros-public .oros-button { display:inline-flex; align-items:center; justify-content:center; min-height:56px; padding:16px 25px; gap:24px; border-radius:0; box-shadow:none; transform:none; text-decoration:none; font-size:15px; font-weight:600; line-height:1.6; transition:background-color .2s ease,color .2s ease,border-color .2s ease; }
.oros-public .oros-button:hover { box-shadow:none; transform:none; }
.oros-public .oros-button-primary { background:var(--oros-primary); border:1px solid var(--oros-primary); color:#fff; }
.oros-public .oros-button-primary:hover { background:#0147b8; border-color:#0147b8; }
.oros-public .oros-button-secondary,.oros-public .oros-button-outline { background:transparent; color:var(--oros-text); border:1px solid var(--oros-rule); }
.oros-public .oros-button-secondary:hover,.oros-public .oros-button-outline:hover { border-color:var(--oros-primary); background:var(--oros-bg-secondary); }
.oros-public .oros-button-ghost { background:transparent; color:var(--oros-text); border:1px solid transparent; }
.oros-public .oros-button-ghost:hover { background:var(--oros-bg-secondary); }
.oros-public .oros-story-side-heading { display:block; }
.oros-public .oros-story-side-heading .oros-section-intro { margin-top:26px; }
.oros-public .oros-feature-list-single { grid-template-columns:1fr; }
.oros-public .oros-article-tag { padding-right:18px; color:var(--oros-muted); font-size:12px; }
.oros-public .oros-team-references { margin-top:30px; border-color:#66747c; }
.oros-public .oros-team-references>li { border-color:#66747c; }
.oros-public .oros-team-references a { color:#fff; background:rgb(255 255 255 / .05); }
.oros-public .oros-team-references a:hover { color:#fff; background:rgb(255 255 255 / .12); }
.oros-public .oros-team-references .oros-arrow { border-color:#87969f; background:rgb(255 255 255 / .08); }
.oros-public .oros-team-mosaic :is(a,button):focus-visible { outline-color:#b8d3ff; }
.oros-public .oros-mosaic-portraits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; width:100%; max-width:520px; margin-left:auto; } .oros-public .oros-mosaic-portrait { overflow:hidden; aspect-ratio:3/4; background:#111; } .oros-public .oros-mosaic-portrait-image { display:block; width:100%; height:100%; object-fit:cover; } @media(max-width:760px) { .oros-public .oros-mosaic-portraits { margin-inline:0; max-width:620px; gap:12px; } }
/* Fünf und mehr Porträts: Sechser-Raster, je Porträt zwei Spuren — Reihe 1 drei Bilder, Reihe 2 zwei Bilder mittig. Höhe bleibt beim Text daneben. */
.oros-public .oros-mosaic-portraits-dense { grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; max-width:600px; }
.oros-public .oros-mosaic-portraits-dense>.oros-mosaic-portrait { grid-column:span 2; }
.oros-public .oros-mosaic-portraits-dense>.oros-mosaic-portrait:nth-child(4) { grid-column:2/4; }
.oros-public .oros-mosaic-portraits-dense>.oros-mosaic-portrait:nth-child(5) { grid-column:4/6; }
@media(max-width:760px) { .oros-public .oros-mosaic-portraits-dense { gap:8px; } }
/* Kopfgröße und Augenhöhe gleicht der Server an (Bildpipeline, BildSituation.TeamMosaik) — hier kein Zoom je Person. */
