/* neverlost OS – Landingpage. Übernommen aus dem Design-Canvas (Landing.dc.html, <helmet>) plus Ergänzungen für die echte Seite.
   Farben, Schriften und Radien nach dem V2-Design von neverlost.at (--v2-*). */
:root{--v2-dark:#0a1f2e;--v2-dark-2:#0f3442;--v2-teal:#1ec6d4;--v2-mint:#4acba0;--v2-grad:linear-gradient(90deg,#1ec6d4 0%,#4acba0 100%);--v2-text:#2c2c2c;--v2-gray:#586a72;--v2-lightbg:#f0f6f7;--v2-teal-ink:#0a7680;--v2-mint-ink:#17775a;--v2-dark-muted:#a7bfc7;--v2-line:#d3e2e6;--v2-font:Arial,"Helvetica Neue",Helvetica,sans-serif;--v2-font-display:"Instrument Serif",Georgia,"Times New Roman",serif;--v2-radius:4px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{margin:0;background:#FFFFFF;font-family:var(--v2-font);color:var(--v2-dark)}
img{max-width:100%}
section[id]{scroll-margin-top:16px}
a{color:var(--v2-teal-ink)}a:hover{color:#085F67}
a:focus-visible,button:focus-visible{outline:2px solid var(--v2-teal);outline-offset:3px}
.nl-grad{background:var(--v2-grad)}
.nl-btn-p{background:var(--v2-grad) !important;color:var(--v2-dark) !important;font-weight:700 !important;border-radius:var(--v2-radius) !important;transition:filter 140ms ease,transform 140ms ease}
.nl-btn-p:hover{filter:brightness(1.06);color:var(--v2-dark) !important;transform:translateY(-1px)}
.nl-btn-g{border-radius:var(--v2-radius);transition:background-color 140ms ease,border-color 140ms ease}
.nl-btn-g:hover{background-color:rgba(255,255,255,0.08) !important;border-color:#FFFFFF !important;color:#FFFFFF !important}
.nl-navlink{transition:color 120ms ease}
.nl-navlink:hover{color:#FFFFFF !important}
.nl-card{transition:transform 160ms ease,box-shadow 160ms ease,border-color 160ms ease}
.nl-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(15,27,42,0.08);border-color:#B5CDD3 !important}
.nl-chip{transition:background-color 120ms ease,border-color 120ms ease}
.nl-chip:hover{border-color:var(--v2-teal-ink) !important}
.nl-node{transition:opacity 420ms ease,transform 420ms ease,box-shadow 420ms ease,border-color 420ms ease,background-color 420ms ease}
.nl-conn-line{position:absolute;left:4px;right:4px;top:1px;height:2px;background:#B5CDD3;transition:background-color 300ms ease}
.nl-conn-on .nl-conn-line{background:var(--v2-teal-ink)}
.nl-dot{position:absolute;top:-3px;left:0;width:10px;height:10px;border-radius:50%;background:var(--v2-teal);opacity:0}
.nl-vconn{position:relative;width:4px;height:26px;margin-left:35px}
.nl-steps{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
@media (max-width: 720px){.nl-steps{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-right:-24px;padding-right:24px}}
.nl-vconn .nl-conn-line{left:1px;right:auto;top:4px;bottom:4px;width:2px;height:auto}
.nl-vconn.nl-conn-on .nl-dot{left:-3px;opacity:1;animation:nl-move-y 1.1s ease-in-out infinite alternate}
@keyframes nl-move-y{0%{top:0}100%{top:calc(100% - 10px)}}
@keyframes nl-pulse{0%,100%{box-shadow:0 0 0 0 rgba(59,70,80,0.28)}50%{box-shadow:0 0 0 8px rgba(59,70,80,0)}}
.nl-live{animation:nl-pulse 1.8s ease-in-out infinite}
.nl-farrow{display:flex;align-items:center;justify-content:center;flex:0 0 40px;color:var(--v2-teal-ink)}
@media (max-width: 960px){.nl-farrow{flex:0 0 100%;height:40px}.nl-farrow svg{transform:rotate(90deg)}}

/* Explainer-Knoten */
.nl-node-box{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px 16px;border-radius:8px;border:1.5px solid var(--v2-line);background:#FFFFFF}
.nl-node-ic{width:42px;height:42px;flex:0 0 auto;border-radius:6px;display:flex;align-items:center;justify-content:center;background:#E8F0F2;color:var(--v2-gray)}
.nl-node-tag{flex:0 0 auto;font-size:13px;font-weight:500;padding:5px 12px;border-radius:999px;white-space:nowrap}

/* Referenzarchitektur (Grafik 1.1): 1600×900 Bühne, per JS skaliert */
.arch-wrap{position:relative;width:100%;overflow:hidden;aspect-ratio:16/9}
.arch-stage{position:absolute;left:0;top:0;width:1600px;height:900px;transform-origin:0 0}
.arch-stage [data-s],.arch-stage [data-a]{transition:opacity 700ms ease,transform 700ms ease,box-shadow 700ms ease}
.arch-full{position:fixed;inset:0;z-index:100;background:#F6F8F7;aspect-ratio:auto;height:100% !important}
.arch-close{display:none}
.arch-full .arch-close{display:flex;position:fixed;top:16px;right:16px;z-index:101}

/* Typografie wie neverlost.at: Instrument Serif für Überschriften, zweiter Teil kursiv in Türkis */
h1,h2,.nl-display{font-family:var(--v2-font-display);font-weight:400 !important;letter-spacing:-0.012em !important}
.nl-h1{font-size:clamp(44px,7.2vw,76px);line-height:1 !important}
.nl-h2{font-size:clamp(34px,5vw,50px);line-height:1.04 !important}
h1 em,h2 em,h3 em{font-style:italic;color:var(--v2-teal-ink)}
[data-theme="dark"] h1 em,[data-theme="dark"] h2 em{color:var(--v2-teal)}
.nl-hero{background:radial-gradient(120% 90% at 85% 0%,#0f3442 0%,rgba(15,52,66,0) 60%),var(--v2-dark) !important}
@media (max-width: 720px){header nav{display:none !important}}

@media (prefers-reduced-motion: reduce){
  .nl-conn-on .nl-dot,.nl-live{animation:none}
  .nl-node,.arch-stage [data-s],.arch-stage [data-a]{transition:none}
}
/* Häufige Fragen */
.nl-faq summary{list-style:none}
.nl-faq summary::-webkit-details-marker{display:none}
.nl-faq summary:hover{color:var(--v2-teal-ink)}
.nl-faq-ic{flex:0 0 auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--v2-line);border-radius:var(--v2-radius);font-weight:400;color:var(--v2-teal-ink)}
.nl-faq-ic::before{content:"+"}
.nl-faq[open] .nl-faq-ic::before{content:"–"}
[hidden]{display:none !important}
