/* blog.css – Blog-Ansichten + Einzelbeitrag */

/* ---------- Blog Übersicht ([norix_blog]) ---------- */

    .norix-blog {
		--bg-card: #111118; 
		--border: #1E1E28;
        --text-w: #FFFFFF; --text-m: #B0B0B8; --text-d: #888; 
		--text-f: #fff;
        --accent: #00E5A0; --dark: #0A0A0F;
        --accent-glow: rgba(0,229,160,.08);
        --fh: 'Sansation', sans-serif;
        --fb: 'Roboto', sans-serif;
        font-family: var(--fb);
        font-size: 1.25rem;
        color: var(--text-m);
        min-height: 100vh;
        -webkit-font-smoothing: antialiased;
    }
    .norix-blog *, .norix-blog *::before, .norix-blog *::after { box-sizing: border-box; }
    .norix-blog a { text-decoration: none; }

    /* A11y: Focus */
    .norix-blog a:focus-visible, .norix-blog button:focus-visible {
        outline: 3px solid var(--accent); outline-offset: 3px; border-radius: 4px;
    }
    .nxb-sr-only {
        position:absolute;width:1px;height:1px;padding:0;margin:-1px;
        overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
    }


    /* Blog-Kopf (H1) */
    .nxb-hero { text-align:center; padding:80px 0 40px; }
    .nxb-title { font-family:var(--fh); font-size:5rem; font-weight:700; line-height:1.1; letter-spacing:-.03em; color:var(--text-w); margin:0 0 16px; }
    .nxb-subtitle { max-width:720px; margin:0 auto; font-size:1.25rem; line-height:1.7; color:var(--text-m); }

    /* Categories */
    .nxb-cats { display:flex; gap:8px; justify-content:center; flex-wrap:wrap; padding:0 0 48px; }
    .nxb-cat-btn {
        padding:10px 24px; border-radius:100px; border:1px solid var(--border);
        background:transparent; color:var(--text-d); font-size:1rem;
        font-family:var(--fb); cursor:pointer; transition:all .3s; outline:none;
    }
    .nxb-cat-btn:hover { border-color:var(--accent); color:var(--accent); }
    .nxb-cat-btn.active {
        background:var(--accent); border-color:var(--accent);
        color:var(--dark); font-weight:700;
    }

    /* Container */
    .nxb-wrap { max-width:1400px; margin:0 auto; padding:0 0 80px; }

    /* Featured */
    .nxb-feat {
        display:grid; grid-template-columns:1fr 1fr;
        background:var(--bg-card); border-radius:24px; overflow:hidden;
        margin-bottom:48px; border:1px solid var(--border);
        transition:border-color .4s, transform .3s;
    }
    .nxb-feat:hover { border-color:var(--accent); transform:translateY(-2px); }
    .nxb-feat-vis { position:relative; min-height:380px; overflow:hidden; }
    .nxb-feat-vis img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s; }
    .nxb-feat:hover .nxb-feat-vis img { transform:scale(1.05); }
    .nxb-feat-vis::after {
        content:''; position:absolute; inset:0;
        background:linear-gradient(135deg,rgba(0,229,160,.1) 0%,rgba(10,10,15,.25) 100%);
        pointer-events:none;
    }
    .nxb-feat-badge {
        position:absolute; top:24px; left:24px; z-index:2;
        background:var(--accent); color:var(--dark);
        padding:8px 18px; border-radius:100px;
        font-size:.8rem; font-weight:700; letter-spacing:.05em;
        text-transform:uppercase; font-family:var(--fh);
    }
    .nxb-feat-body { padding:48px; display:flex; flex-direction:column; justify-content:center; }
    .nxb-feat-meta { display:flex; align-items:center; gap:12px; margin-bottom:20px; font-size:.9rem; color:var(--text-f); }
    .nxb-feat-meta .cat { color:var(--accent); font-weight:600; }
    .nxb-feat-body h2 {
        font-family:var(--fh); font-size:3.75rem; font-weight:700;
        letter-spacing:-.02em; line-height:1.15; margin:0 0 12px; color:var(--text-w);
    }
    .nxb-feat-body p { font-size:1.25rem; color:var(--text-m); line-height:1.7; margin:0 0 28px; }
    .nxb-rm {
        display:inline-flex; align-items:center; gap:8px;
        color:var(--accent); font-weight:700; font-size:1rem; transition:gap .3s;
    }
    .nxb-rm:hover { gap:14px; }

    /* Grid */
    .nxb-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(360px,1fr)); gap:28px; }

    /* Card */
    .nxb-card {
        background:var(--bg-card); border-radius:20px; border:1px solid var(--border);
        overflow:hidden; transition:all .35s; display:flex; flex-direction:column;
    }
    .nxb-card:hover { transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.3); }
    .nxb-card-img { position:relative; height:220px; overflow:hidden; }
    .nxb-card-img img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s; }
    .nxb-card:hover .nxb-card-img img { transform:scale(1.08); }
    .nxb-card-img::after {
        content:''; position:absolute; inset:0;
        background:linear-gradient(180deg,rgba(10,10,15,.05) 0%,rgba(10,10,15,.4) 100%);
        pointer-events:none;
    }
    .nxb-badge {
        position:absolute; top:16px; left:16px; z-index:2;
        padding:5px 16px; border-radius:100px; font-size:.8rem; font-weight:600;
        font-family:var(--fb); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
    }
    .nxb-card-bd { padding:24px 24px 16px; flex:1; display:flex; flex-direction:column; }
    .nxb-card-bd h3 {
        font-family:var(--fh); font-size:2.25rem; font-weight:700;
        line-height:1.25; margin:0 0 12px; color:var(--text-w);
    }
    .nxb-card-bd p { font-size:1.1rem; color:var(--text-m); line-height:1.65; flex:1; margin:0; }
    .nxb-card-ft {
        display:flex; align-items:center; justify-content:space-between;
        padding:16px 24px; border-top:1px solid #1A1A24;
    }
    .nxb-card-dt { font-size:.9rem; color:var(--text-f); }
    .nxb-card-rt { display:flex; align-items:center; gap:12px; }
    .nxb-card-tm { font-size:.9rem; color:var(--text-f); display:flex; align-items:center; gap:6px; }
    .nxb-arr {
        width:40px; height:40px; border-radius:50%;
        display:flex; align-items:center; justify-content:center;
        opacity:0; transition:all .3s;
    }
    .nxb-card:hover .nxb-arr { opacity:1; }

    .nxb-noimg {
        width:100%; height:100%;
        display:flex; align-items:center; justify-content:center;
        background:linear-gradient(135deg,rgba(0,229,160,.06) 0%,#111118 100%);
        font-size:3rem; opacity:.15;
    }

    /* CTA – */
    .nxb-cta {
        text-align:center; margin-top:64px; padding:56px;
        background:var(--bg-card); border-radius:24px; border:1px solid var(--border);
    }
    .nxb-cta h2 { font-family:var(--fh); font-size:3.75rem; font-weight:700; margin:0 0 16px; color:var(--text-w); }
    .nxb-cta p { color:var(--text-m); margin:0 0 28px; font-size:1.25rem; }
    .nxb-cta-btn {
        display:inline-flex; align-items:center; gap:10px;
        padding:16px 36px; background:var(--accent); color:var(--dark);
        border-radius:100px; font-weight:700; font-size:1.1rem;
        font-family:var(--fh); border:none; cursor:pointer;
        transition:transform .2s, box-shadow .2s; text-decoration:none;
    }
    .nxb-cta-btn:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,229,160,.3); color:var(--dark); }
    .nxb-cta-btn:focus-visible { outline:3px solid #FFF; outline-offset:3px; }
    .nxb-cta-btn svg { stroke:var(--dark); }

    /* ===== RESPONSIVE ===== */

    @media (max-width:1400px) {
        .norix-blog { font-size:1rem; padding:0 5%; }
        .nxb-title { font-size:4.5rem; }
        .nxb-feat-body h2 { font-size:3.25rem; }
        .nxb-card-bd h3 { font-size:2rem; }
        .nxb-cta h2 { font-size:3.25rem; }
        .nxb-feat-body { padding:36px; }
        .nxb-feat-body p, .nxb-cta p { font-size:1rem; }
        .nxb-subtitle { font-size:1rem; }
    }

    @media (max-width:1024px) {
        .norix-blog { font-size:2rem; padding:0 3%; }
        .nxb-title { font-size:3.5rem; }
        .nxb-feat { grid-template-columns:1fr; }
        .nxb-feat-vis { min-height:280px; }
        .nxb-feat-body h2 { font-size:3rem; }
        .nxb-card-bd h3 { font-size:2.75rem; }
        .nxb-cta h2 { font-size:3rem; }
        .nxb-grid { grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:20px; }
        .nxb-card-bd p, .nxb-feat-body p, .nxb-cta p { font-size:1.5rem; }
        .nxb-subtitle { font-size:1.5rem; }
    }

    @media (max-width:767px) {
        .norix-blog { font-size:1.25rem; padding:0 2%; }
        .nxb-title { font-size:3rem; }
        .nxb-feat-vis { min-height:220px; }
        .nxb-feat-body { padding:24px; }
        .nxb-feat-body h2 { font-size:2.5rem; }
        .nxb-card-bd h3 { font-size:1.75rem; }
        .nxb-cta h2 { font-size:2.5rem; }
        .nxb-grid { grid-template-columns:1fr; }
        .nxb-cta { padding:36px 20px; }
        .nxb-card-bd p, .nxb-feat-body p, .nxb-cta p { font-size:1.1rem; }
        .nxb-subtitle { font-size:1.1rem; }
        .nxb-cat-btn { font-size:.9rem; padding:8px 18px; }
    }

/* ---------- Kategorie-Hover-Farben (aus fixer Palette) ---------- */
.nxb-card[data-color="blue"]:hover{border-color:#3B82F6}
.nxb-card[data-color="blue"]:hover .nxb-arr{background:#3B82F6}
.nxb-card[data-color="purple"]:hover{border-color:#A855F7}
.nxb-card[data-color="purple"]:hover .nxb-arr{background:#A855F7}
.nxb-card[data-color="amber"]:hover{border-color:#F59E0B}
.nxb-card[data-color="amber"]:hover .nxb-arr{background:#F59E0B}
.nxb-card[data-color="red"]:hover{border-color:#EF4444}
.nxb-card[data-color="red"]:hover .nxb-arr{background:#EF4444}
.nxb-card[data-color="cyan"]:hover{border-color:#06B6D4}
.nxb-card[data-color="cyan"]:hover .nxb-arr{background:#06B6D4}
.nxb-card[data-color="green"]:hover{border-color:#10B981}
.nxb-card[data-color="green"]:hover .nxb-arr{background:#10B981}
.nxb-card[data-color="violet"]:hover{border-color:#8B5CF6}
.nxb-card[data-color="violet"]:hover .nxb-arr{background:#8B5CF6}
.nxb-card[data-color="orange"]:hover{border-color:#F97316}
.nxb-card[data-color="orange"]:hover .nxb-arr{background:#F97316}
.nxb-card[data-color="pink"]:hover{border-color:#EC4899}
.nxb-card[data-color="pink"]:hover .nxb-arr{background:#EC4899}
.nxb-card[data-color="teal"]:hover{border-color:#14B8A6}
.nxb-card[data-color="teal"]:hover .nxb-arr{background:#14B8A6}

/* ---------- Einzelner Beitrag ([norix_single_post]) ---------- */
    .nxs {
        --bg:#0A0A0F; --bg-card:#111118; --border:#1E1E28;
        --text:#FFF; --text-m:#B0B0B8; --text-d:#888; 
		--text-f:#fff;
        --accent:#00E5A0; --dark:#0A0A0F;
        --accent-glow:rgba(0,229,160,.08);
        --cc:#3B82F6; --cl:#93C5FD; /* wird pro Beitrag per style-Attribut gesetzt */
        --fh:'Sansation',sans-serif; --fb:'Roboto',sans-serif;
        font-family:var(--fb); font-size:1.25rem;
         color:#D4D4DC;
        -webkit-font-smoothing:antialiased; min-height:100vh;
		padding: 0 10% 0 10%;
    }
    .nxs *{box-sizing:border-box}
    .nxs a{text-decoration:none;transition:color .2s}
    .nxs a:focus-visible,.nxs button:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}

    /* HERO – Bild VOLLSTÄNDIG sichtbar */
    .nxs-hero{position:relative;width:100%}
    .nxs-hero-img{
        width:100%; max-height:600px;
        object-fit:cover; display:block;
    }
    .nxs-hero-noimg{width:100%;height:120px;}

    /* HERO CONTENT (unter dem Bild) */
    .nxs-hero-body{
        margin:0 auto;
        padding:40px 10% 0;
    }
    .nxs-meta{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap;font-size:.9rem;color:var(--text-f)}
    .nxs-cat-badge{
        padding:6px 18px;border-radius:100px;font-size:.8rem;font-weight:600;
        color:var(--cl);border:1px solid;
        border-color:color-mix(in srgb,var(--cc) 40%,transparent);
        background:color-mix(in srgb,var(--cc) 15%,transparent);
    }
    .nxs-dot{color:var(--text-f)}
    .nxs-hero-body h1{
        font-family:var(--fh);font-size:5rem;font-weight:700;
        letter-spacing:-.03em;line-height:1.1;color:var(--text);margin:0;
    }

    /* LAYOUT */
    .nxs-layout{margin:0 auto;padding:40px 10% 80px;position:relative}
    .nxs-grid{display:grid;grid-template-columns:1fr 260px;gap:48px;align-items:start}

    /* TOC */
    .nxs-toc{position:sticky;top:100px}
    .nxs-toc-title{font-family:var(--fh);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-d);margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--border)}
    .nxs-toc ul{list-style:none;margin:0;padding:0}
    .nxs-toc li{margin-bottom:8px}
    .nxs-toc li a{font-size:.85rem;color:var(--text-d);line-height:1.4;display:block;padding:4px 0 4px 12px;border-left:2px solid transparent;transition:all .2s;text-decoration:none}
    .nxs-toc li a:hover,.nxs-toc li a.active{color:var(--accent);border-left-color:var(--accent)}
    .nxs-toc li.sub a{padding-left:24px;font-size:.8rem}

    /* CONTENT */
    .nxs-content{min-width:0}
    .nxs-content h2{font-family:var(--fh);font-size:3.75rem;font-weight:700;letter-spacing:-.02em;color:var(--text);margin:48px 0 16px;line-height:1.15}
    .nxs-content h3{font-family:var(--fh);font-size:2.25rem;font-weight:600;color:var(--text);margin:36px 0 12px;line-height:1.2}
    .nxs-content h4{font-family:var(--fh);font-size:1.5rem;font-weight:600;color:var(--text);margin:28px 0 10px}
    .nxs-content p{font-size:1.25rem;line-height:1.8;margin:0 0 20px;color:#C8C8D0}
    .nxs-content ul,.nxs-content ol{margin:0 0 20px 24px;color:#C8C8D0;line-height:1.8}
    .nxs-content li{margin-bottom:6px;font-size:1.25rem}
    .nxs-content strong{color:var(--text);font-weight:600}
    .nxs-content em{color:#B0B0BC}
    .nxs-content blockquote{margin:32px 0;padding:24px 28px;border-left:3px solid var(--accent);background:var(--bg-card);border-radius:0 16px 16px 0;font-style:italic;color:#B0B0BC}
    .nxs-content blockquote p{margin:0;font-size:1.15rem}
    .nxs-content img{max-width:100%;height:auto;border-radius:16px;margin:24px 0;display:block}
    .nxs-content pre{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px;overflow-x:auto;margin:24px 0;font-size:.9rem;line-height:1.6}
    .nxs-content code{background:var(--bg-card);padding:2px 8px;border-radius:6px;font-size:.9rem;color:var(--cl)}
    .nxs-content pre code{background:none;padding:0;color:#C8C8D0}
    .nxs-content a{color:var(--accent);text-decoration:underline;text-decoration-color:rgba(0,229,160,.3);text-underline-offset:3px}
    .nxs-content a:hover{text-decoration-color:var(--accent)}
    .nxs-content hr{border:none;border-top:1px solid var(--border);margin:40px 0}

    /* SHARE */
    .nxs-share{display:flex;align-items:center;gap:12px;padding:32px 0;border-top:1px solid var(--border);margin-top:48px;flex-wrap:wrap}
    .nxs-share-label{font-family:var(--fh);font-size:.9rem;font-weight:600;color:var(--text-d)}
    .nxs-share-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-d);transition:all .3s;cursor:pointer;text-decoration:none}
    .nxs-share-btn:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}

    /* AUTHOR */
    .nxs-author{display:flex;align-items:center;gap:20px;padding:28px;background:var(--bg-card);border-radius:20px;border:1px solid var(--border);margin-top:32px}
    .nxs-author-av{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--cc) 100%);display:flex;align-items:center;justify-content:center;font-family:var(--fh);font-weight:700;font-size:1.2rem;color:var(--dark);flex-shrink:0}
    .nxs-author-nm{font-family:var(--fh);font-weight:600;color:var(--text);font-size:1rem;margin:0 0 4px}
    .nxs-author-desc{font-size:.9rem;color:var(--text-d);margin:0;line-height:1.5}

    /* RELATED */
    .nxs-rel{margin-top:64px}
    .nxs-rel-title{font-family:var(--fh);font-size:2.25rem;font-weight:700;color:var(--text);margin:0 0 28px}
    .nxs-rel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
    .nxs-rel-card{background:var(--bg-card);border-radius:16px;border:1px solid var(--border);overflow:hidden;transition:all .35s;text-decoration:none;color:inherit}
    .nxs-rel-card:hover{border-color:var(--cc);transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.3)}
    .nxs-rel-card:hover .nxs-rel-im img{transform:scale(1.06)}
    .nxs-rel-im{height:160px;overflow:hidden;position:relative}
    .nxs-rel-im img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
    .nxs-rel-im::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(10,10,15,.4) 100%);pointer-events:none}
    .nxs-rel-noimg{height:160px;background:linear-gradient(135deg,var(--accent-glow) 0%,var(--bg-card) 100%);display:flex;align-items:center;justify-content:center;font-size:2rem;opacity:.15}
    .nxs-rel-bd{padding:20px}
    .nxs-rel-bd h4{font-family:var(--fh);font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 8px;line-height:1.35}
    .nxs-rel-bd p{font-size:.85rem;color:var(--text-d);margin:0;line-height:1.5}
    .nxs-rel-ft{padding:12px 20px;border-top:1px solid #1A1A24;display:flex;justify-content:space-between;align-items:center}
    .nxs-rel-dt{font-size:.8rem;color:var(--text-f)}
    .nxs-rel-rd{font-size:.8rem;color:var(--accent);font-weight:600;display:flex;align-items:center;gap:4px}

    /* CTA – Dunkle Schrift (#0A0A0F) auf Grün (#00E5A0) = Kontrast 10.4:1 (WCAG AAA) */
    .nxs-cta{text-align:center;margin-top:48px;padding:56px;background:var(--bg-card);border-radius:24px;border:1px solid var(--border)}
    .nxs-cta h2{font-family:var(--fh);font-size:3.75rem;font-weight:700;margin:0 0 12px;color:var(--text)}
    .nxs-cta p{color:var(--text-m);margin:0 0 28px;font-size:1.25rem}
    .nxs-cta-btn{
        display:inline-flex;align-items:center;gap:10px;
        padding:16px 36px;background:var(--accent);color:var(--dark);
        border-radius:100px;font-weight:700;font-size:1.1rem;
        font-family:var(--fh);border:none;cursor:pointer;
        transition:transform .2s,box-shadow .2s;text-decoration:none;
    }
    .nxs-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,229,160,.3);color:var(--dark)}
    .nxs-cta-btn:focus-visible{outline:3px solid #FFF;outline-offset:3px}
    .nxs-cta-btn svg{stroke:var(--dark)}

    /* BACK */
    .nxs-back{display:inline-flex;align-items:center;gap:8px;margin-top:40px;padding:12px 24px;border-radius:100px;border:1px solid var(--border);color:var(--text-d);font-size:.95rem;font-weight:500;transition:all .3s;text-decoration:none}
    .nxs-back:hover{border-color:var(--accent);color:var(--accent)}

    /* ===== RESPONSIVE ===== */

    @media (max-width:1400px) {
        .nxs{font-size:1rem}
        .nxs-hero-body{padding:40px 5% 0}
        .nxs-hero-body h1{font-size:4.5rem}
        .nxs-layout{padding:40px 5% 80px}
        .nxs-content h2{font-size:3.25rem}
        .nxs-content h3{font-size:2rem}
        .nxs-content p,.nxs-content li{font-size:1rem}
        .nxs-cta h2{font-size:3.25rem}
        .nxs-cta p{font-size:1rem}
        .nxs-rel-title{font-size:2rem}
    }

    @media (max-width:1024px) {
        .nxs{font-size:2rem}
        .nxs-hero-body{padding:32px 3% 0}
        .nxs-hero-body h1{font-size:3.5rem}
        .nxs-layout{padding:32px 3% 60px}
        .nxs-grid{grid-template-columns:1fr;gap:0}
        .nxs-toc{position:static;margin-bottom:32px;padding:20px;background:var(--bg-card);border-radius:16px;border:1px solid var(--border)}
        .nxs-content h2{font-size:3rem}
        .nxs-content h3{font-size:2.75rem}
        .nxs-content p,.nxs-content li{font-size:1.5rem}
        .nxs-cta h2{font-size:3rem}
        .nxs-cta p{font-size:1.5rem}
        .nxs-rel-title{font-size:2.75rem}
        .nxs-rel-grid{grid-template-columns:1fr 1fr;gap:16px}
    }

    @media (max-width:767px) {
        .nxs{font-size:1.25rem}
        .nxs-hero-body{padding:24px 2% 0}
        .nxs-hero-body h1{font-size:3rem}
        .nxs-hero-img{max-height:300px}
        .nxs-layout{padding:24px 2% 60px}
        .nxs-content h2{font-size:2.5rem}
        .nxs-content h3{font-size:1.75rem}
        .nxs-content p,.nxs-content li{font-size:1.1rem}
        .nxs-cta h2{font-size:2.5rem}
        .nxs-cta p{font-size:1.1rem}
        .nxs-cta{padding:36px 20px}
        .nxs-rel-grid{grid-template-columns:1fr}
        .nxs-author{flex-direction:column;text-align:center}
        .nxs-rel-title{font-size:1.75rem}
    }
