/* Variante 2: baut auf dem unveränderten style.css auf und überschreibt nur Lesbarkeit, Kontrast, Bedienbarkeit. */
@import url("style.css");

:root{--text-soft:#4f5347;--focus:#3b3cc4}
body{font-size:17px;line-height:1.65;-webkit-text-size-adjust:100%}
.hero>.wrap>.hero-layout{margin-top:0}
#transformation .section-heading{grid-template-columns:minmax(0,1fr)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.dark a:focus-visible,.dark button:focus-visible,header a:focus-visible,header button:focus-visible,footer a:focus-visible,footer summary:focus-visible{outline-color:#ffd2bf}
.contact-section a:focus-visible,.contact-section button:focus-visible,.contact-section input:focus-visible,.contact-section textarea:focus-visible{outline-color:var(--ink)}

/* Mindestschriftgrößen: kleine Mono-Texte waren 9–11 px */
.eyebrow,.preview,.available,.hero-footnote,.form-note,.footer-bottom,.hero-bottom .eyebrow{font-size:12px}
.preview{padding:8px 20px}
.migration-foot{font-size:13px}
.art-note{font-size:11px}
.art-tag{font-size:11px}

/* Fließtexte größer und mit besserem Kontrast */
.hero-copy>p{font-size:18px;max-width:520px;line-height:1.7}
.section-heading p,.migration-head>p,.process-top p,.faq-intro p{font-size:16px;color:var(--text-soft)}
.benefit p,.migration-row p,.steps p,.faq details p{font-size:15px;color:var(--text-soft)}
.benefit h3{font-size:18px}
.ai-copy p{font-size:16px}
.ai-list p{font-size:15px;max-width:480px}
.migration-foot{color:var(--text-soft)}
.steps h3{font-size:20px}
.process{background:#e9eadf}
ol.steps{list-style:none;padding:0;margin-bottom:0}
.process-cta{margin:48px 0 0}
.contact-intro p{font-size:16px;max-width:420px}
.footer-top p{font-size:14px}
.legal summary{font-size:13px}
.legal p{font-size:14px}
.footer-links{font-size:14px;gap:22px}
.footer-links a{padding:6px 0}

/* Navigation */
nav a{font-size:14px;color:#e2e1d6}
nav a[aria-current="location"]{color:var(--accent)}
.nav-cta{border-color:var(--accent);color:var(--accent);font-weight:600}
.nav-cta:hover{background:var(--accent);color:var(--ink)}
.menu{min-height:44px;min-width:44px;font-size:15px}

/* Buttons und Links: gut treffbar */
.btn{font-size:16px;min-height:52px}
.hero-link{font-size:15px;padding:10px 0 4px}
summary{font-size:17px;min-height:44px;align-items:center}
.faq details{padding:14px 0}
.faq details p{max-width:600px}

/* Formular auf Orange: lesbare Platzhalter, deutliche Felder */
.contact-form label,.contact-form legend{font-size:14px}
.contact-form input,.contact-form textarea{font-size:16px;border-bottom:2px solid var(--ink);background:#ffffff2e;padding:12px 10px;margin-top:4px}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#3a1d12}
.contact-form textarea{min-height:110px}
.system-options button{font-size:14px;min-height:44px;padding:8px 16px;border:1px solid var(--ink)}
.system-options button:hover{background:#ffffff40}
.system-options button[aria-pressed=true]:hover{background:var(--ink)}
.form-note{color:var(--ink)}
.form-result{font-size:15px;background:#fbe3d3}
.form-result:focus{outline:3px solid var(--ink)}
.contact-form input:user-invalid,.contact-form textarea:user-invalid{border-bottom-color:#7a0f00;background:#ffffff59}

/* Überschriften: Zeilenabstand an Zeilenumbrüche angepasst, kein Überlaufen auf kleinen Geräten */
h1,h2{overflow-wrap:break-word}

@media(max-width:780px){
  body{font-size:16px}
  .hero-copy>p{font-size:17px}
  nav a{font-size:16px;padding:6px 0}
}
@media(prefers-contrast:more){
  :root{--text-soft:#2f3229}
  .preview{color:#fff}
}
@media print{
  header,.preview,.hero-art{display:none}
  .dark,.contact-section,footer{background:#fff;color:#000}
}
.privacy-content{max-width:78ch;overflow-wrap:anywhere}
.legal .privacy-content h3{font-size:18px;line-height:1.4;margin:30px 0 10px;color:var(--paper)}
.legal .privacy-content p{max-width:none;line-height:1.85}
.privacy-content a{text-decoration:underline;text-underline-offset:3px}
.privacy-content code{font-size:.92em}
.footer-industries{display:block;width:100%;margin-top:32px;padding:28px 0 10px;border-top:1px solid var(--line);color:var(--paper)}
.footer-industries h2{font-size:18px;line-height:1.5;font-weight:500;letter-spacing:0;margin:0 0 18px}
.footer-industries ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 24px;list-style:none;margin:0;padding:0}
.footer-industries li{min-width:0}
.footer-industries a{display:flex;align-items:center;min-height:44px;padding:7px 0;font-size:14px;line-height:1.5;text-decoration:underline;text-decoration-color:#777d68;text-underline-offset:4px;overflow-wrap:anywhere}
.footer-industries a:hover,.footer-industries a[aria-current=page]{color:#ffac8b;text-decoration-color:currentColor}
@media(max-width:1000px){.footer-industries ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.footer-industries ul{grid-template-columns:minmax(0,1fr)}}
.privacy-draft{padding:16px 18px;border-left:3px solid var(--accent);background:#ffffff08}
/* Ergänzungen zur zweiten Variante; Originaldarstellung bleibt unverändert. */
html{scroll-padding-top:104px}
.hero-bottom{align-items:flex-start}
.hero-bottom>.eyebrow{flex:0 1 300px}
.platforms{flex:1;justify-content:flex-end;gap:12px 24px}
.hero-art .art-note{max-width:100%;text-align:right}
.field-hint{margin:-8px 0 0;font-size:13px;line-height:1.5;color:#362219}
.contact-form input:focus,.contact-form textarea:focus{background:#ffffff59}
.form-result{scroll-margin-top:105px}
.system-options button{white-space:normal}
@media(max-width:1100px){
  .nav{min-height:72px;flex-wrap:wrap;gap:0}
  .menu{display:block}
  nav{display:none;width:100%;padding:16px 0 22px;flex-direction:column;align-items:stretch;gap:12px;max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);overflow:auto}
  nav.open{display:flex}
  nav a{font-size:16px;padding:8px 12px;min-height:44px}
  .nav-cta{text-align:center}
}
@media(max-width:780px){
  html{scroll-padding-top:88px}
  .hero-bottom>.eyebrow{flex:auto}
  .platforms{justify-content:flex-start}
  .hero-art .art-note{font-size:10px;bottom:-28px}
  .hero-art .art-tag{font-size:10px}
  .hero-art{margin-bottom:20px}
  .contact-grid>*{min-width:0}
  .field-row{grid-template-columns:minmax(0,1fr)}
  .contact-form .btn{gap:15px}
}
@media(prefers-contrast:more){
  nav a,.hero-copy>p,.ai-copy p,.ai-list p,.hero-footnote,.art-note{color:#eee}
}
@media print{
  .menu,.contact-form{display:none}
  h2{break-after:avoid}.migration-row,.steps li{break-inside:avoid}
}
/* Auf Tablets braucht die größere Schrift mehr Raum als zwei enge Spalten. */
@media(min-width:781px) and (max-width:1000px){
  .hero-layout,.section-heading,.ai-grid,.faq-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}
  .hero-copy>p{max-width:610px}
  .hero-art{width:min(560px,100%);margin:35px auto 20px;min-height:510px}
  .new-window{width:86%}.old-window{left:0}
  .art-tag{right:0}.asterisk{right:0}
  .hero-bottom{align-items:flex-start;flex-direction:column}
  .hero-bottom>.eyebrow{flex:auto}.platforms{justify-content:flex-start}
  .section-heading{gap:25px}.section-heading p{max-width:620px}
  .ai-grid,.faq-grid,.contact-grid{gap:40px}
  .ai-copy p{max-width:620px}
  .migration-head,.process-top{align-items:flex-start;flex-direction:column;gap:20px}
  .migration-head>p,.process-top p{max-width:620px;margin:0}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:40px}
}
nav a[aria-current="location"]{text-decoration:underline;text-underline-offset:6px}

/* Der Inhaltsabschnitt folgt ohne Bildvergleich direkt auf seine Einleitung. */
#transformation .section-heading{margin-bottom:32px}
#transformation .benefit-strip{margin-top:0}
/* Bewegung ergänzt die bestehende Gestaltung, ohne Inhalte auszublenden. */
.reveal{animation:none}
.preview{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 12px}
.motion-toggle{min-height:36px;border:1px solid #767a67;background:transparent;color:var(--paper);font:12px var(--sans);padding:6px 12px;cursor:pointer}
.motion-toggle[hidden]{display:none}
.motion-toggle:hover{border-color:var(--accent);color:#ffad91}
.motion-toggle:disabled{cursor:default;color:#c5c6ba}
.reading-progress{position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--accent);transform-origin:left;transform:scaleX(var(--reading-progress,0));pointer-events:none}
.motion-on .hero-art.motion-visible .asterisk{animation:orbit-turn 48s linear infinite}
.motion-on .hero-art.motion-visible .halo{animation:halo-turn 60s linear infinite}
.motion-on .hero-art.motion-visible .new-window{animation:window-float 7s ease-in-out infinite}
.motion-on .hero-art.motion-visible .old-window{animation:old-window-float 8s ease-in-out -2s infinite}
.motion-on .hero-art.motion-visible .art-tag{animation:tag-float 6s ease-in-out -1s infinite}
.motion-on .available:before{animation:status-glow 3s ease-in-out infinite}
@keyframes orbit-turn{from{transform:rotate(-12deg)}to{transform:rotate(348deg)}}
@keyframes halo-turn{from{transform:rotate(-20deg)}to{transform:rotate(340deg)}}
@keyframes window-float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-9px) rotate(-4deg)}}
@keyframes old-window-float{0%,100%{transform:translateY(0) rotate(8deg)}50%{transform:translateY(7px) rotate(6deg)}}
@keyframes tag-float{0%,100%{transform:translateY(0) rotate(5deg)}50%{transform:translateY(-5px) rotate(3deg)}}
@keyframes status-glow{0%,100%{opacity:.65;box-shadow:0 0 4px #fa633b40}50%{opacity:1;box-shadow:0 0 14px #fa633b80}}
@media(hover:hover) and (pointer:fine){
  .motion-on .benefit,.motion-on .migration-row{transition:transform .3s ease,background .3s ease,border-color .3s ease}
  .motion-on .benefit:hover{transform:translateY(-5px)}
  .motion-on .benefit:hover h3{color:#a6391e}
  .motion-on .migration-row:hover{transform:translateX(6px);background:#e9e9de;border-bottom-color:var(--accent)}
  .motion-on .step-num{transition:color .3s ease,transform .3s ease}
  .motion-on .steps li:hover .step-num{color:#b34023;transform:translateY(-4px)}
  .motion-on .arrow,.motion-on summary:after,.motion-on .brand-mark{transition:transform .3s ease}
  .motion-on .btn:hover .arrow,.motion-on .btn:focus-visible .arrow{transform:translate(3px,-3px)}
  .motion-on .brand:hover .brand-mark{transform:rotate(90deg)}
  .motion-on details[open]>summary:after{transform:rotate(180deg)}
}
:root:not(.motion-on) .btn:hover{transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reading-progress{display:none}
  .hero-art *,.available:before{animation:none!important}
}
@media print{
  .motion-toggle,.reading-progress{display:none}
  *{animation:none!important;transition:none!important}
}
