/* NEOTEX Launch-Umbau — gezielte Ergaenzungen. Loescht keine bestehenden Stylesheets. */
:root{
  --nx-cobalt:#2E5BFF;
  --nx-cobalt-dark:#1E3FBF;
  --nx-orange:#FF7A1A;
  --nx-graphit:#1F2937;
  --nx-ink:#111827;
  --nx-line:#E3E6EC;
}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---------- Logo in Header/Footer ---------- */
.brand img{height:30px;width:auto}
.site-footer .footer-brand img{height:26px;width:auto}

/* ---------- Home: neuer Hero mit Bild + SVG-Fallback ---------- */
.launch-hero-visual{position:relative;border-radius:24px;overflow:hidden;background:var(--nx-graphit);aspect-ratio:1586/992}
.launch-hero-visual>svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.launch-hero-visual>img[data-launch-src]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease;display:block}
.launch-hero-visual>img[data-launch-src].bereit{opacity:1}

/* ---------- Pro-Studie / Discovery (Bild genau einmal) ---------- */
.launch-pro-band{display:grid;grid-template-columns:1.1fr .9fr;gap:2.5rem;align-items:center}
.launch-pro-band img{width:100%;height:auto;border-radius:18px;display:block}
@media (max-width:840px){.launch-pro-band{grid-template-columns:1fr}}

/* ---------- Eigenes KI-Suchmotiv (SVG mit Labels) ---------- */
.launch-motif{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}
.launch-motif img,.launch-motif svg{width:100%;height:auto;border-radius:18px;display:block}
@media (max-width:840px){.launch-motif{grid-template-columns:1fr}}

/* ---------- Angebote: Hero-Objekt + Pro-Vorschau ---------- */
.launch-offer-hero{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}
@media (max-width:840px){.launch-offer-hero{grid-template-columns:1fr}}
.launch-object{border-radius:22px;background:linear-gradient(135deg,#111827 0%,#1F2937 55%,#2E5BFF 140%);color:#fff;padding:2rem;min-height:260px;display:flex;flex-direction:column;justify-content:space-between}
.launch-object .nx-kicker{color:#9CA3AF}
.launch-object strong{font-size:1.5rem;line-height:1.2}
.launch-object-tags{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.2rem}
.launch-object-tags span{border:1px solid #4B5563;border-radius:999px;padding:.35rem .9rem;font-size:.85rem}
.launch-object .akzent{color:var(--nx-orange);border-color:var(--nx-orange)}

/* ---------- Prozessgrafik (5 Schritte, keine FLOW-Marke) ---------- */
.launch-process{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:2rem}
.launch-step{background:#fff;border:1px solid var(--nx-line);border-top:6px solid var(--nx-cobalt);border-radius:14px;padding:1.2rem 1rem;position:relative}
.launch-step:nth-child(2){border-top-color:var(--nx-orange)}
.launch-step:nth-child(3){border-top-color:var(--nx-graphit)}
.launch-step:nth-child(4){border-top-color:var(--nx-cobalt-dark)}
.launch-step:nth-child(5){border-top-color:var(--nx-orange)}
.launch-step b{display:block;font-size:1.02rem;margin:.4rem 0 .35rem}
.launch-step .num{font-family:Outfit,system-ui,sans-serif;font-weight:700;color:var(--nx-cobalt);letter-spacing:1px;font-size:.85rem}
.launch-step p{font-size:.9rem;color:#4B5563;margin:0}
@media (max-width:980px){.launch-process{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.launch-process{grid-template-columns:1fr}}

/* ---------- Schlussgrafik Angebote (kraeftig, nicht Pastell) ---------- */
.launch-finale{position:relative;border-radius:22px;overflow:hidden;background:var(--nx-ink);color:#fff;padding:2.6rem 2.2rem;display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}
.launch-finale::before{content:"";position:absolute;inset:0;background:
  linear-gradient(120deg,transparent 55%,rgba(46,91,255,.35)),
  radial-gradient(420px 200px at 85% 20%,rgba(255,122,26,.28),transparent 60%);pointer-events:none}
.launch-finale h3{font-size:1.6rem;margin:.4rem 0 .8rem}
.launch-finale p{color:#C7D4FF}
.launch-finale .nx-kicker{color:#9CA3AF}
.launch-finale-graphic{display:flex;gap:.7rem;align-items:flex-end;justify-content:center}
.launch-finale-graphic i{display:block;width:26px;border-radius:6px 6px 0 0;background:var(--nx-cobalt)}
.launch-finale-graphic i:nth-child(1){height:70px}
.launch-finale-graphic i:nth-child(2){height:110px;background:var(--nx-orange)}
.launch-finale-graphic i:nth-child(3){height:150px}
.launch-finale-graphic i:nth-child(4){height:95px;background:#D9DEE8}
@media (max-width:840px){.launch-finale{grid-template-columns:1fr}}

/* ---------- Kontakt: Paketauswahl Grid/Typografie (kein Clipping) ---------- */
.tier-options{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
@media (max-width:900px){.tier-options{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.tier-options{grid-template-columns:1fr}}
.tier-option{border:2px solid var(--nx-line);border-radius:14px;padding:.9rem .95rem;cursor:pointer;display:block;background:#fff;line-height:1.3}
.tier-option input{position:absolute;opacity:0;pointer-events:none}
.tier-option strong{display:block;font-size:1.05rem}
.tier-option span{display:block;font-size:.85rem;color:#4B5563;margin-top:.25rem;white-space:normal;overflow:visible;text-overflow:unset}
.tier-option:has(input:checked){border-color:var(--nx-cobalt);box-shadow:0 0 0 3px rgba(46,91,255,.18)}
.tier-option:has(input:focus-visible){outline:3px solid var(--nx-orange);outline-offset:2px}

/* ---------- Kontakt: Range-Slider 1..12 ---------- */
.range-wrap{display:flex;align-items:center;gap:1rem;margin-top:.4rem}
.range-wrap input[type=range]{flex:1;accent-color:var(--nx-cobalt);min-width:0}
.range-out{min-width:3.2ch;text-align:center;font-family:Outfit,system-ui,sans-serif;font-weight:700;font-size:1.3rem;color:var(--nx-cobalt)}

/* ---------- Stil-Miniaturen: unbeschnitten, ganze Motive, lesbar ---------- */
.request-styles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.9rem}
.request-style{border:2px solid var(--nx-line);border-radius:14px;padding:.55rem;background:#fff;cursor:pointer;display:flex;flex-direction:column;gap:.4rem;align-items:stretch;text-align:left}
.request-style img{width:100%;aspect-ratio:460/390;object-fit:contain;background:#F4F5F7;border-radius:9px;display:block}
.request-style span{font-size:.85rem;font-weight:600;color:var(--nx-graphit)}
.request-style[aria-pressed=true]{border-color:var(--nx-cobalt);box-shadow:0 0 0 3px rgba(46,91,255,.18)}
.request-style.accent-pick{border-style:dashed}
.request-style:focus-visible{outline:3px solid var(--nx-orange);outline-offset:2px}
.style-pair-status{font-size:.9rem;margin-top:.6rem}

/* ---------- Systemdemo: CRM-Vorschau mit Tabs ---------- */
.crm-demo{background:#fff;border:1px solid var(--nx-line);border-radius:18px;overflow:hidden}
.crm-tabs{display:flex;flex-wrap:wrap;gap:.4rem;background:#F4F5F7;padding:.7rem .8rem;border-bottom:1px solid var(--nx-line)}
.crm-tabs button{border:1px solid transparent;background:transparent;border-radius:999px;padding:.5rem 1.05rem;font:inherit;font-weight:600;cursor:pointer;color:var(--nx-graphit)}
.crm-tabs button[aria-selected=true]{background:var(--nx-cobalt);color:#fff}
.crm-tabs button:focus-visible{outline:3px solid var(--nx-orange);outline-offset:2px}
.crm-panel{padding:1.4rem 1.5rem 1.6rem}
.crm-panel[hidden]{display:none}
.crm-kv{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1.2rem;margin:0 0 1rem}
.crm-kv dt{font-weight:600;color:#4B5563;margin:0}
.crm-kv dd{margin:0}
.crm-badge{display:inline-block;border-radius:999px;padding:.22rem .8rem;font-size:.8rem;font-weight:700;background:#E7EDFF;color:var(--nx-cobalt-dark)}
.crm-badge.orange{background:#FFF0E2;color:#B45309}
.crm-tasks{list-style:none;padding:0;margin:.6rem 0 0;display:grid;gap:.5rem}
.crm-tasks li{display:flex;gap:.6rem;align-items:baseline;border:1px solid var(--nx-line);border-radius:10px;padding:.55rem .8rem}
.crm-tasks li::before{content:"";width:.6rem;height:.6rem;border-radius:50%;background:var(--nx-orange);flex:none;transform:translateY(-1px)}
.crm-tasks li.erledigt::before{background:var(--nx-cobalt)}
.crm-tasks small{color:#6B7280}
.demo-note{font-size:.85rem;color:#6B7280;margin-top:1rem}

/* ---------- Ueber uns: Motiv-Sektionen ---------- */
.launch-about-visual{position:relative;border-radius:20px;overflow:hidden;background:var(--nx-graphit);aspect-ratio:640/420}
.launch-about-visual>svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.launch-about-visual>img[data-launch-src]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease}
.launch-about-visual>img[data-launch-src].bereit{opacity:1}
@media (max-width:840px){.launch-motif .launch-about-visual{order:-1}}

/* ---------- Home: Netzwerk-/System-Motiv (genau einmal, nicht im Hero) ---------- */
.launch-network-visual{position:relative;margin:2.5rem auto 0;max-width:56rem;border-radius:24px;overflow:hidden;background:#101114;aspect-ratio:4/3;box-shadow:0 24px 60px -32px rgba(23,23,28,.45)}
.launch-network-visual>img[data-launch-src]{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .7s ease}
.launch-network-visual>img[data-launch-src].bereit{opacity:1}
@media (max-width:840px){.launch-network-visual{border-radius:16px;margin-top:1.5rem}}

/* ---------- Footer: interne Statushinweise neutral ---------- */
.footer-unten .launch-status{color:#9CA3AF}

.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Paketauswahl: Grid statt Pillen (kein Text-Clipping) ---------- */
.tier-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}
.tier-option{display:block;padding:.85rem 1rem;border:1.5px solid var(--nx-line);border-radius:14px;cursor:pointer;font-weight:600;font-size:.98rem;line-height:1.3;color:var(--nx-ink);background:#fff}
.tier-option input{position:absolute;opacity:0;pointer-events:none}
.tier-option:has(input:checked){border-color:var(--nx-cobalt);box-shadow:0 0 0 3px rgba(46,91,255,.18);background:#f5f8ff}
.tier-option:hover{border-color:var(--nx-cobalt)}
/* ---------- Seitenzahl-Slider 1..12 ---------- */
.pages-range{display:flex;align-items:center;gap:1rem;margin-top:.4rem}
.pages-range input[type=range]{flex:1;accent-color:var(--nx-cobalt);height:28px;cursor:pointer}
.pages-range output{min-width:9ch;font-weight:700;color:var(--nx-ink);font-variant-numeric:tabular-nums}
/* ---------- Stilkarten: ganze Motive, unbeschnitten ---------- */
.request-styles{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-top:.6rem}
.request-style{display:flex;flex-direction:column;gap:.4rem;align-items:stretch;padding:.5rem;border:1.5px solid var(--nx-line);border-radius:12px;background:#fff;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--nx-ink);text-align:center}
.request-style img{width:100%;height:auto;object-fit:contain;border-radius:8px;background:#f3f4f6;aspect-ratio:460/390}
.request-style[aria-pressed=true]{border-color:var(--nx-cobalt);box-shadow:0 0 0 3px rgba(46,91,255,.18)}
.request-style:hover{border-color:var(--nx-cobalt)}
/* ---------- CRM-Vorschau (Systemdemo) ---------- */
.crm-preview{border:1.5px solid var(--nx-line);border-radius:18px;background:#fff;padding:1.4rem;box-shadow:0 12px 30px rgba(17,24,39,.06)}
.crm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.crm-badge{background:var(--nx-orange);color:#fff;font-weight:700;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .7rem;border-radius:999px}
.crm-tabs{display:flex;gap:.4rem;border-bottom:2px solid var(--nx-line);margin-bottom:1rem;flex-wrap:wrap}
.crm-tab{appearance:none;border:0;background:none;padding:.6rem .9rem;font-weight:600;font-size:.95rem;color:var(--nx-ink);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px}
.crm-tab[aria-selected=true]{color:var(--nx-cobalt);border-bottom-color:var(--nx-cobalt)}
.crm-tab:focus-visible{outline:3px solid var(--nx-cobalt);outline-offset:2px;border-radius:6px}
.crm-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem 1.4rem;margin:0}
.crm-kv div{display:flex;flex-direction:column;gap:.15rem}
.crm-kv dt{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6b7280}
.crm-kv dd{margin:0;font-size:1rem;color:var(--nx-ink)}
.crm-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}
.crm-timeline li{padding:.55rem .9rem;border-radius:10px;border:1.5px solid var(--nx-line);color:#6b7280}
.crm-timeline li.done{border-color:var(--nx-cobalt);color:var(--nx-ink);background:#f5f8ff}
.crm-timeline li.current{border-color:var(--nx-orange);color:var(--nx-ink);background:#fff4ec;font-weight:600}
.crm-tasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.crm-tasks label{display:flex;gap:.6rem;align-items:center;padding:.5rem .8rem;border:1.5px solid var(--nx-line);border-radius:10px;cursor:pointer}
.crm-tasks input[type=checkbox]{width:18px;height:18px;accent-color:var(--nx-cobalt)}
.crm-note{margin-top:1rem;font-size:.85rem;color:#6b7280}
@media (max-width:640px){.crm-preview{padding:1rem}.crm-kv{grid-template-columns:1fr}}
/* ---------- Motiv-Bilder ---------- */
.launch-motif-img{width:100%;height:auto;border-radius:18px;display:block}
.launch-pro-band>img{border-radius:18px;width:100%;height:auto;display:block}
@media (max-width:840px){.launch-pro-band{grid-template-columns:1fr}}
