
        .preload,.preload *,.preload *::before,.preload *::after{transition:none!important;animation:none!important}
        @font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: swap; src: url("/static/webfonts/fa-solid-900.c64278386c2b.woff2") format('woff2'); }
        @font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 400; font-display: swap; src: url("/static/webfonts/fa-regular-400.61f30b79daf5.woff2") format('woff2'); }
        @font-face { font-family: 'Font Awesome 6 Brands'; font-style: normal; font-weight: 400; font-display: swap; src: url("/static/webfonts/fa-brands-400.8b0ddedbb27c.woff2") format('woff2'); }
        :root {
            --bg:        #0a0a0a;
            --bg2:       #0f1012;
            --bg3:       #131518;
            --primary:   #00ff41;
            --primary-dim:#008f11;
            --cyan:      #00bfff;
            --cyan-dim:  #006b8f;
            --border:    #1e2124;
            --border2:   #2a2d31;
            --text:      #e0e0e0;
            --muted:     #888;
            --red:       #ff3333;
            --orange:    #ff9f43;
            --font-term: 'VT323', monospace;
            --font-mono: 'Roboto Mono', monospace;
            --text-inverse: #000;
            --primary-a08: rgba(0,255,65,0.08);
            --primary-a10: rgba(0,255,65,0.10);
            --primary-a30: rgba(0,255,65,0.30);
            --yellow: #ffbd2e;
        }

        [data-theme="light"] {
            --bg:        #F4F4F5;
            --bg2:       #EAEAEC;
            --bg3:       #E4E4E7;
            --primary:   #006B2D;
            --primary-dim:#004D1F;
            --cyan:      #0369A1;
            --cyan-dim:  #024E7A;
            --border:    #8C8C90;
            --border2:   #8C8C92;
            --text:      #18181B;
            --muted:     #65656E;
            --red:       #CB1515;
            --orange:    #AA4800;
            --text-inverse: #fff;
            --primary-a08: rgba(0,107,45,0.08);
            --primary-a10: rgba(0,107,45,0.10);
            --primary-a30: rgba(0,107,45,0.30);
            --yellow: #7C4D00;
        }
        [data-theme="light"] body::before {
            background: repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0,0,0,0.02) 2px, rgba(0,0,0,0.02) 4px);
        }
        [data-theme="light"] body::after {
            background: radial-gradient(ellipse at center, transparent 55%, rgba(0,0,0,0.08) 100%);
        }
        [data-theme="light"] .topbar {
            background: rgba(244,244,245,0.95) !important;
        }
        [data-theme="light"] .brand-text {
            text-shadow: none;
        }
        [data-theme="light"] .dot-r { box-shadow: none; }
        [data-theme="light"] .dot-y { box-shadow: none; }
        [data-theme="light"] .dot-g { box-shadow: none; }
        [data-theme="light"] .btn-nav-login:hover {
            color: #fff !important;
        }
        [data-theme="light"] .nav-links-top a:hover {
            text-shadow: none;
        }
        [data-theme="light"] ::-webkit-scrollbar-track { background: var(--bg); }
        [data-theme="light"] ::-webkit-scrollbar-thumb { background: var(--border); }
        /* Focus indicators */
        [data-theme="light"] a:focus-visible,
        [data-theme="light"] button:focus-visible,
        [data-theme="light"] input:focus-visible {
            outline: 2px solid var(--cyan);
            outline-offset: 2px;
        }
        /* Landing-specific light overrides */
        [data-theme="light"] .hero-terminal {
            background: var(--bg2) !important;
            box-shadow: 0 20px 60px rgba(0,0,0,0.1) !important;
        }
        [data-theme="light"] .term-tabbar {
            background: var(--bg3) !important;
        }
        [data-theme="light"] .term-tab.active {
            background: var(--bg2) !important;
        }
        [data-theme="light"] .term-tab:hover:not(.active) {
            background: rgba(0,0,0,0.03) !important;
        }
        [data-theme="light"] .land-mobile-nav {
            background: var(--bg) !important;
        }
        /* Catch inline dark bgs on landing */
        [data-theme="light"] [style*="background:#05"],
        [data-theme="light"] [style*="background: #05"],
        [data-theme="light"] [style*="background:#0a"],
        [data-theme="light"] [style*="background: #0a"],
        [data-theme="light"] [style*="background:#0c"],
        [data-theme="light"] [style*="background: #0c"] {
            background: var(--bg2) !important;
        }
        /* Remove neon glows in light */
        [data-theme="light"] [style*="text-shadow"] {
            text-shadow: none !important;
        }
        [data-theme="light"] [style*="box-shadow:0 0 5px"] {
            box-shadow: none !important;
        }
        /* Light-theme WCAG AA contrast fixes */
        [data-theme="light"] .t-cmd { color: #1e1e1e; }
        [data-theme="light"] .t-arg { color: #001080; }
        [data-theme="light"] .t-str { color: #a31515; }
        [data-theme="light"] .t-out { color: #505050; }
        [data-theme="light"] .tl-num { color: #505050; }
        [data-theme="light"] .term-statusbar span { color: var(--primary); }
        [data-theme="light"] .hero-terminal [style*="color:#fff"],
        [data-theme="light"] .hero-terminal [style*="color: #fff"] { color: #1e1e1e !important; }
        [data-theme="light"] .hero-terminal [style*="color:#ccc"],
        [data-theme="light"] .hero-terminal [style*="color: #ccc"] { color: #505050 !important; }
        [data-theme="light"] .hero-terminal [style*="color:#555"],
        [data-theme="light"] .hero-terminal [style*="color: #555"] { color: #505050 !important; }
        [data-theme="light"] .hero-terminal [style*="color:#ff5f56"] { color: #C41E16 !important; }
        [data-theme="light"] .step-num { color: #52525B; }
        [data-theme="light"] .calc-scale { color: #52525B; }
        [data-theme="light"] .btn-trial .trial-note { color: rgba(255,255,255,0.85); }
        [data-theme="light"] .btn-trial:hover .trial-note { color: var(--primary-dim); }
        [data-theme="light"] .calc-price-rate { text-shadow: none; }
        [data-theme="light"] .calc-price-monthly { text-shadow: none; }
        /* Theme toggle */
        .land-theme-toggle {
            min-width: 36px; min-height: 36px;
            display: inline-flex; align-items: center; justify-content: center;
            background: none; border: 1px solid var(--border);
            border-radius: 4px; color: var(--text); cursor: pointer;
            padding: 4px; transition: border-color .2s, color .2s;
        }
        .land-theme-toggle:hover { border-color: var(--cyan); color: var(--cyan); }

        *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
        .container, .container-fluid { padding-right: .75rem; padding-left: .75rem; }

        html, body {
            overflow-x: hidden;
        }
        body {
            background: var(--bg);
            color: var(--text);
            font-family: var(--font-mono);
            font-size: 0.95rem;
        }

        body::before {
            content: '';
            position: fixed;
            inset: 0;
            background: repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0,0,0,0.07) 2px, rgba(0,0,0,0.07) 4px);
            pointer-events: none;
            z-index: 9999;
        }

        body::after {
            content: '';
            position: fixed;
            inset: 0;
            background: radial-gradient(ellipse at center, transparent 55%, rgba(0,0,0,0.6) 100%);
            pointer-events: none;
            z-index: 9998;
        }

        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: var(--bg); }
        ::-webkit-scrollbar-thumb { background: var(--border); }
        ::-webkit-scrollbar-thumb:hover { background: var(--primary); }

        /* ── NAVBAR ── */
        .topbar {
            position: fixed;
            top: 0; left: 0; right: 0;
            background: rgba(10,10,10,0.95);
            border-bottom: 1px solid var(--border2);
            backdrop-filter: blur(8px);
            z-index: 1000;
            display: flex;
            flex-direction: column;
        }
        .topbar-inner {
            width: 100%;
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 24px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            height: 56px;
            overflow: visible;
        }
        .brand {
            display: flex;
            align-items: center;
            gap: 10px;
            text-decoration: none;
            white-space: nowrap;
            flex-shrink: 0;
        }
        .brand-dots { display: flex; gap: 5px; align-items: center; }
        .brand-dots span { width: 11px; height: 11px; border-radius: 50%; display: block; }
        .dot-r { background: var(--dot-red); box-shadow: 0 0 6px var(--dot-red); }
        .dot-y { background: var(--dot-yellow); box-shadow: 0 0 6px var(--dot-yellow); }
        .dot-g { background: var(--primary); box-shadow: 0 0 6px var(--primary); }
        .brand-text {
            font-family: var(--font-term);
            font-size: 1.7rem;
            color: var(--cyan);
            letter-spacing: 3px;
            text-shadow: 0 0 10px var(--cyan-dim);
            line-height: 1;
            white-space: nowrap;
        }

        .nav-links-top {
            display: flex;
            gap: 0;
            list-style: none;
            align-items: center;
        }
        .nav-links-top a {
            font-family: var(--font-term);
            font-size: 1.15rem;
            color: var(--muted);
            text-decoration: none;
            padding: 6px 14px;
            border: 1px solid transparent;
            transition: color 0.2s, border-color 0.2s, text-shadow 0.2s;
            letter-spacing: 1px;
            white-space: nowrap;
        }
        .nav-links-top a:hover {
            color: var(--primary);
            border-color: var(--border2);
            text-shadow: 0 0 8px var(--primary-dim);
        }

        .btn-nav-login {
            font-family: var(--font-term);
            font-size: 1.15rem;
            background: transparent;
            border: 1px solid var(--primary);
            color: var(--primary);
            padding: 5px 18px;
            text-decoration: none;
            letter-spacing: 1px;
            transition: color 0.2s, background 0.2s, border-color 0.2s, box-shadow 0.2s;
            white-space: nowrap;
        }
        .btn-nav-login:hover {
            background: var(--primary);
            color: var(--text-inverse);
            box-shadow: 0 0 12px var(--primary-glow);
        }

        /* ── LANG SWITCHER ── */
        .lang-switcher {
            display: flex;
            align-items: center;
            gap: 0;
            border: 1px solid var(--border2);
            overflow: hidden;
        }
        .lang-switcher a {
            font-family: var(--font-term);
            font-size: 1rem;
            color: var(--muted);
            text-decoration: none;
            padding: 4px 10px;
            letter-spacing: 1px;
            transition: 0.15s;
            display: flex;
            align-items: center;
            gap: 4px;
            border-right: 1px solid var(--border2);
        }
        .lang-switcher a:last-child { border-right: none; }
        .lang-switcher a.active { background: var(--primary-a10); color: var(--primary); }
        .lang-switcher a:not(.active):hover { background: rgba(255,255,255,0.04); color: var(--text); }
        .lang-flag { font-size: 0.9rem; line-height: 1; }

        /* ── HERO ── */
        .hero {
            padding: 130px 0 70px;
            position: relative;
        }
        .hero-eyebrow {
            font-family: var(--font-term);
            font-size: 1.1rem;
            color: var(--cyan);
            letter-spacing: 3px;
            text-transform: uppercase;
            margin-bottom: 14px;
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .hero-eyebrow::before {
            content: '';
            display: block;
            width: 30px;
            height: 1px;
            background: var(--cyan);
        }
        .hero h1 {
            font-family: var(--font-term);
            font-size: clamp(2.5rem, 4.5vw, 4rem);
            color: var(--text);
            line-height: 1.05;
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 18px;
        }
        .hero h1 .hl-green { color: var(--primary); text-shadow: 0 0 20px var(--primary-dim); }
        .hero h1 .hl-cyan  { color: var(--cyan);    text-shadow: 0 0 20px var(--cyan-dim);    }

        .hero-sub {
            font-family: var(--font-mono);
            font-size: 0.9rem;
            color: var(--muted);
            max-width: 520px;
            line-height: 1.7;
            margin-bottom: 28px;
        }

        /* Trial badge */
        .trial-badge {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: var(--primary-a08);
            border: 1px solid rgba(0,255,65,0.35);
            padding: 6px 16px 6px 10px;
            margin-bottom: 20px;
            font-family: var(--font-term);
            font-size: 1rem;
            color: var(--primary);
            letter-spacing: 2px;
            text-transform: uppercase;
        }
        .trial-badge .tb-dot {
            width: 8px; height: 8px; border-radius: 50%;
            background: var(--primary);
            box-shadow: 0 0 8px var(--primary);
            animation: pulsedot 1.5s ease-in-out infinite;
            will-change: transform, opacity;
        }
        @keyframes pulsedot {
            0%,100% { opacity: 1; transform: scale(1); }
            50%      { opacity: 0.5; transform: scale(1.3); }
        }

        .hero-actions {
            display: flex;
            flex-direction: column;
            gap: 10px;
            align-items: flex-start;
        }

        .btn-trial {
            font-family: var(--font-term);
            font-size: 1.5rem;
            background: var(--primary);
            border: 1px solid var(--primary);
            color: var(--text-inverse);
            padding: 14px 36px;
            text-decoration: none;
            letter-spacing: 2px;
            text-transform: uppercase;
            transition: 0.2s;
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }
        .btn-trial:hover {
            background: transparent;
            color: var(--primary);
            box-shadow: 0 0 25px var(--primary-a30);
        }
        .btn-trial .trial-note {
            font-family: var(--font-mono);
            font-size: .72rem;
            color: rgba(0,0,0,0.75);
            display: block;
            line-height: 1;
            margin-top: 2px;
            font-weight: 500;
        }
        .btn-trial:hover .trial-note { color: rgba(0,255,65,0.8); }

        .hero-actions-row2 {
            display: flex;
            gap: 12px;
            flex-wrap: wrap;
            margin-top: 4px;
        }
        .btn-hero-secondary {
            font-family: var(--font-term);
            font-size: 1.2rem;
            background: transparent;
            border: 1px solid var(--border2);
            color: var(--muted);
            padding: 10px 24px;
            text-decoration: none;
            letter-spacing: 2px;
            text-transform: uppercase;
            transition: 0.2s;
            display: inline-block;
        }
        .btn-hero-secondary:hover { border-color: var(--cyan); color: var(--cyan); }
        .btn-hero-primary {
            font-family: var(--font-term);
            font-size: 1.2rem;
            background: transparent;
            border: 1px solid var(--border2);
            color: var(--muted);
            padding: 10px 24px;
            text-decoration: none;
            letter-spacing: 2px;
            text-transform: uppercase;
            transition: 0.2s;
            display: inline-block;
        }
        .btn-hero-primary:hover { border-color: var(--primary); color: var(--primary); }

        /* ── TERMINAL ── */
        .hero-terminal {
            background: var(--bg-deep);
            border: 1px solid var(--border2);
            border-radius: 0;
            overflow: hidden;
            box-shadow:
                0 0 0 1px var(--primary-a08),
                0 20px 60px rgba(0,0,0,0.8),
                0 0 40px var(--primary-a03);
            position: relative;
            contain: layout style;
        }

        /* Tab bar */
        .term-tabbar {
            background: var(--bg-card);
            border-bottom: 1px solid var(--border2);
            display: flex;
            align-items: center;
            padding: 0 14px;
            height: 38px;
            gap: 0;
        }
        .term-dots {
            display: flex;
            gap: 6px;
            margin-right: 16px;
        }
        .term-dots span { width: 10px; height: 10px; border-radius: 50%; display: block; }
        .term-tab {
            font-family: var(--font-mono);
            font-size: 0.7rem;
            color: var(--muted);
            padding: 0 14px;
            height: 38px;
            display: flex;
            align-items: center;
            border-right: 1px solid var(--border);
            letter-spacing: 1px;
            cursor: pointer;
            user-select: none;
            transition: color 0.15s, background 0.15s;
        }
        .term-tab:hover:not(.active) { color: var(--text-secondary); background: rgba(255,255,255,0.03); }
        .term-tab.active {
            color: var(--primary);
            background: var(--bg-deep);
            border-bottom: 2px solid var(--primary);
        }
        .term-winctrl {
            margin-left: auto;
            font-family: var(--font-mono);
            font-size: 0.65rem;
            color: var(--text-muted);
            letter-spacing: 2px;
        }

        /* Status bar */
        .term-statusbar {
            background: var(--primary-a08);
            border-bottom: 1px solid var(--primary-a10);
            padding: 4px 16px;
            display: flex;
            align-items: center;
            gap: 20px;
        }
        .term-statusbar span {
            font-family: var(--font-mono);
            font-size: 0.6rem;
            color: rgba(0,255,65,0.75);
            letter-spacing: 1px;
            display: flex;
            align-items: center;
            gap: 5px;
        }
        .term-statusbar .s-dot {
            width: 5px; height: 5px; border-radius: 50%;
            background: var(--primary);
            box-shadow: 0 0 4px var(--primary);
        }

        /* Body */
        .hero-term-body {
            padding: 16px 18px 18px;
            font-family: var(--font-mono);
            font-size: .82rem;
            line-height: 1.75;
            min-height: 340px;
            height: 340px;
            overflow: hidden;
            position: relative;
        }
        @keyframes tl-in { from{opacity:0;transform:translateY(3px)} to{opacity:1;transform:none} }
        .tl { display: flex; gap: 0; opacity: 0; animation: tl-in 0.1s ease forwards; }
        .tl:nth-child(1){animation-delay:.05s}.tl:nth-child(2){animation-delay:.14s}
        .tl:nth-child(3){animation-delay:.23s}.tl:nth-child(4){animation-delay:.32s}
        .tl:nth-child(5){animation-delay:.41s}.tl:nth-child(6){animation-delay:.52s}
        .tl:nth-child(7){animation-delay:.61s}.tl:nth-child(8){animation-delay:.70s}
        .tl:nth-child(9){animation-delay:.79s}.tl:nth-child(10){animation-delay:.88s}
        .tl:nth-child(11){animation-delay:.97s}.tl:nth-child(12){animation-delay:1.06s}
        .tl:nth-child(13){animation-delay:1.15s}.tl:nth-child(14){animation-delay:1.24s}
        .tl:nth-child(15){animation-delay:1.33s}.tl:nth-child(16){animation-delay:1.42s}
        .tl:nth-child(17){animation-delay:1.51s}.tl:nth-child(18){animation-delay:1.60s}
        .tl-num {
            color: var(--text-muted);
            font-size: .72rem;
            width: 28px;
            flex-shrink: 0;
            padding-top: 1px;
            user-select: none;
            text-align: right;
            padding-right: 12px;
        }
        .tl-content { flex: 1; }

        .t-prompt { color: var(--primary); font-weight: 500; }
        .t-cmd    { color: #d4d4d4; }
        .t-arg    { color: #9cdcfe; }
        .t-str    { color: #ce9178; }
        .t-ok     { color: var(--primary); }
        .t-info   { color: var(--cyan); }
        .t-out    { color: #aaa; }
        .t-warn   { color: var(--yellow); }
        .t-bar-fill { color: var(--primary); }
        .t-bar-empty{ color: var(--border2); }

        .t-cursor {
            display: inline-block;
            width: 7px;
            height: 0.85em;
            background: var(--primary);
            vertical-align: text-bottom;
            animation: blink 1s step-end infinite;
        }
        @keyframes blink { 50% { opacity: 0; } }

        /* ── STATS BAR ── */
        .stats-bar {
            background: var(--bg2);
            border-top: 1px solid var(--border);
            border-bottom: 1px solid var(--border);
            padding: 28px 0;
        }
        .stat-item { text-align: center; }
        .stat-value {
            font-family: var(--font-term);
            font-size: 2.8rem;
            color: var(--primary);
            text-shadow: 0 0 10px var(--primary-dim);
            line-height: 1;
            display: block;
        }
        .stat-label {
            font-family: var(--font-term);
            font-size: 1rem;
            color: var(--muted);
            letter-spacing: 2px;
            text-transform: uppercase;
        }
        .stat-divider {
            width: 1px;
            background: var(--border2);
            height: 40px;
            align-self: center;
        }

        /* ── SECTION HEADERS ── */
        .section-label {
            font-family: var(--font-term);
            font-size: 1rem;
            color: var(--cyan);
            letter-spacing: 4px;
            text-transform: uppercase;
            margin-bottom: 10px;
            display: flex;
            align-items: center;
            gap: 10px;
        }
        .section-label::after {
            content: '';
            flex: 1;
            height: 1px;
            background: var(--border2);
        }

        .section-title {
            font-family: var(--font-term);
            font-size: clamp(2rem, 4vw, 3rem);
            color: var(--text);
            text-transform: uppercase;
            letter-spacing: 2px;
            margin-bottom: 12px;
        }

        .section-sub {
            font-family: var(--font-mono);
            font-size: 0.9rem;
            color: var(--muted);
            max-width: 500px;
            line-height: 1.7;
        }

        /* ── FEATURE CARDS ── */
        .feature-card {
            background: var(--bg2);
            border: 1px solid var(--border);
            padding: 28px 24px;
            transition: 0.25s;
            height: 100%;
            position: relative;
            overflow: hidden;
        }
        .feature-card::before {
            content: '';
            position: absolute;
            top: 0; left: 0;
            width: 3px;
            height: 100%;
            background: var(--primary);
            transform: scaleY(0);
            transition: 0.25s;
            transform-origin: bottom;
        }
        .feature-card:hover {
            border-color: var(--border2);
            background: var(--bg3);
            transform: translateY(-2px);
        }
        .feature-card:hover::before { transform: scaleY(1); }

        .feature-icon {
            font-size: 2rem;
            color: var(--primary);
            margin-bottom: 16px;
            display: block;
        }
        .feature-title {
            font-family: var(--font-term);
            font-size: 1.5rem;
            color: var(--text);
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 10px;
        }
        .feature-desc {
            font-family: var(--font-mono);
            font-size: .88rem;
            color: var(--muted);
            line-height: 1.7;
        }

        /* ── PRICING ── */
        .pricing-card {
            background: var(--bg2);
            border: 1px solid var(--border);
            padding: 36px 28px;
            text-align: center;
            position: relative;
            transition: 0.2s;
            height: 100%;
            display: flex;
            flex-direction: column;
        }
        .pricing-card.featured {
            border-color: var(--primary);
            background: var(--bg3);
        }
        .pricing-card.featured::before {
            content: 'DLA FIRM OBJĘTYCH NIS2 / KSC';
            position: absolute;
            top: -12px;
            left: 50%;
            transform: translateX(-50%);
            background: var(--primary);
            color: var(--text-inverse);
            font-family: var(--font-term);
            font-size: 0.9rem;
            padding: 2px 14px;
            letter-spacing: 2px;
            white-space: nowrap;
        }
        .pricing-card:hover:not(.featured) { border-color: var(--border2); }

        .plan-name {
            font-family: var(--font-term);
            font-size: 1.4rem;
            color: var(--muted);
            letter-spacing: 3px;
            text-transform: uppercase;
            margin-bottom: 6px;
        }
        .plan-price {
            font-family: var(--font-term);
            font-size: 3.5rem;
            color: var(--text);
            line-height: 1;
            margin: 14px 0 4px;
        }
        .plan-price .currency {
            font-size: 1.8rem;
            color: var(--muted);
            vertical-align: super;
        }
        .plan-price .period {
            font-size: 1.2rem;
            color: var(--muted);
        }
        .plan-price.custom {
            font-size: 2rem;
            color: var(--cyan);
            text-shadow: 0 0 12px var(--cyan-dim);
        }
        .plan-users {
            font-family: var(--font-term);
            font-size: 1.1rem;
            color: var(--cyan);
            letter-spacing: 1px;
            margin-bottom: 24px;
        }
        .plan-features {
            list-style: none;
            text-align: left;
            margin-bottom: 28px;
            flex: 1;
        }
        .plan-features li {
            font-family: var(--font-mono);
            font-size: .88rem;
            color: var(--muted);
            padding: 7px 0;
            border-bottom: 1px solid var(--border);
            display: flex;
            align-items: center;
            gap: 10px;
        }
        .plan-features li:last-child { border-bottom: none; }
        .plan-features li i {
            color: var(--primary);
            font-size: 0.75rem;
            width: 14px;
            flex-shrink: 0;
        }
        .plan-features li i.text-muted { color: var(--border2) !important; }

        .btn-plan {
            font-family: var(--font-term);
            font-size: 1.3rem;
            padding: 12px 0;
            letter-spacing: 2px;
            text-transform: uppercase;
            text-decoration: none;
            display: block;
            transition: 0.2s;
            border-radius: 0;
        }
        .btn-plan-green {
            background: var(--primary);
            color: var(--text-inverse) !important;
            border: 1px solid var(--primary);
        }
        .btn-plan-green:hover {
            background: transparent;
            color: var(--primary) !important;
            box-shadow: 0 0 15px var(--primary-a30);
        }
        .btn-plan-outline {
            background: transparent;
            color: var(--muted) !important;
            border: 1px solid var(--border2);
        }
        .btn-plan-outline:hover {
            border-color: var(--primary);
            color: var(--primary) !important;
        }
        .btn-plan-cyan {
            background: transparent;
            color: var(--cyan) !important;
            border: 1px solid var(--cyan);
        }
        .btn-plan-cyan:hover {
            background: var(--cyan);
            color: var(--text-inverse) !important;
            box-shadow: 0 0 15px var(--cyan-glow);
        }

        /* ── TIER PREVIEW ── */
        .lp-tiers { display:flex; gap:0; border:1px solid var(--border); overflow:hidden; margin-bottom:40px; }
        .lp-tier { flex:1; padding:18px 12px; text-align:center; border-right:1px solid var(--border); transition: background .25s; }
        .lp-tier:last-child { border-right:none; }
        .lp-tier.active { background: rgba(0,255,65,0.12); box-shadow: inset 0 0 20px rgba(0,255,65,0.08); border-color: var(--primary); }
        .lp-tier.active .lp-tier-range { color: var(--primary); font-weight: bold; }
        .lp-tier-range { font-family:var(--font-term); font-size:1rem; color:var(--text); display:block; letter-spacing:1px; transition: color .25s; }
        .lp-tier-rate { font-family:var(--font-term); font-size:2.2rem; color:var(--primary); text-shadow:0 0 8px var(--primary-dim); display:block; line-height:1.1; }
        .lp-tier-rate-ent { font-size:1.6rem; color:var(--cyan); text-shadow:0 0 8px var(--cyan-glow); }
        .lp-tier-unit { font-size:.76rem; color:var(--muted); letter-spacing:2px; }
        .lp-tier-ent.active { background: rgba(0,191,255,0.12); box-shadow: inset 0 0 20px rgba(0,191,255,0.08); border-color: var(--cyan); }
        .lp-tier-ent.active .lp-tier-range { color: var(--cyan); font-weight: bold; }
        [data-theme="light"] .lp-tier-rate { text-shadow:none; }
        [data-theme="light"] .lp-tier-rate-ent { text-shadow:none; }
        @media(max-width:600px) {
            .lp-tiers { flex-wrap:wrap; }
            .lp-tier { flex:1 1 45%; border-bottom:1px solid var(--border); }
        }

        /* ── CALCULATOR ── */
        .calc-panel {
            background: var(--bg2);
            border: 1px solid var(--border);
            padding: 32px;
            max-width: 680px;
            margin: 0 auto 40px;
        }
        .calc-header {
            font-family: var(--font-term);
            font-size: 1rem;
            color: var(--cyan);
            letter-spacing: 3px;
            margin-bottom: 20px;
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .calc-header::before {
            content: '>';
            color: var(--primary);
            text-shadow: 0 0 8px var(--primary-dim);
        }
        .calc-row {
            display: flex;
            align-items: baseline;
            gap: 12px;
            flex-wrap: wrap;
            margin-bottom: 4px;
        }
        .calc-manual-input {
            width: 6ch;
            background: transparent;
            border: none;
            border-bottom: 2px solid var(--primary);
            color: var(--primary);
            font-family: var(--font-term);
            font-size: clamp(1.8rem, 6vw, 3rem);
            text-shadow: 0 0 12px var(--primary-dim);
            outline: none;
            -moz-appearance: textfield;
            line-height: 1;
        }
        .calc-manual-input::-webkit-outer-spin-button,
        .calc-manual-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
        .calc-label {
            font-family: var(--font-term);
            font-size: 0.85rem;
            color: var(--text-muted);
            letter-spacing: 2px;
        }
        [data-theme="light"] .calc-manual-input { text-shadow: none; }

        .calc-slider {
            width: 100%;
            accent-color: var(--primary);
            cursor: pointer;
            height: 6px;
            margin-top: 10px;
        }

        .calc-scale {
            display: flex;
            justify-content: space-between;
            font-family: var(--font-term);
            font-size: .8rem;
            color: var(--muted);
            margin-top: 6px;
            margin-bottom: 20px;
            letter-spacing: 1px;
        }
        .calc-scale .calc-scale-ent { color: var(--cyan); }

        .calc-price-panel {
            background: var(--bg);
            border: 1px solid var(--border);
            padding: 14px 18px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
        }
        .calc-price-label {
            font-family: var(--font-mono);
            font-size: .76rem;
            color: var(--muted);
            letter-spacing: 2px;
            display: block;
            margin-bottom: 2px;
            text-transform: uppercase;
        }
        .calc-price-monthly {
            font-family: var(--font-term);
            font-size: 2rem;
            color: var(--primary);
            text-shadow: 0 0 8px var(--primary-dim);
        }
        .calc-price-rate {
            font-family: var(--font-term);
            font-size: 1.4rem;
            color: var(--cyan);
            text-shadow: 0 0 8px var(--cyan-dim);
        }

        .calc-cta {
            display: block;
            margin-top: 14px;
            font-family: var(--font-term);
            font-size: 1.3rem;
            background: var(--primary);
            border: 1px solid var(--primary);
            color: var(--text-inverse);
            padding: 12px;
            text-align: center;
            text-decoration: none;
            letter-spacing: 2px;
            text-transform: uppercase;
            transition: background .2s, color .2s;
        }
        .calc-cta:hover {
            background: transparent;
            color: var(--primary);
        }

        .calc-enterprise {
            display: none;
            margin-top: 14px;
            border: 1px solid var(--cyan);
            padding: 20px;
        }
        .calc-ent-header {
            font-family: var(--font-term);
            font-size: .8rem;
            color: var(--cyan);
            letter-spacing: 3px;
            margin-bottom: 14px;
        }
        .calc-ent-header .calc-ent-count { color: var(--muted); }
        .calc-ent-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
            margin-bottom: 10px;
        }
        @media (max-width: 480px) { .calc-ent-grid { grid-template-columns: 1fr; } }
        .calc-field label {
            font-family: var(--font-term);
            font-size: .74rem;
            color: var(--muted);
            letter-spacing: .08em;
            display: block;
            margin-bottom: 4px;
            text-transform: uppercase;
        }
        .calc-field input {
            width: 100%;
            box-sizing: border-box;
            background: var(--bg);
            border: 1px solid var(--border);
            color: var(--text);
            font-family: var(--font-mono);
            font-size: .88rem;
            padding: 8px 10px;
            outline: none;
            transition: border-color .2s;
        }
        .calc-field input:focus { border-color: var(--primary); }
        .calc-ent-msg {
            font-family: var(--font-term);
            font-size: .82rem;
            margin-bottom: 10px;
            min-height: 18px;
        }
        .calc-ent-submit {
            width: 100%;
            font-family: var(--font-term);
            font-size: 1.1rem;
            letter-spacing: 2px;
            text-transform: uppercase;
            background: var(--cyan);
            border: none;
            color: var(--text-inverse);
            padding: 12px;
            cursor: pointer;
            font-weight: 700;
            transition: opacity .2s;
        }
        .calc-ent-submit:hover { opacity: 0.85; }

        /* ── HOW IT WORKS ── */
        .step-item {
            display: flex;
            gap: 20px;
            padding: 24px 0;
            border-bottom: 1px dashed var(--border);
        }
        .step-item:last-child { border-bottom: none; }
        .step-num {
            font-family: var(--font-term);
            font-size: 3rem;
            /* WCAG 1.4.3: tekst >=24 px wymaga 3:1. var(--border2) dawalo 1.43
               na ciemnym tle — numer kroku byl praktycznie niewidoczny. */
            color: #5E636C;
            line-height: 1;
            width: 50px;
            flex-shrink: 0;
        }
        .step-title {
            font-family: var(--font-term);
            font-size: 1.5rem;
            color: var(--text);
            text-transform: uppercase;
            margin-bottom: 6px;
        }
        .step-desc {
            font-family: var(--font-mono);
            font-size: .88rem;
            color: var(--muted);
            line-height: 1.7;
        }

        /* ── CTA SECTION ── */
        .cta-section {
            background: var(--bg2);
            border-top: 1px solid var(--border);
            border-bottom: 1px solid var(--border);
            padding: 80px 0;
            text-align: center;
        }
        .cta-section h2 {
            font-family: var(--font-term);
            font-size: clamp(2rem, 4vw, 3.5rem);
            text-transform: uppercase;
            margin-bottom: 14px;
        }
        .cta-section p {
            font-family: var(--font-mono);
            font-size: 0.9rem;
            color: var(--muted);
            max-width: 480px;
            margin: 0 auto 32px;
            line-height: 1.7;
        }

        /* ── FOOTER ── */
        .footer {
            background: var(--bg);
            border-top: 1px solid var(--border);
            padding: 40px 0 24px;
        }
        .footer-brand {
            font-family: var(--font-term);
            font-size: 1.5rem;
            color: var(--cyan);
            letter-spacing: 3px;
        }
        .footer-tagline {
            font-family: var(--font-mono);
            font-size: .82rem;
            color: var(--muted);
            margin-top: 6px;
        }
        .footer-links {
            list-style: none;
        }
        .footer-links li {
            margin-bottom: 8px;
        }
        .footer-links a {
            font-family: var(--font-mono);
            font-size: .85rem;
            color: var(--muted);
            text-decoration: none;
            transition: 0.2s;
        }
        .footer-links a:hover { color: var(--primary); }
        .footer-col-title {
            font-family: var(--font-term);
            font-size: 1rem;
            color: var(--text);
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 14px;
        }
        .footer-bottom {
            border-top: 1px solid var(--border);
            padding-top: 20px;
            margin-top: 32px;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-wrap: wrap;
            gap: 6px 10px;
        }
        .footer-bottom span, .footer-bottom a {
            font-family: var(--font-mono);
            font-size: .8rem;
            color: var(--muted);
        }

        /* ── MISC ── */
        section { padding: 80px 0; }
        .container { max-width: 1200px; }

        /* ── Hamburger landing ── */
        .land-hamburger {
            display: none;
            flex-direction: column;
            gap: 5px;
            cursor: pointer;
            padding: 6px;
            background: transparent;
            border: 1px solid var(--menu-border);
        }
        .land-hamburger span { display:block; width:22px; height:2px; background: var(--primary); transition:.25s; }
        .land-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
        .land-hamburger.open span:nth-child(2) { opacity: 0; }
        .land-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

        .land-mobile-nav {
            display: none;
            flex-direction: column;
            background: var(--menu-bg);
            border-top: 1px solid var(--menu-border);
            padding: 12px 20px 16px;
        }
        .land-mobile-nav a {
            font-family: var(--font-term);
            font-size: 1rem;
            color: var(--muted);
            text-decoration: none;
            padding: 10px 0;
            border-bottom: 1px solid var(--menu-border);
            letter-spacing: 1px;
        }
        .land-mobile-nav a:last-child { border-bottom: none; }
        .land-mobile-nav a:hover { color: var(--primary); }

        @media (max-width: 1024px) and (min-width: 992px) {
            .nav-links-top a { font-size: 0.95rem; padding: 6px 8px; letter-spacing: 0; }
            .btn-nav-login { font-size: 0.95rem; padding: 5px 12px; letter-spacing: 0; }
        }
        @media (max-width: 991px) {
            .hero { padding: 110px 0 60px; }
            .hero h1 { font-size: clamp(1.8rem, 7vw, 2.8rem) !important; }
            .nav-links-top { display: none !important; }
            .lang-switcher-wrap { display: none !important; }
            .btn-nav-login { display: none !important; }
            .stat-divider { display: none; }
            .land-hamburger { display: flex; }
            .land-mobile-nav.open { display: flex; }
            section { padding: 48px 0; }
            .footer-col-title { margin-top: 24px; }
            .footer-bottom { flex-direction: column; text-align: center; gap: 6px; }
            .footer-bottom span { font-size: .74rem; text-align: center; word-break: break-word; }
        }
        /* ── RTL (Arabic / Hebrew) overrides ── */
        [dir="rtl"] {
            direction: rtl;
            text-align: right;
        }
        [dir="rtl"] .topbar-inner { flex-direction: row-reverse; }
        [dir="rtl"] .nav-links-top { flex-direction: row-reverse; }
        [dir="rtl"] .nav-right-top { flex-direction: row-reverse; }
        [dir="rtl"] .brand-dots { direction: ltr; }
        [dir="rtl"] .hero { text-align: right; }
        [dir="rtl"] .hero h1 { text-align: right; }
        [dir="rtl"] .hero-eyebrow { direction: ltr; }
        [dir="rtl"] .hero-terminal { direction: ltr; text-align: left; }
        [dir="rtl"] .feature-icon { margin-right: 0; margin-left: 16px; }
        [dir="rtl"] .pricing-card { text-align: right; }
        [dir="rtl"] .pricing-card ul { padding-right: 0; }
        [dir="rtl"] pre, [dir="rtl"] code, [dir="rtl"] .mono { direction: ltr; text-align: left; }
        [dir="rtl"] .footer-line { direction: ltr; }
        [dir="rtl"] .lang-switcher-dropdown { right: auto; left: 0; }
    

@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0} }
#easterOverlay.active { display:flex !important; animation:fadeInOverlay .2s ease; }
@keyframes fadeInOverlay { from{opacity:0;} to{opacity:1;} }

/* ── Przełącznik planu w cenniku (plan = osobny wymiar od liczby osób, 14.09.2026) ── */
.lp-plan-toggle { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-bottom:18px; }
.lp-plan-btn { flex:0 1 240px; background:var(--bg-card, rgba(255,255,255,.03)); border:1px solid var(--border, #222); color:var(--text-muted, #888); padding:10px 14px; text-align:left; cursor:pointer; text-decoration:none; font-family:var(--font-mono, 'Roboto Mono', monospace); transition:border-color .15s, box-shadow .15s; }
.lp-plan-btn .lp-plan-name { display:block; font-family:var(--font-term, 'VT323', monospace); font-size:1.1rem; letter-spacing:2px; color:var(--text, #ddd); }
.lp-plan-btn .lp-plan-desc { display:block; font-size:.72rem; margin-top:2px; line-height:1.4; }
.lp-plan-btn:hover, .lp-plan-btn.active { border-color:var(--primary, #00ff41); }
.lp-plan-btn.active { box-shadow:0 0 12px var(--primary-glow, rgba(0,255,65,.3)); }
.lp-plan-btn.active .lp-plan-name { color:var(--primary, #00ff41); }
.lp-plan-ent .lp-plan-name { color:var(--accent, #00bfff); }
/* Jasny motyw: cyan #00BFFF na tle #F4F4F5 daje 1.93 przy wymaganych 4.5,
   a opis planu #888 — 3.23. Ciemniejsze warianty tych samych barw. */
[data-theme="light"] .lp-plan-ent .lp-plan-name { color:#0B7285; }
[data-theme="light"] .lp-plan-btn { color:#5C626B; }
