/* Finish-Durchgang (Claude): gezielte Korrekturen, überschreibt ältere Regeln bewusst. */

/* 1 · Genau ein Menü: Wo die Navigation sichtbar ist (über 700 px), gibt es keinen zweiten Menü-Knopf mit denselben Links.
   Darunter ist der Knopf das einzige Menü und öffnet das Vollbild-Menü. */
@media(min-width:701px){.rs-menu-toggle,.v3-desktop .rs-menu-toggle{display:none}}

/* 2 · Scroll-HUD nur auf der Startseite */
.v3-hud[hidden]{display:none!important}

/* 3 · Übergang auf Unterseiten: feine Lichtlinie statt Streifen */
.v3-subcut{height:1px;margin:0;background:none;overflow:visible}
.v3-subcut>i{background:linear-gradient(90deg,transparent,#c7f493aa);transform:scaleX(0);transform-origin:right}
.v3-subcut>i+i{background:linear-gradient(90deg,#c7f493aa,transparent);transform-origin:left}

/* 4 · Footer mobil: flaches Original-Signet neben der Wortmarke statt 3D-Objekt (das dort versetzt gerendert wurde) */
@media(max-width:700px){
 .rs-footer-monument{align-items:stretch;gap:4px}
 .rs-footer-monument .v3-signet-footer{display:none}
 .rs-footer-monument::before{content:"";flex:none;width:44px;align-self:stretch;background:url(/assets/ready-studio-signet-white.svg) center/contain no-repeat;transform:scale(1.75);transform-origin:center}
 .rs-footer-monument>img,.rs-footer-monument>svg{width:calc(100% - 48px)}
}

/* 5 · Sound-Schalter: kompakt im linken Rand über dem Pause-Knopf statt über Inhalten */
@media(min-width:1024px){
 .v4-sound{right:auto;left:16px;bottom:70px;width:40px;height:40px;min-height:0;padding:0;border-radius:50%;font-size:0;display:grid;place-items:center}
 .v4-sound::before{content:"♪";font:13px/1 var(--font-mono);color:inherit}
 .v4-sound[aria-pressed="true"]{background:#c7f493;color:#111;border-color:#c7f493}
}
.v3-reduced .v4-sound{display:none}
@media(prefers-reduced-motion:reduce){.v4-sound{display:none}}

/* 6 · Zerfallende Headlines (Desktop): Partikel-Ebene über dem Inhalt, unter Header und HUD */
.v4-dissolve-canvas{position:fixed;inset:0;width:100vw;height:100vh;z-index:9;pointer-events:none}
.v3-reduced .v4-dissolve-canvas{display:none}

/* 8 · Hero-Ausstieg flüssiger: Geräte und Textblock als eigene Ebenen (kein Neu-Rastern pro Bild), Datenpunkt ohne teuren Filter */
.v3-desktop .rs-hero-browser,.v3-desktop .rs-hero-dashboard,.v3-desktop .rs-hero-phone,.v3-desktop .rs-hero-copy>:not(h1){will-change:transform,opacity}
.v3-data-path circle{filter:none;stroke:#c7f49338;stroke-width:14px}

/* 9 · Startseite: die Kapitel-Anzeige unten rechts verdeckt den Vorschau-Hinweis im Footer nicht mehr */
@media(min-width:701px){body:has(.v3-hud:not([hidden])) .footer-bottom{padding-right:128px}}

/* 10 · Druck: eine gerade zerfallende Headline wird vollständig gedruckt */
@media print{h1,h2{-webkit-mask-image:none!important;mask-image:none!important}.v4-sound,.v4-toast{display:none!important}}

/* 11 · Vorschau-Chip weicht aus, solange ein Bedienelement darunter liegt (personalization.js) */
.v4-preview-chip{transition:opacity .2s,transform .2s}
.v4-preview-chip.v4-chip-away{opacity:1;transform:none;pointer-events:auto}

/* Audit 4183: persistent links, complete phone controls and dark ReadyOS text. */
.rs-footer .footer-bottom>span>a{text-decoration:underline;text-underline-offset:3px}
.rs-ready-full .os-feature>div>span,
.rs-ready-full .os-settings legend,
.rs-ready-full .os-settings label>span,
.rs-ready-full .os-time-total strong>span{color:#b9c6d0}
@media(min-width:1024px){
 .v3-desktop .rs-app-demo{padding:10px;min-height:430px}
 .v3-desktop .rs-app-screen{padding:8px 14px 0}
 .v3-desktop .rs-app-top{padding:8px 13px;line-height:1.2}
 .v3-desktop .rs-app-screen>small{display:block;line-height:1.4}
 .v3-desktop .rs-app-screen>h3{line-height:1.1}
 .v3-desktop .rs-app-screen>p{margin:0 0 8px;line-height:1.5}
 .v3-desktop .rs-app-date{margin-bottom:8px}
 .v3-desktop .rs-app-view{min-height:125px}
 .v3-desktop .rs-app-tabs{margin-top:2px;padding:4px 0}
}

/* 7 · Kontakt: die ruhige 3D-Welt mit dem Projektmodell scheint durch den Hintergrund */
.v4-world .contact-section{background:#0a0a0b6b}

/* 13 · Flüssig scrollen (Desktop): grosse weiche Schatten auf bewegten Elementen wurden in jedem Bild neu gerastert.
   Auf dem dunklen Grund waren sie kaum sichtbar; die hellen Karten behalten einen kleinen Schatten. */
.v3-desktop .rs-hero-browser,.v3-desktop .rs-hero-dashboard,.v3-desktop .rs-hero-phone,.v3-desktop .v3-system-card,.v3-desktop .rs-work-card,.v3-desktop .rs-app-device,.v3-desktop .rs-web-architecture i{box-shadow:none}
.v3-desktop .v3-fragment{box-shadow:0 6px 14px #17251c1f}
.v3-desktop .v3-story-paper{box-shadow:0 18px 36px #0008}

/* 12 · Über uns: Porträt dreht sich in 3D und zeigt seine digitale Version (public/v4-portrait.js) */
.v4-portrait{perspective:1400px;display:grid;place-items:center;gap:18px;padding:40px 20px;margin:0}
.v4-portrait-card{position:relative;width:min(340px,82%);aspect-ratio:3/4;transform-style:preserve-3d;transform:rotateX(var(--tilt-x,0deg)) rotateY(calc(var(--tilt-y,0deg) + var(--turn,0deg)));transition:transform 1.15s cubic-bezier(.16,1,.3,1)}
.v4-portrait.is-digital .v4-portrait-card{--turn:180deg}
.v4-portrait-face{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border:1px solid #ffffff22;border-radius:6px;overflow:hidden;background:#0b0d0c;box-shadow:0 30px 60px #0008}
.v4-portrait .v4-portrait-photo img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.v4-portrait .v4-portrait-photo img.is-placeholder{object-fit:contain;padding:24%;filter:none}
.v4-portrait-digital{transform:rotateY(180deg)}
.v4-portrait-digital canvas{display:block;width:100%;height:100%}
.v4-portrait-digital b{position:absolute;left:14px;bottom:12px;font:500 9px var(--font-mono);letter-spacing:.12em;color:#c7f493}
.v4-portrait figcaption{font:9px var(--font-mono);letter-spacing:.1em;color:#b2c0a6}
.v4-portrait-toggle{font:10px var(--font-mono);letter-spacing:.08em;color:#e6f4de;background:#162013;border:1px solid #839a70;border-radius:24px;padding:10px 16px;min-height:40px;cursor:pointer}
.v4-portrait-toggle:hover{background:#1f2c1a}
.v4-about-path{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0;padding:0}
.v4-about-path li{border-top:1px solid #ffffff24;padding-top:14px;display:grid;gap:4px}
.v4-about-path span{font:9px var(--font-mono);color:#c7f493;letter-spacing:.1em}
.v4-about-path b{font-size:18px;font-weight:500;letter-spacing:-.02em;color:#f4f4f2}
.v4-about-path small{font-size:12px;line-height:1.5;color:#a9b5a0}
@media(max-width:700px){.v4-portrait{min-height:0}.v4-portrait .v4-portrait-photo img{height:100%}.v4-about-path{grid-template-columns:1fr}}
.v3-reduced .v4-portrait-card{transition:none}
@media(prefers-reduced-motion:reduce){.v4-portrait-card{transition:none}}

/* 15 · Handy: Hero-Signet (laut Konzept ein Desktop-Begleiter) lag über der Headline; das Abschluss-Signet stand hinter dem Text.
   Unter 700 px entfällt das Hero-Signet, das Abschluss-Signet bekommt einen eigenen Platz unter dem Knopf. */
@media(max-width:700px){
 .v3-signet-hero{display:none}
 .v3-finale{padding-bottom:200px}
 .v3-signet-finale,.v4-world .v3-signet-finale{left:calc(50% - 55px);top:auto;bottom:34px;width:110px;height:150px;opacity:.9}
 .v3-signet-finale .v3-signet-fallback{scale:.55}
}

/* 16 · Leistungen: jede Demo liegt in einem eigenen Pane (studio.js), Wechsel nur per Ein-/Ausblenden;
   die zwei „Signet-Türen“ gleiten per transform auseinander (fx/services.js) statt eines animierten clip-path. */
.rs-service-pane{display:contents}
.rs-service-pane[hidden]{display:none}
.v4-service-wipe{position:absolute;inset:0;display:flex;pointer-events:none;z-index:3}
.v4-service-wipe>i{flex:1;background:#0b0d0e;transform:scaleX(0);will-change:transform}
.v4-service-wipe>i:first-child{transform-origin:left}
.v4-service-wipe>i:last-child{transform-origin:right}

/* 14 · Mobile Tippflächen: eigenständige Links (Telefon, E-Mail, „Die Website erleben“, „Scroll to explore“) mindestens 32 px hoch */
.v4-company-contact a,.v4-real-project a,.rs-hero-bottom>a,.rs-discover{display:inline-flex;align-items:center;min-height:32px}
